/* ============================================================
   OpenVGAL — shared brand tokens ("Quiet Gallery")
   ------------------------------------------------------------
   Single source of truth for the palette, type, spacing, and
   elevation tokens used by every served openvgal.com / demo
   page. CI (.github/workflows/deploy-cdn.yml) copies this file
   to cdn.openvgal.com/core/brand.css; each page links that URL,
   and openvgal-site consumes the same file. Define tokens here
   only — keep page-specific component rules in each page's own
   <style>. Canonical design reference lives in the meta repo at
   reference/brand.css.
   ============================================================ */
:root {
  /* Surfaces — warm, low-chroma papers & rooms */
  --paper:     oklch(0.98 0.005 70);
  --paper-2:   oklch(0.962 0.008 75);
  --room:      oklch(0.995 0.002 80);
  --room-2:    oklch(0.985 0.004 80);

  /* Ink — near-black with a cool cast, three weights */
  --ink:       oklch(0.16 0.01 270);
  --ink-2:     oklch(0.40 0.012 270);
  --ink-3:     oklch(0.55 0.012 270);

  /* Rules — hairline dividers */
  --rule:      oklch(0.88 0.008 80);
  --rule-soft: oklch(0.92 0.006 80);

  /* Accent — the one warm "wood" tone. Use sparingly. */
  --wood:      oklch(0.78 0.065 68);
  --wood-deep: oklch(0.66 0.075 64);

  /* Type families */
  --font-sans:  "IBM Plex Sans", system-ui, sans-serif;
  --font-serif: "IBM Plex Serif", Georgia, serif;
  --font-mono:  "IBM Plex Mono", ui-monospace, monospace;

  /* Layout */
  --maxw:        1100px;
  --radius:      2px;
  --radius-lg:   8px;
  --radius-card: 12px;

  /* Elevation — long, soft, low-opacity ink shadows */
  --shadow-frame:  0 30px 60px -38px oklch(0.16 0.01 270 / 0.5);
  --shadow-window: 0 40px 80px -50px oklch(0.16 0.01 270 / 0.55);
}
