.auth-page{--auth-bg:#ebebeb;--auth-surface:#ebebeb;--auth-border:#ffffff6b;--auth-border-soft:#e7f0f3;--auth-text:#001c2b;--auth-muted:#44677a;--auth-primary:#0b5366;--auth-primary-hover:#084557;--auth-red:#df2f35;background:var(--auth-bg);min-height:100vh;color:var(--auth-text);place-items:center;padding:clamp(18px,3vw,32px);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid}.auth-page .auth-card{border:1px solid var(--auth-border);background:var(--auth-surface);border-radius:clamp(18px,3vw,28px);width:min(100%,460px);padding:clamp(22px,2.2vw,32px);position:relative;box-shadow:.3125rem -.3125rem .625rem #c8c8c8,-.3125rem .3125rem .625rem #fff}.auth-theme-toggle-label{cursor:pointer;color:#394a56;flex-shrink:0;justify-self:end;align-items:center;display:inline-flex}.auth-theme-toggle{isolation:isolate;border-radius:999px;width:3.75rem;height:1.875rem;position:relative;overflow:hidden;box-shadow:-.5rem -.25rem .5rem #0000,.5rem .25rem .75rem #0000,inset .25rem .25rem .25rem #c1c1c2,inset -.25rem -.25rem .25rem #d0d0d0}.auth-theme-toggle-state{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:absolute}.auth-theme-toggle-indicator{background:#ecf0f3;border-radius:999px;width:1.375rem;height:1.375rem;transition:transform .4s cubic-bezier(.85,.05,.18,1.35);display:block;position:absolute;inset-block-start:.25rem;inset-inline-start:.25rem;transform:translate(0,0);box-shadow:-.5rem -.25rem .5rem #5b595915,.5rem .25rem .75rem #5b59592a}.auth-theme-toggle-state:checked~.auth-theme-toggle-indicator{transform:translate(1.875rem)}.auth-header{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.auth-header-with-toggle{text-align:left;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch;align-items:center;padding:.57rem 0;display:grid}.auth-brand-block{min-width:0}.auth-header-with-toggle .auth-brand-title{text-align:left}.auth-logo{background:var(--auth-primary);color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 8px 18px #0b536638}.auth-logo span{letter-spacing:.12em;font-size:1rem;font-weight:900}.auth-brand-title{color:var(--auth-muted);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:900}.auth-title-h1{color:var(--auth-text);margin:4px 0 0;font-size:clamp(1.05rem,1.5vw,1.22rem);font-weight:900;line-height:1.2}.auth-divider{background:var(--auth-border-soft);height:1px}.auth-intro{text-align:center;margin-bottom:22px}.auth-title-h2{color:var(--auth-text);text-transform:uppercase;margin:6px 0;font-size:clamp(1.45rem,2.5vw,1.75rem);font-weight:900;line-height:1.1}.auth-text{color:var(--auth-muted);text-transform:uppercase;margin:0;font-size:.72rem;font-weight:600;line-height:1.5}.auth-page .auth-form{gap:16px;display:grid}.auth-password-control{align-items:center;display:flex;position:relative}.auth-password-toggle{width:32px;height:32px;color:var(--auth-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:6px;place-items:center;transition:color .18s,background-color .18s;display:grid;position:absolute;right:8px}.auth-page .auth-password-toggle svg{stroke-width:2.25px}html:not(.dark) .auth-page .auth-password-toggle{color:var(--auth-primary)}.auth-password-toggle:hover,.auth-password-toggle:focus-visible{color:var(--auth-primary);background:#0b536614;outline:none}.auth-links{justify-content:center;gap:12px;font-size:.86rem;display:flex}.auth-links a,.auth-note a{color:var(--auth-primary);font-weight:800;text-decoration:none}.auth-message{border-radius:7px;margin:0;padding:12px 14px;font-size:.88rem;font-weight:700;line-height:1.4}.auth-message-success{color:#075c4d;background:#e0f5f0;border:1px solid #9bd5c8}.auth-message-error{color:var(--auth-red);background:#fde1e3;border:1px solid #f3b6b9}.auth-page .auth-button{border:1px solid var(--auth-primary);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-family:inherit;font-size:.9rem;font-weight:900;transition:all .2s;display:inline-flex;background:var(--auth-primary)!important;color:#fff!important}.auth-page .auth-button:hover:not(:disabled){background:var(--auth-primary-hover)!important}.auth-page .auth-button:disabled{opacity:.65;cursor:not-allowed}.auth-note{border-top:1px solid var(--auth-border-soft);color:var(--auth-muted);text-align:center;margin:16px 0 0;padding-top:16px;font-size:.82rem;line-height:1.4}.auth-loading-page{width:100vw;min-height:100svh;padding:clamp(18px,4vw,40px)}.auth-loading-shell{justify-items:center;gap:16px;width:min(100%,420px);display:grid}.auth-loading-mark{border:1px solid var(--auth-border-soft);background:var(--auth-surface);border-radius:24px;place-items:center;width:92px;height:92px;display:grid;position:relative;box-shadow:.25rem -.25rem .625rem #c8c8c8,-.25rem .25rem .625rem #fff}.auth-loading-mark strong{color:var(--auth-primary);letter-spacing:0;font-size:1.55rem;font-weight:950}.auth-loading-ring{border:2px solid #0b53661f;border-top-color:var(--auth-primary);border-right-color:#0b536659;border-radius:999px;animation:1.1s linear infinite auth-spin;position:absolute;inset:12px}.auth-loading-copy{text-align:center;justify-items:center;gap:4px;display:grid}.auth-loading-copy h1{color:var(--auth-text);margin:0;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:900;line-height:1.15}.auth-loading-copy p{max-width:32rem;color:var(--auth-muted);margin:0;font-size:clamp(.84rem,1.3vw,.98rem);line-height:1.45}.auth-loading-progress{border:1px solid var(--auth-border-soft);background:#0b53661a;border-radius:999px;width:min(100%,340px);height:10px;overflow:hidden}.auth-loading-progress span{border-radius:inherit;background:var(--auth-primary);width:42%;height:100%;animation:1.35s ease-in-out infinite auth-progress;display:block}.auth-loading-status{color:var(--auth-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-progress{0%{transform:translate(-110%)}55%{transform:translate(78%)}to{transform:translate(240%)}}@media (prefers-reduced-motion:reduce){.auth-loading-ring,.auth-loading-progress span{animation:none}.auth-loading-progress span{transform:translate(72%)}}@media (width<=520px){.auth-page{padding:16px}.auth-page .auth-card{padding:20px}.auth-logo{width:50px;height:50px}}html.dark .auth-page{--auth-bg:#1a1a1a;--auth-surface:#242424;--auth-border:#ffffff14;--auth-border-soft:#2e2e2e;--auth-text:#e0e0e0;--auth-muted:#9eb8c0;--auth-primary:#0d8195;--auth-primary-hover:#0b9baf}html.dark .auth-page .auth-card{box-shadow:.3125rem -.3125rem .625rem #0d0d0d,-.3125rem .3125rem .625rem #2a2a2a}html.dark .auth-loading-mark{border-color:var(--auth-border);background:var(--auth-surface);box-shadow:none}html.dark .auth-loading-ring{border-color:#0d819529;border-top-color:var(--auth-primary);border-right-color:#0d819573}html.dark .auth-loading-progress{border-color:var(--auth-border);background:#1e1e1e}html.dark .auth-theme-toggle{box-shadow:inset .25rem .25rem .25rem #111,inset -.25rem -.25rem .25rem #2a2a2a}html.dark .auth-theme-toggle-indicator{background:#1e1e1e;box-shadow:-.5rem -.25rem .5rem #0d0d0d,.5rem .25rem .75rem #000}html.dark .auth-password-toggle:hover,html.dark .auth-password-toggle:focus-visible,html.dark .auth-password-toggle:active{color:var(--auth-primary-hover);background:#0d819529;outline:none}
