/**
 * Room84 — shared design tokens.
 *
 * Linked from every themed page (index.html, item.html, catalog/index.html,
 * legal/index.html). Previously this exact block was duplicated inline,
 * byte-for-byte, in all four <style> tags — one file forgotten during an
 * edit was a real, silent failure mode: three pages updated, one still
 * showing the old value, discovered by a visitor instead of a check. This
 * file is the fix: one block, one place, every page inherits it via <link>.
 *
 * site/signature.html and site/legal-adjacent one-off tools are NOT themed
 * pages and do not link this file — they're a separate, always-light
 * internal tool, not part of the buyer-facing brand surface.
 *
 * Do NOT reintroduce a `:root{...}` block in any page's own <style> tag;
 * grep every themed page for `:root{` before committing a token change —
 * it should only ever match here.
 *
 * ── LIGHT MODE ──────────────────────────────────────────────────────────
 * Every value below was chosen by matching that SAME token's own dark-mode
 * contrast ratio against the new background — not by picking a new ratio
 * that merely clears some minimum. That keeps each token's relative visual
 * weight (how loud or quiet it reads next to the others) identical across
 * both themes, rather than inventing six new relationships from scratch.
 * Measured with the WCAG relative-luminance formula, not estimated.
 *
 *   token     dark value   dark ratio    light value   light ratio
 *   --bg      #0E0E10      —             #F2F2EF       — (swap)
 *   --ink     #F2F2EF      17.19:1       #0E0E10       17.19:1 (swap)
 *   --muted   #A0A29E       7.49:1       #4D4D4C        7.55:1
 *   --dim     #8A8B88       5.63:1       #5F605E        5.64:1
 *   --accent  #FF3B18       5.41:1       #FF3B18        3.18:1 (see note)
 *   --line    #26262A       1.28:1       #D8D8D3        1.28:1
 *   --slash   #4A4A4C       2.18:1       #A5A5A2        2.20:1
 *
 * --accent is the one deliberate exception to "match the same ratio," and
 * ⚠️ AS OF 2026-09-05 IT IS BELOW AA FOR TEXT (3.18:1, needs 4.5:1) — an
 * operator decision, made with eyes open, not an oversight. HISTORY: an
 * earlier pass darkened light-mode accent to #A21800 (7.02:1) because
 * --accent is text at rest in five places — nav a.here, .idx/.btn2, .cond,
 * .descs .label, and the legal page's inline links (.body a, td a) — and a
 * bare-AA value was judged to need more headroom than the number alone
 * suggested. That reasoning was sound and is kept here for the record, but
 * the operator has since decided ONE ORANGE ACROSS BOTH THEMES matters more
 * than that headroom: brand consistency over the contrast number, decided
 * after looking at a rendered ladder between the two candidate values
 * (room84-site/scratch-orange-ladder.html). Checked against a live render
 * of all five text-at-rest spots before shipping — see the session
 * handover this shipped in for the read on each one. If a future session
 * is asked to "fix the light accent contrast," READ THIS FIRST: reverting
 * to a darker value without asking is undoing a considered decision, not
 * fixing a bug.
 *
 * ⚠️ AMENDED 6 Sep 2026 — THE COUNT ABOVE IS NOW SEVEN, AND THE PRECEDENT
 * DOES NOT AUTOMATICALLY COVER THE TWO NEW ONES.
 *
 * The item page's two quiet CTA links (`.cta .wa-alt a` and `.cta .idx`)
 * moved to --accent at rest by operator decision. Measured in both themes at
 * 320/390/900px: 5.41:1 dark, 3.18:1 light — the same ratios as every other
 * accent-at-rest spot.
 *
 * THE RATIO IS THE SAME. THE TYPE SIZE IS NOT. Every spot the 5 Sep ladder
 * was judged against renders at 13px or larger. These two are 11px — the
 * SMALLEST type --accent has ever carried on this site. The ladder decision
 * was taken looking at 13px, and 3.18:1 at 11px on a phone in daylight is a
 * different proposition from 3.18:1 at 13px: WCAG's ratio does not vary with
 * size below the 18.66px/24px large-text threshold, so the number cannot
 * tell you the difference, and the number is what the 5 Sep note reasoned
 * from. These two links were also not in the "live render of all five",
 * because they did not exist yet.
 *
 * NOTHING IS BEING CHANGED HERE. The token stands, the 5 Sep decision stands,
 * and the operator is looking at these two on a real screen before deciding.
 * This note exists so that a future reader does not cite the 5 Sep precedent
 * for an 11px case it never examined.
 *
 * --line and --slash are overridden even though reusing the dark hex
 * would pass MORE contrast on light (13.44:1 / 7.88:1) — the problem was
 * never a contrast failure, it's that a deliberately barely-there hairline
 * would become a bold, dark, clearly-visible line, changing the design's
 * quietness rather than its legibility. #D8D8D3 is not a new invention —
 * it is the original brand-kit doc's own proposed "Line, UI-only, borders"
 * value, and it independently measures exactly 1.28:1 here.
 */
:root{
  --bg:#0E0E10; --ink:#F2F2EF; --accent:#FF3B18; --muted:#A0A29E;
  --dim:#8A8B88; --line:#26262a; --slash:#4A4A4C;
  --pad:clamp(18px,5vw,64px);
}
:root[data-theme="light"]{
  --bg:#F2F2EF; --ink:#0E0E10; --accent:#FF3B18; --muted:#4D4D4C;
  --dim:#5F605E; --line:#D8D8D3; --slash:#A5A5A2;
}
