/* Dealroom global theme reland c3078d0. */

/* Font tokens — the single source of truth for the site's three type roles.
   Display (headlines, KPI numbers, card titles — was 'Source Sans 3' before
   the 2026-06 serif→sans migration), sans (body/UI), mono (code, tabular
   annotations). Change the face here (plus the Google Fonts <link> pages
   carry) and the whole themed surface follows; built profile pages inherit
   these via the middleware-injected copy of this stylesheet. */
:root {
    --font-display: 'Source Sans 3', system-ui, sans-serif;
    --font-sans: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-mono: 'IBM Plex Mono', ui-monospace, monospace;
}

html[data-theme="light"] {
    color-scheme: light;
    --navy: #ffffff;
    --navy-light: #f5f7fb;
    --navy-lighter: #e6edf7;
    /* Canvas behind a standalone chart/market-map artifact — matches the tint
       the chart paints around its own card (light: #F1F4F8, dark: #001234), so
       the resources chart page reads as one continuous surface with no boxed
       iframe band. Keep paired with the dark value below. */
    --chart-canvas: #F1F4F8;
    --blue: #3E64E0;
    --blue-hover: #3154c7;
    --teal: #3E64E0;
    --purple: #6d28d9;
    --amber: #b45309;
    --orange: #b45309;
    --orange-accent: #c2410c;
    /* Contrast-safe accent INK (text-on-surface). Paired across themes: darker
       accent in light mode, lighter accent in dark mode, so the same token
       clears WCAG AA against the page/card surface in both. Reach for these
       instead of a raw accent hex when colouring text/labels. */
    --amber-ink: #B54708;
    --blue-ink: #175CD3;
    /* Eyebrows / kickers — the small section labels above titles. One semantic
       token for the whole site (replaced the old orange family + the B3 gray
       demotion). Paired with #84ADFF in the dark block below: raw brand blue
       on the dark navy canvas is only 3.6:1, the pale blue clears AA. */
    --eyebrow: #3E64E0;
    --white: #101828;
    /* Logo tiles — the rounded square/circle that frames a company/investor
       logo image (profile heroes, backer cards, market-map chips, directory
       cards, sector headliner strips). The rule: tiles are theme-MATCHED — a
       light tile on the light surface, a dark tile on the dark surface. Never
       back a logo with var(--white) (it flips to dark ink in light mode) or a
       literal white. Paired with the dark block below. */
    --logo-tile-bg: #ffffff;
    --logo-tile-border: rgba(16, 24, 40, 0.1);
    --text-light: rgba(16, 24, 40, 0.72);
    --text-lighter: rgba(16, 24, 40, 0.7);
    --text-faint: rgba(16, 24, 40, 0.62);
    --border-light: rgba(16, 24, 40, 0.11);
    --border-mid: rgba(16, 24, 40, 0.2);
    --blue-light: rgba(37, 99, 235, 0.1);
    --mint: #3E64E0;
    --mint-soft: rgba(62, 100, 224, 0.12);
    --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.06);
    --shadow-md: 0 8px 20px rgba(16, 24, 40, 0.08);
    --shadow-lg: 0 18px 44px rgba(16, 24, 40, 0.1);
    --shadow-xl: 0 28px 70px rgba(16, 24, 40, 0.14);
    /* Homepage news-card category tags. One rgb triplet per kind, contrast-safe
       against the card surface in this mode; the chip uses rgba(...,0.14) tint +
       rgb(...) text. Paired with lighter values in the dark block below. */
    --tag-jf: 6, 118, 71;            /* emerald — "Just founded" */
    --tag-fundraise: 23, 92, 211;    /* blue — fundraises */
    --tag-acquisition: 105, 65, 198; /* purple — M&A / control deals */
    --tag-launch: 181, 71, 8;        /* amber — launches */
    --tag-news: 71, 84, 103;         /* slate — everything else */
}

html[data-theme="dark"] {
    color-scheme: dark;
    --navy: #141B2D;
    --navy-light: #1E2A45;
    --navy-lighter: #2A3A5A;
    /* Chart-page canvas — the deep navy charts paint around their card in dark
       mode (#001234 is the dominant convention across /charts/*.html). See the
       light block above. */
    --chart-canvas: #001234;
    --white: #FFFFFF;
    /* Logo tiles — dark companion of the light block pair: a dark elevated
       tile on the dark surface. */
    --logo-tile-bg: var(--navy-light);
    --logo-tile-border: rgba(255, 255, 255, 0.1);
    --text-light: rgba(255, 255, 255, 0.7);
    --text-lighter: rgba(255, 255, 255, 0.5);
    --text-faint: rgba(255, 255, 255, 0.35);
    --border-light: rgba(255, 255, 255, 0.1);
    --border-mid: rgba(255, 255, 255, 0.2);
    /* Contrast-safe accent ink — lighter on the dark surface. See light block. */
    --amber-ink: #F4CE7C;
    --blue-ink: #7CC8F4;
    /* Eyebrow blue, dark companion — 8.3:1 on the navy canvas and already the
       dark-mode "fundraise" tag blue, so it's an existing pairing. See light block. */
    --eyebrow: #84ADFF;
    /* News-card category tags — lighter accents on the dark surface. See light block. */
    --tag-jf: 108, 233, 166;
    --tag-fundraise: 132, 173, 255;
    --tag-acquisition: 195, 166, 255;
    --tag-launch: 244, 206, 124;
    --tag-news: 203, 213, 225;
}

nav.hero-breadcrumb {
    position: static;
    inset: auto;
    z-index: auto;
    padding: 0;
    height: auto;
    background: transparent;
    border: 0;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

html,
body {
    overflow-x: clip;
}

html[data-theme="light"] body {
    background: #ffffff;
    color: #101828;
}

html[data-theme="light"] .announcement-banner {
    background: #3E64E0;
    border-bottom-color: rgba(255, 255, 255, 0.2);
}

html[data-theme="light"] .announcement-banner .announcement-eyebrow,
html[data-theme="light"] .announcement-banner .announcement-arrow {
    color: #ffffff !important;
}

html[data-theme="light"] body > nav,
html[data-theme="light"] nav.site-nav {
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom-color: rgba(16, 24, 40, 0.11) !important;
    box-shadow: 0 1px 0 rgba(16, 24, 40, 0.02), 0 12px 30px rgba(16, 24, 40, 0.04);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

html[data-theme="light"] .nav-link:hover,
html[data-theme="light"] .nav-link.active,
html[data-theme="light"] .btn-ghost:hover {
    color: #101828;
    background: rgba(16, 24, 40, 0.055);
}

html[data-theme="light"] .btn-primary,
html[data-theme="light"] body > nav .nav-right .btn-primary,
html[data-theme="light"] nav.site-nav .nav-right .btn-primary,
html[data-theme="light"] .nav-right .btn-primary,
html[data-theme="light"] .mobile-nav-cta,
html[data-theme="light"] body > nav .mobile-nav-cta,
html[data-theme="light"] nav.site-nav .mobile-nav-cta,
html[data-theme="light"] .submit-mm-btn-primary,
html[data-theme="light"] .announcement-banner a,
html[data-theme="light"] button[type="submit"].btn-primary {
    color: #ffffff !important;
    background: #3E64E0 !important;
    border-color: #3E64E0 !important;
    box-shadow: 0 10px 24px rgba(62, 100, 224, 0.2);
}

html[data-theme="light"] .btn-primary:hover,
html[data-theme="light"] body > nav .nav-right .btn-primary:hover,
html[data-theme="light"] nav.site-nav .nav-right .btn-primary:hover,
html[data-theme="light"] .nav-right .btn-primary:hover,
html[data-theme="light"] .mobile-nav-cta:hover,
html[data-theme="light"] body > nav .mobile-nav-cta:hover,
html[data-theme="light"] nav.site-nav .mobile-nav-cta:hover,
html[data-theme="light"] .submit-mm-btn-primary:hover,
html[data-theme="light"] .announcement-banner a:hover,
html[data-theme="light"] button[type="submit"].btn-primary:hover {
    background: #3154c7 !important;
    border-color: #3154c7 !important;
}

html[data-theme="light"] .btn-outline,
html[data-theme="light"] .btn-ghost {
    border-color: rgba(16, 24, 40, 0.16);
}

html[data-theme="light"] .btn-white {
    background: #101828;
    color: #ffffff;
}

html[data-theme="light"] footer {
    background: #f7f9fc;
    border-top-color: rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] .cta-form {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.65);
}

html[data-theme="light"] .cta-form input {
    color: #101828;
}

html[data-theme="light"] .nav-dropdown-panel,
html[data-theme="light"] .nav-dropdown-menu,
html[data-theme="light"] .nav-mega-menu,
html[data-theme="light"] .dropdown-menu,
html[data-theme="light"] .mobile-nav {
    background: rgba(255, 255, 255, 0.97) !important;
    border-color: rgba(16, 24, 40, 0.12) !important;
    box-shadow: 0 24px 60px rgba(16, 24, 40, 0.14);
}

html[data-theme="light"] .nav-dropdown-item,
html[data-theme="light"] .nav-dropdown-link,
html[data-theme="light"] .dropdown-item,
html[data-theme="light"] .nav-profile-link,
html[data-theme="light"] .nav-profile-link-wide {
    color: #101828;
}

html[data-theme="light"] .nav-dropdown-item:hover,
html[data-theme="light"] .nav-dropdown-link:hover,
html[data-theme="light"] .dropdown-item:hover {
    background: rgba(16, 24, 40, 0.055);
}

html[data-theme="light"] .nav-dropdown-description,
html[data-theme="light"] .nav-dropdown-subtitle,
html[data-theme="light"] .dropdown-description {
    color: #667085;
}

html[data-theme="light"] .nav-dropdown-icon,
html[data-theme="light"] .dropdown-icon {
    background: #eef2f7;
    color: #2563eb;
}

html[data-theme="light"] .nav-profile-link-wide {
    background: rgba(16, 24, 40, 0.035);
}

html[data-theme="light"] .nav-profile-icon {
    background: rgba(16, 24, 40, 0.065);
}

html[data-theme="light"] .mobile-menu-toggle span {
    background: #101828;
}

html[data-theme="light"] .hero,
html[data-theme="light"] .hero.is-entity {
    background:
        radial-gradient(ellipse at 50% 0%, rgba(37, 99, 235, 0.11) 0%, rgba(255, 255, 255, 0) 58%),
        #ffffff;
}

html[data-theme="light"] .ranking-strip,
html[data-theme="light"] section.body-section.alt,
html[data-theme="light"] .resources-section,
html[data-theme="light"] .cta-section {
    background-color: #f7f9fc;
}

html[data-theme="light"] .hero-map {
    background: #eaf0f8;
}

html[data-theme="light"] .hero-map .lm-c {
    fill: #cbd5e1;
    stroke: #f8fafc;
}

html[data-theme="light"] .hero-map .lm-c.is-focus {
    fill: var(--hero-accent, #3B82F6);
    stroke: color-mix(in srgb, var(--hero-accent, #3B82F6) 45%, white 55%);
}

html[data-theme="light"] .hero-map-caption {
    background: rgba(255, 255, 255, 0.78);
    color: #101828;
}

html[data-theme="light"] .nc-col {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 14px 34px rgba(16, 24, 40, 0.07);
}

html[data-theme="light"] .nc-col-tier {
    color: #101828;
}

html[data-theme="light"] .nc-col-sub,
html[data-theme="light"] .nc-more {
    color: #667085;
}

html[data-theme="light"] .nc-pill {
    color: #344054;
    background: #f8fafc;
    border-color: rgba(16, 24, 40, 0.12);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

html[data-theme="light"] .kpi-card,
html[data-theme="light"] .hero-stat,
html[data-theme="light"] .alumni-stat,
html[data-theme="light"] .alumni-card,
html[data-theme="light"] .backer-card,
html[data-theme="light"] .resource-card,
html[data-theme="light"] .report-card,
html[data-theme="light"] .pricing-card,
html[data-theme="light"] .solution-card,
html[data-theme="light"] .feature-card,
html[data-theme="light"] .stat-card,
html[data-theme="light"] .metric-card,
html[data-theme="light"] .card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 12px 34px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .pricing-card.popular {
    background: #ffffff;
    border: 1px solid rgba(62, 100, 224, 0.28);
    transform: none;
    box-shadow: 0 18px 48px rgba(62, 100, 224, 0.12), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

html[data-theme="light"] .pricing-card.popular:hover {
    transform: translateY(-4px);
    border-color: rgba(62, 100, 224, 0.42);
    box-shadow: 0 22px 54px rgba(62, 100, 224, 0.16);
}

html[data-theme="light"] .popular-badge {
    top: 1.35rem;
    right: 1.5rem;
    left: auto;
    transform: none;
    background: #3E64E0;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(62, 100, 224, 0.2);
}

html[data-theme="light"] .pricing-card.popular .card-icon {
    background: #eef3ff;
}

html[data-theme="light"] .pricing-card.popular .card-icon svg,
html[data-theme="light"] .pricing-card.popular .features-list li svg {
    color: #3E64E0;
}

html[data-theme="light"] .pricing-card.popular .plan-desc,
html[data-theme="light"] .pricing-card.popular .price-period,
html[data-theme="light"] .pricing-card.popular .features-list li {
    color: rgba(16, 24, 40, 0.72);
}

html[data-theme="light"] .pricing-card.popular .card-btn {
    background: #101828;
    color: #ffffff;
}

html[data-theme="light"] .pricing-card.popular .card-btn:hover {
    background: #1f2937;
}

html[data-theme="light"] .pl-card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 14px 34px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .pl-card:hover {
    background: #ffffff;
    border-color: rgba(180, 83, 9, 0.28);
    box-shadow: 0 18px 44px rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .pl-card h3 {
    color: #101828;
}

html[data-theme="light"] .pl-card p,
html[data-theme="light"] .pl-card-stat {
    color: rgba(16, 24, 40, 0.66);
}

html[data-theme="light"] .pl-card-badge {
    color: #3154c7;
    background: #eef3ff;
    border-color: rgba(62, 100, 224, 0.24);
    box-shadow: none;
}

html[data-theme="light"] .pl-card-visual {
    color: rgba(180, 83, 9, 0.72);
}

html[data-theme="light"] .cta-band {
    background: linear-gradient(165deg, rgba(37, 99, 235, 0.09), rgba(180, 83, 9, 0.06));
    border-color: rgba(16, 24, 40, 0.11);
}

html[data-theme="light"] .cta-band h2 {
    color: #101828;
}

html[data-theme="light"] .cta-band p {
    color: rgba(16, 24, 40, 0.66);
}

html[data-theme="light"] .comparison-section {
    background: #f6f8fb;
}

html[data-theme="light"] .comparison-table {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 18px 48px rgba(16, 24, 40, 0.075);
}

html[data-theme="light"] .table-header {
    background: #f8fafc;
    border-bottom-color: rgba(16, 24, 40, 0.11);
}

html[data-theme="light"] .table-header-cell {
    color: #101828;
}

html[data-theme="light"] .table-header-cell.highlight {
    background: #182235;
    color: #ffffff;
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.08), inset -1px 0 0 rgba(255, 255, 255, 0.08);
}

html[data-theme="light"] .table-row {
    border-bottom-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .table-row:hover {
    background: rgba(16, 24, 40, 0.025);
}

html[data-theme="light"] .table-cell:first-child {
    color: #475467;
}

html[data-theme="light"] .table-cell.highlight {
    background: #f3f6fb;
    box-shadow: inset 1px 0 0 rgba(16, 24, 40, 0.045), inset -1px 0 0 rgba(16, 24, 40, 0.045);
}

html[data-theme="light"] .check-icon {
    background: #182235;
    box-shadow: 0 6px 14px rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .check-icon svg {
    color: #ffffff;
}

html[data-theme="light"] .dash {
    background: #667085;
}

html[data-theme="light"] .cell-value {
    color: #101828;
}

html[data-theme="light"] .map-city-pill,
html[data-theme="light"] .map-city-pill strong {
    color: #101828;
}

html[data-theme="light"] .backer-card:hover,
html[data-theme="light"] .alumni-card:hover,
html[data-theme="light"] .resource-card:hover,
html[data-theme="light"] .report-card:hover,
html[data-theme="light"] .solution-card:hover {
    background: #ffffff;
    border-color: rgba(37, 99, 235, 0.28);
    box-shadow: 0 16px 42px rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .report-date-badge {
    color: #ffffff;
    background: rgba(16, 24, 40, 0.82);
    border-color: rgba(255, 255, 255, 0.18);
}

html[data-theme="light"] .report-date-badge svg {
    color: #ffffff;
}

html[data-theme="light"] .backer-stage-header {
    border-bottom-color: rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .backer-stage-chip {
    font-weight: 700;
    color: #344054;
    background: #ffffff;
    border: 1px solid rgba(16, 24, 40, 0.14);
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

html[data-theme="light"] .backer-stage-chip.stage-Seed {
    color: #3154c7;
    background: #eef3ff;
    border-color: #b7c6ff;
}

html[data-theme="light"] .backer-stage-chip.stage-SeriesA {
    color: #1d4ed8;
    background: #eff6ff;
    border-color: #93c5fd;
}

html[data-theme="light"] .backer-stage-chip.stage-SeriesB,
html[data-theme="light"] .backer-stage-chip.stage-SeriesBp,
html[data-theme="light"] .backer-stage-chip.stage-SeriesCp,
html[data-theme="light"] .backer-stage-chip.stage-Late {
    color: #6d28d9;
    background: #f5f3ff;
    border-color: #c4b5fd;
}

html[data-theme="light"] .backer-stage-count {
    color: #667085;
}

html[data-theme="light"] .backer-card {
    gap: 0.95rem;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(16, 24, 40, 0.045);
}

html[data-theme="light"] .backer-card.is-static:hover {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 10px 28px rgba(16, 24, 40, 0.045);
}

html[data-theme="light"] .backer-logo {
    width: 38px;
    height: 38px;
    padding: 5px;
    border-radius: 9px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-color: rgba(16, 24, 40, 0.12);
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.08),
        0 0 0 1px rgba(255, 255, 255, 0.82) inset;
}

html[data-theme="light"] .backer-logo img {
    width: 100%;
    height: 100%;
    padding: 0;
    border-radius: 5px;
    object-fit: contain;
    filter: contrast(0.9) saturate(0.96);
}

html[data-theme="light"] .backer-logo .backer-mono {
    border-radius: 5px;
    background: #f8fafc;
    color: #344054;
    border: 1px solid rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .backer-show-more {
    color: #1d4ed8;
    background: #eff6ff;
    border-color: #93c5fd;
}

html[data-theme="light"] .backer-show-more:hover {
    color: #1e40af;
    background: #dbeafe;
    border-color: #60a5fa;
}

html[data-theme="light"] .hero-eyebrow,
html[data-theme="light"] .section-eyebrow {
    color: var(--eyebrow);
}

html[data-theme="light"] .hero-subtitle .pill {
    color: #5b21b6;
    background: #f5f3ff;
    border-color: #c4b5fd;
}

html[data-theme="light"] .kpi-label,
html[data-theme="light"] .hero-stat-label,
html[data-theme="light"] .ranking-strip-label,
html[data-theme="light"] .sparkcard-label,
html[data-theme="light"] .dir-section-meta,
html[data-theme="light"] .dir-tab,
html[data-theme="light"] .dir-tab-count,
html[data-theme="light"] .breadcrumbs,
html[data-theme="light"] .hero-breadcrumb {
    color: rgba(16, 24, 40, 0.68);
}

html[data-theme="light"] .breadcrumbs a,
html[data-theme="light"] .hero-breadcrumb a {
    color: rgba(16, 24, 40, 0.72);
}

html[data-theme="light"] .breadcrumbs a:hover,
html[data-theme="light"] .hero-breadcrumb a:hover {
    color: #101828;
}

html[data-theme="light"] .breadcrumbs [aria-current="page"],
html[data-theme="light"] .hero-breadcrumb .current {
    color: #101828;
}

html[data-theme="light"] .kpi-range-caption,
html[data-theme="light"] .sparkcard-foot,
html[data-theme="light"] .head-kicker {
    color: rgba(16, 24, 40, 0.7);
}

html[data-theme="light"] .kpi-yoy.up,
html[data-theme="light"] .delta,
html[data-theme="light"] .rank-chip .rank-num,
html[data-theme="light"] .rank-pct,
html[data-theme="light"] .feedback-cta-eyebrow {
    color: #3154c7;
}

html[data-theme="light"] .mm-pill.active {
    background: #3E64E0;
    border-color: #3E64E0;
    color: #ffffff;
}

html[data-theme="light"] .mm-pill.active .mm-pill-count {
    color: rgba(255, 255, 255, 0.92);
}

html[data-theme="light"] .mm-pill .mm-pill-count {
    color: rgba(16, 24, 40, 0.66);
}

html[data-theme="light"] .dir-hero-banner {
    color: #1d4ed8;
    background: #eff6ff;
    border-color: #93c5fd;
}

html[data-theme="light"] .profile-search-input {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(16, 24, 40, 0.14);
    color: #101828;
}

html[data-theme="light"] .entity-index-hero {
    background:
        radial-gradient(ellipse at 50% -24%, rgba(37, 99, 235, 0.12), rgba(255, 255, 255, 0) 60%),
        #ffffff;
}

html[data-theme="light"] .entity-search-input {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(16, 24, 40, 0.14);
    color: #101828;
    box-shadow: 0 14px 32px rgba(16, 24, 40, 0.08), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

html[data-theme="light"] .entity-search-input::placeholder {
    color: rgba(16, 24, 40, 0.58);
}

html[data-theme="light"] .entity-search-input:focus {
    outline-color: #2563eb;
    border-color: rgba(37, 99, 235, 0.45);
    box-shadow: 0 16px 38px rgba(37, 99, 235, 0.13), 0 0 0 3px rgba(37, 99, 235, 0.12);
}

html[data-theme="light"] .entity-card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 14px 34px rgba(16, 24, 40, 0.07);
}

html[data-theme="light"] .entity-card:hover {
    background: #ffffff;
    border-color: rgba(37, 99, 235, 0.28);
    box-shadow: 0 18px 44px rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] .entity-card-name,
html[data-theme="light"] .entity-card-stat .num {
    color: #101828;
}

html[data-theme="light"] .entity-card-rank,
html[data-theme="light"] .entity-card-stat .label {
    color: rgba(16, 24, 40, 0.6);
}

html[data-theme="light"] .entity-card-stat .label[title] {
    text-decoration-color: rgba(16, 24, 40, 0.42);
}

html[data-theme="light"] .entity-index-note {
    color: rgba(16, 24, 40, 0.58);
}

html[data-theme="light"] .entity-card-tag {
    background: #f8fafc;
    border-color: rgba(16, 24, 40, 0.1);
    color: rgba(16, 24, 40, 0.66);
}

html[data-theme="light"] .entity-platform-pill,
html[data-theme="light"] .entity-card-platform {
    color: #3154c7;
    background: #eef3ff;
    border-color: rgba(62, 100, 224, 0.24);
}

html[data-theme="light"] .entity-tab {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
    color: rgba(16, 24, 40, 0.72);
}

html[data-theme="light"] .entity-tab:hover {
    background: #f8fafc;
    border-color: rgba(16, 24, 40, 0.18);
    color: #101828;
}

html[data-theme="light"] .entity-tab.is-active {
    background: #eff6ff;
    border-color: rgba(37, 99, 235, 0.45);
    color: #101828;
}

html[data-theme="light"] .sparkcard,
html[data-theme="light"] .origin-col,
html[data-theme="light"] .feat-card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 14px 34px rgba(16, 24, 40, 0.055);
}

html[data-theme="light"] .sparkcard:hover,
html[data-theme="light"] .origin-col:hover,
html[data-theme="light"] .feat-card:hover {
    background: #ffffff;
    border-color: rgba(37, 99, 235, 0.22);
    box-shadow: 0 18px 44px rgba(16, 24, 40, 0.085);
}

html[data-theme="light"] .sparkpoint-tooltip {
    border-color: rgba(79, 70, 229, 0.18);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 30px rgba(30, 41, 59, 0.16);
    color: #111827;
}

html[data-theme="light"] .sparkcard-num,
html[data-theme="light"] .origin-row .origin-count,
html[data-theme="light"] .feat-card-name,
html[data-theme="light"] .feat-card-meta strong {
    color: #101828;
}

html[data-theme="light"] .sparkcard-label,
html[data-theme="light"] .origin-col-eyebrow {
    color: rgba(16, 24, 40, 0.62);
}

html[data-theme="light"] .sparkcard-foot,
html[data-theme="light"] .origin-rank,
html[data-theme="light"] .feat-card-meta {
    color: rgba(16, 24, 40, 0.64);
}

html[data-theme="light"] .origin-row .origin-name,
html[data-theme="light"] .origin-row .origin-name a {
    color: rgba(16, 24, 40, 0.72);
}

html[data-theme="light"] .origin-row .origin-name a:hover {
    color: #101828;
}

html[data-theme="light"] .origin-row .origin-bar {
    background: #edf1f6;
}

html[data-theme="light"] .origin-row .origin-bar-fill {
    background: linear-gradient(90deg, #5276c9, #7a6bb8);
}

html[data-theme="light"] .sparkcard-spark path:first-of-type {
    fill: rgba(82, 118, 201, 0.09);
}

html[data-theme="light"] .sparkcard-spark path[stroke] {
    stroke: rgba(82, 118, 201, 0.62);
}

html[data-theme="light"] .feat-card-logo {
    background: #ffffff;
    border: 1px solid rgba(16, 24, 40, 0.12);
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .feat-card-tier.tier-titan {
    color: #991b1b;
    background: #fee2e2;
    border-color: #fecaca;
}

html[data-theme="light"] .feat-card-tier.tier-decacorn,
html[data-theme="light"] .feat-card-tier.tier-unicorn {
    color: #5b21b6;
    background: #f5f3ff;
    border-color: #c4b5fd;
}

html[data-theme="light"] .feat-card-tier.tier-thoroughbred {
    color: #1d4ed8;
    background: #eff6ff;
    border-color: #93c5fd;
}

html[data-theme="light"] .feat-card-tier.tier-colt {
    color: #3154c7;
    background: #eef3ff;
    border-color: #b7c6ff;
}

html[data-theme="light"] .hot-row {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 10px 28px rgba(16, 24, 40, 0.045);
}

html[data-theme="light"] a.hot-row:hover {
    background: #ffffff;
    border-color: rgba(180, 83, 9, 0.24);
    box-shadow: 0 14px 36px rgba(16, 24, 40, 0.075);
}

html[data-theme="light"] .hot-name {
    color: #101828;
}

html[data-theme="light"] .hot-rank {
    color: #b45309;
}

html[data-theme="light"] .hot-chip.is-up {
    color: #3154c7;
    background: #eef3ff;
    border-color: rgba(62, 100, 224, 0.22);
}

html[data-theme="light"] .hot-chip.is-down {
    color: #b42318;
    background: #fef3f2;
    border-color: rgba(180, 35, 24, 0.22);
}

html[data-theme="light"] .hot-bar-track {
    background: #edf1f6;
}

html[data-theme="light"] .hot-bar-fill {
    background: linear-gradient(90deg, #c97732, #b45309);
}

html[data-theme="light"] .hot-arrow,
html[data-theme="light"] .hot-foot {
    color: rgba(16, 24, 40, 0.56);
}

html[data-theme="light"] .teaser-card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 14px 34px rgba(16, 24, 40, 0.055);
}

html[data-theme="light"] .teaser-eyebrow,
html[data-theme="light"] .teaser-label {
    color: rgba(16, 24, 40, 0.62);
}

html[data-theme="light"] .teaser-title {
    color: #101828;
}

html[data-theme="light"] .teaser-row {
    border-top-color: rgba(16, 24, 40, 0.07);
}

html[data-theme="light"] .teaser-bar {
    background: linear-gradient(90deg, rgba(82, 118, 201, 0.34), rgba(122, 107, 184, 0.24));
    opacity: 0.7;
}

html[data-theme="light"] .teaser-fade {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), #ffffff 88%);
}

html[data-theme="light"] .teaser-cta {
    color: #1d4ed8;
}

html[data-theme="light"] .teaser-cta:hover {
    color: #1e40af;
}

html[data-theme="light"] .profile-search-input::placeholder,
html[data-theme="light"] .profile-search-icon {
    color: rgba(16, 24, 40, 0.62);
}

html[data-theme="light"] .profile-search-pop {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
    box-shadow: 0 20px 50px rgba(16, 24, 40, 0.14);
}

html[data-theme="light"] .profile-search-row:hover,
html[data-theme="light"] .profile-search-row.is-active {
    background: rgba(37, 99, 235, 0.07);
}

html[data-theme="light"] .role-badge.role-angel {
    color: #92400e;
    background: #fffbeb;
    border-color: #f59e0b;
}

html[data-theme="light"] .role-badge.role-founder {
    color: #1e40af;
    background: #eff6ff;
    border-color: #93c5fd;
}

html[data-theme="light"] .pinned-badge,
html[data-theme="light"] .feat-card-tier.tier-decacorn {
    color: #5b21b6;
    background: #f5f3ff;
    border-color: #c4b5fd;
}

html[data-theme="light"] .pinned-card {
    color: #101828 !important;
    background: #ffffff !important;
    border-color: #e4e7ec !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06) !important;
}

html[data-theme="light"] a.pinned-card:hover {
    color: #101828 !important;
    background: #ffffff !important;
    border-color: rgba(37, 99, 235, 0.28) !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 8px 24px rgba(16, 24, 40, 0.08) !important;
}

html[data-theme="light"] .pinned-card.is-coming-soon,
html[data-theme="light"] .pinned-card.is-coming-soon:hover {
    background: #ffffff !important;
    border-color: #e4e7ec !important;
}

html[data-theme="light"] .pinned-sub {
    color: #667085;
}

html[data-theme="light"] .academia-panel,
html[data-theme="light"] .peer-scatter-wrap,
html[data-theme="light"] .oi-panel {
    background: #ffffff !important;
    border: 1px solid #e4e7ec !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 16px 42px rgba(16, 24, 40, 0.07) !important;
}

html[data-theme="light"] .academia-panel {
    padding: 1.35rem 1.45rem !important;
}

html[data-theme="light"] .ac-head,
html[data-theme="light"] .ac-unis-head,
html[data-theme="light"] .patent-eyebrow,
html[data-theme="light"] .origin-col-eyebrow {
    color: #667085 !important;
}

html[data-theme="light"] .ac-unis-head {
    border-top-color: #e4e7ec !important;
}

html[data-theme="light"] .ac-stat,
html[data-theme="light"] .ac-uni {
    background: #f8fafc !important;
    border: 1px solid #e4e7ec !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.035) !important;
}

html[data-theme="light"] .ac-stat {
    border-left: 2px solid #3B82F6 !important;
}

html[data-theme="light"] .ac-stat-val,
html[data-theme="light"] .ac-uni-name,
html[data-theme="light"] .patent-headline-num,
html[data-theme="light"] .patent-status-chip strong,
html[data-theme="light"] .oi-name,
html[data-theme="light"] .oi-multiplier {
    color: #101828 !important;
}

html[data-theme="light"] .ac-stat-label,
html[data-theme="light"] .ac-uni-sub,
html[data-theme="light"] .ac-uni-pills-label,
html[data-theme="light"] .patent-headline-sub,
html[data-theme="light"] .oi-meta {
    color: #667085 !important;
}

html[data-theme="light"] .ac-uni-name {
    border-bottom-color: rgba(16, 24, 40, 0.16) !important;
}

html[data-theme="light"] .ac-uni-name:hover {
    border-bottom-color: #101828 !important;
}

html[data-theme="light"] .ac-uni-pill,
html[data-theme="light"] .patent-status-chip {
    color: #344054 !important;
    background: #ffffff !important;
    border-color: rgba(16, 24, 40, 0.12) !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04) !important;
}

html[data-theme="light"] .patent-summary,
html[data-theme="light"] .patent-breakdown {
    background: #ffffff !important;
    border-color: #e4e7ec !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 14px 36px rgba(16, 24, 40, 0.065) !important;
}

html[data-theme="light"] .patent-status-chip.granted strong {
    color: #059669 !important;
}

html[data-theme="light"] .patent-status-chip.pending strong {
    color: #2563eb !important;
}

html[data-theme="light"] .patent-empty {
    color: #667085 !important;
    background: #f8fafc !important;
    border-color: #d0d5dd !important;
}

html[data-theme="light"] .patent-empty strong {
    color: #101828 !important;
}

/* ── Company profile · global footprint cards ───────────────────────
   Base styles use dark-only fills (rgba(0,0,0,.22) cards, rgba(255,255,255,*)
   bar tracks/segments) that turn muddy-gray or vanish on white. Re-skin them
   to the same white-card + visible-track treatment used by the patent cards. */
html[data-theme="light"] .footprint-card {
    background: #ffffff !important;
    border-color: #e4e7ec !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 14px 36px rgba(16, 24, 40, 0.065) !important;
}
html[data-theme="light"] .ai-talent-bar {
    background: rgba(16, 24, 40, 0.06) !important;
}
html[data-theme="light"] .ai-talent-bar .seg-non {
    background: rgba(16, 24, 40, 0.12) !important;
}
/* The Non-AI legend swatch carries an inline rgba(255,255,255,.18) fill that
   disappears on white — target it by its inline value (Core/Other use gradients). */
html[data-theme="light"] .ai-talent-dot[style*="rgba(255,255,255"],
html[data-theme="light"] .ai-talent-dot[style*="rgba(255, 255, 255"] {
    background: rgba(16, 24, 40, 0.18) !important;
}
html[data-theme="light"] .country-bar-track,
html[data-theme="light"] .patent-cat-bar {
    background: rgba(16, 24, 40, 0.08) !important;
}
/* Footprint workforce teaser (shown when a company has no FTE breakdown). */
html[data-theme="light"] .footprint-teaser-label {
    background: rgba(16, 24, 40, 0.1) !important;
}
html[data-theme="light"] .footprint-teaser-hq-tag {
    background: rgba(16, 24, 40, 0.06) !important;
}
html[data-theme="light"] .footprint-teaser-arrow {
    color: #475467 !important;
}

/* ── Company profile · peer radar (patent + capital-deployment) ──────
   The radar grid, axis spokes and labels are emitted as inline SVG
   presentation attributes hard-coded to white (built for dark mode). CSS
   beats presentation attributes, so re-color them for light mode. Scope to
   polygon/line/text only — data series are <path>/<circle> and keep their
   own colors. */
html[data-theme="light"] .pshape-radar polygon,
html[data-theme="light"] .pshape-radar line {
    stroke: rgba(16, 24, 40, 0.13);
}
html[data-theme="light"] .pshape-radar text {
    fill: rgba(16, 24, 40, 0.78);
}
html[data-theme="light"] .pshape-chart-head {
    border-bottom-color: rgba(16, 24, 40, 0.08);
}
html[data-theme="light"] .pshape-foot {
    border-top-color: rgba(16, 24, 40, 0.08);
}

/* ── Profile logo tiles (company / investor / sector / country / people) ──
   Logo tiles must be theme-matched: a LIGHT tile in light mode, a DARK tile in
   dark mode. They previously backed logos with `var(--white)` (which inverts to
   dark navy in light mode) or a fixed white (#fff), so tiles came out reversed —
   dark on the light page, or bright white on the dark page. The pair
   --logo-tile-bg / --logo-tile-border (token blocks at the top of this file)
   now carries the rule; new surfaces should consume the tokens directly in
   their base rule. The selector list below exists for legacy surfaces whose
   base rules live in built pages or in css files pinned by thousands of
   ?v= references — the [data-theme] specificity (0,2,1) out-ranks their
   var(--white) base. (Opaque white-background logo *images* still read white
   in dark mode — that's image content, not the frame.) */
html[data-theme] .hero-logo,
html[data-theme] .hero-logo.is-fallback,
html[data-theme] .hist-logo,
html[data-theme] .exit-card-logo,
html[data-theme] .hold-logo:not(.hold-logo-lock),
html[data-theme] .mm-chip-logo,
html[data-theme] .backer-logo,
html[data-theme] .dir-card-logo:not(.is-person) {
    background: var(--logo-tile-bg);
    border: 1px solid var(--logo-tile-border);
}
html[data-theme="light"] .hero-logo-fallback,
html[data-theme="light"] .hist-logo .logo-fallback {
    color: #101828;
}

/* ── Investor profile · comparison radar + line charts ──────────────
   Same dark-only white SVG attributes as the company radar. Recolor grid
   + axis labels via CSS (beats SVG presentation attrs); attribute
   selectors leave the colored data series + value labels untouched. */
html[data-theme="light"] .cmp-radar [stroke^="rgba(255,255,255"] {
    stroke: rgba(16, 24, 40, 0.13);
}
html[data-theme="light"] .cmp-line [stroke^="rgba(255,255,255"] {
    stroke: rgba(16, 24, 40, 0.08);
}
html[data-theme="light"] .cmp-radar text.cmp-radar-label {
    fill: rgba(16, 24, 40, 0.78);
}
html[data-theme="light"] .cmp-line text[fill^="rgba(255,255,255"] {
    fill: rgba(16, 24, 40, 0.55);
}

/* ── Investor profile · comparison toolbar buttons ──────────────────
   "Find similar shapes" (purple) + "Download PNG" (blue) hard-code
   dark-mode pale text inline (#C4B5FD / #BFDBFE), so they wash out on
   the light surface. Repaint the text with contrast-safe accent ink and
   firm up the tint; the rounded-pill look is preserved. */
html[data-theme="light"] .cmp-similar {
    background: rgba(124, 58, 237, 0.08);
    border-color: rgba(124, 58, 237, 0.35);
    color: var(--purple);
}
html[data-theme="light"] .cmp-similar:hover {
    background: rgba(124, 58, 237, 0.16);
    border-color: rgba(124, 58, 237, 0.55);
}
html[data-theme="light"] .cmp-download {
    background: rgba(59, 130, 246, 0.1);
    border-color: rgba(59, 130, 246, 0.42);
    color: var(--blue-ink);
}
html[data-theme="light"] .cmp-download:hover {
    background: rgba(59, 130, 246, 0.16);
    border-color: rgba(59, 130, 246, 0.62);
    color: var(--blue-ink);
}

/* ── Bar tracks / chips / quote blocks that use white (or black) overlays
   and turn invisible (or muddy) on a white surface. */
html[data-theme="light"] .pa-bar,
html[data-theme="light"] .cmp-beyond-track,
html[data-theme="light"] .cmp-sector-bar,
html[data-theme="light"] .mm-box-bar {
    background: rgba(16, 24, 40, 0.06);
}
html[data-theme="light"] .feat-strip-chip {
    background: rgba(16, 24, 40, 0.04);
}
html[data-theme="light"] .theme-quote {
    background: rgba(16, 24, 40, 0.03);
}

/* ── People profile · faint source line + neutral tier badge. */
html[data-theme="light"] .hist-source {
    color: rgba(16, 24, 40, 0.5);
}
html[data-theme="light"] .tier-gray {
    background: rgba(16, 24, 40, 0.05);
}

/* ── Deals "portfolio market map" company chips (.mm-chip) ───────────
   The chip fill + outline are white overlays (rgba(255,255,255,.04/.07))
   that vanish on white, leaving company names with no structure. Give the
   chip a faint dark fill + border, keep the logo tile white (var(--white)
   inverts to dark) and recolor its fallback monogram + the neutral stage
   badge that also rode on white. */
html[data-theme="light"] .mm-chip {
    background: rgba(16, 24, 40, 0.025);
    border-color: rgba(16, 24, 40, 0.11);
}
html[data-theme="light"] .mm-chip-logo {
    background: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.06);
}
html[data-theme="light"] .mm-chip-logo .mm-mono {
    color: #101828;
}
html[data-theme="light"] .mm-chip-stage.stage-Other {
    color: rgba(16, 24, 40, 0.6);
    background: rgba(16, 24, 40, 0.06);
}
/* The *coloured* stage badges (entry-round chips on portfolio market-map
   pills, and the sibling .backer-stage-chip on company profiles) hard-code a
   dark-mode PALE ink — #6EE7B7 green, #93C5FD blue, #C4B5FD/#DDD6FE purple,
   #FBCFE8 pink, #FCD34D amber — that washes out on the light surface, the
   same root cause as the comparison toolbar above. Repaint each with a
   hue-matched, AA-safe dark ink (≥4.5:1 over the faint coloured tint, which
   is kept so the badge still reads as that hue). Light-scoped only — dark
   mode keeps the original pale palette. */
html[data-theme="light"] .mm-chip-stage.stage-Seed,
html[data-theme="light"] .backer-stage-chip.stage-Seed {
    color: #047857; /* emerald-700 — no shared green token in the light block */
}
html[data-theme="light"] .mm-chip-stage.stage-SeriesA,
html[data-theme="light"] .backer-stage-chip.stage-SeriesA {
    color: var(--blue-ink);
}
html[data-theme="light"] .mm-chip-stage.stage-SeriesBp,
html[data-theme="light"] .mm-chip-stage.stage-SeriesB,
html[data-theme="light"] .mm-chip-stage.stage-SeriesCp,
html[data-theme="light"] .backer-stage-chip.stage-SeriesBp {
    color: var(--purple);
}
html[data-theme="light"] .mm-chip-stage.stage-Late {
    color: #be185d; /* rose-700 — no shared pink token in the light block */
}
html[data-theme="light"] .mm-chip-stage.stage-MA {
    color: var(--amber-ink);
}
/* "+ N more" / "Show more backers" pills also rode on pale-blue text + a
   barely-there fill; match the comparison Download-PNG button treatment. */
html[data-theme="light"] .mm-boxes-more button,
html[data-theme="light"] .backer-show-more {
    background: rgba(59, 130, 246, 0.1);
    border-color: rgba(59, 130, 246, 0.42);
    color: var(--blue-ink);
}
html[data-theme="light"] .mm-boxes-more button:hover,
html[data-theme="light"] .backer-show-more:hover {
    background: rgba(59, 130, 246, 0.16);
    border-color: rgba(59, 130, 246, 0.62);
    color: var(--blue-ink);
}

html[data-theme="light"] .peer-scatter-wrap {
    max-width: 680px !important;
    padding: 1rem !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    border-color: #9ebcff !important;
}

html[data-theme="light"] .peer-scatter text {
    fill: #475467 !important;
}

html[data-theme="light"] .peer-scatter .ps-label {
    fill: rgba(16, 24, 40, 0.74) !important;
    opacity: 0.82 !important;
}

html[data-theme="light"] .peer-scatter .ps-dot.is-self .ps-label {
    fill: #b45309 !important;
    font-weight: 700 !important;
    opacity: 1 !important;
}

html[data-theme="light"] .peer-scatter .ps-mark {
    fill: #8b5cf6 !important;
    fill-opacity: 0.86 !important;
    stroke: rgba(16, 24, 40, 0.28) !important;
}

html[data-theme="light"] .peer-scatter .ps-dot.is-self .ps-mark {
    fill: #f59e0b !important;
    fill-opacity: 1 !important;
    stroke: #b45309 !important;
}

html[data-theme="light"] .peer-scatter text[text-anchor="end"],
html[data-theme="light"] .peer-scatter text[text-anchor="middle"] {
    fill: #667085 !important;
}

html[data-theme="light"] .peer-bar:hover {
    background: rgba(16, 24, 40, 0.035) !important;
}

html[data-theme="light"] .peer-bar.is-self {
    background: rgba(245, 158, 11, 0.08) !important;
    box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.28) !important;
}

html[data-theme="light"] .peer-bar .peer-name,
html[data-theme="light"] .peer-val {
    color: #344054 !important;
}

html[data-theme="light"] .peer-bar.is-self .peer-name,
html[data-theme="light"] .peer-bar.is-self .peer-val {
    color: #101828 !important;
}

html[data-theme="light"] .peer-bar-track {
    background: #eef2f7 !important;
}

/* Comparison explorer toggle — the segmented control. Base layout + token
   colours are in entity-profile.css; here we give the track and the active
   "raised" chip explicit per-mode surfaces (tokens invert awkwardly for a
   raised-chip look, so we set them directly in both modes). */
html[data-theme="light"] .cmp-toggle {
    background: #eef1f6;
    border-color: rgba(16, 24, 40, 0.1);
}
html[data-theme="light"] .cmp-tab {
    color: #475467;
}
html[data-theme="light"] .cmp-tab:hover {
    color: #101828;
}
html[data-theme="light"] .cmp-tab[aria-selected="true"] {
    background: #ffffff;
    color: #101828;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.14), 0 1px 1px rgba(16, 24, 40, 0.06);
}
html[data-theme="dark"] .cmp-tab[aria-selected="true"] {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

/* VC investment widgets (continent profiles) — light surfaces/tints. The dark
   defaults live in entity-profile.css; text uses tokens that already flip, so
   only the hard-coded surfaces/tints/tooltip need light overrides here. */
html[data-theme="light"] .vc-flows-card,
html[data-theme="light"] .vc-leaders-card {
    background: #ffffff !important;
    border-color: rgba(16, 24, 40, 0.11) !important;
    box-shadow: 0 14px 34px rgba(16, 24, 40, 0.055) !important;
}
html[data-theme="light"] .vc-grid-line {
    border-top-color: rgba(16, 24, 40, 0.09) !important;
}
html[data-theme="light"] .vc-flows-tip {
    background: rgba(255, 255, 255, 0.97) !important;
    border-color: rgba(16, 24, 40, 0.12) !important;
    box-shadow: 0 14px 30px rgba(30, 41, 59, 0.16) !important;
}
html[data-theme="light"] .vc-toggle {
    background: #f2f4f7 !important;
    border-color: #e4e7ec !important;
}
html[data-theme="light"] .vc-control-pill {
    background: #f2f4f7 !important;
    border-color: #e4e7ec !important;
    color: #475467 !important;
}
html[data-theme="light"] .vc-control-pill:hover {
    background: #e4e7ec !important;
    color: #101828 !important;
}
html[data-theme="light"] .vc-control-pill.is-on {
    background: #ffffff !important;
    border-color: #d0d5dd !important;
    color: #101828 !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08) !important;
}
html[data-theme="light"] .vc-year-range-track {
    background: #e4e7ec !important;
}
/* EMEA metro ranking (.mxr-*, /regions/emea/) — light bar-track surface; all
   text uses tokens that already flip. */
html[data-theme="light"] .mxr-card { --mxr-compare: #C9B49C; } /* theme-guardrail-allow: muted compare fill, light theme */
html[data-theme="light"] .npa-map-card { --npa-land: #E4E4DF; --npa-land-line: #CDCDC7; --npa-conn: #2B2B45; } /* theme-guardrail-allow: map palette tokens, light theme */
html[data-theme="light"] .mxr-track {
    background: #eef1f5 !important;
}
html[data-theme="light"] .mxr-retry {
    border-color: #d0d5dd !important;
    color: #101828 !important;
}
html[data-theme="light"] .mxr-mini {
    background: #eef1f5 !important;
}
html[data-theme="light"] .mxr-chip {
    background: #f2f4f7 !important;
    border-color: #e4e7ec !important;
}
html[data-theme="light"] .mxr-add {
    background: #ffffff !important;
    border-color: #d0d5dd !important;
}
html[data-theme="light"] .mxr-add-list {
    background: #ffffff !important;
    border-color: rgba(16, 24, 40, 0.12) !important;
    box-shadow: 0 14px 30px rgba(30, 41, 59, 0.16) !important;
}
html[data-theme="light"] .mxr-add-item:hover {
    background: #f2f4f7 !important;
}
html[data-theme="light"] .vc-year-input::-webkit-slider-thumb {
    background: #ffffff !important;
    box-shadow: 0 2px 8px rgba(16, 24, 40, 0.18) !important;
}
html[data-theme="light"] .vc-year-input::-moz-range-thumb {
    background: #ffffff !important;
    box-shadow: 0 2px 8px rgba(16, 24, 40, 0.18) !important;
}
html[data-theme="light"] .vc-toggle-btn.is-on {
    background: #ffffff !important;
    color: #101828 !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08) !important;
}
html[data-theme="light"] .vc-year-select {
    background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-opacity='0.9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 0.55rem center !important;
    border-color: #d0d5dd !important;
}
/* Flows-chart location/scope dropdown — the one vc-flows control that was
   missing its light counterpart, so its dark rgba(255,255,255,…) border/fill
   vanished on the white card. Same treatment as .vc-year-select above. */
html[data-theme="light"] .vc-location-select {
    background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-opacity='0.9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 0.7rem center !important;
    border-color: #d0d5dd !important;
}
html[data-theme="light"] .vc-location-select:hover {
    background-color: #f2f4f7 !important;
}
html[data-theme="light"] .vc-bar:hover {
    background: rgba(16, 24, 40, 0.035) !important;
}
html[data-theme="light"] .vc-bar-track {
    background: #eef2f7 !important;
}
html[data-theme="light"] .vc-png-btn {
    color: rgba(16, 24, 40, 0.7) !important;
    background: rgba(16, 24, 40, 0.04) !important;
    border-color: rgba(16, 24, 40, 0.12) !important;
}
html[data-theme="light"] .vc-png-btn:hover {
    background: rgba(16, 24, 40, 0.08) !important;
    color: #101828 !important;
}
/* Sector share-of-VC chart (cross-cutting sector pages) — same split as the
   widgets above: text/labels use flipping tokens, so only the hard-coded
   dark surfaces and SVG strokes need light counterparts. */
html[data-theme="light"] .vc-share-chip {
    background: #f2f4f7 !important;
    border-color: #e4e7ec !important;
}
html[data-theme="light"] .vc-share-chip.is-error {
    border-color: rgba(217, 45, 32, 0.42) !important;
}
html[data-theme="light"] .vc-share-chip-status,
html[data-theme="light"] .vc-share-chip-retry {
    border-left-color: rgba(16, 24, 40, 0.12) !important;
}
html[data-theme="light"] .vc-share-select {
    background: #ffffff !important;
    border-color: #d0d5dd !important;
}
html[data-theme="light"] .vc-share-select:hover:not(:disabled) {
    background: #f2f4f7 !important;
}
html[data-theme="light"] .vcs-grid {
    stroke: rgba(16, 24, 40, 0.09) !important;
}
html[data-theme="light"] .vcs-cursor {
    stroke: rgba(16, 24, 40, 0.25) !important;
}

html[data-theme="light"] .collapsible-toggle {
    background: #ffffff !important;
    border-color: #d0d5dd !important;
    color: #344054 !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04) !important;
}

html[data-theme="light"] .collapsible-toggle:hover {
    background: #f8fafc !important;
    border-color: #98a2b3 !important;
    color: #101828 !important;
}

html[data-theme="light"] .collapsible.is-open .collapsible-toggle {
    color: #101828 !important;
}

html[data-theme="light"] .ovr-tbl thead th {
    color: #667085 !important;
    border-bottom-color: #d0d5dd !important;
}

html[data-theme="light"] .ovr-tbl tbody td {
    color: #475467 !important;
    border-bottom-color: #edf0f5 !important;
}

html[data-theme="light"] .ovr-tbl tbody tr:hover {
    background: #f8fafc !important;
}

html[data-theme="light"] .ovr-tbl tbody tr.is-self {
    background: #fff7ed !important;
}

html[data-theme="light"] .ovr-tbl tbody tr.is-self td,
html[data-theme="light"] .ovr-tbl tbody tr.is-self .ovr-name a {
    color: #101828 !important;
}

html[data-theme="light"] .ovr-tbl .ovr-name a {
    color: #344054 !important;
}

html[data-theme="light"] .peer-scatter-tip {
    color: #101828 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border-color: rgba(16, 24, 40, 0.12) !important;
    box-shadow: 0 18px 42px rgba(16, 24, 40, 0.16) !important;
}

html[data-theme="light"] .peer-scatter-tip .pst-meta {
    color: #667085 !important;
}

html[data-theme="light"] .oi-panel {
    gap: 0.6rem !important;
    padding: 0.9rem !important;
}

html[data-theme="light"] .oi-row {
    background: #ffffff !important;
    border-color: #e4e7ec !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.035) !important;
}

html[data-theme="light"] .oi-row:hover {
    background: #f8fafc !important;
    border-color: rgba(37, 99, 235, 0.24) !important;
}

html[data-theme="light"] .oi-bar-track {
    background: #eef2f7 !important;
}

html[data-theme="light"] .oi-row[data-direction="under"] .oi-multiplier {
    color: #667085 !important;
}

html[data-theme="light"] .feat-card-tier.tier-titan {
    color: #991b1b;
    background: #fee2e2;
    border-color: #fecaca;
}

html[data-theme="light"] .browse-count,
html[data-theme="light"] .filter-bar-label {
    color: rgba(16, 24, 40, 0.7);
}

html[data-theme="light"] .peer-rank {
    color: rgba(16, 24, 40, 0.68);
}

html[data-theme="light"] .dashboard-preview {
    background: #ffffff;
    color: #101828;
    border: 1px solid rgba(16, 24, 40, 0.08);
    box-shadow: 0 24px 70px rgba(16, 24, 40, 0.12), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

html[data-theme="light"] .dashboard-chrome {
    background: #f8fafc;
    border-bottom-color: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .chrome-url {
    background: #ffffff;
    color: #667085;
    border: 1px solid rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .dashboard-body {
    background: #ffffff;
    color: #101828;
}

html[data-theme="light"] .dashboard-sidebar {
    background: #f8fafc;
    border-right: 1px solid rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .sidebar-icon {
    color: #667085;
}

html[data-theme="light"] .sidebar-icon:hover,
html[data-theme="light"] .sidebar-icon.active {
    background: #edf4ff;
    color: #2563eb;
}

html[data-theme="light"] .dashboard-main {
    background: #f8fafc;
}

html[data-theme="light"] .dash-continuous,
html[data-theme="light"] .rank-card,
html[data-theme="light"] .news-timeline,
html[data-theme="light"] .cp-header,
html[data-theme="light"] .cp-card,
html[data-theme="light"] .dash-card,
html[data-theme="light"] .audience-chart,
html[data-theme="light"] .pa-card,
html[data-theme="light"] .talent-graph,
html[data-theme="light"] .pshape-chart {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    color: #101828;
}

/* The .pa-card portfolio panel, the .talent-graph radar, and the peer radars
   (.pshape-chart — patent tech-focus + capital-deployment) read flat in light
   mode: .pa-card/.talent-graph were white-on-off-white with no elevation, and
   the peer radars were worse — their base fill is a near-transparent white, so
   they showed the #F7F8FB floor straight through and looked like a grey slab
   (QA-flagged). The rule above repaints them solid white; add the site's
   standard subtle card shadow so they lift off the #F7F8FB floor. Other profile
   cards already carry their own elevation. Dark mode keeps its
   lighter-card-on-darker-bg look. */
html[data-theme="light"] .talent-graph,
html[data-theme="light"] .pa-card,
html[data-theme="light"] .pshape-chart {
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .dash-map-container {
    background: linear-gradient(180deg, #eef5ff 0%, #f8fbff 100%);
}

html[data-theme="light"] .dash-map-svg .continent,
html[data-theme="light"] .dash-map-svg .country {
    fill: #d7e0ec;
    stroke: #f8fafc;
}

/* Portfolio market-map (investor profiles, Section 01): the inline land paths
   are filled/stroked with translucent white for the dark map, so the whole
   landmass disappears on the light surface — leaving the tier dots floating on
   blank space. Flip to translucent dark ink so the continents read on light. */
html[data-theme="light"] .mm-map-countries path {
    fill: rgba(16, 24, 40, 0.09);
    stroke: rgba(16, 24, 40, 0.18);
}
html[data-theme="light"] .mm-map-countries path.mm-map-active {
    fill: rgba(37, 99, 235, 0.18);
}

/* Comparison/portfolio metric + region dropdowns (.cmp-region): the inline
   style fills the pill with translucent white and draws a hardcoded white
   chevron, so on the light card it's a near-invisible white pill with no
   visible arrow. Give it a faint dark-tint fill, a readable border, and a
   dark chevron in light mode. (Text already uses var(--white) = dark ink.) */
html[data-theme="light"] .cmp-region {
    background-color: rgba(16, 24, 40, 0.04);
    border-color: rgba(16, 24, 40, 0.18);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='none' stroke='%23475467' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1l4 4 4-4'/></svg>");
}
html[data-theme="light"] .cmp-region:hover {
    background-color: rgba(16, 24, 40, 0.07);
}

/* Profile-card watermark (.origin-card/.mm-card/.cmp-card ::after) uses the
   white Dealroom logo, which vanishes on the light cards. Swap to the darkblue
   logo in light mode so the watermark stays faintly visible. (PNG export forces
   a dark frame, so the export's white watermark is unaffected by this.) */
html[data-theme="light"] .origin-card::after,
html[data-theme="light"] .mm-card::after,
html[data-theme="light"] .cmp-card::after {
    background-image: url("/dealroom-logo-darkblue.svg");
}

/* Partner/client/network logo grids across the landing pages force their logos
   to white (filter: brightness(0) invert(1)) for the dark theme, so the logos
   vanish on the light surface. Drop the invert in light mode so they render as
   dark monochrome marks. One leveraged override (out-specifies the per-page
   inline rules); chart embeds / OG social cards are always-dark and excluded. */
/* Target only the <img> (".X img" for wrapper classes, "img.X" for the class
   applied directly to the image) — never a wrapper div, or we'd darken the
   whole logo cell (incl. its white background), not just the mark. */
html[data-theme="light"] .logo-item img, html[data-theme="light"] img.logo-item,
html[data-theme="light"] .client-logo img, html[data-theme="light"] img.client-logo,
html[data-theme="light"] .network-logo img, html[data-theme="light"] img.network-logo,
html[data-theme="light"] .hero-partners-logos img, html[data-theme="light"] img.hero-partners-logos,
html[data-theme="light"] .media-ticker-logo img, html[data-theme="light"] img.media-ticker-logo,
html[data-theme="light"] .trusted-logos img, html[data-theme="light"] img.trusted-logos,
html[data-theme="light"] .toc-partner img, html[data-theme="light"] img.toc-partner,
html[data-theme="light"] .prosus-logo img, html[data-theme="light"] img.prosus-logo,
html[data-theme="light"] .wipo-logo img, html[data-theme="light"] img.wipo-logo {
    /* !important so this theme-layer override beats the per-page inline rules
       (some, e.g. .hero-logos img.wipo-logo, match this specificity and load
       later in the cascade). */
    filter: brightness(0) !important;
}

/* Spinout-submission "Data Template" panel (.tab-card on the wipo + elsevier
   pages) is dark-first: background: var(--white) (→ dark surface in light) with
   a var(--navy) heading (→ pale, invisible in light) — a dark card with hidden
   text in light mode. Re-pin to a pale card with dark ink. */
html[data-theme="light"] .tab-card {
    background: var(--navy);
}
html[data-theme="light"] .tab-card h2 {
    color: var(--white);
}

html[data-theme="light"] .dash-triple-grid,
html[data-theme="light"] .dash-col + .dash-col,
html[data-theme="light"] .signal-item,
html[data-theme="light"] .sector-row,
html[data-theme="light"] .startup-row,
html[data-theme="light"] .rank-row,
html[data-theme="light"] .aud-founder-row + .aud-founder-row,
html[data-theme="light"] .aud-match-row + .aud-match-row,
html[data-theme="light"] .aud-mock-header {
    border-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .dash-col-title,
html[data-theme="light"] .sector-meta,
html[data-theme="light"] .signal-meta,
html[data-theme="light"] .startup-time,
html[data-theme="light"] .startup-metric-label-single,
html[data-theme="light"] .rank-card-hint,
html[data-theme="light"] .rank-sub,
html[data-theme="light"] .rank-num,
html[data-theme="light"] .cp-card-sub,
html[data-theme="light"] .cp-head-sub,
html[data-theme="light"] .cp-kpi-label,
html[data-theme="light"] .aud-mock-title,
html[data-theme="light"] .aud-founder-meta,
html[data-theme="light"] .aud-founder-tag,
html[data-theme="light"] .aud-match-meta,
html[data-theme="light"] .aud-match-score .lbl,
html[data-theme="light"] .aud-filter-pill {
    color: #667085;
}

html[data-theme="light"] .signal-title,
html[data-theme="light"] .sector-name,
html[data-theme="light"] .startup-name,
html[data-theme="light"] .startup-metric-single,
html[data-theme="light"] .startup-metric-value,
html[data-theme="light"] .rank-card-title,
html[data-theme="light"] .rank-name,
html[data-theme="light"] .rank-value,
html[data-theme="light"] .cp-name,
html[data-theme="light"] .cp-card-title,
html[data-theme="light"] .cp-kpi-val,
html[data-theme="light"] .cp-sw-val,
html[data-theme="light"] .cp-rev-big,
html[data-theme="light"] .welcome-text,
html[data-theme="light"] .stat-label,
html[data-theme="light"] .stat-value,
html[data-theme="light"] .news-title,
html[data-theme="light"] .chart-title,
html[data-theme="light"] .aud-founder-name,
html[data-theme="light"] .aud-bar-label,
html[data-theme="light"] .aud-bar-value,
html[data-theme="light"] .aud-match-name {
    color: #101828;
}

html[data-theme="light"] .signal-title strong,
html[data-theme="light"] .alert-title strong {
    color: #2563eb;
}

/* Homepage dashboard experiment: keep app preview surfaces readable when
   light mode swaps the global --white/--navy tokens for page-level theming. */
html[data-theme="light"] .rank-card-header,
html[data-theme="light"] .rank-list,
html[data-theme="light"] .rank-row,
html[data-theme="light"] .news-timeline,
html[data-theme="light"] .cp-mafia-row,
html[data-theme="light"] .cp-pat-row {
    background: #ffffff;
}

html[data-theme="light"] .rank-card-header {
    border-bottom: 1px solid rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .rank-card-title,
html[data-theme="light"] .rank-name,
html[data-theme="light"] .rank-value,
html[data-theme="light"] .news-title,
html[data-theme="light"] .cp-mafia-name,
html[data-theme="light"] .cp-mafia-funding,
html[data-theme="light"] .cp-pat-title,
html[data-theme="light"] .cp-orig-num {
    color: #101828;
}

html[data-theme="light"] .rank-card-hint,
html[data-theme="light"] .rank-num,
html[data-theme="light"] .rank-sub,
html[data-theme="light"] .news-meta,
html[data-theme="light"] .news-time,
html[data-theme="light"] .cp-mafia-meta,
html[data-theme="light"] .cp-pat-date {
    color: #667085;
}

html[data-theme="light"] .rank-list {
    background: #f8fafc;
}

html[data-theme="light"] .rank-row:hover {
    background: #f9fafb;
}

html[data-theme="light"] .news-filter {
    background: #ffffff;
    border-color: #d0d5dd;
    color: #344054;
}

html[data-theme="light"] .news-filter:hover {
    border-color: #98a2b3;
    color: #101828;
}

html[data-theme="light"] .news-filter.active {
    background: #101828;
    border-color: #101828;
    color: #ffffff;
}

html[data-theme="light"] .news-marker {
    background: #ffffff;
}

html[data-theme="light"] .news-item[data-type="headline"] .news-marker {
    background: #101828;
    border-color: #101828;
}

html[data-theme="light"] .news-item[data-type="headline"] .news-marker::after {
    background: #ffffff;
}

html[data-theme="light"] .cp-mafia-funding {
    background: #f4ebff;
    color: #6941c6;
}

html[data-theme="light"] .signal-avatar.icon,
html[data-theme="light"] .startup-logo,
html[data-theme="light"] .stat-label-icon,
html[data-theme="light"] .cp-badge {
    background: #eef2f7;
    color: #2563eb;
}

html[data-theme="light"] .global-network {
    background: #f6f8fb;
}

html[data-theme="light"] .clients,
html[data-theme="light"] .testimonials {
    background: #ffffff;
}

html[data-theme="light"] .clients {
    border-top: 1px solid rgba(16, 24, 40, 0.06);
    border-bottom: 1px solid rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .testimonial-card {
    background: #f8fafc;
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 12px 34px rgba(16, 24, 40, 0.05);
}

html[data-theme="light"] .testimonial-header,
html[data-theme="light"] .testimonial-name {
    color: #101828;
}

html[data-theme="light"] .testimonial-quote,
html[data-theme="light"] .testimonial-company,
html[data-theme="light"] .testimonials-label,
html[data-theme="light"] .clients-label {
    color: #667085;
}

html[data-theme="light"] .aud-card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 18px 48px rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .aud-card:hover {
    border-color: rgba(37, 99, 235, 0.24);
}

html[data-theme="light"] .aud-headline {
    color: #101828;
}

html[data-theme="light"] .aud-mock {
    background: #f8fafc;
    border-color: rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] .aud-filter-pill,
html[data-theme="light"] .aud-founder-tag {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] .aud-founder-avatar {
    border-color: #ffffff;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08), 0 6px 16px rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .aud-signal-badge.new {
    background: #EFF4FF;
    color: #1849A9;
}

html[data-theme="light"] .aud-signal-badge.hot {
    background: #FEF3F2;
    color: #B42318;
}

html[data-theme="light"] .aud-kicker.vc { color: #2563eb; }
html[data-theme="light"] .aud-kicker.public { color: #3154c7; }
html[data-theme="light"] .aud-kicker.corp { color: #7c3aed; }
html[data-theme="light"] .aud-kicker.build { color: var(--eyebrow); }

html[data-theme="light"] .aud-free-pill {
    background: rgba(245, 158, 11, 0.13);
    color: #b45309;
}

html[data-theme="light"] .aud-match-score {
    color: #b45309;
}

html[data-theme="light"] .aud-bar-track,
html[data-theme="light"] .sector-signal-bar-container {
    background: #e8edf5;
}

html[data-theme="light"] .aud-bar-row.yours .aud-bar-label,
html[data-theme="light"] .aud-bar-row.yours .aud-bar-value {
    color: #047857;
}

html[data-theme="light"] .aud-bar-row.yours .aud-bar-fill {
    background: linear-gradient(90deg, #059669, #10B981);
}

html[data-theme="light"] .aud-bubble-stage {
    background:
        radial-gradient(circle at 28% 24%, rgba(59, 130, 246, 0.12), transparent 52%),
        radial-gradient(circle at 78% 75%, rgba(16, 185, 129, 0.1), transparent 55%),
        linear-gradient(180deg, #ffffff, #f5f7fb);
    border: 1px solid rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .aud-bubble-stage::before {
    background-image: radial-gradient(rgba(59, 130, 246, 0.18) 1px, transparent 1.4px);
    opacity: 0.22;
}

html[data-theme="light"] .aud-radar-legend span {
    background: rgba(255, 255, 255, 0.88);
    border-color: rgba(37, 99, 235, 0.18);
    color: #1849A9;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
}

html[data-theme="light"] .aud-edge {
    stroke: rgba(37, 99, 235, 0.24);
}

html[data-theme="light"] .aud-node-label {
    fill: #ffffff;
}

html[data-theme="light"] .aud-node-val,
html[data-theme="light"] .aud-hub-label {
    fill: #DBEAFE;
}

html[data-theme="light"] .screenshot-wrapper,
html[data-theme="light"] .feature-visual,
html[data-theme="light"] .integration-visual,
html[data-theme="light"] .signals-visual {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 20px 55px rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .browser-chrome,
html[data-theme="light"] .screenshot-header,
html[data-theme="light"] .integration-window-bar {
    background: #f8fafc;
    border-bottom-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .browser-bar,
html[data-theme="light"] .screenshot-url,
html[data-theme="light"] .integration-window-url {
    background: #ffffff;
    border: 1px solid rgba(16, 24, 40, 0.08);
    color: #667085;
}

html[data-theme="light"] .mock-ui,
html[data-theme="light"] .mock-dashboard,
html[data-theme="light"] .mock-alerts,
html[data-theme="light"] .radar-mock,
html[data-theme="light"] .signals-table-mock {
    background: #f8fafc;
    color: #101828;
}

html[data-theme="light"] .mock-sidebar {
    background: #ffffff;
    border-right-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .mock-sidebar-icon {
    background: #edf2f7;
}

html[data-theme="light"] .mock-sidebar-icon.active {
    background: #2563eb;
    box-shadow: 0 8px 18px rgba(37, 99, 235, 0.22);
}

html[data-theme="light"] .mock-search,
html[data-theme="light"] .mock-card,
html[data-theme="light"] .mock-table,
html[data-theme="light"] .mock-alert-item,
html[data-theme="light"] .mock-map-panel,
html[data-theme="light"] .integration-window,
html[data-theme="light"] .integration-stat,
html[data-theme="light"] .integration-route-inline {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    color: #101828;
    box-shadow: 0 10px 26px rgba(16, 24, 40, 0.05);
}

html[data-theme="light"] .mock-table-header,
html[data-theme="light"] .mock-tag,
html[data-theme="light"] .mock-alert-tab,
html[data-theme="light"] .mock-alert-tag,
html[data-theme="light"] .mock-score-bar,
html[data-theme="light"] .rank-default,
html[data-theme="light"] .signal-bar-container {
    background: #edf2f7;
    color: #667085;
}

html[data-theme="light"] .mock-alert-tab.active {
    background: #2563eb;
    color: #ffffff;
}

html[data-theme="light"] .mock-title,
html[data-theme="light"] .mock-company-name,
html[data-theme="light"] .mock-alert-title,
html[data-theme="light"] .radar-chart-title,
html[data-theme="light"] .table-title,
html[data-theme="light"] .integration-copy,
html[data-theme="light"] .integration-copy h3,
html[data-theme="light"] .integration-panel-title,
html[data-theme="light"] .integration-stat strong,
html[data-theme="light"] .integration-route-inline {
    color: #101828;
}

html[data-theme="light"] .mock-card-title,
html[data-theme="light"] .mock-alert-meta,
html[data-theme="light"] .mock-alert-time,
html[data-theme="light"] .mock-map-stat-label,
html[data-theme="light"] .radar-chart-sub,
html[data-theme="light"] .radar-tooltip-metric,
html[data-theme="light"] .integration-copy p,
html[data-theme="light"] .integration-eyebrow,
html[data-theme="light"] .integration-stat span,
html[data-theme="light"] .signals-table th,
html[data-theme="light"] .signals-table td,
html[data-theme="light"] .signal-feature {
    color: #667085;
}

html[data-theme="light"] .mock-company-logo {
    background: #f8fafc;
    box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .mock-table-row,
html[data-theme="light"] .signals-table th,
html[data-theme="light"] .signals-table td {
    border-color: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .mock-map {
    background:
        radial-gradient(circle at 24% 22%, rgba(37, 99, 235, 0.1), transparent 28%),
        linear-gradient(180deg, #eef5ff 0%, #f8fbff 100%);
}

html[data-theme="light"] .mock-map-grid {
    background-image:
        linear-gradient(rgba(37, 99, 235, 0.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(37, 99, 235, 0.07) 1px, transparent 1px);
}

html[data-theme="light"] .mock-map-continent {
    background: #d6e0ec;
    opacity: 0.9;
}

html[data-theme="light"] .radar-legend-chip {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    color: #344054;
    box-shadow: 0 6px 16px rgba(16, 24, 40, 0.04);
}

html[data-theme="light"] .radar-legend-chip:hover {
    background: #f8fafc;
    border-color: rgba(37, 99, 235, 0.18);
}

html[data-theme="light"] #solutionsRadar .radar-grid {
    fill: rgba(37, 99, 235, 0.025);
    stroke: rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] #solutionsRadar .radar-axis {
    stroke: rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] #solutionsRadar .radar-label {
    fill: rgba(16, 24, 40, 0.72);
}

html[data-theme="light"] #solutionsRadar .radar-label-sub {
    fill: rgba(16, 24, 40, 0.5);
}

html[data-theme="light"] #solutionsRadar .radar-dot {
    stroke: #ffffff;
}

html[data-theme="light"] .radar-tooltip {
    background: rgba(255, 255, 255, 0.98);
    border-color: rgba(16, 24, 40, 0.12);
    color: #101828;
    box-shadow: 0 12px 34px rgba(16, 24, 40, 0.13);
}

html[data-theme="light"] .radar-tooltip-value {
    color: #101828;
}

html[data-theme="light"] .features-dark {
    background: #f6f8fb;
    border-top-color: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .feature-content h2 {
    color: #101828;
}

html[data-theme="light"] .feature-content p {
    color: #667085;
}

html[data-theme="light"] .integration-visual {
    background: linear-gradient(135deg, #f7fbff 0%, #eef5ff 56%, #f8fafc 100%);
    border-color: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .integration-showcase {
    background:
        radial-gradient(circle at 16% 18%, rgba(37, 99, 235, 0.13), transparent 30%),
        radial-gradient(circle at 84% 24%, rgba(20, 184, 166, 0.12), transparent 28%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.78) 0%, rgba(248, 250, 252, 0.92) 100%);
    border-color: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .integration-showcase::before {
    background-image:
        linear-gradient(rgba(37, 99, 235, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(37, 99, 235, 0.06) 1px, transparent 1px);
    opacity: 0.2;
}

html[data-theme="light"] .integration-chip {
    background: rgba(255, 255, 255, 0.88);
    border-color: rgba(16, 24, 40, 0.1);
    color: #344054;
    box-shadow: 0 8px 18px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .integration-window {
    box-shadow: 0 28px 68px rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .integration-badge,
html[data-theme="light"] .table-filter {
    background: rgba(37, 99, 235, 0.09);
    border-color: rgba(37, 99, 235, 0.16);
    color: #2563eb;
}

html[data-theme="light"] .signals-visual {
    background: #ffffff;
}

html[data-theme="light"] .signals-table tr:hover {
    background: rgba(37, 99, 235, 0.04);
}

html[data-theme="light"] .toc-sidebar {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(16, 24, 40, 0.11);
    box-shadow: 0 18px 46px rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .toc-sidebar::-webkit-scrollbar-thumb {
    background: rgba(16, 24, 40, 0.16);
}

html[data-theme="light"] .toc-eyebrow,
html[data-theme="light"] .toc-link,
html[data-theme="light"] .toc-link--sub,
html[data-theme="light"] .toc-num,
html[data-theme="light"] .toc-bullet {
    color: #667085;
}

html[data-theme="light"] .toc-link:hover,
html[data-theme="light"] .toc-link.active,
html[data-theme="light"] .toc-link--sub.active {
    background: rgba(37, 99, 235, 0.08);
    color: #101828;
}

html[data-theme="light"] .toc-link.active .toc-num,
html[data-theme="light"] .toc-link.active .toc-bullet,
html[data-theme="light"] .toc-link--sub.active .toc-bullet {
    color: #2563eb;
}

html[data-theme="light"] .toc-fab {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(16, 24, 40, 0.12);
    color: #667085;
    box-shadow: 0 14px 32px rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .toc-fab:hover {
    background: #edf4ff;
    color: #2563eb;
}

html[data-theme="light"] .hero-chart {
    background: rgba(255, 255, 255, 0.94);
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 22px 54px rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] .hero-chart .pl-title {
    fill: #101828;
}

html[data-theme="light"] .hero-chart .pl-subtitle,
html[data-theme="light"] .hero-chart .pl-caption {
    fill: #667085;
}

html[data-theme="light"] .hero-chart .pl-hint,
html[data-theme="light"] .hero-chart .pl-axis {
    fill: #98a2b3;
}

html[data-theme="light"] .hero-chart .pl-ytick {
    fill: #98a2b3;
}

html[data-theme="light"] .hero-chart .pl-gridline {
    stroke: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .hero-chart .pl-dot-label {
    fill: #344054;
}

html[data-theme="light"] .hero-chart .pl-controls,
html[data-theme="light"] .hero-chart .pl-png {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .hero-chart .pl-pill,
html[data-theme="light"] .hero-chart .pl-png {
    color: #667085;
}

html[data-theme="light"] .hero-chart .pl-pill:hover,
html[data-theme="light"] .hero-chart .pl-png:hover {
    color: #101828;
    background: rgba(242, 165, 94, 0.12);
    border-color: rgba(242, 165, 94, 0.34);
}

html[data-theme="light"] .hero-chart .pl-pill.is-active {
    background: rgba(242, 165, 94, 0.16);
    color: #b45309;
}

html[data-theme="light"] .hero-chart::after {
    background-image: url('/images/dealroom-logo-darkblue.svg');
    opacity: 0.16;
}

html[data-theme="light"] .exits-section {
    background:
        radial-gradient(900px 320px at 16% 0%, rgba(62, 100, 224, 0.08), transparent 72%),
        radial-gradient(760px 300px at 96% 100%, rgba(62, 100, 224, 0.045), transparent 74%),
        #f6f8fc;
    border-top-color: rgba(16, 24, 40, 0.1);
    border-bottom-color: rgba(16, 24, 40, 0.1);
}

html[data-theme="light"] .exits-section .control-bar,
html[data-theme="light"] .exits-section .ts-card,
html[data-theme="light"] .exits-section .exits-country-card,
html[data-theme="light"] .exits-section .exits-bubble-card {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 18px 44px rgba(16, 24, 40, 0.055);
}

html[data-theme="light"] .exits-section .control-bar {
    box-shadow: 0 12px 30px rgba(16, 24, 40, 0.045);
}

html[data-theme="light"] .exits-section .ts-card-title,
html[data-theme="light"] .exits-section .exits-country-title,
html[data-theme="light"] .exits-section .exits-bubble-title,
html[data-theme="light"] .exits-section .exits-ts-meta strong {
    color: #101828;
}

html[data-theme="light"] .exits-section .control-bar-label,
html[data-theme="light"] .exits-section .exits-country-meta,
html[data-theme="light"] .exits-section .exits-bubble-meta,
html[data-theme="light"] .exits-section .exits-ts-meta span,
html[data-theme="light"] .exits-section .exits-region-label,
html[data-theme="light"] .exits-section .exits-type-filter-label,
html[data-theme="light"] .exits-section .exits-vc-method-hint,
html[data-theme="light"] .exits-section .exits-type-filter-hint {
    color: #667085;
}

html[data-theme="light"] .exits-section .module-toggle {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
    box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.015);
}

html[data-theme="light"] .exits-section .module-toggle button {
    color: #4b5565;
}

html[data-theme="light"] .exits-section .module-toggle button:hover {
    color: #101828;
    background: rgba(62, 100, 224, 0.06);
}

html[data-theme="light"] .exits-section .module-toggle button.active {
    background: rgba(62, 100, 224, 0.16);
    color: #1f3fb9;
}

html[data-theme="light"] .exits-section .exits-type-pill,
html[data-theme="light"] .exits-section .exits-region-pill,
html[data-theme="light"] .exits-section .exits-year-pill {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
    color: #667085;
}

html[data-theme="light"] .exits-section .exits-type-pill:hover,
html[data-theme="light"] .exits-section .exits-region-pill:hover,
html[data-theme="light"] .exits-section .exits-year-pill:hover {
    color: #101828;
    border-color: rgba(62, 100, 224, 0.28);
}

html[data-theme="light"] .exits-section .exits-region-pill.active,
html[data-theme="light"] .exits-section .exits-year-pill.active {
    background: rgba(62, 100, 224, 0.12);
    border-color: rgba(62, 100, 224, 0.36);
    color: #1f3fb9;
}

html[data-theme="light"] .data-screenshot-wrapper,
html[data-theme="light"] .data-mock,
html[data-theme="light"] .revenue-stat,
html[data-theme="light"] .revenue-chart-card,
html[data-theme="light"] .val-panel,
html[data-theme="light"] .val-round,
html[data-theme="light"] .compare-viz,
html[data-theme="light"] .rank-card .preview,
html[data-theme="light"] .ga-card .preview,
html[data-theme="light"] .mm-preview,
html[data-theme="light"] .fund-blurb {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    color: #101828;
}

html[data-theme="light"] .data-screenshot-wrapper,
html[data-theme="light"] .compare-viz,
html[data-theme="light"] .fund-blurb {
    box-shadow: 0 20px 55px rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .data-browser-chrome {
    background: #f8fafc;
    border-bottom-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .data-browser-bar {
    background: #ffffff;
    border: 1px solid rgba(16, 24, 40, 0.08);
    color: #667085;
}

html[data-theme="light"] .data-feature-section.bg-alt {
    background: #f6f8fb;
}

html[data-theme="light"] .data-feature-content h3,
html[data-theme="light"] .revenue-company-name,
html[data-theme="light"] .revenue-stat-value,
html[data-theme="light"] .revenue-chart-title,
html[data-theme="light"] .val-chart-title,
html[data-theme="light"] .compare-side-head h3,
html[data-theme="light"] .rank-card h3,
html[data-theme="light"] .mm-title,
html[data-theme="light"] .fund-blurb p strong {
    color: #101828;
}

html[data-theme="light"] .data-feature-content p,
html[data-theme="light"] .data-feature-bullet,
html[data-theme="light"] .revenue-company-meta,
html[data-theme="light"] .revenue-stat-label,
html[data-theme="light"] .val-chart-sub,
html[data-theme="light"] .compare-card-region,
html[data-theme="light"] .rank-card .date,
html[data-theme="light"] .ga-card .body .meta,
html[data-theme="light"] .mm-tag,
html[data-theme="light"] .fund-blurb p {
    color: #667085;
}

html[data-theme="light"] .revenue-company-logo {
    background: linear-gradient(135deg, #eef2f7, #e6edf7);
    border-color: rgba(16, 24, 40, 0.1);
    color: #2563eb;
}

html[data-theme="light"] .revenue-chart-dot {
    stroke: #ffffff;
}

html[data-theme="light"] .revenue-chart-label {
    fill: rgba(16, 24, 40, 0.68);
}

html[data-theme="light"] .rank-card .preview,
html[data-theme="light"] .ga-card .preview,
html[data-theme="light"] .mm-preview {
    background: #f8fafc;
}

html[data-theme="light"] .compare-viz {
    background:
        linear-gradient(90deg, rgba(62, 100, 224, 0.07), transparent 35%, transparent 65%, rgba(62, 100, 224, 0.08)),
        #ffffff;
}

html[data-theme="light"] .breakout-panel,
html[data-theme="light"] .compare-panel,
html[data-theme="light"] .rank-panel,
html[data-theme="light"] .pre-timeline {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 16px 42px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .breakout-feed {
    background:
        linear-gradient(90deg, rgba(62, 100, 224, 0.09), transparent 24%),
        #f8fafc;
    border-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .breakout-feed::before {
    background: linear-gradient(90deg, rgba(248, 250, 252, 0.98), transparent);
}

html[data-theme="light"] .breakout-feed::after {
    background: linear-gradient(270deg, rgba(248, 250, 252, 0.98), transparent);
}

html[data-theme="light"] .breakout-card {
    border-right-color: rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .breakout-card:hover {
    background: rgba(37, 99, 235, 0.04);
}

html[data-theme="light"] .breakout-meta,
html[data-theme="light"] .compare-meta,
html[data-theme="light"] .breakout-kicker,
html[data-theme="light"] .breakout-founder,
html[data-theme="light"] .rank-panel-meta,
html[data-theme="light"] .rank-panel-sub,
html[data-theme="light"] .map-region-label,
html[data-theme="light"] .map-count,
html[data-theme="light"] .map-foot {
    color: #667085;
}

html[data-theme="light"] .breakout-name,
html[data-theme="light"] .rank-panel-title,
html[data-theme="light"] .pre-timeline-title {
    color: #101828;
}

html[data-theme="light"] .map-card {
    background:
        radial-gradient(circle at 20% 18%, rgba(62, 100, 224, 0.045), transparent 30%),
        radial-gradient(circle at 80% 22%, rgba(62, 100, 224, 0.035), transparent 28%),
        #ffffff;
    border-color: rgba(16, 24, 40, 0.11);
}

html[data-theme="light"] .mn-node-label {
    fill: #344054;
    stroke: rgba(255, 255, 255, 0.94);
    stroke-width: 4px;
}

html[data-theme="light"] .mn-node-label.is-og {
    fill: #101828;
}

html[data-theme="light"] .mn-node-label.is-mafia,
html[data-theme="light"] .mn-node-label.is-vc,
html[data-theme="light"] .mn-node-label.is-outcome {
    fill: #344054;
}

html[data-theme="light"] .mn-node-label.is-alum {
    fill: #667085;
}

html[data-theme="light"] .mn-link {
    stroke: rgba(37, 99, 235, 0.14);
}

html[data-theme="light"] .mn-link.is-rel-founder {
    stroke: rgba(62, 100, 224, 0.34);
}

html[data-theme="light"] .mn-link.is-rel-employee {
    stroke: rgba(37, 99, 235, 0.28);
}

html[data-theme="light"] .mn-link.is-rel-acquisition,
html[data-theme="light"] .mn-link.is-rel-spinout {
    stroke: rgba(217, 119, 6, 0.28);
}

html[data-theme="light"] .mn-link.is-rel-investor {
    stroke: rgba(124, 58, 237, 0.3);
}

html[data-theme="light"] .map-card .mn-tip {
    background: rgba(255, 255, 255, 0.98);
    border-color: rgba(16, 24, 40, 0.12);
    color: #101828;
    box-shadow: 0 14px 32px rgba(16, 24, 40, 0.14);
}

html[data-theme="light"] .map-card .mn-tip .row,
html[data-theme="light"] .map-card .mn-tip .row.people {
    color: #667085;
}

html[data-theme="light"] .map-card .mn-tip .row.mafia {
    color: #3154c7;
}

html[data-theme="light"] .map-card .mn-tip .row.og {
    color: #b45309;
}

html[data-theme="light"] .rank-tooltip {
    background: rgba(255, 255, 255, 0.985);
    border-color: rgba(16, 24, 40, 0.14);
    color: #475467;
    box-shadow: 0 18px 48px rgba(16, 24, 40, 0.18), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

html[data-theme="light"] .rank-tip-title,
html[data-theme="light"] .rank-tip-meta b,
html[data-theme="light"] .rank-tip-subhead,
html[data-theme="light"] .rank-tip-company strong {
    color: #101828;
}

html[data-theme="light"] .rank-tip-meta {
    color: #667085;
    border-top-color: rgba(16, 24, 40, 0.09);
    border-bottom-color: rgba(16, 24, 40, 0.09);
}

html[data-theme="light"] .rank-tip-stat span,
html[data-theme="light"] .rank-tip-company span,
html[data-theme="light"] .rank-tip-founder,
html[data-theme="light"] .rank-tip-note,
html[data-theme="light"] .rank-tip-loading {
    color: #667085;
}

html[data-theme="light"] .rank-tip-company:nth-child(odd) {
    background: #f6f8fb;
}

html[data-theme="light"] .rank-tip-company {
    border: 1px solid transparent;
}

html[data-theme="light"] .rank-tip-list {
    scrollbar-color: rgba(16, 24, 40, 0.2) transparent;
}

html[data-theme="light"] .map-foot .dot.alum {
    background: rgba(16, 24, 40, 0.35);
}

html[data-theme="light"] .map-foot a.full,
html[data-theme="light"] .map-foot button.full,
html[data-theme="light"] .map-region-btn,
html[data-theme="light"] .rank-outcome-toggle,
html[data-theme="light"] .rank-sort,
html[data-theme="light"] .rank-search {
    background: #ffffff;
    border-color: rgba(16, 24, 40, 0.12);
    color: #344054;
}

html[data-theme="light"] .map-region-btn:hover,
html[data-theme="light"] .map-region-btn.is-active,
html[data-theme="light"] .rank-outcome-toggle button.active,
html[data-theme="light"] .rank-sort button.active {
    background: #edf4ff;
    border-color: rgba(37, 99, 235, 0.26);
    color: #2563eb;
}

html[data-theme="light"] .rank-outcome-toggle button,
html[data-theme="light"] .rank-sort button {
    color: #667085;
}

html[data-theme="light"] .rank-outcome-toggle button:hover,
html[data-theme="light"] .rank-sort button:hover {
    color: #101828;
}

html[data-theme="light"] .hf-arrow {
    color: #667085;
}

html[data-theme="light"] .page-header {
    background: rgba(255, 255, 255, 0.9);
    border-bottom-color: rgba(16, 24, 40, 0.1);
    box-shadow: 0 16px 36px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .page-title {
    color: #101828;
}

html[data-theme="light"] .tier-legend {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(16, 24, 40, 0.12);
    box-shadow: 0 16px 42px rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .tier-legend h4,
html[data-theme="light"] .tier-reset,
html[data-theme="light"] .tier-item {
    color: #667085;
}

html[data-theme="light"] .tier-reset:hover,
html[data-theme="light"] .tier-item:hover,
html[data-theme="light"] .tier-item.active {
    color: #101828;
}

html[data-theme="light"] .tier-item:hover,
html[data-theme="light"] .tier-item.active {
    background: rgba(37, 99, 235, 0.08);
    border-color: rgba(37, 99, 235, 0.22);
}

html[data-theme="light"] .map-overlay-hint {
    color: rgba(16, 24, 40, 0.45);
}

html[data-theme="light"] .map-overlay-hint strong {
    color: rgba(16, 24, 40, 0.72);
}

html[data-theme="light"] .map-overlay-sep {
    color: rgba(16, 24, 40, 0.28);
}

/* Full-screen Ecosystems network page ---------------------- */
html[data-theme="light"] .view-toggle {
    background: #FFFFFF;
    border-color: #D0D5DD;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
}

html[data-theme="light"] .view-toggle button {
    color: #475467;
}

html[data-theme="light"] .view-toggle button:hover {
    background: #F2F4F7;
    color: #101828;
}

html[data-theme="light"] .view-toggle button.active,
html[data-theme="light"] .solution-tab.active {
    background: #3E64E0;
    border-color: #3E64E0;
    color: #FFFFFF !important;
    box-shadow: 0 8px 20px rgba(62, 100, 224, 0.22);
}

html[data-theme="light"] .chart-category-btn.active {
    color: #FFFFFF !important;
}

html[data-theme="light"] .chart-source-bar .chart-source-pills,
html[data-theme="light"] .chart-source-bar-hero .chart-source-pills {
    background: #FFFFFF;
    border-color: #D0D5DD;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
}

html[data-theme="light"] .chart-source-bar .chart-source-pill,
html[data-theme="light"] .chart-source-bar-hero .chart-source-pill {
    display: inline-flex;
    align-items: center;
    color: #475467;
}

html[data-theme="light"] .chart-source-bar .chart-source-pill:hover,
html[data-theme="light"] .chart-source-bar-hero .chart-source-pill:hover {
    background: #F2F4F7;
    color: #101828;
}

html[data-theme="light"] .chart-source-bar .chart-source-pill.active,
html[data-theme="light"] .chart-source-bar-hero .chart-source-pill.active {
    background: #3E64E0;
    color: #FFFFFF;
    box-shadow: 0 8px 18px rgba(62, 100, 224, 0.22);
}

html[data-theme="light"] .table-view,
html[data-theme="light"] .all-locations-view,
html[data-theme="light"] .sidebar,
html[data-theme="light"] .compare-bar {
    background: #FFFFFF;
    border-color: #E4E7EC;
}

html[data-theme="light"] .eco-table thead,
html[data-theme="light"] .all-locations-toolbar,
html[data-theme="light"] .sidebar-header,
html[data-theme="light"] .search-container,
html[data-theme="light"] .region-filters,
html[data-theme="light"] .hero-metrics {
    background: #F8FAFC;
    border-color: #E4E7EC;
}

html[data-theme="light"] .eco-table th {
    color: #667085;
    border-bottom-color: #E4E7EC;
}

html[data-theme="light"] .eco-table th:hover,
html[data-theme="light"] .eco-table .eco-hub,
html[data-theme="light"] .eco-table .eco-num,
html[data-theme="light"] .loc-index-cell,
html[data-theme="light"] .hero-metrics-title,
html[data-theme="light"] .hero-metric-value,
html[data-theme="light"] .ecosystem-item-name {
    color: #101828;
}

html[data-theme="light"] .eco-table td {
    color: #475467;
    border-bottom-color: #EAECF0;
}

html[data-theme="light"] .eco-table tbody tr:hover {
    background: #F4F7FF;
}

html[data-theme="light"] .eco-table tbody tr.selected {
    background: #EEF4FF;
}

html[data-theme="light"] .all-locations-search input,
html[data-theme="light"] .search-input,
html[data-theme="light"] .all-locations-filter-group,
html[data-theme="light"] .all-locations-partner-toggle,
html[data-theme="light"] .filter-btn,
html[data-theme="light"] .hero-metric,
html[data-theme="light"] .global-stat,
html[data-theme="light"] .ecosystem-item,
html[data-theme="light"] .compare-chip {
    background: #FFFFFF;
    border-color: #D0D5DD;
    color: #101828;
}

html[data-theme="light"] .all-locations-search input::placeholder,
html[data-theme="light"] .search-input::placeholder,
html[data-theme="light"] .all-locations-count,
html[data-theme="light"] .eco-table .eco-muted,
html[data-theme="light"] .hero-metrics-sub,
html[data-theme="light"] .hero-metric-label,
html[data-theme="light"] .global-stat-label,
html[data-theme="light"] .ecosystem-item-meta,
html[data-theme="light"] .ecosystem-item-score-label,
html[data-theme="light"] .sidebar-header p,
html[data-theme="light"] .region-filters label,
html[data-theme="light"] .ecosystem-list-header span {
    color: #667085;
}

html[data-theme="light"] .all-locations-filter-group button,
html[data-theme="light"] .filter-btn {
    color: #475467;
}

html[data-theme="light"] .all-locations-filter-group button:hover,
html[data-theme="light"] .filter-btn:hover,
html[data-theme="light"] .ecosystem-item:hover {
    border-color: #98A2B3;
    color: #101828;
}

html[data-theme="light"] .all-locations-filter-group button.active,
html[data-theme="light"] .filter-btn.active {
    background: #3E64E0;
    border-color: #3E64E0;
    color: #FFFFFF;
}

html[data-theme="light"] .all-locations-partner-toggle:has(input:checked) {
    background: #FFF7ED;
    border-color: #FDBA74;
    color: #9A3412;
}

html[data-theme="light"] .all-locations-table .loc-index-bar {
    background: #E4E7EC;
}

html[data-theme="light"] .map-container {
    background:
        radial-gradient(ellipse 120% 80% at 50% 120%, rgba(59, 130, 246, 0.10), transparent 50%),
        radial-gradient(ellipse 80% 60% at 20% 20%, rgba(139, 92, 246, 0.07), transparent 40%),
        radial-gradient(ellipse 60% 40% at 80% 30%, rgba(16, 185, 129, 0.08), transparent 40%),
        #F7F8FB;
}

html[data-theme="light"] .world-map svg path.country {
    fill: #E7ECF5;
    stroke: rgba(71, 84, 103, 0.28);
}

html[data-theme="light"] .world-map svg path.country:hover,
html[data-theme="light"] .world-map svg path.country.highlighted {
    fill: rgba(62, 100, 224, 0.38);
    stroke: rgba(62, 100, 224, 0.62);
}

html[data-theme="light"] .ecosystem-popup {
    background: #FFFFFF;
    border-color: #D0D5DD;
    box-shadow: 0 20px 60px rgba(16, 24, 40, 0.18);
}

html[data-theme="light"] .popup-close {
    background: #F2F4F7;
    color: #475467;
}

html[data-theme="light"] .popup-close:hover {
    background: #E4E7EC;
    color: #101828;
}

html[data-theme="light"] .table-view,
html[data-theme="light"] .all-locations-table-wrap,
html[data-theme="light"] .ecosystem-list {
    scrollbar-color: rgba(152, 162, 179, 0.78) #F2F4F7;
}

@media (max-width: 900px) {
    html[data-theme="light"] .all-locations-toolbar {
        background: #F8FAFC !important;
        border-bottom-color: #E4E7EC !important;
        gap: 0.55rem;
        padding: 0.75rem 0.875rem !important;
    }

    html[data-theme="light"] .all-locations-filter-group {
        width: 100%;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    html[data-theme="light"] .all-locations-filter-group::-webkit-scrollbar {
        display: none;
    }

    html[data-theme="light"] .all-locations-filter-group button {
        flex: 0 0 auto;
    }

    html[data-theme="light"] .chart-source-bar-hero {
        width: 100%;
    }

    html[data-theme="light"] .chart-source-bar-hero .chart-source-pills {
        display: flex;
        width: min(100%, 340px);
    }

    html[data-theme="light"] .chart-source-bar-hero .chart-source-pill {
        flex: 1 1 0;
        justify-content: center;
        text-align: center;
    }
}

html[data-theme="light"] .cta-section h1,
html[data-theme="light"] .cta-section h2,
html[data-theme="light"] .cta-section h3,
html[data-theme="light"] .newsletter-section h2 {
    color: #ffffff;
}

html[data-theme="light"] .cta-section p,
html[data-theme="light"] .cta-section .section-subtitle,
html[data-theme="light"] .newsletter-section p {
    color: rgba(255, 255, 255, 0.86);
}

html[data-theme="light"] .newsletter-form input {
    color: #ffffff;
}

html[data-theme="light"] .cta-section .btn-outline,
html[data-theme="light"] .cta-section .btn-ghost,
html[data-theme="light"] .cta-section .btn-outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.42);
    background: rgba(255, 255, 255, 0.08);
}

html[data-theme="light"] .cta-section .btn-outline:hover,
html[data-theme="light"] .cta-section .btn-ghost:hover,
html[data-theme="light"] .cta-section .btn-outline-white:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.62);
}

html[data-theme="light"] .theme-toggle {
    color: rgba(16, 24, 40, 0.72);
    background: rgba(16, 24, 40, 0.035);
    border-color: rgba(16, 24, 40, 0.12);
}

html[data-theme="light"] .theme-toggle:hover,
html[data-theme="light"] .theme-toggle:focus-visible {
    color: #101828;
    background: rgba(16, 24, 40, 0.075);
    border-color: rgba(16, 24, 40, 0.18);
}

.theme-toggle {
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--border-light, rgba(255, 255, 255, 0.1));
    border-radius: 999px;
    color: var(--text-light, rgba(255, 255, 255, 0.72));
    background: rgba(255, 255, 255, 0.035);
    cursor: pointer;
    transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.theme-toggle:hover,
.theme-toggle:focus-visible {
    color: var(--white, #fff);
    background: rgba(255, 255, 255, 0.08);
    border-color: var(--border-mid, rgba(255, 255, 255, 0.2));
    outline: none;
}

.theme-toggle:active {
    transform: scale(0.97);
}

.theme-toggle svg {
    width: 1rem;
    height: 1rem;
    stroke: currentColor;
    stroke-width: 1.8;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 768px) {
    .theme-toggle {
        width: 2rem;
        height: 2rem;
        margin-right: 0.25rem;
    }
}

/* ============================================================
   Home-page light-mode pass (light-as-default polish)
   Addresses pure-white floor, card elevation, two-tone headings,
   inline-link gimmick, off-palette dots/badges, vertical rhythm,
   and dark-mode-only news-card chrome.
   ============================================================ */

html[data-theme="light"] body {
    background: #F7F8FB;
    color: #101828;
}

/* Hero: keep visually elevated against the new off-white floor.
   NOTE: hero spacing (padding/min-height) is intentionally NOT set here.
   The bare .hero selector matches every page, so any spacing here bleeds
   into other pages' heroes in light mode only and makes them taller than
   in dark. Home-page hero spacing now lives in index.html, scoped to the
   home hero; all other pages keep light spacing == dark spacing. */
html[data-theme="light"] .hero,
html[data-theme="light"] .hero.is-entity {
    background:
        radial-gradient(ellipse at 50% 0%, rgba(37, 99, 235, 0.10) 0%, rgba(255, 255, 255, 0) 58%),
        #FFFFFF;
}

html[data-theme="light"] .hero-form {
    background: #FFFFFF;
    border: 1px solid #D0D5DD;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

html[data-theme="light"] .hero-input {
    color: #101828;
}

html[data-theme="light"] .hero-input::placeholder {
    color: rgba(16, 24, 40, 0.48);
}

/* Global-network section (One graph, four lenses) */
html[data-theme="light"] .global-network {
    background: #F7F8FB;
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
}

html[data-theme="light"] .global-network-header h2,
html[data-theme="light"] .global-network-header p {
    color: #101828;
}
html[data-theme="light"] .global-network-header p {
    color: rgba(16, 24, 40, 0.68);
}

/* The four "audience" cards: white with proper elevation language */
html[data-theme="light"] .aud-card {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .aud-card:hover {
    border-color: #D0D5DD;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 8px 24px rgba(16, 24, 40, 0.08);
}

/* Mute the kicker text so the dots carry the signal, not the label */
html[data-theme="light"] .aud-kicker {
    color: #475467 !important;
}

/* Dots: keep distinct colors but pull intensity down for white bg */
html[data-theme="light"] .aud-kicker.vc .dot { background: #2563EB; }
html[data-theme="light"] .aud-kicker.public .dot { background: #059669; }
html[data-theme="light"] .aud-kicker.corp .dot { background: #7C3AED; }
html[data-theme="light"] .aud-kicker.build .dot { background: #D97706; }

/* Headline + body inside the cards */
html[data-theme="light"] .aud-headline {
    color: #101828;
}

/* Mock chrome inside cards */
html[data-theme="light"] .aud-mock,
html[data-theme="light"] .aud-mock-header,
html[data-theme="light"] .aud-mock-title {
    color: #475467;
}

/* Builder card match rows: avatar, name, score */
html[data-theme="light"] .aud-match-row + .aud-match-row {
    border-top-color: #E4E7EC;
}

html[data-theme="light"] .aud-match-avatar {
    background: #F2F4F7;
    color: #475467;
}

html[data-theme="light"] .aud-match-avatar.has-logo {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
}

html[data-theme="light"] .aud-match-name {
    color: #101828;
}

html[data-theme="light"] .aud-match-meta {
    color: #667085;
}

html[data-theme="light"] .aud-match-score {
    color: #B54708;
}

html[data-theme="light"] .aud-match-score .lbl {
    color: #98A2B3;
}

/* FREE pill — proper badge token, reusable */
html[data-theme="light"] .aud-free-pill {
    background: #FFF4E5;
    color: #B54708;
    font-weight: 600;
    text-transform: uppercase;
}

/* Testimonials section */
html[data-theme="light"] .testimonials {
    background: #FFFFFF;
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
}

html[data-theme="light"] .testimonial-card {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
}

/* Kill the inline-purple-link-in-body-copy gimmick */
html[data-theme="light"] .text-highlight {
    color: inherit;
    font-weight: 600;
}

/* Latest News section — fix two-tone heading + dark-mode-only card chrome */
html[data-theme="light"] .latest-news {
    background: #F7F8FB;
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
}

html[data-theme="light"] .latest-news-header h2 {
    color: #101828;
}

html[data-theme="light"] .latest-news-header h2 .highlight {
    color: inherit;
}

html[data-theme="light"] .see-all-link {
    color: #3E64E0;
}

html[data-theme="light"] .see-all-link:hover {
    color: #101828;
}

html[data-theme="light"] .news-card {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .news-card:hover {
    border-color: #D0D5DD;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 8px 24px rgba(16, 24, 40, 0.08);
}

html[data-theme="light"] .news-card-image {
    background: #F2F4F7;
}

html[data-theme="light"] .news-card-title {
    color: #101828;
}

html[data-theme="light"] .news-card-date {
    color: #667085;
}

html[data-theme="light"] .news-card-excerpt {
    color: #475467;
}

/* News-card category chip: tint background + solid text, both derived from the
   per-kind --tag triplet (set on .news-card-tag--* in index.html). Defined here
   in the token layer; the triplet already swaps light/dark, so one rule covers
   both modes. */
.news-card-tag {
    background: rgba(var(--tag, var(--tag-news)), 0.14);
    color: rgb(var(--tag, var(--tag-news)));
}

html[data-theme="light"] .news-loading {
    color: #667085;
}

html[data-theme="light"] .news-loading-spinner {
    border-color: rgba(16, 24, 40, 0.08);
    border-top-color: #3E64E0;
}

/* CTA band before footer */
html[data-theme="light"] .cta {
    background: #FFFFFF;
    border-top: 1px solid #E4E7EC;
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
}

html[data-theme="light"] .cta h2 {
    color: #101828;
}

html[data-theme="light"] .cta-subtitle {
    color: #475467;
}

html[data-theme="light"] .cta-form {
    background: #FFFFFF;
    border: 1px solid #D0D5DD;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

/* Country / ecosystem partner strip — soften fade edges on light */
html[data-theme="light"] .partner-marquee-track,
html[data-theme="light"] .partner-marquee {
    --marquee-fade: #F7F8FB;
}

html[data-theme="light"] .ecosystem-partners {
    border-top-color: #E4E7EC;
}

html[data-theme="light"] .ecosystem-partners-label,
html[data-theme="light"] .four-lenses-eyebrow {
    color: #667085;
}

/* Reusable badge tokens — extend FREE pill style for "NEW", "HOT" etc. */
html[data-theme="light"] .badge-soft-amber {
    background: #FFF4E5;
    color: #B54708;
}
html[data-theme="light"] .badge-soft-blue {
    background: #EFF4FF;
    color: #1849A9;
}
html[data-theme="light"] .badge-soft-green {
    background: #ECFDF3;
    color: #027A48;
}

/* ============================================================
   Resources subpages light-mode pass
   (resources hub, power-law, multiples, vc-investment-dashboard,
    journey-value-add, startup-mafias, market-maps)
   Same tokens as home: #F7F8FB body, white cards w/ 1px border +
   2-layer shadow, muted neutral kickers, demoted in-headline accent.
   ============================================================ */

/* Universal: align section/body bg with home off-white floor. */
html[data-theme="light"] section,
html[data-theme="light"] .section,
html[data-theme="light"] .cards-section,
html[data-theme="light"] .hero,
html[data-theme="light"] .cta-section {
    background-color: transparent;
}

/* B3: eyebrows/kickers — one semantic voice in light mode -------
   (was the orange→gray demotion; now the brand-blue --eyebrow token,
   keeping the uppercase micro-label typography of the light redesign) */
html[data-theme="light"] .hero-eyebrow,
html[data-theme="light"] .section-eyebrow,
html[data-theme="light"] .pl-card-eyebrow,
html[data-theme="light"] .head-kicker,
html[data-theme="light"] .mm-modal-kicker,
html[data-theme="light"] .seg-eyebrow,
html[data-theme="light"] .seg-kicker,
html[data-theme="light"] .rr-eyebrow,
html[data-theme="light"] .ctrl-eyebrow,
html[data-theme="light"] .chart-eyebrow,
html[data-theme="light"] .conv-eyebrow,
html[data-theme="light"] .source-eyebrow {
    color: var(--eyebrow) !important;
    font-family: var(--font-sans) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

/* Dark-mode counterpart: the same eyebrow/kicker set rides the --eyebrow
   token (pale blue) instead of each page's local orange. Page styles that
   were rewritten to var(--eyebrow, #84ADFF) agree with this; the block also
   catches pages whose local rules predate the recolor. No !important: a
   page that deliberately restyles its eyebrow at higher specificity wins. */
html[data-theme="dark"] .hero-eyebrow,
html[data-theme="dark"] .section-eyebrow,
html[data-theme="dark"] .pl-card-eyebrow,
html[data-theme="dark"] .head-kicker,
html[data-theme="dark"] .mm-modal-kicker,
html[data-theme="dark"] .seg-eyebrow,
html[data-theme="dark"] .seg-kicker,
html[data-theme="dark"] .rr-eyebrow,
html[data-theme="dark"] .ctrl-eyebrow,
html[data-theme="dark"] .chart-eyebrow,
html[data-theme="dark"] .conv-eyebrow,
html[data-theme="dark"] .source-eyebrow {
    color: var(--eyebrow);
}

/* B2: kill in-headline accent tint on heroes ----------------- */
html[data-theme="light"] h1 em,
html[data-theme="light"] h2 em,
html[data-theme="light"] h3 em,
html[data-theme="light"] h4 em,
html[data-theme="light"] .section-title em,
html[data-theme="light"] .hero-title em,
html[data-theme="light"] h1 .highlight,
html[data-theme="light"] h2 .highlight,
html[data-theme="light"] h3 .highlight,
html[data-theme="light"] .highlight {
    color: inherit !important;
    font-style: normal;
    font-weight: 600;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
            background-clip: border-box !important;
    -webkit-text-fill-color: currentColor !important;
}

/* Inside headings, the 600 above produced a two-weight headline
   ("Resources & data" — regular base, semibold accent word). One voice:
   heading accents follow the heading's own weight. Bare .highlight in body
   copy keeps the 600 from B2 — there the weight IS the emphasis once the
   tint is stripped. */
html[data-theme="light"] h1 em,
html[data-theme="light"] h2 em,
html[data-theme="light"] h3 em,
html[data-theme="light"] h4 em,
html[data-theme="light"] .section-title em,
html[data-theme="light"] .hero-title em,
html[data-theme="light"] h1 .highlight,
html[data-theme="light"] h2 .highlight,
html[data-theme="light"] h3 .highlight {
    font-weight: inherit;
}

/* B6: breadcrumbs - softer separators, dark last segment ----- */
html[data-theme="light"] .breadcrumbs {
    color: #667085;
}
html[data-theme="light"] .breadcrumbs a {
    color: #667085;
}
html[data-theme="light"] .breadcrumbs a:hover {
    color: #101828;
}
html[data-theme="light"] .breadcrumbs span[aria-hidden="true"] {
    color: #D0D5DD;
}
html[data-theme="light"] .breadcrumbs [aria-current="page"] {
    color: #101828;
}

/* B4: card elevation token for subpage card families --------- */
html[data-theme="light"] .pl-card,
html[data-theme="light"] .mm-card,
html[data-theme="light"] .seg-card,
html[data-theme="light"] .chart-card,
html[data-theme="light"] .stat-card,
html[data-theme="light"] .rr-card,
html[data-theme="light"] .rank-card,
html[data-theme="light"] .map-card,
html[data-theme="light"] .report-card,
html[data-theme="light"] .snapshot-card,
html[data-theme="light"] .resource-card,
html[data-theme="light"] .mm-modal-card,
html[data-theme="light"] .conv-card,
html[data-theme="light"] .compare-viz {
    background: #FFFFFF !important;
    border: 1px solid #E4E7EC !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06) !important;
}

html[data-theme="light"] .pl-card:hover,
html[data-theme="light"] .mm-card:hover,
html[data-theme="light"] .seg-card:hover,
html[data-theme="light"] .rr-card:hover,
html[data-theme="light"] .rank-card:hover,
html[data-theme="light"] .map-card:hover,
html[data-theme="light"] .snapshot-card:hover,
html[data-theme="light"] .resource-card:hover {
    border-color: #D0D5DD !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 8px 24px rgba(16, 24, 40, 0.08) !important;
}

/* Override existing pl-card gradient that bakes in dark surface */
html[data-theme="light"] .pl-card {
    background: #FFFFFF !important;
}

/* B5: filter chip contrast pass — unselected vs selected ----- */
html[data-theme="light"] .mm-pill,
html[data-theme="light"] .seg-pill,
html[data-theme="light"] .filter-pill,
html[data-theme="light"] .ctrl-pill,
html[data-theme="light"] .example-pill,
html[data-theme="light"] .mm-source-pill {
    background: #F2F4F7;
    border: 1px solid transparent;
    color: #475467;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

html[data-theme="light"] .mm-pill:hover,
html[data-theme="light"] .seg-pill:hover,
html[data-theme="light"] .filter-pill:hover,
html[data-theme="light"] .ctrl-pill:hover,
html[data-theme="light"] .example-pill:hover,
html[data-theme="light"] .mm-source-pill:hover {
    background: #E4E7EC;
    color: #101828;
}

html[data-theme="light"] .mm-pill.active,
html[data-theme="light"] .seg-pill.active,
html[data-theme="light"] .filter-pill.active,
html[data-theme="light"] .ctrl-pill.active,
html[data-theme="light"] .example-pill.active,
html[data-theme="light"] .mm-source-pill.active,
html[data-theme="light"] .mm-pill[aria-pressed="true"],
html[data-theme="light"] .filter-pill[aria-pressed="true"] {
    background: #3E64E0;
    border-color: #3E64E0;
    color: #FFFFFF;
}

/* Pill counts (small chip badges inside pills) */
html[data-theme="light"] .mm-pill-count {
    background: rgba(16, 24, 40, 0.08);
    color: inherit;
}
html[data-theme="light"] .mm-pill.active .mm-pill-count,
html[data-theme="light"] .mm-pill[aria-pressed="true"] .mm-pill-count {
    background: rgba(255, 255, 255, 0.22);
    color: #FFFFFF;
}

/* B7: TOC surface treatment (Startup Journey + Founder Mafias) */
/* Only the sidebar is the card. .toc-nav (the inner <ul>) must NOT get its
   own border/background/shadow — that drew a second card outline inside the
   sidebar (a line under the "On this page" eyebrow and one below the last
   item). The list sits inside the sidebar card. */
html[data-theme="light"] .toc-sidebar {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    border-radius: 12px;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
}

html[data-theme="light"] .toc-link,
html[data-theme="light"] .toc-sidebar a {
    color: #475467;
}

html[data-theme="light"] .toc-link:hover,
html[data-theme="light"] .toc-sidebar a:hover {
    color: #101828;
    background: #F2F4F7;
}

html[data-theme="light"] .toc-link.active,
html[data-theme="light"] .toc-sidebar a.active,
html[data-theme="light"] .toc-link[aria-current="true"] {
    background: #EEF0FE;
    color: #3E64E0;
    font-weight: 600;
}

/* Data tables (Power Law, Multiples) — zebra + sticky head ---- */
html[data-theme="light"] .report-table thead,
html[data-theme="light"] .seg-table thead,
html[data-theme="light"] .cohort-table thead,
html[data-theme="light"] table.report-table thead {
    background: #F9FAFB;
    border-bottom: 1px solid #E4E7EC;
}

html[data-theme="light"] .report-table thead th,
html[data-theme="light"] .seg-table thead th,
html[data-theme="light"] .cohort-table thead th {
    color: #475467;
    font-weight: 600;
}

html[data-theme="light"] .report-table tbody tr:nth-child(even),
html[data-theme="light"] .seg-table tbody tr:nth-child(even),
html[data-theme="light"] .cohort-table tbody tr:nth-child(even) {
    background: #FAFBFC;
}

html[data-theme="light"] .report-table tbody tr:hover,
html[data-theme="light"] .seg-table tbody tr:hover,
html[data-theme="light"] .cohort-table tbody tr:hover {
    background: #F4F6F9;
}

/* CTA band (subpages) closer to home spec.
   In light mode this is a rounded, floating card (not the dark full-bleed band),
   so it needs breathing room above it — otherwise its top edge butts flush
   against the "More data" rail / preceding section (0px gap). margin-top floats
   the card clear of the content above; dark mode keeps its border-top divider. */
html[data-theme="light"] .cta-band {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    border-radius: 16px;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
    margin-top: 2.5rem;
}

html[data-theme="light"] .cta-band h2,
html[data-theme="light"] .cta-band .cta-title {
    color: #101828;
}

/* B10: Footer — give it a tonal closure block instead of pure white.
   Scoped to the real site footer (<footer> element / .site-footer) only.
   The bare `.footer` class was removed: it is the generic footer/source line
   class used by 250+ standalone chart pages, and as those charts adopt the
   master nav (which pulls in this stylesheet) the grey block was "creeping"
   into every chart's source row. Chart footers must stay transparent. */
html[data-theme="light"] footer,
html[data-theme="light"] .site-footer {
    background: #F2F4F7;
    border-top: 1px solid #E4E7EC;
}

/* Snapshot strip kickers (Founder Mafias) — neutral gray */
html[data-theme="light"] .snapshot-kicker,
html[data-theme="light"] .source-bar-label {
    color: #667085 !important;
}

/* Outline / secondary button — stronger border on white ------- */
html[data-theme="light"] .btn-outline,
html[data-theme="light"] .btn-secondary,
html[data-theme="light"] .btn-ghost {
    border-color: #D0D5DD;
    background: #FFFFFF;
    color: #101828;
}
html[data-theme="light"] .btn-outline:hover,
html[data-theme="light"] .btn-secondary:hover,
html[data-theme="light"] .btn-ghost:hover {
    border-color: #98A2B3;
    background: #F9FAFB;
    color: #101828;
}

/* ============================================================
   Data subpages light-mode pass
   (/our-data, /companies, /investors, /people, /sectors,
    /universities, /our-data/taxonomy, /countries)
   Plugs dark-mode CSS leaks where component cards/inputs were
   authored with rgba(0,0,0) / rgba(255,255,255) values.
   ============================================================ */

/* Critical: .entity-card on /sectors and /universities renders
   rgba(0,0,0,.25) over the off-white page. Override to the
   home card token. */
html[data-theme="light"] .entity-card {
    background: #FFFFFF !important;
    border: 1px solid #E4E7EC !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
}
html[data-theme="light"] .entity-card:hover {
    background: #FFFFFF !important;
    border-color: #D0D5DD !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 8px 24px rgba(16, 24, 40, 0.08);
}

/* /our-data .ownership-card — translucent white + huge dark
   shadow built for a navy page. */
html[data-theme="light"] .ownership-card {
    background: #FFFFFF !important;
    border: 1px solid #E4E7EC !important;
    box-shadow:
        0 1px 3px rgba(16, 24, 40, 0.06),
        0 8px 24px rgba(16, 24, 40, 0.06) !important;
}

/* /our-data .comparison-card + .talent-card + .revenue-chart-card
   — unify with the same token. */
html[data-theme="light"] .comparison-card,
html[data-theme="light"] .talent-card,
html[data-theme="light"] .revenue-chart-card {
    background: #FFFFFF !important;
    border: 1px solid #E4E7EC !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06) !important;
}

/* /companies + /people + /investors .dir-card — the var(--navy-light)
   token resolves to #f5f7fb in light, basically the page color.
   Flip to white with a real border. */
html[data-theme="light"] .dir-card {
    background: #FFFFFF !important;
    border: 1px solid #E4E7EC !important;
    color: #101828 !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06) !important;
}
html[data-theme="light"] .dir-card:hover {
    background: #FFFFFF !important;
    border-color: #D0D5DD !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 8px 24px rgba(16, 24, 40, 0.08) !important;
}

html[data-theme="light"] .dir-card-name,
html[data-theme="light"] .dir-card-title {
    color: #101828;
}

html[data-theme="light"] .dir-card-pill {
    background: #EDE9FE !important;
    border-color: #C4B5FD !important;
    color: #4C1D95 !important;
    font-weight: 700;
}

html[data-theme="light"] .dir-card-arrow {
    color: #98A2B3;
}

html[data-theme="light"] .dir-card:hover .dir-card-arrow {
    color: #3E64E0;
}

@media (max-width: 720px) {
    html[data-theme="light"] .dir-card {
        position: relative;
        align-items: flex-start;
        padding-right: 2.75rem !important;
    }

    html[data-theme="light"] .dir-card-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.25rem;
    }

    html[data-theme="light"] .dir-card-name-wrap {
        width: 100%;
    }

    html[data-theme="light"] .dir-card-name {
        display: -webkit-box;
        overflow: hidden;
        text-overflow: clip;
        white-space: normal;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    html[data-theme="light"] .dir-card-pill {
        font-size: 0.66rem;
        line-height: 1.1;
        padding: 0.18rem 0.48rem;
    }

    html[data-theme="light"] .dir-card-arrow {
        position: absolute;
        top: 50%;
        right: 1rem;
        transform: translateY(-50%);
    }

    html[data-theme="light"] .dir-card:hover .dir-card-arrow {
        transform: translateY(-50%) translateX(2px);
    }
}

/* /companies filter selects — invisible at default contrast */
html[data-theme="light"] .dir-sort select,
html[data-theme="light"] .dir-filter select,
html[data-theme="light"] select.dir-control {
    background-color: #FFFFFF !important;
    border: 1px solid #D0D5DD !important;
    color: #101828 !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='none' stroke='%23475467' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1l4 4 4-4'/></svg>") !important;
}
html[data-theme="light"] .dir-sort select:hover,
html[data-theme="light"] .dir-filter select:hover {
    border-color: #98A2B3 !important;
    background-color: #F9FAFB !important;
}
html[data-theme="light"] .dir-sort select:focus,
html[data-theme="light"] .dir-filter select:focus {
    border-color: #3E64E0 !important;
    box-shadow: 0 0 0 3px rgba(62, 100, 224, 0.18) !important;
    outline: none;
}

/* Profile-search pill (/investors, /people) — the search input
   has rgba(255,255,255,.04) bg + rgba(255,255,255,.12) border.
   Both invisible on light. */
html[data-theme="light"] .profile-search-input {
    background: #FFFFFF;
    border: 1px solid #D0D5DD;
    color: #101828;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}
html[data-theme="light"] .profile-search-input::placeholder {
    color: rgba(16, 24, 40, 0.48);
    font-weight: 400;
}
html[data-theme="light"] .profile-search-input:hover {
    border-color: #98A2B3;
    background: #FFFFFF;
}
html[data-theme="light"] .profile-search-input:focus {
    border-color: #3E64E0;
    background: #FFFFFF;
    box-shadow: 0 0 0 3px rgba(62, 100, 224, 0.18);
}
html[data-theme="light"] .profile-search-icon {
    color: #667085;
}
html[data-theme="light"] .profile-search-pop {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    box-shadow:
        0 8px 24px rgba(16, 24, 40, 0.08),
        0 24px 48px rgba(16, 24, 40, 0.10);
    color: #101828;
}

/* .dir-loadmore "Load more" button — same dark-only chrome */
html[data-theme="light"] .dir-loadmore {
    background: #FFFFFF;
    border: 1px solid #D0D5DD;
    color: #101828;
}
html[data-theme="light"] .dir-loadmore:hover {
    background: #F9FAFB;
    border-color: #98A2B3;
}

/* Section "count line" (Showing N of M) */
html[data-theme="light"] .dir-section-meta {
    color: #667085;
}

/* ============================================================
   Broader sweep: dark-mode rgba leaks across marketing pages
   (Solutions, Power Law geo map, Ecosystems Network, mobile nav)
   ============================================================ */

/* Solutions: outline-white buttons + signals/radar legend chips */
html[data-theme="light"] .btn-outline-white {
    background: #FFFFFF;
    border: 1px solid #D0D5DD;
    color: #101828;
}
html[data-theme="light"] .btn-outline-white:hover {
    background: #F9FAFB;
    border-color: #98A2B3;
    color: #101828;
}

html[data-theme="light"] .radar-legend-chip,
html[data-theme="light"] .signals-group,
html[data-theme="light"] .signal-row {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    color: #101828;
}
html[data-theme="light"] .radar-legend-chip:hover {
    background: #F9FAFB;
    border-color: #D0D5DD;
}

/* Power Law geo map pills and cards (power-law-investor-ranking) */
html[data-theme="light"] .pl-geo-pill {
    background: #F2F4F7;
    border: 1px solid transparent;
    color: #475467;
}
html[data-theme="light"] .pl-geo-pill:hover {
    background: #E4E7EC;
    color: #101828;
}
html[data-theme="light"] .pl-geo-pill.active,
html[data-theme="light"] .pl-geo-pill[aria-pressed="true"] {
    background: #3E64E0;
    border-color: #3E64E0;
    color: #FFFFFF;
}

html[data-theme="light"] .pl-geo-card,
html[data-theme="light"] .pl-geo-legend {
    background: #FFFFFF;
    border: 1px solid #E4E7EC;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06);
}

/* Ecosystems Network: progress bars and similar tinted strips */
html[data-theme="light"] .progress-bar,
html[data-theme="light"] .progress-track {
    background: #F2F4F7;
}

/* Mobile nav profile cards */
html[data-theme="light"] .nav-profile-link-wide {
    background: #F9FAFB;
    border-color: #E4E7EC;
}
html[data-theme="light"] .nav-profile-icon {
    background: #EEF0FE;
    color: #3E64E0;
}

/* Profile-search dropdown row type chip */
html[data-theme="light"] .profile-search-row .type,
html[data-theme="light"] .profile-search-row .ps-type {
    background: rgba(16, 24, 40, 0.06);
    color: #475467;
}

/* Catch-all: any directory-style page that uses --navy-light for cards.
   In light mode --navy-light resolves to #f5f7fb (≈ page bg), so card
   surfaces using it visually disappear. Force white where common card
   class names appear that we haven't otherwise pinned down. */
html[data-theme="light"] .profile-card,
html[data-theme="light"] .listing-card,
html[data-theme="light"] .entity-listing-card,
html[data-theme="light"] .index-card {
    background: #FFFFFF !important;
    border: 1px solid #E4E7EC !important;
    box-shadow:
        0 1px 2px rgba(16, 24, 40, 0.04),
        0 1px 3px rgba(16, 24, 40, 0.06) !important;
}

/* GDP & Tech analysis (/gdp-tech/) — data-series + chart-surface tokens.
   USA/EU are data-encoding colours (like bullish/bearish elsewhere); grid,
   axis and band are theme-aware chart surfaces. Consumed via getComputedStyle
   so the canvas charts repaint correctly on light/dark toggle. */
html[data-theme="light"] {
    --series-usa: #3E64E0;
    --series-eu: #E0524A;
    --chart-grid: rgba(16, 24, 40, 0.10);
    --chart-axis: rgba(16, 24, 40, 0.55);
    --chart-band: rgba(16, 24, 40, 0.045);
    --chart-band-border: rgba(16, 24, 40, 0.12);
    /* Categorical region palette for multi-region charts (USA/EU keep their
       signature blue/red above; these cover the remaining region pills). */
    --series-c1: #1FA89A;
    --series-c2: #D98324;
    --series-c3: #7C5CDA;
    --series-c4: #2E9E5B;
    --series-c5: #5B6B7F;
    --series-c6: #C8569E;
    --series-c7: #A88B1E;
    --series-c8: #DD6233;
    --series-c9: #1E92BD;
    --series-c10: #9C6B43;
}
html[data-theme="dark"] {
    --series-usa: #5B8DEF;
    --series-eu: #F2685C;
    --chart-grid: rgba(255, 255, 255, 0.10);
    --chart-axis: rgba(255, 255, 255, 0.55);
    --chart-band: rgba(255, 255, 255, 0.06);
    --chart-band-border: rgba(255, 255, 255, 0.16);
    --series-c1: #34C9B6;
    --series-c2: #F0A24A;
    --series-c3: #9E80F0;
    --series-c4: #44C078;
    --series-c5: #8A9AAD;
    --series-c6: #E27BBB;
    --series-c7: #D0B43A;
    --series-c8: #F0834F;
    --series-c9: #3DB4DC;
    --series-c10: #C2895E;
}


/* Investor profile · pre-existing inline accents tokenised so investor-page
   section reorders don't trip theme-guardrails on the *relocated* literals.
   Each resolves to its prior inline value, so rendering is unchanged. */
/* Funnel stage data-encoding colours (country/hub pages hero funnel + named-
   company columns). Fixed palette — same in both themes — that encodes stage
   position; not expressible as shared semantic tokens. */
:root {
    --person-deal-ink: #c4b5fd;                 /* Midas / founder-background tags */
    --cmp-hint-ink: rgba(255, 255, 255, 0.6);   /* compare line-chart "hover…" subtitle */
    --cmp-select-blue: #93c5fd;                 /* compare intro "your selection in blue" */
    --funnel-preseed: #5DD9AA;
    --funnel-seed: #34D399;
    --funnel-a: #22D3EE;
    --funnel-b: #3B82F6;
    --funnel-c: #8B5CF6;
    --funnel-unicorn: #C4B5FD;
    --funnel-deca: #F2A55E;
}

/* Sentiment pills (company + investor profiles): the dark-mode pale inks
   (#6EE7B7 / #FCA5A5 / #FCD34D) wash out on the light surface. Repaint the
   text with contrast-safe ink in light mode; tints and status dots unchanged. */
html[data-theme="light"] .sentiment-pill.is-positive { color: #047857; }
html[data-theme="light"] .sentiment-pill.is-negative { color: #b42318; }
html[data-theme="light"] .sentiment-pill.is-mixed { color: var(--amber-ink); }
