.login-main{display:grid;place-items:center;min-block-size:calc(100svh - 77px);padding:48px 20px 64px}
.login-card{inline-size:min(100%,440px);padding:32px}
.login-card h1{margin-block-start:12px;font-size:28px}
.lead{margin-block:12px 24px;color:var(--secondary)}
.notice{margin-block-end:24px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--surface-raised);font-size:15px;color:var(--secondary)}
.step{margin-block-end:16px;font-size:14px;font-weight:600;color:var(--accent)}
.code-input{font-size:22px!important;font-weight:600;letter-spacing:.3em;font-variant-numeric:tabular-nums}
.pairing-steps{display:grid;gap:8px;margin-block-end:20px;padding-inline-start:22px;color:var(--secondary);font-size:15px}
.setup-qr{display:grid;place-items:center;max-inline-size:220px;margin:0 auto 16px;border-radius:var(--radius-s);background:#f0f3fa;overflow:hidden}
.setup-qr svg{inline-size:100%;block-size:auto}
.manual-key{margin-block-end:20px;padding:4px 14px;border:1px solid var(--line);border-radius:var(--radius-s)}
.manual-key summary{display:flex;align-items:center;min-block-size:44px;font-size:15px;font-weight:600;color:var(--secondary);cursor:pointer}
.manual-key code{display:block;padding-block:4px 12px;font:600 15px/1.7 ui-monospace,Consolas,monospace;letter-spacing:.08em;overflow-wrap:anywhere;user-select:all}
#setup-pairing>.field-hint{margin-block:14px 6px;text-align:center}
@media (max-width:480px){.login-main{padding:28px 16px 48px;place-items:start center}.login-card{padding:24px 20px}}
