.auth-page{--auth-ink:#101312;--auth-canvas:#f4f2ec;--auth-signal:#09ca59;--auth-signal-deep:#078f42;--auth-green-text:#087f3c;--auth-line:#10131224;--auth-line-strong:#10131242;--auth-muted:#5f6561;--auth-faint:#858a86;background:var(--auth-canvas);min-height:100vh;color:var(--auth-ink);font-family:var(--font-body), Inter, system-ui, sans-serif;flex-direction:column;align-items:center;padding:32px 20px 64px;display:flex;position:relative;overflow:hidden}.auth-slab{z-index:0;pointer-events:none;position:absolute}.auth-slab--green{clip-path:polygon(0 0,100% 0,46% 100%,0 100%);background:#09ca5926;width:36vw;height:66vh;top:0;left:0}.auth-slab--yellow{clip-path:polygon(0 0,100% 0,34% 100%,0 100%);background:#f1d87599;width:24vw;height:38vh;top:0;left:0}.auth-slab--night{clip-path:polygon(52% 0,100% 0,100% 100%,0 100%);background:#1016150f;width:36vw;height:100%;top:0;right:0}.auth-brand{z-index:1;justify-content:center;min-height:48px;margin-bottom:36px;display:flex;position:relative}.auth-brand a{color:inherit;text-decoration:none}.auth-column{z-index:1;width:min(480px,100%);position:relative}.auth-card{border:1px solid var(--auth-line);background:#fff;border-radius:6px;padding:40px;box-shadow:0 1px 2px #1013120a,0 16px 40px -28px #10131247}.auth-card h1{font-family:var(--font-display), "Instrument Sans", system-ui, sans-serif;letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:28px;font-weight:700;line-height:1.1}.auth-lede{color:var(--auth-muted);margin:8px 0 0;font-size:14px;line-height:1.55}.auth-lede strong{color:var(--auth-ink);font-weight:600}.auth-card form{gap:16px;margin-top:24px;display:grid}.auth-card--aside{text-align:center;box-shadow:none;margin-top:16px;padding:20px 24px}.auth-card--aside p{margin:0;font-size:14px;line-height:1.5}.auth-field{gap:6px;display:grid}.auth-field label{font-size:14px;font-weight:700;line-height:1.3}.auth-field input{border:1px solid var(--auth-line-strong);width:100%;height:48px;color:var(--auth-ink);background:#fff;border-radius:6px;outline:0;padding:0 14px;font-size:15px;transition:border-color .12s,box-shadow .12s}.auth-field input::placeholder{color:#9a9f9b}.auth-field input:hover:not(:disabled){border-color:#1013126b}.auth-field input:focus-visible{border-color:var(--auth-signal);box-shadow:0 0 0 3px #09ca5938}.auth-field input:disabled{color:var(--auth-faint);cursor:not-allowed;background:#f6f5f0}.auth-hint{color:var(--auth-faint);margin:0;font-size:12px;line-height:1.45}.auth-password{position:relative}.auth-password input{padding-right:48px}.auth-password-toggle{width:40px;height:40px;color:var(--auth-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:4px;right:4px}.auth-password-toggle:hover:not(:disabled){color:var(--auth-ink);background:#1013120d}.auth-password-toggle:focus-visible{outline:2px solid var(--auth-signal);outline-offset:1px}.auth-password-toggle:disabled{opacity:.4;cursor:not-allowed}.auth-btn{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:100%;padding:0 16px;font-size:14px;font-weight:700;line-height:1;text-decoration:none;transition:background-color .12s,border-color .12s,transform .1s,box-shadow .1s;display:inline-flex}.auth-btn:focus-visible{outline:2px solid var(--auth-ink);outline-offset:2px}.auth-btn:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.auth-btn--primary{border:1px solid var(--auth-signal-deep);background:var(--auth-signal);color:#06130a;height:48px;box-shadow:0 2px 0 var(--auth-signal-deep)}.auth-btn--primary:hover:not(:disabled){background:#0bd95f}.auth-btn--primary:active:not(:disabled){box-shadow:0 1px 0 var(--auth-signal-deep);transform:translateY(1px)}.auth-btn--secondary{border:1px solid var(--auth-line-strong);height:44px;color:var(--auth-ink);background:#fff;font-weight:600}.auth-btn--secondary:hover:not(:disabled){border-color:var(--auth-ink);background:#fbfbf8}.auth-btn--spaced{margin-top:24px}.auth-inline-action{color:inherit;font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.auth-inline-action:disabled{cursor:wait;opacity:.6}.auth-row{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.auth-check{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.auth-check input{width:18px;height:18px;accent-color:var(--auth-signal);cursor:pointer;margin:0}.auth-check input:disabled{cursor:not-allowed}.auth-link{color:var(--auth-green-text);font-weight:700;text-decoration:none}.auth-link:hover{text-underline-offset:2px;text-decoration:underline}.auth-divider{color:var(--auth-faint);align-items:center;gap:12px;font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--auth-line);flex:1;height:1px}.auth-message{border:1px solid #0000;border-radius:6px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5}.auth-message--error{color:#8c2f1e;background:#fde7e2;border-color:#8c2f1e2e}.auth-message--success{color:#076d34;background:#e1f7e8;border-color:#076d342e}.auth-message--info{color:var(--auth-ink);background:#ebe8df}.auth-card--confirm{text-align:center}.auth-confirm-mark{width:48px;height:48px;color:var(--auth-green-text);background:#09ca5929;border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.auth-card--confirm .auth-lede{margin-top:10px}.auth-confirm-actions{justify-items:center;gap:14px;margin-top:24px;display:grid}.auth-confirm-actions .auth-inline-action{color:var(--auth-muted);font-size:13px;font-weight:600}.auth-card--confirm .auth-message{text-align:left;margin-top:16px}.auth-prototype{background:#ebe8df;border-radius:6px;margin-top:20px;padding:14px 16px}.auth-prototype strong{font-size:13px;display:block}.auth-prototype p{color:var(--auth-muted);margin:4px 0 0;font-size:13px;line-height:1.5}.auth-prototype a{color:var(--auth-green-text);margin-top:8px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.auth-legal{color:var(--auth-faint);margin:20px 0 0;font-size:13px;line-height:1.5}@media (max-width:900px){.auth-slab{display:none}}@media (max-width:520px){.auth-page{padding:24px 20px 48px}.auth-brand{margin-bottom:28px}.auth-card{padding:28px 20px}.auth-card h1{font-size:26px}.auth-card--aside{padding:18px 20px}}@media (prefers-reduced-motion:reduce){.auth-btn,.auth-field input{transition:none}}
