.auth-page{--auth-radius:0.75rem;--auth-input-radius:9999px;--auth-card-bg:#ffffff;--auth-page-bg:transparent;--auth-visual-bg:#f0f7fa;--auth-border:#e2e8f0;--auth-border-hover:#cbd5e1;--auth-muted:#64748b;--auth-surface:#f8fafc;--auth-input-hover-bg:#ffffff;--auth-text:#0f172a;--auth-accent:var(--brand-primary,#5966ec);--auth-accent-hover:var(--brand-primary-strong,#4553d6);--auth-accent-soft:var(--brand-primary-soft,#eef0fe);--auth-accent-border:rgba(89,102,236,0.28);--auth-focus-ring:var(--brand-primary-tint,rgba(89,102,236,0.14));--auth-link:var(--brand-primary,#5966ec);--auth-error:#e11d48;--auth-success-text:#047857;--auth-error-bg:#fff1f2;--auth-error-border:#fecdd3;--auth-error-text:#be123c;display:flex;min-height:100dvh;align-items:center;justify-content:center;background:var(--auth-page-bg)}.dark .auth-page{--auth-card-bg:#1e2229;--auth-page-bg:transparent;--auth-visual-bg:rgba(89,102,236,0.07);--auth-border:#2a2f38;--auth-border-hover:#3a414d;--auth-muted:#94a3b8;--auth-surface:#262b34;--auth-input-hover-bg:#262b34;--auth-text:#f1f5f9;--auth-accent:var(--brand-primary-light,#7a84f5);--auth-accent-hover:var(--brand-primary,#5966ec);--auth-accent-soft:rgba(89,102,236,0.12);--auth-accent-border:rgba(89,102,236,0.3);--auth-focus-ring:rgba(89,102,236,0.2);--auth-link:var(--brand-primary-light,#7a84f5);--auth-error:#fb7185;--auth-success-text:#6ee7b7;--auth-error-bg:rgba(244,63,94,0.1);--auth-error-border:rgba(244,63,94,0.28);--auth-error-text:#fb7185}.auth-page__inner{display:flex;width:100%;align-items:center;justify-content:center;padding:1.25rem 1rem 2rem}@media (min-width:640px){.auth-page__inner{padding:2rem 1.5rem}}.auth-card{display:grid;width:100%;max-width:920px;overflow:hidden;border:1px solid var(--auth-border);border-radius:var(--auth-radius);background:var(--auth-card-bg)}@media (min-width:900px){.auth-card{grid-template-columns:1fr 380px;min-height:34rem}}.auth-form-panel{display:flex;flex-direction:column;min-height:100%}.auth-form-panel__body{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem 2.5rem}@media (min-width:640px){.auth-form-panel__body{padding:2.5rem 2rem 3rem}}.auth-form-wrap{width:100%;max-width:27rem;margin:0 auto;text-align:center}.auth-visual{display:none;padding:1rem;background:var(--auth-card-bg)}@media (min-width:900px){.auth-visual{display:flex}}.auth-visual__inner{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:2rem 1.25rem;border-radius:var(--auth-radius);background:var(--auth-visual-bg);text-align:center}.auth-visual__img{width:100%;max-width:240px;height:auto;object-fit:contain}.auth-visual__caption{margin:0;max-width:15rem;font-size:.875rem;font-weight:600;line-height:1.6;letter-spacing:-.01em;color:var(--auth-text)}.auth-visual__caption strong{color:var(--auth-link);font-weight:700}.auth-header{margin-bottom:1.5rem;text-align:center}.auth-heading{margin:0;font-size:1.625rem;font-weight:700;letter-spacing:-.025em;color:var(--auth-text)}.auth-subtitle{margin:.5rem auto 0;max-width:24rem;font-size:.875rem;line-height:1.65;color:var(--auth-muted)}.auth-subtitle strong{color:var(--auth-text);font-weight:600}.auth-field{text-align:left}.auth-field+.auth-field{margin-top:1.125rem}.auth-label{display:block;margin-bottom:.45rem;font-size:.8125rem;font-weight:500;color:var(--auth-text)}.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.auth-required{color:var(--auth-error)}.auth-error,.auth-hint{margin:.35rem 0 0;font-size:.75rem}.auth-hint{color:var(--auth-muted)}.auth-error{color:var(--auth-error)}.auth-input-wrap{position:relative}.auth-input-icon{pointer-events:none;position:absolute;left:.875rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--auth-muted)}.auth-input{display:block;width:100%;height:2.75rem;padding:0 .875rem 0 2.5rem;border:1px solid var(--auth-border);border-radius:var(--auth-input-radius);background:var(--auth-surface);font-size:.875rem;color:var(--auth-text);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.auth-input--plain{padding-left:.875rem}.auth-input--password{padding-right:2.75rem}.auth-input--otp{padding:0 .875rem;height:3rem;text-align:center;font-size:1.25rem;font-weight:600;letter-spacing:.35em;border-radius:var(--auth-input-radius);background:var(--auth-card-bg)}.auth-input::placeholder{color:var(--auth-muted)}.auth-input:hover{border-color:var(--auth-border-hover)}.auth-input:focus,.auth-input:hover{background:var(--auth-input-hover-bg)}.auth-input:focus{outline:none;border-color:var(--auth-accent);box-shadow:0 0 0 3px var(--auth-focus-ring)}.auth-input-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);padding:.2rem;border:none;background:transparent;color:var(--auth-muted);cursor:pointer}.auth-input-toggle:hover{color:var(--auth-text)}.auth-form{display:block}.auth-btn-primary{display:flex;width:100%;height:2.75rem;align-items:center;justify-content:center;gap:.4rem;margin-top:1.5rem;border:none;border-radius:var(--auth-radius);background:var(--auth-accent);font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:background .15s ease}.auth-btn-primary:hover:not(:disabled){background:var(--auth-accent-hover)}.auth-btn-primary:disabled{opacity:.55;cursor:not-allowed}.auth-btn-social{display:flex;width:100%;height:2.75rem;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--auth-border);border-radius:var(--auth-radius);background:var(--auth-card-bg);font-size:.875rem;font-weight:500;color:var(--auth-text);text-decoration:none;transition:border-color .15s ease,background .15s ease}.auth-btn-social:hover{border-color:var(--auth-border-hover);background:var(--auth-surface)}.auth-switch{margin-top:1.25rem;text-align:center;font-size:.8125rem;color:var(--auth-muted)}.auth-link-accent{font-weight:600;color:var(--auth-link);text-decoration:none}.auth-link-accent:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;font-size:.75rem;color:var(--auth-muted)}.auth-divider:after,.auth-divider:before{content:"";flex:1;height:1px;background:var(--auth-border)}.auth-footer-note{margin-top:1.5rem;text-align:center;font-size:.6875rem;line-height:1.55;color:var(--auth-muted)}.auth-notice{margin-bottom:1rem;padding:.75rem .875rem;border-radius:var(--auth-radius);border:1px solid var(--auth-border);font-size:.8125rem;line-height:1.5;text-align:left;color:var(--auth-text)}.auth-notice--neutral{color:var(--auth-muted);background:var(--auth-surface)}.auth-notice--success{border-color:var(--auth-accent-border);background:var(--auth-accent-soft);color:var(--auth-success-text)}.auth-notice--error{border-color:var(--auth-error-border);background:var(--auth-error-bg);color:var(--auth-error-text)}.auth-otp-icon{display:inline-flex;height:3rem;width:3rem;align-items:center;justify-content:center;margin-bottom:.5rem;border-radius:var(--auth-radius);border:1px solid var(--auth-accent-border);background:var(--auth-accent-soft);color:var(--auth-link)}.auth-otp-footer{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--auth-border);text-align:center}.auth-otp-back{display:inline-flex;align-items:center;gap:.35rem;margin-top:.75rem;border:none;background:transparent;font-size:.8125rem;font-weight:500;color:var(--auth-muted);text-decoration:none;cursor:pointer}.auth-otp-back:hover{color:var(--auth-text)}.auth-resend-btn{border:none;background:transparent;padding:0;font-weight:600;cursor:pointer}.auth-resend-btn--disabled{color:var(--auth-muted);cursor:not-allowed}.auth-resend-btn--active{color:var(--auth-link)}.auth-resend-btn--active:hover{text-decoration:underline}