/* Account workspace only. Marketing/auth/owner surfaces keep their own styles. */
html:has(.account-app) { height:100%;overflow:hidden;scroll-behavior:auto;scroll-padding:0; }
.account-app { --workspace:#f3f1ea; --workspace-card:#fcfbf7; --workspace-line:#dcded5; --workspace-muted:#596861; height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at 80% 0,#23303555,transparent 44%),#0c1114; }
.account-app::before { display:none; }
body.account-app { padding-bottom:0; }
.account-app>.local-notice,.account-app>.compact-header { flex-shrink:0; }
.account-app .compact-header { position:relative;top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(1424px,calc(100% - 48px)); min-height:76px; margin:16px auto 0; padding:12px 24px; border-radius:18px; background:#11191d; }
.account-app .account-shell { width:min(1424px,calc(100% - 48px));flex:1;grid-template-columns:208px minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch;gap:22px;margin:20px auto 20px;min-height:0; }
.account-app .account-nav { position:relative;top:auto;display:block;height:100%;min-height:0;overflow:auto;scrollbar-width:none;padding:16px 0;border:0;border-radius:0;background:none; }
.account-app .account-nav>span { display:block;margin:0 14px 22px;color:#8e9a9c;font:550 9px var(--display);letter-spacing:.13em; }
.account-app .account-nav nav { display:grid;gap:5px; }
.account-app .account-nav a { display:flex;align-items:center;flex-direction:row-reverse;justify-content:flex-end;gap:12px;min-height:48px;margin:0;padding:12px 14px;font:500 13px/1.4 var(--display);letter-spacing:0;white-space:normal;color:#bdc7c7;border:1px solid transparent;border-radius:11px;background:transparent;box-shadow:none; }
.account-app .account-nav a .ui-icon { width:19px;height:19px;flex:0 0 19px;margin:0;color:#95a6a9; }
.account-app .account-nav a[aria-current="page"] { color:#fff3e9;background:#293034;border-color:#435052;box-shadow:inset 3px 0 #f4a475; }
.account-app .account-nav a[aria-current="page"] .ui-icon { color:#ffc398; }
@media(hover:hover) { .account-app .account-nav a:hover { color:#fff;border-color:#435052;background:#1c272c;box-shadow:none; } }
.account-app .account-nav-help { margin:30px 0 0;padding:22px 14px 0;border-top:1px solid #ffffff14; }
.account-app .account-nav-help>span { display:flex;align-items:center;justify-content:flex-start;gap:10px;font-size:13px;color:#eeeae2; }
.account-app .account-nav-help .ui-icon { order:-1;width:18px;height:18px; }
.account-app .account-nav-help p,.account-app .account-nav-note { color:#89999c;font-size:11px;line-height:1.8; }
.account-app .account-nav-help a { padding:10px 0;min-height:44px;font-size:11px; }
.account-app .account-nav-note { padding:0 14px;margin-top:30px; }
.account-app .account-content { min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden;padding:0;background:var(--workspace);color:#172326;border:1px solid #ffffff40;border-radius:22px;box-shadow:0 20px 70px #00000012; }
.account-app .account-heading { flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:20px;height:92px;min-height:92px;margin:0;padding:16px 28px;border-bottom:1px solid var(--workspace-line); }
.account-app .account-scroll { flex:1;min-height:0;padding:20px 28px;overflow:auto;overscroll-behavior:contain;scroll-behavior:auto;scrollbar-width:none;overflow-anchor:none; }
.account-app .account-scroll:focus-visible { outline:2px solid #ac7549;outline-offset:-3px; }
.account-app :is(.account-scroll,.account-nav)::-webkit-scrollbar { width:0;height:0; }
.account-app .account-heading>div { min-width:0; }
.account-app .account-heading .eyebrow { color:var(--workspace-muted);font-size:9px;letter-spacing:.12em; }
.account-app .account-heading h1 { margin:6px 0 0;font:580 clamp(25px,2.6vw,32px)/1.2 var(--display);letter-spacing:-.04em;color:#172326; }
.account-app .account-heading h1:focus { outline:none; }
.account-app .account-heading p { color:var(--workspace-muted);font-size:13px;line-height:1.7;overflow-wrap:anywhere; }
.account-app #account-summary { display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px; }
.account-app .account-email-state { font-size:11px;color:#59685f; }
.account-app .account-email-state::before { content:'·';margin-right:8px; }
.account-app #refresh-account { flex-shrink:0;min-height:44px;padding:10px 14px;font-size:12px;color:#364542;border-color:#bec8c3;background:transparent;--action-icon:#626e6c; }
.account-app .account-view { scroll-margin:0;animation:none; }
.account-app .account-view[hidden] { display:none!important; }
.account-app .account-metrics { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px; }
.account-app .account-metric { min-width:0;min-height:130px;display:flex;flex-direction:column;align-items:start;padding:16px 20px;border:1px solid var(--workspace-line);border-radius:14px;background:var(--workspace-card); }
.account-app .account-metric>span { display:flex;align-items:center;gap:8px;color:var(--workspace-muted);font-size:12px; }
.account-app .account-metric .ui-icon { order:-1;width:17px;height:17px;flex:0 0 17px; }
.account-app .account-metric strong { display:block;margin:12px 0 6px;font:570 clamp(22px,2.1vw,30px)/1.25 var(--display);letter-spacing:-.04em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums; }
.account-app .account-metric p,.account-app .account-metric a { margin:0;color:#596764;font-size:12px;line-height:1.6; }
.account-app .account-metric a { display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:36px;text-underline-offset:4px; }
.account-app #account-plan-state[data-state="active"] { color:#296443; }
.account-app #account-plan-state[data-state="expiring"] { color:#8c521f; }
.account-app .account-slot-meter { display:flex;gap:5px;width:100%;max-width:160px;margin:3px 0 10px; }
.account-app .account-slot-meter span { height:5px;flex:1;border-radius:3px;background:#dde3d9; }
.account-app .account-slot-meter .occupied { background:#648477; }
.account-app .account-next { position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 28px;margin-bottom:16px;overflow:hidden;border:1px solid #465456;border-radius:17px;background:radial-gradient(ellipse at 100% 100%,#3e3430,transparent 64%),#172328;color:#f7f2e9; }
.account-app .account-next .eyebrow { color:#d0b497;font-size:9px;letter-spacing:.13em; }
.account-app .account-next h2 { margin:12px 0;font:550 clamp(25px,2.6vw,34px)/1.2 var(--display);letter-spacing:-.045em; }
.account-app .account-next p { max-width:470px;margin:0;color:#c0cbcb;font-size:14px;line-height:1.8; }
.account-app .account-next .primary { min-height:44px;margin-top:16px;padding:11px 18px;font-size:12px;border-color:#748483; }
.account-app .account-next-copy { min-width:0; }
.account-app .account-access-term { flex:0 0 235px;padding:22px;border:1px solid #ffffff20;border-radius:13px;background:#ffffff05; }
.account-app .account-access-term>span { display:block;font-size:10px;letter-spacing:.09em;color:#c8beac; }
.account-app .account-access-term strong { display:block;margin:16px 0 10px;font:500 24px/1.35 var(--display);letter-spacing:-.03em; }
.account-app .account-access-term p { font-size:12px; }
.account-app .account-access-term a { display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;margin-top:18px;border-top:1px solid #ffffff25;padding-top:10px;font-size:12px;color:#ffe0c6; }
.account-app .account-access-term .ui-icon { width:18px;height:18px; }
.account-app .account-next-mark { position:relative;flex:0 0 164px;height:164px;display:grid;place-content:center;justify-items:center;gap:15px;border:1px solid #e2c4a42e;border-radius:50%;background:radial-gradient(circle at 50% 38%,#9a744521,transparent 68%);box-shadow:0 0 0 10px #ffffff04,0 0 0 24px #ffffff02; }
.account-app .account-next-mark::before { content:'';position:absolute;z-index:-1;inset:8px;border:1px solid #ffffff0e;border-radius:50%; }
.account-app .account-next-mark img { width:82px;height:82px;object-fit:contain;transform:translateX(-7.1%); }
.account-app .account-next-mark span { color:#b2b6ad;font:500 8px var(--display);letter-spacing:.2em; }
.account-app .account-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;margin:0;list-style:none; }
.account-app .account-steps li { position:relative;display:flex;align-items:center;gap:12px;min-width:0;padding:16px 14px;border:1px solid #dedfd5;border-radius:12px;background:linear-gradient(135deg,#faf9f3,#eaece3); }
.account-app .account-steps li>span { display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #b4bdaf;border-radius:50%;color:#716052;font:550 11px var(--display);background:#f5f4ed; }
.account-app .account-steps b { font-size:12px;font-weight:550;color:#344341; }
.account-app .account-steps p { margin:4px 0 0;color:var(--workspace-muted);font-size:11px;line-height:1.6; }
.account-app .account-quick-grid,.account-app .account-detail-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start; }
.account-app .account-panel { min-width:0;min-height:0;grid-column:auto;padding:24px;border:1px solid var(--workspace-line);border-radius:15px;background:var(--workspace-card);color:#253330;box-shadow:none; }
.account-app .account-panel header { display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 20px; }
.account-app .account-panel header>span { font:550 9px/1.5 var(--display);letter-spacing:.1em;color:#5d6a66; }
.account-app .account-panel header>a { color:#455551;font:500 11px/1.5 var(--display);letter-spacing:0;min-height:40px;padding:9px 12px;gap:12px; }
.account-app .account-small-icon .ui-icon { width:19px;height:19px;color:#7d8e84; }
.account-app .account-panel h2 { margin:0 0 12px;font:550 20px/1.3 var(--display);letter-spacing:-.035em;color:#24332e; }
.account-app .account-panel p { color:#59685f;font-size:14px;line-height:1.8; }
.account-app .account-panel .quiet-link { display:flex;min-height:46px;margin-top:20px;padding:10px 14px;color:#35493f;border-color:#c9cec4;font-size:13px;letter-spacing:0;text-decoration:none; }
.account-app .account-panel .panel-loading,.account-app .account-panel .empty-state { margin:0;font-size:13px;color:#626e67;line-height:1.8; }
.account-app .account-list-panel .empty-state { padding:34px 20px;text-align:center;border:1px dashed #ccd3c8;border-radius:12px;background:#f2f4ed; }
.account-app .subscription-panel>div { margin:28px 0;display:grid;gap:12px; }
.account-app .subscription-panel strong { font:550 20px/1.4 var(--display); }
.account-app .subscription-panel b { font:550 26px/1.3 var(--display);letter-spacing:-.03em; }
.account-app .subscription-panel .primary { min-height:48px;width:100%;font-size:12px;padding:12px 16px; }
.account-app .account-section-intro { margin-bottom:24px; }
.account-app .account-section-intro h2 { margin:0 0 8px;font:550 23px/1.3 var(--display);letter-spacing:-.035em; }
.account-app .account-section-intro p { max-width:680px;margin:0;color:var(--workspace-muted);font-size:13px;line-height:1.8; }
.account-app .data-row { flex-wrap:wrap;align-items:center;padding:16px 0;font-size:12px;line-height:1.7;gap:10px 20px; }
.account-app .data-row:first-child { margin-top:0; }
.account-app .data-row>b { flex:1 1 140px;overflow-wrap:anywhere; }
.account-app .data-row span { color:#65726b;overflow-wrap:anywhere; }
.account-app .data-row .row-action { min-height:40px;padding:10px 12px;font-size:11px; }
.account-app :is(.device-row,.session-row) { display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px 14px;padding:20px 0; }
.account-app :is(.device-row,.session-row)>b { grid-column:2;font-size:14px;font-weight:550;color:#2b3d34; }
.account-app .record-icon { grid-row:1/4;width:40px;height:40px;display:flex;align-items:center;justify-content:center;gap:0;border:1px solid #d9dfd4;border-radius:10px;background:#eef1e9; }
.account-app .record-icon .ui-icon { width:21px;height:21px;flex:0 0 21px;color:#526f61; }
.account-app .data-row .record-state { grid-column:2;font-size:11px;justify-self:start;padding:3px 8px;border-radius:6px;background:#e8ebe4;color:#53645b; }
.account-app .data-row .record-state[data-state="active"] { color:#2c6242;background:#e5eee2; }
.account-app .data-row .record-state[data-state="pending"] { color:#865420;background:#f3eadb; }
.account-app .record-meta { grid-column:2;font-size:12px;color:#66746b;line-height:1.7;overflow-wrap:anywhere; }
.account-app :is(.device-row,.session-row)>.row-action { grid-column:3;grid-row:1/4;align-self:center;font-size:12px;min-height:44px; }
.account-app .account-danger-action { margin-top:26px;padding-top:18px;border-top:1px solid var(--workspace-line); }
.account-app .sessions-panel .data-row:last-child { border-bottom:0; }
.account-app #logout-all { margin-top:10px;min-height:44px;width:100%;padding:11px 14px;font-size:11px;white-space:normal; }
.account-app .business-form { margin:20px 0 0;gap:10px; }
.account-app .business-form label { color:#4f6158;font-size:12px; }
.account-app .business-form input,.account-app .business-form select { min-width:0;min-height:48px;background:#f1f2eb;border-color:#cbd2c6;font-size:16px; }
.account-app .business-form button[type="submit"] { margin-top:8px;min-height:48px;padding:12px 16px;font-size:12px;white-space:normal; }
.account-app .account-footnote,.account-app .account-note { display:flex;align-items:start;justify-content:flex-start;gap:10px;color:#59685f;font-size:12px;line-height:1.8; }
.account-app .account-footnote { margin:20px 0 0; }
.account-app .account-note { margin:20px 0;padding:18px;border:1px solid #dadfd3;border-radius:12px; }
.account-app .account-footnote .ui-icon,.account-app .account-note .ui-icon { order:-1;flex:0 0 17px;width:17px;height:17px;margin-top:2px; }
.account-app .page-status { flex-shrink:0;width:auto;min-height:0;margin:0;padding:0;background:none;color:#59685f;font-size:12px;line-height:1.8; }
.account-app .page-status:not([data-state="error"]) { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.account-app .page-status[data-state="error"] { padding:10px 28px;border-bottom:1px solid #c99878;color:#7d341f;background:#f6e8dc; }
.account-app .page-status[data-state="loading"] { color:#786e5e; }
.account-app .account-panel .form-status:empty { min-height:0!important;margin:0!important; }
.account-app .form-status { margin-top:10px!important;font-size:12px!important;overflow-wrap:anywhere; }
.account-app .route-panel { --action-text:#35493f;--action-icon:#854326; }
.account-app .account-content :is(a,button):focus-visible { outline-color:#a7582d; }
.account-app .account-content [hidden] { display:none!important; }
.account-app:not([data-account-ready]) .account-content .account-view+.account-view:not([hidden]) { margin-top:32px; }
.account-app[data-account-ready] .account-content .account-view { margin-top:0; }
/* One wallet, three explicit tasks; no second page shell or fake banking data. */
.account-app .wallet-workspace { --action-text:#334940;--action-edge:#b7c1b6;--action-bg:#f2f3ec;--action-icon:#9a5c36; }
.account-app .wallet-workspace .eyebrow { color:#5d6a66; }
.account-app :is(.wallet-plan-options,.money-panel,.wallet-order,.subscription-current>div)>.eyebrow { display:flex; }
.account-app .wallet-summary { display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:18px 24px;border:1px solid #455955;border-radius:16px;color:#f5f4ec;background:radial-gradient(ellipse at 0 100%,#4a59464d,transparent 65%),#17272b; }
.account-app .wallet-summary .eyebrow { color:#c0cabc;font-size:10px; }
.account-app .wallet-summary strong { display:block;margin:4px 0;font:540 38px/1.25 var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere; }
.account-app .wallet-currency { color:#becac6;font-size:11px; }
.account-app .wallet-summary-note { align-self:center;justify-self:end; }
.account-app .wallet-summary-note>span { display:flex;align-items:center;gap:8px;font-size:12px; }
.account-app .wallet-summary-note .ui-icon { width:18px;height:18px;order:-1; }
.account-app .wallet-summary-note p { margin:6px 0 10px;color:#b0c1ba;font-size:11px; }
.account-app #wallet-refresh { min-height:36px;padding:6px 10px;border-color:#6e8580;color:#eff4e8;font-size:11px;--action-icon:#c5d8c6; }
.account-app .wallet-status { min-height:18px;margin:12px 0;font-size:11px;color:#616f67; }
.account-app .wallet-status[data-state="error"] { padding:10px 12px;border:1px solid #cba989;border-radius:8px;background:#f7e8d8;color:#803e20; }
.account-app .wallet-tabs { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;margin-bottom:20px;background:#e5e8df;border:1px solid #d6dbcf;border-radius:12px; }
.account-app .wallet-tabs button { display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 8px;font-size:12px;border:1px solid transparent;border-radius:8px;background:transparent;box-shadow:none;color:#526359; }
.account-app .wallet-tabs button[aria-selected="true"] { border-color:#c4cbbf;background:#fcfcf8;color:#273e33;box-shadow:0 2px 6px #1c30220c; }
.account-app .wallet-tabs .ui-icon { width:17px;height:17px; }
.account-app .wallet-split,.account-app .wallet-purchase { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start; }
.account-app .money-panel { padding:24px;border:1px solid var(--workspace-line);border-radius:15px;background:var(--workspace-card); }
.account-app .money-panel h2,.account-app .wallet-plan-options h2 { font:550 27px/1.2 var(--display);letter-spacing:-.04em;margin:10px 0 12px; }
.account-app .money-panel>p,.account-app .wallet-plan-options>p { max-width:450px;margin:0;color:#5f6c61;font-size:12px;line-height:1.75; }
.account-app .money-panel .eyebrow,.account-app .wallet-workspace .eyebrow { font-size:9px; }
.account-app .wallet-workspace .business-form { margin:18px 0 0; }
.account-app .wallet-workspace .field-help { font-size:11px;line-height:1.7;color:#657164; }
.account-app .wallet-workspace .amount-input input { height:48px;min-height:48px;font:500 25px/1.2 var(--display);padding:8px 42px 8px 14px;background:#f2f4ed; }
.account-app .wallet-topup-panel .form-status:empty { display:none; }
.account-app .wallet-presets { display:flex;gap:8px; }
.account-app .wallet-presets button { flex:1;justify-content:center;min-height:38px;padding:7px 10px;font-size:12px;border-color:#c5cdc0;box-shadow:none; }
.account-app .wallet-guide { padding:8px 4px; }
.account-app .wallet-guide h3 { margin:10px 0 18px;font:550 24px/1.25 var(--display);letter-spacing:-.035em; }
.account-app .wallet-guide ol { list-style:none;padding:0;margin:0;display:grid;gap:18px; }
.account-app .wallet-guide li { display:flex;align-items:start;gap:14px; }
.account-app .wallet-guide li>span { display:grid;place-items:center;flex:0 0 28px;height:28px;border:1px solid #b4c2b1;border-radius:50%;color:#697b64;font-size:10px; }
.account-app .wallet-guide b { font-size:12px;font-weight:550; }
.account-app .wallet-guide li p { margin:4px 0 0;font-size:11px;line-height:1.65;color:#61725f; }
.account-app .wallet-caution { display:flex;gap:10px;padding:14px 0;margin:22px 0 6px;border-block:1px solid #d4dbcc;font-size:11px;line-height:1.7;color:#606d58; }
.account-app .wallet-caution .ui-icon { flex:0 0 17px;width:17px;height:17px;order:-1; }
.account-app .wallet-guide .quiet-link { min-height:40px;padding:9px 12px;font-size:11px; }
.account-app .wallet-disclaimer { padding:0;margin:16px 0 0;font-size:10px;line-height:1.8;color:#667360; }
.account-app .wallet-plan-options { padding:4px 0; }
.account-app .wallet-purchase.business-form { margin:0; }
.account-app .wallet-plan-options fieldset { min-width:0;border:0;padding:0;margin:18px 0; }
.account-app .wallet-plan-options legend { margin-bottom:10px;font-size:12px;color:#52644e; }
.account-app .wallet-periods,.account-app .wallet-devices { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px; }
.account-app .wallet-periods button { min-height:44px;justify-content:center;padding:8px 5px;font-size:11px; }
.account-app .wallet-devices { grid-template-columns:repeat(3,minmax(0,1fr)); }
.account-app .wallet-devices button { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 8px;min-height:72px; }
.account-app .wallet-devices b { font:550 26px/1.2 var(--display); }
.account-app .wallet-devices span { font-size:11px; }
.account-app :is(.wallet-periods,.wallet-devices) button[aria-pressed="true"] { --action-text:#f5f4eb;--action-sheen:#fff2d526;color:#f5f4eb;background:#244039;border-color:#46674f;box-shadow:inset 0 -2px #d9b686; }
.account-app .wallet-order { padding:20px;border:1px solid #bccbb4;border-radius:15px;background:linear-gradient(150deg,#e8eee0,#f3f5ed); }
.account-app #wallet-plan-description { margin:10px 0 16px;font:540 17px/1.4 var(--display);color:#314a35; }
.account-app .purchase-summary { display:block;margin:0 0 10px;padding:0 0 14px;border-top:0;border-bottom:1px solid #cad5c2; }
.account-app .purchase-summary>span { font-size:11px; }
.account-app .purchase-summary strong { display:block;margin-top:6px;font:550 34px/1.25 var(--display);letter-spacing:-.04em;color:#1e382c;overflow-wrap:anywhere; }
.account-app .wallet-order-line { display:flex;justify-content:space-between;gap:14px;padding:7px 0;font-size:11px; }
.account-app .wallet-order-line b { font-weight:500;text-align:right; }
.account-app .wallet-order>button[type="submit"] { margin-top:14px; }
.account-app .wallet-order .field-help { margin-top:8px; }
.account-app .wallet-add-funds { width:100%;justify-content:center;min-height:40px;padding:9px;font-size:11px; }
.account-app .wallet-history-heading { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px; }
.account-app .wallet-history-heading h2 { margin:6px 0;font:550 26px var(--display);letter-spacing:-.04em; }
.account-app .wallet-history-heading>span { font-size:10px;color:#61705f; }
.account-app .wallet-history-section { padding:18px 22px;border:1px solid #d7ddcf;border-radius:12px;background:#fcfbf6;margin-bottom:14px; }
.account-app .wallet-history-section h3 { margin:0 0 16px;font:550 15px var(--display); }
.account-app .wallet-rows .empty-state { margin:0;padding:22px;border:1px dashed #cbd5c1;border-radius:8px;background:#f2f5ec;font-size:12px;line-height:1.8;color:#607054; }
.account-app .wallet-row { color:#243a2b; }
.account-app .wallet-row small { color:#62725d; }
@media(max-width:1100px) {
  .account-app .account-shell { grid-template-columns:180px minmax(0,1fr);gap:16px; }
  .account-app .account-heading { padding:18px 24px; }
  .account-app .account-scroll { padding:20px 24px; }
  .account-app .account-metric { padding:16px; }
  .account-app .account-next { padding:24px; }
  .account-app .account-next-mark { display:none; }
  .account-app .account-next { flex-wrap:wrap; }
  .account-app .account-access-term { flex-basis:100%; }
  .account-app .account-detail-grid,.account-app .wallet-split,.account-app .wallet-purchase { grid-template-columns:minmax(0,1fr); }
  .account-app .account-nav a { font-size:12px;padding:12px 10px; }
}
@media(max-width:900px) {
  .account-app .compact-header { width:calc(100% - 24px);margin-top:12px;padding:12px 16px;min-height:66px; }
  .account-app .account-state { display:none; }
  .account-app .account-shell { width:calc(100% - 24px);grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:12px;margin-top:12px; }
  .account-app .account-nav { position:static;padding:0; }
  .account-app .account-nav>span,.account-app .account-nav-help,.account-app .account-nav-note { display:none; }
  .account-app .account-nav nav { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px; }
  .account-app .account-nav a { min-height:52px;font-size:12px;gap:7px;justify-content:center;padding:9px 6px;text-align:center; }
  .account-app .account-nav a .ui-icon { width:16px;height:16px;flex-basis:16px; }
  .account-app .account-content { padding:0;min-height:0;border-radius:18px; }
  .account-app .account-heading { height:112px;min-height:112px; }
  .account-app .account-metrics { gap:8px; }
  .account-app .account-metric { padding:14px 12px; }
  .account-app .account-metric>span { font-size:12px;gap:5px; }
  .account-app .account-metric .ui-icon { display:none; }
  .account-app .account-metric strong { font-size:22px; }
  .account-app .account-metric p,.account-app .account-metric a { font-size:12px; }
  .account-app .account-quick-grid { grid-template-columns:minmax(0,1fr); }
  .account-app .account-panel { padding:22px; }
  .account-app .wallet-summary { padding:20px; }
}
@media(max-width:480px) {
  .account-app .compact-header { width:calc(100% - 16px); }
  .account-app .brand small { font-size:7px; }
  .account-app .account-shell { width:calc(100% - 16px); }
  .account-app .account-nav a { font-size:11px;gap:5px; }
  .account-app .account-content { padding:0; }
  .account-app .account-heading { align-items:center;gap:10px;padding:14px 18px;margin:0; }
  .account-app .account-scroll { padding:18px; }
  .account-app #refresh-account { width:42px;min-width:42px;padding:11px;gap:0;font-size:0; }
  .account-app #refresh-account .ui-icon { margin:0;flex-basis:18px;width:18px;height:18px; }
  .account-app .account-heading h1 { font-size:23px; }
  .account-app .account-heading p { font-size:12px; }
  .account-app .account-email-state { width:100%; }
  .account-app .account-email-state::before { content:none; }
  .account-app .account-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-app .account-metric:first-child { min-height:96px;grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px; }
  .account-app .account-metric:first-child strong { grid-column:1;grid-row:2;margin:8px 0 0; }
  .account-app .account-metric:first-child a { grid-column:2;grid-row:1/3; }
  .account-app .account-metric strong { font-size:21px; }
  .account-app .account-next { padding:22px; }
  .account-app .account-next h2 { font-size:26px; }
  .account-app .account-next p { font-size:12px; }
  .account-app .account-next .primary { width:100%; }
  .account-app .account-steps { grid-template-columns:minmax(0,1fr);gap:8px;padding:0; }
  .account-app .account-steps li>div { display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 8px; }
  .account-app .account-steps p { margin:0; }
  .account-app .account-panel { padding:20px; }
  .account-app :is(.device-row,.session-row) { grid-template-columns:32px minmax(0,1fr);gap:8px 10px; }
  .account-app .record-icon { width:32px;height:32px; }
  .account-app :is(.device-row,.session-row)>.row-action { grid-column:1/-1;grid-row:auto;justify-self:stretch;margin-top:6px; }
  .account-app .money-panel { padding:20px; }
  .account-app .wallet-summary { grid-template-columns:minmax(0,1fr);gap:16px;padding:20px; }
  .account-app .wallet-summary-note { justify-self:start; }
  .account-app .wallet-summary strong { font-size:32px; }
  .account-app .wallet-tabs { gap:2px;padding:3px; }
  .account-app .wallet-tabs button { font-size:10px;padding:8px 4px;gap:4px; }
  .account-app .wallet-tabs .ui-icon { display:none; }
  .account-app .wallet-periods { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-app .wallet-history-heading { align-items:start;flex-direction:column;gap:0; }
  .account-app .wallet-history-section { padding:16px; }
  .account-app .wallet-order { padding:20px; }
}
@media(max-height:650px) and (min-width:901px) { .account-app .account-nav-help,.account-app .account-nav-note { display:none; } }
@media(prefers-reduced-motion:reduce) { .account-app .account-view { animation:none; } }
@media(forced-colors:active) { .account-app .account-content,.account-app .account-panel,.account-app .account-metric,.account-app .account-next { border:1px solid CanvasText; } .account-app .account-nav a[aria-current="page"] { outline:2px solid Highlight; } }

/* One navigation, one task per section. These panels do not own another tab bar. */
.account-app .account-refresh-group { flex:0 1 370px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:0; }
.account-app .account-refresh-group p { margin:0;min-height:0;padding:0;font-size:10px;line-height:1.5;text-align:right;color:#627267; }
.account-app .account-heading h1 { font-size:clamp(23px,2.3vw,30px); }
.account-app .wallet-status { display:none; }
.account-app:is([data-account-section="wallet"],[data-account-section="subscription"],[data-account-section="payments"]) .wallet-status { display:block; }
.account-app:is([data-account-section="wallet"],[data-account-section="subscription"],[data-account-section="payments"]) .account-updated { display:none; }
.account-app .account-refresh-group .wallet-status[data-state="error"] { background:none;border:0;color:#913d2b; }
.account-app .wallet-topup { margin-top:16px; }
.account-app .wallet-summary-note .secondary { min-height:38px;padding:8px 13px;font-size:11px;color:#e9eee3;border-color:#74867c;--action-icon:#bfcebc; }
.account-app .account-nav-help a { display:flex;justify-content:space-between;flex-direction:row;gap:12px;padding:12px 14px;margin-top:12px;min-height:46px;background:#182326;border:1px solid #41514b;border-radius:10px;font-size:11px;color:#edf0e5; }
.account-app .account-nav-help a .ui-icon { order:1;flex:0 0 17px;width:17px;height:17px; }
.account-app .section-intro-with-icon { display:flex;align-items:center;gap:20px;padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid #d3dccc; }
.account-app .section-intro-with-icon>div { min-width:0;flex:1; }
.account-app .section-intro-with-icon h2 { margin:8px 0 12px;font:550 clamp(25px,2.5vw,34px)/1.22 var(--display);letter-spacing:-.04em; }
.account-app .section-intro-with-icon p { max-width:590px; }
.account-app .section-intro-with-icon .eyebrow { color:#65745f;font-size:9px; }
.account-app .section-emblem { display:flex;align-items:center;justify-content:center;gap:0;flex:0 0 64px;width:64px;height:64px;border-radius:20px;border:1px solid #bac9b3;background:linear-gradient(145deg,#f8f9f1,#dce5d5);box-shadow:inset 0 1px #ffffff; }
.account-app .section-emblem .ui-icon { width:32px;height:32px;flex:0 0 32px;color:#48644e; }
.account-app .section-intro-with-icon .secondary { min-height:44px;padding:11px 15px;font-size:11px;color:#304b3c;background:#f7f8f0;border-color:#b1c0a8;--action-icon:#527349; }
.account-app .panel-caption { font-size:10px;font-weight:400;letter-spacing:0;color:#64755e; }
.account-app .devices-panel { background:linear-gradient(150deg,#fffef9,#f2f5ea); }
.account-app .devices-panel .empty-state { padding:60px 24px;border:0;background:transparent;max-width:410px;margin:auto;font-size:14px; }
.account-app .devices-panel .empty-state>.ui-icon { display:block;width:48px;height:48px;margin:0 auto 22px;color:#6a8362; }
.account-app .device-row { margin-bottom:10px;padding:22px;border:1px solid #d8dfd0;border-radius:14px;background:#ffffff85; }
.account-app .device-row:last-child { margin-bottom:0; }
.account-app .security-grid { grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch; }
.account-app .security-grid>.account-panel { display:flex;flex-direction:column;padding:20px;background:var(--workspace-card); }
.account-app .security-grid>.account-panel>header { flex:none;height:34px;margin:0 0 12px; }
.account-app .session-lists { --active-list-height:72px;--ended-list-height:124px;flex:none;height:264px;display:flex;flex-direction:column;gap:12px;min-width:0; }
.account-app .session-scroll-list { min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#abb9a3 transparent;scrollbar-gutter:stable;overflow-anchor:none; }
.account-app .session-scroll-list:focus-visible { outline:1px solid #648176;outline-offset:0;border-radius:6px; }
.account-app #sessions-content { flex:none;max-height:var(--active-list-height); }
.account-app .session-lists:has(#ended-sessions[hidden]) #sessions-content { max-height:100%; }
.account-app #ended-sessions { flex:none;margin:0; }
.account-app #ended-sessions>summary { min-height:44px;padding:10px 12px; }
.account-app #ended-sessions-content { max-height:var(--ended-list-height);padding:0 12px 4px; }
.account-app .sessions-panel .session-row { grid-template-columns:32px minmax(0,1fr) auto;gap:4px 10px;padding:10px 0; }
.account-app .sessions-panel .session-row:first-child { padding-top:4px; }
.account-app .session-row .record-icon { width:32px;height:32px;grid-row:1/3; }
.account-app .session-row>b { font-size:13px; }
.account-app .session-meta { grid-column:2;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px; }
.account-app .session-meta .record-meta { font-size:11px;white-space:nowrap; }
.account-app .session-meta .record-state { padding:2px 6px;font-size:10px;white-space:nowrap; }
.account-app .session-row>.row-action { grid-row:1/3; }
.account-app .session-row .record-state[data-state="active"] { background:#dcebd8;color:#315d39; }
.account-app .password-panel>p { font-size:12px;margin:0; }
.account-app .password-panel .business-form { flex:1;margin-top:16px;gap:8px;grid-template-rows:auto 48px auto 48px auto minmax(48px,1fr); }
.account-app .password-panel .business-form button { align-self:end; }
.account-app .password-panel .business-form input { height:48px;padding:10px 12px; }
.account-app .password-panel .form-status:empty { display:none; }
.account-app .password-panel .field-help { font-size:11px; }
.account-app .password-panel .record-icon { width:34px;height:34px; }
.account-app .account-danger-action { margin-top:auto;padding-top:14px; }
.account-app .account-danger-action .eyebrow { color:#8b674e;font-size:9px; }
.account-app .account-danger-action p { font-size:12px;line-height:1.6;margin:6px 0; }
.account-app #logout-all { background:#f3eae0;color:#79432f;border-color:#d0b7a2;--action-icon:#966147; }
.account-app .account-disclosure { display:flow-root;margin:22px 0 0;border:1px solid #cbd6c1;border-radius:12px;background:#f5f6ee; }
.account-app .account-disclosure>summary { display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;list-style:none;cursor:pointer;padding:14px 18px;font-size:12px;color:#43573c; }
.account-app .account-disclosure>summary::-webkit-details-marker { display:none; }
.account-app .account-disclosure>summary::after { content:'+';font:400 20px var(--display);color:#71836a; }
.account-app .account-disclosure[open]>summary::after { content:'−'; }
.account-app .account-disclosure>summary>span { margin-left:auto; }
.account-app .account-disclosure>summary .ui-icon { width:17px;height:17px; }
.account-app .account-disclosure>div { display:flow-root;padding:0 18px 18px; }
.account-app #ended-sessions-count { padding:2px 8px;background:#e3e9dc;border-radius:20px;font-size:10px; }
.account-app .subscription-current { display:flex;align-items:center;gap:18px;padding:16px 20px;margin-bottom:16px;border:1px solid #bfceb5;border-radius:16px;background:linear-gradient(115deg,#e2ebd9,#f9faf3); }
.account-app .subscription-current>div:nth-child(2) { min-width:0;flex:1; }
.account-app .subscription-current .eyebrow { font-size:9px;color:#607555; }
.account-app #subscription-content { display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 18px;margin-top:8px; }
.account-app #subscription-content :is(strong,b) { font:550 18px/1.4 var(--display);color:#354d30; }
.account-app #subscription-content p { width:100%;font-size:12px;margin:4px 0 0;color:#68765f; }
.account-app .subscription-current .secondary { min-height:42px;font-size:11px;padding:10px 14px;color:#304b3c;background:#f7f8f0;border-color:#b1c0a8;--action-icon:#527349; }
.account-app .purchase-canvas { padding:22px;border:1px solid #d6dfcc;border-radius:17px;background:linear-gradient(140deg,#fffef9,#f2f5e9); }
.account-app .wallet-history-heading { padding:4px 0 20px;margin:0;border-bottom:1px solid #d5ddcc; }
.account-app .wallet-history-section { margin-top:20px;background:linear-gradient(140deg,#fffefa,#f6f7ef); }
.account-app .wallet-row { padding:18px 0; }
.account-app .wallet-row:last-child { border-bottom:0; }
.account-app .wallet-row b { font-size:12px; }
.account-app .legacy-payments { margin-top:26px; }
/* Desktop density responds to height as well as width. Short/touch windows
   retain real overflow instead of clipping forms, errors or transfer receipts. */
@media(min-width:1101px) and (max-height:900px) {
  .account-app .account-heading { height:84px;min-height:84px;padding-block:12px; }
  .account-app .account-scroll { padding:16px 24px; }
  .account-app .wallet-summary { padding:14px 20px; }
  .account-app .wallet-summary strong { font-size:32px; }
  .account-app .money-panel { padding:18px 20px; }
  .account-app .money-panel h2,.account-app .wallet-plan-options h2 { font-size:24px;margin:8px 0; }
  .account-app .wallet-workspace .business-form { margin-top:12px;gap:8px; }
  .account-app .wallet-purchase.business-form { margin:0;gap:20px; }
  .account-app .wallet-guide { padding:0 4px; }
  .account-app .wallet-guide h3 { margin:8px 0 14px;font-size:22px; }
  .account-app .wallet-guide ol { gap:12px; }
  .account-app .wallet-caution { margin-top:14px;padding:10px 0; }
  .account-app .wallet-guide .quiet-link { margin-top:12px; }
  .account-app .wallet-disclaimer { margin-top:10px; }
  .account-app .subscription-current { padding:12px 18px;margin-bottom:14px; }
  .account-app .subscription-current .section-emblem { width:52px;height:52px;flex-basis:52px;border-radius:16px; }
  .account-app .purchase-canvas { padding:18px; }
  .account-app .wallet-plan-options fieldset { margin:14px 0; }
  .account-app .wallet-plan-options legend { margin-bottom:8px; }
  .account-app .wallet-devices button { min-height:66px;padding:8px; }
  .account-app .wallet-order { padding:16px; }
  .account-app #wallet-plan-description { margin:8px 0 12px;font-size:16px; }
  .account-app .purchase-summary { padding-bottom:10px;margin-bottom:6px; }
  .account-app .wallet-order>button[type="submit"] { margin-top:10px; }
  .account-app .wallet-order-line { padding-block:4px; }
  .account-app .account-footnote { margin-top:14px;font-size:11px; }
  .account-app .section-intro-with-icon { padding-bottom:14px;margin-bottom:16px; }
  .account-app .section-intro-with-icon h2 { font-size:27px;margin:6px 0 8px; }
  .account-app .security-grid>.account-panel { padding:16px 18px; }
  .account-app .session-lists { --active-list-height:64px;--ended-list-height:88px;height:212px;gap:10px; }
  .account-app .security-grid>.account-panel>header { margin-bottom:10px; }
  .account-app .password-panel h2 { font-size:19px;margin-bottom:8px; }
  .account-app .password-panel .business-form { margin-top:12px;gap:6px;grid-template-rows:auto 44px auto 44px auto minmax(44px,1fr); }
  .account-app .password-panel .business-form input { height:44px;min-height:44px;padding:8px 12px; }
  .account-app .password-panel .business-form button { min-height:44px;padding-block:10px; }
  .account-app .account-danger-action { padding-top:10px; }
  .account-app .account-danger-action p { font-size:11px; }
  .account-app #logout-all { margin-top:6px; }
}
@media(min-width:1101px) and (max-height:800px) {
  .account-app .compact-header { min-height:64px;margin-top:12px;padding-block:8px; }
  .account-app .account-shell { margin-top:14px;margin-bottom:14px; }
  .account-app .wallet-guide h3 { font-size:20px; }
  .account-app .wallet-guide ol { gap:10px; }
  .account-app .wallet-disclaimer { margin-top:8px; }
  .account-app .subscription-current { padding-block:8px;margin-bottom:12px; }
  .account-app #subscription-content { margin-top:4px;gap:4px 16px; }
  .account-app .purchase-canvas { padding:14px; }
  .account-app .wallet-order { padding:12px; }
  .account-app .wallet-order-line { padding-block:3px; }
  .account-app #wallet-plan-description { margin-bottom:8px; }
  .account-app .purchase-summary strong { font-size:28px; }
  .account-app .wallet-order>button[type="submit"] { min-height:44px;margin-top:8px;padding-block:10px; }
  .account-app .account-footnote { margin-top:10px; }
  .account-app .devices-panel .empty-state { padding-block:24px; }
  .account-app .account-note { margin-block:14px;padding:14px; }
}
@media(max-width:1100px) {
  .account-app .section-intro-with-icon { flex-wrap:wrap;gap:16px; }
  .account-app .section-intro-with-icon>.secondary { margin-left:88px; }
  .account-app .section-emblem { flex-basis:56px;width:56px;height:56px;border-radius:17px; }
  .account-app .security-grid { grid-template-columns:minmax(0,1fr); }
  .account-app .subscription-current { flex-wrap:wrap; }
  .account-app .purchase-canvas { padding:22px; }
}
@media(max-width:700px) {
  .account-app .account-refresh-group { flex:0 0 116px;gap:7px; }
  .account-app .account-refresh-group .update-detail { position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden; }
  .account-app .account-refresh-group p { font-size:9px; }
  .account-app .account-heading h1 { font-size:24px; }
  .account-app .account-heading { padding:16px 18px;gap:12px; }
  .account-app .section-intro-with-icon>div { flex-basis:calc(100% - 82px); }
  .account-app .section-intro-with-icon>.secondary { margin-left:0; }
  .account-app .section-intro-with-icon h2 { font-size:24px; }
  .account-app .section-intro-with-icon h2 br { display:none; }
  .account-app .purchase-canvas { padding:18px; }
  .account-app .subscription-current { padding:18px;gap:14px; }
  .account-app .subscription-current .section-emblem { display:none; }
  .account-app .subscription-current .secondary { width:100%;justify-content:center; }
  .account-app .wallet-history-heading { flex-direction:column;align-items:start;gap:12px; }
}
@media(max-width:480px) {
  .account-app .account-heading h1 { font-size:21px; }
  .account-app .account-heading { height:136px;min-height:136px; }
  .account-app .account-refresh-group { flex-basis:88px; }
  .account-app .account-refresh-group #refresh-account { font-size:10px;width:auto;padding:8px;gap:6px; }
  .account-app .account-refresh-group #refresh-account .ui-icon { width:14px;height:14px;flex-basis:14px; }
  .account-app .account-heading .eyebrow { font-size:7px;letter-spacing:.06em; }
  .account-app .section-emblem { flex-basis:44px;width:44px;height:44px;border-radius:14px; }
  .account-app .section-emblem .ui-icon { width:24px;height:24px;flex-basis:24px; }
  .account-app .section-intro-with-icon { gap:12px; }
  .account-app .section-intro-with-icon>div { flex-basis:calc(100% - 60px); }
  .account-app .section-intro-with-icon h2 { font-size:22px; }
  .account-app .section-intro-with-icon p { font-size:12px; }
  .account-app .password-panel { padding:20px; }
  .account-app .sessions-panel .session-row { grid-template-columns:32px minmax(0,1fr); }
  .account-app .session-row>.row-action { grid-column:2;grid-row:auto;justify-self:start;margin-top:4px; }
}
/* Landscape and keyboard-sized windows keep a usable content viewport. Only
   chrome is compacted; fields remain 16px and touch targets at least 44px. */
@media(max-width:900px) and (max-height:540px) {
  .account-app .compact-header { min-height:56px;height:56px;margin-top:8px;padding:4px 12px; }
  .account-app .compact-header #logout { min-height:44px;padding:10px 12px; }
  .account-app .brand small { display:none; }
  .account-app .account-shell { margin-top:8px;margin-bottom:8px;gap:8px; }
  .account-app .account-nav a { min-height:44px;padding:8px 4px;font-size:11px;gap:5px; }
  .account-app .account-heading { height:76px;min-height:76px;padding:6px 12px;gap:8px; }
  .account-app .account-heading h1 { font-size:18px;line-height:1.2;margin-top:4px; }
  .account-app .account-heading .eyebrow { font-size:7px;letter-spacing:.06em; }
  .account-app .account-refresh-group { flex:0 0 88px;gap:2px; }
  .account-app .account-refresh-group #refresh-account { min-height:44px;width:auto;padding:8px;font-size:10px;gap:6px; }
  .account-app .account-refresh-group #refresh-account .ui-icon { width:14px;height:14px;flex-basis:14px; }
  .account-app .account-refresh-group p { font-size:9px; }
  .account-app .account-refresh-group .update-detail { position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden; }
  .account-app .account-scroll { padding:12px; }
}
@media(min-width:600px) and (max-width:900px) and (max-height:540px) {
  .account-app .account-nav nav { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .account-app .account-nav a .ui-icon { display:none; }
}
