/* ============================================================================
   site-tokens.css -- ONE source of truth for the corkboard world (Track A-1).
   These are board.css's original :root values, lifted here so the site and the
   board can never drift. board.css's own :root block is deleted; every page
   (site pages AND /theory/<slug>) loads this file first.

   Materials, layered by depth (closer to paper = more it is content):
     the room (void) -> wood -> cork -> paper -> ink; yarn is THE accent.
============================================================================ */
:root{
  /* the room is lit by a TELEVISION (the show artwork's dark-to-light blue),
     not a candle: blue-black walls + a desaturated screen-glow. The glow
     tokens are the logo's #1a43e9/#152fa0 knocked way down -- a basement lit
     by a screen, not a neon sign. Everything PHYSICAL (cork, wood, paper,
     yarn) stays warm; only the light is blue. */
  --void-1:#0a0e1f; --void-2:#04060f;
  --tv-1:#2e64d8;                      /* the screen itself; use sparingly (rim light, glints) */
  --tv-2:#152a52; --tv-3:#0c142c;      /* the glow it throws on the walls */
  --cork-1:#c69356; --cork-2:#a3702f; --cork-3:#6c451f;
  --wood-1:#5a3c22; --wood-2:#2f1d10;
  --paper:#ece3cf; --ink:#1b1611; --ink-soft:#574a39; --yarn:#b8302a;
  --sticky-yellow:#e7cf57; --sticky-pink:#e3a4b8; --sticky-blue:#a6c9da; --sticky-green:#c3d796; --sticky-orange:#ecb06a;
  --font-head:'Oswald','Arial Narrow',sans-serif; --font-news:'PT Serif',Georgia,serif;
  --font-type:'Special Elite','Courier New',monospace; --font-hand:'Caveat','Segoe Print',cursive; --font-marker:'Permanent Marker','Caveat',cursive;
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.55 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
  --mottle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.014' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23w)'/%3E%3C/svg%3E");
  /* paper tooth (D-2 feedback): same noise recipe as --grain but at alpha 0.06
     instead of 0.55 -- a smooth, spread, barely-there paper texture. Use this
     for large paper surfaces; --grain is for small aged scraps only. */
  --paper-tooth:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='pt'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23pt)'/%3E%3C/svg%3E");

  /* Semantic aliases: site CSS reads by role, not by material. */
  --surface-page:var(--void-1);
  --surface-card:var(--paper);
  --text-body:var(--ink);
  --text-meta:var(--ink-soft);
  --accent:var(--yarn);
  --focus-ring:var(--yarn);
}
