#account-dialog { max-width:500px; padding:24px; max-height:calc(100svh - 24px); overflow-y:auto; }
#account-dialog h2 { font-size:26px; margin:0 36px 16px 0; }
#account-dialog .eyebrow { font-size:14px; letter-spacing:.12em; }
#account-dialog p { line-height:1.45; margin:8px 0; }
#account-dialog strong { color:var(--text); }
#account-email { display:block; overflow-wrap:anywhere; }
.google-signin { display:flex; justify-content:center; align-items:center; width:100%; min-height:48px; padding:12px 20px; border:1px solid #747775; border-radius:6px; background:#fff; color:#1f1f1f; font:500 16px/1.4 system-ui,sans-serif; }
.google-signin:hover { background:#f2f2f2; color:#1f1f1f; }
#account-dialog button:disabled { cursor:wait; opacity:.6; }
#account-dialog .account-note { font-size:14px; }
#account-message { font-size:14px; }
#account-message:empty { display:none; }
#account-message[data-error=true] { color:#9b2525; }
.account-save-note { padding:10px 0; margin-top:8px; border-top:1px solid #55747d55; font-size:14px; }
.account-save-note summary { cursor:pointer; font-weight:600; min-height:24px; }
.account-save-note summary:focus-visible { outline:3px solid var(--cyan); outline-offset:3px; }
.account-save-note p { margin:6px 0 0; }
#account-dialog .primary { font-size:16px; justify-content:center; }
@media(max-width:480px) { #account-dialog { padding:22px 20px; } }
.account-confirmation { display:flex; gap:10px; align-items:flex-start; margin:10px 0; font-size:14px; line-height:1.4; }
.account-confirmation input { flex:0 0 auto; width:20px; height:20px; margin:2px 0 0; accent-color:var(--cyan); }
.account-confirmation input:focus-visible { outline:3px solid var(--cyan); outline-offset:3px; }
#account-dialog .google-signin:disabled { cursor:not-allowed; }
.night #account-message[data-error=true] { color:#ffaaa2; }
#account-dialog [hidden] { display:none !important; }
.account-divider { display:flex; align-items:center; gap:12px; font-size:14px; }
.account-divider::before,.account-divider::after { content:""; height:1px; flex:1; background:#55747d55; }
.account-field { display:grid; gap:4px; margin:10px 0; font-size:14px; }
.account-passwords { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr)); gap:0 12px; }
.account-passwords .account-field { margin:0 0 10px; min-width:0; }
.account-field input { box-sizing:border-box; width:100%; min-height:44px; padding:9px 12px; border:1px solid #55747d; border-radius:6px; background:var(--bg); color:var(--text); font:inherit; font-size:16px; }
.account-field input:focus-visible { outline:3px solid var(--cyan); outline-offset:2px; }
.account-email-actions { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin-top:4px; }
#account-dialog .account-email-actions button { font-size:14px; min-height:44px; }
#account-email-submit,#account-recovery-submit { width:100%; margin-top:8px; }
.account-methods { display:flex; padding:4px; gap:4px; margin-bottom:14px; background:var(--bg); border:1px solid #55747d55; border-radius:9px; }
.account-methods [role=tab] { flex:1; min-height:40px; padding:6px 12px; border-radius:6px; font-size:16px; font-weight:600; }
.account-methods [aria-selected=true] { background:var(--panel); color:var(--text); box-shadow:0 1px 4px #233d4733; }
#account-google-panel { margin-top:16px; }
#account-dialog #account-email-coming { font-size:14px; }
#account-play { display:block; width:100%; min-height:36px; font-size:14px; text-decoration:underline; text-underline-offset:3px; }
.policy-links { display:flex; gap:18px; align-items:center; flex-wrap:wrap; font-size:14px; letter-spacing:0; }
.policy-links a { padding:6px 0; text-underline-offset:3px; }
@media(max-width:600px) { .footer { flex-wrap:wrap; justify-content:center; padding-block:4px; } .footer>span { display:none; } .policy-links { gap:16px; } .footer-actions { gap:14px; } }
