/* rikyu-labs/tokens.css — Rikyu Labs master-brand tokens (documents, reports, decks, HTML→PDF).
 *
 * Why this file exists: colour values must live in token files only (rule of
 * ψ/design-systems/brand-source-check.mjs), so pages read var(--rikyu-*) instead of pasting hex.
 * Mirror of tokens.json; if the two disagree, fix both from the sources, never from memory.
 *
 * Sources (BB = ~/hello-oracle/ψ/learn/yim/rikyu-labs-brand-brief/):
 *   colours        BB/2026-09-13/1512_SOURCE-v1.0-snapshot.md §10.1, §10.2 (stone is "≈" in the brief)
 *   EN type        same file §12.1, §12.2
 *   TH type        BB/2026-09-14/rikyu-labs-brand-brief-v1.1-DRAFT.md §12.3 (Yim 2026-09-14)
 *   stack order    BB/2026-09-14/rikyu-labs-thai-type-compare-B-vs-C.html CSS (Thai falls through after Satoshi)
 *   spacing        brief §21 · line length brief §13
 *
 * Vocabulary: brief colour names (--rikyu-kuro …) plus role aliases (--rikyu-ink …).
 * Prefixed --rikyu- so it never collides with base/ (productize.life: --ink/--paper/--accent).
 * Not covered: product-suite UI tokens (~/oracle-products/rikyu-labs/packages/ui/src/tokens.mjs),
 * a document type scale, a chart palette beyond roles, dark mode — all open decisions in README.md.
 */

:root {
  /* ── palette (brief §10) ─────────────────────────────────────────── */
  --rikyu-kuro:  #1A1A1A; /* ink: primary text, logo, dark surfaces, key statements */
  --rikyu-shiro: #F7F5F2; /* paper: page background, canvas; off-white over pure white */
  --rikyu-sabi:  #C9B89E; /* accent: logo circle, highlight fill, diagram accent. ⛔ not text on shiro (1.78) */
  --rikyu-moss:  #6B7A6B; /* support: secondary accent, some data viz. ⛔ not body text (4.18 on shiro) */
  --rikyu-stone: #D9D6CF; /* rule: border, divider, inactive, secondary surface. brief: "≈" */

  /* ── roles (1:1 with brief usage) ───────────────────────────────── */
  --rikyu-ink:     var(--rikyu-kuro);
  --rikyu-paper:   var(--rikyu-shiro);
  --rikyu-accent:  var(--rikyu-sabi);
  --rikyu-support: var(--rikyu-moss);
  --rikyu-rule:    var(--rikyu-stone);

  /* ── type families ──────────────────────────────────────────────── */
  --rikyu-font-sans:  Satoshi, "IBM Plex Sans Thai", Inter, "Helvetica Neue", Arial, sans-serif;
  --rikyu-font-serif: "Source Serif 4", "Noto Serif Thai", serif; /* editorial only (manifesto, quote) */

  /* ── spacing scale (brief §21: 4 / 8 / 16 / 24 / 32 / 48 / 64 / 96) ── */
  --rikyu-space-1: 4px;
  --rikyu-space-2: 8px;
  --rikyu-space-3: 16px;
  --rikyu-space-4: 24px;
  --rikyu-space-5: 32px;
  --rikyu-space-6: 48px;
  --rikyu-space-7: 64px;
  --rikyu-space-8: 96px;

  /* ── measure (brief §13: 45–75 characters for long-form) ────────── */
  --rikyu-measure-min: 45ch;
  --rikyu-measure-max: 75ch;

  /* ── logo sizing (brief §9 + lockups MANIFEST size rule, 110 px decision 2026-09-14) ── */
  --rikyu-logo-symbol-min: 24px;
  --rikyu-logo-horizontal-min: 96px;
  --rikyu-logo-primary-min: 110px;
}
