.add-student-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background-color:#0000008c;justify-content:center;align-items:center;padding:1rem;animation:.2s backdrop-fade-in;display:flex;position:fixed;inset:0}@keyframes backdrop-fade-in{0%{opacity:0}to{opacity:1}}.add-student-modal{background-color:#fff;border-radius:1rem;flex-direction:column;width:100%;max-width:640px;max-height:90vh;animation:.25s cubic-bezier(.22,1,.36,1) modal-slide-up;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059,0 0 0 1px #0000000f}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.add-student-form{flex-direction:column;flex:1;min-height:0;display:flex}.add-student-modal-header{background-color:#0f172a;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.add-student-modal-title-row{align-items:center;gap:.625rem;display:flex}.add-student-modal-icon{color:#60a5fa}.add-student-modal-title{color:#fff;margin:0;font-size:1.1rem;font-weight:700}.add-student-close-btn{color:#94a3b8;cursor:pointer;background-color:#ffffff14;border:none;border-radius:.5rem;justify-content:center;align-items:center;width:2rem;height:2rem;transition:background-color .15s,color .15s;display:flex}.add-student-close-btn:hover{color:#fff;background-color:#ffffff2e}.add-student-close-btn:disabled{opacity:.4;cursor:not-allowed}.add-student-modal-body{flex-direction:column;flex:1;gap:1rem;padding:1.5rem;display:flex;overflow-y:auto}.form-grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:480px){.add-student-backdrop{padding:0}.add-student-modal{border-radius:0;height:100%;max-height:100vh}.form-grid-2{grid-template-columns:1fr}}.form-field{flex-direction:column;gap:.375rem;display:flex}.form-label{color:#374151;font-size:.8125rem;font-weight:600}.required-star{color:#ef4444;margin-left:2px}.form-input{color:#111827;box-sizing:border-box;background-color:#f9fafb;border:1.5px solid #e5e7eb;border-radius:.5rem;outline:none;width:100%;padding:.5625rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s,background-color .15s}.form-input:focus{background-color:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-input-error{background-color:#fff5f5;border-color:#f87171}.form-input-error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f}.form-error-msg{color:#ef4444;margin:0;font-size:.75rem}.add-student-modal-footer{background-color:#f9fafb;border-top:1px solid #f3f4f6;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.add-student-cancel-btn{color:#374151;cursor:pointer;background-color:#fff;border:1.5px solid #e5e7eb;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .15s,border-color .15s}.add-student-cancel-btn:hover{background-color:#f3f4f6;border-color:#d1d5db}.add-student-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.add-student-submit-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1.375rem;font-size:.875rem;font-weight:600;transition:background-color .15s,transform .1s;display:flex}.add-student-submit-btn:hover{background-color:#1d4ed8}.add-student-submit-btn:active{transform:scale(.98)}.add-student-submit-btn:disabled{cursor:not-allowed;background-color:#93c5fd;transform:none}.spinner-icon{animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.school-type-btn{color:#6b7280;cursor:pointer;background-color:#f9fafb;border:1.5px solid #e5e7eb;border-radius:.5rem;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.5625rem 1rem;font-size:.8125rem;font-weight:500;transition:all .18s;display:flex}.school-type-btn:hover{background-color:#f3f4f6;border-color:#d1d5db}.school-type-btn:disabled{opacity:.5;cursor:not-allowed}.school-type-btn-active-school{color:#1d4ed8;background-color:#eff6ff;border-color:#3b82f6;font-weight:600;box-shadow:0 0 0 2px #3b82f626}.school-type-btn-active-camp{color:#b45309;background-color:#fffbeb;border-color:#f59e0b;font-weight:600;box-shadow:0 0 0 2px #f59e0b26}.form-hint{color:#6b7280;margin:2px 0 0;font-size:.7rem;font-style:italic}
