* { box-sizing:border-box; }
body { margin:0; padding:32px 16px; min-height:100vh; background:#f1f5f9; color:#0f172a; font:15px/1.6 Inter,Arial,sans-serif; }
[hidden] { display:none !important; }
.account-card { max-width:440px; margin:24px auto; padding:28px; background:#fff; border:1px solid #e2e8f0; border-radius:20px; }
.account-brand { display:block; width:260px; height:52px; max-width:100%; object-fit:cover; object-position:center; }
h1 { font-size:23px; line-height:1.3; margin:24px 0 12px; }
p { overflow-wrap:anywhere; }
label { display:block; font-weight:650; margin:18px 0 6px; }
input,button { width:100%; padding:12px; min-height:48px; border:1px solid #cbd5e1; border-radius:10px; font:inherit; }
input { background:#fff; color:#0f172a; }
button { margin-top:20px; background:#dc2626; border-color:#dc2626; color:#fff; font-weight:700; cursor:pointer; }
button:disabled { opacity:.55; cursor:default; }
button:focus-visible,a:focus-visible,input:focus-visible { outline:3px solid #a78bfa; outline-offset:3px; }
a { color:#6d28d9; text-underline-offset:3px; }
.account-hint,.account-back { font-size:13px; color:#64748b; }
.account-back { margin:24px 0 0; }
#account-status[data-kind="error"] { color:#b91c1c; }
@media(max-width:420px) { body { padding:16px 12px; } .account-card { padding:20px; margin:12px auto; } }
