/* Authenticated Focus workspace. Anonymous landing and server-rendered pages retain their styles. */
body.account-authenticated {
  --bg: #111214; --surface: #191b1e; --surface-2: #202328; --surface-3: #2d3239;
  --row-a: #191b1e; --row-b: #1d2024; --border: #454c55;
  --text: #e6e8ec; --strong: #ffffff; --muted: #acb5c1; --muted-2: #c5cbd3;
  --accent: #79dce9; --green: #62ce93; --red: #ff8787; --yellow: #ebc16b;
  --focus-control: #84909d; --focus-nav: #16181b; --focus-sidebar: 216px;
  font-size: 14px; line-height: 1.5; -webkit-font-smoothing: antialiased;
  --focus-call: #009a28; --focus-put: #ef4444; --focus-on-fill: #111214;
  --focus-fill-text: #111214; --focus-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
body.account-authenticated[data-theme="light"] {
  --bg: #e9edf0; --surface: #ffffff; --surface-2: #f1f4f6; --surface-3: #e2e8ed;
  --row-a: #ffffff; --row-b: #f1f4f6; --border: #bbc5cf;
  --text: #293640; --strong: #14212a; --muted: #536572; --muted-2: #435660;
  --accent: #006d80; --green: #087044; --red: #b92e3c; --yellow: #815900;
  --focus-control: #74828c; --focus-nav: #f8fafb;
  --focus-call: #007028; --focus-put: #b91c1c; --focus-fill-text: #ffffff; --focus-on-fill: #ffffff;
}
.focus-nav-toggle, .focus-nav-heading, .focus-workspace-heading, .focus-inspector, .focus-search-label, .focus-account-toggle, .focus-account-title, .ms-mobile-text { display: none; }
.focus-account-panel { display: contents; }
.focus-market-details { position: fixed; top: var(--focus-market-top, 70px); right: 24px; width: min(420px, calc(100vw - 32px)); max-height: calc(100dvh - var(--focus-market-top, 70px) - 16px); overflow: auto; z-index: 360; padding: 16px; border: 1px solid var(--focus-control); border-radius: 5px; background: var(--surface); color: var(--text); font-size: 12px; line-height: 1.6; white-space: pre-line; }
body.account-authenticated .app-header { display: flex; flex-wrap: wrap; gap: 14px; min-height: 60px; padding: 8px 48px 8px calc(var(--focus-sidebar) + 48px); background: var(--focus-nav); }
body.account-authenticated .logo { position: fixed; left: 18px; top: 15px; z-index: 205; display: flex; align-items: center; gap: 9px; font-size: 18px; font-weight: 550; letter-spacing: -.35px; background: none; -webkit-text-fill-color: var(--strong); color: var(--strong); }
.focus-brand-mark { display: none; }
body.account-authenticated .focus-brand-mark { display: inline-flex; justify-content: center; align-items: center; width: 29px; height: 29px; font: 800 16px var(--focus-mono); border: 1px solid var(--focus-control); border-radius: 7px; color: var(--accent); -webkit-text-fill-color: var(--accent); }
body.account-authenticated .tabs { position: fixed; top: 74px; bottom: 60px; left: 0; width: var(--focus-sidebar); max-width: none; padding: 12px; display: flex; flex-direction: column; gap: 4px; border: 0; border-right: 1px solid var(--border); border-radius: 0; background: var(--focus-nav); overflow-y: auto; overflow-x: hidden; box-shadow: none; }
body.account-authenticated .focus-nav-heading { display: block; margin: 8px 12px 12px; color: var(--muted); font: 500 12px Inter, sans-serif; text-transform: uppercase; letter-spacing: .6px; }
body.account-authenticated .tabs > .tab, body.account-authenticated .tabs .tab-parent { width: 100%; min-width: 0; min-height: 42px; display: flex; align-items: center; justify-content: flex-start; gap: 12px; text-align: left; padding: 10px 12px; font: 500 14px/1.4 Inter, sans-serif; border-radius: 4px; color: var(--muted); background: none; }
body.account-authenticated .tabs .tab-group { display: block; min-width: 0; }
.focus-nav-icon { width: 19px; height: 19px; flex: 0 0 19px; stroke: currentColor; fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
body.account-authenticated .tabs .tab.active, body.account-authenticated .tabs .tab-group.active > .tab-parent { color: var(--accent); background: color-mix(in srgb, var(--accent) 9%, var(--focus-nav)); border-color: transparent; border-left: 2px solid var(--accent); box-shadow: none; }
body.account-authenticated .tabs .tab-parent::after { margin-left: auto; }
body.account-authenticated .tabs .tab-menu { position: static; min-width: 0; margin: 4px 0; background: var(--surface); border-radius: 4px; box-shadow: none; }
body.account-authenticated .tabs .tab-menu::before { display: none; }
body.account-authenticated .tabs .tab-menu .tab { color: var(--muted-2); white-space: normal; }
body.account-authenticated .focus-nav-toggle { position: fixed; bottom: 0; left: 0; z-index: 205; display: flex; align-items: center; gap: 12px; width: var(--focus-sidebar); height: 60px; padding: 16px 24px; border: 0; border-top: 1px solid var(--border); border-right: 1px solid var(--border); background: var(--focus-nav); color: var(--muted-2); font: 500 14px Inter, sans-serif; cursor: pointer; }
body.account-authenticated .focus-account-toggle { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 8px 10px; border: 1px solid var(--focus-control); border-radius: 5px; background: var(--surface-2); color: var(--text); font: 500 14px Inter, sans-serif; cursor: pointer; }
body.account-authenticated .focus-account-panel { display: none; }
body.account-authenticated .focus-account-panel.is-open { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 10px; position: fixed; grid-area: auto; z-index: 360; top: var(--focus-account-top, 62px); left: auto; right: 24px; width: min(340px, calc(100vw - 32px)); max-height: calc(100dvh - var(--focus-account-top, 62px) - 16px); overflow: auto; padding: 12px; border: 1px solid var(--focus-control); border-radius: 5px; background: var(--surface); }
body.account-authenticated .focus-account-title { display: flex; align-items: center; font-size: 15px; font-weight: 700; }
body.account-authenticated .focus-account-panel .theme-toggle { width: 44px; height: 44px; min-height: 44px; border-color: var(--focus-control); }
body.account-authenticated .focus-account-panel .account-controls { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr); gap: 8px; }
body.account-authenticated .focus-account-panel .account-pill { display: flex; justify-content: space-between; width: 100%; max-width: none; white-space: normal; border-radius: 5px; }
body.account-authenticated .focus-account-panel .account-pill-label { overflow-wrap: anywhere; }
body.account-authenticated .focus-account-panel .account-name-tools { display: flex; }
body.account-authenticated .focus-account-panel :is(.account-action, .account-edit-action) { width: 100%; min-height: 44px; border-radius: 5px; border-color: var(--focus-control); font-size: 13px; }
body.account-authenticated .focus-account-panel .account-visibility-action { min-width: 44px; min-height: 44px; border-color: var(--focus-control); }
body.account-authenticated .focus-account-panel .account-edit-action::after { content: " display name"; }
body.account-authenticated .focus-account-panel .account-edit-action { display: block; }

/* A saved desktop collapse choice must not change the mobile menu or header. */
@media (min-width: 981px) and (pointer: fine) {
  body.account-authenticated .tabs > #mobile-tabs-toggle { display: none !important; }
  body.account-authenticated.focus-nav-collapsed { --focus-sidebar: 72px; }
  body.account-authenticated.focus-nav-collapsed .tabs > .tab .focus-nav-label, body.account-authenticated.focus-nav-collapsed .tab-parent .focus-nav-label, body.account-authenticated.focus-nav-collapsed .focus-nav-heading, body.account-authenticated.focus-nav-collapsed .focus-nav-toggle .focus-nav-label, body.account-authenticated.focus-nav-collapsed .focus-brand-label { display: none; }
  body.account-authenticated.focus-nav-collapsed .tabs .tab-parent::after { display: none; }
  body.account-authenticated.focus-nav-collapsed .tabs { padding: 12px 10px; }
  body.account-authenticated.focus-nav-collapsed .tabs .tab-menu { position: fixed; left: 72px; top: 84px; bottom: auto; max-height: calc(100vh - 100px); overflow-y: auto; width: 210px; border-color: var(--focus-control); }
}
body.account-authenticated .header-search { flex: 1 1 350px; max-width: 470px; min-width: 160px; height: 42px; border: 1px solid var(--focus-control); border-radius: 5px; background: var(--surface-2); }
body.account-authenticated .focus-search-label { display: inline; font: 500 14px Inter, sans-serif; color: var(--muted-2); }
body.account-authenticated .hs-icon { display: none; }
body.account-authenticated .hs-input { font-size: 14px; }
body.account-authenticated .hs-input::placeholder { color: var(--muted); }
body.account-authenticated .hs-go { border-radius: 3px; color: var(--focus-fill-text); }
body.account-authenticated .market-status { margin-left: auto; font: 400 13px/1.4 Inter, sans-serif; }
body.account-authenticated .market-status[data-state="down"] { color: var(--red); }
body.account-authenticated .market-status[data-state="cached"], body.account-authenticated .market-status[data-state="delayed"] { color: var(--yellow); }
body.account-authenticated .alert-badges { margin-left: 0; }
body.account-authenticated .body-content { margin-left: var(--focus-sidebar); padding: 24px 48px 32px; max-width: none; }
body.account-authenticated #tab-scanner { max-width: none; margin-inline: 0; }
body.account-authenticated .focus-workspace-heading { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.focus-workspace-heading h1 { font-size: 28px; font-weight: 500; letter-spacing: -.7px; }
.focus-workspace-heading p { margin-top: 7px; color: var(--muted); font-size: 14px; }
.focus-workspace-label { font: 500 12px Inter, sans-serif; letter-spacing: .7px; text-transform: uppercase; color: var(--muted); }
body.account-authenticated .context-row { display: flex; flex-direction: column; gap: 8px; margin-bottom: 16px; }
body.account-authenticated .context-row #pulse-cards { flex: none; width: 100%; }
body.account-authenticated .context-row #news-ticker { flex: none; width: 100%; display: grid; }
.focus-scan-metrics { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-bottom: 18px; color: var(--muted); font-size: 14px; }
.focus-scan-metrics strong { margin-left: 6px; color: var(--text); font: 400 14px var(--focus-mono); }
body.account-authenticated .flow-balance { display: grid; grid-template-columns: 190px minmax(0, 1fr) 140px; gap: 6px 18px; background: var(--surface); border: 1px solid var(--border); padding: 14px 16px; border-radius: 5px; }
body.account-authenticated .fb-headline { grid-column: 1; grid-row: 1 / 3; align-self: center; color: var(--text); margin: 0; font-size: 16px; font-weight: 500; line-height: 1.5; letter-spacing: 0; }
body.account-authenticated .fb-description { display: block; margin-top: 3px; font-size: 13px; font-weight: 400; color: var(--muted); }
body.account-authenticated .fb-ratio { grid-column: 3; grid-row: 1 / 3; align-self: center; text-align: right; }
.fb-ratio strong { display: block; font: 500 20px var(--focus-mono); color: var(--text); }
.fb-ratio span { display: block; margin-top: 5px; font-size: 13px; color: var(--muted); }
.fb-ratio-note { display: block; margin-top: 2px; font: 400 11px/1.4 Inter, sans-serif; color: var(--muted-2); }
body.account-authenticated .fb-barwrap { grid-column: 2; min-width: 0; }
body.account-authenticated .fb-bar { height: 28px; border-radius: 3px; }
/* Labels live outside the bar so even a zero-width segment stays readable. */
body.account-authenticated .fb-seg { flex: 0 0 auto; border: 0; }
body.account-authenticated .fb-empty .fb-seg, body.account-authenticated .fb-empty .fb-mark { visibility: hidden; }
body.account-authenticated .fb-call { background: var(--focus-call); box-shadow: inset -2px 0 var(--surface); }
body.account-authenticated .fb-put { background: var(--focus-put); }
body.account-authenticated .fb-caption { grid-column: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 12px; margin: 0; overflow: visible; white-space: normal; color: var(--muted-2); font: 400 13px/1.4 var(--focus-mono); }
.fb-legend-item { display: grid; gap: 2px; min-width: 0; overflow-wrap: anywhere; }
.fb-legend-put { text-align: right; }
.fb-legend-label { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; color: var(--text); font-family: Inter, sans-serif; }
.fb-legend-put .fb-legend-label { justify-content: flex-end; }
.fb-legend-label::before { content: ''; flex: 0 0 8px; height: 8px; border-radius: 2px; background: var(--focus-call); }
.fb-legend-put .fb-legend-label::before { background: var(--focus-put); }
.fb-legend-label strong { font-weight: 500; font-variant-numeric: tabular-nums; }
.fb-empty-note { grid-column: 1 / -1; color: var(--muted); font: 400 12px/1.4 Inter, sans-serif; }
body.account-authenticated .scanner-topline { display: flex; flex-direction: column; align-items: stretch; gap: 0; margin-bottom: 0; }
/* The legacy horizontal row used a 260px flex basis. In a column that became
   260px of height around the section label, pushing cards below the fold. */
body.account-authenticated .scanner-topline .candidate-head { flex: 0 0 auto; }
body.account-authenticated .scanner-subnav { width: 100%; border-radius: 0; border: 0; border-bottom: 1px solid var(--border); background: none; padding: 0; gap: 20px; overflow-x: auto; }
body.account-authenticated .scanner-subtab { font-family: Inter, sans-serif; font-weight: 500; border-radius: 0; padding: 10px 0 13px; background: none; border: 0; border-bottom: 2px solid transparent; font-size: 14px; color: var(--muted); }
body.account-authenticated .scanner-subtab.is-active { color: var(--accent); border-bottom-color: var(--accent); box-shadow: none; }
body.account-authenticated .candidate-title { color: var(--strong); font-size: 15px; letter-spacing: -.2px; }
body.account-authenticated #ticker-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.focus-candidate { min-height: 170px; height: 100%; border: 1px solid var(--border); border-top: 3px solid var(--green); border-radius: 5px; padding: 13px; background: var(--surface); cursor: pointer; }
.focus-candidate.is-put { border-top-color: var(--red); }
.focus-candidate-head { display: flex; align-items: center; gap: 7px; min-width: 0; }
.focus-candidate .stock-logo-wrap { width: 25px; height: 25px; min-width: 25px; }
.focus-candidate .ticker-symbol { font-size: 12px; color: var(--strong); }
.focus-candidate-rank { margin-left: auto; font: 9px var(--focus-mono); color: var(--muted); }
.focus-candidate-contract { margin: 13px 0; font: 700 12px var(--focus-mono); color: var(--green); }
.focus-candidate.is-put .focus-candidate-contract { color: var(--red); }
.focus-candidate-expiry { display: block; margin-top: 5px; font: 10px var(--focus-mono); color: var(--muted); }
.focus-candidate-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
.focus-candidate-metrics dt, .focus-inspector-metrics dt { color: var(--muted); font: 400 13px Inter, sans-serif; margin-bottom: 5px; }
.focus-candidate-metrics dd { color: var(--strong); font: 600 12px var(--focus-mono); }
.focus-candidate-footer { display: flex; align-items: center; justify-content: space-between; margin-top: 12px; padding-top: 8px; border-top: 1px solid var(--border); color: var(--accent); font-size: 10px; }
.focus-candidate .favorite-star-btn { width: 26px; height: 26px; }
.focus-candidates-disclosure { margin: 8px 0; }
.focus-candidates-disclosure > summary { width: fit-content; padding: 8px 0; color: var(--text); font-size: 14px; cursor: pointer; }
.focus-candidates-disclosure > summary span { display: inline-block; margin-left: 8px; color: var(--muted); font-size: 13px; }
.focus-candidates-disclosure #candidate-head { margin: 10px 0; }
.focus-candidates-disclosure .candidate-title { display: none; }
.focus-scan-workspace { display: grid; grid-template-columns: minmax(0, 1fr) clamp(340px, 23vw, 400px); gap: 0; align-items: start; margin-top: 8px; border: 1px solid var(--border); background: var(--surface); }
body.account-authenticated #scanner-view-options .scanner-filter-stack { gap: 0; margin: 0; }
body.account-authenticated #scanner-view-options .filter-bar { flex-wrap: wrap; gap: 8px; padding: 10px 14px; border: 0; border-bottom: 1px solid var(--border); border-radius: 0; min-height: 54px; }
.focus-side-controls { display: flex; border: 1px solid var(--focus-control); border-radius: 4px; padding: 2px; gap: 2px; }
body.account-authenticated .focus-side-controls .filter-btn { border: 0; border-radius: 2px; min-width: 0; padding: 5px 9px; font: 400 14px Inter, sans-serif; color: var(--muted-2); }
body.account-authenticated .focus-side-controls .filter-btn.active { color: var(--strong); background: var(--surface-3); box-shadow: none; }
body.account-authenticated #filter-toggle { border: 1px solid var(--focus-control); border-radius: 4px; padding: 7px 12px; }
body.account-authenticated #contract-count { margin-left: auto; max-width: none; font: 400 13px Inter, sans-serif; color: var(--muted); }
body.account-authenticated #sort-hint, body.account-authenticated #scanner-column-summary, body.account-authenticated .focus-contract-list-heading { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); }
body.account-authenticated #scanner-view-options .column-control-bar { display: contents; }
body.account-authenticated #scanner-columns-toggle { min-height: 32px; border-color: var(--focus-control); }
body.account-authenticated #scanner-view-options .table-wrap { border: 0; border-radius: 0; }
body.account-authenticated .focus-scan-context { border: 0; border-top: 1px solid var(--border); border-radius: 0; }
body.account-authenticated .filter-drawer { margin: 10px; }
body.account-authenticated #table-controls { padding: 10px 14px; }
.focus-row-expiry { display: block; white-space: nowrap; margin-top: 7px; margin-left: 32px; color: var(--muted); font: 400 12px Inter, sans-serif; }
.focus-row-strike { margin-left: 8px; color: var(--text); }
body.account-authenticated #scanner-table .score-badge { background: none !important; color: var(--text) !important; padding: 0; font-size: 14px; font-weight: 400; }
body.account-authenticated #scanner-table :is(.ticker-symbol, .tag) { font: 500 14px Inter, sans-serif; }
body.account-authenticated #scanner-table .score-badge { font-family: var(--focus-mono); }
body.account-authenticated #scanner-table .quality-pill { font-size: 9px; }
.focus-contract-list { min-width: 0; }
.focus-contract-list-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.focus-contract-list-heading h2 { font-size: 15px; font-weight: 600; }
.focus-contract-list-heading span { font-size: 10px; color: var(--muted); }
.focus-scan-context { border: 1px solid var(--border); border-radius: 4px; }
.focus-scan-context summary { padding: 10px 12px; font-size: 11px; color: var(--muted-2); cursor: pointer; }
.focus-scan-context .edge-brief { margin: 0; border: 0; border-top: 1px solid var(--border); border-radius: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.account-authenticated #scanner-view-options .filter-bar, body.account-authenticated #scanner-view-options .column-control-bar { background: var(--surface); border-color: var(--border); border-radius: 4px; }
body.account-authenticated #scanner-view-options .table-wrap { border-radius: 4px; border-color: var(--border); }
body.account-authenticated #scanner-table { min-width: 720px; }
body.account-authenticated #scanner-table [data-column="favorite"] { width: 54px; }
body.account-authenticated #scanner-table th { font-family: Inter, sans-serif; font-weight: 500; padding: 12px; font-size: 12px; letter-spacing: .4px; color: var(--muted); background: var(--surface-2); }
body.account-authenticated #scanner-table td { font-family: var(--focus-mono); padding: 12px; height: 80px; font-size: 14px; font-weight: 400; border-bottom: 1px solid var(--border); }
body.account-authenticated #scanner-table .is-inspected { background: color-mix(in srgb, var(--accent) 8%, var(--surface)); }
body.account-authenticated .contract-card-launch.is-inspected .focus-candidate { outline: 1px solid var(--accent); }
body.account-authenticated .focus-inspector { display: flex; flex-direction: column; position: sticky; top: 20px; padding: 22px; border: 0; border-left: 1px solid var(--border); background: var(--surface); border-radius: 0; min-width: 0; }
#scanner-inspector-content { display: contents; }
.focus-inspector-heading { order: 1; }
.focus-inspector-price { order: 2; display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.focus-inspector-price strong { font: 500 26px var(--focus-mono); }
.focus-inspector-price span { color: var(--muted); font-size: 13px; }
.focus-inspector-chart { order: 3; }
.focus-inspector-chart-link { order: 4; }
.focus-inspector-contract { order: 5; }
.focus-inspector-metrics { order: 6; }
#scanner-inspector-content > :not(.focus-inspector-heading, .focus-inspector-price, .focus-inspector-contract, .focus-inspector-metrics) { order: 7; }
.focus-inspector > .focus-inspector-note { order: 9; }
body.account-authenticated .focus-inspector-chart { height: 300px; margin: 8px 0 0; }
.focus-inspector-kicker { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 18px; color: var(--muted); font: 500 12px Inter, sans-serif; letter-spacing: .7px; text-transform: uppercase; }
.focus-inspector-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.focus-inspector-heading h2 { font-size: 20px; font-weight: 500; }
.focus-inspector-heading p { font-size: 14px; color: var(--muted); margin-top: 4px; }
.focus-inspector-heading .favorite-star-btn { margin-left: auto; }
.focus-inspector-contract { font: 400 14px/1.6 var(--focus-mono); color: var(--green); margin: 14px 0; }
.focus-inspector-contract.is-put { color: var(--red); }
.focus-inspector-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px 10px; padding: 15px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.focus-inspector-metrics dd { font: 400 14px var(--focus-mono); color: var(--strong); }
.focus-inspector-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 15px; }
.focus-inspector-actions button, .focus-inspector-back { border: 1px solid var(--focus-control); background: var(--surface-2); color: var(--text); padding: 9px 11px; font: 500 14px Inter, sans-serif; border-radius: 4px; cursor: pointer; }
.focus-inspector-back { display: none; }
.focus-inspector-chart { height: 245px; margin-top: 17px; overflow: hidden; border: 1px solid var(--border); border-radius: 4px; }
.focus-inspector-chart .tradingview-widget-container { width: 100%; height: 100%; }
.focus-inspector-chart .tradingview-widget-container__widget { height: calc(100% - 28px); }
.focus-inspector-chart .tradingview-widget-copyright { font-size: 9px; line-height: 24px; text-align: center; }
.focus-inspector-chart-link { display: inline-block; color: var(--accent); font-size: 14px; margin-top: 11px; }
.focus-inspector-note { color: var(--muted); font-size: 13px; line-height: 1.6; margin-top: 13px; }
body.account-authenticated :is(.tabs .tab, .focus-nav-toggle, .contract-card-launch, .scan-contract-row, .focus-inspector button, .mobile-nav-item):focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
body.account-authenticated :is(.focus-nav-label, .focus-side-controls, #filter-toggle, #scanner-columns-toggle, .focus-scan-context summary, .focus-account-panel button, .account-pill) { font-family: Inter, sans-serif; font-weight: 400; }
body.account-authenticated :is(#filter-toggle, #scanner-columns-toggle, .focus-scan-context summary) { font-size: 14px; }
body.account-authenticated #scanner-table td[data-column]:not([data-column="ticker"]) { font-weight: 400 !important; }
body.account-authenticated #scanner-table :is(.tag, .iv-rank-value) { font-weight: 400 !important; }
body.account-authenticated .tabs .tab-menu .tab { display: flex; gap: 10px; align-items: center; font: 400 14px/1.4 Inter, sans-serif; }
body.account-authenticated .mobile-tabs-menu .focus-nav-label { min-width: 0; overflow-wrap: anywhere; }
body.account-authenticated .focus-contract-list .scroll-hint { display: none; margin: 0; width: 100%; min-height: 34px; padding: 7px 12px; border: 0; border-bottom: 1px solid var(--border); border-radius: 0; background: var(--surface-2); color: var(--muted-2); font: 400 13px/1.5 Inter, sans-serif; letter-spacing: 0; text-transform: none; }
body.account-authenticated .focus-contract-list .has-horizontal-overflow .scroll-hint { display: flex; }
body.account-authenticated .focus-contract-list .table-wrap:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
@media (max-width: 1250px) and (min-width: 981px) {
  body.account-authenticated { --focus-sidebar: 192px; }
  .focus-scan-workspace { grid-template-columns: minmax(0, 1fr) 290px; }
  .focus-candidate { padding: 10px; }
  body.account-authenticated .account-pill { max-width: 115px; }
}
@media (max-width: 980px), (pointer: coarse) {
  body.account-authenticated, body.account-authenticated.focus-nav-collapsed { --focus-sidebar: 0px; }
  body.account-authenticated .app-header { display: grid; backdrop-filter: none; grid-template-columns: 48px minmax(0, 1fr) auto; grid-template-areas: "tabs brand account" "search search search" "status status status"; padding: 10px 16px 0; gap: 8px; align-items: center; }
  body.account-authenticated .logo { position: static; font-size: 18px; font-weight: 550; }
  body.account-authenticated.focus-nav-collapsed .focus-brand-label { display: inline; }
  body.account-authenticated .focus-brand-mark { display: none; }
  body.account-authenticated .tabs { display: block !important; position: static; padding: 0; width: 48px; border: 0; background: none; overflow: visible; }
  body.account-authenticated .tabs > .tab:not(#mobile-tabs-toggle), body.account-authenticated .tabs > .tab-group, body.account-authenticated .focus-nav-heading, body.account-authenticated .focus-nav-toggle { display: none !important; }
  body.account-authenticated .tabs > .mobile-tabs-toggle { display: flex !important; min-width: 44px; min-height: 44px; padding: 6px; justify-content: center; border: 1px solid var(--focus-control); font: 400 14px Inter, sans-serif; }
  body.account-authenticated .mobile-tabs-menu.hidden { display: none !important; }
  /* Detach the fixed overlay from the 42px header grid track. The old grid-area
     plus a backdrop-filter containing block reduced it to its 22px padding box. */
  body.account-authenticated .mobile-tabs-menu:not(.hidden) { display: grid !important; position: fixed; grid-area: auto; top: var(--mobile-tab-menu-top, 65px); left: 16px; right: 16px; width: calc(100vw - 32px); max-width: calc(100vw - 32px); max-height: calc(100dvh - var(--mobile-tab-menu-top, 65px) - 16px); overflow-y: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--focus-control); border-radius: 5px; padding: 10px; background: var(--surface); z-index: 350; }
  body.account-authenticated .mobile-tabs-menu .mobile-nav-item { white-space: normal; min-width: 0; justify-content: flex-start; border-radius: 4px; min-height: 44px; gap: 8px; font: 400 14px/1.4 Inter, sans-serif; }
  body.account-authenticated .header-search { width: 100%; max-width: none; min-width: 0; height: 46px; padding: 0 4px 0 12px; gap: 6px; }
  body.account-authenticated .hs-input { font-size: 16px; min-width: 0; }
  body.account-authenticated .hs-go { min-height: 36px; padding: 0 10px; font-size: 12px; }
  body.account-authenticated .hs-clear { min-width: 36px; min-height: 44px; }
  body.account-authenticated .focus-search-label, body.account-authenticated .hs-kbd { display: none; }
  body.account-authenticated .market-status { margin: 0; justify-self: stretch; max-width: 100%; min-height: 36px; padding: 4px 0 8px; border: 0; border-radius: 0; background: none; text-align: left; font-size: 12px; white-space: normal; }
  body.account-authenticated .market-status .ms-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  body.account-authenticated .ms-mobile-text { display: inline; }
  body.account-authenticated .market-status::after { content: "ⓘ"; margin-left: auto; color: var(--muted-2); font-size: 15px; }
  body.account-authenticated .market-status .ms-text { max-width: none; }
  body.account-authenticated .alert-badges { display: flex; width: auto; margin: 0; overflow: visible; }
  body.account-authenticated .focus-account-toggle { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 8px 10px; border: 1px solid var(--focus-control); border-radius: 5px; background: var(--surface-2); color: var(--text); font: 500 14px Inter, sans-serif; cursor: pointer; }
  body.account-authenticated .focus-account-panel { display: none; }
  body.account-authenticated .focus-account-panel.is-open { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 10px; position: fixed; grid-area: auto; z-index: 360; top: var(--focus-account-top, 62px); left: 16px; right: 16px; width: calc(100vw - 32px); max-height: calc(100dvh - var(--focus-account-top, 62px) - 16px); overflow: auto; padding: 12px; border: 1px solid var(--focus-control); border-radius: 5px; background: var(--surface); }
  body.account-authenticated .focus-account-title { display: flex; align-items: center; font-size: 15px; font-weight: 700; }
  body.account-authenticated .focus-account-panel .theme-toggle { width: 44px; height: 44px; min-height: 44px; border-color: var(--focus-control); }
  body.account-authenticated .focus-account-panel .account-controls { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  body.account-authenticated .focus-account-panel .account-pill { display: flex; justify-content: space-between; width: 100%; max-width: none; white-space: normal; border-radius: 5px; }
  body.account-authenticated .focus-account-panel .account-pill-label { overflow-wrap: anywhere; }
  body.account-authenticated .focus-account-panel .account-name-tools { display: flex; }
  body.account-authenticated .focus-account-panel :is(.account-action, .account-edit-action) { width: 100%; min-height: 44px; border-radius: 5px; border-color: var(--focus-control); font-size: 13px; }
  body.account-authenticated .focus-account-panel .account-visibility-action { min-width: 44px; min-height: 44px; border-color: var(--focus-control); }
  body.account-authenticated .focus-account-panel .account-edit-action::after { content: " display name"; }
  body.account-authenticated .focus-account-panel .account-edit-action { display: block; }
  body.account-authenticated .focus-market-details { left: 16px; right: 16px; width: calc(100vw - 32px); }
  body.account-authenticated :is(.focus-account-toggle, .focus-account-panel button, .market-status):focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
  body.account-authenticated .body-content { margin-left: 0; padding: 12px 16px; }
  /* These nested grids must shrink within the mobile workspace, with wide
     tables scrolling locally rather than setting the document's minimum width. */
  body.account-authenticated #tab-signals .signals-layout,
  body.account-authenticated #tab-analytics .analytics-layout { grid-template-columns: minmax(0, 1fr); }
  body.account-authenticated :is(#tab-signals, #tab-analytics) .panel { min-width: 0; max-width: 100%; }
  body.account-authenticated :is(#tab-signals, #tab-analytics) .table-wrap { max-width: 100%; }
  body.account-authenticated #tab-signals :is(.signal-alert-form, .signal-alert-form-grid, .signal-field, .signal-field input, .signal-field select) { min-width: 0; }
  body.account-authenticated .focus-workspace-heading { margin-bottom: 8px; }
  .focus-scan-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 12px; margin-bottom: 16px; font-size: 13px; }
  .focus-scan-metrics strong { margin-left: 3px; font-size: 13px; }
  .focus-candidates-disclosure > summary { min-height: 44px; padding: 12px 0; }
  .focus-candidates-disclosure > summary span { font-size: 12px; }
  body.account-authenticated #scanner-view-options .filter-bar { padding: 8px; }
  body.account-authenticated .focus-side-controls .filter-btn { min-height: 36px; padding: 4px 6px; font: 500 11px Inter, sans-serif; }
  body.account-authenticated #filter-toggle, body.account-authenticated #scanner-columns-toggle { min-height: 44px; padding: 6px 8px; font: 500 12px Inter, sans-serif; }
  body.account-authenticated #contract-count { margin-left: 0; order: 4; flex-basis: 100%; }
  body.account-authenticated .filter-bar .column-control-shell { margin-left: auto; }
  .focus-scan-workspace { border: 0; }
  body.account-authenticated .focus-contract-list { border: 1px solid var(--border); }
  body.account-authenticated .focus-inspector { border: 1px solid var(--border); padding: 16px; }
  body.account-authenticated .focus-inspector.is-mobile-open { display: flex; }
  body.account-authenticated .fb-description { display: none; }
  body.account-authenticated .fb-ratio { grid-column: 2; grid-row: 1; text-align: right; }
  .fb-ratio strong { font-size: 14px; }
  .fb-ratio span { margin-top: 2px; font-size: 11px; }
  body.account-authenticated .fb-caption { grid-column: 1 / -1; grid-row: 3; font-size: 12px; gap: 6px 12px; }

  body.account-authenticated .focus-workspace-heading p { display: none; }
  body.account-authenticated .scanner-topline { gap: 12px; }
  body.account-authenticated .scanner-subnav { flex-wrap: nowrap; gap: 18px; }
  body.account-authenticated .scanner-subtab { flex: 0 0 auto; min-height: 44px; padding: 8px 0; font-size: 14px; }
  .focus-workspace-label { display: none; }
  body.account-authenticated .context-row { gap: 8px; margin-bottom: 16px; }
  body.account-authenticated .flow-balance { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; padding: 12px; }
  body.account-authenticated .fb-headline { grid-column: 1; grid-row: 1; align-self: center; margin: 0; font-size: 15px; line-height: 1.3; letter-spacing: -.4px; }
  body.account-authenticated .fb-headline span { font-size: inherit; }
  body.account-authenticated .fb-barwrap { grid-column: 1 / -1; grid-row: 2; align-self: center; }
  body.account-authenticated .fb-bar { height: 16px; }
  body.account-authenticated .fb-caption { margin: 0; white-space: normal; overflow: visible; }
  body.account-authenticated .news-ticker { grid-template-columns: minmax(0, 1fr) auto; gap: 0 8px; padding: 0; border: 0; border-block: 1px solid var(--border); border-radius: 0; background: none; }
  body.account-authenticated .news-ticker-label { grid-column: 1; grid-row: 1; font-size: 13px; line-height: 36px; }
  body.account-authenticated .news-ticker-pause { grid-column: 2; grid-row: 1; border: 0; min-height: 36px; }
  body.account-authenticated .news-ticker-window { grid-column: 1 / -1; grid-row: 2; }
  body.account-authenticated .news-ticker a { font-size: 14px; }
  body.account-authenticated #ticker-grid { grid-template-columns: none; grid-auto-columns: 235px; grid-auto-flow: column; overflow-x: auto; padding: 3px 2px 10px; scroll-snap-type: x proximity; }
  .contract-card-launch { scroll-snap-align: start; }
  .focus-scan-workspace { display: flex; flex-direction: column; gap: 18px; }
  .focus-contract-list { width: 100%; }
  body.account-authenticated .focus-inspector { display: none; position: static; width: 100%; }
  body.account-authenticated .focus-inspector.is-mobile-open { display: flex; order: -1; scroll-margin-top: var(--focus-header-scroll-offset, 12px); }
  body.account-authenticated #scanner-view-options [data-contract-card-id] { scroll-margin-top: var(--focus-header-scroll-offset, 12px); }
  .focus-inspector-back { display: inline-block; }
  body.account-authenticated .focus-inspector-chart { height: 360px; }
}
@media (max-width: 480px) {
  body.account-authenticated .account-pill, body.account-authenticated .hs-kbd { display: none; }
  body.account-authenticated .hs-input { font-size: 16px; }
  body.account-authenticated .focus-search-label { font-size: 9px; }
  body.account-authenticated .account-controls { gap: 4px; }
}

@media (min-width: 981px) and (pointer: fine) {
  body.account-authenticated.account-pro-access .tabs > .tab.premium-pro-only:not(.hidden) { display: flex !important; }
  body.account-authenticated.account-master.account-master-actual .tabs > .tab-group.master-favorites-only.master-preview-only:not(.hidden) { display: block !important; }
}
@media (max-width: 980px), (pointer: coarse) {
  body.account-authenticated .tabs > .tab-group[data-nav-group] { display: none !important; }
}
