/**
 * cc-tokens.css — the shared token layer, one copy for every drawing (brief 119, drafted by Claude Code, 15 Sep 2026).
 *
 * Step 1 of Ryan's trial (D1 A, then his "A" on 15 Sep): these are CC Shell Header's own token lines, moved here
 * verbatim, byte for byte, and the header now links this file instead of declaring them. Nothing else links it yet.
 * Once Ryan has reviewed the header in the editor, the other drawings link it too and their own copies go.
 * ⚠️ 16 names carry two or three values across the drawings today (--ground, --surface, --rule, --edge, --stroke,
 * --caption, --quiet, --meta, --lede, --ink, --loud, --gutter and four --accent-* steps); those are settled with
 * design before a second drawing links this file, never picked silently here.
 */

:root { --gutter-window:clamp(16px, 3.5443cqw + 2.18px, 44px); --gutter:var(--gutter-window); --space-apart:24px; --space-inset:16px; --space-bound:8px; --space-block:44px; --space-tight:4px; } /* ⭐ DECLARED brief 84 §2 — this drawing's own line, no longer an injection (was brief 48 A1). Transcribed from FOUNDATION: spacing and measure. ⭐ brief 86 §1 — --gutter's published value now lives in --gutter-window and --gutter reads it; same computed value, no second copy of the clamp, and the measure override on the chrome root has a name to reference. */
:root { --type-close-esc:10.5px; } /* ⭐ brief 62 §2 — published: off both --type-label (9.504px/400/.14em) and --type-micro (9.5px/400/.06em), a real third mono-caps size, not a rounding of either. */
:root { --ground:#0C0F12; --surface:#14171B; --panel:#1C2028; --rule:#272A2F; --caption:#7B8187; --quiet:#8E949C; --ink:#D6D9DE; --loud:#F5F7F9; } /* ⭐ DECLARED brief 84 §1 — this drawing's own line, no longer an injection (was brief 47 A1). Transcribed from FOUNDATION's neutral ramp. */
:root { --edge:#3F4348; } /* ⭐ brief 120 Part 3 (row 1977; Claude Code, 15 Sep, Ryan's A): CC Shell Header's search-overlay close button paints var(--edge) and nothing declared it. #3F4348 is the value the site has shipped since 11 Sep, and CC: Loadout's own ramp carries it. One of the 16 two-valued names brief 119 settles before a second drawing links this file. */
:root { --meta:#A4AAB1; } /* Declared once here (Ryan's yes, 17 Sep 2026). Every other drawing that paints var(--meta) declares this same #A4AAB1, so none of them changes. CC: Gathering declared none after linking this file, so its meta text lost its colour; this restores the value the site ships. */


/* ⛔ REALM IS INHERITED, NEVER A PROP — tokens.css §48.11, ruled 15 Aug. What follows is a
   TRANSCRIPT of the token layer so this component draws standalone, keyed to `data-realm` on
   an ANCESTOR, which is the only thing that may set a realm. ⭐ SiteHeader declares no accent
   value of its own and takes no realm: the second ladder, and REALMS[].hue with it, is gone. */
:root, [data-realm] {
  --accent-hue-oklch: 90;
  --accent-wash:  oklch(0.222 0.028 var(--accent-hue-oklch));
  --accent-ring:  oklch(0.300 0.060 var(--accent-hue-oklch));
  --accent-rule:  oklch(0.450 0.090 var(--accent-hue-oklch));
  --accent-base:  oklch(0.750 0.125 var(--accent-hue-oklch));
  --accent-press: oklch(0.660 0.125 var(--accent-hue-oklch));
  --accent-lift:  oklch(0.860 0.055 var(--accent-hue-oklch));
  --chrome-gold:  oklch(0.750 0.125 90);
  /* Facts ABOUT a realm, never the page's cast — the class matrix and the result chip.
     ⭐ brief 88 §1 — and, from today, the realm SELECTOR's matched set: it names the realm the
     reader chose, which need not be the realm the page is cast in. */
  --realm-arthurian: oklch(0.750 0.125  25);
  --realm-tuatha:    oklch(0.750 0.125 160);
  --realm-viking:    oklch(0.750 0.125 250);
  /* ⚠️ brief 88 §1, MY ONE DEVIATION FROM THE WORDING, declared. The amendment says the divider
     hairline takes --realm-*, but that is the ladder's BASE step (L 0.750 / C 0.125) and the
     seam was drawn at its RING step (--accent-ring, L 0.300 / C 0.060) — a 1px full-chroma line
     across the whole window is not a hairline, it is a rule. These three are the ring step at
     each realm's hue, transcribed off the same ladder --accent-ring comes from, so the seam
     takes the CHOSEN realm as ruled and keeps the weight it was drawn at. ⏳ To take the
     wording literally instead, point the seam at --realm-* and delete these three. */
  --realm-ring-arthurian: oklch(0.300 0.060  25);
  --realm-ring-tuatha:    oklch(0.300 0.060 160);
  --realm-ring-viking:    oklch(0.300 0.060 250);
}
[data-realm="arthurian"]        { --accent-hue-oklch:  25; }
[data-realm="tuatha-de-danann"] { --accent-hue-oklch: 160; }
[data-realm="viking"]           { --accent-hue-oklch: 250; }

/* Failure: the failed-link underline and the notice edge. Every drawing already paints
   var(--danger, oklch(0.660 0.170 22)); declared once here (Ryan, 15 Sep 2026). */
:root { --danger: oklch(0.660 0.170 22); }
