/* GENERATED from tokens/tokens.json by scripts/build-tokens.mjs — DO NOT EDIT.
   Modes: paper (base) · void · paper-soft · void-soft. Contrast ratios and the
   v0.3.0 inversion record live in tokens.json $description fields and
   docs/decisions/0001-contrast-inversion.md. */

/* ---------- paper (base — hard column) ---------- */
.codex {
  --cdx-canvas: #FFFFFF;
  --cdx-surface: #ECECF1;
  --cdx-raised: #DBDCE2;
  --cdx-inset: #D2D3D9;
  --cdx-text-primary: #000000;
  --cdx-text-secondary: #34313A;
  --cdx-aperture: #3525A8;
  --cdx-action-fill: #3525A8;
  --cdx-action-label: #FFFFFF;
  --cdx-action-fill-pressed: #3525A8;
  --cdx-spotify: #005A2B;
  --cdx-github: #164B91;
  --cdx-xbookmarks: #000000;
  --cdx-readwise: #793600;
  --cdx-body: #7D2046;
  --cdx-success: #004A1F;
  --cdx-waiting: #004F86;
  --cdx-warning: #713200;
  --cdx-destructive: #8B121E;
  --cdx-gap: #4A4650;
  --cdx-grid: #6C6672;
  --cdx-border: #6C6672;
  --cdx-numeral-ghost: #4A4650;
  --cdx-glyph-ink: #4A4650;
  --cdx-dither-cell: #6C6672;

  /* aliases (spec §3.3 — no new hexes) */
  --cdx-needle: var(--cdx-aperture);
  --cdx-hairline-color: var(--cdx-border);
  --cdx-tick-minor: var(--cdx-grid);
  --cdx-tick-major: var(--cdx-text-primary);
  --cdx-dial-dot: var(--cdx-gap);
  --cdx-pill-idle: var(--cdx-inset);
  --cdx-pill-selected-fill: var(--cdx-text-primary);
  --cdx-pill-selected-label: var(--cdx-canvas);
  --cdx-phosphor-live: var(--cdx-success);
  --cdx-phosphor-sync: var(--cdx-waiting);
  --cdx-gilt: var(--cdx-warning);
  --cdx-nil: var(--cdx-gap);
  --cdx-overprint-ink: var(--cdx-numeral-ghost);
  --cdx-dissolve-ink: var(--cdx-dither-cell);

  /* metrics */
  --cdx-hair: 1.5px;
  --cdx-space-xs: 4px;
  --cdx-space-s: 8px;
  --cdx-space-m: 12px;
  --cdx-space-l: 16px;
  --cdx-space-xl: 24px;
  --cdx-space-xxl: 32px;
  --cdx-radius-control: 0px;
  --cdx-radius-panel: 0px;

  /* type stacks */
  --cdx-font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;
  --cdx-font-display: "MEK Sans", Handjet, ui-monospace, monospace;
  --cdx-font-mono: MonoMEK, Silkscreen, ui-monospace, monospace;
  --cdx-font-serif: ui-serif, "New York", Georgia, serif;

  /* type (v0.4.0 SPEC-01 — micrographic voice; mode-invariant, base scope only) */
  --cdx-type-micro-size: 11px;
  --cdx-type-micro-tracking: .08em;
  --cdx-type-micro-tracking-wide: .14em;
  --cdx-type-caption-size: 13px;

  /* motion (v0.4.x — UI-state register; additive, mode-invariant, base scope only) */
  --cdx-ease: cubic-bezier(0.32, 0.72, 0, 1);
  --cdx-motion-fast: 180ms;
  --cdx-motion-base: 280ms;

  background: var(--cdx-canvas);
  color: var(--cdx-text-primary);
  font-family: var(--cdx-font-sans);
  font-size: 17px;
  line-height: 1.5;
}

/* ---------- void (hard column) ---------- */
.codex[data-world="void"] {
  --cdx-canvas: #030309;
  --cdx-surface: #161621;
  --cdx-raised: #292837;
  --cdx-inset: #010104;
  --cdx-text-primary: #FFFFFF;
  --cdx-text-secondary: #E0DAE5;
  --cdx-aperture: #D2CBFF;
  --cdx-action-fill: #5846C5;
  --cdx-action-label: #FFFFFF;
  --cdx-action-fill-pressed: #5846C5;
  --cdx-spotify: #92FFC0;
  --cdx-github: #ACCEFF;
  --cdx-xbookmarks: #FFFFFF;
  --cdx-readwise: #FFD0A0;
  --cdx-body: #FFAAC8;
  --cdx-success: #92FFC0;
  --cdx-waiting: #B8DCFF;
  --cdx-warning: #FFD0A0;
  --cdx-destructive: #FFB7BD;
  --cdx-gap: #C3BCCB;
  --cdx-grid: #8F8799;
  --cdx-border: #8F8799;
  --cdx-numeral-ghost: #C3BCCB;
  --cdx-glyph-ink: #6E8A7B;
  --cdx-dither-cell: #8F8799;
}

/* ---------- soft paper (pre-0.3.0 Archival Palimpsest) ---------- */
.codex[data-contrast="soft"] {
  --cdx-canvas: #F7F3EA;
  --cdx-surface: #E2DFD9;
  --cdx-raised: #D2CFC7;
  --cdx-inset: #CAC7BF;
  --cdx-text-primary: #17151F;
  --cdx-text-secondary: #625E69;
  --cdx-aperture: #4D3AD1;
  --cdx-action-fill: #4D3AD1;
  --cdx-action-label: #FFFFFF;
  --cdx-action-fill-pressed: #4434B8;
  --cdx-spotify: #08733D;
  --cdx-github: #285CA8;
  --cdx-xbookmarks: #292731;
  --cdx-readwise: #9A4800;
  --cdx-body: #9A355D;
  --cdx-success: #05662B;
  --cdx-waiting: #145D92;
  --cdx-warning: #914300;
  --cdx-destructive: #A72832;
  --cdx-gap: #736D7B;
  --cdx-grid: #B9B1A6;
  --cdx-border: #D7D0C5;
  --cdx-numeral-ghost: #C3BCB0;
  --cdx-glyph-ink: #8A7E6B;
  --cdx-dither-cell: #CFC6B4;
  --cdx-hair: 1px;
}

/* ---------- soft void (pre-0.3.0 Environ Console) ---------- */
.codex[data-world="void"][data-contrast="soft"] {
  --cdx-canvas: #090810;
  --cdx-surface: #1E1D27;
  --cdx-raised: #302E3C;
  --cdx-inset: #030307;
  --cdx-text-primary: #F8F4FB;
  --cdx-text-secondary: #B9B2C1;
  --cdx-aperture: #B4A8FF;
  --cdx-action-fill: #6555D9;
  --cdx-action-label: #FFFFFF;
  --cdx-action-fill-pressed: #5A4BC4;
  --cdx-spotify: #5EE498;
  --cdx-github: #83B6FF;
  --cdx-xbookmarks: #E7E2EC;
  --cdx-readwise: #FFAC5C;
  --cdx-body: #FF8DB5;
  --cdx-success: #62E49B;
  --cdx-waiting: #85C6FF;
  --cdx-warning: #FFB264;
  --cdx-destructive: #FF8D96;
  --cdx-gap: #9C94A7;
  --cdx-grid: #3A3344;
  --cdx-border: #342D3F;
  --cdx-numeral-ghost: #4A4258;
  --cdx-glyph-ink: #3F5A4C;
  --cdx-dither-cell: #241E2E;
  --cdx-hair: 1px;
}

