.site-header .account-link { font: inherit; cursor: pointer; }
.account-dialog { width: min(92vw, 470px); max-height: min(88vh, 720px); overflow-y: auto; margin: auto; border: 1px solid #333; border-radius: 20px; background: #101010; color: #f5f5f5; padding: 0; box-shadow: 0 30px 90px #000b; }
.account-dialog::backdrop { background: #000c; backdrop-filter: blur(5px); }
.account-shell { position: relative; padding: 30px; }
.account-close { position: absolute; right: 18px; top: 16px; border: 0; background: transparent; color: #999; font-size: 28px; cursor: pointer; }
.account-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.account-brand img { width: 42px; height: 42px; object-fit: contain; }
.account-brand span, .account-settings span { display: block; color: #ff5368; font-size: 10px; font-weight: 900; letter-spacing: .15em; }
.account-brand strong { display: block; font-size: 26px; margin-top: 3px; }
.account-shell > p { color: #aaa; line-height: 1.55; }
.account-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; background: #080808; padding: 5px; border-radius: 12px; margin: 22px 0 18px; }
.account-tabs button { border: 0; border-radius: 9px; background: transparent; color: #888; padding: 11px; font-weight: 800; cursor: pointer; }
.account-tabs button.active { background: #242424; color: white; }
.account-dialog form { display: grid; gap: 14px; }
.account-dialog label { display: grid; gap: 7px; color: #aaa; font-size: 11px; font-weight: 800; letter-spacing: .04em; }
.account-dialog input { width: 100%; box-sizing: border-box; border: 1px solid #353535; border-radius: 10px; background: #090909; color: white; padding: 13px; font-size: 16px; }
.account-dialog .button { justify-content: center; width: 100%; margin-top: 3px; }
.account-text-button { width: 100%; border: 0; background: transparent; color: #bbb; text-decoration: underline; padding: 15px 0 2px; cursor: pointer; }
.account-message { margin-top: 16px; border: 1px solid #543039; border-radius: 10px; background: #210b10; color: #ffd5da; padding: 12px; font-size: 13px; line-height: 1.45; }
.account-message.success { border-color: #28513d; background: #0d2418; color: #c8f5dc; }
.account-settings { display: grid; gap: 12px; }
.account-settings > div { padding: 16px; border: 1px solid #303030; border-radius: 12px; background: #090909; }
.account-settings strong, .account-settings small { display: block; margin-top: 6px; }
.account-settings small { color: #777; line-height: 1.4; }
.account-settings button { border: 1px solid #383838; border-radius: 10px; background: #1b1b1b; color: #eee; padding: 12px; font-weight: 800; cursor: pointer; }
.account-settings button.danger { border-color: #612a34; color: #ff8190; background: #220c10; }
.account-settings .account-panel { display:grid; gap:12px; padding:16px; border:1px solid #303030; border-radius:12px; background:#090909; }
.account-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.account-panel-head small { margin:0; text-align:right; }
.account-status-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.account-status-row small { margin:0; padding:6px 9px; border:1px solid #383838; border-radius:999px; background:#151515; color:#aaa; }
.account-status-row small.success { border-color:#28513d; color:#9ce0b9; background:#0d2418; }
.account-status-row small.warning { border-color:#654d24; color:#f0c77a; background:#271d0c; }
.account-settings button:disabled { opacity:.55; cursor:wait; }
.account-privacy { font-size: 11px !important; margin: 18px 0 0; }
.account-privacy a { color: #ccc; }
.account-consents{display:grid;gap:12px;margin:4px 0 16px}.account-consents label,.ai-consent-check{display:flex!important;align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;color:#ddd}.account-consents input,.ai-consent-check input{width:20px;height:20px;flex:0 0 20px;margin-top:1px;accent-color:#ff243b}.account-consents a,.ai-consent-shell a{color:#fff}.ai-consent-shell h2{font-size:26px;margin:8px 0 14px}.ai-consent-shell>p,.ai-consent-shell li{font-size:15px;line-height:1.55;color:#bbb}.ai-consent-shell ul{padding-left:22px;margin:12px 0 20px}.ai-consent-shell .button{width:100%;margin-top:18px}
@media (max-width: 520px) { .account-dialog { width: calc(100vw - 24px); max-height: calc(100dvh - 24px); } .account-shell { padding: 24px 18px calc(24px + env(safe-area-inset-bottom)); } .account-brand strong{font-size:24px}.account-settings button,.account-dialog input{min-height:48px}.account-dialog input{font-size:16px}.account-panel-head{display:block}.account-panel-head small{text-align:left} }
/* Home Screen apps draw behind the iPhone status bar; keep account controls below it. */
@media (display-mode: standalone) and (max-width: 700px) {
  dialog.account-dialog {
    top: calc(env(safe-area-inset-top) + 12px);
    bottom: 12px;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    max-height: calc(100dvh - env(safe-area-inset-top) - 24px) !important;
  }
  dialog.account-dialog > .account-shell {
    max-height: calc(100dvh - env(safe-area-inset-top) - 24px);
  }
  dialog.account-dialog .account-close { min-width: 44px; min-height: 44px; top: 10px; right: 10px; }
}

.onboarding-dialog{width:min(92vw,520px);margin:auto;padding:0;border:1px solid #393939;border-radius:24px;background:#101010;color:#f7f7f7;box-shadow:0 32px 100px #000d}.onboarding-dialog::backdrop{background:#000d;backdrop-filter:blur(6px)}.onboarding-shell{position:relative;padding:32px}.onboarding-close{position:absolute;right:18px;top:16px;width:44px;height:44px;border:1px solid #3b3b3b;border-radius:12px;background:#181818;color:#bbb;font-size:26px;cursor:pointer}.onboarding-progress{display:flex;gap:8px;margin:2px 0 30px}.onboarding-progress span{width:34px;height:4px;border-radius:99px;background:#333}.onboarding-progress span.active{background:#ff4059}.onboarding-step{min-height:350px}.onboarding-kicker{display:block;margin-bottom:16px;color:#ff667a;font-size:.78rem;font-weight:900;letter-spacing:.18em}.onboarding-step h2{margin:0 0 14px;font-size:clamp(2rem,7vw,3rem);line-height:1.05}.onboarding-step>p{margin:0;color:#aaa;font-size:1.05rem;line-height:1.6}.onboarding-feature,.onboarding-demo{display:flex;gap:16px;margin-top:30px;padding:20px;border:1px solid #363636;border-radius:16px;background:#151515}.onboarding-feature>span{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:12px;background:#281016;color:#ff6579;font-weight:900}.onboarding-feature div{display:grid;gap:7px}.onboarding-feature strong,.onboarding-demo strong{font-size:1.05rem}.onboarding-feature small,.onboarding-demo small{color:#999;font-size:.92rem;line-height:1.45}.onboarding-demo{display:grid}.onboarding-status{width:max-content;padding:7px 10px;border:1px solid #276b49;border-radius:999px;background:#102b1e;color:#74dda2;font-size:.75rem;font-weight:900;letter-spacing:.12em}.onboarding-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:30px}.onboarding-choices span{display:grid;place-items:center;min-height:74px;padding:8px;border:1px solid #3a3a3a;border-radius:14px;background:#171717;text-align:center;font-weight:850}.onboarding-actions{display:flex;gap:10px;margin-top:14px}.onboarding-actions button{min-height:52px;border:1px solid #3b3b3b;border-radius:12px;background:#191919;color:#eee;padding:0 22px;font:inherit;font-weight:850;cursor:pointer}.onboarding-actions .button{flex:1;justify-content:center;margin:0;background:#f31535;border-color:#ff435b;color:#fff}.onboarding-actions .button span{margin-left:8px}@media(max-width:520px){.onboarding-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.onboarding-shell{padding:26px 20px calc(22px + env(safe-area-inset-bottom))}.onboarding-step{min-height:360px}.onboarding-choices{grid-template-columns:1fr}.onboarding-choices span{min-height:52px}.onboarding-step h2{padding-right:36px}}
.account-type-dialog{width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid #33343a;border-radius:24px;background:#09090b;color:#f4f4f5;box-shadow:0 24px 80px rgba(0,0,0,.65);overflow:auto}.account-type-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(5px)}.account-type-shell{padding:24px}.account-type-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px}.account-type-brand img{width:34px;height:34px;object-fit:contain}.account-type-brand strong{font-size:1.22rem}.account-type-brand span{color:#ff3049}.account-type-shell h2{margin:0 0 9px;font-size:1.65rem;line-height:1.18}.account-type-shell>p{margin:0 0 20px;color:#aaa;line-height:1.5}.account-type-options{display:grid;gap:10px}.account-type-options label{min-height:78px;display:flex;align-items:center;gap:13px;padding:14px 15px;border:1px solid #35363c;border-radius:15px;background:#151518;cursor:pointer}.account-type-options label:has(input:checked){border-color:#ff3049;background:#211216;box-shadow:0 0 0 2px rgba(255,48,73,.15)}.account-type-options input{width:19px;height:19px;accent-color:#ef233c;flex:0 0 auto}.account-type-options span,.account-type-options b,.account-type-options small{display:block}.account-type-options b{margin-bottom:4px;font-size:1rem}.account-type-options small{color:#a4a4ac;line-height:1.35}.account-type-safe{display:block;margin:16px 2px;color:#9898a0;line-height:1.45}.account-type-continue,.account-type-later{width:100%;min-height:48px;border-radius:12px;font-weight:850}.account-type-continue{border:0;background:#ef2943;color:#fff}.account-type-later{margin-top:7px;border:0;background:transparent;color:#aaa}.account-type-shell #account-type-status{min-height:18px;margin:8px 0 0;color:#79dda5;text-align:center;font-size:.84rem}.account-panel select{width:100%;min-height:44px;padding:0 12px;border:1px solid #3a3a40;border-radius:8px;background:#0e0e11;color:#f5f5f5;font:inherit}@media(max-width:480px){.account-type-shell{padding:20px 17px}.account-type-dialog{border-radius:20px}.account-type-shell h2{font-size:1.48rem}}

/* Account-type setup owns its typography so global marketing styles cannot stretch it. */
.account-settings .account-panel select{display:block;width:100%;height:48px!important;min-height:48px!important;box-sizing:border-box;padding:0 42px 0 13px;border:1px solid #353535;border-radius:10px;background-color:#090909;color:#f5f5f5;font-family:inherit;font-size:16px;font-weight:700;line-height:1.2}
dialog.account-type-dialog{width:min(410px,calc(100% - 28px));border-radius:20px;font-family:Arial,system-ui,sans-serif;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-shell{padding:20px}
dialog.account-type-dialog .account-type-brand{margin:0 0 18px;gap:9px}
dialog.account-type-dialog .account-type-brand img{width:30px;height:30px}
dialog.account-type-dialog .account-type-brand strong{font-family:Arial,system-ui,sans-serif;font-size:1.22rem;font-weight:900;line-height:1;text-transform:none;letter-spacing:-.02em}
dialog.account-type-dialog .account-type-shell h2{margin:0 0 7px;font-family:Arial,system-ui,sans-serif;font-size:1.45rem;font-weight:900;line-height:1.18;text-transform:none;letter-spacing:-.025em}
dialog.account-type-dialog .account-type-shell>p{margin:0 0 16px;font-family:Arial,system-ui,sans-serif;font-size:.96rem;line-height:1.42;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-options{gap:8px}
dialog.account-type-dialog .account-type-options label{min-height:70px;gap:12px;padding:11px 13px;border-radius:13px;font-family:Arial,system-ui,sans-serif;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-options input{width:20px;height:20px;margin:0}
dialog.account-type-dialog .account-type-options b{margin:0 0 3px;font-family:Arial,system-ui,sans-serif;font-size:.98rem;font-weight:850;line-height:1.15;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-options small{font-family:Arial,system-ui,sans-serif;font-size:.79rem;font-weight:400;line-height:1.35;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-safe{margin:13px 2px;font-family:Arial,system-ui,sans-serif;font-size:.79rem;font-weight:400;line-height:1.4;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-continue,dialog.account-type-dialog .account-type-later{font-family:Arial,system-ui,sans-serif;font-size:1rem;text-transform:none;letter-spacing:normal}
dialog.account-type-dialog .account-type-continue{min-height:46px}
dialog.account-type-dialog .account-type-later{min-height:38px;margin-top:4px}
dialog.account-type-dialog .account-type-shell #account-type-status{min-height:0;margin:4px 0 0;font-family:Arial,system-ui,sans-serif;font-size:.8rem;text-transform:none;letter-spacing:normal}
@media(max-width:480px){dialog.account-type-dialog{width:calc(100% - 22px);max-height:calc(100dvh - 18px);border-radius:17px}dialog.account-type-dialog .account-type-shell{padding:17px}dialog.account-type-dialog .account-type-brand{margin-bottom:14px}dialog.account-type-dialog .account-type-shell h2{font-size:1.3rem}dialog.account-type-dialog .account-type-shell>p{font-size:.9rem;margin-bottom:13px}dialog.account-type-dialog .account-type-options label{min-height:65px;padding:10px 12px}dialog.account-type-dialog .account-type-safe{margin:11px 2px}}
