*{box-sizing:border-box;margin:0;padding:0}.header{text-align:center;margin-top:90px;font-weight:600}.body{font-family:var(--font-sans);background:var(--paper);min-height:100vh;padding:40px 1.5rem 4rem;display:block}.form-container{background:var(--white);border:1px solid var(--line);width:100%;max-width:700px;margin:0 auto}.curriculum-card{background:var(--ink);border:1px solid var(--ink);max-width:700px;color:var(--paper);margin:1.5rem auto;padding:1.5rem 1.75rem;text-decoration:none;transition:transform .25s,background .25s,box-shadow .25s;display:block}.curriculum-card:hover{background:var(--ink-soft);transform:translateY(-3px);box-shadow:0 12px 28px #14120d29}.curriculum-card:focus-visible{outline:2px solid var(--gold-deep);outline-offset:4px}.curriculum-card h2{color:var(--gold-bright);font-family:var(--font-display);margin:0 0 .6rem;font-size:1.6rem;font-weight:500}.curriculum-card p{margin:0;line-height:1.6}.curriculum-card span{color:var(--gold-bright);letter-spacing:.05em;text-transform:uppercase;margin-top:1rem;font-size:.85rem;font-weight:600;display:inline-block}.form-header{border-bottom:1px dashed var(--line);padding:2.25rem 2.5rem 1.25rem}.form-header h1{font-family:var(--font-display);color:var(--ink);font-size:1.9rem;font-weight:500}.registration-progress{margin-top:1.5rem}.registration-progress-copy{color:var(--stone);justify-content:space-between;gap:1rem;margin-bottom:.55rem;font-size:.82rem;display:flex}.registration-progress-copy strong{color:var(--ink);font-weight:600}.registration-progress-track{background:var(--paper-dim);border-radius:999px;height:.45rem;overflow:hidden}.registration-progress-track span{background:var(--gold-deep);border-radius:inherit;height:100%;transition:width .25s;display:block}.form-body{padding:1.75rem 2.5rem 2.5rem}.question{margin-bottom:2rem}.question-number{font-family:var(--font-mono);letter-spacing:.1em;color:var(--gold-deep);text-transform:uppercase;margin-bottom:6px;font-size:.75rem;font-weight:600}.question-label{color:var(--ink);margin-bottom:10px;font-size:.95rem}.field-error{color:var(--danger);margin:.45rem 0 0;font-size:.85rem;line-height:1.4}.required{color:var(--danger)}.input-field{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);width:100%;font-size:1rem;font-family:var(--font-sans);color:var(--ink);padding:.85rem 1rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--gold-deep);outline:none;box-shadow:0 0 0 3px #a17a4626}.textarea{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);width:100%;font-size:1rem;font-family:var(--font-sans);color:var(--ink);resize:vertical;min-height:100px;padding:.85rem 1rem}.textarea:focus{border-color:var(--gold-deep);outline:none;box-shadow:0 0 0 3px #a17a4626}.radio-group{flex-direction:column;gap:12px;display:flex}.radio-option{color:var(--ink);cursor:pointer;align-items:center;gap:10px;font-size:.95rem;display:flex}.radio-option input[type=radio]{width:18px;height:18px;accent-color:var(--gold-deep)}.declaration{background:var(--paper);border:1px dashed var(--line);border-radius:var(--radius);margin:1.75rem 0;padding:1.25rem}.declaration-text{color:var(--stone);margin-bottom:.9rem;font-size:.9rem;line-height:1.6}.agree-checkbox{color:var(--ink);cursor:pointer;align-items:center;gap:10px;font-size:.95rem;display:flex}.agree-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--gold-deep)}.submit-btn{background:var(--ink);width:100%;color:var(--paper);letter-spacing:.04em;border-radius:var(--radius);cursor:pointer;border:none;padding:1rem;font-size:1rem;font-weight:500;transition:background .25s}.submit-btn:hover{background:var(--ink-soft)}.submit-btn:disabled{opacity:.55;cursor:not-allowed}.submit-spinner{border:2px solid #fff6;border-top-color:var(--paper);vertical-align:middle;border-radius:50%;width:18px;height:18px;margin-right:10px;animation:.8s linear infinite spin;display:inline-block}@media (max-width:600px){.form-container{margin:10px}.form-header,.form-body{padding-left:1.5rem;padding-right:1.5rem}.registration-progress-copy{flex-direction:column;gap:.25rem}}.loading-container{background:var(--paper);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.spinner{border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;width:44px;height:44px;margin-bottom:1rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:var(--stone);font-size:1.05rem}.auth-modal-overlay{z-index:1000;background:#14120d8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-modal{background:var(--white);border:1px solid var(--line);text-align:center;width:90%;max-width:400px;padding:2.5rem}.auth-modal h2{font-family:var(--font-display);color:var(--ink);margin:0 0 1rem;font-size:1.5rem;font-weight:500}.auth-modal p{color:var(--stone);margin:0 0 1.5rem;font-size:1rem;line-height:1.5}.auth-buttons{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.auth-btn{border-radius:var(--radius);text-align:center;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .25s}.auth-btn.primary{background:var(--gold);color:var(--ink)}.auth-btn.primary:hover{background:var(--ink);color:var(--white)}.auth-btn.secondary{background:var(--paper-dim);color:var(--ink)}.auth-btn.secondary:hover{background:var(--ink);color:var(--white)}.close-btn{border:1px solid var(--line);border-radius:var(--radius);color:var(--stone);cursor:pointer;background:0 0;padding:.75rem 1.5rem;font-size:.9rem;transition:all .25s}.close-btn:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}.passport-preview{margin-top:1rem}.passport-image{object-fit:cover;border-radius:var(--radius);border:2px solid var(--line);width:150px;height:150px}.upload-progress-container{background-color:var(--line);border-radius:var(--radius);width:100%;height:8px;margin-top:1rem;overflow:hidden}.upload-progress-bar{background-color:var(--gold);width:0%;height:100%;transition:width .3s}.success-modal-overlay{z-index:1000;background:#14120d8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.success-modal{background:var(--white);border:1px solid var(--line);text-align:center;width:90%;max-width:400px;padding:3rem}.success-icon{margin-bottom:1.5rem}.success-modal h2{font-family:var(--font-display);color:var(--ink);margin-bottom:.75rem;font-size:1.5rem;font-weight:500}.success-modal p{color:var(--stone);margin-bottom:2rem;font-size:1rem}.success-modal-btn{background:var(--gold);color:var(--ink);border-radius:var(--radius);cursor:pointer;border:none;padding:.875rem 2rem;font-size:1rem;font-weight:500;transition:background .25s}.success-modal-btn:hover{background:var(--gold-bright)}.admin-panel{background:var(--white);border:1px solid var(--line);max-width:900px;margin:100px auto 30px}.admin-header{background:var(--ink);color:var(--paper);justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 2rem;display:flex}.admin-header h2{font-family:var(--font-display);margin:0;font-size:1.4rem;font-weight:500}.admin-link-btn{background:var(--gold);color:var(--ink);border-radius:var(--radius);padding:.6rem 1rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .25s}.admin-link-btn:hover{background:var(--gold-bright)}.search-container{border-bottom:1px dashed var(--line);padding:1.5rem 2rem}.search-input{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--ink);outline:none;padding:.75rem 1rem;font-size:1rem;transition:border-color .25s}.search-input:focus{border-color:var(--gold-deep);box-shadow:0 0 0 3px #a17a4626}.pending-students{padding:1.75rem 2rem}.pending-students h3{color:var(--ink);margin:0 0 1.25rem;font-size:1.2rem;font-weight:600}.students-list{flex-direction:column;gap:12px;display:flex}.student-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);justify-content:space-between;align-items:center;padding:1.25rem;transition:border-color .25s;display:flex}.student-card:hover{border-color:var(--gold-deep)}.student-info h4{color:var(--ink);margin:0 0 6px;font-size:1.05rem;font-weight:600}.student-info p{color:var(--stone);margin:3px 0;font-size:.9rem}.student-actions{align-items:center;gap:.75rem;display:flex}.view-btn{background:var(--gold-deep);color:var(--white);border-radius:var(--radius);cursor:pointer;text-align:center;border:none;padding:.7rem 1.4rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:opacity .25s}.view-btn:hover{opacity:.85}.accept-btn{background:var(--success);color:var(--white);border-radius:var(--radius);cursor:pointer;border:none;padding:.7rem 1.4rem;font-size:.9rem;font-weight:500;transition:opacity .25s}.accept-btn:hover:not(:disabled){opacity:.85}.accept-btn:disabled{opacity:.5;cursor:not-allowed}.no-pending{text-align:center;color:var(--stone);padding:2rem;font-size:1rem}@media (max-width:600px){.admin-panel{margin:80px 10px 20px}.admin-header,.student-card{text-align:center;flex-direction:column;gap:15px}.curriculum-card{max-width:350px;margin:1.5rem}.accept-btn{width:100%}}
