:root{--eaids-primary: #1a3a5c;--eaids-primary-light: #2c5282;--eaids-accent: #38a169;--eaids-bg: #f0f4f8;--eaids-card-shadow: 0 4px 24px rgba(0, 0, 0, .08)}.auth-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--eaids-bg);padding:1rem}.auth-container{width:100%;max-width:440px}.auth-card{background:#fff;border:none;border-radius:12px;box-shadow:var(--eaids-card-shadow);padding:2.5rem 2rem}.auth-logo{text-align:center;margin-bottom:1.5rem}.auth-logo img{max-height:64px;width:auto}.auth-logo h1{font-size:1.25rem;font-weight:700;color:var(--eaids-primary);margin-top:.75rem;margin-bottom:0}.auth-logo p{font-size:.875rem;color:#6b7280;margin-top:.25rem}.auth-card .form-label{font-weight:500;font-size:.875rem;color:#374151}.auth-card .form-control:focus{border-color:var(--eaids-primary-light);box-shadow:0 0 0 .2rem #2c528226}.auth-card .btn-primary{background-color:var(--eaids-primary);border-color:var(--eaids-primary);font-weight:600;padding:.625rem 1.25rem}.auth-card .btn-primary:hover{background-color:var(--eaids-primary-light);border-color:var(--eaids-primary-light)}.auth-card .btn-primary:disabled{opacity:.7}.auth-alert-container{min-height:0}.btn-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .6s linear infinite;margin-right:.5rem;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.toast-container{position:fixed;top:1rem;right:1rem;z-index:9999}.password-strength{height:4px;border-radius:2px;margin-top:.375rem;transition:width .3s,background-color .3s}.password-strength-weak{width:25%;background-color:#dc3545}.password-strength-fair{width:50%;background-color:#fd7e14}.password-strength-good{width:75%;background-color:#ffc107}.password-strength-strong{width:100%;background-color:#28a745}.otp-inputs{display:flex;gap:.5rem;justify-content:center}.otp-inputs input{width:3rem;height:3.5rem;text-align:center;font-size:1.5rem;font-weight:700;border-radius:8px;border:2px solid #d1d5db}.otp-inputs input:focus{border-color:var(--eaids-primary-light);box-shadow:0 0 0 .2rem #2c528226;outline:none}.auth-card a{color:var(--eaids-primary-light);text-decoration:none;font-size:.875rem}.auth-card a:hover{text-decoration:underline}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.8125rem;color:#9ca3af}
