.account-dialog { width:min(460px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); padding:28px; overflow:auto; }
.account-dialog .modal-heading { align-items:flex-start; }
.account-dialog h2 { margin:4px 0 0; }
.account-preview-note { color:var(--ink-soft); font-size:.75rem; margin:8px 0 22px; }
.account-tabs { display:flex; margin-bottom:24px; }
.account-tabs button { flex:1; }
#account-form label { display:grid; gap:8px; }
#account-form [hidden],#account-dialog [hidden] { display:none; }
#account-form .text-input { width:100%; min-width:0; }
.account-options { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; }
#account-error { color:var(--ink); background:var(--accent-soft); border-radius:12px; padding:12px; margin:0; font-size:.85rem; }
#account-error:empty { display:none; }
#account-human-status { margin:0; }
#account-human-status[data-kind="error"] { color:var(--danger, #a43b48); }
.account-honeypot { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; clip-path:inset(50%) !important; white-space:nowrap !important; border:0 !important; padding:0 !important; margin:-1px !important; }
#account-local-mode { display:block; margin:20px auto 0; }
#account-form>.primary-button { justify-content:center; width:100%; }
#account-display-email { overflow-wrap:anywhere; }
.account-identity { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.account-identity h3,.account-identity p { margin-top:0; }
.account-tier { flex:none; border:1px solid color-mix(in srgb,var(--ink) 14%,transparent); border-radius:999px; padding:6px 10px; color:var(--ink-soft); font-size:.72rem; font-weight:700; }
.account-tier.owner { color:var(--ink); border-color:color-mix(in srgb,var(--accent) 42%,transparent); background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%,transparent),color-mix(in srgb,var(--accent-2) 18%,transparent)); box-shadow:0 8px 28px color-mix(in srgb,var(--accent) 18%,transparent); }
.account-dialog[open] { animation:immersive-menu-in .45s cubic-bezier(.16,1,.3,1); }
.account-dialog::backdrop { background:rgba(10,14,28,.55); backdrop-filter:blur(8px); }
@media(max-width:550px){ .account-dialog { padding:22px; } .sidebar .primary-nav #account-entry { min-width:48px; padding-inline:8px; } }
.account-dialog .account-tabs { width:100%; box-sizing:border-box; }
.account-dialog .account-tabs button { white-space:nowrap; min-width:0; }
