.auth-page{--a-bg:#fff;--a-text:#191c1e;--a-muted:#414754;--a-faint:#5b6270;--a-border:#b9bfca;--a-input-bg:#fff;--a-primary:#0053da;--a-primary-hover:#0047bb;--a-primary-text:#fff;--a-focus:#0053da;--a-danger:#a8231b;--a-danger-bg:#fdecea;--a-success:#0b6b3a;--a-success-bg:#e8f5ed;--a-note-bg:#f2f4f6;background:var(--a-bg);min-height:100dvh;color:var(--a-text);font-family:var(--font-inter),system-ui,sans-serif;-webkit-text-size-adjust:100%;flex-direction:column;padding:24px 16px;display:flex}@media (prefers-color-scheme:dark){.auth-page{--a-bg:#0a0f1a;--a-text:#f1f5f9;--a-muted:#b4bfce;--a-faint:#94a3b8;--a-border:#3b4659;--a-input-bg:#111827;--a-primary:#2563eb;--a-primary-hover:#3b82f6;--a-primary-text:#fff;--a-focus:#7aa7ff;--a-danger:#fca5a5;--a-danger-bg:#dc262624;--a-success:#6ee7b7;--a-success-bg:#05966929;--a-note-bg:#111827}}.auth-col{width:100%;max-width:400px;margin:auto;padding:8px 0 24px}.auth-logo{justify-content:center;margin-bottom:28px;display:flex}.auth-logo img{width:auto;height:40px}.auth-logo .auth-logo-dark{display:none}@media (prefers-color-scheme:dark){.auth-logo .auth-logo-light{display:none}.auth-logo .auth-logo-dark{display:block}}.auth-title{font-family:var(--font-manrope),var(--font-inter),system-ui,sans-serif;letter-spacing:-.01em;text-align:center;margin:0;font-size:26px;font-weight:700;line-height:1.2}.auth-portal{text-align:center;color:var(--a-muted);margin:8px 0 0;font-size:14px}.auth-lede{text-align:center;color:var(--a-muted);margin:16px 0 0;font-size:15px;line-height:1.5}.auth-form{flex-direction:column;gap:16px;margin-top:28px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-label{color:var(--a-text);font-size:14px;font-weight:600}.auth-label-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-inline-link{min-height:44px;color:var(--a-primary);border-radius:6px;align-items:center;margin:-10px -4px;padding:0 4px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.auth-inline-link:hover{text-decoration:underline}.auth-inline-link:focus-visible{outline:2px solid var(--a-focus);outline-offset:1px}@media (prefers-color-scheme:dark){.auth-inline-link{color:var(--a-focus)}}.auth-input-wrap{display:flex;position:relative}.auth-input{width:100%;min-height:48px;font:inherit;color:var(--a-text);background:var(--a-input-bg);border:1px solid var(--a-border);appearance:none;border-radius:8px;padding:10px 14px;font-size:16px}.auth-input::placeholder{color:var(--a-faint);opacity:.8}.auth-input:focus-visible{outline:2px solid var(--a-focus);outline-offset:1px;border-color:var(--a-focus)}.auth-input.has-toggle{padding-right:52px}.auth-eye{width:48px;color:var(--a-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;bottom:0;right:0}.auth-eye:focus-visible{outline:2px solid var(--a-focus);outline-offset:-2px}.auth-hint{color:var(--a-faint);margin:0;font-size:13px}.auth-primary,.auth-secondary{min-height:48px;font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:100%;padding:10px 16px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.auth-primary{background:var(--a-primary);color:var(--a-primary-text);border:1px solid var(--a-primary)}.auth-primary:hover:not(:disabled){background:var(--a-primary-hover);border-color:var(--a-primary-hover)}.auth-secondary{color:var(--a-text);border:1px solid var(--a-border);background:0 0}.auth-secondary:hover:not(:disabled){border-color:var(--a-muted)}.auth-primary:focus-visible,.auth-secondary:focus-visible{outline:2px solid var(--a-focus);outline-offset:2px}.auth-primary:disabled,.auth-secondary:disabled{opacity:.6;cursor:wait}.auth-quiet-row{flex-direction:column;align-items:stretch;gap:0;margin-top:4px;display:flex}.auth-quiet{min-height:44px;font:inherit;color:var(--a-primary);cursor:pointer;text-align:center;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:8px 12px;font-size:15px;text-decoration:none;display:inline-flex}.auth-quiet:hover:not(:disabled){text-decoration:underline}.auth-quiet:focus-visible{outline:2px solid var(--a-focus);outline-offset:1px}.auth-quiet:disabled{opacity:.6;cursor:wait}@media (prefers-color-scheme:dark){.auth-quiet{color:var(--a-focus)}}.auth-message{border-radius:8px;margin:0;padding:12px 14px;font-size:14px;line-height:1.45}.auth-message.is-error{background:var(--a-danger-bg);color:var(--a-danger)}.auth-message.is-success{background:var(--a-success-bg);color:var(--a-success)}.auth-message.is-note{background:var(--a-note-bg);color:var(--a-muted)}.auth-actions{flex-direction:column;gap:12px;margin-top:24px;display:flex}.auth-foot{text-align:center;color:var(--a-faint);margin-top:20px;font-size:14px}.auth-foot a{color:var(--a-primary)}@media (prefers-color-scheme:dark){.auth-foot a{color:var(--a-focus)}}.auth-spin{border:3px solid var(--a-border);border-top-color:var(--a-primary);border-radius:50%;width:28px;height:28px;margin:24px auto 0;animation:.9s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.auth-spin{animation-duration:3s}}:is(body:has(.auth-page)>header,body:has(.auth-page)>footer){display:none}
