.auth-shell { width: 100%; max-width: 380px; min-height: 100dvh; margin: 0 auto; padding: 24px 16px; display: flex; flex-direction: column; justify-content: center; }
.auth-shell .auth-card { padding: 18px; margin: 0; }
.auth-shell .auth-card form { gap: 12px; }
.auth-shell .auth-card label { gap: 6px; }
.auth-shell .auth-links { gap: 14px; margin-top: 14px; font-size: 12px; }
.auth-shell #accountMessage:empty { display: none; }
.account-shell { max-width: 860px; }
.auth-card { padding: 24px; margin: 24px 0; }
.auth-card h1 { font-size: 26px; }
.auth-card p { color: var(--text-dim); line-height: 1.6; }
.auth-card form { display: grid; gap: 18px; }
.auth-card label { display: grid; gap: 8px; color: var(--text-dim); font-size: 13px; }
.auth-card input { width: 100%; min-height: 40px; padding: 10px 12px; background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius-sm); color: var(--text); }
.auth-links { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 20px; }
.auth-links button { border: 0; padding: 0; background: none; color: var(--text-dim); cursor: pointer; }
.auth-links button:hover { color: var(--text); }
#accountMessage { color: var(--accent); overflow-wrap: anywhere; }
#accountMessage.error { color: var(--danger); }
.account-row { padding: 14px 0; border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.account-row strong { margin-right: auto; }
.account-row .button { min-height: 32px; font-size: 12px; }
#issuedKey { margin-top: 16px; }
.auth-card [hidden] { display: none; }
.steam-account { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.steam-account > div { display:grid; gap:8px; margin-right:auto; color:var(--dim); font-size:13px; }
.steam-account a { color:var(--text); font-size:12px; text-underline-offset:3px; }
