.academy-auth-layout{background:linear-gradient(135deg, #f0fdf4 0%, #ecfdf5 50%, var(--ds-brand-50) 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:1rem;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:flex}.academy-auth-logo{text-align:center;margin-bottom:1.5rem}.academy-auth-logo h1{color:#065f46;letter-spacing:-.025em;margin:0;font-size:1.5rem;font-weight:700}.academy-auth-logo p{color:#6b7280;margin:.25rem 0 0;font-size:.875rem}.academy-auth-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;max-width:420px;padding:2rem;box-shadow:0 4px 6px -1px #00000012,0 2px 4px -2px #0000000d}.academy-auth-card h2{color:var(--ds-brand-900);text-align:center;margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.academy-auth-field{margin-bottom:1rem}.academy-auth-field label{color:#374151;margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.academy-auth-field input{width:100%;color:var(--ds-brand-900);box-sizing:border-box;background:#fafafa;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:.625rem .75rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.academy-auth-field input:focus{background:#fff;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.academy-auth-field input::placeholder{color:#9ca3af}.academy-auth-field .field-hint{color:#6b7280;margin-top:.25rem;font-size:.75rem}.academy-auth-btn{color:#fff;cursor:pointer;background:#059669;border:none;border-radius:8px;width:100%;margin-top:.5rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:600;transition:background .15s,transform .1s}.academy-auth-btn:hover:not(:disabled){background:#047857}.academy-auth-btn:active:not(:disabled){transform:scale(.98)}.academy-auth-btn:disabled{opacity:.6;cursor:not-allowed}.academy-auth-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.academy-auth-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.academy-auth-footer{text-align:center;color:#6b7280;margin-top:1.25rem;font-size:.875rem}.academy-auth-footer a{color:#059669;font-weight:500;text-decoration:none}.academy-auth-footer a:hover{text-decoration:underline}.academy-auth-divider{color:#9ca3af;align-items:center;margin:1rem 0;font-size:.75rem;display:flex}.academy-auth-divider:before,.academy-auth-divider:after{content:"";background:#e5e7eb;flex:1;height:1px}.academy-auth-divider span{padding:0 .75rem}.academy-otp-inputs{justify-content:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.academy-otp-inputs input{text-align:center;border:1.5px solid #d1d5db;border-radius:8px;outline:none;width:3rem;height:3rem;font-size:1.25rem;font-weight:600;transition:border-color .15s,box-shadow .15s}.academy-otp-inputs input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.academy-auth-resend{text-align:center;color:#6b7280;margin-top:1rem;font-size:.8125rem}.academy-auth-resend button{color:#059669;cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:500}.academy-auth-resend button:hover{text-decoration:underline}.academy-auth-resend button:disabled{color:#9ca3af;cursor:not-allowed;text-decoration:none}
