/* ===================== coteau preview layer (Waterfall gray, locked) =====================
   header #D9DDE0 · page #EEF1F3 (option 7: cool gray, white cards + soft shadow) · ink #143440 · accent #7DB9BE · hairline #3A7A82→#4A9098 (2px)
   newest card #DFEAF0 + #A8C4D0 edge + subtle X · older cards white + #CCD0D4 · square corners */
/* LIGHT ACCENT (round 4, Oct 19): bright cyan. Swap point = the light tokens below (--ct-accent / --ct-accent-d / --ct-edge / --ct-tile /
   --ct-tile-edge / --ct-line / --ct-new / --ct-new-edge). Filled buttons + active chip: #3EC8C9 with ink #143440 text (6.46:1) and a 1px #1A5A66 edge.
   Previous seafoam, to swap back: accent #7DB9BE · accent-d #3A7A82 · edge #7DB9BE · tile #E3EFEE / #BCD9DA · new #DFEAF0 / #A8C4D0 ·
   line #3A7A82→#4A9098 · fills white text · x-card.svg strokes #7CB8BC / #4A9098. Dark theme overrides all of these further down. */
@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")}
:root,[data-theme=light],[data-theme=dark]{
  --ct-header:#D9DDE0;--ct-page:#EEF1F3;--ct-ink:#143440;--ct-accent:#3EC8C9;--ct-accent-d:#207374;--ct-edge:#1A5A66;--ct-on-accent:#143440;--ct-tile:#E6F6F6;--ct-tile-edge:#B8E6E6;--ct-gray:#CCD0D4;--ct-soft:#3A5560;
  --ct-new:#E0F4F4;--ct-new-edge:#9FDCDC;--ct-line:linear-gradient(90deg,#1A5A66,#1E8C90);
  --bg:#EEF1F3;--card:#FFFFFF;--ink:#143440;--muted:#4F6670;--line:#D9DCDF;--soft:#F1F3F5;--chip:#ECEEF0;
  --accent:#3EC8C9;--royal:#207374;--navy:#143440;--indigo:#207374;--azure:#1E8C90;--sky:#3EC8C9;--pale:#B8E6E6;
  --sec:#207374;--hero:none;--shadow:none;
  --c-news:#3EC8C9;--c-models:#3EC8C9;--c-port:#3EC8C9;--c-ins:#3EC8C9;--c-earn:#3EC8C9;--c-res:#3EC8C9;--c-cat:#3EC8C9;--c-stock:#3EC8C9;--c-copy:#3EC8C9;--c-watch:#3EC8C9;
  --up:#15803D;--down:#C2410C;color-scheme:light}
html body.ct{background:var(--ct-page)!important;background-image:none!important;color:var(--ct-ink);font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
html body.ct main.wrap{background:transparent!important;background-image:none!important}
#bbLayer{display:none!important}

/* ---------- corners (round 4): 4px on cards, chips, buttons, tiles, inputs, heroes, sheets, toasts, tour, drawer cards; 2px on small tags
   and ticker pills; logo dots round; everything else (header, nav bar, bottom nav, drawer panel, pseudo-elements) square. Both themes. ---------- */
html body.ct *:not(img),html body.ct *::before,html body.ct *::after{border-radius:0!important}
html body.ct :is(.topcard,.fchip,.btn,button.pri,.ms,.pill,.iconbtn,input:not([type=checkbox]):not([type=radio]):not(.sw),select,textarea,.card,.hero,.hchip,.ct-step-card,.ct-getapp-top,
 .tour-card,.sheet,.seg span,.stat,.rt,.news,.list,.whyin,.tabs a,.sugg,.flash,.dhb,.pushprompt,.ct-getapp-drawer,.ct-themesw:not(.in-page),.ct-seg,.grade,.chip){border-radius:4px!important}
html body.ct :is(.topcard .tkp,.cat,.tmeta span,.blab,.sx,.badge,.hchip .n,.whyin .wr,.ct-getapp-drawer img){border-radius:2px!important}
html body.ct .sw{border-radius:999px!important}html body.ct .sw::after{border-radius:50%!important}
html body.ct :is(.tkp .lgo,.tkp .lgo img,.lgo.mono,.lgo,.lgo img){border-radius:50%!important}
html body.ct .topcard.lead,html body.ct .hero,html body.ct .ct-seg,html body.ct .list{overflow:hidden}

/* ---------- header ---------- */
html body.ct header.top{background:var(--ct-header)!important;background-image:none!important;border-bottom:0!important;box-shadow:none!important}
html body.ct header.top::after{content:""!important;display:block!important;height:2px!important;background:var(--ct-line)!important;box-shadow:0 1px 0 rgba(20,52,64,.10),0 2px 3px rgba(20,52,64,.06)!important;position:relative;z-index:3}
html body.ct header.top .wrap,html body.ct header.top .toprow{background:transparent!important}
html body.ct header.top .toprow{min-height:58px;height:58px}
html body.ct header.top .iconbtn{background:#fff!important;border:1px solid var(--ct-gray)!important;color:var(--ct-ink)!important;box-shadow:none!important}
html body.ct header.top .iconbtn:hover{background:#F4F5F6!important}
html body.ct .themebtn,html body.ct .dtheme{display:none!important}
/* wordmark: lowercase coteau, Inter 500 23px, the WORD centred in the bar, mark A hanging to its left */
.ct-brand{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;padding:0!important;margin:0!important;display:block!important;color:var(--ct-ink)!important;text-decoration:none!important;line-height:1}
.ct-word{position:relative;display:block;font:500 23px/1 "Inter",system-ui,sans-serif;letter-spacing:-.005em;color:var(--ct-ink);white-space:nowrap;transform:translateY(-1px)}
.ct-word .ct-mark{position:absolute;right:100%;top:50%;height:1.4em;width:auto;margin-right:.36em;transform:translateY(calc(-50% + 1px));display:block}
.ct-getapp-top{display:none}
@media(min-width:900px){
  html body.ct header.top .toprow{min-height:64px;height:64px}
  .ct-brand{position:static!important;transform:none;flex:0 0 auto;margin-left:4px!important}
  .ct-word{padding-left:calc(1.4em * 170 / 133.6 + .36em);transform:none}
  .ct-word .ct-mark{left:0;right:auto;margin:0;transform:translateY(-50%)}
  html body.ct .dnav a{border-radius:0!important;color:var(--ct-ink)}
  html body.ct .dnav a.on{color:var(--ct-ink)!important;background:rgba(255,255,255,.55)!important;box-shadow:inset 0 -2px 0 var(--ct-accent-d)}
  html body.ct .dnav a:hover{background:rgba(255,255,255,.4)!important}
  html body.ct header.top .search input{background:#fff!important;border:1px solid var(--ct-gray)!important}
  .ct-getapp-top{display:inline-flex;align-items:center;height:40px;padding:0 12px;background:var(--ct-accent);border:1px solid var(--ct-edge);color:var(--ct-on-accent)!important;font-size:13.5px;font-weight:600;white-space:nowrap;text-decoration:none!important}
  html body.ct .dnav{gap:0}
}
@media(min-width:900px) and (max-width:1199px){html body.ct .dnav a{padding:10px 8px;font-size:14px}html body.ct header.top .search{width:180px}}
/* drawer + footer lockups */
.ct-dbrand,.ct-fbrand{display:flex!important;align-items:center;gap:9px;color:var(--ct-ink)!important;text-decoration:none!important}
.ct-dbrand .ct-mark,.ct-fbrand .ct-mark{height:28px;width:auto}
.ct-dword{font:500 21px/1 "Inter",system-ui,sans-serif;letter-spacing:-.005em;color:var(--ct-ink)}
html body.ct aside.drawer{background:var(--ct-page)!important;box-shadow:none!important}
html body.ct aside.drawer .dhead{background:var(--ct-header)!important;border-bottom:2px solid var(--ct-edge)}
html body.ct .dnav2 a.on{background:#fff!important;color:var(--ct-ink)!important;box-shadow:inset 3px 0 0 var(--ct-accent)}
.ct-getapp-drawer{display:flex;align-items:center;gap:10px;margin:12px 14px 4px;padding:10px 12px;background:#fff;border:1px solid var(--ct-gray);color:var(--ct-ink)!important;text-decoration:none!important}
.ct-getapp-drawer img{border:1px solid var(--ct-gray)}
.ct-getapp-drawer span{display:flex;flex-direction:column;line-height:1.25}.ct-getapp-drawer b{font-size:14.5px}.ct-getapp-drawer small{font-size:12px;color:var(--ct-soft)}
/* never show Get the app inside the installed app */
html.ct-standalone .ct-getapp,html.ct-standalone .ct-getapp-top,html.ct-standalone .ct-getapp-drawer,html.ct-standalone .ct-desk-only{display:none!important}
.ct-only-standalone{display:none}html.ct-standalone .ct-only-standalone{display:block}

/* ---------- news chips ---------- */
html body.ct .chipbar{background:var(--ct-page)!important;background-image:none!important}
html body.ct .fchip{background:#fff!important;border:1px solid var(--ct-gray)!important;color:var(--ct-ink)!important;box-shadow:none!important;font-weight:600}
html body.ct .fchip.on{background:var(--ct-accent)!important;border-color:var(--ct-edge)!important;color:var(--ct-on-accent)!important}
html body.ct .chipsep{background:var(--ct-gray)!important}

/* ---------- news cards: ONLY the newest is filled ---------- */
html body.ct .topcard{background:#fff!important;background-image:none!important;border:1px solid var(--ct-gray)!important;box-shadow:none!important;color:var(--ct-ink)!important}
html body.ct .topcard:not(.lead)::before{display:none!important;background:none!important}
html body.ct .topcard .tmeta span{color:var(--ct-soft)!important}
html body.ct .topcard .th{color:var(--ct-ink)!important}
html body.ct .topcard .ts{color:var(--ct-soft)!important}
html body.ct .topcard.lead{position:relative;overflow:hidden;isolation:isolate;background:var(--ct-new)!important;border:1px solid var(--ct-new-edge)!important;border-left:4px solid var(--ct-new-edge)!important;color:var(--ct-ink)!important}
html body.ct .topcard.lead>*{position:relative;z-index:1}
html body.ct .topcard.lead::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url(/static/x-card.svg?v=r4) right center/cover no-repeat}
@media(min-width:700px){html body.ct .topcard.lead::before{background-image:url(/static/x-card-desk.svg?v=r4)}}
html body.ct .topcard .tkp{background:#fff!important;color:var(--ct-ink)!important;border:1px solid rgba(20,52,64,.10)}
html body.ct .topcard.lead .tkp{background:rgba(255,255,255,.72)!important}
/* sector tags: one line, quiet */
html body.ct .cat{white-space:nowrap;background:#fff!important;color:var(--ct-ink)!important;border:1px solid rgba(20,52,64,.14);font-weight:650}
html body.ct .topcard.lead .cat{background:rgba(255,255,255,.72)!important;border-color:rgba(20,52,64,.10)}
html body.ct .news{background:#fff;border-color:var(--ct-gray)}
html body.ct .list.acc-news{border-color:var(--ct-gray)}

/* ---------- SPY + model tiles ---------- */
html body.ct .ms{background:#ECEEF0!important;background-image:none!important;border:1px solid var(--ct-gray)!important;box-shadow:none!important;color:var(--ct-ink)!important}
html body.ct .ms.mdl{background:var(--ct-tile)!important;border:1px solid var(--ct-tile-edge)!important;border-top:3px solid var(--ct-accent)!important}
html body.ct .ms .k,html body.ct .ms .s{color:var(--ct-soft)!important}
html body.ct .ms .v{color:var(--ct-ink)!important}
html body.ct .ms .up,html body.ct .ms .v.up{color:#15803D!important}html body.ct .ms .down,html body.ct .ms .v.down,html body.ct .ms .chg.down{color:#C2410C!important}
html body.ct .ms .chg.up{color:#15803D!important}
@media(min-width:700px){html body.ct .mstrip{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));overflow:visible;margin-left:0;margin-right:0;padding-left:0;padding-right:0}
  html body.ct .mstrip .ms{min-width:0}html body.ct .ms .k{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* ---------- section heads, pills, cards, buttons ---------- */
html body.ct h2::before{background:var(--ct-accent)!important;box-shadow:none!important;width:4px!important;height:16px!important}
html body.ct .pill{background:#fff!important;background-image:none!important;border:1px solid var(--ct-gray)!important;border-top:3px solid var(--ct-accent)!important;box-shadow:none!important;color:var(--ct-ink)!important}
html body.ct .card{box-shadow:none!important}
html body.ct .btn.pri,html body.ct button.pri,html body.ct .btn:not(.ghost):not(.sec){background:var(--ct-accent)!important;border:1px solid var(--ct-edge)!important;color:var(--ct-on-accent)!important}
html body.ct .btn:not(.ghost):not(.sec) *{color:var(--ct-on-accent)!important}
html body.ct .btn.ghost{background:#fff!important;border:1px solid var(--ct-gray)!important;color:var(--ct-ink)!important}
html body.ct a{color:var(--ct-accent-d)}
html body.ct .topcard,html body.ct .news,html body.ct .ms,html body.ct .pill,html body.ct .fchip,html body.ct .dnav a,html body.ct nav.bottom a,html body.ct .iconbtn,html body.ct .brand{color:var(--ct-ink)}

/* ---------- bottom nav ---------- */
html body.ct nav.bottom{background:#F4F6F8!important;border-top:1px solid var(--ct-gray)!important;box-shadow:none!important}
html body.ct nav.bottom a{color:#5A6E76!important}
html body.ct nav.bottom a.on{color:var(--ct-accent-d)!important}
html body.ct nav.bottom a.on svg{background:none!important;padding:0!important;width:22px!important;height:22px!important}
html body.ct nav.bottom a.on::before{background:var(--ct-accent)!important;left:30%!important;right:30%!important;height:2px!important;top:-7px!important}

/* ---------- footer ---------- */
html body.ct .foot{border-top:1px solid var(--ct-gray)}

/* ---------- get the app landing (the only page with the page-background X) ---------- */
.ct-landing{position:relative;margin:0 -18px;padding:0 18px}
.ct-hero{position:relative;z-index:1;text-align:center;padding:48px 0 28px;display:flex;flex-direction:column;align-items:center}
.ct-hero-mark{height:64px;width:auto;margin-bottom:18px}
.ct-hero-word{font:500 46px/1 "Inter",system-ui,sans-serif;letter-spacing:-.01em;color:var(--ct-ink)}
.ct-hero-lede{margin:20px auto 0;font-size:16px;line-height:1.55;color:var(--ct-soft);max-width:440px}
.ct-hero-ctas{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap;justify-content:center}
.ct-hero-ctas .btn{height:46px;padding:0 22px;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14.5px;text-decoration:none!important}
.ct-hero-note{margin-top:14px;font-size:12.5px;color:#6B7F86}
.ct-install{position:relative;z-index:1;display:grid;gap:12px;grid-template-columns:1fr;max-width:980px;margin:8px auto 28px}
.ct-step-card{background:#fff;border:1px solid var(--ct-gray);border-top:3px solid var(--ct-accent);padding:14px 16px}
.ct-step-card h3{margin:0 0 8px;font-size:15px}.ct-step-card ol{margin:0;padding-left:20px;font-size:14px;line-height:1.65;color:var(--ct-ink)}
.ct-desk-only{display:none}
.ct-install-note{position:relative;z-index:1;max-width:980px;margin:-14px auto 32px;text-align:center;font:400 13px/1.5 "Inter",system-ui,sans-serif;color:#6B7F86}
@media(min-width:900px){
  .ct-landing{margin:0 calc(50% - 50vw);padding:0 calc(50vw - 50%)}
  .ct-landing::before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;pointer-events:none;opacity:.75;background:url(/static/x-landing.svg) center top/1440px 1000px repeat;
    -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 110px);mask-image:linear-gradient(to bottom,transparent 0,#000 110px)}
  .ct-landing::after{content:"";position:absolute;left:50%;top:210px;width:900px;height:520px;transform:translate(-50%,-50%);pointer-events:none;
    background:radial-gradient(ellipse at center,#EEF1F3 0%,rgba(238,241,243,.85) 40%,rgba(238,241,243,0) 72%)}
  .ct-hero{padding:84px 0 40px}.ct-hero-mark{height:78px}.ct-hero-word{font-size:62px}
  .ct-install{grid-template-columns:repeat(3,1fr)}.ct-desk-only{display:block}
}

/* ---------- page heroes (Models, Portfolios, Insiders ...): calm seafoam panel, not a blue gradient ---------- */
html body.ct .hero{background:var(--ct-tile)!important;background-image:none!important;border:1px solid var(--ct-tile-edge)!important;border-left:4px solid var(--ct-accent)!important;box-shadow:none!important;color:var(--ct-ink)!important}
html body.ct .hero h1{color:var(--ct-ink)!important}html body.ct .hero p{color:var(--ct-soft)!important}
html body.ct .hero .hchip{background:#fff!important;border:1px solid var(--ct-tile-edge)!important;color:var(--ct-ink)!important}
html body.ct .hero .hchip.ok{background:#F3FAF9!important}html body.ct .hero .hchip.warn{background:#FFF6EE!important;border-color:#F0D2B8!important}
/* earnings pills: ticker in ink, not light seafoam */
html body.ct .pill b,html body.ct .pill .lg-row b{color:var(--ct-ink)!important}
html body.ct .pill span{color:var(--ct-soft)}
/* tiles: full model names on phone (no ellipsis) */
html body.ct .mstrip .ms .k{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:12px;line-height:1.25}
html body.ct .mstrip .ms .s{white-space:nowrap;font-size:10.5px;overflow:visible!important;text-overflow:clip!important}
html body.ct .mstrip .ms.mdl{padding:9px 10px!important}
@media(min-width:700px){html body.ct .mstrip{grid-auto-flow:column;grid-auto-columns:1fr;grid-template-columns:none!important}}
.ct-landing{margin:0;padding:0}
@media(min-width:900px){.ct-landing{margin:0 calc(50% - 50vw);padding:0 calc(50vw - 50%);overflow:visible}}
/* model comparison rows: room for "Momentum Top 15" */
html body.ct .cmprow{grid-template-columns:132px 1fr 58px}
@media(min-width:700px){html body.ct .cmprow{grid-template-columns:160px 1fr 62px}}
@media(max-width:380px){html body.ct .cmprow{grid-template-columns:118px 1fr 54px}}
html body.ct .dnav2 a{color:var(--ct-ink)!important}html body.ct .dnav2 a svg{color:var(--ct-accent-d)}
/* ---------- option 7 (Oct 19): cool-gray page, white cards lift with a soft shadow; SPY tiles white ---------- */
html body.ct .topcard,html body.ct .ms,html body.ct .pill{box-shadow:0 1px 2px rgba(20,52,64,.06)!important}
html body.ct .ms:not(.mdl){background:#FFFFFF!important}

/* light (round 4): remaining seafoam bits from style.css move to cyan */
html[data-theme=light] body.ct .seg input:checked+span{background:var(--ct-accent)!important;border-color:var(--ct-edge)!important;color:var(--ct-on-accent)!important}
html[data-theme=light] body.ct .seg input:focus-visible+span,html[data-theme=light] body.ct :focus-visible{outline:2px solid var(--ct-accent)!important;outline-offset:2px}
html[data-theme=light] body.ct{accent-color:var(--ct-accent-d)}
html[data-theme=light] body.ct .cmpbar i{background:linear-gradient(90deg,#1A5A66,#1E8C90)!important}
html[data-theme=light] body.ct .sw:checked{background:#1E8C90}
html[data-theme=light] body.ct .tour-ring{box-shadow:0 0 0 3px #3EC8C9,0 0 0 9999px rgba(8,16,31,.35)}
html[data-theme=light] body.ct .tour-card{border-top-color:#3EC8C9}html[data-theme=light] body.ct .tour-step{color:#207374}html[data-theme=light] body.ct .tour-dots i.on{background:#1E8C90}
html[data-theme=light] body.ct .tabs a.on{background:#207374;border-color:#207374;color:#fff}
html[data-theme=light] body.ct .dnav2 a svg{color:#207374}
/* light: eyebrows and portfolio heroes (the old --hero gradient is gone, so the white-on-gradient text needs ink) */
html[data-theme=light] body.ct .eyebrow{color:#207374!important;background:rgba(62,200,201,.14)!important}
html[data-theme=light] body.ct .chip.flagchip{background:#207374!important;color:#fff!important}
html[data-theme=light] body.ct .chip.mdl{background:var(--ct-tile)!important;color:#207374!important}
html[data-theme=light] body.ct .phero{background:var(--ct-tile)!important;background-image:none!important;border:1px solid var(--ct-tile-edge)!important;border-left:4px solid var(--ct-accent)!important;box-shadow:none!important;color:var(--ct-ink)!important;border-radius:4px!important;overflow:hidden}
html[data-theme=light] body.ct .phero h1,html[data-theme=light] body.ct .phero .tiles-label{color:var(--ct-ink)!important}
html[data-theme=light] body.ct .phero .sub{color:var(--ct-soft)!important;opacity:1}
html[data-theme=light] body.ct .phero .chip{background:#fff!important;border:1px solid var(--ct-tile-edge)!important;color:var(--ct-ink)!important}
html[data-theme=light] body.ct .phero .rt{background:#fff!important;border:1px solid var(--ct-tile-edge)!important}
html[data-theme=light] body.ct .phero .rt .k,html[data-theme=light] body.ct .phero .rt .s{color:var(--ct-soft)!important}
html[data-theme=light] body.ct .phero .rt .v{color:var(--ct-ink)!important}
html[data-theme=light] body.ct .phero .rt.up .v{color:#15803D!important}html[data-theme=light] body.ct .phero .rt.down .v{color:#C2410C!important}

/* ======================================================================================================
   THEMES (Oct 19): DARK "B" is the default; LIGHT (option 7 above) when the visitor picks it.
   html[data-theme] is set before paint by the <head> script (localStorage 'ct-theme'); app.js applyMode() flips it.
   Dark B: page #121314 · cards #1A1C1E · newest #1A2022 · raised #24272A · text #F2F4F5 · secondary #9AA3A8
           LINES in logo cyan: newest card #3EC8C9 (1px + 3px left rule), everything else dim cyan #33383C hairlines
           cyan fills carry black #0B0C0D text (9.61:1) · gains #3DD68C · losses #FF8A65 · square corners
   ====================================================================================================== */
/* mark swap: teal mark A in light, lightened mark B1 (#3EC8C9 / #E6F2F2 / #2A8E93) in dark */
.ct-mark.ct-mk-d{display:none!important}
html[data-theme=dark] .ct-mark.ct-mk-l{display:none!important}
html[data-theme=dark] .ct-mark.ct-mk-d{display:block!important}
html[data-theme=dark] .mk-b{fill:#E6F2F2}html[data-theme=dark] .mk-c{fill:#2A8E93}

/* Light / Dark switch (drawer + Settings) */
.ct-themesw{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 14px 6px;padding:10px 12px;border:1px solid var(--ct-gray);background:#fff}
.ct-themesw-l{font-size:13px;font-weight:600;color:var(--ct-ink)}
.ct-seg{display:inline-flex;border:1px solid var(--ct-edge);overflow:hidden}
.ct-seg button{appearance:none;-webkit-appearance:none;border:0;margin:0;min-width:64px;height:34px;padding:0 12px;background:transparent;color:var(--ct-ink);font:600 13.5px/1 "Inter",system-ui,sans-serif;cursor:pointer;border-radius:0}
.ct-seg button+button{border-left:1px solid var(--ct-edge)}
html[data-theme=light] .ct-seg [data-ct-theme-set=light]{background:var(--ct-accent);color:var(--ct-on-accent)}
html[data-theme=dark] .ct-seg [data-ct-theme-set=dark]{background:#3EC8C9;color:#0B0C0D}
.ct-seg button:focus-visible{outline:2px solid #3EC8C9;outline-offset:2px}
.ct-themesw.in-page{margin:0;border:0;padding:4px 0;background:transparent}

/* ---------- dark tokens ---------- */
html[data-theme=dark]{--ct-header:#121314;--ct-page:#121314;--ct-ink:#F2F4F5;--ct-soft:#9AA3A8;--ct-gray:#33383C;--ct-accent:#3EC8C9;--ct-accent-d:#3EC8C9;
 --ct-new:#1A2022;--ct-new-edge:#3EC8C9;--ct-line:#3EC8C9;--ct-card:#1A1C1E;--ct-raise:#24272A;--ct-hair:#2E3236;--ct-dim:#33383C;--ct-on-cyan:#0B0C0D;
 --bg:#121314;--card:#1A1C1E;--ink:#F2F4F5;--muted:#9AA3A8;--line:#2E3236;--soft:#24272A;--chip:#24272A;
 --accent:#3EC8C9;--royal:#3EC8C9;--navy:#F2F4F5;--indigo:#3EC8C9;--azure:#3EC8C9;--sky:#3EC8C9;--pale:#33383C;--sec:#3EC8C9;--h2:#F2F4F5;
 --c-news:#3EC8C9;--c-models:#3EC8C9;--c-port:#3EC8C9;--c-ins:#3EC8C9;--c-earn:#3EC8C9;--c-res:#3EC8C9;--c-cat:#3EC8C9;--c-stock:#3EC8C9;--c-copy:#3EC8C9;--c-watch:#3EC8C9;
 --up:#3DD68C;--down:#FF8A65;--up-bg:rgba(61,214,140,.12);--down-bg:rgba(255,138,101,.12);color-scheme:dark;background:#121314}
html[data-theme=dark] body.ct{background:#121314!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct main.wrap,html[data-theme=dark] body.ct .chipbar{background:#121314!important}

/* header: all dark + 1px cyan line */
html[data-theme=dark] body.ct header.top{background:#121314!important}
html[data-theme=dark] body.ct header.top::after{height:1px!important;background:#3EC8C9!important;box-shadow:none!important}
html[data-theme=dark] body.ct header.top .iconbtn{background:transparent!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct header.top .iconbtn:hover{background:#1A1C1E!important}
html[data-theme=dark] .ct-brand,html[data-theme=dark] .ct-word,html[data-theme=dark] .ct-dword,html[data-theme=dark] .ct-dbrand,html[data-theme=dark] .ct-fbrand{color:#F2F4F5!important}
html[data-theme=dark] body.ct .dnav a{color:#D5DADC!important}
html[data-theme=dark] body.ct .dnav a.on{color:#F2F4F5!important;background:transparent!important;box-shadow:inset 0 -2px 0 #3EC8C9!important}
html[data-theme=dark] body.ct .dnav a:hover{background:#1A1C1E!important}
html[data-theme=dark] body.ct header.top .search input{background:#1A1C1E!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct header.top .search input::placeholder{color:#7E878C}
html[data-theme=dark] .ct-getapp-top{background:#3EC8C9!important;color:#0B0C0D!important}
html[data-theme=dark] body.ct .sugg{background:#1A1C1E!important;border:1px solid #33383C!important;box-shadow:0 8px 24px rgba(0,0,0,.5)!important}
html[data-theme=dark] body.ct .sugg a{color:#F2F4F5!important;border-color:#2E3236!important}html[data-theme=dark] body.ct .sugg a:hover{background:#24272A!important}
html[data-theme=dark] body.ct .sugg span,html[data-theme=dark] body.ct .sugg em{color:#9AA3A8!important}html[data-theme=dark] body.ct .sugg b{color:#F2F4F5!important}

/* drawer */
html[data-theme=dark] body.ct aside.drawer{background:#121314!important;border-right:1px solid #33383C}
html[data-theme=dark] body.ct aside.drawer .dhead{background:#121314!important;border-bottom:1px solid #3EC8C9!important}
html[data-theme=dark] body.ct aside.drawer .iconbtn{background:transparent!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .dgt{color:#9AA3A8!important}
html[data-theme=dark] body.ct .dnav2 a{color:#F2F4F5!important}html[data-theme=dark] body.ct .dnav2 a svg{color:#3EC8C9!important}
html[data-theme=dark] body.ct .dnav2 a:hover{background:#1A1C1E!important}
html[data-theme=dark] body.ct .dnav2 a.on{background:#1A1C1E!important;color:#F2F4F5!important;box-shadow:inset 2px 0 0 #3EC8C9!important}
html[data-theme=dark] .ct-getapp-drawer{background:#1A1C1E!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] .ct-getapp-drawer img{border-color:#33383C!important}html[data-theme=dark] .ct-getapp-drawer small{color:#9AA3A8!important}
html[data-theme=dark] .ct-themesw:not(.in-page){background:#1A1C1E;border-color:#33383C}
html[data-theme=dark] .ct-seg{border-color:#3EC8C9}html[data-theme=dark] .ct-seg button{color:#D5DADC}html[data-theme=dark] .ct-seg button+button{border-left-color:#3EC8C9}
html[data-theme=dark] body.ct .dov{background:rgba(0,0,0,.6)!important}

/* news chips */
html[data-theme=dark] body.ct .fchip{background:transparent!important;border:1px solid #33383C!important;color:#D5DADC!important}
html[data-theme=dark] body.ct .fchip.on{background:#3EC8C9!important;border-color:#3EC8C9!important;color:#0B0C0D!important}
html[data-theme=dark] body.ct .chipsep{background:#33383C!important}

/* news cards: newest = bright cyan edge + 3px left rule + dim cyan X; older = dim cyan hairline */
html[data-theme=dark] body.ct .topcard{background:#1A1C1E!important;border:1px solid #33383C!important;box-shadow:none!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .topcard .th{color:#F2F4F5!important}
html[data-theme=dark] body.ct .topcard .tmeta span,html[data-theme=dark] body.ct .topcard .ts{color:#9AA3A8!important}
html[data-theme=dark] body.ct .topcard.lead{background:#1A2022!important;border:1px solid #3EC8C9!important;border-left:3px solid #3EC8C9!important}
html[data-theme=dark] body.ct .topcard.lead::before{background-image:url(/static/x-card-dark.svg)!important}
@media(min-width:700px){html[data-theme=dark] body.ct .topcard.lead::before{background-image:url(/static/x-card-desk-dark.svg)!important}}
html[data-theme=dark] body.ct .topcard .tkp{background:#24272A!important;color:#F2F4F5!important;border:1px solid #2E3236!important}
html[data-theme=dark] body.ct .topcard.lead .tkp{background:rgba(36,39,42,.85)!important;border-color:#33383C!important}
html[data-theme=dark] body.ct .cat{background:transparent!important;color:#C9D0D3!important;border:1px solid #2E3236!important}
html[data-theme=dark] body.ct .topcard.lead .cat{background:transparent!important;border-color:#33383C!important}
html[data-theme=dark] body.ct .news,html[data-theme=dark] body.ct .list,html[data-theme=dark] body.ct .list.acc-news{background:#1A1C1E!important;border-color:#33383C!important}
html[data-theme=dark] body.ct .list>*,html[data-theme=dark] body.ct .news>*{border-color:#2E3236!important}
html[data-theme=dark] body.ct .lgo:not(.mono):not(.cat-ic){background:#F2F4F5!important}

/* SPY + model tiles, stats */
html[data-theme=dark] body.ct .ms,html[data-theme=dark] body.ct .ms:not(.mdl){background:#1A1C1E!important;border:1px solid #33383C!important;box-shadow:none!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .ms.mdl{background:#1A1C1E!important;border:1px solid #33383C!important;border-top:2px solid #3EC8C9!important}
html[data-theme=dark] body.ct .ms .k,html[data-theme=dark] body.ct .ms .s{color:#9AA3A8!important}html[data-theme=dark] body.ct .ms .v{color:#F2F4F5!important}
html[data-theme=dark] body.ct .up,html[data-theme=dark] body.ct .ms .up,html[data-theme=dark] body.ct .ms .v.up,html[data-theme=dark] body.ct .ms .chg.up{color:#3DD68C!important}
html[data-theme=dark] body.ct .down,html[data-theme=dark] body.ct .ms .down,html[data-theme=dark] body.ct .ms .v.down,html[data-theme=dark] body.ct .ms .chg.down{color:#FF8A65!important}
html[data-theme=dark] body.ct .stat{background:#24272A!important;background-image:none!important;border:1px solid #2E3236!important;box-shadow:none!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .stat .k{color:#9AA3A8!important}html[data-theme=dark] body.ct .stat .v{color:#F2F4F5!important}

/* headings, pills, cards, chips, buttons, links */
html[data-theme=dark] body.ct h1,html[data-theme=dark] body.ct h2,html[data-theme=dark] body.ct h3,html[data-theme=dark] body.ct h4{color:#F2F4F5}
html[data-theme=dark] body.ct h2::before{background:#3EC8C9!important;width:2px!important}
html[data-theme=dark] body.ct .pill{background:#1A1C1E!important;border:1px solid #33383C!important;border-top:2px solid #4A5157!important;box-shadow:none!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .pill b,html[data-theme=dark] body.ct .pill .lg-row b{color:#F2F4F5!important}html[data-theme=dark] body.ct .pill span{color:#9AA3A8!important}
html[data-theme=dark] body.ct .card{background:#1A1C1E!important;background-image:none!important;border:1px solid #33383C!important;box-shadow:none!important;color:#F2F4F5}
html[data-theme=dark] body.ct .chip{background:transparent!important;border:1px solid #33383C!important;color:#C9D0D3!important}
html[data-theme=dark] body.ct .chip.live{border-color:#3EC8C9!important;color:#3EC8C9!important}
html[data-theme=dark] body.ct .chip.flagchip{background:#3EC8C9!important;border-color:#3EC8C9!important;color:#0B0C0D!important}
html[data-theme=dark] body.ct .btn.pri,html[data-theme=dark] body.ct button.pri,html[data-theme=dark] body.ct .btn:not(.ghost):not(.sec){background:#3EC8C9!important;border:1px solid #3EC8C9!important;color:#0B0C0D!important}
html[data-theme=dark] body.ct .btn:not(.ghost):not(.sec) *{color:#0B0C0D!important}
html[data-theme=dark] body.ct .btn.ghost,html[data-theme=dark] body.ct .btn.sec{background:transparent!important;border:1px solid #3EC8C9!important;color:#3EC8C9!important}
html[data-theme=dark] body.ct a{color:#3EC8C9}
html[data-theme=dark] body.ct .topcard,html[data-theme=dark] body.ct .news,html[data-theme=dark] body.ct .ms,html[data-theme=dark] body.ct .pill,html[data-theme=dark] body.ct .brand,html[data-theme=dark] body.ct a.row,html[data-theme=dark] body.ct .cmprow{color:#F2F4F5}
html[data-theme=dark] body.ct .muted,html[data-theme=dark] body.ct .small.muted{color:#9AA3A8!important}
html[data-theme=dark] body.ct .badge{background:#3EC8C9!important;color:#0B0C0D!important}

/* page heroes (Models, Portfolios, Insiders ...) */
html[data-theme=dark] body.ct .hero{background:#1A1C1E!important;background-image:none!important;border:1px solid #33383C!important;border-left:2px solid #4A5157!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .hero h1{color:#F2F4F5!important}html[data-theme=dark] body.ct .hero p{color:#9AA3A8!important}
html[data-theme=dark] body.ct .hero .hchip,html[data-theme=dark] body.ct .hero .hchip.ok,html[data-theme=dark] body.ct .hero .hchip.warn{background:transparent!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .cmprow.spy{color:#9AA3A8}
html[data-theme=dark] body.ct .cmpbar{background:#24272A!important}html[data-theme=dark] body.ct .cmpbar i{background:linear-gradient(90deg,#1E7F80,#3EC8C9)!important}
html[data-theme=dark] body.ct .cmprow.spy .cmpbar i{background:#6B747A!important}

/* forms */
html[data-theme=dark] body.ct input:not([type=checkbox]):not([type=radio]):not([type=range]),html[data-theme=dark] body.ct select,html[data-theme=dark] body.ct textarea{background:#1A1C1E!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct input::placeholder,html[data-theme=dark] body.ct textarea::placeholder{color:#7E878C!important}
html[data-theme=dark] body.ct input:focus,html[data-theme=dark] body.ct select:focus,html[data-theme=dark] body.ct textarea:focus{border-color:#3EC8C9!important;outline:none;box-shadow:0 0 0 1px #3EC8C9!important}
html[data-theme=dark] body.ct label{color:#D5DADC}
html[data-theme=dark] body.ct{accent-color:#3EC8C9}

/* tables */
html[data-theme=dark] body.ct table{color:#F2F4F5}
html[data-theme=dark] body.ct th{color:#9AA3A8!important;background:transparent!important;border-color:#2E3236!important}
html[data-theme=dark] body.ct td{border-color:#2E3236!important}
html[data-theme=dark] body.ct tr:hover td{background:rgba(62,200,201,.05)}

/* charts (server SVG from charts.py): readable axis/grid, the navy series turns off-white */
html[data-theme=dark] body.ct .chart .grid{stroke:#2E3236!important}
html[data-theme=dark] body.ct .chart .axis,html[data-theme=dark] body.ct .chart text{fill:#9AA3A8!important}
html[data-theme=dark] body.ct .chart [stroke="#143440"]{stroke:#F2F4F5!important}
html[data-theme=dark] body.ct .chart [stroke="#2E7F88"]{stroke:#3EC8C9!important}
html[data-theme=dark] body.ct .chart [fill="#2E7F88"]{fill:#3EC8C9!important}
html[data-theme=dark] body.ct .chart [fill="#D3E3E4"]{fill:#3A4246!important}
html[data-theme=dark] body.ct .legend{color:#9AA3A8}
html[data-theme=dark] body.ct .legend i[style*="#143440"]{background:#F2F4F5!important}
html[data-theme=dark] body.ct .legend i[style*="#2E7F88"]{background:#3EC8C9!important}
html[data-theme=dark] body.ct .legend i[style*="#D3E3E4"]{background:#3A4246!important}

/* bottom nav, footer, banners */
html[data-theme=dark] body.ct nav.bottom{background:#121314!important;border-top:1px solid #33383C!important}
html[data-theme=dark] body.ct nav.bottom a{color:#7E878C!important}html[data-theme=dark] body.ct nav.bottom a.on{color:#3EC8C9!important}
html[data-theme=dark] body.ct nav.bottom a.on::before{background:#3EC8C9!important;height:1px!important}
html[data-theme=dark] body.ct .foot{border-top:1px solid #33383C!important;color:#9AA3A8}
html[data-theme=dark] body.ct .flash{background:#1A2022!important;border:1px solid #3EC8C9!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .dhb{background:#2A1E14!important;border:1px solid #6B4A2A!important;color:#F2D9C2!important}

/* get the app landing */
html[data-theme=dark] .ct-hero-word{color:#F2F4F5}html[data-theme=dark] .ct-hero-lede{color:#9AA3A8}
html[data-theme=dark] .ct-hero-note,html[data-theme=dark] .ct-install-note{color:#7E878C}
html[data-theme=dark] .ct-step-card{background:#1A1C1E;border:1px solid #33383C;border-top:2px solid #4A5157;color:#F2F4F5}
html[data-theme=dark] .ct-step-card ol{color:#D5DADC}
@media(min-width:900px){
 html[data-theme=dark] .ct-landing::before{background-image:url(/static/x-landing-dark.svg);opacity:.6}
 html[data-theme=dark] .ct-landing::after{background:radial-gradient(ellipse at center,#121314 0%,rgba(18,19,20,.85) 40%,rgba(18,19,20,0) 72%)}
}

/* dark: model "why it's in" boxes, buy/hold labels, sector chips, tabs, grades */
html[data-theme=dark]{--ix-a:#3EC8C9;--ix-abg:rgba(62,200,201,.08);--ix-b:#9FDCDC;--ix-t:#3EC8C9;--ix-tbg:rgba(62,200,201,.10);--ix-w:#FFB59A;--ix-wbg:rgba(255,138,101,.12)}
html[data-theme=dark] body.ct .whyin{background:#1A2022!important;border-left:2px solid #3EC8C9!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .whyin p,html[data-theme=dark] body.ct .whyin b{color:#F2F4F5!important}html[data-theme=dark] body.ct .whyin .wk{color:#9AA3A8!important}
html[data-theme=dark] body.ct .whyin .wr{background:#24272A!important;color:#9FDCDC!important}
html[data-theme=dark] body.ct .blab{background:#24272A!important;color:#C9D0D3!important}
html[data-theme=dark] body.ct .blab.enter{background:rgba(62,200,201,.12)!important;color:#3EC8C9!important}
html[data-theme=dark] body.ct .blab.hold{background:rgba(62,200,201,.08)!important;color:#9FDCDC!important}
html[data-theme=dark] body.ct .blab.risk{background:rgba(255,138,101,.12)!important;color:#FFB59A!important}
html[data-theme=dark] body.ct .sx{background:transparent!important;border:1px solid #2E3236;color:#C9D0D3!important}
html[data-theme=dark] body.ct .tabs a{background:transparent!important;border:1px solid #33383C!important;color:#D5DADC!important}
html[data-theme=dark] body.ct .tabs a.on{background:#3EC8C9!important;border-color:#3EC8C9!important;color:#0B0C0D!important}
html[data-theme=dark] body.ct .seg span{background:#1A1C1E!important;border-color:#33383C!important;color:#D5DADC!important}
html[data-theme=dark] body.ct .seg input:checked+span{background:#3EC8C9!important;border-color:#3EC8C9!important;color:#0B0C0D!important}
html[data-theme=dark] body.ct .gN{background:#3A4246!important}
html[data-theme=dark] body.ct .rd-imp{color:#3EC8C9!important}
html[data-theme=dark] body.ct .rangebar .rg{background:rgba(62,200,201,.30)}html[data-theme=dark] body.ct .rangebar .pm{background:#F2F4F5}html[data-theme=dark] body.ct .rangebar .tm{background:#3EC8C9}
/* dark: switches, tour, push prompt */
html[data-theme=dark] body.ct .sw{background:#2E3236}html[data-theme=dark] body.ct .sw:checked{background:#3EC8C9}
html[data-theme=dark] body.ct .sw::after{background:#F2F4F5}html[data-theme=dark] body.ct .sw:checked::after{background:#0B0C0D}
html[data-theme=dark] body.ct .tour{background:rgba(0,0,0,.6)}
html[data-theme=dark] body.ct .tour-ring{box-shadow:0 0 0 2px #3EC8C9,0 0 0 9999px rgba(0,0,0,.45)}
html[data-theme=dark] body.ct .tour-card{background:#1A1C1E;color:#F2F4F5;border:1px solid #33383C;border-top:2px solid #3EC8C9;box-shadow:0 14px 40px rgba(0,0,0,.6)}
html[data-theme=dark] body.ct .tour-step{color:#3EC8C9}html[data-theme=dark] body.ct .tour-b{color:#9AA3A8}
html[data-theme=dark] body.ct .tour-dots i{background:#2E3236}html[data-theme=dark] body.ct .tour-dots i.on{background:#3EC8C9}
html[data-theme=dark] body.ct .tour-nav .iconbtn{background:transparent!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=dark] body.ct .pushprompt{background:#1A1C1E;border:1px solid #33383C;border-left:2px solid #3EC8C9;box-shadow:0 10px 30px rgba(0,0,0,.5)}
html[data-theme=dark] body.ct .pp-ic{background:#3EC8C9;color:#0B0C0D}
html[data-theme=dark] body.ct .lgo.mono{color:#fff!important}
html[data-theme=light] body.ct .gN{background:#6B7580}

/* ---------- spacing (Oct 19, round 5): 12px gaps between cards and tiles everywhere, ~18px above section heads. Both themes. ----------
   before: grids 8px (news cards, SPY/model tiles, earnings pills, stats), 6px (return tiles), stacked cards 16px, 24px above h2 */
html body.ct :is(.tops,.mstrip,.strip,.grid2,.grid3,.gtiles,.qgrid,.rtiles,.scen,.rcap,.tgrid,.hsum,.ct-install,.bubsum){gap:12px!important}
html body.ct main .tops{margin-bottom:12px}html body.ct main .bubsum{margin-bottom:12px}
html body.ct main :is(.card,.list,.phero,.shero){margin-top:0;margin-bottom:12px}
html body.ct main .hero{margin-bottom:12px}
html body.ct main h2{margin-top:18px}
html body.ct main h2+:is(.card,.list,.tops,.mstrip,.strip){margin-top:0}
html body.ct .whyin{margin:12px 0 0}html body.ct .whyin+.whyin{margin-top:12px}

/* ====================== refine (Oct 19, round 6) ====================== */
/* Newsreader 600, self-hosted, only for the newest news card headline (both themes) */
@font-face{font-family:"Newsreader";font-style:normal;font-weight:600;font-display:swap;src:url(/static/fonts/newsreader-600-latin.woff2) format("woff2")}
html body.ct .topcard.lead .th{font-family:"Newsreader",Georgia,"Times New Roman",serif!important;font-weight:600!important;font-size:24px!important;line-height:1.18!important;letter-spacing:-.005em}
@media(min-width:700px){html body.ct .topcard.lead .th{font-size:26px!important}}

/* tabular numbers on prices, percentages, returns, tiles, tables and chart labels (Inter has tnum) */
html body.ct :is(.v,.chg,.up,.down,.ms,.rt,.stat,.pill,table,th,td,.chart,.chart text,.cmprow,.rd-v,.legend,.grade,.k,.s,.px,.price,.pct,.ret,.rtiles,.gtiles,.qgrid,.scen,.hsum,.tkp,.badge,.n){font-variant-numeric:tabular-nums}

/* letter-only company logos: light = ink letter on a pale cyan tile (12.9:1); dark keeps the brand-color tile with a white letter */
html[data-theme=light] body.ct .lgo.mono{background:#E6F6F6!important;color:#143440!important;box-shadow:inset 0 0 0 1px #B8E6E6;font-weight:700}

/* dark active chip: outlined, cyan text on a faint cyan tint (primary buttons stay filled) */
html[data-theme=dark] body.ct .fchip.on{background:rgba(62,200,201,.12)!important;border:1px solid #3EC8C9!important;color:#3EC8C9!important}

/* translucent blurred sticky header (Point72-style); solid fallback where backdrop-filter is unsupported */
@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
 html[data-theme=light] body.ct header.top{background:rgba(217,221,224,.82)!important;-webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%)}
 html[data-theme=dark] body.ct header.top{background:rgba(18,19,20,.82)!important;-webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%)}
}
html body.ct.dopen header.top{-webkit-backdrop-filter:none;backdrop-filter:none}

/* company logo tiles (kind from logos.logo_kind): neutral, consistent, no filters, readable in both themes.
   Selectors carry :not(.mono):not(.cat-ic) + the theme attribute so they outrank the older dark-mode plate rule. */
html[data-theme] body.ct .lgo:not(.mono):not(.cat-ic){box-shadow:none!important;filter:none!important;mix-blend-mode:normal!important}
html[data-theme] body.ct .lgo:not(.mono):not(.cat-ic) img{filter:none!important;mix-blend-mode:normal!important}
html[data-theme=light] body.ct .lgo.lgo-plate:not(.mono):not(.cat-ic){background:#F4F6F8!important;border:1px solid #DDE2E6!important}
html[data-theme=dark] body.ct .lgo.lgo-plate:not(.mono):not(.cat-ic){background:#F2F4F5!important;border:1px solid #F2F4F5!important}
html[data-theme=light] body.ct .lgo.lgo-white:not(.mono):not(.cat-ic){background:#FFFFFF!important;border:1px solid #DDE2E6!important}
html[data-theme=dark] body.ct .lgo.lgo-white:not(.mono):not(.cat-ic){background:#FFFFFF!important;border:1px solid #FFFFFF!important}
html[data-theme=light] body.ct .lgo.lgo-dark:not(.mono):not(.cat-ic){background:#1F2A30!important;border:1px solid #1F2A30!important}
html[data-theme=dark] body.ct .lgo.lgo-dark:not(.mono):not(.cat-ic){background:#1F2A30!important;border:1px solid #3A4248!important}
html[data-theme] body.ct .lgo.lgo-fill:not(.mono):not(.cat-ic){background:var(--lg-bg,#FFFFFF)!important;border:0!important}
html[data-theme=light] body.ct .lgo.lgo-fill:not(.mono):not(.cat-ic){box-shadow:0 0 0 1px rgba(20,52,64,.10)!important}
html[data-theme] body.ct .lgo.lgo-fill:not(.mono):not(.cat-ic) img{width:100%!important;height:100%!important;object-fit:cover}
html[data-theme=dark] body.ct .lgo.lgo-fill:not(.mono):not(.cat-ic){box-shadow:0 0 0 1px rgba(255,255,255,.14)!important}

/* get-app hero on phones: larger mark + wordmark (desktop sizes unchanged) */
@media(max-width:699px){html body.ct .ct-hero{padding:40px 0 26px}html body.ct .ct-hero-mark{height:84px;margin-bottom:22px}html body.ct .ct-hero-word{font-size:58px}}

/* pull-to-refresh (touch devices; installed app gets it everywhere, browsers keep their own) */
.ct-ptr{position:fixed;left:50%;top:0;z-index:60;width:36px;height:36px;margin-left:-18px;border-radius:50%!important;display:flex;align-items:center;justify-content:center;
  background:#FFFFFF;border:1px solid #DDE2E6;box-shadow:0 2px 8px rgba(20,52,64,.14);transform:translateY(-48px);opacity:0;pointer-events:none;transition:opacity .15s}
.ct-ptr svg{width:20px;height:20px;display:block}
.ct-ptr .ct-ptr-arc{stroke:#3EC8C9;stroke-width:2.6;fill:none;stroke-linecap:round}
.ct-ptr.ready .ct-ptr-arc{stroke:#207374}
.ct-ptr.spin svg{animation:ctptr .7s linear infinite}
html[data-theme=dark] .ct-ptr{background:#1A1C1E;border-color:#33383C;box-shadow:0 2px 10px rgba(0,0,0,.5)}
html[data-theme=dark] .ct-ptr.ready .ct-ptr-arc{stroke:#7FE0E1}
@keyframes ctptr{to{transform:rotate(360deg)}}
html body.ct .ct-ptr{border-radius:50%!important}
html.ct-standalone,html.ct-standalone body{overscroll-behavior-y:contain}

/* return-period chips + values (portfolios, models) */
html body.ct .ct-pbar{display:flex;align-items:center;gap:10px;margin:12px 0 4px;flex-wrap:wrap}
html body.ct .ct-pbar-l{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-soft,#5B6B72)}
html body.ct .ct-pchips{display:flex;gap:4px;flex-wrap:nowrap;max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
html body.ct .ct-pchips::-webkit-scrollbar{display:none}
html body.ct .ct-pchip{flex:0 0 auto;height:30px;min-width:36px;padding:0 7px;border-radius:4px!important;border:1px solid #DDE2E6;background:#FFFFFF;color:#143440;
  font:600 12px/28px "Inter",system-ui,sans-serif;font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent}
html body.ct .ct-pchip.on{background:#3EC8C9;color:#143440;border-color:#1A5A66}
html body.ct .ct-pchip:focus-visible{outline:2px solid #3EC8C9;outline-offset:2px}
html[data-theme=dark] body.ct .ct-pchip{background:#1A1C1E;border-color:#33383C;color:#C9D0D3}
html[data-theme=dark] body.ct .ct-pchip.on{background:rgba(62,200,201,.12);border-color:#3EC8C9;color:#3EC8C9}
html body.ct .ct-pv{font-variant-numeric:tabular-nums}
html body.ct .ct-psrc{color:inherit;opacity:.85}
html body.ct .ct-psel{display:flex;align-items:baseline;gap:12px;margin:10px 0 8px;flex-wrap:wrap}
html body.ct .ct-psel .ct-big{font-size:30px;font-weight:700;letter-spacing:-.01em}
html body.ct .ct-psel-s{font-size:13px;color:var(--ct-soft,#5B6B72);font-variant-numeric:tabular-nums}
html body.ct .ct-pstrip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
@media(min-width:700px){html body.ct .ct-pstrip{grid-template-columns:repeat(7,minmax(0,1fr))}}
html body.ct .ct-pcell{padding:6px 4px;border:1px solid #DDE2E6;border-radius:4px!important;background:#FFFFFF;text-align:center;cursor:pointer;min-width:0}
html body.ct .ct-pcell .k{font-size:11px;font-weight:600;color:#5B6B72}
html body.ct .ct-pcell .v{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
html body.ct .ct-pcell .s{font-size:9.5px;color:#7A8A90;margin-top:1px}
html body.ct .ct-pcell.on{border-color:#3EC8C9;box-shadow:inset 0 0 0 1px #3EC8C9}
html[data-theme=dark] body.ct .ct-pcell{background:#1A1C1E;border-color:#33383C}
html[data-theme=dark] body.ct .ct-pcell .k,html[data-theme=dark] body.ct .ct-pcell .s{color:#9AA3A8}
html[data-theme=light] body.ct .up.ct-pv,html[data-theme=light] body.ct .ct-pcell .v.up{color:#1E8E57}
html[data-theme=light] body.ct .down.ct-pv,html[data-theme=light] body.ct .ct-pcell .v.down{color:#C2462A}

/* owner: soft-delete a portfolio */
html body.ct .ct-owner-del{display:flex;align-items:center;gap:10px;margin:10px 0 4px}
html[data-theme] body.ct .btn.ct-danger-ghost,html[data-theme] body.ct .ct-danger-ghost{background:transparent!important;color:#B3261E!important;border:1px solid #E3B6B1!important;height:36px;padding:0 14px;font-weight:600}
html[data-theme] body.ct .btn.ct-danger,html[data-theme] body.ct .ct-danger{background:#B3261E!important;color:#fff!important;border:1px solid #8C1D17!important;font-weight:600}
html[data-theme] body.ct .btn.ct-danger:disabled{opacity:.45;cursor:not-allowed}
html body.ct dialog.ct-dlg{border:1px solid #DDE2E6;border-radius:4px!important;padding:18px;max-width:min(92vw,420px);width:100%;background:#fff;color:#143440}
html body.ct dialog.ct-dlg::backdrop{background:rgba(10,20,25,.45)}
html body.ct dialog.ct-dlg h3{margin:0 0 8px;font-size:18px}
html body.ct dialog.ct-dlg input[name=confirm]{width:100%;height:40px;margin:6px 0 12px;padding:0 10px;border:1px solid #C9D0D3;border-radius:4px!important;font:inherit;box-sizing:border-box}
html body.ct .ct-dlg-a{display:flex;justify-content:flex-end;gap:8px}
html[data-theme=dark] body.ct dialog.ct-dlg{background:#1A1C1E;color:#F2F4F5;border-color:#33383C}
html[data-theme=dark] body.ct dialog.ct-dlg input[name=confirm]{background:#121314;color:#F2F4F5;border-color:#33383C}
html[data-theme=dark] body.ct .btn.ct-danger-ghost{color:#FF8A65!important;border-color:#5A3A33!important}

/* header L1: lockup on the left, 10px right of the menu button (approved Oct 19) */
@media(max-width:899px){
  html body.ct header.top .toprow{gap:10px}
  .ct-brand{position:static!important;transform:none!important;flex:0 0 auto;margin:0 auto 0 0!important}
  .ct-word{padding-left:calc(1.4em * 170 / 133.6 + .36em);transform:translateY(-1.5px)!important}
  .ct-word .ct-mark{left:0;right:auto;margin:0!important;transform:translateY(calc(-50% + 1.5px))!important}
}
@media(min-width:900px){
  html body.ct header.top .ct-brand{margin-left:2px!important}
  .ct-word{transform:translateY(-1.5px)!important}
  .ct-word .ct-mark{transform:translateY(calc(-50% + 1.5px))!important}
}

/* H1b (approved Oct 19): light theme keeps light pages/cards but uses the dark header + dark bottom nav */
html[data-theme=light] body.ct header.top{background:rgba(18,19,20,.94)!important;-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px);border-bottom-color:transparent!important}
html[data-theme=light] body.ct header.top::after{height:1px!important;background:#3EC8C9!important;box-shadow:none!important}
html[data-theme=light] body.ct header.top .ct-word,html[data-theme=light] body.ct header.top .ct-brand{color:#F2F4F5!important}
html[data-theme=light] header.top .ct-mark.ct-mk-l,html[data-theme=light] aside.drawer .dhead .ct-mark.ct-mk-l{display:none!important}
html[data-theme=light] header.top .ct-mark.ct-mk-d,html[data-theme=light] aside.drawer .dhead .ct-mark.ct-mk-d{display:block!important}
html[data-theme=light] body.ct header.top .iconbtn{background:#1A1C1E!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=light] body.ct header.top .iconbtn:hover{background:#24272A!important}
html[data-theme=light] body.ct header.top .dnav a{color:#D5DADC!important}
html[data-theme=light] body.ct header.top .dnav a.on{color:#F2F4F5!important;background:transparent!important;box-shadow:inset 0 -2px 0 #3EC8C9!important}
html[data-theme=light] body.ct header.top .dnav a:hover{background:rgba(255,255,255,.06)!important;color:#F2F4F5!important}
html[data-theme=light] body.ct header.top .search input{background:#1A1C1E!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=light] body.ct header.top .search input::placeholder{color:#9AA3A8!important}
html[data-theme=light] body.ct aside.drawer .dhead{background:#121314!important;border-bottom:1px solid #3EC8C9!important}
html[data-theme=light] body.ct aside.drawer .dhead .ct-dword,html[data-theme=light] body.ct aside.drawer .dhead .ct-dbrand{color:#F2F4F5!important}
html[data-theme=light] body.ct aside.drawer .dhead .iconbtn,html[data-theme=light] body.ct aside.drawer .dhead button{background:#1A1C1E!important;border:1px solid #33383C!important;color:#F2F4F5!important}
html[data-theme=light] body.ct nav.bottom{background:#121314!important;border-top:1px solid #33383C!important}
html[data-theme=light] body.ct nav.bottom a{color:#AEB5BA!important}
html[data-theme=light] body.ct nav.bottom a.on{color:#3EC8C9!important}
html[data-theme=light] body.ct nav.bottom a.on::before{background:#3EC8C9!important;height:1px!important}
