.formative-form-wrapper{margin:0 auto;max-width:100%}.formative-form{display:flex;flex-direction:column;gap:20px}.formative-field-wrapper{display:flex;flex-direction:column;gap:8px}.formative-field-label{color:#333;display:block;font-size:14px;font-weight:600}.formative-required{color:#dc3232;margin-left:4px}.formative-input,.formative-select,.formative-textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;line-height:1.5;padding:10px 12px;transition:border-color .2s;width:100%}.formative-input:focus,.formative-select:focus,.formative-textarea:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.formative-textarea{min-height:120px;resize:vertical}.formative-checkbox-group,.formative-radio-group{display:flex;flex-direction:column;gap:8px}.formative-checkbox-label,.formative-radio-label{align-items:center;cursor:pointer;display:flex;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.formative-checkbox,.formative-radio{cursor:pointer;height:18px;width:18px}.formative-field-help{color:#666;font-size:12px;margin:4px 0 0}.formative-form-submit{margin-top:8px}.formative-submit-button{align-items:center;background:#0073aa;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;position:relative;transition:all .3s ease}.formative-submit-button:hover{background:#005a87;box-shadow:0 2px 8px rgba(0,115,170,.3);transform:translateY(-1px)}.formative-submit-button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.formative-submit-button.formative-button-loading{background:#0073aa;cursor:wait}.formative-submit-button.formative-button-success{background:#46b450;cursor:default}.formative-spinner{animation:formative-spin .6s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;width:14px}@keyframes formative-spin{to{transform:rotate(1turn)}}.formative-checkmark{animation:formative-checkmark-pop .3s ease-out;display:inline-block;font-size:18px}@keyframes formative-checkmark-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.formative-form-messages{margin-top:16px}.formative-message{align-items:center;animation:formative-slide-in .3s ease-out;border-radius:4px;display:flex;font-size:14px;gap:8px;margin-bottom:12px;padding:12px 16px}@keyframes formative-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.formative-message-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.formative-message-success:before{align-items:center;background:#28a745;border-radius:50%;color:#fff;content:"✓";display:inline-flex;flex-shrink:0;font-size:12px;font-weight:700;height:20px;justify-content:center;width:20px}.formative-message-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.formative-message-error:before{align-items:center;background:#dc3545;border-radius:50%;color:#fff;content:"!";display:inline-flex;flex-shrink:0;font-size:14px;font-weight:700;height:20px;justify-content:center;width:20px}.formative-block-error,.formative-block-placeholder{background:#f5f5f5;border:1px dashed #ddd;border-radius:4px;color:#666;padding:24px;text-align:center}.formative-block-error{background:#fff3cd;border-color:#ffc107;color:#856404}@media(max-width:768px){.formative-form{gap:16px}.formative-submit-button{width:100%}}.formative-field-type-checkbox .formative-checkbox-group,.formative-field-type-radio .formative-radio-group{padding:8px 0}.formative-rating-group{align-items:center;display:flex;gap:8px}.formative-rating-star{color:#ddd;cursor:pointer;font-size:32px;transition:color .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.formative-rating-star.active,.formative-rating-star:hover{color:#ffc107}.formative-rating-group input[type=radio]{display:none}.formative-field-type-range{display:flex;flex-direction:column;gap:8px}.formative-field-type-range input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:3px;height:6px;outline:none;width:100%}.formative-field-type-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#0073aa;border-radius:50%;cursor:pointer;height:18px;-webkit-transition:background .2s;transition:background .2s;width:18px}.formative-field-type-range input[type=range]::-webkit-slider-thumb:hover{background:#005a87}.formative-field-type-range input[type=range]::-moz-range-thumb{background:#0073aa;border:none;border-radius:50%;cursor:pointer;height:18px;-moz-transition:background .2s;transition:background .2s;width:18px}.formative-field-type-range input[type=range]::-moz-range-thumb:hover{background:#005a87}.formative-field-type-range output{background:#f5f5f5;border-radius:4px;color:#333;display:inline-block;font-size:14px;font-weight:600;min-width:50px;padding:4px 12px;text-align:center}.formative-switch-wrapper{display:inline-block;position:relative}.formative-switch-input{height:0;opacity:0;position:absolute;width:0}.formative-switch-slider{background:#ddd;border-radius:26px;cursor:pointer;display:block;height:26px;position:relative;transition:background .3s;width:50px}.formative-switch-slider:before{background:#fff;border-radius:50%;content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .3s;width:20px}.formative-switch-input:checked+.formative-switch-slider{background:#0073aa}.formative-switch-input:checked+.formative-switch-slider:before{transform:translateX(24px)}.formative-file-preview{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.formative-file-item{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;display:flex;flex-direction:column;gap:4px;max-width:150px;padding:12px}.formative-file-item img{border-radius:4px;height:auto;max-height:100px;-o-object-fit:cover;object-fit:cover;width:100%}.formative-file-icon{font-size:48px}.formative-file-name{color:#333;font-size:12px;font-weight:600;text-align:center;word-break:break-word}.formative-file-size{color:#666;font-size:11px}.formative-field-wrapper.has-error .formative-input,.formative-field-wrapper.has-error .formative-select,.formative-field-wrapper.has-error .formative-textarea{border-color:#dc3232}.formative-field-wrapper.has-error .formative-input:focus,.formative-field-wrapper.has-error .formative-select:focus,.formative-field-wrapper.has-error .formative-textarea:focus{box-shadow:0 0 0 1px #dc3232}.formative-field-error{color:#dc3232;display:none;font-size:13px;margin-top:4px}.formative-field-wrapper.has-error .formative-field-error{display:block}.formative-input:invalid,.formative-select:invalid,.formative-textarea:invalid{border-color:#ddd;box-shadow:none}.formative-input:invalid:focus,.formative-select:invalid:focus,.formative-textarea:invalid:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa}.formative-row{display:flex;flex-wrap:wrap;margin-bottom:0;margin-left:-10px;margin-right:-10px}.formative-column{box-sizing:border-box;flex:0 0 var(--col-width-desktop,100%);max-width:var(--col-width-desktop,100%);padding-left:10px;padding-right:10px}@media(max-width:900px){.formative-column{flex:0 0 var(--col-width-tablet,50%);max-width:var(--col-width-tablet,50%)}}@media(max-width:600px){.formative-column{flex:0 0 var(--col-width-mobile,100%);max-width:var(--col-width-mobile,100%)}}.formative-progress-bar-wrapper{margin-bottom:30px}.formative-progress-bar{background:#eee;border-radius:3px;height:6px;margin-bottom:10px;overflow:hidden}.formative-progress-fill{background:var(--formative-ms-primary,#0073aa);height:100%;transition:width .3s ease}.formative-step-title-current{color:var(--formative-ms-text,#333);font-size:16px;font-weight:600}.formative-steps-indicators{display:flex;justify-content:space-between;margin-bottom:30px;position:relative}.formative-steps-indicators:before{background:#eee;content:"";height:2px;left:0;position:absolute;right:0;top:15px;z-index:0}.formative-step-indicator{align-items:center;background:#fff;display:flex;flex-direction:column;gap:6px;position:relative;width:100%;z-index:1}.formative-step-indicator .step-circle{align-items:center;background:#fff;border:2px solid #ddd;border-radius:50%;color:#666;display:flex;font-weight:600;height:32px;justify-content:center;transition:all .3s ease;width:32px}.formative-step-indicator.active .step-circle{border-color:var(--formative-ms-active,#0073aa);box-shadow:0 0 0 3px rgba(0,115,170,.1);color:var(--formative-ms-active,#0073aa)}.formative-step-indicator.completed .step-circle{background:var(--formative-ms-completed,#46b450);border-color:var(--formative-ms-completed,#46b450);color:#fff}.formative-step-indicator.completed .step-circle span:before{content:"✓"}.formative-step-indicator.completed .step-circle span{font-size:0}.formative-step-indicator .step-label{color:#666;font-size:13px;text-align:center}.formative-step-indicator.active .step-label{color:var(--formative-ms-active,#0073aa);font-weight:600}.formative-step-container{animation:formative-fade-in .3s ease-out;display:none}.formative-step-container.active{background:#fff;border-radius:var(--formative-ms-border-radius,4px);display:flex;flex-direction:column;gap:20px;padding:var(--formative-ms-padding,0)}@keyframes formative-fade-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.formative-step-navigation{display:flex;gap:10px;justify-content:space-between;margin-top:20px}.formative-nav-button{background:#f0f0f1;border:1px solid #c3c4c7;border-radius:4px;color:#2c3338;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s}.formative-nav-button:hover{background:#f6f7f7;border-color:#8c8f94;color:#1d2327}.formative-nav-button.formative-next-step{background:#0073aa;border-color:#0073aa;color:#fff;margin-left:auto}.formative-nav-button.formative-next-step:hover{background:#005177;border-color:#005177}.formative-quiz-timer{background:#fff;border:2px solid #0073aa;border-radius:50px;box-shadow:0 4px 12px rgba(0,0,0,.1);display:inline-flex;font-weight:700;gap:10px;margin-bottom:30px;padding:10px 20px;position:sticky;top:20px;transition:all .3s ease;z-index:100}.formative-quiz-timer.timer-warning{animation:formative-pulse 1s infinite;border-color:#dc3232;color:#dc3232}@keyframes formative-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.formative-quiz-results{background:#f9f9f9;border-left:5px solid #ddd;border-radius:8px;margin-bottom:30px;padding:30px}.formative-quiz-passed{background:#d4edda;border-color:#28a745;color:#155724}.formative-quiz-failed{background:#f8d7da;border-color:#dc3545;color:#721c24}.formative-quiz-results h3{font-size:24px;margin-bottom:20px;margin-top:0}.formative-quiz-score-summary{display:flex;flex-wrap:wrap;gap:30px;margin-bottom:20px}.quiz-score-item{display:flex;flex-direction:column}.quiz-score-item .label{font-size:14px;font-weight:600;opacity:.8;text-transform:uppercase}.quiz-score-item .value{font-size:20px;font-weight:700}.status-badge{background:rgba(0,0,0,.1);border-radius:4px;display:inline-block;font-size:14px;padding:4px 12px}.formative-quiz-pending .formative-form,.formative-quiz-pending .formative-progress-bar-wrapper{filter:blur(5px);pointer-events:none}.formative-quiz-start-overlay{align-items:center;background:hsla(0,0%,100%,.8);border-radius:8px;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:1000}.start-overlay-content{background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.1);max-width:400px;padding:40px;text-align:center}.formative-start-quiz-button{background:#0073aa;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:18px;font-weight:600;margin-top:20px;padding:15px 30px;transition:background .2s}.formative-start-quiz-button:hover{background:#005177}.formative-quiz-timer{align-items:center;display:flex;gap:15px}.timer-controls{margin-left:10px}.timer-control-pause{background:#f0f0f1;border:1px solid #c3c4c7;border-radius:4px;cursor:pointer;font-size:12px;padding:5px 12px}.formative-quiz-paused .formative-field-wrapper,.formative-quiz-paused .formative-form-messages{filter:blur(2px);opacity:.5;pointer-events:none}
