
.theme-toggle{border:1px solid #78909b;border-radius:20px;padding:7px 13px;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:13px;white-space:nowrap}.theme-toggle:focus-visible{outline:3px solid #8ab99e;outline-offset:3px}
html[data-theme=dark]{color-scheme:dark;background:#121212}
html[data-theme=dark] body{background:#121212;color:#dededb}
html[data-theme=dark] :is(header,nav.site-nav,footer,dialog,article,.panel,.detail,.universe,.member-body,.outlook-card,.pro-plans>section,.card,.stock,.research-card,.market-card,.recap-card,.company-card,.account-dialog){background:#1b1b1b;color:#dededb;border-color:#343434;background-image:none}
html[data-theme=dark] :is(h1,h2,h3,h4,strong,b,label,th,.brand-name,.brand-latin,.article-subheading,.pro-price){color:#eeeee9}
html[data-theme=dark] :is(p,small,time,.meta,.member-muted,.outlook-meta,.outlook-mission,.subheading span,.public){color:#aaa9a4}
html[data-theme=dark] a{color:#a7cbbb}
html[data-theme=dark] :is(input,select,textarea,button){background-color:#252525;color:#dededb;border-color:#444444}
html[data-theme=dark] :is(.pro-featured,.outlook-stance,.pro-status,.scenario.base,.calc-result,.member-empty,.notice,.price-strip,.outlook-lock,.unlock,.tag){background:#242826;color:#b9d7c5;border-color:#43594c}
html[data-theme=dark] :is(.scenario,.stock:hover,thead,tr:nth-child(even),.tabs,.member-nav button[aria-pressed=true]){background:#292929;color:#e7e7e3;border-color:#3b3b3b}
html[data-theme=dark] :is(td,th,section,.research,.member-plan,.member-benefits){border-color:#343434}
html[data-theme=dark] :is(.positive,.up,.gain,.mint){color:#65dfa3}
html[data-theme=dark] :is(.negative,.down,.loss){color:#ff8b91}
html[data-theme=dark] :is(.heading,.hero,.pro-intro,.outlook-heading,.member-heading){background-color:transparent;background-image:none}
html[data-theme=dark] ::selection{background:#365c4a;color:#fff}
@media(max-width:700px){header{flex-wrap:wrap}.theme-toggle{padding:6px 10px}}

/* Shared dark palette: restrained surfaces, consistent controls and readable copy. */
html[data-theme=dark]{--ink:#dededb;--line:#343434;--accent:#abc9bb;--cyan:#a1c5b5;--surface:#1b1b1b;--shadow:0 6px 20px #00000018}
html[data-theme=dark] body{background:#121212;background-image:none}
html[data-theme=dark] :is(.home-primary,.home-note,.home-stats>div,.home-company-card,.home-recap-card,.home-theme-card,.market-surface,.macro-calendar,.recap-article,.weekly-focus,.theme-detail,.earnings-calendar,.val-panel,.directory-panel,.follow-section,.follow-stats>div,.follow-empty,.compare-scroll,.compare-picker,.research-activity,.language-dialog,.preview-area,.history-entry){background:#1b1b1b;background-image:none;border-color:var(--line);box-shadow:var(--shadow);color:var(--ink)}
html[data-theme=dark] :is(.research-lens,.theme-intro,.theme-chain article,.theme-menu>a,.theme-companies a,.theme-featured a,.earnings-day h3,.earnings-state,.val-formula,.val-assumptions fieldset:nth-child(2),.watchlist-bar,.methodology,.profile-sector,.account-identity,.account-modes,.market-unavailable,.recap-status,.editor-toolbar,.compare-scroll thead th,.compare-scroll th:first-child,.ratings-table th,.recap-metric){background:#232323;background-image:none;border-color:var(--line);color:var(--ink)}
html[data-theme=dark] :is(.outlook-card,.member-body,.pro-plans>section,.detail,.universe){background:#1b1b1b;border-color:var(--line);box-shadow:var(--shadow)}
html[data-theme=dark] :is(.outlook-lock,.unlock,.member-empty,.price-strip,.scenario,.pro-status){background:#232323;color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.outlook-text p,.outlook-summary,.research p,.recap-article li,.company p,.theme-detail p,.member-body p){color:#c9c9c5}
html[data-theme=dark] :is(.eyebrow,.brand-caption,.meta,.recap-meta,.recap-metric span,.subheading span,.outlook-meta,.outlook-note){color:#999a95}
html[data-theme=dark] :is(header,.site-nav,footer){background:#121212;border-color:var(--line);box-shadow:none}
html[data-theme=dark] .site-nav a{color:#b6b6b0;background:transparent}
html[data-theme=dark] .site-nav a:hover{background:#282828;color:#f1f1ed;text-decoration:none}
html[data-theme=dark] :is(.site-nav a[aria-current=page],.stock.selected,.market-tabs button[aria-pressed=true],.directory-segments button[aria-pressed=true],.theme-menu>a[aria-current=true],.research-view-switch button[aria-pressed=true],.val-models button[aria-pressed=true],.account-modes button[aria-pressed=true]){background:#29332f;border-color:#4c6557;color:#b9d7c5}
html[data-theme=dark] :is(.theme-toggle,.account-entry,.language-switch,header a.nav-link[href='/admin']){background:#232323;color:#d4d4cf;border:1px solid #3d3d3d;border-radius:9px;box-shadow:none;min-height:36px}
html[data-theme=dark] :is(.market-tabs,.search){background:#202020;border-color:var(--line)}
html[data-theme=dark] :is(input,select,textarea,.language-options button,.directory-pages button,.directory-segments button,.surface-head button,.val-actions button,.val-models button,#following-app button,#compare-app button,.member-center #billing-refresh){background:#232323;color:#dededb;border-color:#3d3d3d}
html[data-theme=dark] :is(input,textarea)::placeholder{color:#92938e}
html[data-theme=dark] :is(.pro-plans button:not(:disabled),.account-continue,.member-heading>a,.member-body form>button){background:#365c4a;color:#fff;border-color:#577d68}
html[data-theme=dark] button:disabled{opacity:.55;cursor:not-allowed}
html[data-theme=dark] :is(.freshness,.follow-warning,.theme-risk){background:#342e21;border-color:#655536;color:#e2c989}
html[data-theme=dark] :is(.recap-metric.is-up,.activity-badge.up){background:#15382e;border-color:#2f624c}
html[data-theme=dark] :is(.recap-metric.is-down,.activity-badge.down){background:#39252c;border-color:#69414a}
html[data-theme=dark] .recap-metric.is-up strong{color:#6ee3a8}
html[data-theme=dark] .recap-metric.is-down strong{color:#ff969e}
html[data-theme=dark] .outlook-text .article-subheading{color:#eeeee9}
html[data-theme=dark] .pro-plans .pro-featured{border-color:#4c6557;background:#202322}
html[data-theme=dark] .home-note::after{display:none}
