.login-app{--login-signal:var(--signal);--login-signal-ink:#fff;background:var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}:root[data-theme=dark] .login-app{--login-signal:var(--signal);--login-signal-ink:#161a21}.login-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-xl);width:100%;max-width:340px;box-shadow:var(--shadow-2);flex-direction:column;gap:18px;padding:28px 26px 24px;display:flex}.login-brand{align-items:baseline;gap:7px;display:flex}.login-sub{font-size:var(--fs-overline);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:-10px 0 0;font-weight:500}.login-form{flex-direction:column;gap:10px;display:flex}.login-label{font-size:var(--fs-nav);color:var(--ink);font-weight:600}.login-input{text-align:left;width:100%;font-size:var(--fs-tier);background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--radius-md);color:var(--ink);padding:10px 12px}.login-input:focus{border-color:var(--login-signal);outline:none}.login-code{text-align:center;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--fs-code);font-variant-numeric:tabular-nums;letter-spacing:.34em;text-indent:.34em;padding:12px}.login-submit{width:100%;font-size:var(--fs-body);border-radius:var(--radius-md);border:1px solid var(--login-signal);background:var(--login-signal);color:var(--login-signal-ink);margin-top:2px;padding:10px 14px;font-weight:700;transition:filter .15s,opacity .15s}.login-submit:hover:not(:disabled){filter:brightness(1.06)}.login-submit:disabled{opacity:.5;cursor:default}.login-resend{color:var(--login-signal);background:0 0;font-weight:600}.login-resend:hover:not(:disabled){filter:none;background:var(--surface-2)}.login-alt{font-size:var(--fs-chip);color:var(--muted);background:0 0;border:none;align-self:flex-start;padding:2px;font-weight:500;text-decoration:underline}.login-alt:hover:not(:disabled){color:var(--ink-2)}.login-msg{font-size:var(--fs-chip);margin:0;font-weight:500;line-height:1.45}.login-msg.err{color:var(--red)}.login-msg.note{color:var(--muted)}
