/* PandaInvest s00k Dark Cinematic: final, local cascade layer. */
@import url("tokens.css");

@font-face {
  font-family: "Inter Variable";
  src: url("assets/fonts/inter-latin-wght-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --background: #0d0d0e;
  --foreground: #f4f5f7;
  --s00k-surface: #101114;
  --card: #111316;
  --s00k-muted-surface: #171a1f;
  --s00k-muted-strong: #252a31;
  --muted-foreground: #929daf;
  --supporting-copy: #c0c9d7;
  --accent: #9badc7;
  --ring: #aebbd0;
  --border: rgba(220, 228, 239, 0.14);
  --border-soft: rgba(220, 228, 239, 0.11);
  --input-border: rgba(220, 228, 239, 0.17);
  --primary: #f5f7fa;
  --primary-foreground: #101114;
  --destructive: #dc5f67;
  --destructive-hover: #e36c74;
  --destructive-surface: #24171a;
  --destructive-copy: #f2a7ac;
  --font-display: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif;
  --font-body: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif;
  --font-outlier: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif;
  --font-serif: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif;
  --font-sans: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif;
  --color-paper: var(--background);
  --color-paper-2: var(--s00k-surface);
  --color-card: var(--card);
  --color-ink: var(--foreground);
  --color-ink-soft: var(--supporting-copy);
  --color-muted: var(--muted-foreground);
  --color-rule: var(--border);
  --color-rule-soft: var(--border-soft);
  --color-terracotta: var(--primary);
  --color-terracotta-dark: var(--accent);
  --color-accent: var(--accent);
  --color-accent-ink: var(--primary-foreground);
  --color-sage: var(--accent);
  --color-blue: var(--accent);
  --color-pink: var(--destructive-surface);
  --color-focus: var(--ring);
  --color-danger: var(--destructive);
  --color-success: #9badc7;
  --nav-parchment: var(--background);
  --nav-ivory: var(--s00k-surface);
  --nav-warm-sand: var(--s00k-muted-strong);
  --nav-border-cream: var(--border);
  --nav-border-warm: var(--border);
  --nav-ring-warm: var(--ring);
  --nav-near-black: var(--foreground);
  --nav-dark-surface: var(--card);
  --nav-charcoal-warm: var(--supporting-copy);
  --nav-olive-gray: var(--muted-foreground);
  --nav-stone-gray: var(--muted-foreground);
  --nav-accent: var(--primary);
  --nav-accent-dark: #ffffff;
  --page-max: 68.75rem;
  --motion-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --motion-duration: 240ms;
}

html { background: var(--background); font-family: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif; font-synthesis: none; }
body { background: var(--background); color: var(--foreground); font-family: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif; font-size: 17px; line-height: 1.6; }
body.organic-home, body.organic-page, body.auth-page, body.page-superinvestor-signals { font-size: 17px; line-height: 1.6; }
body :where(button, input, select, textarea) { font: inherit; }
body :where(h1, h2, h3, h4, h5, h6) { font-family: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif; color: var(--foreground); letter-spacing: -0.045em; }
body :where(h2) { font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 570; line-height: 1.07; }
body :where(p, li, dd, dt, label, small) { color: inherit; }
body :where(a) { color: var(--foreground); }
body :where(a, button, input, select, textarea):focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; }

body > .nav-wrap, .organic-home > .nav-wrap, .organic-page > .nav-wrap {
  position: sticky; top: 10px; z-index: 100; width: min(78rem, calc(100% - 24px)); margin: 10px auto 0; background: rgba(13, 13, 14, .90); border: 1px solid var(--border); border-radius: 17px; box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.45); backdrop-filter: blur(18px) saturate(1.15);
}
body > .nav-wrap nav, .organic-home > .nav-wrap .site-mast, .organic-page > .nav-wrap nav { color: var(--foreground); }
body > .nav-wrap nav, .organic-page > .nav-wrap nav, .organic-home > .nav-wrap .site-mast { min-height: 52px; height: 52px; padding: 0 14px; display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; grid-template-columns: none !important; grid-template-rows: none !important; }
body > .nav-wrap .nav-logo, .organic-home > .nav-wrap .mast-brand, .organic-page > .nav-wrap .nav-logo { color: var(--foreground) !important; font-family: var(--font-body) !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: -0.03em !important; line-height: 1 !important; display: inline-flex !important; align-items: center !important; gap: 0 !important; margin: 0 !important; padding: 0 !important; min-height: 0 !important; width: fit-content !important; flex-shrink: 0 !important; order: 1 !important; text-decoration: none !important; }
.organic-home > .nav-wrap .mast-brand { margin-inline: 0 !important; gap: 0; }
.organic-home > .nav-wrap .mast-nav { display: block; min-width: 0; order: 2 !important; }
.organic-home > .nav-wrap .mast-nav-list { display: flex; align-items: center; justify-content: center; gap: 3px; }
.organic-home > .nav-wrap .mast-menu { display: none; }
body > .nav-wrap .nav-logo-mark, .organic-home > .nav-wrap .mast-brand img, .organic-page > .nav-wrap .nav-logo-mark { width: 22px !important; height: 22px !important; min-width: 22px !important; margin: 0 1px !important; padding: 0 !important; border-radius: 50% !important; object-fit: contain !important; background: var(--card) !important; border: 1px solid var(--border) !important; box-shadow: none !important; display: inline-block !important; vertical-align: middle !important; }
body > .nav-wrap .nav-logo .wordmark-fragment, .organic-home > .nav-wrap .mast-brand .wordmark-fragment, .organic-page > .nav-wrap .nav-logo .wordmark-fragment { display: inline-block !important; vertical-align: middle !important; font-size: 16px !important; }
body > .nav-wrap .nav-dropdown-panel { background: var(--card); border-color: var(--border); box-shadow: none; }
body > .nav-wrap .nav-links, .organic-page > .nav-wrap .nav-links { display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 2px !important; padding: 3px !important; background: rgba(255, 255, 255, 0.04) !important; border: 1px solid rgba(255, 255, 255, 0.08) !important; border-radius: 8px !important; margin: 0 auto !important; border-block-end: 0 !important; width: auto !important; max-width: fit-content !important; height: auto !important; min-width: 0 !important; order: 2 !important; grid-column: auto !important; grid-row: auto !important; }
body > .nav-wrap .nav-links a, body > .nav-wrap .nav-dropdown > a, .mast-nav-list a, .mast-menu-list a, .organic-page > .nav-wrap .nav-links a { min-height: 28px !important; height: 28px !important; padding: 0 10px !important; border-radius: 6px !important; font-size: 13px !important; font-weight: 500 !important; line-height: 1 !important; color: var(--muted-foreground) !important; font-family: var(--font-body) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border: 0 !important; background: transparent !important; text-decoration: none !important; white-space: nowrap !important; transition: color 140ms ease, background-color 140ms ease !important; }
body > .nav-wrap .nav-links a:hover, body > .nav-wrap .nav-dropdown:hover > a, .mast-nav-list a:hover, .mast-menu-list a:hover, .organic-page > .nav-wrap .nav-links a:hover { background: rgba(255, 255, 255, 0.08) !important; color: var(--foreground) !important; box-shadow: none !important; }
body > .nav-wrap .nav-links a.active, body > .nav-wrap .nav-links a[aria-current="page"], .organic-page > .nav-wrap .nav-links a.active, .organic-page > .nav-wrap .nav-links a[aria-current="page"] { background: #ffffff !important; color: #0d0d0e !important; font-weight: 600 !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25) !important; border-radius: 6px !important; }
body > .nav-wrap .nav-links > a.active::after, body > .nav-wrap .nav-dropdown.is-active > a::before, body > .nav-wrap .nav-dropdown > a.active::before, .organic-page > .nav-wrap .nav-links a.active::after, .organic-page > .nav-wrap .nav-links a[aria-current="page"]::after { display: none !important; content: none !important; }
body > .nav-wrap .nav-actions, .organic-page > .nav-wrap .nav-actions, .organic-home > .nav-wrap .mast-meta { display: inline-flex !important; align-items: center !important; justify-content: flex-end !important; gap: 8px !important; margin: 0 0 0 auto !important; order: 3 !important; grid-column: auto !important; grid-row: auto !important; flex-shrink: 0 !important; }
body > .nav-wrap .btn-primary, .checkout-button, .success-actions .primary, .organic-page > .nav-wrap .btn, .organic-page > .nav-wrap .btn-sm, .organic-page > .nav-wrap .btn-primary, .organic-home > .nav-wrap .btn-primary { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-height: 32px !important; height: 32px !important; padding: 0 12px !important; font-size: 13px !important; font-weight: 600 !important; line-height: 1 !important; border-radius: 6px !important; background: var(--primary) !important; border: 1px solid rgba(255, 255, 255, 0.2) !important; color: var(--primary-foreground) !important; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16) !important; text-decoration: none !important; white-space: nowrap !important; transition: background-color 140ms ease, transform 100ms ease, box-shadow 140ms ease !important; }
body > .nav-wrap .btn-primary:hover, .checkout-button:hover, .organic-page > .nav-wrap .btn-primary:hover { background: #ffffff !important; color: var(--primary-foreground) !important; transform: translateY(-0.5px) !important; box-shadow: 0 3px 8px rgba(255, 255, 255, 0.16) !important; }
body > .nav-wrap .btn-primary:active, .checkout-button:active, .organic-page > .nav-wrap .btn-primary:active { transform: scale(0.98) !important; }
@media (max-width: 860px) {
  body > .nav-wrap nav, .organic-page > .nav-wrap nav { height: auto !important; min-height: 0 !important; padding: 8px 12px !important; flex-wrap: wrap !important; row-gap: 8px !important; }
  body > .nav-wrap .nav-logo, .organic-page > .nav-wrap .nav-logo { font-size: 15px !important; }
  body > .nav-wrap .nav-actions, .organic-page > .nav-wrap .nav-actions { display: inline-flex !important; }
  body > .nav-wrap .nav-links, .organic-page > .nav-wrap .nav-links { width: 100% !important; max-width: 100% !important; order: 3 !important; justify-content: flex-start !important; overflow-x: auto !important; scrollbar-width: none !important; padding: 3px 4px !important; -webkit-overflow-scrolling: touch !important; }
}

.organic-home, .organic-page, .auth-page, .page-superinvestor-signals { background: var(--background); color: var(--foreground); }
body.auth-page { --auth-paper: var(--background); --auth-card: var(--card); --auth-ink: var(--foreground); --auth-muted: var(--muted-foreground); --auth-green: var(--primary); --auth-line: var(--border); --auth-serif: var(--font-body); --auth-sans: var(--font-body); background: var(--background); color: var(--foreground); font-family: var(--font-body); }
body.auth-page .auth-card, body.auth-page :is(.auth-error, .auth-success) { background: var(--card); color: var(--foreground); border-color: var(--border); box-shadow: none; }
body.auth-page > .nav-wrap .btn-ghost { background: transparent; color: var(--supporting-copy); border-color: var(--border); }
.organic-home .hero, .organic-home .home-hero, .page-hero, .signals-hero, .watch-hero, .author-header { background: var(--background); border-color: var(--border); }
.organic-home .hero::before, .organic-home .home-hero::before { background: linear-gradient(180deg, rgba(13,13,14,.18), rgba(13,13,14,.72)); }
.organic-home .hero h1, .organic-home .home-hero h1 { font-size: clamp(2.65rem, 5vw, 3.625rem); font-weight: 560; line-height: 1; letter-spacing: -0.052em; }
.organic-home :is(.section-head h2, .provenance-copy h2, .final-cta h2) { font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 570; line-height: 1.07; letter-spacing: -0.045em; }
.organic-home .hero-copy, .organic-home .home-hero-copy, .page-subtitle, .signals-lede, .author-intro, .hero-copy { color: var(--supporting-copy); }
.organic-home :where(.hero, .home-hero) img { background: var(--s00k-muted-surface); border-color: var(--border); }
.organic-home :is(.hero-board, .site-footer) { background: var(--card); color: var(--foreground); border-color: var(--border); }
.organic-home .section { padding-block: 132px; }
.organic-home :where(.hero-visual, .loop-figure img, .provenance-figure, .workspace-link) { border-color: var(--border); border-width: 1px; border-radius: 14px; }

:where(.organic-page, .auth-page, .page-superinvestor-signals) :where(.page-hero, .signals-hero, .author-header, .watch-hero, .author-main, .workspace, .content, .signals-main, .auth-shell, .pricing-main) { background-color: var(--background); color: var(--foreground); border-color: var(--border); }
:where(.organic-page, .auth-page, .page-superinvestor-signals) :where(.panel, .card, .idea-card, .ideas-toolbar, .ideas-status, .method-panel, .research-toolbar, .research-status, .research-summary, .research-card, .research-side, .full-list-section, .auth-card, .pricing-plan, .success-card, .connector, .author-card, .signal-card, .metrics, .thresholds, .reality-check) { background: var(--card); color: var(--foreground); border-color: var(--border); box-shadow: none; }
:where(.organic-page, .auth-page, .page-superinvestor-signals) :where(input, select, textarea) { background: var(--s00k-surface); color: var(--foreground); border-color: var(--input-border); }
:where(.organic-page, .auth-page, .page-superinvestor-signals) :where(.eyebrow, .page-eyebrow, .signals-eyebrow, .section-label, .author-kicker, .results-status, .panel-note, .source-note, .status-banner, .research-status) { color: var(--muted-foreground); }
:where(.organic-page, .auth-page, .page-superinvestor-signals) :where(.status-label, .metric-check, .signals-error, .checkout-error) { color: var(--destructive-copy); }
:where(.organic-page, .auth-page, .page-superinvestor-signals) :where(.status-label.pass, .metric-check.pass) { color: var(--accent); }

/* Inline legacy route tokens are remapped only after their page-local styles. */
body.page-screener, body.page-research-feed, body.page-sources, body.page-simply, body.page-sa-watch, body.page-investor-radar { --page: var(--background); --surface: var(--card); --ink: var(--foreground); --muted: var(--muted-foreground); --label: var(--muted-foreground); --line: var(--border); --line-strong: var(--input-border); --blue: var(--accent); --blue-dark: var(--ring); --parchment: var(--background); --ivory: var(--s00k-surface); --ivory-dim: var(--s00k-muted-surface); --dark: var(--foreground); --dark-mid: var(--supporting-copy); --dark-soft: var(--muted-foreground); --text-muted: var(--muted-foreground); --text-light: var(--supporting-copy); --border-dark: var(--input-border); --shadow-sm: none; --shadow-md: none; }
body.page-screener :where(.toolbar, .filters, .stock-table-wrap, .detail-panel, .modal-content, .empty-state), body.page-research-feed :where(.feed-card, .filter-bar, .source-card), body.page-simply :where(.author-card, .source-boundary), body.page-sa-watch :where(.connector, .reality-check), body.page-investor-radar :where(.tweet, .feed-card) { background: var(--card); color: var(--foreground); border-color: var(--border); box-shadow: none; }
body.organic-page.page-screener :is(.signal-panel, .stock-table-wrap, table, .custom-select-trigger), body.page-best-ideas .idea-card:first-child, body.page-simply .author-grid { background: var(--card); color: var(--foreground); border-color: var(--border); box-shadow: none; }
body.page-sources :is(.search-input, .share-modal, .share-modal-url), body.page-investor-radar :is(.search-wrap input, .account-card, .share-modal, .share-btn) { background: var(--card); color: var(--foreground); border-color: var(--border); box-shadow: none; }
body.page-investor-radar .account-card:hover { border-color: var(--input-border); box-shadow: none; }
body.page-superinvestor-signals { --signals-paper: var(--background); --signals-card: var(--card); --signals-ink: var(--foreground); --signals-muted: var(--muted-foreground); --signals-line: var(--border); --signals-green: var(--accent); --signals-clay: var(--destructive); }
body.page-superinvestor-signals :is(.method-panel, .metric) { background: var(--card); color: var(--foreground); border-color: var(--border); }
body.page-pricing .pricing-plan, body .success-card { background: var(--card); color: var(--foreground); border-color: var(--border); }
body.page-pricing :is(.plan-label, .price strong), body .success-card h1 { color: var(--foreground); }
body.page-pricing :is(.price span, .billing-copy), body .success-card :is(.eyebrow, .success-copy, .success-email) { color: var(--supporting-copy); }
body.page-pricing .pricing-footer { background: var(--card); color: var(--supporting-copy); }

/* Screener color hierarchy: bounded pastel surfaces, uniform table rows, and
   dark separators make the dense legacy interface readable without a rainbow. */
body.organic-page.page-screener .filters-panel {
  background: var(--section-cream); color: var(--section-ink); border-color: var(--section-ink);
}
body.organic-page.page-screener .filters-panel :is(.panel-title, .panel-note, label, .filter-feedback) { color: var(--section-ink); }
body.organic-page.page-screener .filters-panel .panel-note { color: var(--section-ink-soft); }
body.organic-page.page-screener .filters-panel :is(input, select, .custom-select-trigger, #resetFiltersBtn) { background: color-mix(in oklab, var(--section-cream) 82%, white); color: var(--section-ink); border-color: color-mix(in oklab, var(--section-ink) 38%, transparent); }

body.organic-page.page-screener .criteria-section { border-top-color: color-mix(in oklab, var(--section-ink) 25%, transparent); }
body.organic-page.page-screener :is(.criteria-section-title, .top-ranked-title, .criteria-metric-title, .criteria-category-title, .chart-title) { color: var(--section-ink) !important; }
body.organic-page.page-screener :is(.criteria-metric-sublabel, .criteria-unit, .criteria-drag-handle, .chart-legend) { color: var(--section-ink-soft) !important; }
body.organic-page.page-screener .criteria-row { background: #ffffff !important; border: 1px solid color-mix(in oklab, var(--section-ink) 24%, transparent) !important; color: var(--section-ink) !important; box-shadow: 0 1px 3px rgba(21, 19, 19, 0.05); }
body.organic-page.page-screener .criteria-row:hover { border-color: var(--section-ink) !important; box-shadow: 0 4px 12px rgba(21, 19, 19, 0.08); }
body.organic-page.page-screener #addCriteriaBtn { background: var(--section-ink) !important; color: #ffffff !important; border: 1px solid var(--section-ink) !important; font-weight: 700; }
body.organic-page.page-screener #addCriteriaBtn:hover { background: #000000 !important; color: #ffffff !important; }
body.organic-page.page-screener :is(#toggleWeightsBtn, #resetCriteriaBtn) { background: #ffffff !important; color: var(--section-ink) !important; border: 1px solid color-mix(in oklab, var(--section-ink) 35%, transparent) !important; font-weight: 700; }
body.organic-page.page-screener #resetCriteriaBtn:hover { color: #dc5f67 !important; border-color: #dc5f67 !important; background: #fff5f5 !important; }
body.organic-page.page-screener #toggleWeightsBtn:hover { background: var(--section-cream) !important; border-color: var(--section-ink) !important; }
body.organic-page.page-screener .criteria-pill { background: var(--section-ink) !important; color: #ffffff !important; font-weight: 800; border: 1px solid var(--section-ink) !important; }
body.organic-page.page-screener .criteria-pill-cagr, body.organic-page.page-screener .criteria-pill-growth { background: #064e3b !important; border-color: #064e3b !important; color: #ecfdf5 !important; }
body.organic-page.page-screener .criteria-pill-momentum { background: #312e81 !important; border-color: #312e81 !important; color: #eef2ff !important; }
body.organic-page.page-screener .criteria-operator-btn { background: #ffffff !important; color: var(--section-ink) !important; border: 1px solid color-mix(in oklab, var(--section-ink) 35%, transparent) !important; font-weight: 700; }
body.organic-page.page-screener .criteria-operator-btn:hover { background: #f8fafc !important; border-color: var(--section-ink) !important; }
body.organic-page.page-screener .criteria-operator-menu { background: #ffffff !important; border: 1px solid color-mix(in oklab, var(--section-ink) 40%, transparent) !important; box-shadow: 0 10px 28px rgba(0, 0, 0, 0.16) !important; }
body.organic-page.page-screener .criteria-operator-option { color: var(--section-ink) !important; background: transparent !important; font-weight: 600; }
body.organic-page.page-screener .criteria-operator-option:hover, body.organic-page.page-screener .criteria-operator-option.active { background: color-mix(in oklab, var(--section-powder-blue) 40%, white) !important; color: var(--section-ink) !important; font-weight: 700; }
body.organic-page.page-screener .criteria-val-input { background: #ffffff !important; color: var(--section-ink) !important; border: 1px solid color-mix(in oklab, var(--section-ink) 35%, transparent) !important; font-weight: 700; }
body.organic-page.page-screener .criteria-val-input:focus { border-color: var(--section-ink) !important; outline: 2px solid var(--section-ink) !important; outline-offset: -2px; }
body.organic-page.page-screener .criteria-del-btn { color: var(--section-ink-soft) !important; }
body.organic-page.page-screener .criteria-del-btn:hover { color: #dc5f67 !important; background: rgba(220, 95, 103, 0.12) !important; }
body.organic-page.page-screener .top-ranked-bar { background: #ffffff !important; border: 1px solid color-mix(in oklab, var(--section-ink) 25%, transparent) !important; box-shadow: 0 1px 3px rgba(21, 19, 19, 0.04); }
body.organic-page.page-screener .top-chip { background: color-mix(in oklab, var(--section-cream) 60%, white) !important; border: 1px solid color-mix(in oklab, var(--section-ink) 30%, transparent) !important; color: var(--section-ink) !important; font-weight: 700; }
body.organic-page.page-screener .top-chip:hover { background: var(--section-ink) !important; border-color: var(--section-ink) !important; color: #ffffff !important; }
body.organic-page.page-screener .top-chip strong { color: inherit !important; }
body.organic-page.page-screener .top-chip-score { color: #15803d !important; font-weight: 800; }
body.organic-page.page-screener .top-chip:hover .top-chip-score { color: #86efac !important; }
body.organic-page.page-screener .weights-drawer { background: #ffffff !important; border: 1px solid color-mix(in oklab, var(--section-ink) 25%, transparent) !important; }
body.organic-page.page-screener .weight-item label { color: var(--section-ink) !important; }
body.organic-page.page-screener .criteria-picker-item { background: #ffffff !important; border: 1px solid color-mix(in oklab, var(--section-ink) 25%, transparent) !important; color: var(--section-ink) !important; }
body.organic-page.page-screener .criteria-picker-item:hover { border-color: var(--section-ink) !important; background: var(--section-cream) !important; }
body.organic-page.page-screener .criteria-picker-item strong { color: var(--section-ink) !important; }
body.organic-page.page-screener .criteria-picker-item span { color: var(--section-ink-soft) !important; }

body.organic-page.page-screener .signal-panel,
body.organic-page.page-screener .signal-panel table,
body.organic-page.page-screener .stock-table-wrap { background: #f5f2e9; color: #15201a; border-color: #15201a; }
body.organic-page.page-screener .signal-panel :is(th, td, .panel-title, .ticker, .company strong, .article-link) { color: #15201a; }
body.organic-page.page-screener .signal-panel :is(.panel-note, .company span, .muted, .country-column .muted) { color: #5f5c54; }
body.organic-page.page-screener .signal-panel :is(th, td) { border-color: rgba(21, 32, 26, 0.28); }
body.organic-page.page-screener .signal-panel th {
  background: #ede9dc;
  color: #15201a;
}
body.organic-page.page-screener .signal-panel th .sortable-heading { color: #15201a; }
body.organic-page.page-screener .signal-panel tbody tr,
body.organic-page.page-screener .signal-panel tbody tr:hover td { background: transparent; color: #15201a; }
body.organic-page.page-screener .signal-panel tbody tr:hover :is(.ticker, .company strong, .company span, .muted, .article-link) { color: #15201a; }

body.organic-page.page-screener :is(.modal, .modal-head, .modal-body, .detail-section, .price-chart, .tradingview-panel) { background: #f5f2e9; color: #15201a; border-color: #15201a; }
body.organic-page.page-screener :is(.modal .panel-title, .modal .panel-note, .modal .detail-title, .modal .detail-section p, .modal .detail-section h3) { color: #15201a; }
body.organic-page.page-screener :is(.modal .panel-note, .modal .research-status, .modal .price-alert-status) { color: #5f5c54; }
body.organic-page.page-screener .modal :is(.chip, .muted, .price-alert-form label, .research-citations, .chart-labels, .tradingview-note, .market-status) { color: #5f5c54; }
body.organic-page.page-screener .modal .chip { background: #ede9dc; border-color: rgba(21, 32, 26, 0.38); }
body.organic-page.page-screener :is(.modal .btn, .detail-tab, .price-alert-form input, .research-form textarea) { background: #ede9dc; color: #15201a; border-color: rgba(21, 32, 26, 0.38); }
body.organic-page.page-screener :is(.modal .btn:hover, .detail-tab:hover, .detail-tab[aria-selected="true"]) { background: #e0dcd0; color: #15201a; border-color: #15201a; }
body.organic-page.page-screener .metric { background: #ede9dc; color: #15201a; border-color: rgba(21, 32, 26, 0.28); }
body.organic-page.page-screener .metric span { color: #5f5c54; }
body.organic-page.page-screener .metric strong { color: #15201a; }

/* Contextual color returns at section scale only. Dense research and data
   surfaces intentionally retain the S00k dark treatment above. */
.organic-home .hero {
  --color-ink: var(--section-ink);
  --color-ink-soft: var(--section-ink-soft);
  background: var(--section-cream);
  color: var(--section-ink);
}
.organic-home .hero::before { background: none; }
.organic-home .hero :is(h1, h2, p, a, .hero-kicker, .trust-note) { color: var(--section-ink); }
.organic-home .hero .hero-lede, .organic-home .hero .trust-note { color: var(--section-ink-soft); }
.organic-home .hero .hero-board { background: var(--section-terracotta); border-color: var(--section-ink); }
.organic-home .hero .hero-visual { border-color: var(--section-ink); }
.organic-home .hero .action-primary { background: var(--section-ink); color: var(--section-cream); border-color: var(--section-ink); }
.organic-home .hero .text-link { color: var(--section-ink); }

.organic-home .workspace {
  --color-ink: var(--section-ink);
  --color-ink-soft: var(--section-ink-soft);
  background: var(--section-powder-blue);
  color: var(--section-ink);
  border-color: var(--section-ink);
}
.organic-home .workspace :is(h1, h2, h3, p, a, strong, span, .section-label) { color: var(--section-ink); }
.organic-home .workspace .workspace-link { border-color: color-mix(in oklab, var(--section-ink) 38%, transparent); }
.organic-home .workspace .workspace-link:hover { background: color-mix(in oklab, var(--section-cream) 70%, transparent); }

.organic-home .final-cta {
  --color-ink: var(--section-ink);
  --color-ink-soft: var(--section-ink-soft);
  background: var(--section-cool-blue);
  color: var(--section-ink);
  border-color: var(--section-ink);
}
.organic-home .final-cta :is(h1, h2, h3, p, a) { color: var(--section-ink); }
.organic-home .final-cta .action { background: var(--section-ink); color: var(--section-cream); }

body.page-research-feed .feed-header,
body.page-sources .page-header { background: var(--section-cream); color: var(--section-ink); }
body.page-investor-radar .page-hero { background: var(--section-pale-pink); color: var(--section-ink); text-align: center; }
body.page-investor-radar .page-hero > p { margin-inline: auto; }
body.page-simply .author-header { background: var(--section-powder-blue); color: var(--section-ink); }
:is(body.page-research-feed .feed-header, body.page-sources .page-header, body.page-investor-radar .page-hero, body.page-simply .author-header) :is(h1, h2, h3, p, a, .eyebrow, .page-eyebrow, .author-kicker) { color: var(--section-ink); }
:is(body.page-research-feed .feed-header, body.page-sources .page-header, body.page-investor-radar .page-hero, body.page-simply .author-header) :is(.page-subtitle, .author-intro) { color: var(--section-ink-soft); }

.motion-reveal {
  transition: opacity var(--motion-duration) var(--motion-ease-out), transform var(--motion-duration) var(--motion-ease-out);
  transition-delay: calc(var(--motion-order, 0) * 60ms);
}
.motion-reveal:not(.is-visible) { opacity: 0; transform: translateY(12px); }
.motion-reveal.is-visible { opacity: 1; transform: none; }
:where(button, .btn, .action, .checkout-button, .success-actions a):not(:disabled):not([aria-disabled="true"]):active {
  transform: scale(0.98);
  transition: transform 140ms var(--motion-ease-out);
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  .motion-reveal, .motion-reveal:not(.is-visible) { opacity: 1 !important; transform: none !important; transition: none !important; }
}
/* --- Quick Tools Strip - s00k Dark Cinematic Design --- */
.quick-tools-strip {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  margin-bottom: var(--space-md) !important;
  padding: 0.5rem 0.75rem !important;
  background: var(--s00k-surface, #101114) !important;
  border: 1px solid var(--border, rgba(220, 228, 239, 0.14)) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35) !important;
  flex-wrap: wrap !important;
}

.quick-tools-strip .quick-tools-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter Variable", Inter, sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: var(--muted-foreground, #929daf) !important;
  padding-left: 0.35rem !important;
  padding-right: 0.25rem !important;
}

.quick-tools-strip .quick-tools-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 999px !important;
  background: #10b981 !important;
  box-shadow: 0 0 8px #10b981 !important;
}

.quick-tools-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.65rem !important;
  flex-wrap: wrap !important;
}

.btn-quick-tool {
  min-height: 42px !important;
  padding: 0.45rem 1.05rem !important;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter Variable", Inter, -apple-system, sans-serif !important;
  font-size: 0.86rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  border: 1px solid var(--border, rgba(220, 228, 239, 0.16)) !important;
  border-radius: 8px !important;
  background: var(--card, #111316) !important;
  color: var(--foreground, #f4f5f7) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.55rem !important;
  text-decoration: none !important;
  line-height: 1.25 !important;
  transition: transform var(--motion-duration) var(--motion-ease-out), background var(--motion-duration) var(--motion-ease-out), border-color var(--motion-duration) var(--motion-ease-out), box-shadow var(--motion-duration) var(--motion-ease-out) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4) !important;
}

.btn-quick-tool:hover {
  background: var(--s00k-muted-surface, #171a1f) !important;
  color: #ffffff !important;
  border-color: rgba(220, 228, 239, 0.35) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.5) !important;
}

.btn-quick-tool:active {
  transform: translateY(0) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}

#launchAgentResearchBtn.btn-quick-tool {
  border-color: rgba(245, 158, 11, 0.35) !important;
  background: color-mix(in oklab, var(--card, #111316) 90%, #f59e0b 10%) !important;
}

#launchAgentResearchBtn.btn-quick-tool:hover {
  border-color: #f59e0b !important;
  background: color-mix(in oklab, var(--card, #111316) 80%, #f59e0b 20%) !important;
  box-shadow: 0 0 16px rgba(245, 158, 11, 0.25) !important;
}

#openProUpgradeBtn.btn-quick-tool {
  border-color: rgba(56, 189, 248, 0.35) !important;
  background: color-mix(in oklab, var(--card, #111316) 90%, #38bdf8 10%) !important;
}

#openProUpgradeBtn.btn-quick-tool:hover {
  border-color: #38bdf8 !important;
  background: color-mix(in oklab, var(--card, #111316) 80%, #38bdf8 20%) !important;
  box-shadow: 0 0 16px rgba(56, 189, 248, 0.25) !important;
}

.btn-quick-tool .btn-quick-badge {
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  padding: 0.15rem 0.4rem !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  background: rgba(245, 158, 11, 0.18) !important;
  color: #fbbf24 !important;
  border: 1px solid rgba(245, 158, 11, 0.4) !important;
}

.btn-quick-tool .btn-quick-subtext {
  color: var(--supporting-copy, #c0c9d7) !important;
  font-weight: 500 !important;
}

/* Tag filter boxes: white background with black text when unselected; black background with white text when selected */
body .tag-btn,
body .tag-bar .tag-btn,
body.organic-page .tag-btn,
body.organic-page .tag-bar .tag-btn {
  background: #ffffff !important;
  color: #141413 !important;
  border: 1.5px solid #c8c6bc !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  min-height: 34px !important;
  padding: 6px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
}

body .tag-btn:hover,
body .tag-bar .tag-btn:hover,
body.organic-page .tag-btn:hover,
body.organic-page .tag-bar .tag-btn:hover {
  background: #e8e6dc !important;
  color: #141413 !important;
  border-color: #141413 !important;
}

body .tag-btn:focus-visible,
body .tag-bar .tag-btn:focus-visible {
  outline: 2px solid #141413 !important;
  outline-offset: 2px !important;
}

body .tag-btn.active,
body .tag-btn[aria-pressed="true"],
body .tag-btn.active:hover,
body .tag-btn[aria-pressed="true"]:hover,
body .tag-bar .tag-btn.active,
body .tag-bar .tag-btn[aria-pressed="true"],
body.organic-page .tag-btn.active,
body.organic-page .tag-btn[aria-pressed="true"] {
  background: #141413 !important;
  color: #ffffff !important;
  border-color: #141413 !important;
  font-weight: 700 !important;
}

@media (max-width: 767px) {
  body > .nav-wrap, .organic-home > .nav-wrap { top: 8px; width: calc(100% - 20px); margin-top: 8px; }
  body > .nav-wrap nav { min-height: 54px; }
  .organic-home > .nav-wrap .site-mast { min-height: 54px; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "brand action" "rule rule" "menu menu"; padding: 6px 10px; }
  .organic-home > .nav-wrap .mast-nav { display: none; }
  .organic-home > .nav-wrap .mast-menu { display: block; grid-column: 1 / -1; }
  .organic-home .hero, .organic-home .home-hero { min-height: 640px; padding: 118px 20px 65px; }
  .organic-home .section { padding-block: 84px; }
  .quick-tools-strip { flex-direction: column !important; align-items: stretch !important; }
  .quick-tools-group { flex-direction: column !important; align-items: stretch !important; width: 100% !important; }
  .btn-quick-tool { width: 100% !important; justify-content: center !important; }
}
