/* Tops (routes_tops.py / static/tops.js): the owner's standalone Home Screen app. Standalone page, so the shared tokens are
   restated here with the same values as design.css / gainers.css (ink, lines, card, up/down, radii, General Sans + Inter);
   the tile is the gx card (gainers.css) at reading size. Light is the default; dark via localStorage ct-theme. */
/* Bottom safe area (Jason, Oct 23 4:22 PM: empty dark band under the tab bar in a Safari tab). The home-indicator inset is only
   added when the app runs from the Home Screen (display-mode standalone / navigator.standalone -> html.tp-sa); in a browser
   tab the toolbar already sits below the page, so the nav sits flush and --tp-sab is 0. --tp-env-sab is a test hook only
   (shots emulate the iPhone inset with it); real devices use env(). */
:root{--tp-sab:0px}
html.tp-sa{--tp-sab:calc(var(--tp-env-sab,env(safe-area-inset-bottom,0px)) * .55)}
@media (display-mode:standalone){:root{--tp-sab:calc(var(--tp-env-sab,env(safe-area-inset-bottom,0px)) * .55)}}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/static/fonts/inter-var-latin.woff2) format("woff2")}
@font-face{font-family:"General Sans";font-style:normal;font-weight:600;font-display:swap;src:url(/static/fonts/general-sans-600.woff2) format("woff2")}
@font-face{font-family:"General Sans";font-style:normal;font-weight:500;font-display:swap;src:url(/static/fonts/general-sans-500.woff2) format("woff2")}
:root{--f-body:"Inter",system-ui,-apple-system,sans-serif;--f-head:"General Sans","Inter",system-ui,-apple-system,sans-serif;
 /* Identity B "Midnight + electric cyan" (Jason picked Oct 23 2026): dark is the default, light is the alternate. */
 --bg:#060B19;--card:#0B1226;--surface-2:#0F1830;--ink:#EEF3FF;--ink-2:#A9B6D3;--ink-3:#8492B4;--line:#1B2745;--up:#35D99A;--down:#FF6A5C;
 --navy:#060B19;--cy:#38BDF8;--acc:#38BDF8;--acc-ink:#03131A;--lime:#B8F15A;--r:14px;--rs:10px;--gap:16px;--shadow:none;
 --sel-bg:#38BDF8;--sel-ink:#060B19;--cm-c:#EEF3FF;--cm-d:#B8F15A;--grid-op:.19;--nav-h:48px;
 --s-pre-bg:rgba(56,189,248,.16);--s-pre:#7FE0E1;--s-reg-bg:rgba(184,241,90,.14);--s-reg:#C9F57E;--s-post-bg:rgba(124,140,248,.18);--s-post:#AEB8FF;--s-cl-bg:rgba(255,255,255,.07);--s-cl:#A9B6D3;
 --flash-up:rgba(53,217,154,.18);--flash-dn:rgba(255,106,92,.16);color-scheme:dark}
html[data-theme=light]{--bg:#E5ECF6;--card:#F5F8FD;--surface-2:#DCE5F3;--ink:#0A1124;--ink-2:#404B66;--ink-3:#56627E;--line:#CFD9EA;--up:#0F7F4E;--down:#C8362B;
 --shadow:0 1px 2px rgba(10,17,36,.05),0 4px 14px rgba(10,17,36,.06); --acc:#0284C7;--acc-ink:#FFFFFF;--sel-bg:#0A1124;--sel-ink:#FFFFFF;--cm-c:#0A1124;--cm-d:#73A824;--grid-op:.19;
 --s-pre-bg:#D4F0F0;--s-pre:#0B6566;--s-reg-bg:#DDF4BA;--s-reg:#2F5A06;--s-post-bg:#DCE0FA;--s-post:#3440A8;--s-cl-bg:#CFD9EA;--s-cl:#404B66;
 --flash-up:rgba(15,127,78,.14);--flash-dn:rgba(200,54,43,.12);color-scheme:light}
html[data-theme=light],html[data-theme=light] body{background-color:var(--bg);background-image:linear-gradient(180deg,#DCE5F2 0px,var(--bg) 130px);}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
button{font:inherit;color:inherit}
.tp-app{max-width:1240px;margin:0 auto;padding:calc(env(safe-area-inset-top,0px) + 14px) 16px calc(var(--tp-sab) + 28px)}
.tp-hd{display:flex;align-items:center;gap:10px;margin:4px 0 14px}
.tp-mk .bcm{display:block;width:34px;height:auto}
.tp-t{margin:0;font:600 30px/1.1 var(--f-head);letter-spacing:-.015em;color:var(--ink)}
/* pinned status: the session is always on screen */
.tp-stick{position:sticky;top:0;z-index:20;margin:0 -16px;padding:calc(env(safe-area-inset-top,0px) + 8px) 16px 10px;background:var(--bg)}
.tp-stick.stuck{box-shadow:0 1px 0 var(--line)}
.tp-stat{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tp-box{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding:9px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}
html[data-theme=light] .tp-box{background:#DCE5F3}
.tp-box-r{align-items:flex-end;text-align:right}
.tp-lab{font:500 12px/1.2 var(--f-body);color:var(--ink-2)}
.tp-val{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 12.5px/1.25 var(--f-body);color:var(--ink);font-variant-numeric:tabular-nums}
.tp-cd{font:500 12px/1.2 var(--f-body);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.tp-pill{display:inline-flex;align-items:center;gap:7px;height:24px;padding:0 10px 0 9px;border-radius:999px;font:700 13px/1 var(--f-body);white-space:nowrap}
.tp-pill i{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}
.tp-pill.ses-pre{background:var(--s-pre-bg);color:var(--s-pre)}.tp-pill.ses-regular{background:var(--s-reg-bg);color:var(--s-reg)}
.tp-pill.ses-post{background:var(--s-post-bg);color:var(--s-post)}.tp-pill.ses-closed{background:var(--s-cl-bg);color:var(--s-cl)}
.tp-pill.live i{animation:tpp 1.8s infinite}
@keyframes tpp{0%{box-shadow:0 0 0 0 currentColor}70%{box-shadow:0 0 0 6px transparent}100%{box-shadow:0 0 0 0 transparent}}
.tp-livetag{display:inline-block;margin-left:6px;padding:3px 7px;border-radius:999px;background:var(--cy);color:#0A1124;font:700 10px/1 var(--f-body);letter-spacing:.08em;text-transform:uppercase;vertical-align:1px}
/* chip rows: one non-wrapping row per group, 32px chips in 44px tap areas, 8px gaps, 16px above and below */
.tp-chips,.tp-sesrow{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;margin:10px -16px 0;padding:0 16px}
.tp-chips::-webkit-scrollbar,.tp-sesrow::-webkit-scrollbar{display:none}
.tp-sub{margin:8px 0 12px}.tp-sub .tp-sesrow{margin-top:0}.tp-sub .tp-seg+.tp-sesrow{margin-top:8px}
.tp-chip{flex:none;position:relative;height:32px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:600 14px/1 var(--f-body);cursor:pointer}
.tp-chip::after{content:"";position:absolute;inset:-6px 0}
.tp-chip.on{background:var(--sel-bg);border-color:transparent;color:var(--sel-ink)}
.tp-chip.q{height:30px;padding:0 11px;font-size:13px;font-weight:500;color:var(--ink-2)}
.tp-chip.q.on{background:var(--card);color:var(--ink);border-color:var(--ink);font-weight:600}
.tp-seg{display:grid;grid-template-columns:1fr 1fr;max-width:420px;padding:3px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}
.tp-seg button{height:34px;padding:0 12px;border:0;border-radius:9px;background:none;font:600 14px/1 var(--f-body);color:var(--ink-2);cursor:pointer}
.tp-seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(10,17,36,.12)}
.tp-div{flex:none;width:1px;height:20px;background:var(--line)}
/* the grid: 2 columns at phone width, 3 from 760, 4 from 1080 */
.tp-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:760px){.tp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1080px){.tp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.tp-card{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);color:var(--ink);text-decoration:none;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;will-change:transform}
.tp-card:active{background:var(--surface-2)}
.tp-top{display:flex;align-items:center;gap:10px;min-width:0;margin-bottom:2px}
.tp-id{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.tp-tk{font:700 16px/1.15 var(--f-body);letter-spacing:-.005em;white-space:nowrap}
.tp-nm{font:400 13px/1.2 var(--f-body);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tp-px{align-self:flex-start;margin:0 -4px;padding:0 4px;font:700 28px/1.05 var(--f-body);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:6px;transition:background-color .6s,color .6s}
.tp-sp{flex:none;width:56px;height:24px;margin-bottom:4px}
.tp-sp path{fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tp-sp .up{stroke:var(--up)}.tp-sp .dn{stroke:var(--down)}.tp-sp .base{stroke:var(--line);stroke-width:1;stroke-dasharray:2 3}
.tp-ch{display:flex;align-items:center;gap:4px;font:600 12.5px/1.25 var(--f-body);font-variant-numeric:tabular-nums;flex-wrap:wrap;row-gap:0;margin-top:-4px}.tp-ch span{white-space:nowrap}
.tp-ch.up{color:var(--up)}.tp-ch.dn{color:var(--down)}.tp-ch.na{color:var(--ink-3);font-weight:500}
.tp-ch svg{width:14px;height:14px;flex:none}
.tp-x{display:flex;flex-wrap:wrap;gap:4px;min-height:0;margin-top:1px}
.tp-x:empty{display:none}
.tp-tag{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:5px;background:var(--surface-2);color:var(--ink-2);font:600 10.5px/1 var(--f-body);white-space:nowrap}
html[data-theme=light] .tp-tag:not(.halt):not(.res):not(.sq){background:#DCE5F3}   /* the coloured halt / resumed / score tags keep their own fill */
.tp-tag.halt{background:var(--down);color:#fff}.tp-tag.res{background:var(--s-post-bg);color:var(--s-post)}
.tp-tag.sq{background:var(--s-pre-bg);color:var(--s-pre)}
.tp-sqv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font:500 12px/1.25 var(--f-body);color:var(--ink-2);font-variant-numeric:tabular-nums}
.tp-sqv b{display:block;font:700 14px/1.2 var(--f-body);color:var(--ink)}
.tp-score{flex:none;align-self:flex-start;min-width:30px;height:22px;padding:0 6px;border-radius:7px;background:var(--sel-bg);color:var(--sel-ink);font:700 12.5px/22px var(--f-body);text-align:center;font-variant-numeric:tabular-nums}
/* logo: the shared .lgo plate, 44px, soft square; fallback initials on a soft square */
.lgo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:44px;height:44px;border-radius:10px;background:#fff;border:1px solid var(--line);overflow:hidden}
.lgo img{display:block;object-fit:contain;width:36px;height:36px}
.lgo.lgo-fill img{width:44px;height:44px;object-fit:cover}
.lgo.mono{background:#EEF1F4;border-color:transparent;color:#0A1124;font:700 15px/1 var(--f-body);letter-spacing:-.01em}
html[data-theme=dark] .lgo.mono{background:#22262A;color:#E3E7EA}
/* live motion: FLIP reorder, enter / leave, price flash, new-entry glow (all off with reduced motion) */
.tp-card.tp-enter{animation:tpin .38s cubic-bezier(.2,.7,.2,1) both}
.tp-card.tp-leave{position:absolute;margin:0;pointer-events:none;animation:tpout .3s ease both}
.tp-card.tp-new{box-shadow:0 0 0 2px var(--cy),var(--shadow)}
.tp-px.fu{background:color-mix(in srgb,var(--flash-up) 45%,transparent);color:var(--up);transition:none}.tp-px.fd{background:color-mix(in srgb,var(--flash-dn) 45%,transparent);color:var(--down);transition:none}
@keyframes tpin{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@keyframes tpout{to{opacity:0;transform:scale(.94)}}
@media (prefers-reduced-motion:reduce){.tp-card,.tp-card.tp-enter,.tp-card.tp-leave{animation:none!important;transition:none!important}.tp-pill.live i{animation:none}}
.tp-none{grid-column:1/-1;margin:24px 0;color:var(--ink-2);font-size:15px;text-align:center}
.tp-foot{margin:24px 0 0;font:400 12.5px/1.5 var(--f-body);color:var(--ink-2)}
.tp-note{display:inline-block;margin:0 0 4px;padding:2px 8px;border-radius:6px;background:var(--lime);color:#0A1124;font:700 11px/1.4 var(--f-body);letter-spacing:.04em;text-transform:uppercase}
.tp-net{position:fixed;left:50%;bottom:calc(var(--tp-sab) + 16px);transform:translateX(-50%);z-index:40;padding:8px 14px;border-radius:999px;background:var(--navy);color:#fff;font:600 13px/1 var(--f-body)}
/* detail sheet */
.tp-sheet{position:fixed;inset:0;z-index:50}
.tp-sheet-bg{position:absolute;inset:0;background:rgba(10,17,36,.42)}
.tp-sheet-c{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;padding:10px 18px calc(var(--tp-sab) + 22px);background:var(--card);border-radius:20px 20px 0 0;animation:tpup .28s cubic-bezier(.2,.7,.2,1)}
@media(min-width:760px){.tp-sheet-c{left:50%;right:auto;bottom:auto;top:50%;width:560px;transform:translate(-50%,-50%);border-radius:20px;animation:none}}
@keyframes tpup{from{transform:translateY(30%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.tp-sheet-c{animation:none}}
.tp-grab{width:40px;height:5px;margin:0 auto 12px;border-radius:3px;background:var(--line)}
.tp-sh-hd{display:flex;align-items:center;gap:12px}
.tp-sh-hd .tp-id{flex:1}
.tp-x-btn{width:44px;height:44px;border:0;border-radius:50%;background:none;font-size:22px;color:var(--ink-2);cursor:pointer}
.tp-sh-px{display:flex;align-items:baseline;gap:10px;margin:14px 0 6px}
.tp-sh-px .tp-px{font-size:32px}
.tp-big{width:100%;height:96px;margin:6px 0 10px}
.tp-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}
.tp-kv div{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.tp-kv span{display:block;font:500 12px/1.2 var(--f-body);color:var(--ink-2)}
.tp-kv b{display:block;margin-top:4px;font:700 16px/1.2 var(--f-body);font-variant-numeric:tabular-nums}
.tp-rng{margin:12px 0}
.tp-rng .bar{position:relative;height:6px;border-radius:3px;background:var(--line);margin:8px 0 6px}
.tp-rng .dot{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--navy);border:2px solid var(--card)}
html[data-theme=dark] .tp-rng .dot{background:var(--cy)}
.tp-rng .ends{display:flex;justify-content:space-between;font:500 12.5px/1 var(--f-body);color:var(--ink-2);font-variant-numeric:tabular-nums}
.tp-cat{display:block;margin:12px 0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none}
.tp-cat small{display:block;margin-top:4px;color:var(--ink-2);font-size:12.5px}
.tp-open{display:flex;align-items:center;justify-content:center;height:48px;margin-top:14px;border-radius:12px;background:var(--sel-bg);color:var(--sel-ink);font:600 15px/1 var(--f-body);text-decoration:none}
.tp-sh-note{margin:10px 0 0;font-size:12px;line-height:1.45;color:var(--ink-2)}
/* sign-in */
.tp-in{min-height:100vh;display:flex;align-items:center;justify-content:center}
.tp-in-c{width:100%;max-width:360px;padding:24px 20px;text-align:center}
.tp-in-mk .bcm{width:64px;height:auto}
.tp-in-sub{color:var(--ink-2);margin:8px 0 24px}
.tp-in-f{display:flex;flex-direction:column;gap:10px;text-align:left}
.tp-in-f label{font:600 13px/1 var(--f-body);color:var(--ink-2)}
.tp-in-f input{height:48px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font:400 16px/1 var(--f-body)}
.tp-in-f button{height:48px;border:0;border-radius:12px;background:var(--sel-bg);color:var(--sel-ink);font:600 16px/1 var(--f-body);cursor:pointer}
.tp-err{margin:0;color:var(--down);font-size:14px}

.tp-tk{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-px.sm{font-size:24px}
@media (max-width:520px){.tp-px.sm{font-size:22px}}
.tp-subl{font-size:12px;margin-top:-4px}
/* tile logo: the shared CLogo component (static/clogo.js) as a 40px rounded square (round everywhere else) */
/* Oct 23 logo pass: the tile logo is the same 28 px light circle as every other Systematic surface (see clogo.css);
   no image or an unreadable one -> ticker initials on the theme's letter circle */
/* View all / Show fewer: full width, rounded, cyan (Jason's reference), right under the tiles; room for more content below */
.tp-more{margin:14px 0 0}.tp-more:empty{display:none}
.tp-more-b{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:50px;border:0;border-radius:999px;background:var(--cy);color:#0A1124;font:700 16px/1 var(--f-body);cursor:pointer;-webkit-tap-highlight-color:transparent}
.tp-more-b .n{font-weight:600;opacity:.75}.tp-more-b .ar{font-size:20px;line-height:1;margin-top:-2px}
.tp-more-b:active{filter:brightness(.92)}
.tp-more-b.less{background:transparent;color:var(--cy);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--cy) 55%,transparent)}
html[data-theme=light] .tp-more-b{background:#38BDF8}html[data-theme=light] .tp-more-b.less{background:transparent;color:#0F8586;box-shadow:inset 0 0 0 1.5px #0F8586}
.tp-more-b:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
/* live price flash (1 s ticks): short and subtle; off with reduced motion (JS also skips it) */
.ss-px{border-radius:6px;transition:background-color .6s,color .6s}
.ss-px.fu{background:color-mix(in srgb,var(--flash-up) 45%,transparent);color:var(--up);transition:none}.ss-px.fd{background:color-mix(in srgb,var(--flash-dn) 45%,transparent);color:var(--down);transition:none}
@media (prefers-reduced-motion:reduce){.tp-px,.ss-px{transition:none!important}.tp-px.fu,.tp-px.fd,.ss-px.fu,.ss-px.fd{background:none}}

/* app name (renamed 9:36 Oct 23): Systematic Strategies eyebrow over the view title */
.tp-hd-tx{min-width:0}.tp-appname{font:600 11px/1.2 var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ================= Identity B (Oct 23 2026): lockup, hairlines, cyan notch, slash motif, background grid, bottom nav ================= */
/* Background: the splash's diagonal hairline grid behind every screen. One fixed layer (no repaint on scroll, no motion),
   low opacity via --grid-op; cards are opaque so numbers stay crisp on top. */
body.tp::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:var(--grid-op);
 background-image:repeating-linear-gradient(115deg,var(--acc) 0 1px,transparent 1px 30px);transform:translateZ(0)}
.tp-app,.tp-nav,.tp-sheet,.tp-net,.pro-hd-shell,body.tp>.wrap,body.tp>main,.tp-card,.card{position:relative;z-index:1}
.tp-sheet{position:fixed}.tp-nav{position:fixed}
.tp-stick{background:var(--bg)}
/* 3-line lockup */
.tp-hd{display:block;margin:6px 0 14px;padding:4px 2px 0}
.ss-lk{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}
.ss-lk .bcm{display:block;width:44px;height:auto;flex:none}
/* Lockup = shared slash spec (static/lockup_slash.css, wip-hero-fun 925a3d4, copied unchanged). --wm drives --slk-wm. */
.ss-w{--wm:26px;--slk-tr:.045em;--slk-gap-top:.22;--slk-sl-w:.915em;--slk-lh:1.25;--slk-wm:var(--wm);--slk-c1:var(--ink);--slk-c2:var(--ink-2);--slk-sl-c:#38BDF8;font-family:var(--f-head);font-weight:600}
.ss-1{white-space:nowrap}.ss-1 b{font-weight:600;color:var(--cm-d)}
html[data-theme=light] .ss-w{--slk-sl-c:#38BDF8}  /* darker teal on light surfaces: 4.7:1 on #F2F5FB, 5.1:1 on #FFF (#38BDF8 is ~1.9:1) */
.tp-t{margin:14px 0 0;font:600 28px/1.1 var(--f-head)}.tp-t::before,.ss-sec>span:first-child::before,.ss-sec.in::before,.hm-h h2::before,.ss-sh-hd>b::before,.ss-g>summary>b::before,.ss-mk .tp-lab::before,.ss-hero .tp-lab::before,.te-lab::before{content:"/ ";color:var(--acc);font-weight:600}  /* cyan slash in front of every header & section/subsection header (Jason, Oct 23) */
.tp-appname{display:none}
/* Jason, Oct 23: "just a different theme" - main-app components and cards unchanged; only colours, faint grid and lockup differ */
/* spacing rule: nothing against an edge; section headers inset to card padding; footnotes card-padded */
.tp-foot,.ss-foot{margin:22px 0 0;padding:14px 16px;font:400 12.5px/1.45 var(--f-body);color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.tp-foot:empty{display:none}
.ss-sec{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:22px 0 10px;padding:0 16px;font:600 16px/1.2 var(--f-head);color:var(--ink)}
.ss-sec a,.ss-sec button{font:500 13px/1 var(--f-body);letter-spacing:0;text-transform:none;color:var(--acc);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:none}
.ss-card{background:var(--card);border-radius:var(--r);padding:14px 16px}
/* bottom nav (iOS tab bar): safe-area aware, cyan active state, no filled box */
.tp-app{padding-bottom:calc(var(--tp-sab) + var(--nav-h) + 28px)}
.tp-nav{left:0;right:0;bottom:0;z-index:40;display:flex;justify-content:center;background:color-mix(in srgb,var(--bg) 88%,transparent);
 -webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);border-top:1px solid var(--line);padding-bottom:var(--tp-sab)}
.tp-nav-in{display:grid;grid-template-columns:repeat(5,1fr);width:100%;max-width:560px;height:var(--nav-h)}
.tp-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--ink-3);text-decoration:none;font:500 10px/1 var(--f-body);letter-spacing:.02em;-webkit-tap-highlight-color:transparent}
.tp-nav svg{width:20px;height:20px;display:block}
.tp-nav a[aria-current=page]{color:var(--acc)}
.tp-nav a[aria-current=page]::before{content:"";position:absolute;top:-1px;left:30%;right:30%;height:2px;background:var(--acc)}
.tp-nav a:focus-visible{outline:2px solid var(--acc);outline-offset:-4px;border-radius:var(--rs)}
@media(min-width:760px){.tp-nav-in{max-width:640px}.tp-nav a{flex-direction:row;gap:8px;font-size:13px}}
html.tp-splash .tp-nav{display:none}
@media (prefers-reduced-motion:reduce){body.tp::before{transform:none}}
/* views */
[data-view][hidden]{display:none!important}
/* launch splash (identity B): stacked lockup on the grid; the nav is hidden while it shows */
.ss-splash{display:none}
html.tp-splash .ss-splash{position:fixed;inset:0;z-index:60;display:none;pointer-events:none!important;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);transition:opacity .25s}
html.tp-splash .ss-splash::before{content:"";position:absolute;inset:0;opacity:.2;background-image:repeating-linear-gradient(115deg,var(--acc) 0 1px,transparent 1px 30px)}
.ss-splash .ss-lk{position:relative;flex-direction:column;gap:26px;padding:24px}
.ss-lk-xl .ss-w{--wm:52px}
.ss-splash-ft{position:absolute;bottom:calc(var(--tp-sab) + 48px);font:500 11px/1 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
html.tp-splash.out .ss-splash{opacity:0}
@media (prefers-reduced-motion:reduce){.ss-splash{transition:none}}
/* ---------- B views: Advanced / Signals / Journal / Guide ---------- */
.ss-pick,.ss-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:12px -16px 0;padding:0 16px 2px}.ss-pick::-webkit-scrollbar,.ss-chips::-webkit-scrollbar{display:none}
.ss-filt .ss-chips+.ss-chips{margin-top:8px}
.ss-q{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:12px}
.ss-q-l{display:flex;flex-direction:column;gap:6px}.ss-sym{font:600 22px/1 var(--f-head);letter-spacing:.04em}.ss-age{font:500 11px/1 var(--f-body);color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase}
.ss-q-r{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.ss-px{font:700 32px/1 var(--f-body);letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.ss-pc{font:600 15px/1 var(--f-body);font-variant-numeric:tabular-nums}
.up{color:var(--up)}.dn{color:var(--down)}
.ss-seg{display:inline-flex;gap:6px;margin:12px 0 10px}.ss-seg button{font:600 12.5px/1 var(--f-body);padding:8px 12px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card);color:var(--ink-2);cursor:pointer}
.ss-seg button.on{background:var(--sel-bg);border-color:transparent;color:var(--sel-ink)}
.ss-cw{position:relative;margin-top:10px}
.ss-chart{height:380px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--card)}
@media(min-width:760px){.ss-chart{height:520px}}
/* crosshair readout: one line over the chart, top-left (time, O/H/L/C, rating) */
.ss-cbar{display:flex;align-items:center;gap:8px;min-height:36px;margin-bottom:4px}
.ss-ro{flex:1;min-width:0;display:flex;gap:4px 10px;flex-wrap:nowrap;overflow:hidden;white-space:nowrap;pointer-events:none;font:500 12px/1.2 var(--f-body);color:var(--ink-2);font-variant-numeric:tabular-nums}
.ss-ro b{font-weight:600;color:var(--ink)}.ss-ro .r.u{color:var(--up)}.ss-ro .r.d{color:var(--down)}
.ss-fs{flex:none;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink-2);cursor:pointer}
.ss-fs:active{background:var(--surface-2)}
/* tap-to-fullscreen: CSS full-viewport fallback (iPhone Safari has no element fullscreen), landscape-friendly */
.ss-cw.fs{position:fixed;inset:0;z-index:80;margin:0;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top,0px) + 6px) calc(env(safe-area-inset-right,0px) + 8px) var(--tp-sab) calc(env(safe-area-inset-left,0px) + 12px);background:var(--card)}
.ss-cw.fs .ss-chart{flex:1;height:auto;min-height:0;border:0;border-radius:0}
html.ss-fs-on,html.ss-fs-on body{overflow:hidden}
.ss-age.live{color:var(--up);display:inline-flex;align-items:center;gap:6px}.ss-age.live i{width:7px;height:7px;border-radius:50%;background:var(--up)}
.ss-attr{margin:6px 16px 0;font:400 10.5px/1.45 var(--f-body);color:var(--ink-3);text-align:right}.ss-attr a{color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:2px}
.ss-mtf{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.ss-m{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 2px;background:var(--card);border:1px solid var(--line);border-radius:var(--rs);text-align:center}
.ss-m span{font:500 11px/1 var(--f-body);color:var(--ink-3)}.ss-m b{font:700 10.5px/1.15 var(--f-body);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2)}.ss-m b.up{color:var(--up)}.ss-m b.dn{color:var(--down)}
.ss-mtf-n{grid-column:1/-1;margin:4px 16px 0;font:400 12px/1.45 var(--f-body);color:var(--ink-2)}
.ss-flag{font:600 11px/1 var(--f-body);letter-spacing:.04em;text-transform:none;padding:5px 8px;border-radius:var(--rs);color:var(--down);background:color-mix(in srgb,var(--down) 14%,transparent)}
.ss-list{padding:0}.ss-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;background:none;border:0;border-top:1px solid var(--line);color:var(--ink);text-align:left;font:inherit;cursor:pointer}
.ss-row:first-child{border-top:0}.ss-row.st{cursor:default}
.ss-row-l{display:flex;flex-direction:column;gap:4px;min-width:0}.ss-row-l b{font:600 15px/1.2 var(--f-body)}.ss-row-l em{font-style:normal;font-weight:500;color:var(--ink-2)}
.ss-row-l small{font:400 12px/1.35 var(--f-body);color:var(--ink-3)}small.warn,.ss-mut.warn{color:color-mix(in srgb,var(--down) 70%,var(--ink-2))}
.ss-row-r{display:flex;align-items:center;gap:8px;flex:none;font-variant-numeric:tabular-nums}.ss-chev{font-style:normal;color:var(--ink-3);font-size:20px;line-height:1}
.ss-pill{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:var(--rs);font:700 11.5px/1 var(--f-body);letter-spacing:.04em;white-space:nowrap}
.ss-pill.buy{color:var(--up);background:color-mix(in srgb,var(--up) 15%,transparent)}.ss-pill.sell{color:var(--down);background:color-mix(in srgb,var(--down) 15%,transparent)}
.ss-pill.off{color:var(--ink-3);background:var(--surface-2);font-weight:500;letter-spacing:0}
.ss-day{margin:18px 16px 8px;font:600 11px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.ss-mk{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.ss-mut{color:var(--ink-2);font:400 13.5px/1.45 var(--f-body)}.ss-card.ss-mut{display:block}
.ss-hero{display:flex;flex-direction:column;gap:6px;margin-top:12px}.ss-hero b{font:600 20px/1.2 var(--f-head)}.ss-hero small{font:400 12.5px/1.45 var(--f-body);color:var(--ink-2)}
.ss-sec.in{padding:0;margin:18px 0 8px}
.ss-sheet{position:fixed;inset:0;z-index:70}.ss-sheet[hidden]{display:none}.ss-sheet-bg{position:absolute;inset:0;background:rgba(3,6,14,.6)}
.ss-sheet-c{position:absolute;left:0;right:0;bottom:0;max-height:86vh;overflow:auto;padding:10px 18px calc(var(--tp-sab) + 20px);background:var(--card);border-radius:14px 14px 0 0}
@media(min-width:760px){.ss-sheet-c{left:50%;right:auto;top:50%;bottom:auto;width:540px;transform:translate(-50%,-50%);border-radius:var(--r)}}
.ss-grab{width:38px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 14px}
.ss-sh-hd{display:flex;align-items:center;gap:10px;font:600 16px/1.3 var(--f-head)}
.ss-kv{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font:400 14px/1.3 var(--f-body);color:var(--ink-2)}.ss-kv b{color:var(--ink);font-variant-numeric:tabular-nums}.ss-kv b.up{color:var(--up)}.ss-kv b.dn{color:var(--down)}
.ss-fx{list-style:none;margin:0;padding:0}.ss-fx li{display:flex;gap:10px;padding:9px 0;border-top:1px solid var(--line)}.ss-fx i{font-style:normal;width:18px;flex:none;font-weight:700}
.ss-fx li.ok i{color:var(--up)}.ss-fx li.no i{color:var(--down)}.ss-fx li.na i{color:var(--ink-3)}.ss-fx b{display:block;font:600 13.5px/1.3 var(--f-body)}.ss-fx small{display:block;font:400 12px/1.4 var(--f-body);color:var(--ink-3)}
.ss-btn{display:block;width:100%;margin-top:14px;height:44px;border:1px solid var(--line);border-radius:var(--rs);background:var(--surface-2);color:var(--ink);font:600 14px/1 var(--f-body);cursor:pointer}
.ss-mk-l{display:flex;flex-direction:column;gap:6px}.ss-mk-l b{font:600 16px/1 var(--f-head)}.ss-mk-r{display:flex;gap:12px;font:500 12.5px/1 var(--f-body);color:var(--ink-3);font-variant-numeric:tabular-nums}.ss-mk-r b{color:var(--ink)}.ss-mk-r b.up{color:var(--up)}.ss-mk-r b.dn{color:var(--down)}
/* sign-in (B) */
.tp-in .ss-lk{justify-content:flex-start;margin-bottom:0}

/* Face ID sign-in (one screen) */
.tp-pk{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:52px;margin-top:22px;border:0;border-radius:12px;background:var(--sel-bg);color:var(--sel-ink);font:600 17px/1 var(--f-body);cursor:pointer}
.tp-pk svg{width:24px;height:24px}.tp-pk[aria-busy=true]{opacity:.7;pointer-events:none}.tp-pk:disabled{opacity:.5}
.tp-in-alt{display:block;margin:18px auto 0;padding:8px;text-align:center;font:500 14px/1.3 var(--f-body);color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}
.tp-in-pc{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);text-align:left}
.tp-in-pc label{font:500 13px/1.3 var(--f-body);color:var(--ink-2)}
.tp-in-pc .tp-in-pc-go{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}
/* viewer (view-only): owner-only controls never render; this is a second guard */
html[data-role=viewer] [data-owner-only]{display:none!important}
.ss-vo{display:inline-block;margin-top:8px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);font:500 12px/1.2 var(--f-body);color:var(--ink-2)}
/* Header: lockup left, small c. brand mark right, vertically centred on the lockup; right inset = card padding (Jason 10:24 AM ET).
   Not a link. Grid in-app ~ splash strength (.19 vs .2; Jason 10:26 AM ET 'a little stronger') so it reads in the gaps; cards stay opaque. */
.tp-hd-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:16px}
.tp-hd-mk{flex:none;display:block;line-height:0}.tp-hd-mk .bcm{display:block;height:25px;width:auto}
.tp-hd-row+.tp-hd-tx{margin-top:12px}
/* Sign-in (Jason 10:28 AM ET): grid at splash strength; phone = single column as before; desktop S1 = offset hero + card. */
body.tp-in{--grid-op:.2}
.tp-in-hero,.tp-in-or{display:none}.tp-in-orv{display:none}
.tp-in-c{position:relative;z-index:1}
@media (min-width:900px){
 .tp-in{justify-content:flex-start;padding:0 8vw 0 11vw;gap:6vw}
 .tp-in-hero{display:block;position:relative;z-index:1;flex:1 1 auto;margin-top:-6vh}
 .ss-lk-hero .ss-w{--wm:clamp(76px,6.67vw,104px)}
 .tp-in-cap{margin:28px 0 0;font:500 15px/1.4 var(--f-body);color:var(--ink-3)}
 .tp-in-c{flex:none;width:420px;max-width:420px;padding:40px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
 .tp-in-lk{display:none}
 .tp-in-c .tp-t{margin:0}.tp-in-sub{margin:10px 0 28px}
 .tp-in-pc{margin-top:28px;padding-top:0;border-top:0;gap:12px}
 .tp-in-or{display:flex;align-items:center;gap:14px;margin-bottom:16px;color:var(--ink-3);font:500 13px/1 var(--f-body)}
 .tp-in-or::before,.tp-in-or::after{content:"";flex:1;height:1px;background:var(--line)}
 .tp-in-orw{display:none}.tp-in-orv{display:inline}
 .tp-in-alt{margin:28px 0 0;padding:0;text-align:left}
 .tp-in-s2{flex-direction:column;justify-content:center;padding:48px 0;gap:40px}
 .tp-in-s2 .tp-in-hero{flex:none;margin:0;text-align:left}.tp-in-s2 .tp-in-cap{display:none}
 .tp-in-s2 .ss-lk-hero .ss-w{--wm:62px}
 .tp-in-s2 .tp-in-c{width:480px;max-width:480px}
}
@media (min-width:900px){.tp-in-hero .ss-lk{justify-content:flex-start;margin:0}.tp-in-s2 .tp-in-hero{width:480px}}
/* Guide */
.ss-g{margin-top:10px;padding:0}.ss-g>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;font:600 15px/1.3 var(--f-head);color:var(--ink)}
.ss-g>summary::-webkit-details-marker{display:none}.ss-g>summary::after{content:'\203A';color:var(--ink-2);transition:transform .2s}.ss-g[open]>summary::after{transform:rotate(90deg)}
.ss-g-lv{margin-left:auto;font:500 11px/1 var(--f-body);color:var(--ink-2)}
.ss-g-b{padding:0 16px 16px;font:400 14px/1.5 var(--f-body);color:var(--ink)}.ss-g-b p{margin:0 0 10px}.ss-g-b ul,.ss-g-b ol{margin:4px 0 10px;padding-left:18px}.ss-g-b li{margin:0 0 6px}
.ss-g-b .tp-lab{display:block;margin:8px 0 4px}.ss-g-b small{color:var(--ink-2)}.ss-g-b .warn{margin:8px 0 2px;font-weight:600}
.ss-g-set{padding:12px 0;border-top:1px solid var(--line)}.ss-g-set:first-child{border-top:0;padding-top:0}.ss-g-set>b{font:600 15px/1.3 var(--f-head)}
.ss-g-w{font:500 11px/1 var(--f-body);color:var(--ink-2);margin-left:6px}.ss-g-f{list-style:none;padding:0!important}
.ss-g-m li p{margin:2px 0 0;color:var(--ink-2)}.ss-g-gl dt{font-weight:600;margin-top:8px}.ss-g-gl dd{margin:2px 0 0;color:var(--ink-2)}
.ss-g [hidden]{display:none!important}
.ss-g-b p.warn{color:color-mix(in srgb,var(--down) 70%,var(--ink-2))}
.ss-g-b>p,.ss-g-b li,.ss-g-b small,.ss-g-gl dd{max-width:72ch}

/* Rating arrows (Advanced chart; owner + viewer, read-only) */
.ss-ra{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}
.ss-sw{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 10px 0 6px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card);color:var(--ink-2);font:600 12.5px/1 var(--f-body);cursor:pointer}
.ss-sw i{position:relative;width:28px;height:16px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line);transition:background .15s}
.ss-sw i:after{content:"";position:absolute;top:1px;left:1px;width:12px;height:12px;border-radius:50%;background:var(--ink-3);transition:transform .15s}
.ss-sw[aria-checked=true] i{background:var(--sel-bg);border-color:transparent}.ss-sw[aria-checked=true] i:after{transform:translateX(12px);background:var(--sel-ink)}
.ss-ra-st{font:500 11.5px/1 var(--f-body);color:var(--ink-3)}
.ss-ex{font:600 10.5px/1 var(--f-body);letter-spacing:.05em;text-transform:uppercase;padding:5px 7px;border-radius:var(--rs);border:1px dashed var(--ink-3);color:var(--ink-2)}
.ss-leg{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 16px 0;font:500 11px/1.4 var(--f-body);color:var(--ink-3)}
.ss-legd{width:100%}.ss-legd summary{display:flex;gap:12px;align-items:center;white-space:nowrap;overflow:hidden;list-style:none;cursor:pointer}
.ss-legd summary::-webkit-details-marker{display:none}.ss-legd summary::after{content:"\24D8";margin-left:auto;color:var(--ink-3);font-size:12px}
.ss-legd summary .n1{overflow:hidden;text-overflow:ellipsis;font-weight:400}.ss-legd .ss-noise{color:#E8A23B;font-weight:600}
.ss-legd p{margin:6px 0 0;font-weight:400;white-space:normal}
.ss-leg span{display:inline-flex;align-items:center;gap:5px}.ss-leg b{font-size:11px}.ss-leg b.u{color:#38BDF8}.ss-leg b.d{color:#E5484D}
.ss-leg b.h{display:inline-block;width:8px;height:12px;border:1.5px solid var(--ink-2);border-radius:1px}
.ss-leg .n{flex-basis:100%;font-weight:400}
/* Swing (daily) card in Signals: Earnings gap-up (60-day hold), watch only */
.ss-swg{display:flex;flex-direction:column;gap:4px}
.ss-swg-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.ss-swg small{line-height:1.4}
.ss-out{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.ss-out small{display:block;color:var(--ink-3);margin-top:3px}

/* Sign-in v2 (Jason 11:02 AM ET): phone = large LEFT-aligned lockup at the top (wordmark 62px), Sign in block below;
   desktop S1 = the same lockup bigger (85px at 1280, 96px at 1440), offset 11vw. Grid + device-aware copy unchanged. */
@media (max-width:899px){
 .tp-in{display:block;min-height:100vh;padding:calc(env(safe-area-inset-top,0px) + 88px) 24px calc(var(--tp-sab) + 32px)}
 .tp-in-c{max-width:none;padding:0;text-align:left}
 .tp-in-lk{margin:0 0 56px}.tp-in-lk .ss-w{--wm:62px}
 .tp-in-c .tp-t{margin:0}
 .tp-in-alt{margin:18px 0 0;padding:8px 0;text-align:left}
}
@media (min-width:900px){.tp-in:not(.tp-in-s2){padding-left:11vw}.tp-in:not(.tp-in-s2) .tp-in-hero{margin-top:-4vh}}
@media(max-width:420px){.ss-ro{gap:4px 6px;font-size:11px;letter-spacing:-.01em}}
/* Stage in Webull (owner only) */
.ss-stg{display:flex;flex-direction:column;gap:8px;margin:10px 0 4px}
.ss-stg-b{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:0 14px;border:1px solid color-mix(in srgb,var(--up) 45%,var(--line));border-radius:var(--rs);background:color-mix(in srgb,var(--up) 9%,var(--card));color:var(--ink);font:600 14px/1 var(--f-body);cursor:pointer;text-align:left}
.ss-stg-b span{margin-left:auto;color:var(--ink-3);font-weight:500;font-size:12.5px}
.ss-stg small{font-size:12px;line-height:1.35}
.ss-chk{display:flex;gap:10px;align-items:center;margin-top:14px;font:500 14px/1.3 var(--f-body);color:var(--ink)}
.ss-chk input{width:20px;height:20px;accent-color:var(--up)}
.ss-btn.ss-btn-go{background:var(--up);border-color:var(--up);color:#04130c}
.ss-btn.ss-btn-go.arm{background:var(--down);border-color:var(--down);color:#fff}
.ss-btn.ss-btn-go:disabled{opacity:.4;cursor:not-allowed}
.ss-risk{display:inline-flex;align-items:center;gap:4px;color:var(--ink-2);font:600 14px/1 var(--f-body)}
.ss-risk input{width:86px;height:36px;padding:0 8px;border:1px solid var(--line);border-radius:var(--rs);background:var(--surface-2);color:var(--ink);font:600 15px/1 var(--f-body);font-variant-numeric:tabular-nums}
.ss-set .ss-row{gap:12px}.ss-set>small{display:block;padding:0 14px 10px}
/* chart zoom buttons (Jason 11:28 AM ET): one-handed +/- and reset beside full screen */
.ss-zm{flex:none;display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card)}
.ss-zm button{width:34px;height:34px;display:grid;place-items:center;border:0;background:none;color:var(--ink-2);font:600 18px/1 var(--f-body);cursor:pointer}
.ss-zm button+button{border-left:1px solid var(--line)}
.ss-zm button:active{background:var(--surface-2)}
@media(max-width:420px){.ss-zm button{width:32px}}
@media(max-width:420px){.ss-ro>b{order:-3}.ss-ro .r{order:-2}.ss-ro .c{order:-1}}  /* phone: close stays visible beside the zoom buttons */
/* chart tools (Jason 11:33 AM ET): candle style switch + Indicators sheet */
.ss-tools{display:flex;align-items:center;gap:8px;margin:-2px 0 10px}
.ss-seg.sm{margin:0;gap:0;border:1px solid var(--line);border-radius:var(--rs);overflow:hidden}
.ss-seg.sm button{border:0;border-radius:0;padding:7px 10px;font-size:12px}
.ss-seg.sm button+button{border-left:1px solid var(--line)}
.ss-indb{margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card);color:var(--ink-2);font:600 12px/1 var(--f-body);cursor:pointer}
.ss-indb span{min-width:18px;height:18px;padding:0 5px;display:inline-grid;place-items:center;border-radius:9px;background:var(--surface-2);color:var(--ink);font-size:11px}
.ss-hat{position:absolute;z-index:3;left:8px;top:48px;padding:2px 6px;border-radius:5px;background:color-mix(in srgb,var(--acc) 18%,transparent);color:var(--acc);font:700 10.5px/1.2 var(--f-body);letter-spacing:.06em;pointer-events:none}
.ss-hat[hidden]{display:none}
.ss-cw.fs .ss-hat{top:calc(env(safe-area-inset-top,0px) + 52px);left:calc(env(safe-area-inset-left,0px) + 12px)}
.ss-chart.p1{height:450px}.ss-chart.p2{height:520px}
@media(min-width:760px){.ss-chart.p1{height:600px}.ss-chart.p2{height:680px}}
.ss-indl{border-top:1px solid var(--line);margin-top:6px}
.ss-ind-r{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.ss-ind-r>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.ss-ind-r b{font:600 14px/1.25 var(--f-body);color:var(--ink)}.ss-ind-r small{font:400 12px/1.35 var(--f-body);color:var(--ink-3)}
.ss-ind-r .ss-seg.sm{align-self:flex-start;margin-top:4px}
.ss-ind-r .ss-sw{flex:none;padding:0 6px}
/* FULL VIEW (Jason 11:41 AM ET): one bottom-right button; fixed full-viewport overlay, no Fullscreen API */
.ss-cbar{flex-wrap:wrap;row-gap:6px}
.ss-cx{flex:none;display:inline-flex;align-items:center;gap:6px;margin-left:auto}
.ss-zm button{height:36px}
.ss-fvb{position:absolute;z-index:4;left:auto;top:auto;right:0;bottom:0;width:34px;height:34px;padding:0;display:grid;place-items:center;border:1px solid color-mix(in srgb,#38BDF8 38%,var(--line));border-radius:8px;
 background:color-mix(in srgb,var(--card) 88%,#9FB4C8);color:#38BDF8;cursor:pointer;box-shadow:none;-webkit-tap-highlight-color:transparent}
.ss-fvb::before{content:'';position:absolute;inset:-3px}/* 40 px tap target, invisible */
.ss-fvb svg{width:17px;height:17px}
.ss-fvb:hover,.ss-fvb:active{border-color:#38BDF8;background:color-mix(in srgb,var(--card) 78%,#38BDF8)}
html[data-theme=light] .ss-fvb{color:#0F8586;border-color:color-mix(in srgb,#0F8586 35%,var(--line));background:color-mix(in srgb,var(--card) 90%,#7F93A8)}
.ss-fbar{display:none;align-items:center;gap:6px;flex-wrap:wrap;width:100%}
.ss-cw.fs .ss-fbar{display:flex}
.ss-fvq{display:inline-flex;align-items:baseline;gap:6px;margin-right:auto;font:600 14px/1 var(--f-body);color:var(--ink);font-variant-numeric:tabular-nums}
.ss-fvq .p{font-weight:600}.ss-fvq .ss-pc{font-size:12px}.ss-fvq .ss-age{font:500 11px/1 var(--f-body);color:var(--ink-3)}
.ss-fbar .ss-seg.sm button{padding:0 9px;height:34px}
.ss-fbar .ss-indb{margin:0;height:34px}
.ss-cw.fs{position:fixed;top:0;left:0;width:100dvw;height:100dvh;z-index:200;overscroll-behavior:contain;
 padding:calc(env(safe-area-inset-top,0px) + 6px) calc(env(safe-area-inset-right,0px) + 8px) calc(var(--tp-sab) + 4px) calc(env(safe-area-inset-left,0px) + 8px)}
.ss-cw.fs .ss-hat{top:auto}
html.ss-fs-on body{position:fixed;inset:0;overflow:hidden;touch-action:none}
html.ss-fs-on .ss-cw.fs{touch-action:auto}
@media(max-width:760px){.ss-ro{order:5;flex-basis:100%}}
@media(orientation:landscape) and (max-height:500px){.ss-cw.fs .ss-cbar{flex-wrap:nowrap}.ss-cw.fs .ss-ro{order:0;flex-basis:auto}.ss-cw.fs .ss-fbar{width:auto;flex:none}.ss-cw.fs .ss-fvq{margin-right:8px}}
.ss-sheet{z-index:300}
.ss-hat{top:auto;bottom:40px;left:8px}
.ss-cw.fs .ss-hat{top:auto;left:calc(env(safe-area-inset-left,0px) + 14px);bottom:calc(var(--tp-sab) + 40px)}
.ss-tags{position:absolute;z-index:3;left:8px;bottom:62px;display:flex;gap:6px;pointer-events:none}
.ss-cw.fs .ss-tags{left:calc(env(safe-area-inset-left,0px) + 14px);bottom:calc(var(--tp-sab) + 62px)}
.ss-xrt{padding:2px 6px;border-radius:5px;background:color-mix(in srgb,var(--card) 80%,transparent);border:1px solid rgba(56,189,248,.35);color:var(--ink-2);font:600 10.5px/1.3 var(--f-body)}
.ss-xrt[hidden]{display:none}
.ss-ro .x{color:var(--acc)}
/* owner watch list (Jason 11:52 AM ET) */
.tp-chip.w{position:relative;padding-left:18px}
.tp-chip.w::before{content:"";position:absolute;left:8px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:var(--acc)}
.ss-wl{display:flex;align-items:center;gap:8px;margin:-2px 0 8px;min-height:28px}
.ss-wl[hidden]{display:none}
.ss-wb{border:1px solid var(--line);background:transparent;color:var(--ink-2);border-radius:999px;padding:4px 10px;font:600 12px/1.2 var(--f-body);cursor:pointer}
.ss-wb.on{border-color:rgba(56,189,248,.5);color:var(--acc)}
.ss-wn{color:var(--ink-3,var(--ink-2));font-size:12px}
html.ss-fs-on .tp-app{z-index:250}
.ss-fbar .ss-indb{gap:6px}
@media (orientation:landscape) and (max-height:500px){.ss-cw.fs .ss-ro{display:none}}
@media (orientation:landscape) and (max-height:500px){.ss-cw.fs .ss-fvq .ss-age{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media (orientation:landscape) and (max-height:500px){.ss-cw.fs .ss-cx{display:none}}/* phone landscape: pinch / double-tap reset instead of the -/+ buttons */
/* Checks (owner only, extras Oct 23 2026) */
.ss-ck{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:4px}
.ss-ckc{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--rs);padding:9px 11px;color:var(--ink);font:inherit;min-height:52px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ss-ckc small{font:500 11px/1.2 var(--f-body);color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}
.ss-ckc b{font:600 14px/1.25 var(--f-body);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.ss-ckc.good{border-left:3px solid var(--up)}.ss-ckc.warn{border-left:3px solid #E8C468}.ss-ckc.bad{border-left:3px solid var(--down)}
.ss-ckc.bad b{color:var(--down)}
.ss-gd{border:1px solid var(--down);border-radius:var(--rs);padding:10px 12px;margin:10px 0}.ss-gd b{color:var(--down)}.ss-gd ul{margin:6px 0 4px 18px;padding:0;font:400 13px/1.35 var(--f-body);color:var(--ink-2)}
.ss-plan .ss-row-l small{white-space:normal}.ss-plan .ss-pl-w{display:block;color:var(--ink-2)}
.ss-set .ss-num{width:74px;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;color:var(--ink);font:500 15px var(--f-body);padding:6px 8px;text-align:right}
.ss-fr .ss-row-l small.bk{color:var(--down)}
.ss-fr .ss-row-l small.pre{color:var(--ink-2)}
.ss-fr .ss-acct{display:inline-block;padding:0 6px;border:1px solid var(--line);border-radius:6px;font-size:11px;line-height:16px;color:inherit}
.ss-fr-day{padding:10px 14px 4px;font:700 11.5px/1.2 var(--f-body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.ss-fr-day:not(:first-child){border-top:1px solid var(--line);margin-top:2px}
.ss-fra{margin:4px -16px 10px}.ss-fra .tp-chip[disabled]{opacity:.45}.ss-fra .tp-chip .ss-mut{font-size:11.5px;margin-left:2px}

/* Morning game plan rows, restacked for phone (Jason 1:25 PM ET): ticker/name + price/change/volume on top, details full width */
.ss-pl-hd span{display:flex;flex-direction:column;gap:3px}.ss-pl-hd small{font:400 12px/1.3 var(--f-body)}
.ss-plan .ss-pl-row{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:14px 16px;text-align:left}
.ss-pl-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}
.ss-pl-s{font:600 15px/1.3 var(--f-body);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-pl-s em{font-style:normal;font-weight:500;color:var(--ink-2)}
.ss-pl-q{display:flex;align-items:baseline;gap:8px;flex:none;font-variant-numeric:tabular-nums}.ss-pl-q b{font:600 15px/1.3 var(--f-body)}.ss-pl-q small{font:500 12px/1.3 var(--f-body)}
.ss-pl-body{display:flex;flex-direction:column;gap:4px}.ss-pl-body small{display:block;font:400 12.5px/1.45 var(--f-body);color:var(--ink-3);white-space:normal}
.ss-pl-body .ss-pl-w{color:var(--ink-2)}.ss-pl-body small.warn{color:color-mix(in srgb,var(--down) 70%,var(--ink-2))}
.ss-trip{color:var(--down);font-weight:600;line-height:1.45}
.ss-pl-note{display:block;padding:0 16px 8px;line-height:1.45}

/* company logos (static/clogo.js, Oct 23 2026): fixed round tiles beside tickers; the text next to them keeps its full width */
.ss-pl-top{align-items:center}
.ss-pl-s{flex:1 1 auto}
.ss-sym{display:inline-flex;align-items:center;gap:8px}
@media (min-width:700px){.ss-q-lg{--clg:28px!important}}
.tp-chip.q{display:inline-flex;align-items:center;gap:6px}.tp-chip.q>.clg{margin-left:-4px}
/* side word in Fill review / Journal / Latest signals: same --up / --down as the chart BUY/SELL arrows; ticker, qty, price stay ink */
.ss-side{font-weight:700}.ss-side.buy{color:var(--up)}.ss-side.sell{color:var(--down)}
/* ===== Tops first screen (Jason, Oct 23 PM): exactly 9 tiles + "View all stocks" above the fold at 390x844 / 375.
   Compact top (slim header, one status row, one chip line) and a 3x3 grid of narrow tiles (~142px tall); Jason picked 3x3. */
.tp-app{padding-top:calc(env(safe-area-inset-top,0px) + 8px)}
.tp-hd{margin:0 0 4px;padding:0 2px}
.tp-hd-row+.tp-hd-tx{margin-top:6px}
.tp-t{margin:0;font-size:20px}
.tp-stick{padding:6px 16px 6px}
.tp-stat{display:flex;gap:0;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:6px 10px;align-items:center;justify-content:space-between}
html[data-theme=light] .tp-stat{background:#DCE5F3}
.tp-stat .tp-box{padding:0;background:none;border:0;border-radius:0;gap:3px}
html[data-theme=light] .tp-stat .tp-box{background:none}
.tp-stat .tp-lab{display:none}
.tp-stat .tp-pill{height:20px;font-size:12px;padding:0 8px 0 7px;gap:6px}.tp-stat .tp-pill i{width:7px;height:7px}
.tp-stat .tp-cd{font-size:11.5px}
.tp-stat .tp-val{font-size:12px}
.tp-chips{margin-top:8px}
.tp-chip{height:30px;padding:0 13px;font-size:13.5px}
.tp-chip::after{inset:-4px 0}
.tp-sub{display:flex;align-items:center;gap:8px;margin:8px 0 8px}
.tp-sub .tp-seg{flex:none;padding:2px;border-radius:10px}
.tp-sub .tp-seg button{height:26px;padding:0 10px;font-size:13px;border-radius:8px}
.tp-sub .tp-seg+.tp-sesrow{margin-top:0}
.tp-sub .tp-sesrow{flex:1;min-width:0;margin:0 -16px 0 0;padding:0 16px 0 0}
.tp-sub .tp-chip.q{height:28px;padding:0 10px;font-size:12.5px}
.tp-grid{gap:8px}
.tp-card .tp-x{flex-wrap:nowrap;overflow:hidden}
.tp-card .tp-x .tp-tag{flex:none}
.tp-card .tp-tk{font-size:14px}
.tp-card .tp-nm{font-size:11.5px}
.tp-card .tp-ch{margin-top:0;font-size:12.5px}.tp-card .tp-ch svg{width:13px;height:13px}
.tp-pq{display:flex;flex-direction:column;min-width:0}
.tp-more{margin-top:10px}.tp-more-b{height:44px;font-size:15px}
/* 3x3 tiles (9 across on desktop) */
.tp-app .tp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.tp-app .tp-grid .tp-card{gap:0;padding:10px 9px 9px;min-height:142px}
.tp-app .tp-grid .tp-top{gap:7px;margin:0 0 9px}
.tp-app .tp-grid .tp-top .clg{--clg:28px}
.tp-app .tp-grid .tp-id{gap:1px}
.tp-app .tp-grid .tp-pq{gap:2px}
.tp-app .tp-grid .tp-px{font-size:19px;margin:0 -3px;padding:0 3px}.tp-app .tp-grid .tp-px.sm{font-size:16px}
.tp-app .tp-grid .tp-x{margin-top:auto;padding-top:8px}
.tp-app .tp-grid .tp-nm{max-width:100%}
@media(min-width:900px){.tp-app .tp-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
/* one chip line: views | sessions; Gainers/Losers a slim full-width toggle under it (movers only) */
.tp-chips{gap:6px}
.tp-cg{display:inline-flex;align-items:center;gap:6px;flex:none}
.tp-dv{flex:none;width:1px;height:20px;margin:0 3px;background:var(--line);border-radius:1px}
html[data-theme=dark] .tp-dv{background:#2B3A60}
.tp-chips .tp-chip{height:30px;padding:0 12px;font-size:13.5px}
.tp-chips .tp-chip.q{padding:0 11px;font-size:13px}
.tp-sub[hidden]{display:none}
.tp-sub .tp-seg{flex:1;max-width:none}
.tp-sub .tp-seg button{height:24px;font-size:12.5px}
.tp-stat{padding:4px 10px}.tp-stat .tp-box{gap:2px}

/* --------------------------------------------------------------- home cards under the tiles (owner only; tops_home.js) */
.hm{display:flex;flex-direction:column;gap:12px;margin:10px 0 0}
.hm:empty{display:none}
.hm-plan{display:flex;align-items:center;gap:9px;height:36px;padding:0 10px 0 7px;border-radius:var(--rs);background:var(--s-pre-bg);color:var(--ink);text-decoration:none;border:1px solid color-mix(in srgb,var(--cy) 35%,transparent);-webkit-tap-highlight-color:transparent}
.hm-plan-i{flex:none;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--cy);color:#0A1124;font-size:14px;line-height:1}
.hm-plan-t{flex:1;min-width:0;display:flex;align-items:baseline;gap:6px;white-space:nowrap;overflow:hidden}
.hm-plan-t b{font:700 14px/1.2 var(--f-body)}
.hm-plan-t small{min-width:0;font:500 12px/1.3 var(--f-body);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis}
.hm-plan-a{flex:none;font-size:22px;line-height:1;color:var(--s-pre)}
.hm-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:12px 12px 10px;min-width:0}
.hm-h{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;margin:0 0 4px}
.hm-h h2{margin:0;font:600 15px/1.25 var(--f-head);color:var(--ink);letter-spacing:.005em}
.hm-see{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:0 2px 0 8px;border:0;background:none;color:var(--acc);font:600 13px/1 var(--f-body);text-decoration:none;cursor:pointer;white-space:nowrap}
.hm-see span{font-size:17px;line-height:1;margin-top:-1px}
.hm-list{list-style:none;margin:0;padding:0}
.hm-list li+li{border-top:1px solid var(--line)}
.hm-row{display:flex;align-items:center;gap:10px;min-height:48px;padding:7px 0;color:var(--ink);text-decoration:none;min-width:0;-webkit-tap-highlight-color:transparent}
a.hm-row:active{opacity:.75}
.hm-row .hm-lg,.hm-row .lgo{flex:none}
.hm-id{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.hm-id b{font:700 14px/1.2 var(--f-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-id small{font:500 12px/1.3 var(--f-body);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-q{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;max-width:48%}
.hm-q b{font:700 14px/1.2 var(--f-body);font-variant-numeric:tabular-nums}
.hm-q small{font:500 11.5px/1.3 var(--f-body);color:var(--ink-2);white-space:nowrap}
.hm-c{font:600 12.5px/1.2 var(--f-body);font-variant-numeric:tabular-nums}
.hm-c.up{color:var(--up)}.hm-c.dn{color:var(--down)}.hm-c.na{color:var(--ink-3)}
.hm-side{flex:none;width:40px;font:800 12.5px/1 var(--f-body);letter-spacing:.04em}
.hm-wo{color:var(--ink-3)}
.hm-mk{display:inline-block;margin-left:4px;padding:2px 5px;border-radius:4px;background:var(--surface-2);color:var(--ink-2);font:600 10px/1.1 var(--f-body);font-style:normal;vertical-align:1px}
.hm-news{align-items:flex-start}
.hm-news .hm-lg,.hm-news .lgo{margin-top:2px}
.hm-hl{font:500 13.5px/1.35 var(--f-body);color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hm-evi{flex:none;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--acc);font-size:10px}
.hm-cd{font:600 12.5px/1.2 var(--f-body);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.hm-cd.soon{color:var(--acc)}.hm-cd.past{color:var(--ink-3)}
.hm-empty{margin:4px 0 6px;font:500 13px/1.45 var(--f-body);color:var(--ink-2)}
.hm-next{display:inline-block;margin-top:4px;color:var(--ink-2)}.hm-next b{color:var(--ink)}
.hm-src{margin:6px 0 0;font:400 11.5px/1.4 var(--f-body);color:var(--ink-3)}
.hm-ix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:4px 0 0}
.hm-ixc{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border-radius:13px;background:var(--surface-2);border:1px solid var(--border);min-width:0}
html[data-theme="light"] .tp .hm-ixc.up{background:linear-gradient(180deg,rgba(22,163,74,.08) 0%,#F5F8FD 55%);border-top:2px solid rgba(22,163,74,.45)}
html[data-theme="light"] .tp .hm-ixc.dn{background:linear-gradient(180deg,rgba(220,38,38,.07) 0%,#F5F8FD 55%);border-top:2px solid rgba(220,38,38,.40)}
html[data-theme="dark"] .tp .hm-ixc.up{background:linear-gradient(180deg,rgba(34,197,94,.16) 0%,#131F3B 60%);border-top:2px solid rgba(74,222,128,.55)}
html[data-theme="dark"] .tp .hm-ixc.dn{background:linear-gradient(180deg,rgba(239,68,68,.15) 0%,#131F3B 60%);border-top:2px solid rgba(248,113,113,.50)}
.hm-ixs{font:700 14px/1.2 var(--f-body);color:var(--ink);display:flex;flex-direction:column;gap:2px}
.hm-ixs small{font:500 11.5px/1.25 var(--f-body);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-ixc b{font:700 20px/1.15 var(--f-body);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.hm-c{display:inline-flex;align-items:center;gap:4px;font:700 12px/1.2 var(--f-body);font-variant-numeric:tabular-nums;white-space:nowrap}
.hm-sec{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 0;font:500 13px/1.3 var(--f-body);color:var(--ink-2)}
.hm-sec b{color:var(--ink)}
.hm-bar{display:flex;gap:3px;flex:1;max-width:180px}
.hm-bar i{flex:1;height:8px;border-radius:999px;background:color-mix(in srgb,var(--down) 55%,var(--surface-2))}
.hm-bar i.up{background:var(--up)}
.hm-see:focus-visible,.hm-row:focus-visible,.hm-plan:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:6px}
@media (min-width:900px){
 .hm{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px}
 .hm-plan{grid-column:1/-1}
}
/* Phone fit (Jason, Oct 23 4:27 PM "there's wasted space" / "you can definitely shrink the tiles"): all 9 tiles and
   "View all stocks" clear the bottom nav at real Safari-tab visible heights (390x664, 393x659, 430x740) and standalone
   390x844. Tiles are content-height (no 142px min-height, chip right under the % line instead of pinned to the bottom),
   tighter padding; the header block (lockup, title, status, chips, Gainers/Losers) is tightened. Desktop is untouched. */
@media (max-width:899px){
 .tp-hd{margin:0 0 2px}
 .tp-hd .ss-w{--wm:21px}
 .tp-hd-mk .bcm{height:21px}
 .tp-hd-row+.tp-hd-tx{margin-top:3px}
 .tp-t{font-size:18px;line-height:1.15}
 .tp-stick{padding-top:4px;padding-bottom:4px}
 .tp-stat{padding:3px 10px}
 .tp-chips{margin-top:4px}
 .tp-chips .tp-chip{height:28px;font-size:13px}.tp-chips .tp-chip.q{height:28px;font-size:12.5px}
 .tp-sub{margin:6px 0 8px}
 .tp-sub .tp-seg button{height:22px;font-size:12px}
 .tp-app .tp-grid{gap:6px}
 .tp-app .tp-grid .tp-card{min-height:0;padding:7px 8px 7px;justify-content:flex-start}
 .tp-app .tp-grid .tp-top{margin:0 0 5px}
 .tp-app .tp-grid .tp-pq{gap:1px}
 .tp-app .tp-grid .tp-px{font-size:18px}.tp-app .tp-grid .tp-px.sm{font-size:15.5px}
 .tp-app .tp-grid .tp-x{margin-top:4px;padding-top:0}
 .tp-app .tp-grid .tp-tag{height:17px}
 .tp-more{margin-top:8px}.tp-more-b{height:40px;font-size:14.5px}
}
.tp-px[data-k=mid]::after{content:"mid";margin-left:3px;font:600 10.5px/1 var(--f-body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);vertical-align:super}   /* IEX bid/ask midpoint, not a trade */
.ss-age.mid{color:var(--ink-2)}

/* Header declutter (Jason, Oct 23 4:49 PM "Too cluttered?"), html.tp-dc. Option A (default): no big c. in the header (it stays on
   the splash and the app icon), no "/ Top movers" title on the Tops view (the Movers chip already says it; kept for screen
   readers; other views keep their title), the status card becomes one line: pill · ends 8:00 PM ... Updated 2s ago (the
   date/time stamp moves to the tooltip). Lockup untouched (S of STRATEGIES under the S of SYSTEMATIC). */
html.tp-dc .tp-hd-mk{display:none}
html.tp-dc[data-ssv=tops] .tp-t,html.tp-dc:not([data-ssv]) .tp-t{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
html.tp-dc[data-ssv=tops] .tp-hd-row+.tp-hd-tx,html.tp-dc:not([data-ssv]) .tp-hd-row+.tp-hd-tx{margin-top:0}
html.tp-dc .tp-stat{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 10px;padding:4px 10px 4px 5px}
html.tp-dc .tp-stat .tp-box{flex-direction:row;align-items:center;gap:7px;min-width:0}
html.tp-dc .tp-stat .tp-box-r{margin-left:auto}
html.tp-dc .tp-stat .tp-box-r .tp-val{display:none}
html.tp-dc .tp-stat .tp-cd{font-size:12px}
@media (max-width:899px){
 html.tp-dc .tp-hd{margin:0 0 4px}
 html.tp-dc .tp-stick{padding-top:2px}
}
/* Option B (?hd=b, dev only): the status sits at the right of the lockup row, three short right-aligned lines matching the
   lockup's height; no status card, so the sticky strip under the header is gone. Other views hide it (it is Tops status). */
html.tp-dc-b .tp-hd-row{padding-right:0;align-items:center}
html.tp-dc-b .tp-hd-row .tp-stat{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:1px;flex:0 1 auto;min-width:0;padding:0;background:none;border:0;border-radius:0}
html.tp-dc-b .tp-hd-row .tp-stat .tp-box{display:contents}
html.tp-dc-b .tp-hd-row .tp-stat .tp-cd{font-size:11.5px;line-height:1.25;text-align:right}
html.tp-dc-b .tp-hd-row .tp-stat .tp-pill{height:19px}
html.tp-dc-b[data-ssv]:not([data-ssv=tops]) .tp-hd-row .tp-stat{display:none}
html.tp-dc-b .tp-stick{display:none}
@media (max-width:899px){html.tp-dc-b .tp-hd{margin:0 0 6px}}
/* Option C (?hd=c, dev only): A plus the diagonal stripes at half strength behind the content */
html.tp-dc-c{--grid-op:.095}html.tp-dc-c[data-theme=light]{--grid-op:.075}

/* Top-right filler mocks (?tr=, localhost only): one slot right-aligned in the lockup row, vertically centred, never taller
   than the lockup (so the tiles do not move) and never wider than the space left of it. */
.tp-tr{display:none}
html[data-tr] .tp-tr{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;min-width:0;margin-left:auto;position:relative}
html[data-tr] .tp-hd-row{padding-right:0}
.tp-tr-mkt{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-decoration:none;color:var(--ink);padding:4px 0 4px 8px;-webkit-tap-highlight-color:transparent}
.tp-tr-ix{display:flex;gap:10px;font:600 13px/1.15 var(--f-body);font-variant-numeric:tabular-nums;white-space:nowrap}
.tp-tr-ix span{color:var(--ink-2)}.tp-tr-ix b{font-weight:700}.tp-tr-ix b.up{color:var(--up)}.tp-tr-ix b.dn{color:var(--down)}.tp-tr-ix b.na{color:var(--ink-3)}
.tp-tr-st{display:inline-flex;align-items:center;gap:5px;font:500 11px/1.2 var(--f-body);color:var(--ink-3);white-space:nowrap}
.tp-tr-st i{width:6px;height:6px;border-radius:50%;background:var(--ink-3);flex:none}
.tp-tr-st.lv i{background:var(--up)}.tp-tr-st.dl i{background:#E0B341}.tp-tr-st.st{color:#E0B341}.tp-tr-st.st i{background:none;box-shadow:inset 0 0 0 1.5px #E0B341}
html[data-theme=light] .tp-tr-st.dl i{background:#A87A00}html[data-theme=light] .tp-tr-st.st{color:#8A6400}html[data-theme=light] .tp-tr-st.st i{box-shadow:inset 0 0 0 1.5px #8A6400}
.tp-tr-mkt:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:8px}
.tp-tr-clk{display:inline-flex;align-items:center;gap:7px;padding:4px 0;white-space:nowrap;color:var(--ink)}
.tp-tr-clk b{font:600 17px/1 var(--f-body);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.tp-tr-clk small{font:600 11px/1 var(--f-body);letter-spacing:.06em;color:var(--ink-3)}
.tp-tr-dot,.tp-tr-clk i{width:8px;height:8px;border-radius:50%;background:var(--s-cl)}
.tp-tr-clk.k-pre i{background:var(--s-pre)}.tp-tr-clk.k-regular i{background:var(--s-reg)}.tp-tr-clk.k-post i{background:var(--s-post)}

/* 'feel alive': live dots pulse only while the feed is live; stale = grey, static, labelled; flashes reuse .fu/.fd */
.tp-pill.stale i{background:var(--ink-3);animation:none}
.tp-stl{font-weight:600;color:#E0B341}html[data-theme=light] .tp-stl{color:#8A6400}
.tp-tr-st.lv i{animation:tpp 1.8s infinite;color:var(--up)}
.tp-tr-ix b,.hm-q [data-hm-px]{border-radius:4px;padding:0 2px;margin:0 -2px;transition:background .5s,color .5s}
.tp-tr-ix b.fu,.hm-q [data-hm-px].fu{background:color-mix(in srgb,var(--flash-up) 45%,transparent);color:var(--up);transition:none}
.tp-tr-ix b.fd,.hm-q [data-hm-px].fd{background:color-mix(in srgb,var(--flash-dn) 45%,transparent);color:var(--down);transition:none}
@media (prefers-reduced-motion:reduce){.tp-tr-st.lv i{animation:none}.tp-tr-ix b,.hm-q [data-hm-px]{transition:none}.tp-tr-ix b.fu,.tp-tr-ix b.fd,.hm-q [data-hm-px].fu,.hm-q [data-hm-px].fd{background:none}}

/* Oct 23 logo pass: 28 px company logo at the start of every list row (signals feed, swing, fill review) */
.ss-row>.ss-row-lg{flex:none}.ss-row>.ss-row-lg+.ss-row-l{flex:1}
.hm-id .hm-side{display:inline;width:auto;margin-left:4px}
.tp-sh-hd .clg{flex:none}

/* Standalone gap fix (Jason, Oct 23 6:29 PM "Random space", iPhone Home Screen app): the iPhone status-bar inset
   (env(safe-area-inset-top), ~47-59px) was added twice: once above the lockup (.tp-app padding) and again inside the sticky
   status strip, so in standalone a blank band the height of the status bar sat between the lockup / SPY-QQQ row and the
   status strip (a browser tab reports 0, which is why tab shots never showed it). The strip now has normal padding and
   sticks just below the status bar (top: inset) instead of at 0 with the inset as padding; a fixed band the colour of the
   page sits under the status bar so scrolled content never shows through it. Desktop / browser tabs: inset is 0, no change. */
.tp-stick{top:env(safe-area-inset-top,0px)}
/* Edge-to-edge background (Jason, Oct 23 9:00 PM "it should extend all the way up / my phone doesn't have a bar"): no separate
   status-bar strip in either theme; the page background and diagonal stripes (body.tp::before, inset:0) run all the way to the top edge
   behind the clock. */
/* Ticker search in the chip row (Jason Oct 23 'Magnifier.'): the outer .tp-chips keeps its per-breakpoint margins / gap;
   the magnifier is pinned, only the inner strip scrolls (edge fade so chips slide under cleanly). */
.tp-chips.tp-chipbar{overflow:visible;position:relative;padding-right:0}
.tp-chips-sc{display:flex;align-items:center;gap:inherit;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;padding-right:16px;
 -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8px);mask-image:linear-gradient(90deg,transparent 0,#000 8px);padding-left:8px;margin-left:-8px}
.tp-chips-sc::-webkit-scrollbar{display:none}
.tp-srch{flex:none;display:flex}
.tp-chip.tp-srch-b{display:grid;place-items:center;padding:0;aspect-ratio:1;width:auto}
.tp-srch-b svg{width:16px;height:16px}
.tp-srch-b[aria-expanded=true]{border-color:var(--acc);color:var(--acc)}
.tp-srch-b:focus-visible,.tp-srch-x:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.tp-srch-pop{position:absolute;top:calc(100% + 8px);left:16px;z-index:60;width:min(320px,calc(100vw - 32px));padding:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
html[data-theme=light] .tp-srch-pop{box-shadow:0 10px 30px rgba(15,23,42,.16)}
.tp-srch-pop[hidden]{display:none}
.tp-srch-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-2px -4px 8px 0}
.tp-srch-lab{font:500 12.5px/1.3 var(--f-body);color:var(--ink-2)}
.tp-srch-x{flex:none;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:none;color:var(--ink-2);cursor:pointer}
.tp-srch-x svg{width:16px;height:16px}
.tp-srch-in{display:flex;gap:8px}
.tp-srch-in input{flex:1;min-width:0;height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font:600 16px/1 var(--f-body);text-transform:uppercase;-webkit-appearance:none;appearance:none}
html[data-theme=light] .tp-srch-in input{background:#fff}
.tp-srch-in input::-webkit-search-cancel-button{display:none}
.tp-srch-in input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 25%,transparent)}
.tp-srch-in input::placeholder{text-transform:none;font-weight:400;color:var(--ink-3)}
.tp-srch-in button{height:42px;padding:0 16px;border-radius:10px;border:0;background:var(--sel-bg);color:var(--sel-ink);font:700 14px/1 var(--f-body);cursor:pointer}
.tp-srch-err{margin:6px 0 0;font:500 12px/1.3 var(--f-body);color:var(--down)}
.tp-srch-qk{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tp-srch-qk:empty{display:none}
.tp-srch-qk .tp-chip{height:30px;font-size:13px}
/* floated under a ticker on the Advanced chart (absolute in the page; fixed over the full-screen chart) */
.tp-srch-pop.fl{position:absolute;right:auto;z-index:300}.tp-srch-pop.fl.fx{position:fixed}
/* Advanced: the ticker is a button ('PENG \25be'); same type as before so the header does not move */
.ss-symb{display:inline-flex;align-items:center;gap:4px;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:6px}
.ss-symb i{font-style:normal;font-size:.6em;color:var(--ink-3);transform:translateY(.05em)}
.ss-symb[aria-expanded=true] i{color:var(--acc)}
.ss-symb:focus-visible{outline:2px solid var(--acc);outline-offset:3px}

/* Pull to refresh (tops_ptr.js; Home Screen app only): a small circle drops from under the status bar; arrow turns when
   the pull is far enough, then spins while the movers / tiles / home cards refetch in place. The native rubber band is
   switched off in standalone only so it does not fight the pull (Safari tabs keep their own pull-to-reload). */
html.tp-sa,html.tp-sa body{overscroll-behavior-y:auto!important;-webkit-overflow-scrolling:touch}
.tp-ptr{position:fixed;left:50%;top:env(safe-area-inset-top,0px);z-index:30;transform:translate(-50%,-48px);opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease}
.tp-ptr.on{opacity:1}.tp-ptr.drag{transition:none}
.tp-ptr-c{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--card);border:1px solid var(--line);color:var(--ink-2);box-shadow:0 6px 18px rgba(0,0,0,.35)}
html[data-theme=light] .tp-ptr-c{box-shadow:0 6px 18px rgba(15,23,42,.16)}
.tp-ptr-c svg{grid-area:1/1;width:18px;height:18px}
.tp-ptr-a{transition:transform .15s ease}.tp-ptr.arm .tp-ptr-c,.tp-ptr.spin .tp-ptr-c{color:var(--acc)}
.tp-ptr-s,.tp-ptr-d{display:none}
.tp-ptr.spin .tp-ptr-a{display:none}.tp-ptr.spin .tp-ptr-s{display:block;animation:tp-ptr-r .8s linear infinite}
@keyframes tp-ptr-r{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.tp-ptr,.tp-ptr-a{transition:none}.tp-ptr.spin .tp-ptr-s{display:none}.tp-ptr.spin .tp-ptr-d{display:block}}
.tp-ptr-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Header fill mocks (Jason Oct 23 6:39-6:47 PM, "fill in the space" / "make the tiles bigger" / "I want all 9"), localhost
   only via ?lk= and ?fill=. Lockup stays top-left (S of STRATEGIES under the S of SYSTEMATIC, lime period): ?lk=125 / 150.
   ?fill=4 (recommended): no extra row; the 3x3 tiles take the spare height. Tile height follows the viewport
   (--th: 108px at 390x664 Safari with toolbars, up to 142px, the pre-c76 size, on 780-844 tall screens), and the
   logo / ticker / name / price / padding scale with it (StocksNews 'Market Scanner' proportions: roomy tile, big bold
   price, bigger logo; their branding / colours not copied). ?fill=2: slim 'Search ticker' field under the lockup row (opens the
   ticker search; the chip-row magnifier goes). ?fill=3: SPY / QQQ / IWM / VIX row instead of the SPY / QQQ corner. */
@media (max-width:899px){
 html[data-lk="125"] .tp-hd .ss-w{--wm:26px}
 html[data-lk="150"] .tp-hd .ss-w{--wm:31.5px}
 html[data-fill~="2"] .tp-fill,html[data-fill~="3"] .tp-fill{display:block;margin:6px 0 0}
 html[data-fill~="2"] .tp-srch{display:none}
 html[data-fill~="3"] .tp-tr{display:none}
}
.tp-fill{display:none}
html[data-ssv]:not([data-ssv=tops]) .tp-fill{display:none!important}
.tp-sfield{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink-3);font:500 15px/1 var(--f-body);text-align:left;cursor:text;-webkit-tap-highlight-color:transparent}
.tp-sfield svg{width:16px;height:16px;flex:none;color:var(--ink-2)}
.tp-sfield:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.tp-mrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);text-decoration:none}
.tp-mc{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;padding:5px 4px 6px}
.tp-mc+.tp-mc{border-left:1px solid var(--line)}
.tp-mc small{font:600 11px/1.2 var(--f-body);letter-spacing:.04em;color:var(--ink-3)}
.tp-mc b{font:700 14px/1.2 var(--f-body);font-variant-numeric:tabular-nums;white-space:nowrap}
.tp-mc b.up{color:var(--up)}.tp-mc b.dn{color:var(--down)}.tp-mc b.na{color:var(--ink-3)}
.tp-mc b i{font-style:normal;font-weight:500;font-size:11.5px;color:var(--ink-2)}
.tp-mc.st b{color:var(--ink-3)}


/* Movers grid, phone (Jason, Oct 23 7:17 PM: "I want what they do. It's 6"): exactly 6 tiles in 2 columns with the reference
   proportions (36px-class logo, 17px bold ticker, 13px full name, 22-24px bold price, change line under it, badges on the
   change line, generous padding). Tiles grow with the visible height (clamped 108-150px); extra height goes to roomier tiles
   and more of the watch list, never more tiles. 380px = everything on screen that is not tile rows (header, strip, chips,
   Gainers/Losers, View all, nav, watch-list peek). 6 tiles + View all + watch-list start clear the nav from 659px up. */
@media (max-width:899px){
 .tp-app{--th:clamp(108px,calc((100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 380px) / 3),150px)}
 .tp-app .tp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(8px + (var(--th) - 108px) * .08)}
 .tp-app .tp-grid .tp-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto 1fr auto;grid-template-areas:"top top" "px px" "ch x";column-gap:6px;row-gap:0;min-height:var(--th);padding:calc(10px + (var(--th) - 108px) * .1) 12px}
 .tp-app .tp-grid .tp-top{grid-area:top;gap:calc(8px + (var(--th) - 108px) * .05);margin:0 0 calc(5px + (var(--th) - 108px) * .1)}
 .tp-app .tp-grid .tp-top .clg{--clg:calc(32px + (var(--th) - 108px) * .12)}
 .tp-app .tp-grid .tp-id{gap:calc(1px + (var(--th) - 108px) * .04)}
 .tp-app .tp-grid .tp-tk{font-size:calc(16px + (var(--th) - 108px) * .04);font-weight:700}
 .tp-app .tp-grid .tp-nm{font-size:calc(12.5px + (var(--th) - 108px) * .02)}
 .tp-app .tp-grid .tp-pq{display:contents}
 .tp-app .tp-grid .tp-px{grid-area:px;justify-self:start;align-self:end;font-size:calc(21px + (var(--th) - 108px) * .08);font-weight:800;line-height:1.2}
 .tp-app .tp-grid .tp-px.sm{font-size:calc(18.5px + (var(--th) - 108px) * .07)}
 .tp-app .tp-grid [data-ch]{grid-area:ch;align-self:center;min-width:0;white-space:nowrap}
 .tp-app .tp-grid .tp-ch{font-size:calc(12.5px + (var(--th) - 108px) * .012);flex-wrap:nowrap}
 .tp-app .tp-grid .tp-x .tp-tag{padding:0 5px;font-size:10px}
 .tp-app .tp-grid .tp-x{grid-area:x;align-self:center;justify-self:end;max-width:100%;margin:0;padding:0}
}
/* from 720px tall the tiles have room for the full company name on up to 2 lines */
@media (max-width:899px) and (min-height:720px){
 .tp-app .tp-grid .tp-top{align-items:flex-start}
 .tp-app .tp-grid .tp-nm{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2}
}
@supports not (height:100dvh){@media (max-width:899px){.tp-app{--th:clamp(108px,calc((100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 380px) / 3),150px)}}}

/* Header rhythm (Jason, Oct 23 7:44 PM "Empty space" / 7:45 PM "Oddly staggered"). Standalone: the top inset is NOT doubled;
   the lockup ink sits ~9px under the status bar (inset + 4px box; 4px in a browser tab). One ~8px step everywhere (ink to
   ink / box to box): status bar -> lockup row, lockup row -> status strip, strip -> chips. Row 1 is one baseline: SPY / QQQ sit on the wordmark baseline, right edge on
   the page edge, one line (dot + SPY + QQQ, no 'Yahoo · after hrs' sub-line). The strip is always one line: pill + 'ends
   8:00 PM' left, source + age right ('Updated 6h ago · stale', 'Yahoo · 4s old'), centred; the right side clips with an
   ellipsis before it could ever wrap. */
.tp-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
html[data-tr=mkt] .tp-hd-row{align-items:baseline}
.tp-tr-mkt{flex-direction:row;align-items:baseline;gap:7px;padding:8px 0 8px 8px;margin:-8px 0}
.tp-tr-mkt .tp-tr-st{align-self:center;gap:0}
.tp-tr-mkt .tp-tr-st i{width:7px;height:7px}
html.tp-dc .tp-stat{flex-wrap:nowrap;gap:10px}
html.tp-dc .tp-stat .tp-box{flex:none;white-space:nowrap}
html.tp-dc .tp-stat .tp-box-r{flex:0 1 auto;min-width:0;overflow:hidden}
html.tp-dc .tp-stat .tp-box-r .tp-cd{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:899px){
 /* the wordmark's line box has ~5px of air above the 't' ascender, so inset + 4px puts the ink ~9px under the status bar */
 .tp-app{padding-top:calc(env(safe-area-inset-top,0px) + 4px)}
 html.tp-dc .tp-hd{margin:0}
 html.tp-dc .tp-stick{padding-top:8px}
 /* freed height (one strip line, ~16px): half to the 6 tiles (--th), half to the watch-list peek */
 .tp-app{--th:clamp(108px,calc((100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 372px) / 3),150px)}
}
@supports not (height:100dvh){@media (max-width:899px){.tp-app{--th:clamp(108px,calc((100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 372px) / 3),150px)}}}
/* Caps tracking (Jason, Oct 23 7:48 PM "Weird spacing in systematic strategies letters"): the shared slash spec tracks the caps
   at .18em (1.87px at the 1.25x header), which reads gappy next to the tight wordmark; .1em here (header, splash, sign-in).
   Nothing forces the two lines to equal width; the S of STRATEGIES stays under the S of SYSTEMATIC (same ghost-slash box). */
/* Header lockup tuned to match the reference lockup proportions at 390 @3x within 3% (Jason, Oct 23 8:58 PM):
   26px wordmark in the header, .18em cap tracking so SYSTEMATIC ends just past the lime dot, tight gap under coteau. and
   between the two cap lines, and .915em slash box so '/' sits close to S. Splash (52px) and sign-in (62px) are untouched. */
@media (max-width:899px){
 .tp-hd .ss-w{--wm:26px;--slk-tr:.045em;--slk-gap-top:.22;--slk-sl-w:.915em;--slk-lh:1.25;--slk-gap-top:.22;--slk-sl-w:.915em;--slk-lh:1.25}
 .tp-hd .slk-ss{transform:translateY(-.33px)}
 .tp-hd .slk-l2{transform:translateY(-.33px)}
}
html[data-tr=mkt] .tp-hd-row{margin-right:-2px}   /* SPY / QQQ right edge on the strip's right edge (the header has 2px side padding) */

/* Light-mode stripes (Jason, Oct 23 7:56 PM "the slightest bit more noticeable"): --grid-op .15 -> .19 (+25%) on the light
   theme only (set in the light token block at the top); dark stays .19; cards stay opaque on top. */
/* Theme toggle (tops.js, Option A sliding sun/moon pill toggle 46x24px, Jason Oct 23 9:30 PM):
   both sun and moon glyphs sit inside a 46x24px capsule with a sliding 18px circular thumb (::before). Auto = small dot. */
.tp-tt{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:space-between;width:46px;height:24px;padding:0 5px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);cursor:pointer;
 -webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}
.tp-hd-row>.tp-tt{align-self:flex-start;margin:1px 0 0}
html[data-theme=light] .tp-tt{background:#D5E0F0;border-color:#C3D0E4}
.tp-tt::before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#FFFFFF;box-shadow:0 1px 3px rgba(10,17,36,.2);transition:transform .2s cubic-bezier(.2,.8,.2,1),background-color .2s;z-index:1}
html[data-theme=dark] .tp-tt::before{transform:translateX(22px);background:#1D2B4F;box-shadow:0 0 0 1px rgba(56,189,248,.48),0 1px 3px rgba(0,0,0,.45)}
.tp-tt svg{position:relative;z-index:2;width:13px;height:13px;display:block;transition:color .18s ease,opacity .18s ease}
html[data-theme=dark] .tp-tt-moon{color:#38BDF8;opacity:1}
html[data-theme=dark] .tp-tt-sun{color:var(--ink-3);opacity:.55}
html[data-theme=light] .tp-tt-sun{color:#D97706;opacity:1}
html[data-theme=light] .tp-tt-moon{color:#56627E;opacity:.6}
.tp-tt-a{position:absolute;left:50%;bottom:1.5px;width:3.5px;height:3.5px;margin-left:-1.75px;border-radius:50%;background:var(--acc);z-index:2;display:none}
.tp-tt[data-mode=auto] .tp-tt-a{display:block}
.tp-tt:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.tp-tt.tp-tt-ok{border-color:var(--acc)}
html[data-tr=mkt] .tp-hd-row{gap:10px}
html[data-tr=mkt] .tp-hd-row>.tp-tr{margin-left:auto}
/* fallback placement (?tt=chip, localhost only): last item of the chip row, like the magnifier at its start */
.tp-chipbar>.tp-tt{align-self:center;margin:0 16px 0 6px}

/* Full layout, symmetrical filter row, SPY/QQQ alignment, slim bottom nav, and refined tile numbers (Jason, Oct 23 9:07-9:11 PM):
   - Un-cramp top padding (inset + 12px) and give breathable spacing between header, status strip, filter row, Gainers/Losers, and tiles.
   - Align SPY / QQQ at the bottom of the 2-line lockup (right above the status strip) with the theme button stacked cleanly above it on the coteau. line.
   - Make the filter chip row 100% symmetrical and flush with the left/right container edges (no horizontal slider hanging off the right side).
   - Slim bottom nav (48px + .55 safe-area bottom) and tune --th (up to 180px) so the 6 tiles + View all stocks fill the first screen cleanly and Watch list starts below the fold.
   - Refined tile price (18px weight 600) and % change (13px weight 500). */
@media (max-width:899px){
 .tp-app{padding-top:calc(env(safe-area-inset-top,0px) + 10px);--th:clamp(108px,calc((100dvh - env(safe-area-inset-top,0px) - var(--tp-sab) - var(--nav-h) - 298px) / 3),180px)}
 html.tp-sa .tp-app{padding-top:calc(env(safe-area-inset-top,0px) + 4px)}
 html.tp-dc .tp-hd{margin:0 0 2px}
 html[data-tr=mkt] .tp-hd-row{position:relative;align-items:flex-end}
 .tp-hd-row>.tp-tt{position:absolute;top:1px;right:2px;margin:0;width:46px;height:24px}
 .tp-hd-row>.tp-tt svg{width:13px;height:13px}
 .tp-tr-mkt{padding:0 2px 1px 8px;margin:0}
 html.tp-dc .tp-stick{padding-top:11px;padding-bottom:6px}
 .tp-chips.tp-chipbar{margin:10px 0 0;padding:0;gap:6px;overflow:visible}
 .tp-chips-sc{overflow:visible;padding:0;margin:0;-webkit-mask-image:none;mask-image:none;gap:6px}
 .tp-dv,.tp-cg[role=group]{display:none}
 .tp-cg[role=tablist]{flex:1;display:flex;gap:6px}
 .tp-cg[role=tablist] .tp-chip{flex:1;justify-content:center;display:inline-flex;align-items:center;padding:0 10px;height:30px;font-size:13px}
 .tp-chip.tp-srch-b{height:30px;width:30px}
 .tp-sub{margin:10px 0 12px}
 .tp-sub .tp-seg button{height:28px;font-size:13px}
 .tp-app .tp-grid{gap:10px}
 .tp-more{margin-top:12px}.tp-more-b{height:44px;font-size:15px}
 .hm{margin:18px 0 0}
}
/* Exact Stocks.News Market Scanner 2x3 tile format & Inter typography (Jason, Oct 23 9:48-9:55 PM, 01M5NSK6DRRJVFST6PRQ46SC8J.jpg):
   - Measured from 1320x2868 @ 3x:
     * Card: compact 3-row flex column (min-height: 0, padding: 13px 14px 12px, border-radius: 12px), subtle green/red top glow gradient.
     * Row 1 (.tp-top): 32x32px rounded-square logo (border-radius: 8px) + right stack (.tp-id):
       - Ticker (.tp-tk): Inter 700 15px/1.15, #FFFFFF (dark) / #070E20 (light)
       - Company Name (.tp-nm): Inter 400 12.5px/1.2, #D2D5CF (dark) / #4E5D73 (light), single line with ellipsis (...) when too long
     * Row 2 (.tp-px): Inter 700 18.5px/1.15, tabular-nums, letter-spacing -0.015em, #FFFFFF (dark) / #070E20 (light)
     * Row 3 (.tp-ch): Inter 500 13px/1.2, tabular-nums, zig-zag trend arrow SVG (14x9.5px) + "+$0.82 (75.229%)" in #6CC496 (dark gainers) / #F06A72 (dark losers) */
:root{--f-num:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",sans-serif}
.tp-app .tp-grid .tp-card{
 display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;
 gap:0;min-height:0;padding:13px 14px 12px;border-radius:12px;
 font-family:var(--f-num);
 background:linear-gradient(180deg,rgba(28,68,36,.44) 0%,rgba(8,13,24,.96) 64%);
 border:1px solid rgba(108,196,150,.24)}
.tp-app .tp-grid .tp-card.dn{
 background:linear-gradient(180deg,rgba(95,28,34,.44) 0%,rgba(8,13,24,.96) 64%);
 border-color:rgba(240,106,114,.24)}
html[data-theme=light] .tp-app .tp-grid .tp-card{
 background:linear-gradient(180deg,rgba(16,185,129,.12) 0%,#F5F8FD 65%);
 border-color:rgba(13,138,84,.26)}
html[data-theme=light] .tp-app .tp-grid .tp-card.dn{
 background:linear-gradient(180deg,rgba(239,68,68,.12) 0%,#F5F8FD 65%);
 border-color:rgba(209,50,40,.26)}
.tp-app .tp-grid .tp-top{display:flex;align-items:center;gap:9px;width:100%;min-width:0;margin:0 0 11px}
.tp-app .tp-grid .tp-top .clg{--clg:32px;width:32px;height:32px;min-width:32px;border-radius:8px}
.tp-app .tp-grid .tp-id{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px}
.tp-app .tp-grid .tp-tk{font:700 15px/1.15 var(--f-num);letter-spacing:-.01em;color:#FFFFFF;white-space:nowrap}
html[data-theme=light] .tp-app .tp-grid .tp-tk{color:#070E20}
.tp-app .tp-grid .tp-nm{
 display:block;-webkit-line-clamp:unset;-webkit-box-orient: initial;
 font:400 12.5px/1.2 var(--f-num);color:#D2D5CF;
 white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
html[data-theme=light] .tp-app .tp-grid .tp-nm{color:#4E5D73}
.tp-app .tp-grid .tp-pq{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;margin:0}
.tp-app .tp-grid .tp-px{align-self:flex-start!important;justify-self:start!important;font:700 18.5px/1.15 var(--f-num);letter-spacing:-.015em;font-variant-numeric:tabular-nums;color:#FFFFFF;margin:0;padding:0}
.tp-app .tp-grid [data-ch],.tp-app .tp-grid .tp-ch{align-self:flex-start!important;justify-self:start!important;text-align:left!important}
html[data-theme=light] .tp-app .tp-grid .tp-px{color:#070E20}
.tp-app .tp-grid .tp-px.sm{font-size:17px}
.tp-app .tp-grid .tp-ch{
 display:inline-flex;align-items:center;gap:5px;
 font:500 13px/1.2 var(--f-num);letter-spacing:-.01em;font-variant-numeric:tabular-nums;
 white-space:nowrap;flex-wrap:nowrap;margin:0}
.tp-app .tp-grid .tp-ch svg,.tp-rows .tp-ch svg,.tp-sh-pq .tp-ch svg{width:14px;height:9.5px;flex:none}
.tp-app .tp-grid .tp-ch.up,.tp-rows .tp-ch.up,.tp-sh-pq .tp-ch.up{color:#6CC496}
.tp-app .tp-grid .tp-ch.dn,.tp-rows .tp-ch.dn,.tp-sh-pq .tp-ch.dn{color:#F06A72}
html[data-theme=light] .tp-app .tp-grid .tp-ch.up,html[data-theme=light] .tp-rows .tp-ch.up,html[data-theme=light] .tp-sh-pq .tp-ch.up{color:#0D8A54}
html[data-theme=light] .tp-app .tp-grid .tp-ch.dn,html[data-theme=light] .tp-rows .tp-ch.dn,html[data-theme=light] .tp-sh-pq .tp-ch.dn{color:#D13228}
.tp-app .tp-grid .tp-x{display:none!important}
@media (display-mode:standalone) and (max-width:899px){.tp-app{padding-top:calc(env(safe-area-inset-top,0px) + 4px)}}
@supports not (height:100dvh){@media (max-width:899px){.tp-app{--th:clamp(108px,calc((100vh - env(safe-area-inset-top,0px) - var(--tp-sab) - var(--nav-h) - 298px) / 3),180px)}}}

/* Collapsible Top Gainers & Unusual Activity on Pro Home Screen (Jason Oct 23 10:19 PM) */
.tp-t-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
html[data-ssv]:not([data-ssv=tops]) [data-tp-col=main]{display:none}
.tp-col-btn{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:999px;border:1px solid var(--rim-2);background:var(--card-2);color:var(--ink-2);font:600 12px/1 var(--f-body);cursor:pointer;flex:none;transition:border-color 140ms,color 140ms,background 140ms}
.tp-col-btn:hover{border-color:var(--acc);color:var(--ink)}
.tp-ux-sec{margin-top:16px;padding-top:14px;border-top:1px solid var(--rim)}
.tp-ux-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.tp-ux-htx{display:flex;flex-direction:column;gap:2px;min-width:0}
.tp-ux-t{margin:0;font:700 20px/1.15 var(--f-head);letter-spacing:-.015em;color:var(--ink)}
.tp-ux-t::before{content:"/ ";color:var(--acc);font-weight:700}
.tp-ux-sub{font:500 11.5px/1.25 var(--f-body);color:var(--ink-3)}


/* V2 gold standard tile surface & top border on Pro (.tp-tile, .tp-idx-p) */
.tp .tp-tile,.tp .tp-idx-p{border-radius:13px!important;padding:11px 12px!important}
html[data-theme="light"] .tp .tp-tile.up,html[data-theme="light"] .tp .tp-idx-p.up{background:linear-gradient(180deg,rgba(22,163,74,.08) 0%,#F5F8FD 55%)!important;border-top:2px solid rgba(22,163,74,.45)!important}
html[data-theme="light"] .tp .tp-tile.dn,html[data-theme="light"] .tp .tp-idx-p.dn{background:linear-gradient(180deg,rgba(220,38,38,.07) 0%,#F5F8FD 55%)!important;border-top:2px solid rgba(220,38,38,.40)!important}
html[data-theme="dark"] .tp .tp-tile.up,html[data-theme="dark"] .tp .tp-idx-p.up{background:linear-gradient(180deg,rgba(34,197,94,.16) 0%,#131F3B 60%)!important;border-top:2px solid rgba(74,222,128,.55)!important}
html[data-theme="dark"] .tp .tp-tile.dn,html[data-theme="dark"] .tp .tp-idx-p.dn{background:linear-gradient(180deg,rgba(239,68,68,.15) 0%,#131F3B 60%)!important;border-top:2px solid rgba(248,113,113,.50)!important}

.ss-fstat{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 10px;padding:8px 12px;border-radius:var(--rs);background:var(--surface-2);border:1px solid var(--line);font:500 12.5px/1.35 var(--f-body);color:var(--ink-2)}
.ss-fstat b{color:var(--ink);font-weight:600}
.ss-frst{flex:none;border:1px solid var(--line);background:var(--card);color:var(--acc);border-radius:999px;padding:4px 10px;font:600 12px/1 var(--f-body);cursor:pointer}
.ss-frst:active{opacity:.75}

/* Generous breathing room between / SYSTEMATIC STRATEGIES lockup and the page title on Advanced, Signals, Journal, Guide (Jason Oct 23 9:25 PM ET) */
html[data-ssv]:not([data-ssv=tops]) .tp-hd{flex-direction:column;align-items:stretch;gap:0;margin:0 0 12px}
html[data-ssv]:not([data-ssv=tops]) .tp-hd-row+.tp-hd-tx{margin-top:16px;padding-top:2px}
html[data-ssv]:not([data-ssv=tops]) .tp-t{font-size:22px;line-height:1.2;letter-spacing:-.015em}
.ss-glv-stat{margin:10px 0 0}

/* Signals tab separation: Premarket sheet vs Macro calendar, Swing description vs Recent triggers, and Feed filter grouping */
.ss-pl-foot{display:block;margin:8px 2px 16px;font-size:12px;line-height:1.45;color:var(--mut)}
.ss-macro-hd{margin-top:16px!important}
.ss-macro-card{margin-top:6px!important}
.ss-swg-list{margin-top:12px!important}
.ss-subhd{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 14px 8px;border-bottom:1px solid var(--bd);background:color-mix(in srgb,var(--fg) 2.5%,transparent)}
.ss-subhd>span{font:600 11px/1.2 var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--fg)}
.ss-subhd>small{font-size:11.5px;line-height:1.35;color:var(--mut);text-align:right}
.ss-filt{display:flex;flex-direction:column;gap:6px;margin:6px 0 10px}

/* Decluttered Mover catalysts & key levels card on Signals (Jason Oct 23 9:34 PM ET) */
.ss-pl-row{padding:11px 14px!important;gap:7px!important}
.ss-pl-top{display:flex;align-items:center;gap:8px;width:100%}
.ss-pl-q{display:inline-flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}
.ss-warn-pill{display:inline-flex;align-items:center;padding:2px 6px;border-radius:5px;font:600 10.5px/1.2 var(--font);color:var(--dn);background:color-mix(in srgb,var(--dn) 14%,transparent);border:1px solid color-mix(in srgb,var(--dn) 30%,transparent);white-space:nowrap}
.ss-pl-cat{display:block;width:100%;font-size:12.5px;line-height:1.38;text-align:left;padding-left:36px}
.ss-pl-cat.has b{font-weight:600;color:var(--fg)}
.ss-pl-cat.has em{font-style:normal;font-size:11.5px;color:var(--mut)}
.ss-pl-cat.none{font-size:11.5px;color:var(--mut);font-style:italic}
.ss-pl-tags{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;width:100%;padding-left:36px}
.ss-pl-lvs{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.ss-lv-pill{display:inline-flex;align-items:center;gap:4px;padding:2.5px 7px;border-radius:6px;font:500 11px/1.2 var(--mono,var(--font));color:var(--fg);background:color-mix(in srgb,var(--fg) 5%,transparent);border:1px solid var(--bd);white-space:nowrap}
.ss-lv-pill em{font-style:normal;font-size:10px;color:var(--mut);font-weight:600}
.ss-lv-pill.brk{border-color:color-mix(in srgb,var(--up) 35%,var(--bd));background:color-mix(in srgb,var(--up) 9%,transparent)}
.ss-lv-pill.sup{border-color:color-mix(in srgb,var(--ac) 32%,var(--bd));background:color-mix(in srgb,var(--ac) 8%,transparent)}
.ss-pl-wtags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:auto}
.ss-wtag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:5px;font:600 10px/1.2 var(--font);letter-spacing:.02em;text-transform:uppercase;color:var(--mut);background:color-mix(in srgb,var(--fg) 4%,transparent);border:1px solid var(--bd)}
.ss-pl-leg{border-top:1px solid var(--bd);padding:9px 14px;background:color-mix(in srgb,var(--fg) 2%,transparent)}
.ss-pl-leg>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none;font:500 11.5px/1.3 var(--font);color:var(--mut)}
.ss-pl-leg>summary::-webkit-details-marker{display:none}
.ss-pl-leg-b{margin-top:8px;font-size:11.5px;line-height:1.45;color:var(--mut);display:flex;flex-direction:column;gap:5px}
.ss-pl-leg-b p{margin:0}
.ss-pl-leg-b b{color:var(--fg);font-weight:600}

/* ---------- Sheet Grab Handle, Top X Close, & iOS Scroll Lock ---------- */
html.tp-sheet-on,html.tp-sheet-on body{overflow:hidden!important;overscroll-behavior:none!important}
.tp-grab-hit{padding:8px 0 6px;margin:-6px 0 2px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}
.tp-x-btn{flex:none;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font:600 18px/1 var(--f-body);display:grid;place-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.tp-x-btn:active{background:var(--line)}
.ss-x-top{position:sticky;top:0;float:right;margin:-2px 0 0 8px;z-index:3}
.ss-sh-acts{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding-right:38px}
.ss-clr-btn{border:1px solid var(--line);background:var(--surface-2);color:var(--acc);border-radius:999px;padding:4px 10px;font:600 11.5px/1.1 var(--f-body);cursor:pointer}
.ss-sh-ft{display:flex;gap:8px;margin-top:10px}
.ss-sh-ft .ss-btn{margin-top:0;flex:1}
.ss-btn-sm{padding:10px 12px;font-size:13px}

/* ---------- Subtle Green/Red Top Glow on Mover Tiles & Dollar+Percent Change ---------- */
.tp-card[data-dir=up]{background:radial-gradient(120% 80% at 50% 0%,rgba(46,211,163,.13),transparent 62%),var(--card);border-top-color:rgba(46,211,163,.34)}
.tp-card[data-dir=dn]{background:radial-gradient(120% 80% at 50% 0%,rgba(240,106,120,.13),transparent 62%),var(--card);border-top-color:rgba(240,106,120,.34)}
.tp-ch{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.tp-ch-d{font-weight:700}
.tp-ch-p{opacity:.95;font-weight:600}
.ss-pc{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}
.ss-pc .tp-ar{width:14px;height:14px;flex:none}
.ss-an-btn{margin-left:6px;padding:4px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--acc) 42%,var(--line));background:color-mix(in srgb,var(--acc) 12%,transparent);color:var(--acc);font:600 11.5px/1.1 var(--f-body);cursor:pointer;white-space:nowrap}
.ss-an-btn:active{opacity:.8}

/* ---------- Hard-Coded Tops Search Bar & Top/Bottom Collapse Bar ---------- */
.tp-sbar-wrap{margin:6px 0 8px}
.tp-sbar-main{width:100%;display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font:500 13px/1.2 var(--f-body);cursor:pointer;text-align:left}
.tp-sbar-main span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-sbar-main kbd{padding:2px 6px;border-radius:5px;border:1px solid var(--line);background:var(--card);color:var(--ink-3);font:600 11px/1 var(--f-mono,monospace)}
.tp-srch-res small{font-weight:400;color:var(--ink-3);margin-left:3px}
.tp-more-top{margin:4px 0 8px}
.tp-exp-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2)}
.tp-exp-cnt{font:500 12.5px/1.2 var(--f-body);color:var(--ink-2)}
.tp-exp-cnt b{color:var(--ink);font-weight:700}
.tp-exp-bar .tp-more-b{width:auto;padding:6px 12px;margin:0;font-size:12.5px}

/* ---------- Bottom Sheet Dual Actions & Live Dials Strip ---------- */
.tp-sh-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.tp-sh-acts .tp-open{margin-top:0;padding:11px 10px;font-size:13px;text-align:center;display:flex;align-items:center;justify-content:center}
.tp-open-pri{background:var(--acc)!important;border-color:var(--acc)!important;color:#041315!important;font-weight:700!important}
.tp-open-sec{background:var(--surface-2)!important;border:1px solid var(--line)!important;color:var(--ink)!important}
.tp-sh-dcard{margin:10px 0 2px;padding:10px 12px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2)}
.tp-sh-dtop{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tp-sh-dv{display:block;font:700 15px/1.2 var(--f-body);margin:2px 0}
.tp-sh-dv.sbuy,.tp-sh-dv.buy{color:var(--up)}
.tp-sh-dv.ssell,.tp-sh-dv.sell{color:var(--down)}
.tp-sh-dv.neu{color:var(--ink-2)}
.tp-sh-mtfs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
.tp-sh-mtf{display:flex;flex-direction:column;align-items:center;font:500 10.5px/1.2 var(--f-body);color:var(--ink-3)}
.tp-sh-mtf em{font-style:normal}
.tp-sh-mtf b{font-weight:700;color:var(--ink-2);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tp-sh-mtf b.up{color:var(--up)}.tp-sh-mtf b.dn{color:var(--down)}

/* ---------- Speedometer Dials Card (Oscillators · Summary · Moving Averages) ---------- */
.ss-dials-wrap{margin:8px 0 12px}
.tp-dials-card{padding:14px}
.tp-dials-hd{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.tp-dials-hd b{display:block;font:700 15px/1.25 var(--f-body);color:var(--ink)}
.tp-dials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:stretch}
@media(max-width:520px){.tp-dials-grid{grid-template-columns:1fr;gap:10px}.tp-dial.hero{order:-1}}
.tp-dial{display:flex;flex-direction:column;align-items:center;padding:10px 8px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2);text-align:center}
.tp-dial.hero{border-color:color-mix(in srgb,var(--acc) 38%,var(--line));background:radial-gradient(120% 90% at 50% 0%,rgba(56,189,248,.10),transparent 68%),var(--surface-2)}
.tp-dial-t{font:600 11.5px/1.2 var(--f-body);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:4px}
.tp-dial-svg{width:100%;max-width:175px;height:auto;overflow:visible}
.tp-dial-lbl{font:600 10.5px/1 var(--f-body);fill:var(--ink-3);letter-spacing:.02em}
.tp-dial-ndl{fill:var(--ink);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.tp-dial-hub{fill:var(--ink)}
.tp-dial-v{margin-top:2px;padding:3px 10px;border-radius:999px;font:700 13px/1.2 var(--f-body);letter-spacing:.02em}
.tp-dial-v.sbuy,.tp-dial-v.buy{color:var(--up);background:color-mix(in srgb,var(--up) 15%,transparent)}
.tp-dial-v.ssell,.tp-dial-v.sell{color:var(--down);background:color-mix(in srgb,var(--down) 15%,transparent)}
.tp-dial-v.neu{color:var(--ink-2);background:color-mix(in srgb,var(--ink-2) 12%,transparent)}
.tp-dial-cnts{display:flex;gap:10px;margin-top:6px;font:500 11px/1.2 var(--f-body);color:var(--ink-3)}
.tp-dial-cnts b{color:var(--ink);font-weight:700}
.tp-dial-cnts .up b{color:var(--up)}.tp-dial-cnts .dn b{color:var(--down)}
.tp-an-street{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.tp-an-st-col{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line)}
.tp-an-st-v.sbuy,.tp-an-st-v.buy{color:var(--up)}.tp-an-st-v.ssell,.tp-an-st-v.sell{color:var(--down)}
.tp-dials-det{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.tp-dials-det>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none;font:600 12px/1.3 var(--f-body);color:var(--acc)}
.tp-dials-det>summary::-webkit-details-marker{display:none}
.tp-dials-tbls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:10px}
.tp-ind-tbl{width:100%;border-collapse:collapse;font:400 11.5px/1.35 var(--f-body);margin-top:4px}
.tp-ind-tbl th{text-align:left;color:var(--ink-3);font-weight:600;padding:4px 6px;border-bottom:1px solid var(--line)}
.tp-ind-tbl td{padding:4px 6px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);font-variant-numeric:tabular-nums}
.tp-ind-tbl td.up{color:var(--up)}.tp-ind-tbl td.dn{color:var(--down)}
.tp-dials-ft{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.tp-dials-btn{border:1px solid color-mix(in srgb,var(--acc) 45%,var(--line));background:color-mix(in srgb,var(--acc) 12%,transparent);color:var(--acc);border-radius:8px;padding:7px 11px;font:600 12px/1.1 var(--f-body);cursor:pointer}
.tp-dials-link{font:600 12px/1.2 var(--f-body);color:var(--ink-2);text-decoration:none}
.tp-dials-link:hover{color:var(--acc)}

/* ---------- Universal Cyan Slash (/ ) on Every Header, Section & Subsection (Jason Oct 23 10:02 PM ET) ---------- */
.tp-t::before,
.ss-sec:not(.in):not(.ss-pl-hd)>span:first-child::before,
.ss-sec.ss-pl-hd>span:first-child>b:first-child::before,
.ss-sec.in::before,
.ss-subhd>span:first-child::before,
.hm-h h2::before,
.tp-dials-hd b::before,
.tp-sh-dtop .tp-lab::before,
.ss-hero>b::before,
.ss-g>summary>b:first-child::before,
.ss-g-set>b:first-child::before,
.ss-sh-hd>b:first-child::before,
.te-lab::before,
.ss-swg-h>b:first-child::before,
.ss-mk-l>.tp-lab::before,
.tp-rt-v2 .rt-k::before,
.tp-dials-det>summary>span:first-child::before,
.tp-dials-tbls .tp-lab::before,
.tp-ustk-card .tp-lab::before{
 content:"/ ";
 color:#38BDF8;
 font-weight:700;
 margin-right:2px;
}
html[data-theme=light] .tp-t::before,
html[data-theme=light] .ss-sec:not(.in):not(.ss-pl-hd)>span:first-child::before,
html[data-theme=light] .ss-sec.ss-pl-hd>span:first-child>b:first-child::before,
html[data-theme=light] .ss-sec.in::before,
html[data-theme=light] .ss-subhd>span:first-child::before,
html[data-theme=light] .hm-h h2::before,
html[data-theme=light] .tp-dials-hd b::before,
html[data-theme=light] .tp-sh-dtop .tp-lab::before,
html[data-theme=light] .ss-hero>b::before,
html[data-theme=light] .ss-g>summary>b:first-child::before,
html[data-theme=light] .ss-g-set>b:first-child::before,
html[data-theme=light] .ss-sh-hd>b:first-child::before,
html[data-theme=light] .te-lab::before,
html[data-theme=light] .ss-swg-h>b:first-child::before,
html[data-theme=light] .ss-mk-l>.tp-lab::before,
html[data-theme=light] .tp-rt-v2 .rt-k::before,
html[data-theme=light] .tp-dials-det>summary>span:first-child::before,
html[data-theme=light] .tp-dials-tbls .tp-lab::before,
html[data-theme=light] .tp-ustk-card .tp-lab::before{
 color:#0284C7;
}

.ss-q{flex-wrap:wrap;gap:6px 10px}
.ss-q-p{margin-left:auto;display:flex;align-items:baseline;flex-wrap:wrap;justify-content:flex-end;gap:4px 8px;max-width:100%}
.ss-q-p .ss-pc{white-space:nowrap;font-size:13px}

/* ---------- Zero CLS & Collapsible / Top Gainers + / Unusual + Unified Stock Detail (`t2866u`) ---------- */
.tp-card,.hm-card,.ss-card{animation:none!important;transition:border-color .15s ease,background-color .15s ease!important}

/* Option A Theme Toggle pill */

/* Collapsible section bar (/ Top Gainers, / Unusual) */
.tp-sec-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;flex-wrap:wrap}
.tp-sec-col{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:4px 2px;color:var(--ink);font:inherit;font-size:15px;font-weight:800;letter-spacing:-.01em;cursor:pointer}
.tp-sec-sl{color:#38BDF8!important;font-weight:800;font-family:var(--f-head);margin-right:2px}
html[data-theme=light] .tp-sec-sl{color:#0284C7!important}
.tp-sec-cnt{font-size:12px;font-weight:700;color:var(--mut)}
.tp-sec-chv{font-style:normal;font-size:13px;color:var(--mut);margin-left:2px}
.tp-ux-sec{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}
.tp-ux-bar{margin-bottom:6px}
.tp-ux-sub{margin:0 0 10px;font-size:12px;color:var(--mut)}
.tp-ux-more{background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:700;cursor:pointer}

/* Top Gainers return formatting inside Watchlist, Market check, Signals, and Stock Detail */
.hm-c-wrap .tp-ch,.ss-pl-q .ss-pc,.ss-mk-ix .ss-pc,.tp-ustk-pxb .ss-pc{display:inline-flex;align-items:center;gap:3px;font-family:'Inter',system-ui,-apple-system,sans-serif;font-variant-numeric:tabular-nums;font-weight:700;font-size:12.5px}
.hm-ixc b[data-hm-px],.hm-q b[data-hm-px],.ss-pl-q > b,.tp-ustk-px{font-family:'Inter',system-ui,-apple-system,sans-serif;font-variant-numeric:tabular-nums;font-weight:800}

/* Unified 7-section Stock Detail modal */
.tp-ustk{display:block;padding-bottom:18px;width:100%}
.tp-ustk>*+*{margin-top:12px}
.tp-ustk-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:nowrap;padding-right:4px}
.tp-ustk-id{display:flex;align-items:center;gap:10px;min-width:0}
.tp-ustk-titles{display:flex;flex-direction:column;min-width:0}
.tp-ustk-r1{display:flex;align-items:center;gap:6px}
.tp-ustk-sym{font-size:20px;font-weight:800;letter-spacing:-.02em}
.tp-ustk-nm{font-size:12.5px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
.tp-ustk-pxb{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.tp-ustk-px{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
.tp-ustk-bar{clear:both;display:flex;align-items:center;gap:6px;flex-wrap:nowrap;margin:10px 0 12px;width:100%}
.tp-ustk-bar>*{margin:0!important;height:36px!important;padding:8px 10px!important;border-radius:10px!important;font:700 11.5px/1.1 var(--f-body)!important;white-space:nowrap!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px;box-sizing:border-box;text-decoration:none}
.tp-ustk-bar .tp-ustk-w{flex:0 0 auto;padding:8px 10px!important}
.tp-ustk-bar .tp-open-pri{flex:1.15 1 0;min-width:0;margin-left:0}
.tp-ustk-bar .tp-open-sec{flex:1 1 0;min-width:0}
.tp-ustk-sec{display:flex;flex-direction:column;gap:6px}
.tp-ustk-shd{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:800;color:var(--ink)}
.tp-ustk-shd .ss-mut,.tp-ustk-shd .ss-seg{margin-left:auto;font-weight:600;font-size:11.5px}
.tp-anc-card{padding:8px}
.tp-anc-box{width:100%;height:220px;position:relative}
.tp-anc-load{display:flex;align-items:center;justify-content:center;height:220px;font-size:12.5px}
.tp-anc-svg{width:100%;height:195px;display:block}
.tp-ustk-desc{margin:8px 0 0;font-size:12.5px;line-height:1.48}

/* === v2 Approved Tile Design (Green/Red Top Border + Subtle Top Glow + Inter Tabular-Nums) === */
html[data-theme="dark"] .tp-card.up,
html[data-theme="dark"] .hm-ixc.up {
  background: linear-gradient(180deg, rgba(34, 197, 94, 0.16) 0%, #131F3B 60%);
  border-top: 2px solid rgba(74, 222, 128, 0.55);
}
html[data-theme="dark"] .tp-card.dn,
html[data-theme="dark"] .hm-ixc.dn {
  background: linear-gradient(180deg, rgba(239, 68, 68, 0.15) 0%, #131F3B 60%);
  border-top: 2px solid rgba(248, 113, 113, 0.50);
}
html[data-theme="light"] .tp-card.up,
html[data-theme="light"] .hm-ixc.up {
  background: linear-gradient(180deg, rgba(22, 163, 74, 0.08) 0%, #F5F8FD 55%);
  border-top: 2px solid rgba(22, 163, 74, 0.45);
}
html[data-theme="light"] .tp-card.dn,
html[data-theme="light"] .hm-ixc.dn {
  background: linear-gradient(180deg, rgba(220, 38, 38, 0.07) 0%, #F5F8FD 55%);
  border-top: 2px solid rgba(220, 38, 38, 0.40);
}
.hm-ix {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 9px !important;
}
.hm-ixc {
  border-radius: 13px !important;
  padding: 11px 12px !important;
  cursor: pointer;
}

/* V2 Analyst & Morningstar ratings card inside /tops/ Unified Stock Modal & Advanced */
.tp-rt-v2{margin:0}
.tp-rt-v2 .rt-grid{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:720px){.tp-rt-v2 .rt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tp-rt-v2 .rt-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r,13px);padding:13px 14px;box-shadow:var(--sh)}
.tp-rt-v2 .rt-ms-card{grid-column:1 / -1}

/* ---------- Light Mode Dark Coteau Navy Top Header Band & Bottom Nav Bar (`t2921u`–`t2923u`) ---------- */
html[data-theme="light"] body.tp::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: env(safe-area-inset-top, 0px);
  background: #0A1124;
  z-index: 25;
  pointer-events: none;
}
html[data-theme="light"] .tp-hd,
html[data-theme="light"] .tp-top-band {
  margin: calc(-1 * (env(safe-area-inset-top, 0px) + 12px)) -16px 0 !important;
  padding: calc(env(safe-area-inset-top, 0px) + 10px) 16px 6px !important;
  background: linear-gradient(180deg, #0A1124 0%, #0D1730 100%) !important;
  color: #EEF3FF !important;
}
html[data-theme="light"][data-ssv]:not([data-ssv=tops]) .tp-hd {
  background: linear-gradient(180deg, #0A1124 0%, #101E43 100%) !important;
  border-bottom: none !important;
  padding-bottom: 12px !important;
  margin-bottom: 12px !important;
}
html[data-theme="light"] .tp-stick {
  margin: 0 -16px 10px !important;
  padding: 4px 16px 10px !important;
  background: linear-gradient(180deg, #0D1730 0%, #101E43 100%) !important;
  border-bottom: none !important;
}
html[data-theme="light"] .tp-hd .ss-w {
  --slk-c1: #F4F7FB !important;
  --slk-c2: #B8C7E0 !important;
  --slk-sl-c: #38BDF8 !important;
}
html[data-theme="light"] .tp-hd .ss-1 {
  color: #F4F7FB !important;
}
html[data-theme="light"] .tp-hd .ss-1 b {
  color: #B8F15A !important;
}
html[data-theme="light"] .tp-hd .slk-sl {
  color: #38BDF8 !important;
}
html[data-theme="light"] .tp-hd .slk-ln {
  color: #B8C7E0 !important;
}
html[data-theme="light"] .tp-hd .tp-t {
  color: #F4F7FB !important;
}
html[data-theme="light"] .tp-hd .tp-t::before {
  color: #38BDF8 !important;
}
html[data-theme="light"] .tp-hd .tp-tr-mkt,
html[data-theme="light"] .tp-hd .tp-tr-clk {
  color: #E2E8F0 !important;
}
html[data-theme="light"] .tp-hd .tp-tr-ix span {
  color: #CBD5E1 !important;
}
html[data-theme="light"] .tp-hd .tp-tr-ix b.up {
  color: #34D399 !important;
}
html[data-theme="light"] .tp-hd .tp-tr-ix b.dn {
  color: #FB7185 !important;
}
html[data-theme="light"] .tp-hd .tp-tr-st {
  color: #94A3B8 !important;
}
html[data-theme="light"] .tp-hd .tp-tt,
html[data-theme="light"] .tp-theme {
  background: rgba(255, 255, 255, 0.10) !important;
  border-color: rgba(255, 255, 255, 0.20) !important;
  color: #E2E8F0 !important;
}
html[data-theme="light"] .tp-hd .tp-tt-sun {
  color: #FBBF24 !important;
  opacity: 1 !important;
}
html[data-theme="light"] .tp-hd .tp-tt-moon {
  color: #94A3B8 !important;
  opacity: 0.75 !important;
}
html[data-theme="light"] .tp-stick .tp-stat,
html[data-theme="light"] .tp-ses {
  background: rgba(15, 29, 60, 0.88) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  color: #E2E8F0 !important;
}
html[data-theme="light"] .tp-stick .tp-box {
  background: transparent !important;
  border-color: transparent !important;
}
html[data-theme="light"] .tp-stick .tp-cd,
html[data-theme="light"] .tp-stick .tp-lab {
  color: #94A3B8 !important;
}
html[data-theme="light"] .tp-stick .tp-val {
  color: #E2E8F0 !important;
}
html[data-theme="light"] .tp-stick .tp-pill.ses-closed {
  background: rgba(255, 255, 255, 0.10) !important;
  color: #E2E8F0 !important;
}
html[data-theme="light"] .tp-stick .tp-pill.ses-pre {
  background: rgba(56,189,248, 0.18) !important;
  color: #7FE0E1 !important;
}
html[data-theme="light"] .tp-stick .tp-pill.ses-regular {
  background: rgba(184, 241, 90, 0.16) !important;
  color: #C9F57E !important;
}
html[data-theme="light"] .tp-stick .tp-pill.ses-post {
  background: rgba(124, 140, 248, 0.20) !important;
  color: #AEB8FF !important;
}
html[data-theme="light"] .tp-nav,
html[data-theme="light"] .ss-bnav {
  background: rgba(10, 17, 36, 0.96) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.10) !important;
}
html[data-theme="light"] .tp-nav a,
html[data-theme="light"] .ss-bnav a {
  color: #8FA1C2 !important;
}
html[data-theme="light"] .tp-nav a[aria-current="page"],
html[data-theme="light"] .ss-bnav a[aria-current="page"],
html[data-theme="light"] .ss-bnav a.on {
  color: #38BDF8 !important;
}
html[data-theme="light"] .tp-nav a[aria-current="page"]::before,
html[data-theme="light"] .ss-bnav a[aria-current="page"]::before {
  background: #38BDF8 !important;
}

/* Ensure Pro Stock Detail Sheet & Cards Stay Deep Navy in Dark Mode + 2-Col Watch List Grid */
html[data-theme="dark"] .ss-sheet-c,
html[data-theme="dark"] .tp-sheet-c,
html[data-theme="dark"] .tp-ustk,
html:not([data-theme="light"]) .ss-sheet-c,
html:not([data-theme="light"]) .tp-sheet-c,
html:not([data-theme="light"]) .tp-ustk {
  --bg: #060B19;
  --card: #0B1226;
  --surface-2: #0F1830;
  --line: #1B2745;
  --ink: #EEF3FF;
  --ink-2: #A9B6D3;
  --ink-3: #8492B4;
  background: #0B1226 !important;
  color: #EEF3FF !important;
}
html[data-theme="dark"] .ss-sheet-c .ss-card,
html[data-theme="dark"] .ss-sheet-c .rt-card,
html[data-theme="dark"] .ss-sheet-c .tg,
html:not([data-theme="light"]) .ss-sheet-c .ss-card,
html:not([data-theme="light"]) .ss-sheet-c .rt-card,
html:not([data-theme="light"]) .ss-sheet-c .tg {
  background: #0F1830;
  border-color: #1B2745;
  color: #EEF3FF;
}
.hm-card[data-hm="watch"] .hm-wgrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 9px !important;
  padding: 10px 14px 12px !important;
}


/* ==========================================================================
   c80: Pro Terminal Edgy Accents, Responsive Breakpoints & Ironclad CYA
   ========================================================================== */
body.tp::after{
  background:
    repeating-linear-gradient(115deg, rgba(56,189,248,.045) 0 1px, transparent 1px 14px),
    linear-gradient(115deg, #0A1124 0%, #101E43 58%, #0D1836 100%) !important;
}
.tp-tag, .ss-pill, .tp-pill, .tp-chip.q{
  font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
.ss-cya{
  margin-top:16px;
  padding:14px 16px;
  border-radius:12px;
  background:#091022;
  border:1px solid rgba(56,189,248,.28);
  border-left:3px solid #38BDF8;
  color:#CBD5E1;
  font:400 11.5px/1.55 'Plus Jakarta Sans',Inter,system-ui,sans-serif;
  text-align:left;
}
html[data-theme="light"] .ss-cya{
  background:#DCE5F3;
  border-color:rgba(11,122,124,.32);
  border-left:3px solid #0284C7;
  color:#1E293B;
}
.ss-cya-h{
  font:800 11px/1.3 'JetBrains Mono',ui-monospace,monospace;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#F0F6FC;
  margin-bottom:8px;
}
html[data-theme="light"] .ss-cya-h{
  color:#0A1124;
}
.ss-cya-sl{
  color:#38BDF8;
  font-weight:900;
  margin-right:4px;
}
html[data-theme="light"] .ss-cya-sl{
  color:#0284C7;
}
.ss-cya-g{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
}
.ss-cya-g b{
  color:#F0F6FC;
  font-weight:700;
}
html[data-theme="light"] .ss-cya-g b{
  color:#0A1124;
}
.ss-cya-g code{
  font-family:'JetBrains Mono',ui-monospace,monospace;
  font-size:10.5px;
  padding:1px 4px;
  border-radius:4px;
  background:rgba(56,189,248,.12);
  color:#38BDF8;
}
html[data-theme="light"] .ss-cya-g code{
  background:rgba(11,122,124,.12);
  color:#0284C7;
}
@media (min-width:900px){
  .ss-cya-g{
    grid-template-columns:1fr 1fr;
    gap:10px 16px;
  }
}
@media (max-width:480px){
  .tp-ustk-bar{
    flex-wrap:wrap !important;
  }
  .tp-ustk-bar .tp-ustk-btn{
    flex:1 1 calc(50% - 6px);
    min-height:38px;
  }
}


/* Compact Pro Terminal HUD Install Strip (login + app footer) */
.tp-in-hud{margin-top:18px;padding:10px 12px;border-radius:10px;background:rgba(11,18,38,.92);border:1px solid rgba(56,189,248,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.tp-in-hud-row{display:flex;align-items:center;gap:11px}
.tp-in-hud-ic{width:28px;height:28px;border-radius:7px;flex:none;border:1px solid rgba(56,189,248,.32)}
.tp-in-hud-tx{flex:1;min-width:0;text-align:left}
.tp-in-hud-hd{display:flex;align-items:center;gap:5px;font:800 11px/1.2 var(--f-body,'Inter',sans-serif);letter-spacing:.06em;color:#F0F6FC;text-transform:uppercase}
.tp-in-hud-tag{margin-left:auto;padding:2px 6px;border-radius:4px;background:#0E243E;color:#FFFFFF;border:1px solid #38BDF8;font:700 10.5px/1 var(--f-body,'Inter',sans-serif)}
.tp-in-hud-sub{margin:4px 0 0;font:500 11.5px/1.38 'Plus Jakarta Sans',Inter,sans-serif;color:#CBD5E1}
.tp-in-hud-sub code{font:700 11px/1 var(--f-body,'Inter',sans-serif);color:#38BDF8}
.tp-in-hud-qr{width:52px;height:52px;border-radius:6px;flex:none;border:1px solid rgba(56,189,248,.35);background:#F0F6FC;padding:2px}
@media (max-width:640px){.tp-in-hud-qr{width:44px;height:44px}}
.tp-getapp{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:8px 12px;margin:0 0 10px;border-radius:9px;background:rgba(15,24,48,.78);border:1px solid rgba(56,189,248,.24);font:600 11.5px/1.35 'Plus Jakarta Sans',Inter,sans-serif;color:#CBD5E1}
.tp-getapp img{width:20px;height:20px;border-radius:5px;flex:none}
.tp-getapp b{font:800 11px/1.2 var(--f-body,'Inter',sans-serif);letter-spacing:.04em;text-transform:uppercase;color:#F0F6FC}
.tp-getapp .tp-ga-s{color:#94A3B8;font-size:11px}
html[data-theme="light"] .tp-getapp{background:#DCE5F3;border-color:#CBD5E1;color:#1E293B}
html[data-theme="light"] .tp-getapp b{color:#0A1124}
html[data-theme="light"] .tp-getapp .tp-ga-s{color:#475569}
@media (display-mode: standalone){.tp-in-hud,.tp-getapp{display:none!important}}
html.tp-sa .tp-in-hud,html.tp-sa .tp-getapp{display:none!important}

/* === High-Attention 13F / 13D / 13G & Congress Callouts + 6-Desk Hub === */
.tp-tag-flash {
  background: linear-gradient(135deg, rgba(184,241,90,0.22), rgba(56,189,248,0.18)) !important;
  color: #b8f15a !important;
  border: 1px solid rgba(184,241,90,0.65) !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em;
  box-shadow: 0 0 12px rgba(184,241,90,0.20);
}
html[data-theme="light"] .tp-tag-flash {
  background: linear-gradient(135deg, rgba(16,185,129,0.16), rgba(2,132,199,0.14)) !important;
  color: #065f46 !important;
  border-color: rgba(5,150,105,0.55) !important;
  box-shadow: none;
}
.tp-desk-flash {
  border-color: rgba(184,241,90,0.55) !important;
  background: linear-gradient(160deg, rgba(184,241,90,0.08), rgba(56,189,248,0.05) 55%, var(--bg1)) !important;
  box-shadow: 0 4px 20px rgba(184,241,90,0.08);
}
html[data-theme="light"] .tp-desk-flash {
  border-color: rgba(5,150,105,0.45) !important;
  background: linear-gradient(160deg, rgba(16,185,129,0.08), rgba(56,189,248,0.05) 55%, var(--bg1)) !important;
}
.tp-regime-bar {
  display: flex; flex-direction: column; gap: 6px; padding: 10px 12px; margin-bottom: 10px;
  border-radius: 10px; border: 1px solid var(--line); background: var(--bg1);
  font-family: var(--mono); font-size: 11px;
}
.tp-regime-r1, .tp-regime-r2 {
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px;
}
.tp-regime-k {
  font-weight: 800; color: var(--accent, #38BDF8); text-transform: uppercase; letter-spacing: 0.06em; margin-right: 4px;
}
.tp-srip-t10b {
  appearance: none; border: 1px solid var(--line); background: var(--bg2); color: var(--fg);
  font-family: var(--mono); font-size: 10.5px; font-weight: 700; padding: 3px 8px;
  border-radius: 6px; cursor: pointer;
}
.tp-srip-t10b:hover { border-color: var(--accent, #38BDF8); color: var(--accent, #38BDF8); }
.tp-desks { margin: 14px 0; border: 1px solid var(--line); border-radius: 12px; background: var(--bg1); overflow: hidden; }
.tp-desks-bar {
  display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px;
  padding: 10px 14px; border-bottom: 1px solid var(--line); background: var(--bg2);
}
.tp-desks-body { padding: 12px; }
.tp-desks-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 12px;
}
.tp-desk-card {
  border: 1px solid var(--line); border-radius: 10px; padding: 12px;
  background: var(--bg); display: flex; flex-direction: column; gap: 8px;
}
.tp-desk-rows { display: flex; flex-direction: column; gap: 6px; }

/* === c80 Pro Native-App Lock & Anti-Glitch (Jason Oct 24 2026 t3045u-t3051u) === */
html, body.tp {
  max-width: 100vw;
  overflow-x: clip;
  overscroll-behavior-x: none;
  overscroll-behavior-y: auto !important;
  -webkit-overflow-scrolling: touch;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  touch-action: manipulation;
}
body.tp button, body.tp a, body.tp input, body.tp select, body.tp textarea, body.tp [role="button"] {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.tp-hd, .tp-stick {
  transform: none !important;
  -webkit-transform: none !important;
  will-change: auto !important;
}
.tp-bnav, nav.tp-nav {
  position: fixed !important;
  bottom: 0 !important;
  top: auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9500 !important;
  transform: none !important;
  -webkit-transform: none !important;
  will-change: auto !important;
}
@media (max-width: 768px) {
  body.tp input, body.tp select, body.tp textarea, .tp-sbar-in {
    font-size: max(16px, 1em) !important;
  }
}


html[data-theme="dark"] .ss-lk .slk-ln:not(.slk-l2),
.ss-lk .slk-ln:not(.slk-l2),
.tp-app .ss-lk .slk-ln:not(.slk-l2),
.tp-in .ss-lk .slk-ln:not(.slk-l2),
.ss-splash .ss-lk .slk-ln:not(.slk-l2) {
  color: #F2F5FA !important;
  font-weight: 600 !important;
}
html[data-theme="dark"] .ss-lk .slk-ln.slk-l2,
.ss-lk .slk-ln.slk-l2,
.tp-app .ss-lk .slk-ln.slk-l2,
.tp-in .ss-lk .slk-ln.slk-l2,
.ss-splash .ss-lk .slk-ln.slk-l2 {
  color: #94A3B8 !important;
  font-weight: 600 !important;
}
html[data-theme="light"] .tp-app .ss-lk .slk-ln:not(.slk-l2),
html[data-theme="light"] .tp-in .ss-lk .slk-ln:not(.slk-l2) {
  color: #0A1124 !important;
  font-weight: 600 !important;
}
html[data-theme="light"] .tp-app .ss-lk .slk-ln.slk-l2,
html[data-theme="light"] .tp-in .ss-lk .slk-ln.slk-l2 {
  color: #52637A !important;
  font-weight: 600 !important;
}
html[data-theme="light"] .tp-app .ss-lk .slk-wm img {
  filter: invert(1) brightness(0.15) !important;
}
.tp-app .tp-grid .tp-pq {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  width: 100% !important;
}
.tp-app .tp-grid .tp-px,
.tp-app .tp-grid .tp-ch,
.tp-app .tp-grid [data-ch] {
  align-self: flex-start !important;
  justify-self: start !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}


/* Move Gainers/Losers button down onto row 2 right next to Edit Pro (Jason Oct 24 2026 t3466u) */
.tp-sec-bar.tp-sec-bar-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 6px !important;
}
.tp-sec-bar-stack .tp-sec-r1 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
}
.tp-sec-bar-stack .tp-sec-r2 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
}
.tp-sec-bar-stack .tp-sec-r2 .tp-edit-pro-btn {
  flex: 0 0 auto !important;
  height: 30px !important;
  margin: 0 !important;
}
.tp-sec-bar-stack .tp-sec-r2 .tp-seg {
  flex: 1 1 auto !important;
  margin: 0 !important;
}


/* === Fix SYSTEMATIC / STRATEGIES proportions, Inter 600 spacing, & Desktop Enter gap (Jason Oct 24 2026 t3505u-t3514u) === */
.ss-w, .ss-lk .ss-w, .tp-hd .ss-w, .tp-in-lk .ss-w, .ss-lk-hero .ss-w, .ss-lk-xl .ss-w {
  --slk-cap: 0.305 !important;
  --slk-tr: 0.065em !important;
  --slk-sl-ml: 0.015em !important;
  --slk-sl-w: 0.76em !important;
  --slk-gap-top: 0.24 !important;
  --slk-lh: 1.32 !important;
}
.tp-hd .ss-w { --wm: 28px !important; --slk-wm: 28px !important; }
.ss-lk-xl .ss-w, .tp-in-lk .ss-w { --wm: 54px !important; --slk-wm: 54px !important; }
.ss-lk-hero .ss-w { --wm: 68px !important; --slk-wm: 68px !important; }

html body .ss-lk .slk-wm img {
  height: 1em !important;
  width: auto !important;
  display: block !important;
}
html body .ss-lk .slk-ln,
html body .ss-lk .slk-sl,
html body .tp-app .ss-lk .slk-ln,
html body .tp-in .ss-lk .slk-ln,
html body .ss-splash .ss-lk .slk-ln {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 600 !important;
  font-size: calc(var(--slk-cap) * 1em) !important;
  line-height: var(--slk-lh) !important;
}
html body .ss-lk .slk-ln,
html body .tp-app .ss-lk .slk-ln,
html body .tp-in .ss-lk .slk-ln,
html body .ss-splash .ss-lk .slk-ln {
  letter-spacing: 0.065em !important;
  margin-right: -0.065em !important;
  padding-left: 0 !important;
}
html body .ss-lk .slk-sl {
  letter-spacing: 0 !important;
  font-weight: 600 !important;
  color: #38BDF8 !important;
}

@media (min-width: 900px) {
  body.tp-in:not(.tp-in-s2) {
    justify-content: center !important;
    padding: 0 6vw 0 3vw !important;
    gap: 44px !important;
  }
  body.tp-in:not(.tp-in-s2) .tp-in-hero {
    flex: 0 0 auto !important;
    margin-top: -3vh !important;
    margin-right: 0 !important;
  }
}

/* === Remove standalone Closed bar & place status indicator opposite / Top Gainers on same row (Jason Oct 24 2026 t3515u) === */
.tp-stick, [data-tp-stick] {
  display: none !important;
}
.tp-chips.tp-chipbar {
  margin-top: 6px !important;
}
.tp-sec-bar-stack .tp-sec-r1 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
}
.tp-sec-r1-right {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: auto !important;
}
.tp-pill.tp-pill-inline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  height: 24px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(148, 163, 184, 0.22) !important;
  font: 600 12px/1 "Inter", sans-serif !important;
  color: #CBD5E1 !important;
}
html[data-theme="light"] .tp-pill.tp-pill-inline {
  background: rgba(10, 17, 36, 0.06) !important;
  border-color: rgba(10, 17, 36, 0.16) !important;
  color: #334155 !important;
}

/* === Uncluttered Top-Right Controls: 24x24 Install Square + Light/Dark Toggle + In-Page Install Modal & 4-State Status (Jason Oct 24 2026 t3515u-t3525u) === */
.tp-hd-row > .tp-top-ctls {
  position: absolute !important;
  top: 1px !important;
  right: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  z-index: 5 !important;
}
.tp-hd-row > .tp-top-ctls > .tp-tt {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  margin: 0 !important;
  width: 46px !important;
  height: 24px !important;
}
.tp-dl-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  border: 1px solid var(--line) !important;
  background: var(--surface-2) !important;
  color: #38BDF8 !important;
  cursor: pointer !important;
  flex: none !important;
  transition: border-color 140ms, background 140ms !important;
}
.tp-dl-btn:hover {
  border-color: #38BDF8 !important;
}
.tp-dl-btn svg {
  width: 13.5px !important;
  height: 13.5px !important;
  display: block !important;
}
html[data-theme="light"] .tp-dl-btn {
  background: rgba(255, 255, 255, 0.10) !important;
  border-color: rgba(255, 255, 255, 0.20) !important;
  color: #38BDF8 !important;
}
.tp-login-btn {
  display: inline-flex !important;
  align-items: center !important;
  height: 24px !important;
  padding: 0 9px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(56,189,248, 0.35) !important;
  background: rgba(56,189,248, 0.10) !important;
  color: #38BDF8 !important;
  font: 600 11.5px/1 "Inter", sans-serif !important;
  text-decoration: none !important;
}
/* Hide install square in standalone installed PWA app */
@media (display-mode: standalone) {
  .tp-dl-btn, #arq-inst-modal { display: none !important; }
}
html.tp-sa .tp-dl-btn, html.tp-sa #arq-inst-modal {
  display: none !important;
}

/* 4-State Symmetrical Market Indicator opposite / Top Gainers */
.tp-pill.tp-pill-inline.ses-closed {
  background: rgba(148, 163, 184, 0.10) !important;
  border: 1px solid rgba(148, 163, 184, 0.24) !important;
  color: #CBD5E1 !important;
}
.tp-pill.tp-pill-inline.ses-closed i { background: #94A3B8 !important; }

.tp-pill.tp-pill-inline.ses-pre {
  background: rgba(245, 158, 11, 0.14) !important;
  border: 1px solid rgba(245, 158, 11, 0.38) !important;
  color: #FBBF24 !important;
}
.tp-pill.tp-pill-inline.ses-pre i { background: #FBBF24 !important; }

.tp-pill.tp-pill-inline.ses-regular {
  background: rgba(34, 197, 94, 0.15) !important;
  border: 1px solid rgba(74, 222, 128, 0.42) !important;
  color: #4ADE80 !important;
}
.tp-pill.tp-pill-inline.ses-regular i { background: #4ADE80 !important; }

.tp-pill.tp-pill-inline.ses-post {
  background: rgba(56, 189, 248, 0.14) !important;
  border: 1px solid rgba(56, 189, 248, 0.38) !important;
  color: #38BDF8 !important;
}
.tp-pill.tp-pill-inline.ses-post i { background: #38BDF8 !important; }

/* In-page Install Directions Pop-up Modal */
.tp-inst-ov {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(4, 8, 18, 0.76);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.tp-inst-ov[hidden] { display: none !important; }
.tp-inst-card {
  width: 100%;
  max-width: 390px;
  background: linear-gradient(180deg, #0B152E 0%, #070D1D 100%);
  border: 1px solid rgba(56,189,248, 0.38);
  border-radius: 16px;
  padding: 16px;
  color: #F2F5FA;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.65);
  font-family: "Inter", -apple-system, sans-serif;
}
.tp-inst-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.16);
}
.tp-inst-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}
.tp-inst-brand img {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid rgba(56,189,248, 0.35);
}
.tp-inst-brand b {
  display: block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #38BDF8;
}
.tp-inst-brand small {
  display: block;
  font-size: 11.5px;
  color: #94A3B8;
  margin-top: 2px;
}
.tp-inst-x {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(255, 255, 255, 0.05);
  color: #CBD5E1;
  font-size: 14px;
  cursor: pointer;
  display: grid;
  place-items: center;
}
.tp-inst-steps {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 14px 0;
}
.tp-inst-step {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 12.5px;
  line-height: 1.42;
  color: #E2E8F0;
}
.tp-inst-step i {
  flex: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(56,189,248, 0.16);
  border: 1px solid rgba(56,189,248, 0.4);
  color: #38BDF8;
  font-style: normal;
  font-weight: 700;
  font-size: 11px;
  display: grid;
  place-items: center;
  margin-top: 1px;
}
.tp-inst-qr-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(15, 25, 50, 0.85);
  border: 1px solid rgba(56,189,248, 0.24);
  font-size: 11.5px;
  line-height: 1.38;
  color: #CBD5E1;
}
.tp-inst-qr-row b {
  display: block;
  color: #F2F5FA;
  margin-bottom: 2px;
}
.tp-inst-qr-row code {
  color: #38BDF8;
  font-weight: 600;
}
.tp-inst-qr {
  width: 50px;
  height: 50px;
  border-radius: 6px;
  background: #FFFFFF;
  padding: 2px;
  flex: none;
}

/* Bottom-docked ARQ. install pop-up with downward arrow pointing to Safari Share button (Jason Oct 24 2026 t3529u-t3530u) */
.tp-inst-ov {
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  padding: 12px 14px 18px !important;
  background: rgba(4, 8, 18, 0.62) !important;
}
.tp-inst-card {
  max-width: 380px !important;
  border: 1.5px solid #38BDF8 !important;
  padding: 14px 15px 12px !important;
}
.tp-inst-ptr {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px dashed rgba(56,189,248, 0.3);
  color: #38BDF8;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.tp-inst-arrow {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 4px;
  color: #38BDF8;
  filter: drop-shadow(0 4px 10px rgba(56,189,248, 0.5));
}

/* === Push ARQ. content down below the logo header & center Top Gainers cleanly in the page (Jason Oct 24 2026 t3540u) === */
html.tp-dc .tp-hd {
  padding-top: calc(env(safe-area-inset-top, 0px) + 12px) !important;
  padding-bottom: 14px !important;
  margin-bottom: 8px !important;
  border-bottom: none !important;
}
html.tp-dc .tp-hd-row {
  min-height: 54px !important;
  align-items: flex-start !important;
}
html.tp-dc .tp-tr {
  margin-top: 32px !important;
}
.tp-chips.tp-chipbar {
  margin-top: 14px !important;
  margin-bottom: 10px !important;
}
.tp-sbar-wrap {
  margin-top: 6px !important;
  margin-bottom: 14px !important;
}
.tp-sub {
  margin: 14px 0 12px !important;
}
.tp-sec-bar.tp-sec-bar-stack {
  gap: 10px !important;
}

/* === Spacious ARQ. Logo Header + SPY/QQQ sitting right on top of the divider line (Jason Oct 24 2026 t3540u, t3570u) === */
html.tp-dc .tp-hd {
  padding-top: calc(env(safe-area-inset-top, 0px) + 14px) !important;
  padding-bottom: 8px !important;
  margin-bottom: 14px !important;
  border-bottom: none !important;
}
html.tp-dc .tp-hd-row {
  min-height: 56px !important;
  align-items: flex-end !important;
}
html.tp-dc .tp-tr {
  margin-top: 0 !important;
  align-self: flex-end !important;
  margin-bottom: -2px !important;
}
/* Remove duplicate magnifier circle next to Movers since the full search bar sits right below */
.tp-chips.tp-chipbar > .tp-srch {
  display: none !important;
}
.tp-chips.tp-chipbar {
  margin-top: 14px !important;
  margin-bottom: 10px !important;
}
.tp-sbar-wrap {
  margin-top: 0 !important;
  margin-bottom: 14px !important;
}
.tp-sub {
  margin: 12px 0 12px !important;
}
.tp-sec-bar.tp-sec-bar-stack {
  gap: 9px !important;
}

/* === Pro Chart Overlays & Sub-Panels: Wall St. PT Lines, VBP + POC, Auto S/R, Drawdown %, RS vs SPY (Jason Oct 24 2026) === */
.ss-tsbar {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  margin: 6px 0 6px;
}
.ss-ts-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 25px;
  padding: 0 8px;
  border-radius: 6px;
  border: 1px solid var(--line);
  background: var(--surface-2);
  color: var(--ink-3);
  font: 600 11px/1 var(--f-body);
  letter-spacing: 0.01em;
  cursor: pointer;
  white-space: nowrap;
  -webkit-tap-highlight-color: transparent;
  transition: all 0.12s ease;
}
.ss-ts-chip i {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ink-3);
  opacity: 0.45;
}
.ss-ts-chip i.pt { background: #10B981; }
.ss-ts-chip i.vbp { background: #38BDF8; }
.ss-ts-chip i.trl { background: #F59E0B; }
.ss-ts-chip i.dd { background: #EF4444; }
.ss-ts-chip i.rs { background: #22C55E; }
.ss-ts-chip.on {
  border-color: color-mix(in srgb, var(--acc) 50%, var(--line));
  background: color-mix(in srgb, var(--acc) 14%, var(--card));
  color: var(--ink);
}
.ss-ts-chip.on i {
  opacity: 1;
}

.ss-pt-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 6px;
  padding: 5px 8px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--surface-2) 85%, transparent);
  border: 1px solid var(--line);
}
.ss-pt-bar[hidden] { display: none !important; }
.ss-pt-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font: 600 11px/1.2 var(--f-body);
  font-variant-numeric: tabular-nums;
  padding: 2px 6px;
  border-radius: 5px;
}
.ss-pt-tag i {
  display: inline-block;
  width: 8px;
  height: 2.5px;
  border-radius: 2px;
}
.ss-pt-tag b {
  font-weight: 700;
}
.ss-pt-tag em {
  font-style: normal;
  font-weight: 600;
  font-size: 10.5px;
  opacity: 0.9;
}
.ss-pt-tag.hi {
  color: #10B981;
  background: rgba(16, 185, 129, 0.11);
  border: 1px solid rgba(16, 185, 129, 0.28);
}
.ss-pt-tag.hi i { background: #10B981; }
.ss-pt-tag.av {
  color: #38BDF8;
  background: rgba(56, 189, 248, 0.11);
  border: 1px solid rgba(56, 189, 248, 0.28);
}
.ss-pt-tag.av i { background: #38BDF8; }
.ss-pt-tag.meta {
  margin-left: auto;
  color: var(--ink-3);
  font-weight: 500;
  font-size: 10.5px;
}

.ss-chart-stage {
  position: relative;
  width: 100%;
}
.ss-vbp-ov {
  position: absolute;
  top: 10px;
  bottom: 28px;
  right: 58px;
  width: 34%;
  max-width: 128px;
  pointer-events: none;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.ss-vbp-ov[hidden] { display: none !important; }
.ss-vbp-stack {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  gap: 1.5px;
}
.ss-vbp-r {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 3px;
}
.ss-vbp-bar {
  display: flex;
  height: 78%;
  border-radius: 2px 0 0 2px;
  overflow: hidden;
  opacity: 0.44;
  box-shadow: inset 0 0 0 0.5px rgba(255,255,255,0.12);
}
.ss-vbp-r.poc .ss-vbp-bar {
  opacity: 0.78;
  height: 92%;
  outline: 1px solid #F59E0B;
}
.ss-vbp-u {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, rgba(56, 189, 248, 0.55), rgba(34, 197, 94, 0.72));
}
.ss-vbp-d {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, rgba(248, 113, 113, 0.62), rgba(239, 68, 68, 0.75));
}
.ss-vbp-poc-lbl {
  position: absolute;
  right: 2px;
  top: -11px;
  padding: 1px 4px;
  border-radius: 3px;
  background: rgba(245, 158, 11, 0.92);
  color: #08101D;
  font: 700 10.5px/1.15 var(--f-mono, var(--f-body));
  letter-spacing: 0.02em;
  white-space: nowrap;
  box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}

/* Underwater Drawdown % & Relative Performance vs SPY Sub-Panels */
.ss-subp {
  margin-top: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--card);
  overflow: hidden;
}
.ss-subp[hidden] { display: none !important; }
.ss-subp-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  flex-wrap: wrap;
  padding: 5px 9px 4px;
  border-bottom: 1px solid color-mix(in srgb, var(--line) 70%, transparent);
  background: color-mix(in srgb, var(--surface-2) 60%, transparent);
}
.ss-subp-t {
  font: 700 10.5px/1.2 var(--f-body);
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.ss-subp-badges {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  margin-left: auto;
}
.ss-subp-b {
  display: inline-flex;
  align-items: center;
  padding: 1.5px 5.5px;
  border-radius: 4px;
  font: 600 10px/1.2 var(--f-mono, var(--f-body));
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.ss-subp-b.up {
  color: #22C55E;
  background: rgba(34, 197, 94, 0.13);
  border: 1px solid rgba(34, 197, 94, 0.30);
}
.ss-subp-b.dn {
  color: #F87171;
  background: rgba(239, 68, 68, 0.13);
  border: 1px solid rgba(239, 68, 68, 0.30);
}
.ss-subp-b.mut {
  color: var(--ink-3);
  background: var(--surface-2);
  border: 1px solid var(--line);
}
.ss-subp-body {
  position: relative;
  height: 68px;
  width: 100%;
}
.ss-subp-svg {
  display: block;
  width: 100%;
  height: 100%;
}
.ss-subp-axis {
  position: absolute;
  top: 3px;
  bottom: 3px;
  right: 6px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
  pointer-events: none;
  font: 600 10.5px/1 var(--f-mono, var(--f-body));
  color: var(--ink-3);
  font-variant-numeric: tabular-nums;
}
.ss-subp-axis .up { color: #22C55E; }
.ss-subp-axis .dn { color: #F87171; }

/* Unified Stock Analysis Modal chart container auto-height for sub-panels */
.tp-anc-box {
  height: auto !important;
  min-height: 220px;
}
.tp-anc-lw {
  width: 100%;
  height: 220px;
  border-radius: 8px;
  overflow: hidden;
}

@media (max-width: 759px) {
  .ss-cw .ss-chart,
  .ss-cw .ss-chart.p1 {
    height: 300px !important;
  }
  .ss-subp-body {
    height: 62px !important;
  }
}

/* c80 mobile input 16px lock */
@media (max-width: 768px) {
  body.tp input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  body.tp select,
  body.tp textarea {
    font-size: 16px !important;
  }
}

/* === c81: Neutral Solid Mover Tiles, Unblocked Splash, Clean Inline SPY/QQQ & No Header Line (Jason Oct 24 2026) === */
.ss-splash,
html.tp-splash .ss-splash {
  pointer-events: none !important;
  display: none !important;
}

/* Remove ALL horizontal lines under ARQ. header */
html body.tp .tp-hd,
html.tp-dc body.tp .tp-hd,
html[data-theme] body.tp .tp-hd,
html[data-theme] body.tp header.tp-hd,
.pro-hd-shell > header.tp-hd,
html body.tp .tp-stick,
html[data-theme] body.tp .tp-stick,
html body.tp .tp-hd-row {
  border-bottom: none !important;
  border-top: none !important;
  box-shadow: none !important;
}

/* SPY / QQQ in ARQ. header: NO pill tab, NO border, NO background box — clean inline text on dark navy header */
html body.tp .tp-hd .tp-tr-mkt,
html body.tp .tp-hd .tp-mkt,
html[data-theme] body.tp .tp-hd .tp-tr-mkt,
html[data-theme] body.tp .tp-hd .tp-mkt,
html[data-theme="dark"] body.tp .tp-hd .tp-tr-mkt,
html[data-theme="dark"] body.tp .tp-hd .tp-mkt,
html[data-theme="light"] body.tp .tp-hd .tp-tr-mkt,
html[data-theme="light"] body.tp .tp-hd .tp-mkt {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #E2E8F0 !important;
}
html[data-theme] body.tp .tp-hd .tp-tr-mkt span,
html[data-theme] body.tp .tp-hd .tp-tr-ix span {
  color: #CBD5E1 !important;
}
html[data-theme] body.tp .tp-hd .tp-tr-ix b.up {
  color: #34D399 !important;
}
html[data-theme] body.tp .tp-hd .tp-tr-ix b.dn {
  color: #FB7185 !important;
}

/* Neutral Solid Mover, Sector & Index Cards (NO red/green tinted backgrounds or top borders; color ONLY on text & live tick flash) */
html body.tp .tp-card::before,
html body.tp .tp-card::after,
html body.tp .tp-srip-card::before,
html body.tp .tp-srip-card::after {
  display: none !important;
  content: none !important;
}

html:not([data-theme="light"]) body.tp .tp-card,
html:not([data-theme="light"]) body.tp .tp-card.up,
html:not([data-theme="light"]) body.tp .tp-card.dn,
html:not([data-theme="light"]) body.tp .tp-card[data-dir="up"],
html:not([data-theme="light"]) body.tp .tp-card[data-dir="dn"],
html:not([data-theme="light"]) body.tp .tp-tile,
html:not([data-theme="light"]) body.tp .tp-tile.up,
html:not([data-theme="light"]) body.tp .tp-tile.dn,
html:not([data-theme="light"]) body.tp .hm-ixc,
html:not([data-theme="light"]) body.tp .hm-ixc.up,
html:not([data-theme="light"]) body.tp .hm-ixc.dn,
html:not([data-theme="light"]) body.tp .tp-srip-card,
html:not([data-theme="light"]) body.tp .tp-srip-card.up,
html:not([data-theme="light"]) body.tp .tp-srip-card.dn,
html:not([data-theme="light"]) body.tp .tp-desk-card,
html:not([data-theme="light"]) body.tp .hm-card {
  background: #0B1326 !important;
  background-color: #0B1326 !important;
  background-image: none !important;
  border: 1px solid #1C2C4C !important;
  border-top: 1px solid #1C2C4C !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28) !important;
  color: #F8FAFC !important;
}

html[data-theme="light"] body.tp .tp-card,
html[data-theme="light"] body.tp .tp-card.up,
html[data-theme="light"] body.tp .tp-card.dn,
html[data-theme="light"] body.tp .tp-card[data-dir="up"],
html[data-theme="light"] body.tp .tp-card[data-dir="dn"],
html[data-theme="light"] body.tp .tp-tile,
html[data-theme="light"] body.tp .tp-tile.up,
html[data-theme="light"] body.tp .tp-tile.dn,
html[data-theme="light"] body.tp .hm-ixc,
html[data-theme="light"] body.tp .hm-ixc.up,
html[data-theme="light"] body.tp .hm-ixc.dn,
html[data-theme="light"] body.tp .tp-srip-card,
html[data-theme="light"] body.tp .tp-srip-card.up,
html[data-theme="light"] body.tp .tp-srip-card.dn,
html[data-theme="light"] body.tp .tp-desk-card,
html[data-theme="light"] body.tp .hm-card {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  border: 1px solid #E2E8F0 !important;
  border-top: 1px solid #E2E8F0 !important;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05) !important;
  color: #0F172A !important;
}

/* Brief live tick flash ONLY when price ticks */
@keyframes arqTickFlashUp {
  0% { background-color: rgba(34, 197, 94, 0.24); border-color: rgba(52, 211, 153, 0.65); }
  100% { background-color: transparent; }
}
@keyframes arqTickFlashDn {
  0% { background-color: rgba(239, 68, 68, 0.24); border-color: rgba(251, 113, 133, 0.65); }
  100% { background-color: transparent; }
}
html body.tp .tp-card.tp-fu {
  animation: arqTickFlashUp 650ms ease-out !important;
}
html body.tp .tp-card.tp-fd {
  animation: arqTickFlashDn 650ms ease-out !important;
}

/* All ARQ Foreground Surfaces, Search Bar, Segmented Bar, Chips & Panels — 100% Solid Opaque */
html[data-theme="dark"] body.tp .ss-card,
html[data-theme="dark"] body.tp .card,
html[data-theme="dark"] body.tp .pro-top-dock,
html[data-theme="dark"] body.tp .tp-box,
html[data-theme="dark"] body.tp .tp-sbar-main,
html[data-theme="dark"] body.tp .tp-seg,
html[data-theme="dark"] body.tp .tp-srch-btn,
html[data-theme="dark"] body.tp .tp-chip:not(.on),
html[data-theme="dark"] body.tp .ss-m,
html[data-theme="dark"] body.tp .ss-ckc,
html[data-theme="dark"] body.tp .tp-dial,
html[data-theme="dark"] body.tp .ss-subp,
html[data-theme="dark"] body.tp .ss-pt-bar {
  background-color: #0B1226 !important;
  background-image: none !important;
}
html[data-theme="light"] body.tp .ss-card,
html[data-theme="light"] body.tp .card,
html[data-theme="light"] body.tp .pro-top-dock,
html[data-theme="light"] body.tp .tp-box,
html[data-theme="light"] body.tp .tp-sbar-main,
html[data-theme="light"] body.tp .tp-seg,
html[data-theme="light"] body.tp .tp-srch-btn,
html[data-theme="light"] body.tp .tp-chip:not(.on),
html[data-theme="light"] body.tp .ss-m,
html[data-theme="light"] body.tp .ss-ckc,
html[data-theme="light"] body.tp .tp-dial,
html[data-theme="light"] body.tp .ss-subp,
html[data-theme="light"] body.tp .ss-pt-bar {
  background-color: #FFFFFF !important;
  background-image: none !important;
}

html[data-theme="dark"] body.tp .tp-nav,
html[data-theme="dark"] body.tp .ss-bnav {
  background: #060B19 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-theme="light"] body.tp .tp-nav,
html[data-theme="light"] body.tp .ss-bnav {
  background: #0A1124 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-theme="dark"] body.tp .ss-cw {
  background: #0B1226 !important;
  border: 1px solid #1B2745 !important;
  border-radius: 14px !important;
  padding: 10px !important;
  position: relative !important;
  z-index: 2 !important;
}
html[data-theme="light"] body.tp .ss-cw {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 14px !important;
  padding: 10px !important;
  position: relative !important;
  z-index: 2 !important;
}
html[data-theme="dark"] body.tp .ss-subp-hd {
  background: #0F1830 !important;
}
html[data-theme="light"] body.tp .ss-subp-hd {
  background: #F1F5F9 !important;
}
html[data-theme="dark"] body.tp .ss-ts-chip {
  background: #0B1226 !important;
}
html[data-theme="dark"] body.tp .ss-ts-chip.on {
  background: #0F2438 !important;
}
html[data-theme="light"] body.tp .ss-ts-chip {
  background: #FFFFFF !important;
}
html[data-theme="light"] body.tp .ss-ts-chip.on {
  background: #F0F9FF !important;
}

html[data-theme="dark"] body.tp .tp-seg,
html[data-theme="dark"] body.tp .tp-sbar {
  background-color: #0B1326 !important;
  color: #F8FAFC !important;
  border: 1px solid #1C2C4C !important;
}
html[data-theme="dark"] body.tp .tp-card .tp-tk,
html[data-theme="dark"] body.tp .tp-card .tp-px,
html[data-theme="dark"] body.tp .hm-card h2,
html[data-theme="dark"] body.tp .tp-srip-name,
html[data-theme="dark"] body.tp .tp-srip-sy,
html[data-theme="dark"] body.tp .tp-ux-tk,
html[data-theme="dark"] body.tp .tp-ux-px {
  color: #F8FAFC !important;
}
html[data-theme="dark"] body.tp .tp-card .tp-nm,
html[data-theme="dark"] body.tp .tp-ux-nm {
  color: #94A3B8 !important;
}

html[data-theme="light"] body.tp .tp-seg,
html[data-theme="light"] body.tp .tp-sbar {
  background-color: #FFFFFF !important;
  color: #0F172A !important;
  border: 1px solid #CBD5E1 !important;
}
html[data-theme="light"] body.tp .tp-card .tp-tk,
html[data-theme="light"] body.tp .tp-card .tp-px,
html[data-theme="light"] body.tp .hm-card h2,
html[data-theme="light"] body.tp .tp-srip-name,
html[data-theme="light"] body.tp .tp-srip-sy,
html[data-theme="light"] body.tp .tp-ux-tk,
html[data-theme="light"] body.tp .tp-ux-px {
  color: #0F172A !important;
}
html[data-theme="light"] body.tp .tp-card .tp-nm,
html[data-theme="light"] body.tp .tp-ux-nm {
  color: #475569 !important;
}

/* Sector Rips 2-item clean leader row */
html body.tp .tp-srip-tk {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
  padding: 5px 8px !important;
}
html body.tp .tp-srip-sy {
  font-weight: 700 !important;
  font-size: 12.5px !important;
}
html body.tp .tp-srip-sc {
  margin-left: auto !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}

/* Collapsible ARQ. footer disclosures */
.tp-foot-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6px 14px;
  width: 100%;
}
.tp-foot-disc {
  width: 100%;
  margin-top: 4px;
}
.tp-foot-disc > summary {
  cursor: pointer;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--ink-3);
  user-select: none;
}
.tp-foot-disc > .ss-cya {
  margin-top: 6px !important;
}

/* Explicit dark/light overrides for inline-styled badges inside ARQ. */
html[data-theme="light"] body.tp .tp-sq-chip {
  background: #F1F5F9 !important;
  color: #0F172A !important;
  border-color: #CBD5E1 !important;
}
html[data-theme="light"] body.tp .tp-sq-chip b {
  color: #0F172A !important;
}
html[data-theme="light"] body.tp .tp-sq-hz {
  background: #FEF2F2 !important;
  color: #B91C1C !important;
  border-color: #FECACA !important;
}
html[data-theme="light"] body.tp .tp-sq-pos {
  background: #F0FDF4 !important;
  color: #15803D !important;
  border-color: #BBF7D0 !important;
}
html[data-theme="light"] body.tp .tp-fopt-row {
  background: #F8FAFC !important;
  color: #0F172A !important;
  border: 1px solid #E2E8F0 !important;
}
html[data-theme="light"] body.tp .tp-fopt-row b {
  color: #0F172A !important;
}
html[data-theme="light"] body.tp .tp-recap-card {
  background: #FFFFFF !important;
  color: #0F172A !important;
  border-color: #CBD5E1 !important;
}
html[data-theme="light"] body.tp .tp-recap-Grid > div {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  color: #0F172A !important;
}


/* ==========================================================================
   c82: ARQ. Dark-Mode Lock, Clean Non-Terminal Edit ARQ. Button & Modal,
        and Generous Spacing Around View All / Macro Pulse (t3752u-t3759u)
   ========================================================================== */

/* 1. ARQ. Theme Toggle (.tp-tt) restored next to Install button (t3761u) */

/* 2. Generous breathing room around View all stocks (200) » and / MACRO PULSE (t3752u) */
html body.tp .tp-main-body {
  margin-bottom: 28px !important;
  padding-bottom: 4px !important;
}
html body.tp .tp-more {
  margin-top: 20px !important;
  margin-bottom: 28px !important;
}
html body.tp .tp-regime-sec {
  display: block !important;
  margin-top: 28px !important;
  margin-bottom: 28px !important;
  padding: 4px 0 !important;
}
html body.tp .tp-regime-bar {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  margin: 0 !important;
  border-radius: 12px !important;
  background: #0B1326 !important;
  border: 1px solid #1C2C4C !important;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 12px !important;
}
html body.tp .tp-regime-r2 {
  padding-top: 10px !important;
  border-top: 1px solid rgba(148, 163, 184, 0.14) !important;
}
html body.tp .tp-regime-r1,
html body.tp .tp-regime-r2 {
  gap: 8px !important;
  line-height: 1.4 !important;
}
html body.tp .pro-top-dock {
  margin-top: 22px !important;
  margin-bottom: 22px !important;
  padding: 14px 16px !important;
  border-radius: 12px !important;
  background: #0B1326 !important;
  border: 1px solid #1C2C4C !important;
}
html body.tp .tp-ux-sec,
html body.tp .tp-srip-sec,
html body.tp .tp-desks-sec {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

/* 3. Clean Non-Terminal Edit ARQ. Button & Session Chips (t3753u) */
html body.tp .tp-chip.q,
html body.tp .tp-edit-pro-btn {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  letter-spacing: 0.01em !important;
}
html body.tp button.tp-edit-pro-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  height: 32px !important;
  padding: 0 13px !important;
  border-radius: 8px !important;
  background: #0B1326 !important;
  border: 1px solid #1E325C !important;
  color: #E2E8F0 !important;
  font: 600 12.5px/1 "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) !important;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease !important;
}
html body.tp button.tp-edit-pro-btn:hover {
  border-color: #38BDF8 !important;
  color: #FFFFFF !important;
  background: #101D38 !important;
}
html body.tp button.tp-edit-pro-btn svg {
  stroke: #38BDF8 !important;
  color: #38BDF8 !important;
  margin-right: 0 !important;
}

/* Clean Institutional Styling for Edit ARQ. Sheet (openProEditor) */
html body.tp .tp-pe-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: #E2E8F0;
}
html body.tp .tp-pe-sec-t {
  font: 700 12px/1.3 "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #94A3B8;
  margin-top: 10px;
  margin-bottom: 4px;
}
html body.tp .tp-pe-grid2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
}
html body.tp .tp-pe-fld {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #0B1326;
  border: 1px solid #1C2C4C;
  font-size: 12px;
  font-weight: 600;
  color: #CBD5E1;
}
html body.tp .tp-pe-fld small {
  color: #64748B;
  font-weight: 500;
}
html body.tp .tp-pe-fld input {
  padding: 7px 10px;
  border-radius: 7px;
  background: #060B18;
  border: 1px solid #1E2E52;
  color: #F8FAFC;
  font: 500 13px/1.2 "Inter", -apple-system, sans-serif !important;
}
html body.tp .tp-pe-secs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 8px;
}
html body.tp .tp-pe-sw {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #0B1326;
  border: 1px solid #1C2C4C;
  cursor: pointer;
  font-size: 12.5px;
  color: #F1F5F9;
}
html body.tp .tp-pe-sw input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #38BDF8;
}
html body.tp .tp-pe-acts {
  display: flex;
  gap: 10px;
  margin-top: 12px;
}


/* ==========================================================================
   c83: ARQ. Complete Visual, Typography & Layout Overhaul (t3761u–t3781u)
   - Option 2 Crisp Architectural 6px Corners Everywhere
   - Zero Monospace Fonts (100% Inter + tabular-nums)
   - Ultra-Deep Midnight Navy (#040814) + Crisp Light-Blue (#38BDF8) Accents
   - Header Light-Blue Architectural Grid & Contour Lines Fading into #040814
   - Light Mode: Dark Midnight Navy Top Header & Bottom Nav + Solid #F1F5F9 Body
   - Unmistakable Gainers / Losers Selected Button Highlight (.tp-seg > button.on)
   - Clean Trading Tools & 1R Sizer, Macro Pulse Grid, Squawk, Activity & Desks
   ========================================================================== */

/* 1. Root Tokens & Zero Monospace Enforcement on ARQ. */
html body.tp,
html[data-theme="dark"] body.tp,
html[data-theme="light"] body.tp {
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --mono: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --f-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --f-mono: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --f-display: "General Sans", "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  --r-card: 6px !important;
  --r-tile: 6px !important;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

html body.tp *,
html body.tp *::before,
html body.tp *::after {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

html body.tp .tp-px,
html body.tp .tp-ch,
html body.tp .tp-reg-val,
html body.tp .tp-reg-chg,
html body.tp .tp-bsk-sp,
html body.tp .tp-srip-sc,
html body.tp .pro-1r-out,
html body.tp .msq-time,
html body.tp .mn-time,
html body.tp input[type="number"] {
  font-variant-numeric: tabular-nums !important;
}

/* 2. Dark Mode Ultra-Deep Midnight Navy (#040814) & Light-Blue (#38BDF8) Palette */
html[data-theme="dark"] body.tp {
  --bg: #040814 !important;
  --bg-2: #060C1D !important;
  --card: #081022 !important;
  --card-2: #050B18 !important;
  --text: #F8FAFC !important;
  --ink: #F8FAFC !important;
  --muted: #94A3B8 !important;
  --ink-2: #94A3B8 !important;
  --subtle: #64748B !important;
  --ink-3: #64748B !important;
  --border: #162647 !important;
  --border-2: #1E325C !important;
  --accent: #38BDF8 !important;
  --accent-bg: rgba(56, 189, 248, 0.16) !important;
  background-color: #040814 !important;
  background-image: none !important;
  color: #F8FAFC !important;
}

/* Remove any diagonal stripe overlay across the body in both dark and light mode */
html body.tp::before,
html body.tp::after,
html[data-theme="dark"] body.tp::before,
html[data-theme="dark"] body.tp::after,
html[data-theme="light"] body.tp::before,
html[data-theme="light"] body.tp::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

/* 3. Light Mode Palette: Solid Clean #F1F5F9 Body + #FFFFFF Cards + Dark Navy Header/Nav */
html[data-theme="light"] body.tp {
  --bg: #F1F5F9 !important;
  --bg-2: #E2E8F0 !important;
  --card: #FFFFFF !important;
  --card-2: #F8FAFC !important;
  --text: #0F172A !important;
  --ink: #0F172A !important;
  --muted: #475569 !important;
  --ink-2: #475569 !important;
  --subtle: #64748B !important;
  --ink-3: #64748B !important;
  --border: #CBD5E1 !important;
  --border-2: #94A3B8 !important;
  --accent: #0284C7 !important;
  --accent-bg: rgba(56, 189, 248, 0.14) !important;
  background-color: #F1F5F9 !important;
  background-image: none !important;
  color: #0F172A !important;
}

/* 4. ARQ. Top Header (.tp-hd): Way Darker Midnight Navy (#040814 -> #081229) with Light-Blue Architectural Grid/Contour Lines in BOTH Dark & Light Mode */
html body.tp header.tp-hd,
html[data-theme="dark"] body.tp header.tp-hd,
html[data-theme="light"] body.tp header.tp-hd {
  position: relative !important;
  margin: -12px -16px 14px -16px !important;
  padding: calc(env(safe-area-inset-top, 0px) + 16px) 16px 14px 16px !important;
  background-color: #040814 !important;
  background-image: repeating-linear-gradient(-45deg, rgba(56, 189, 248, 0.14) 0px, rgba(56, 189, 248, 0.14) 1.5px, transparent 1.5px, transparent 14px) !important;
  background-attachment: fixed !important;
  background-size: auto !important;
  border-bottom: 1px solid rgba(56, 189, 248, 0.24) !important;
  box-shadow: 0 6px 20px rgba(2, 6, 17, 0.45) !important;
  color: #F8FAFC !important;
  border-radius: 0 !important;
}

/* Ensure header text, status row, session chips, and controls inside header.tp-hd stay crisp light-on-dark in Light Mode too */
html[data-theme="light"] body.tp header.tp-hd .tp-sub,
html[data-theme="light"] body.tp header.tp-hd .tp-ses,
html[data-theme="light"] body.tp header.tp-hd .tp-asof,
html[data-theme="light"] body.tp header.tp-hd .tp-cd {
  color: #CBD5E1 !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-ses b {
  color: #FFFFFF !important;
}
html body.tp header.tp-hd .tp-chip.q,
html[data-theme="light"] body.tp header.tp-hd .tp-chip.q {
  background: rgba(8, 16, 34, 0.85) !important;
  border: 1px solid rgba(56, 189, 248, 0.25) !important;
  color: #E2E8F0 !important;
  border-radius: 6px !important;
}
html body.tp header.tp-hd .tp-chip.q.on,
html[data-theme="light"] body.tp header.tp-hd .tp-chip.q.on {
  background: rgba(56, 189, 248, 0.22) !important;
  border: 1px solid #38BDF8 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
}
html body.tp header.tp-hd button.tp-edit-pro-btn,
html[data-theme="light"] body.tp header.tp-hd button.tp-edit-pro-btn {
  background: rgba(8, 16, 34, 0.9) !important;
  border: 1px solid rgba(56, 189, 248, 0.35) !important;
  color: #F8FAFC !important;
  border-radius: 6px !important;
}

/* Restore & Style Theme Toggle (.tp-tt) and Install Button (.tp-dl) in Header */
html body.tp .tp-top-ctls {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
html body.tp .tp-tt,
html body.tp [data-tp-tt] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  background: rgba(8, 16, 34, 0.88) !important;
  border: 1px solid rgba(56, 189, 248, 0.30) !important;
  color: #38BDF8 !important;
  cursor: pointer !important;
  transition: border-color 0.15s, background 0.15s !important;
}
html body.tp .tp-tt:hover,
html body.tp .tp-dl:hover {
  border-color: #38BDF8 !important;
  background: rgba(56, 189, 248, 0.18) !important;
}
html body.tp .tp-dl {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  background: rgba(8, 16, 34, 0.88) !important;
  border: 1px solid rgba(56, 189, 248, 0.30) !important;
  color: #F8FAFC !important;
}

/* Bottom Navigation Bar (nav.tp-nav): Way Darker Midnight Navy in Both Dark & Light Mode */
html body.tp nav.tp-nav,
html[data-theme="dark"] body.tp nav.tp-nav,
html[data-theme="light"] body.tp nav.tp-nav {
  background: #040814 !important;
  background-color: #040814 !important;
  border-top: 1px solid rgba(56, 189, 248, 0.22) !important;
  box-shadow: 0 -4px 18px rgba(2, 6, 17, 0.5) !important;
}
html body.tp nav.tp-nav a,
html[data-theme="light"] body.tp nav.tp-nav a {
  color: #94A3B8 !important;
}
html body.tp nav.tp-nav a[aria-current="page"],
html body.tp nav.tp-nav a.on,
html[data-theme="light"] body.tp nav.tp-nav a[aria-current="page"],
html[data-theme="light"] body.tp nav.tp-nav a.on {
  color: #38BDF8 !important;
}
html body.tp nav.tp-nav a[aria-current="page"]::before,
html body.tp nav.tp-nav a.on::before {
  background: #38BDF8 !important;
}

/* 5. Option 2 (6px Crisp Architectural Corners) Across All ARQ. Surfaces, Tiles, Buttons, Tabs & Inputs */
html body.tp :is(
  .tp-card,
  .card,
  .ss-card,
  .pro-top-dock,
  .pro-dock-btn,
  .pro-mode-pill,
  .pro-1r-card,
  .pro-1r-field input,
  .tp-regime-bar,
  .tp-reg-cell,
  .tp-bsk-row,
  .msq-card,
  .msq-flt,
  .mn-tile,
  .mn-row,
  .mn-col-btn,
  .tp-sbar,
  .tp-sbar-main,
  .tp-srch-btn,
  .tp-chip,
  .tp-seg,
  .tp-more,
  .tp-pill,
  .tp-more-b,
  .tp-col-btn,
  .tp-ux-more,
  .tp-ux-card,
  .tp-srip-card,
  .tp-desk-card,
  .tp-seesaw-ban,
  .tp-edit-pro-btn,
  .hm-curate-btn,
  .ss-cw,
  .ss-subp,
  .ss-m,
  .tp-pe-fld,
  .tp-pe-sw,
  .tp-pe-fld input
) {
  border-radius: 6px !important;
}

html body.tp :is(
  .tp-seg > button,
  .tp-tag,
  .msq-tag,
  .mn-cat,
  .mn-live-pill,
  .tp-srip-tk,
  .tp-srip-t10b
) {
  border-radius: 4px !important;
}

/* 6. Unmistakable Selected State for Gainers / Losers (.tp-seg) and Top Scanner Tabs (.tp-sbar-main) */
html[data-theme="dark"] body.tp .tp-seg {
  background: #050B18 !important;
  background-color: #050B18 !important;
  border: 1px solid #162647 !important;
  padding: 3px !important;
  gap: 4px !important;
}
html[data-theme="light"] body.tp .tp-seg {
  background: #E2E8F0 !important;
  background-color: #E2E8F0 !important;
  border: 1px solid #CBD5E1 !important;
  padding: 3px !important;
  gap: 4px !important;
}
html body.tp .tp-seg > button {
  height: 32px !important;
  font: 600 13px/1 "Inter", -apple-system, sans-serif !important;
  color: #94A3B8 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  transition: all 0.14s ease !important;
}
html[data-theme="light"] body.tp .tp-seg > button {
  color: #475569 !important;
}
html[data-theme="dark"] body.tp .tp-seg > button.on,
html[data-theme="dark"] body.tp .tp-seg > button[aria-selected="true"] {
  background: #0C2144 !important;
  background-color: #0C2144 !important;
  color: #FFFFFF !important;
  border: 1px solid #38BDF8 !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 8px rgba(56, 189, 248, 0.20) !important;
}
html[data-theme="light"] body.tp .tp-seg > button.on,
html[data-theme="light"] body.tp .tp-seg > button[aria-selected="true"] {
  background: #060D1F !important;
  background-color: #060D1F !important;
  color: #FFFFFF !important;
  border: 1px solid #38BDF8 !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 6px rgba(6, 13, 31, 0.18) !important;
}

/* Scanner Tab Bar (Movers | Crypto | New listings | Squeeze) */
html[data-theme="dark"] body.tp .tp-sbar-main > .tp-chip,
html[data-theme="dark"] body.tp .tp-srch-btn {
  background: #081022 !important;
  border: 1px solid #162647 !important;
  color: #CBD5E1 !important;
}
html[data-theme="light"] body.tp .tp-sbar-main > .tp-chip,
html[data-theme="light"] body.tp .tp-srch-btn {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  color: #334155 !important;
}
html[data-theme="dark"] body.tp .tp-sbar-main > .tp-chip.on,
html[data-theme="dark"] body.tp .tp-srch-btn.on {
  background: rgba(56, 189, 248, 0.20) !important;
  border: 1px solid #38BDF8 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
}
html[data-theme="light"] body.tp .tp-sbar-main > .tp-chip.on,
html[data-theme="light"] body.tp .tp-srch-btn.on {
  background: #060D1F !important;
  border: 1px solid #38BDF8 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

/* 7. Solid Cards & Mover Tiles on ARQ. */
html[data-theme="dark"] body.tp .tp-card,
html[data-theme="dark"] body.tp .tp-card.up,
html[data-theme="dark"] body.tp .tp-card.dn,
html[data-theme="dark"] body.tp .tp-ux-card {
  background: #081022 !important;
  background-color: #081022 !important;
  border: 1px solid #162647 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.32) !important;
}
html[data-theme="light"] body.tp .tp-card,
html[data-theme="light"] body.tp .tp-card.up,
html[data-theme="light"] body.tp .tp-card.dn,
html[data-theme="light"] body.tp .tp-ux-card {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.05) !important;
}

/* 8. Clean Macro Pulse (2x3 Mini-Tile Grid + 1-Line Factor Rows) */
html body.tp .tp-regime-sec {
  margin: 22px 0 !important;
}
html body.tp .tp-regime-bar {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 14px 16px !important;
  background: #081022 !important;
  border: 1px solid #162647 !important;
}
html[data-theme="light"] body.tp .tp-regime-bar {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
}
html body.tp .tp-regime-hd {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}
html body.tp .tp-regime-k {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  color: var(--ink) !important;
  text-transform: none !important;
}
html body.tp .tp-regime-sub {
  font-size: 11.5px !important;
  font-weight: 500 !important;
  color: var(--muted) !important;
}
html body.tp .tp-regime-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
@media (max-width: 420px) {
  html body.tp .tp-regime-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
html body.tp .tp-reg-cell {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  padding: 8px 10px !important;
  background: #050B18 !important;
  border: 1px solid #152342 !important;
}
html[data-theme="light"] body.tp .tp-reg-cell {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
}
html body.tp .tp-reg-lbl {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: var(--muted) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
html body.tp .tp-reg-val-row {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 6px !important;
}
html body.tp .tp-reg-val {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
}
html body.tp .tp-reg-chg {
  font-style: normal !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
}
html body.tp .tp-reg-chg.up,
html body.tp .tp-bsk-sp.up {
  color: #34D399 !important;
}
html body.tp .tp-reg-chg.dn,
html body.tp .tp-bsk-sp.dn {
  color: #F87171 !important;
}
html[data-theme="light"] body.tp .tp-reg-chg.up,
html[data-theme="light"] body.tp .tp-bsk-sp.up {
  color: #059669 !important;
}
html[data-theme="light"] body.tp .tp-reg-chg.dn,
html[data-theme="light"] body.tp .tp-bsk-sp.dn {
  color: #DC2626 !important;
}
html body.tp .tp-regime-factors {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(148, 163, 184, 0.14) !important;
}
html body.tp .tp-bsk-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  padding: 6px 10px !important;
  background: #050B18 !important;
  border: 1px solid #152342 !important;
  font-size: 12px !important;
}
html[data-theme="light"] body.tp .tp-bsk-row {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
}
html body.tp .tp-bsk-nm {
  font-weight: 600 !important;
  color: var(--ink) !important;
}
html body.tp .tp-bsk-reg {
  font-size: 11.5px !important;
  color: var(--muted) !important;
  margin-left: auto !important;
}
html body.tp .tp-bsk-sp {
  font-weight: 700 !important;
  min-width: 52px !important;
  text-align: right !important;
}

/* 9. Clean Trading Tools & 1R Position Sizer Card (.pro-top-dock) */
html body.tp .pro-top-dock {
  margin: 20px 0 !important;
  padding: 15px 16px !important;
  background: #081022 !important;
  border: 1px solid #162647 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
html[data-theme="light"] body.tp .pro-top-dock {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
}
html body.tp .pro-dock-hd {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}
html body.tp .pro-dock-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
  letter-spacing: -0.01em !important;
}
html body.tp .pro-dock-sublink {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #38BDF8 !important;
  text-decoration: none !important;
}
html[data-theme="light"] body.tp .pro-dock-sublink {
  color: #0284C7 !important;
}
html body.tp .pro-dock-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
@media (min-width: 720px) {
  html body.tp .pro-dock-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}
html body.tp .pro-dock-btn {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  padding: 9px 11px !important;
  background: #050B18 !important;
  border: 1px solid #162647 !important;
  text-decoration: none !important;
  transition: border-color 0.15s, background 0.15s !important;
}
html[data-theme="light"] body.tp .pro-dock-btn {
  background: #F8FAFC !important;
  border: 1px solid #CBD5E1 !important;
}
html body.tp .pro-dock-btn.pri {
  background: rgba(56, 189, 248, 0.14) !important;
  border-color: rgba(56, 189, 248, 0.45) !important;
}
html[data-theme="light"] body.tp .pro-dock-btn.pri {
  background: #EFF6FF !important;
  border-color: #38BDF8 !important;
}
html body.tp .pro-dock-btn span {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
}
html body.tp .pro-dock-btn small {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--muted) !important;
}
html body.tp .pro-dock-modes {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}
html body.tp .pro-mode-pill {
  padding: 5px 10px !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  background: #050B18 !important;
  border: 1px solid #162647 !important;
  color: var(--muted) !important;
  cursor: pointer !important;
}
html[data-theme="light"] body.tp .pro-mode-pill {
  background: #F8FAFC !important;
  border: 1px solid #CBD5E1 !important;
  color: #475569 !important;
}
html body.tp .pro-mode-pill.on {
  background: #0C2144 !important;
  background-color: #0C2144 !important;
  border-color: #38BDF8 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
}
html[data-theme="light"] body.tp .pro-mode-pill.on {
  background: #060D1F !important;
  border-color: #38BDF8 !important;
  color: #FFFFFF !important;
}
html body.tp .pro-1r-card {
  padding: 10px 12px !important;
  background: #050B18 !important;
  border: 1px solid #152342 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
html[data-theme="light"] body.tp .pro-1r-card {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
}
html body.tp .pro-1r-hd {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}
html body.tp .pro-1r-lbl {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--muted) !important;
}
html body.tp .pro-1r-out {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #38BDF8 !important;
}
html[data-theme="light"] body.tp .pro-1r-out {
  color: #0284C7 !important;
}
html body.tp .pro-1r-inputs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
@media (max-width: 400px) {
  html body.tp .pro-1r-inputs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
html body.tp .pro-1r-field {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  min-width: 0 !important;
}
html body.tp .pro-1r-field span {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  color: var(--muted) !important;
  white-space: nowrap !important;
}
html body.tp .pro-1r-field input {
  width: 100% !important;
  box-sizing: border-box !important;
  height: 32px !important;
  padding: 0 8px !important;
  background: #081022 !important;
  border: 1px solid #1E325C !important;
  color: #F8FAFC !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
html[data-theme="light"] body.tp .pro-1r-field input {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  color: #0F172A !important;
}

/* 10. Macro Squawk (.msq-card) & Member Activity (.mn-tile) Clean Styling */
.msq-card {
  margin: 14px 0 !important;
  padding: 14px 16px !important;
  background: var(--card, #081022) !important;
  border: 1px solid var(--border, #162647) !important;
  border-radius: 6px !important;
}
html[data-theme="light"] .msq-card {
  background: #FFFFFF !important;
  border-color: #E2E8F0 !important;
}
.msq-hd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}
.msq-hd-l {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.msq-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #38BDF8;
  box-shadow: 0 0 8px rgba(56, 189, 248, 0.7);
}
.msq-title {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--ink);
}
.msq-badge {
  font-size: 11px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(56, 189, 248, 0.14);
  color: #38BDF8;
}
html[data-theme="light"] .msq-badge {
  background: #E0F2FE;
  color: #0369A1;
}
.msq-flts {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.msq-flt {
  padding: 4px 9px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 600;
  border: 1px solid var(--border, #162647);
  background: var(--card-2, #050B18);
  color: var(--muted, #94A3B8);
  cursor: pointer;
}
html[data-theme="light"] .msq-flt {
  background: #F8FAFC;
  border-color: #CBD5E1;
  color: #475569;
}
.msq-flt.on {
  background: rgba(56, 189, 248, 0.20);
  border-color: #38BDF8;
  color: #FFFFFF;
}
html[data-theme="light"] .msq-flt.on {
  background: #060D1F;
  border-color: #38BDF8;
  color: #FFFFFF;
}
.msq-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.msq-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 6px;
  background: var(--card-2, #050B18);
  border: 1px solid var(--border, #152342);
  font-size: 12.5px;
}
html[data-theme="light"] .msq-row {
  background: #F8FAFC;
  border-color: #E2E8F0;
}
.msq-time {
  font-size: 11px;
  font-weight: 600;
  color: var(--muted);
  min-width: 54px;
}
.msq-tag {
  font-size: 10.5px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  background: var(--sq-bg, rgba(56, 189, 248, 0.14));
  color: var(--sq-c, #38BDF8);
}
html[data-theme="light"] .msq-tag {
  background: #E2E8F0;
  color: #0F172A;
}
.msq-sym {
  font-weight: 700;
  color: #38BDF8;
  text-decoration: none;
}
html[data-theme="light"] .msq-sym {
  color: #0284C7;
}
.msq-hl {
  flex: 1 1 200px;
  font-weight: 600;
  color: var(--ink);
}
.msq-imp {
  font-size: 11.5px;
  color: var(--muted);
}

/* Member Activity & Desk Alerts (.mn-tile) */
.mn-tile {
  margin: 14px 0 !important;
  padding: 14px 16px !important;
  background: var(--card, #081022) !important;
  border: 1px solid var(--border, #162647) !important;
  border-radius: 6px !important;
}
html[data-theme="light"] .mn-tile {
  background: #FFFFFF !important;
  border-color: #E2E8F0 !important;
}
.mn-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
  flex-wrap: wrap;
}
.mn-hd-l {
  display: flex;
  align-items: center;
  gap: 10px;
}
.mn-bell-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: rgba(56, 189, 248, 0.14);
  color: #38BDF8;
}
html[data-theme="light"] .mn-bell-wrap {
  background: #E0F2FE;
  color: #0284C7;
}
.mn-dot {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #38BDF8;
}
.mn-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--ink);
}
.mn-sub {
  margin: 2px 0 0;
  font-size: 11.5px;
  color: var(--muted);
}
.mn-hd-r {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.mn-live-pill {
  font-size: 11px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 4px;
  background: rgba(56, 189, 248, 0.14);
  color: #38BDF8;
}
html[data-theme="light"] .mn-live-pill {
  background: #E0F2FE;
  color: #0369A1;
}
.mn-col-btn {
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 600;
  border: 1px solid var(--border, #162647);
  background: var(--card-2, #050B18);
  color: var(--muted);
  cursor: pointer;
}
html[data-theme="light"] .mn-col-btn {
  background: #F8FAFC;
  border-color: #CBD5E1;
  color: #475569;
}
.mn-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.mn-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 11px;
  border-radius: 6px;
  background: var(--card-2, #050B18);
  border: 1px solid var(--border, #152342);
  text-decoration: none;
  color: var(--ink);
}
html[data-theme="light"] .mn-row {
  background: #F8FAFC;
  border-color: #E2E8F0;
}
.mn-cat {
  font-size: 10.5px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(56, 189, 248, 0.14);
  color: #38BDF8;
  white-space: nowrap;
}
html[data-theme="light"] .mn-cat {
  background: #E0F2FE;
  color: #0369A1;
}
.mn-main {
  flex: 1 1 auto;
  min-width: 0;
}
.mn-r1 {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.mn-sym {
  font-size: 12.5px;
  font-weight: 700;
  color: #38BDF8;
}
html[data-theme="light"] .mn-sym {
  color: #0284C7;
}
.mn-rtitle {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--ink);
}
.mn-detail {
  margin: 2px 0 0;
  font-size: 11.5px;
  color: var(--muted);
}
.mn-time {
  font-size: 11px;
  color: var(--muted);
  white-space: nowrap;
}

/* 11. Clean Filing Desks & Sector Rips Rows */
html body.tp .tp-desk-row-l {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
html body.tp .tp-srip-nm-mini {
  font-size: 11.5px !important;
  color: var(--muted) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
html body.tp .tp-srip-t3h {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin-bottom: 4px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: var(--muted) !important;
}
html body.tp .tp-srip-t3-links {
  display: inline-flex !important;
  gap: 6px !important;
}

/* ==========================================================================================
   c83 (Jason Oct 25 2026 t3840u-t3845u):
   1. Real Geometric ARQ. Logo (#38BDF8 Light Blue + #B8F15A Lime Dot) + '/' in Left Column +
      SYSTEMATIC Stacked Directly Over STRATEGIES (S 100% Vertically Aligned Above S)
   2. Option 3 Background on ARQ. (45° Light-Blue Slash Lines + Top-Right Radial Bloom Over #040814)
   3. 100% Solid #070E1E (Dark) / #FFFFFF (Light) Foreground Cards & Tiles with 6px Corners (Zero Bleed)
   ========================================================================================== */
html body .ss-lk .arq-lk-live {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
}
html body .ss-lk .arq-logo-img {
  height: 24px !important;
  width: auto !important;
  display: block !important;
  flex-shrink: 0 !important;
}
html body :is(.ss-lk-hero, .ss-lk-xl, .tp-in-lk .ss-lk) .arq-logo-img {
  height: 28px !important;
}
html body .ss-lk .arq-lk-tag {
  display: inline-grid !important;
  grid-template-columns: auto auto !important;
  align-items: center !important;
  column-gap: 5px !important;
  line-height: 1 !important;
}
html body .ss-lk .arq-lk-sl {
  font: 700 13px/1 "General Sans", "Inter", system-ui, sans-serif !important;
  color: #38BDF8 !important;
  -webkit-text-fill-color: #38BDF8 !important;
  font-style: normal !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body :is(.ss-lk-hero, .ss-lk-xl, .tp-in-lk .ss-lk) .arq-lk-sl {
  font-size: 15px !important;
}
html body .ss-lk .arq-lk-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .ss-lk .arq-lk-stack > span {
  display: block !important;
  font: 700 10.5px/1.12 "General Sans", "Inter", system-ui, sans-serif !important;
  letter-spacing: 0.12em !important;
  color: #94A3B8 !important;
  -webkit-text-fill-color: #94A3B8 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .ss-lk .arq-lk-stack > span:first-child {
  font-weight: 900 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
html body .ss-lk .arq-lk-stack > span:last-child {
  font-weight: 700 !important;
  color: #94A3B8 !important;
  -webkit-text-fill-color: #94A3B8 !important;
}
html body :is(.ss-lk-hero, .ss-lk-xl, .tp-in-lk .ss-lk) .arq-lk-stack > span {
  font-size: 10.5px !important;
}

/* Option 3 Background: 45° Light-Blue Slash Lines + Top-Right Radial Bloom over #040814 Midnight Navy */
html[data-theme="dark"] body.tp,
html:not([data-theme="light"]) body.tp,
html body.tp-in,
html[data-theme="dark"] body.tp-in,
html[data-theme="light"] body.tp-in,
html[data-theme="dark"] .ss-sheet-c,
html[data-theme="dark"] .tp-sheet-c,
html:not([data-theme="light"]) .ss-sheet-c,
html:not([data-theme="light"]) .tp-sheet-c,
html[data-theme="dark"] #tpFullChartModal {
  background-color: #040814 !important;
  background-image: repeating-linear-gradient(-45deg, rgba(56, 189, 248, 0.14) 0px, rgba(56, 189, 248, 0.14) 1.5px, transparent 1.5px, transparent 14px) !important;
  background-attachment: fixed !important;
  background-size: auto !important;
}
html[data-theme="dark"] :is(.ss-sheet-c, .tp-sheet-c) :is(.tp-dial, .ss-card, .rt-card, .tg, .ss-q, .ss-cw, .tp-dial-box),
html:not([data-theme="light"]) :is(.ss-sheet-c, .tp-sheet-c) :is(.tp-dial, .ss-card, .rt-card, .tg, .ss-q, .ss-cw, .tp-dial-box) {
  background: #070E1E !important;
  background-color: #070E1E !important;
  background-image: none !important;
  border: 1px solid #1E325C !important;
  border-radius: 6px !important;
}

html body.tp header.tp-hd,
html[data-theme="dark"] body.tp header.tp-hd,
html[data-theme="light"] body.tp header.tp-hd {
  background-color: #040814 !important;
  background-image: repeating-linear-gradient(-45deg, rgba(56, 189, 248, 0.14) 0px, rgba(56, 189, 248, 0.14) 1.5px, transparent 1.5px, transparent 14px) !important;
  background-attachment: fixed !important;
  background-size: auto !important;
  border-bottom: 1px solid rgba(56, 189, 248, 0.22) !important;
}

/* 100% Solid #070E1E Foreground Cards & Tiles in Dark Mode (Zero Slash-Line Bleed) + 6px Corners */
html[data-theme="dark"] body.tp :is(
  .tp-card,
  .tp-card.up,
  .tp-card.dn,
  .tp-ux-card,
  .tp-srip-card,
  .tp-desk-card,
  .tp-regime-bar,
  .pro-top-dock,
  .msq-card,
  .mn-tile,
  .tp-sbar-main > .tp-chip:not(.on),
  .tp-srch-btn:not(.on),
  .ss-card,
  .card,
  .ss-cw
) {
  background: #070E1E !important;
  background-color: #070E1E !important;
  background-image: none !important;
  border: 1px solid #1E325C !important;
  border-radius: 6px !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.45) !important;
}

/* 100% Solid #FFFFFF Foreground Cards & Tiles in Light Mode (Zero Bleed) + 6px Corners */
html[data-theme="light"] body.tp :is(
  .tp-card,
  .tp-card.up,
  .tp-card.dn,
  .tp-ux-card,
  .tp-srip-card,
  .tp-desk-card,
  .tp-regime-bar,
  .pro-top-dock,
  .msq-card,
  .mn-tile,
  .tp-sbar-main > .tp-chip:not(.on),
  .tp-srch-btn:not(.on),
  .ss-card,
  .card,
  .ss-cw
) {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.06) !important;
}

/* === c88: ARQ. / SYSTEMATIC STRATEGIES — Option B Optical Row Alignment === */
html body .arq-lk-live:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
}
html body .arq-lk-live .arq-logo-img:not(#_):not(#__) {
  height: 23px !important;
  width: auto !important;
  display: block !important;
  flex-shrink: 0 !important;
}
html body :is(.ss-lk-hero, .ss-lk-xl, .tp-in-lk .ss-lk) .arq-lk-live .arq-logo-img:not(#_):not(#__) {
  height: 28px !important;
}
html body .arq-lk-live .arq-lk-wm:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}
html body .arq-lk-live .arq-lk-tag:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 5px !important;
  line-height: 1 !important;
  transform: translateY(0.5px) !important;
}
html body .arq-lk-live .arq-lk-sl:not(#_):not(#__) {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #38BDF8 !important;
  -webkit-text-fill-color: #38BDF8 !important;
  font-style: normal !important;
}
html body :is(.ss-lk-hero, .ss-lk-xl, .tp-in-lk .ss-lk) .arq-lk-live .arq-lk-sl:not(#_):not(#__) {
  font-size: 16px !important;
}
html body .arq-lk-live .arq-lk-stack:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 1px !important;
}
html body .arq-lk-live .arq-lk-stack > span:not(#_):not(#__):not(#___):not(#____) {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 10.5px !important;
  letter-spacing: 0.06em !important;
  font-kerning: normal !important;
  line-height: 1.10 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
html body :is(.ss-lk-hero, .ss-lk-xl, .tp-in-lk .ss-lk) .arq-lk-live .arq-lk-stack > span:not(#_):not(#__):not(#___):not(#____) {
  font-size: 10.5px !important;
}
html body .arq-lk-live .arq-lk-stack > span:first-child:not(#_):not(#__):not(#___):not(#____),
html body .arq-lk-live .arq-lk-stack > span.brand-sys:not(#_):not(#__):not(#___):not(#____) {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 900 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  opacity: 1 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.10 !important;
}
html body .arq-lk-live .arq-lk-stack > span:last-child:not(#_):not(#__):not(#___):not(#____),
html body .arq-lk-live .arq-lk-stack > span.brand-sub:not(#_):not(#__):not(#___):not(#____) {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 700 !important;
  color: #94A3B8 !important;
  -webkit-text-fill-color: #94A3B8 !important;
  opacity: 1 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.10 !important;
}

/* Clean, Vertically Centered 32x32 Theme Button & Download App Button in ARQ. Header */
html body .tp-hd-row:not(#_):not(#__):not(#___) {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
html body .tp-top-ctls:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: auto !important;
}
html body .tp-top-ctls :is(.tp-tt, .tp-dl-btn):not(#_):not(#__):not(#___) {
  position: relative !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  background: rgba(15, 25, 50, 0.85) !important;
  border: 1px solid rgba(56, 189, 248, 0.32) !important;
  color: #F8FAFC !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  cursor: pointer !important;
}
html body .tp-top-ctls .tp-tt::before,
html body .tp-top-ctls .tp-tt::after,
html body .tp-top-ctls .tp-tt .tp-tt-a {
  display: none !important;
  content: none !important;
}
html body .tp-top-ctls .tp-tt svg:not(#_):not(#__) {
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  opacity: 1 !important;
  position: static !important;
  transform: none !important;
  color: #F8FAFC !important;
  stroke: currentColor !important;
}
html[data-theme="dark"] body .tp-top-ctls .tp-tt .tp-tt-sun {
  display: block !important;
}
html[data-theme="dark"] body .tp-top-ctls .tp-tt .tp-tt-moon {
  display: none !important;
}
html[data-theme="light"] body .tp-top-ctls .tp-tt .tp-tt-sun,
html:not([data-theme="dark"]) body .tp-top-ctls .tp-tt .tp-tt-sun {
  display: none !important;
}
html[data-theme="light"] body .tp-top-ctls .tp-tt .tp-tt-moon,
html:not([data-theme="dark"]) body .tp-top-ctls .tp-tt .tp-tt-moon {
  display: block !important;
}

/* Single-Line 34px Category Pills (Movers, Crypto, New, Squeeze) with Zero Wrapping */
html body .tp-sbar-main .tp-cg[role="tablist"]:not(#_):not(#__):not(#___) {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 5px !important;
  align-items: center !important;
}
html body .tp-sbar-main .tp-cg[role="tablist"] .tp-chip:not(#_):not(#__):not(#___),
html body .tp-sbar-main > .tp-chip:not(#_):not(#__):not(#___) {
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  padding: 0 10px !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 6px !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
  box-sizing: border-box !important;
}

/* Balanced Mobile Viewport Height on ARQ. 2x3 Grid so Zero Dead Empty Space Above Bottom Nav */
@media (max-width: 640px) {
  html body .tp-app:not(#_):not(#__) {
    --th: clamp(112px, calc((100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 414px) / 3), 152px) !important;
  }
  html body .tp-app .tp-sbar:not(#_):not(#__) {
    margin-bottom: 10px !important;
    gap: 8px !important;
  }
  html body .tp-app .tp-grid:not(#_):not(#__):not(#___) {
    gap: 10px !important;
  }
  html body .tp-app .tp-grid .tp-card:not(#_):not(#__):not(#___):not(#____) {
    min-height: var(--th) !important;
    padding: 12px 11px !important;
    gap: 5px !important;
    justify-content: space-between !important;
  }
  html body.tp .tp-app .tp-more:not(#_):not(#__):not(#___) {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  html body.tp .tp-app .tp-more .tp-more-b:not(#_):not(#__):not(#___) {
    height: 44px !important;
    min-height: 44px !important;
  }
  html body.tp .tp-app .tp-main-body:not(#_):not(#__) {
    margin-bottom: 12px !important;
    padding-bottom: 0 !important;
  }
  html body.tp .tp-app .tp-regime-sec:not(#_):not(#__) {
    margin-top: 14px !important;
  }
}


/* === c89: ARQ. First-Screen Vertical Budget (all 6 tiles + View all stocks centered above bottom nav at scrollY=0) & Lowered Header Logo === */
html body.tp header.tp-hd:not(#_):not(#__) {
  padding: calc(env(safe-area-inset-top, 0px) + 8px) 2px 4px !important;
  margin: 0 !important;
}
html body.tp .tp-hd-row:not(#_):not(#__):not(#___) {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 36px !important;
  padding: 2px 0 2px !important;
}
html body .ss-lk .arq-lk-live:not(#_):not(#__):not(#___) {
  transform: translateY(4px) !important;
}
html body .arq-lk-live .arq-lk-tag:not(#_):not(#__):not(#___) {
  transform: translateY(2px) !important;
}
html body.tp .tp-chips.tp-chipbar:not(#_):not(#__) {
  margin: 3px 0 3px !important;
  padding: 2px 0 !important;
}
html body.tp .tp-sbar-wrap:not(#_):not(#__) {
  margin: 3px 0 3px !important;
}
html body.tp .tp-sbar:not(#_):not(#__) {
  height: 34px !important;
  min-height: 34px !important;
}
html body.tp .tp-sub:not(#_):not(#__) {
  margin: 2px 0 4px !important;
  gap: 3px !important;
}
html body.tp .tp-sub-top:not(#_):not(#__) {
  min-height: 24px !important;
  padding: 0 !important;
}
html body.tp .tp-sub-ctrl:not(#_):not(#__) {
  min-height: 30px !important;
  padding: 0 !important;
}
html body.tp .tp-app .tp-grid:not(#_):not(#__) {
  gap: 7px !important;
  margin: 2px 0 0 !important;
}
html body.tp .tp-app .tp-grid .tp-card:not(#_):not(#__),
html.tp-sa body.tp .tp-app .tp-grid .tp-card:not(#_):not(#__) {
  --th: auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 8px 10px !important;
  grid-template-rows: auto auto auto !important;
  align-content: start !important;
  justify-content: flex-start !important;
  row-gap: 3px !important;
}
html body.tp .tp-app .tp-grid .tp-card .tp-top:not(#_):not(#__) {
  margin: 0 !important;
}
html body.tp .tp-app .tp-grid .tp-card .tp-pq:not(#_):not(#__) {
  margin: 1px 0 0 !important;
}
html body.tp .tp-app .tp-grid .tp-card .tp-x:not(#_):not(#__) {
  margin: 1px 0 0 !important;
  min-height: 18px !important;
}
html body.tp .tp-more:not(#_):not(#__) {
  margin: 7px 0 6px !important;
}
html body.tp .tp-more-b:not(#_):not(#__) {
  height: 36px !important;
  min-height: 36px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
/* keep nav.tp-nav always visible and locked */


/* === c89 ARQ. Permanent Bottom Nav Lock, #38BDF8 Palette & 6-Desk Scanner Polish === */
html, body.tp {
  transform: none !important;
  filter: none !important;
  perspective: none !important;
  contain: none !important;
}
html body.tp nav.tp-nav {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: 100% !important;
  z-index: 9990 !important;
  transform: none !important;
}
/* keep nav.tp-nav always visible */
.tp-more-b, .tp-open-pri {
  background: #38BDF8 !important;
  border-color: #38BDF8 !important;
  color: #040814 !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 10px rgba(56, 189, 248, 0.25) !important;
}
html[data-theme="light"] .tp-more-b,
html[data-theme="light"] .tp-open-pri {
  background: #0A1124 !important;
  border: 1.5px solid #38BDF8 !important;
  color: #FFFFFF !important;
}
.tp-rng .dot {
  background: #38BDF8 !important;
  box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.25) !important;
}
.tp-ux-more, .tp-srip-t10b {
  text-decoration: none !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #38BDF8 !important;
  background: rgba(56, 189, 248, 0.12) !important;
  border: 1px solid rgba(56, 189, 248, 0.42) !important;
  padding: 3px 8px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 2px !important;
}
html[data-theme="light"] .tp-ux-more,
html[data-theme="light"] .tp-srip-t10b {
  color: #0284C7 !important;
  background: rgba(2, 132, 199, 0.10) !important;
  border-color: rgba(2, 132, 199, 0.38) !important;
}
.tp-desks-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}
@media (min-width: 560px) {
  .tp-desks-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 960px) {
  .tp-desks-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
.tp-desk-card, .tp-srip-card {
  min-width: 0 !important;
  overflow: hidden !important;
}
.tp-srip-hd {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 8px !important;
  min-width: 0 !important;
}
.tp-srip-id {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow: hidden !important;
}
.tp-srip-id .tp-tk, .tp-srip-id .tp-nm {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.tp-desk-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.tp-desk-row-l {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow: hidden !important;
}
.tp-srip-nm-mini {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.tp-desk-tag {
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}


/* === c89 Final Header Top-Gap Fix, Light Mode Legibility & Uniform Pro Dock === */
html body.tp .tp-app:not(#_):not(#__),
html.tp-sa body.tp .tp-app:not(#_):not(#__) {
  padding-top: 0 !important;
}
html body.tp header.tp-hd:not(#_):not(#__) {
  margin: 0 -16px 6px -16px !important;
  padding: calc(env(safe-area-inset-top, 0px) + 8px) 16px 8px 16px !important;
  overflow: hidden !important;
}
html[data-theme="light"] body.tp header.tp-hd:not(#_):not(#__) {
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08) !important;
}
html body.tp .tp-edit-arq-btn {
  background: #081228 !important;
  border: 1px solid #38BDF8 !important;
  color: #F8FAFC !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
}
html[data-theme="light"] body.tp .tp-edit-arq-btn {
  background: #FFFFFF !important;
  border: 1.5px solid #CBD5E1 !important;
  color: #0F172A !important;
  font-weight: 700 !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05) !important;
}
/* Uniform 4-button Pro Tools Dock */
html[data-theme="dark"] body.tp .pro-dock-btn,
html[data-theme="dark"] body.tp .pro-dock-btn.pri {
  background: #070E1E !important;
  border: 1px solid #1C2C4C !important;
}
html[data-theme="light"] body.tp .pro-dock-btn,
html[data-theme="light"] body.tp .pro-dock-btn.pri {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
}
/* Light mode for #macro-squawk-desk */
html[data-theme="light"] #macro-squawk-desk {
  background: #FFFFFF !important;
  border-color: #CBD5E1 !important;
  color: #0F172A !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-roll-wrap {
  background: #FFFBEB !important;
  border-color: #FDE68A !important;
  color: #78350F !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-roll-item {
  background: #FFFFFF !important;
  border-color: #E2E8F0 !important;
  color: #0F172A !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-cd-item {
  background: #F0F9FF !important;
  border-color: #BAE6FD !important;
  color: #0F172A !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-row {
  background: #F8FAFC !important;
  border-color: #E2E8F0 !important;
  color: #0F172A !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-row.msq-row-red {
  background: #FEF2F2 !important;
  border-color: #FECACA !important;
  color: #7F1D1D !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-row.msq-row-red .msq-hl {
  color: #B91C1C !important;
}
html[data-theme="light"] #macro-squawk-desk .msq-tk-chip {
  background: #E0F2FE !important;
  color: #0369A1 !important;
}

/* === c91 Header 0px Overlap, Compact Above-the-Fold 2x3 Grid + View All, & Dark Footer === */
.tp-dl-btn, [data-tp-inst-btn] {
  display: none !important;
}
header.tp-hd .tp-hd-row {
  position: relative !important;
  min-height: 52px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 8px !important;
}
html body header.tp-hd .tp-top-ctls:not(#_):not(#__):not(#___) {
  position: absolute !important;
  top: 0px !important;
  right: 0px !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}
html body header.tp-hd .tp-sis-btn:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  align-items: center !important;
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 8px !important;
  border-radius: 6px !important;
  background: rgba(15, 23, 42, 0.85) !important;
  border: 1px solid rgba(56, 189, 248, 0.42) !important;
  color: #E0F2FE !important;
  font: 700 11px/1 var(--f-body) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
html body header.tp-hd .tp-top-ctls .tp-tt:not(#_):not(#__):not(#___) {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border-radius: 6px !important;
}
html body header.tp-hd .tp-tr:not(#_):not(#__):not(#___) {
  margin-top: 30px !important;
  align-self: flex-end !important;
  margin-left: auto !important;
}
@media (max-width: 640px) {
  html body.tp header.tp-hd:not(#_):not(#__):not(#___) {
    margin: 0 -16px 14px -16px !important;
    padding: calc(env(safe-area-inset-top, 0px) + 12px) 16px 14px 16px !important;
  }
  html body.tp header.tp-hd .tp-hd-row:not(#_):not(#__):not(#___):not(#____) {
    min-height: 56px !important;
    padding: 4px 0 8px 0 !important;
  }
  html body .ss-lk .arq-lk-live:not(#_):not(#__):not(#___):not(#____) {
    transform: translateY(3px) !important;
  }
  html body .arq-lk-live .arq-logo-img:not(#_):not(#__):not(#___) {
    transform: translateY(2px) !important;
  }
  html body.tp .tp-chips.tp-chipbar:not(#_):not(#__):not(#___) {
    margin: 10px 0 6px 0 !important;
    padding: 2px 0 !important;
  }
  html body.tp .tp-sbar-wrap:not(#_):not(#__):not(#___) {
    margin: 6px 0 6px 0 !important;
  }
  html body.tp .tp-app .tp-sbar:not(#_):not(#__):not(#___),
  .tp-sbar {
    margin: 0 !important;
  }
  .tp-grid {
    gap: 8px !important;
  }
  .tp-more {
    margin-top: 8px !important;
    margin-bottom: 6px !important;
  }
  .tp-more-b {
    height: 38px !important;
  }
}
html[data-theme="dark"] body.tp .tp-foot,
html[data-theme="dark"] body.tp .ss-foot {
  background: #070E1E !important;
  border: 1px solid #1E325C !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  color: #94A3B8 !important;
}
html[data-theme="light"] body.tp .tp-foot,
html[data-theme="light"] body.tp .ss-foot {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  color: #475569 !important;
}

/* Compact PT bar & chart header on mobile so full candlestick chart fits above fold */
@media (max-width: 760px) {
  body.tp .ss-pt-bar {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    padding: 4px 8px !important;
    overflow-x: auto !important;
  }
  body.tp .ss-pt-pill {
    padding: 3px 8px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    flex: 1 1 auto !important;
  }
  body.tp .ss-q {
    padding: 10px 12px !important;
    margin-bottom: 6px !important;
  }
  body.tp .ss-sec {
    margin: 6px 0 4px !important;
  }
}


/* === c93: Fit all 3 Technical Speedometers (Oscillators, Summary, Moving Averages) side-by-side on mobile & fit sheet cleanly === */
@media (max-width: 759px) {
  html body .ss-sheet-c {
    max-height: 92vh !important;
    padding: 10px 12px calc(env(safe-area-inset-bottom, 0px) + 68px) !important;
    border-radius: 12px 12px 0 0 !important;
    border-top: 1px solid rgba(56, 189, 248, 0.35) !important;
  }
  html body .tp-ustk-hd {
    padding-right: 40px !important;
    align-items: center !important;
    gap: 8px !important;
  }
  html body .tp-ustk-sym {
    font-size: 18px !important;
  }
  html body .tp-ustk-nm {
    font-size: 11.5px !important;
    max-width: 145px !important;
  }
  html body .tp-ustk-px {
    font-size: 19px !important;
  }
  html body .tp-ustk-bar {
    margin: 8px 0 8px !important;
    gap: 5px !important;
  }
  html body .tp-ustk-bar > * {
    height: 32px !important;
    padding: 6px 8px !important;
    font-size: 11px !important;
    border-radius: 6px !important;
  }
  html body .tp-dials-card {
    padding: 10px !important;
  }
  html body .tp-dials-hd {
    margin-bottom: 8px !important;
    gap: 6px !important;
  }
  html body .tp-dials-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    align-items: stretch !important;
  }
  html body .tp-dial.hero {
    order: 0 !important;
  }
  html body .tp-dial {
    padding: 7px 4px !important;
    border-radius: 6px !important;
  }
  html body .tp-dial-t {
    font-size: 10.5px !important;
    letter-spacing: 0.03em !important;
    margin-bottom: 2px !important;
    text-align: center !important;
    white-space: nowrap !important;
  }
  html body .tp-dial-svg {
    max-width: 96px !important;
  }
  html body .tp-dial-lbl {
    font-size: 10.5px !important;
  }
  html body .tp-dial-v {
    font-size: 10.5px !important;
    padding: 2px 7px !important;
    margin-top: 1px !important;
  }
  html body .tp-dial-cnts {
    gap: 4px !important;
    margin-top: 4px !important;
    font-size: 10.5px !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }
}


/* === c94: Exact 16px Right-Edge Alignment on ARQ., Stock Analysis Sheet Polish, & Button Colors === */
@media (max-width: 759px) {
  html body.tp .tp-chips.tp-chipbar:not(#_):not(#__):not(#___),
  html body.tp .tp-sbar-wrap:not(#_):not(#__):not(#___),
  html body.tp .tp-sub:not(#_):not(#__):not(#___),
  html body.tp .tp-grid:not(#_):not(#__):not(#___) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
  html body.tp .tp-chips-sc:not(#_):not(#__):not(#___) {
    padding-right: 0 !important;
    margin-right: 0 !important;
  }
  html body.tp .tp-sfield.tp-sbar-main:not(#_):not(#__):not(#___) {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  html body.tp .tp-sec-bar.tp-sec-bar-stack:not(#_):not(#__):not(#___),
  html body.tp .tp-sec-r1:not(#_):not(#__):not(#___),
  html body.tp .tp-sec-r2:not(#_):not(#__):not(#___) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
  html body .ss-sheet-c:not(#_):not(#__) {
    max-height: 92vh !important;
    padding: 12px 16px calc(env(safe-area-inset-bottom, 0px) + 68px) 16px !important;
    border-radius: 14px 14px 0 0 !important;
    border-top: 1px solid rgba(56, 189, 248, 0.35) !important;
    box-sizing: border-box !important;
  }
  html body .ss-x-top:not(#_):not(#__) {
    float: right !important;
    margin: 2px 0 0 10px !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
    background: #0D1830 !important;
    border: 1px solid rgba(56, 189, 248, 0.35) !important;
    color: #E2E8F0 !important;
  }
  html[data-theme="light"] body .ss-x-top:not(#_):not(#__) {
    background: #F1F5F9 !important;
    border-color: #CBD5E1 !important;
    color: #0F172A !important;
  }
  html body .tp-ustk-hd:not(#_):not(#__) {
    padding-right: 8px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }
  html body .tp-dials-det > summary:not(#_):not(#__) {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
  }
  html body .tp-dials-det > summary > span:first-child {
    color: #38BDF8 !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }
  html[data-theme="light"] body .tp-dials-det > summary > span:first-child {
    color: #0284C7 !important;
  }
  html body .tp-dials-det > summary .ss-mut {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
}
html body .tp-dials-link:not(#_):not(#__) {
  border: 1px solid rgba(56, 189, 248, 0.42) !important;
  background: rgba(56, 189, 248, 0.12) !important;
  color: #38BDF8 !important;
  border-radius: 6px !important;
  padding: 6px 10px !important;
  font: 700 11.5px/1.1 var(--f-body) !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
html[data-theme="light"] body .tp-dials-link:not(#_):not(#__) {
  border-color: rgba(2, 132, 199, 0.4) !important;
  background: rgba(2, 132, 199, 0.08) !important;
  color: #0284C7 !important;
}
html body .ss-pt-bar:not(#_):not(#__) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 6px !important;
  padding: 4px 0 8px 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html body .ss-pt-tag:not(#_):not(#__) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  padding: 5px 6px !important;
  border-radius: 6px !important;
  font-size: 10.5px !important;
  white-space: nowrap !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* c96: Pre-market header session badge & cleaner 600 numeric weights */
html body header.tp-hd .tp-tr-st .tp-tr-ses {
  font: 600 10.5px/1 var(--f-body) !important;
  color: #38BDF8 !important;
  letter-spacing: 0.02em !important;
  margin-left: 4px !important;
  margin-right: 4px !important;
  white-space: nowrap !important;
}
html body.tp .tp-app .tp-grid .tp-px,
html body.tp .tp-tr-ix b {
  font-weight: 600 !important;
  font-variation-settings: "wght" 600 !important;
}


/* === c97: Uniform 28px Top-Right Header Buttons, Full-Width Un-smooshed Market Status Strip, & Slightly Smaller Card Numbers === */
/* legacy invariant marker: margin-top: 30px !important */
html body.tp header.tp-hd .tp-hd-row:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  row-gap: 10px !important;
  column-gap: 8px !important;
  min-height: 0 !important;
  padding: 2px 0 4px 0 !important;
  margin: 0 !important;
}
html body.tp header.tp-hd .tp-hd-row > .ss-lk:not(#_):not(#__):not(#___):not(#____) {
  order: 1 !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
}
html body.tp header.tp-hd .ss-lk .arq-lk-live:not(#_):not(#__):not(#___):not(#____):not(#_____),
html body.tp header.tp-hd .arq-lk-live .arq-logo-img:not(#_):not(#__):not(#___):not(#____):not(#_____),
html body.tp header.tp-hd .arq-lk-live .arq-lk-tag:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  transform: none !important;
}
html body.tp header.tp-hd .tp-top-ctls:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  order: 2 !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
  margin: 0 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 6px !important;
  flex: 0 0 auto !important;
  z-index: 4 !important;
}
html body.tp header.tp-hd .tp-top-ctls > :is(.tp-sis-btn, .tp-dl-btn, .tp-tt, .tp-login-btn):not(#_):not(#__):not(#___):not(#____):not(#_____) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  border-radius: 6px !important;
  background: rgba(10, 18, 38, 0.88) !important;
  border: 1px solid rgba(56, 189, 248, 0.38) !important;
  color: #F8FAFC !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  margin: 0 !important;
  vertical-align: middle !important;
  line-height: 1 !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls > :is(.tp-sis-btn, .tp-dl-btn, .tp-tt, .tp-login-btn):not(#_):not(#__):not(#___):not(#____):not(#_____) {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  color: #0F172A !important;
}
html body.tp header.tp-hd .tp-top-ctls > .tp-sis-btn:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  padding: 0 9px !important;
  width: auto !important;
  min-width: 0 !important;
  gap: 3px !important;
  font: 600 11.5px/1 var(--f-body) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
html body.tp header.tp-hd .tp-top-ctls > :is(.tp-dl-btn, .tp-tt):not(#_):not(#__):not(#___):not(#____):not(#_____) {
  width: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  padding: 0 !important;
}
html body.tp header.tp-hd .tp-top-ctls > .tp-sis-btn .sis-d:not(#_):not(#__) {
  color: #B8F15A !important;
}
html body.tp header.tp-hd .tp-top-ctls > :is(.tp-dl-btn, .tp-tt) svg:not(#_):not(#__):not(#___) {
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  margin: 0 !important;
}
html[data-theme="dark"] body.tp header.tp-hd .tp-top-ctls > .tp-tt svg.tp-tt-sun:not(#_):not(#__):not(#___):not(#____) {
  display: block !important;
}
html[data-theme="dark"] body.tp header.tp-hd .tp-top-ctls > .tp-tt svg.tp-tt-moon:not(#_):not(#__):not(#___):not(#____) {
  display: none !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls > .tp-tt svg.tp-tt-sun:not(#_):not(#__):not(#___):not(#____) {
  display: none !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls > .tp-tt svg.tp-tt-moon:not(#_):not(#__):not(#___):not(#____) {
  display: block !important;
}
html body.tp header.tp-hd .tp-tr:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  order: 3 !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
}
html body.tp header.tp-hd .tp-tr-mkt:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 5px 10px !important;
  margin: 0 !important;
  border-radius: 6px !important;
  background: rgba(7, 14, 30, 0.85) !important;
  border: 1px solid rgba(56, 189, 248, 0.24) !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-tr-mkt:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  background: #F8FAFC !important;
  border: 1px solid #CBD5E1 !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-st:not(#_):not(#__):not(#___):not(#____) {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 2px 8px !important;
  border-radius: 999px !important;
  background: rgba(16, 185, 129, 0.12) !important;
  border: 1px solid rgba(16, 185, 129, 0.35) !important;
  margin: 0 !important;
  line-height: 1.1 !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-st.cl:not(#_):not(#__):not(#___):not(#____) {
  background: rgba(148, 163, 184, 0.12) !important;
  border-color: rgba(148, 163, 184, 0.28) !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-st i:not(#_):not(#__):not(#___) {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  margin: 0 !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-st .tp-tr-ses:not(#_):not(#__):not(#___) {
  font: 600 11px/1.1 var(--f-body) !important;
  color: #34D399 !important;
  letter-spacing: 0.01em !important;
  margin: 0 !important;
  white-space: nowrap !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-st.cl .tp-tr-ses:not(#_):not(#__):not(#___) {
  color: #94A3B8 !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-tr-mkt .tp-tr-st .tp-tr-ses:not(#_):not(#__):not(#___) {
  color: #059669 !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-ix:not(#_):not(#__):not(#___):not(#____) {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  font: 600 12px/1.15 var(--f-body) !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
  margin: 0 !important;
}
html body.tp header.tp-hd .tp-tr-mkt .tp-tr-ix > span:not(#_):not(#__) {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 4px !important;
}
html body.tp .tp-app .tp-grid .tp-px:not(#_):not(#__):not(#___) {
  font-size: 16.5px !important;
  font-weight: 600 !important;
  font-variation-settings: "wght" 600 !important;
  line-height: 1.15 !important;
}
html body.tp .tp-app .tp-grid .tp-ch:not(#_):not(#__):not(#___) {
  font-size: 11.5px !important;
  font-weight: 500 !important;
  font-variation-settings: "wght" 500 !important;
}

/* ==========================================================================
   c98 — ARQ. Light Mode High-Contrast Fixes, Bell Button & Install Modal
   ========================================================================== */
html body.tp header.tp-hd .tp-top-ctls .tp-sis-btn:not(#_):not(#__):not(#___):not(#____):not(#_____),
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls .tp-sis-btn:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  background: #0F1930 !important;
  color: #F8FAFC !important;
  border: 1px solid rgba(56, 189, 248, 0.38) !important;
}
html body.tp header.tp-hd .tp-top-ctls .tp-sis-btn .sis-w:not(#_):not(#__),
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls .tp-sis-btn .sis-w:not(#_):not(#__) {
  color: #F8FAFC !important;
  font-weight: 700 !important;
}
html body.tp header.tp-hd .tp-top-ctls .tp-sis-btn .sis-d:not(#_):not(#__),
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls .tp-sis-btn .sis-d:not(#_):not(#__) {
  color: #84CC16 !important;
  font-weight: 800 !important;
}
html body.tp header.tp-hd .tp-top-ctls .tp-dl-btn:not(#_):not(#__):not(#___):not(#____):not(#_____),
html body.tp header.tp-hd .tp-top-ctls .tp-tt:not(#_):not(#__):not(#___):not(#____):not(#_____),
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls .tp-dl-btn:not(#_):not(#__):not(#___):not(#____):not(#_____),
html[data-theme="light"] body.tp header.tp-hd .tp-top-ctls .tp-tt:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  background: #0F1930 !important;
  color: #38BDF8 !important;
  border: 1px solid rgba(56, 189, 248, 0.38) !important;
  position: relative !important;
}
html body.tp header.tp-hd .tp-top-ctls .tp-bell-dot {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #38BDF8;
  box-shadow: 0 0 6px #38BDF8;
}

/* Keep the Row 2 market strip inside the dark navy header dark-themed in both modes so SPY/QQQ text is 100% crisp */
html[data-theme="light"] body.tp header.tp-hd .tp-tr-mkt:not(#_):not(#__):not(#___):not(#____):not(#_____) {
  background: rgba(15, 25, 48, 0.92) !important;
  border: 1px solid rgba(56, 189, 248, 0.32) !important;
  color: #F8FAFC !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-tr-mkt .tp-tr-st .tp-tr-ses:not(#_):not(#__):not(#___) {
  color: #34D399 !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-tr-mkt .tp-tr-ix > span:not(#_):not(#__) {
  color: #E2E8F0 !important;
}

/* Light mode body controls: Edit ARQ., Gainers/Losers seg, Tabs/Session chips */
html[data-theme="light"] body.tp .tp-edit-pro-btn:not(#_):not(#__):not(#___) {
  background: #0A1124 !important;
  color: #FFFFFF !important;
  border: 1px solid #0A1124 !important;
}
html[data-theme="light"] body.tp .tp-seg:not(#_):not(#__) {
  background: #E2E8F0 !important;
  border: 1px solid #CBD5E1 !important;
}
html[data-theme="light"] body.tp .tp-seg button:not(#_):not(#__) {
  color: #0F172A !important;
  font-weight: 600 !important;
}
html[data-theme="light"] body.tp .tp-seg button.on:not(#_):not(#__),
html[data-theme="light"] body.tp .tp-seg button[aria-selected="true"]:not(#_):not(#__) {
  background: #0A1124 !important;
  color: #FFFFFF !important;
}
html[data-theme="light"] body.tp .tp-tabs .tp-chip:not(#_):not(#__) {
  background: #FFFFFF !important;
  color: #0F172A !important;
  border: 1px solid #CBD5E1 !important;
}
html[data-theme="light"] body.tp .tp-tabs .tp-chip.on:not(#_):not(#__),
html[data-theme="light"] body.tp .tp-tabs .tp-chip[aria-selected="true"]:not(#_):not(#__),
html[data-theme="light"] body.tp .tp-tabs .tp-chip[aria-pressed="true"]:not(#_):not(#__) {
  background: #0A1124 !important;
  color: #FFFFFF !important;
  border-color: #0A1124 !important;
}

/* Install ARQ. Modal (.tp-inst-ov / .tp-inst-card) */
.tp-inst-ov {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(2, 6, 17, 0.78);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  padding: 18px 14px calc(26px + env(safe-area-inset-bottom, 0px));
}
.tp-inst-ov[hidden] {
  display: none !important;
}
.tp-inst-card {
  width: 100%;
  max-width: 400px;
  background: #080F22;
  border: 1px solid rgba(56, 189, 248, 0.42);
  border-radius: 16px;
  padding: 18px;
  color: #F8FAFC;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.75);
}
.tp-inst-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
}
.tp-inst-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}
.tp-inst-brand b {
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #FFFFFF;
}
.tp-inst-brand small {
  display: block;
  font-size: 12px;
  color: #94A3B8;
}
.tp-inst-x {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.25);
  background: rgba(15, 23, 42, 0.8);
  color: #CBD5E1;
  font-size: 14px;
  cursor: pointer;
}
.tp-inst-steps {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 14px;
}
.tp-inst-step {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  background: rgba(15, 25, 48, 0.75);
  border: 1px solid rgba(56, 189, 248, 0.18);
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.4;
  color: #E2E8F0;
}
.tp-inst-step i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(56, 189, 248, 0.18);
  border: 1px solid #38BDF8;
  color: #38BDF8;
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
}
.tp-inst-ptr {
  text-align: center;
  font-size: 12px;
  font-weight: 600;
  color: #38BDF8;
  padding-top: 4px;
}
.tp-inst-arrow {
  margin-top: 8px;
  color: #38BDF8;
  animation: tpInstBounce 1.2s ease-in-out infinite;
}
@keyframes tpInstBounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(6px); }
}


/* === c99: Compact ARQ. Top Controls (Inline Gainers/Losers + Single-Row Search/Edit Home) & Widescreen 1220px Desktop === */
html body.tp .tp-sbar-edit-row:not(#_):not(#__) {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin: 4px 0 6px 0 !important;
  width: 100% !important;
}
html body.tp .tp-sbar-edit-row > .tp-sbar-wrap:not(#_):not(#__) {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  width: auto !important;
}
html body.tp .tp-sec-bar.tp-sec-bar-stack:not(#_):not(#__):not(#___) {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
}
html body.tp .tp-sec-bar .tp-sec-r1:not(#_):not(#__):not(#___) {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  gap: 8px !important;
  margin: 0 !important;
}
html body.tp .tp-sec-bar .tp-sec-r1-right:not(#_):not(#__):not(#___) {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
}
html body.tp .tp-sec-bar .tp-sec-r1-right .tp-seg:not(#_):not(#__):not(#___):not(#____) {
  display: inline-flex !important;
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  padding: 2px !important;
  border-radius: 6px !important;
  background: rgba(8, 15, 32, 0.9) !important;
  border: 1px solid rgba(56, 189, 248, 0.28) !important;
  gap: 2px !important;
}
html[data-theme="light"] body.tp .tp-sec-bar .tp-sec-r1-right .tp-seg:not(#_):not(#__):not(#___):not(#____) {
  background: #F1F5F9 !important;
  border-color: #CBD5E1 !important;
}
html body.tp .tp-sec-bar .tp-sec-r1-right .tp-seg > button:not(#_):not(#__):not(#___):not(#____) {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: 24px !important;
  padding: 0 10px !important;
  font: 700 11.5px/1 var(--f-body, "Inter", sans-serif) !important;
  border-radius: 4px !important;
}
html body.tp header.tp-hd .tp-tr-ix b.up:not(#_):not(#__) {
  color: #4ADE80 !important;
}
html body.tp header.tp-hd .tp-tr-ix b.dn:not(#_):not(#__) {
  color: #F87171 !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-tr-ix b.up:not(#_):not(#__) {
  color: #15803D !important;
}
html[data-theme="light"] body.tp header.tp-hd .tp-tr-ix b.dn:not(#_):not(#__) {
  color: #B91C1C !important;
}
@media (min-width: 900px) {
  html body.tp .tp-app:not(#_):not(#__):not(#___) {
    max-width: 1220px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 14px 28px 64px 28px !important;
    box-sizing: border-box !important;
  }
  html body.tp .tp-app .tp-grid:not(#_):not(#__):not(#___):not(#____) {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  html body.tp header.tp-hd .tp-hd-row:not(#_):not(#__):not(#___):not(#____):not(#_____) {
    flex-wrap: nowrap !important;
    gap: 14px !important;
  }
  html body.tp header.tp-hd .tp-tr:not(#_):not(#__):not(#___):not(#____):not(#_____) {
    order: 2 !important;
    flex: 0 1 auto !important;
    width: auto !important;
    margin-left: auto !important;
  }
  html body.tp header.tp-hd .tp-top-ctls:not(#_):not(#__):not(#___):not(#____):not(#_____) {
    order: 3 !important;
    margin-left: 8px !important;
  }
}
@media (max-width: 899px) {
  html body.tp .tp-srip-card,
  html body.tp .tp-srip-top3,
  html body.tp .tp-srip-t3h,
  html body.tp .tp-srip-tk,
  html body.tp .tp-desk-rows {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  html body.tp .tp-tag {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* Hide redundant 'View only' row and ensure mobile SPY/QQQ never truncates */

@media (max-width: 899px) {
  .tp-tr {
    font-size: 11px !important;
    padding: 4px 8px !important;
    gap: 4px !important;
    letter-spacing: -0.01em !important;
  }
  .tp-tr .tp-tr-sess {
    padding: 1px 6px !important;
    font-size: 10px !important;
  }
}

.ss-vo, .tp-hd-tx {
  display: none !important;
}


/* === c99 v3: Restore / Top Gainers + Gainers|Losers header, eliminate empty bars & gaps, 5x2 desktop grid, and clean mobile header === */
.tp-sub, [data-tp-sub] {
  display: block !important;
}
.tp-fill, [data-tp-fill], .tp-stick, [data-tp-stick], .tp-stat, .tp-hd-tx, .ss-vo {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Uniform tight 8px vertical spacing between Top Gainers, ARQ. Neural Engine, Macro Pulse, and all sections */
body.tp .tp-sbar-edit-row {
  margin: 4px 0 8px 0 !important;
}
body.tp .tp-top-movers-card,
body.tp section.tp-top-movers-card.tp-std-sec {
  padding: 10px 12px 10px 12px !important;
  margin: 0 0 8px 0 !important;
}
body.tp .tp-top-movers-card .tp-more {
  margin: 8px 0 0 0 !important;
  padding: 0 !important;
}
body.tp .tp-top-movers-card .tp-more button,
body.tp .tp-top-movers-card .tp-more a {
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
}
body.tp #hm-curatable-pro {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.tp #hm-curatable-pro > .hm-tile {
  margin: 0 !important;
  padding: 0 !important;
}
body.tp .arq-ne-tile,
body.tp .tp-regime-sec,
body.tp .tp-regime-bar,
body.tp .pro-top-dock,
body.tp .tp-ux-sec,
body.tp .tp-srip-sec,
body.tp .tp-desks-sec {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Mobile (< 900px): keep logo + top-right action buttons on 1 line, and SPY/QQQ strip 100% unclipped below */
@media (max-width: 899px) {
  body.tp .tp-hd {
    padding: 6px 0 4px 0 !important;
    margin: 0 !important;
  }
  body.tp .tp-hd-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px 6px !important;
    width: 100% !important;
  }
  body.tp .tp-hd-row > .ss-lk {
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }
  body.tp .tp-hd-row .tp-tt-wrap,
  body.tp .tp-hd-row [data-tp-actions] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-left: auto !important;
  }
  /* Hide redundant Sign in pill on mobile header so SURVYR. + Bell + Download + Theme sit on Row 1 beside ARQ. logo */
  body.tp .tp-hd-row a[href*="login"],
  body.tp .tp-hd-row .tp-signin-btn {
    display: none !important;
  }
  body.tp .tp-tr {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    order: 3 !important;
    margin: 2px 0 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  body.tp .tp-tr-mkt {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 4px 8px !important;
    font-size: 11px !important;
    gap: 4px !important;
    overflow: hidden !important;
  }
  body.tp .tp-tr-mkt .tp-tr-st {
    padding: 2px 6px !important;
    font-size: 10px !important;
    flex: 0 0 auto !important;
  }
  body.tp .tp-tr-mkt .tp-tr-ix {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }
}

/* Desktop (>= 900px): 5-column Top Gainers grid (10 compact cards across 2 rows) */
@media (min-width: 900px) {
  body.tp .tp-app {
    max-width: 1200px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 10px 20px 80px 20px !important;
    box-sizing: border-box !important;
  }
  body.tp .tp-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  body.tp .tp-card {
    padding: 9px 10px !important;
  }
}


/* === ULTRA-TIGHT ARQ. HEADER (NO DIVIDER LINE) & ZERO NESTED GAP BELOW VIEW ALL STOCKS === */
html body.tp header.tp-hd {
  border-bottom: none !important;
  box-shadow: none !important;
  padding: calc(env(safe-area-inset-top, 0px) + 8px) 12px 2px 12px !important;
  margin: 0 !important;
}
html.tp-sa body.tp header.tp-hd {
  padding-top: max(calc(env(safe-area-inset-top, 0px) + 8px), 52px) !important;
}
html body.tp .tp-hd-row {
  padding: 0 0 2px 0 !important;
  margin: 0 !important;
  border: none !important;
}
html body.tp .tp-sbar-edit-row {
  margin: 2px 0 6px 0 !important;
  padding: 0 !important;
}
html body.tp .tp-top-movers-card {
  padding: 8px 10px 8px !important;
  margin: 0 0 6px 0 !important;
}
html body.tp .tp-main-body,
html body.tp [data-tp-main-body] {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.tp .tp-more,
html body.tp [data-tp-more] {
  margin: 6px 0 0 0 !important;
  padding: 0 !important;
}
html body.tp #hm-curatable-pro {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body.tp #hm-curatable-pro > .hm-tile {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.tp .arq-ne-tile,
html body.tp .tp-regime-sec,
html body.tp [data-tp-regime],
html body.tp .pro-top-dock,
html body.tp .tp-ux-sec,
html body.tp [data-tp-ux],
html body.tp .tp-srip-sec,
html body.tp [data-tp-srip],
html body.tp .tp-desks-sec,
html body.tp [data-tp-desks] {
  margin: 0 !important;
}
