/* ============================================================
   Cognuum — LIGHT THEME
   A theme is a VALUE MAP over the token vocabulary defined in
   base.css :root. body.light reassigns those same tokens to light
   values — token values ONLY, zero component selectors. The single
   exception is the toggle's sun/moon icon swap (a state toggle, not
   a color override). Component CSS never needs a theme override.
   ============================================================ */

/* toggle icon swap (state, not color) */
#theme-toggle .i-sun{ display:none; }
body.light #theme-toggle .i-moon{ display:none; }
body.light #theme-toggle .i-sun{ display:block; }

/* ============================================================
   LIGHT VALUE MAP
   ============================================================ */
body.light{
  /* body base (no dark bleed in any gap) */
  --bg-base:#ece9e3;

  /* surfaces */
  --surface-stage:linear-gradient(180deg, #f4f2ee 0%, #ece9e3 100%);
  --surface-frag:linear-gradient(180deg, #ece9e3 0%, #e7e4de 100%);
  --scrim-frag:
    linear-gradient(90deg, rgba(244,242,238,0) 38%, rgba(244,242,238,0.42) 66%, rgba(244,242,238,0.84) 100%),
    radial-gradient(80% 60% at 50% -2%, rgba(244,242,238,0.6) 0%, rgba(244,242,238,0) 60%),
    radial-gradient(90% 50% at 50% 102%, rgba(238,235,229,0.72) 0%, rgba(238,235,229,0) 60%);
  --scrim-frag-mobile:
    linear-gradient(180deg, rgba(244,242,238,0.93) 0%, rgba(244,242,238,0.66) 23%, rgba(244,242,238,0.20) 43%, rgba(244,242,238,0.20) 58%, rgba(244,242,238,0.60) 80%, rgba(244,242,238,0.92) 100%);

  /* stage decorative layers — the conic sheen is a dark-mode polish; on light it
     muddies/bands over a tall stage, so it's switched off (grain stays) */
  --sheen-opacity:0;
  --sheen-blend:multiply;
  --grain-opacity:0.025;

  /* frosted copy backings — none needed on light (dark text on cream reads fine;
     a white wash just creates a visible lighter patch) */
  --copy-backing-hero:rgba(255,255,255,0);
  --copy-backing-frag:rgba(255,255,255,0);

  /* text-clip headline gradients */
  --gradient-headline:linear-gradient(92deg,#42434b 0%,#0e0f13 42%,#4c4d55 70%,#42434b 100%);
  --gradient-fc-main:linear-gradient(96deg,#3a3b43 0%,#0e0f13 46%,#42434b 100%);

  /* top bar (scrolled/frosted) */
  --topbar-scrolled-bg:rgba(244,242,238,0.74);
  --topbar-scrolled-border:rgba(0,0,0,0.08);

  /* hero magenta dot */
  --dot-fill:var(--crimson);
  --dot-shadow:0 0 16px rgba(232,23,74,0.35);

  /* institutional CTA */
  --cta-ink:#5a5a62;
  --cta-ink-hover:#26272c;
  --cta-border:rgba(0,0,0,0.20);
  --cta-border-hover:rgba(0,0,0,0.38);

  /* framework answers */
  --answer-info:#0a9ec4;
  --answer-narrative:#d3156e;
  --answer-reality:#2a2c32;
  --answer-exposure:#8f7a4b;

  /* semantic text inks */
  --ink-wordmark:#1b1c20;
  --ink-icon:#3b3c42;
  --ink-hero-sub:#62626a;
  --ink-fw-heading:#74747a;
  --ink-fw-q:#1f2024;
  --ink-fc-white:#2a2c32;
  --ink-fc-brand:#22252c;
  --ink-fc-sub:#6b6b72;
  --ink-fc-sub-big:#7a7a82;
  --ink-emphasis:#1c1d21;
  --ink-fc-supt:#86868d;
  --ink-fc-supt-muted:#a6a6ac;
  --ink-fc-final-sub:#76767d;
  --ink-fc-final-border:rgba(0,0,0,0.12);
  --ink-nav:#26272c;
  --ink-hint:rgba(40,42,50,0.5);
  --ink-src:rgba(40,42,50,0.5);
  --ink-src-on:rgba(26,27,31,0.95);
  --ink-src-off:rgba(40,42,50,0.32);
  --famc-white:#34363c;

  /* lens experience (overlay) */
  --lx-dim:linear-gradient(100deg, rgba(240,238,233,0) 0%, rgba(240,238,233,0.12) 26%, rgba(240,238,233,0.56) 40%, rgba(240,238,233,0.68) 100%);
  --lx-lens-scrim:radial-gradient(125% 95% at 30% 50%, rgba(244,242,238,0.78) 0%, rgba(244,242,238,0.44) 46%, rgba(244,242,238,0) 78%);
  --lx-close-bg:rgba(255,255,255,0.5);
  --lx-close-border:rgba(0,0,0,0.16);
  --lx-close-ink:#42434a;
  --lx-close-bg-hover:rgba(255,255,255,0.7);
  --lx-close-border-hover:rgba(0,0,0,0.42);
  --lx-close-ink-hover:#1c1d21;
  --lx-heading:#1f2025;
  --lx-lead:#56565d;
  --lx-meta:#6f6f76;
  --lx-meta-muted:#9a9aa1;
  --lx-nav-ink:#26272c;
  --lx-step-border:rgba(0,0,0,0.1);
  --lx-step-h:#2a2b30;
  --lx-step-p:#5f5f66;
  --lx-chip-border:rgba(0,0,0,0.16);
  --lx-chip-ink:#46474d;
  --lx-chip-bg:rgba(0,0,0,0.015);
  --lx-shot-border:rgba(0,0,0,0.12);
  --lx-shot-bg:rgba(0,0,0,0.02);

  /* content pages (assets/css/page.css) */
  --page-surface:linear-gradient(180deg, #f4f2ee 0%, #efece7 55%, #ece9e3 100%);
  --page-glow:radial-gradient(closest-side, rgba(10,158,196,0.09) 0%, rgba(10,158,196,0) 72%);
  --page-topscrim:linear-gradient(180deg, #f4f2ee 0%, #f4f2ee 46%, rgba(244,242,238,0) 100%);
  --page-ink-eyebrow:#74747a;
  --page-ink-h1:#1b1c20;
  --page-ink-h2:#1f2024;
  --page-ink-lead:#56565d;
  --page-ink-body:#42434a;
  --page-ink-quiet:#8a8a91;
  --page-accent:#0a9ec4;
  --page-rule:rgba(0,0,0,0.12);
  --page-card-bg:rgba(255,255,255,0.52);
  --page-card-border:rgba(0,0,0,0.10);
  --page-card-border-hover:rgba(0,0,0,0.32);
}
