:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#2c3e50;background-color:#f0f5fa;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#0056b3;text-decoration:inherit}a:hover{color:#004494}body{margin:0;padding:0;width:100%;height:100%;min-height:100vh;background-color:#f0f5fa}#root{width:100%;height:100%}h1{font-size:2.5em;line-height:1.2;color:#0056b3}button{border-radius:6px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#0056b3;color:#fff;cursor:pointer;transition:all .3s ease}button:hover{background-color:#004494}button:focus,button:focus-visible{outline:3px solid rgba(0,86,179,.3)}body,html{margin:0;padding:0;width:100%;height:100%;background-color:#f0f5fa}.form-page{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;width:100%;padding:40px 20px;background-color:#f0f5fa;box-sizing:border-box}.form-container{width:100%;max-width:800px;margin:0 auto;padding:30px;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #003c781a}.form-title{text-align:center;margin-bottom:30px;color:#0056b3;font-size:26px;font-weight:600;border-bottom:2px solid #e6f0ff;padding-bottom:15px}.form-section{margin-bottom:35px;padding-bottom:25px;border-bottom:1px solid #e6f0ff;width:100%;box-sizing:border-box}.section-title{font-size:20px;color:#0056b3;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #4a90e2;font-weight:500}.section-fields{display:flex;flex-direction:column;gap:15px;width:100%}.form-field{margin-bottom:20px;width:100%}.form-field label{display:block;margin-bottom:8px;font-weight:500;color:#2c3e50;width:100%}.form-field input[type=text],.form-field input[type=date],.form-field textarea{width:100%;padding:12px;border:1px solid #d1e3ff;border-radius:6px;font-size:16px;transition:all .3s ease;background-color:#f8faff;box-sizing:border-box}.form-field input[type=text]:focus,.form-field input[type=date]:focus,.form-field textarea:focus{border-color:#4a90e2;outline:none;box-shadow:0 0 0 3px #4a90e233;background-color:#fff}.form-field textarea{min-height:100px;resize:vertical}.form-field-multiple-choice .choices{display:flex;flex-direction:row;flex-wrap:wrap;gap:20px;margin-top:5px}.choice-label{display:flex;align-items:center;cursor:pointer;padding:6px 12px;border-radius:6px;transition:background-color .2s;min-width:80px}.choice-label:hover{background-color:#f0f7ff}.choice-label input[type=radio]{margin-right:8px;accent-color:#0056b3}.required{color:#e74c3c;margin-left:4px;font-weight:700}.terms-checkbox-container{margin:30px 0;padding:20px;background-color:#f8faff;border:1px solid #d1e3ff;border-radius:8px;border-left:4px solid #0056b3}.terms-label{display:flex;align-items:flex-start;cursor:pointer}.terms-label input[type=checkbox]{margin-right:10px;margin-top:3px;width:18px;height:18px;accent-color:#0056b3}.terms-label span{font-size:15px;line-height:1.5;color:#2c3e50}.terms-label input[type=checkbox].error{outline:2px solid #e74c3c}.error-message{color:#e74c3c;font-size:14px;margin-top:5px}.form-field input.error,.form-field textarea.error{border-color:#e74c3c}.form-actions{display:flex;justify-content:space-between;margin-top:40px;padding-top:20px;border-top:1px solid #e6f0ff}.btn-save,.btn-submit{padding:12px 24px;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-save{background-color:#e6f0ff;color:#0056b3;border:1px solid #d1e3ff}.btn-save:hover{background-color:#d1e3ff}.btn-submit{background-color:#0056b3;color:#fff;box-shadow:0 2px 4px #0056b333}.btn-submit:hover{background-color:#004494;box-shadow:0 4px 8px #0056b34d;transform:translateY(-1px)}.btn-save:disabled,.btn-submit:disabled{background-color:#ccc;cursor:not-allowed}.auto-save-status{background-color:#e6f7ff;padding:10px 15px;border-radius:6px;margin-bottom:20px;text-align:center;color:#0056b3;font-size:14px;border-left:4px solid #4a90e2}.submit-error{background-color:#f8d7da;color:#721c24;padding:10px 15px;border-radius:4px;margin-bottom:20px;text-align:center}.form-success{max-width:600px;margin:50px auto;padding:40px;background-color:#e6f7ff;border-radius:12px;text-align:center;color:#0056b3;box-shadow:0 4px 20px #003c781a;border-top:5px solid #4a90e2}.form-success h2{margin-bottom:15px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;background-color:#f8faff;border-radius:12px;box-shadow:0 4px 20px #003c781a}.spinner{border:4px solid rgba(74,144,226,.2);border-radius:50%;border-top:4px solid #0056b3;width:50px;height:50px;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-error-container{max-width:600px;margin:50px auto;padding:40px;background-color:#fff;border-radius:12px;text-align:center;color:#e74c3c;box-shadow:0 4px 20px #003c781a;border-left:5px solid #e74c3c}.auth-error-container h2{margin-bottom:20px;color:#e74c3c}.auth-error-container button{margin-top:25px;padding:12px 24px;background-color:#0056b3;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .3s ease}.auth-error-container button:hover{background-color:#004494;box-shadow:0 4px 8px #0056b34d}@media (max-width: 768px){.form-container{padding:15px}.form-actions{flex-direction:column;gap:10px}.btn-save,.btn-submit{width:100%}}
