/* tokens.css — GENERATED by tools/palette.mjs from palettes/solve-ent.json.
 * Do not edit here; edit the palette and regenerate.
 *
 * The family is Instrument, the hub's recommended default (PALETTES.md §5),
 * adopted rather than invented. The palette file is the ONE source: the hub's
 * palette-check.mjs measures that file against the hard floors, and this writes
 * these values from the same file, so what was measured and what is painted
 * cannot differ.
 *
 * Night is the default because a token needs a value outside every media query
 * and every attribute selector. Day then arrives three ways, and all three are
 * load-bearing: the system asking for light with nothing stored, an explicit
 * day beating a system set to dark, and an explicit night beating a system set
 * to light. The last is the one that gets dropped.
 *
 * Regenerate: node tools/palette.mjs
 * Check: node tools/palette.mjs --check   (runs on every commit)
 */

:root {
  color-scheme: dark light;

  --page: #1a1a1a;
  --page-alt: #232323;
  --surface: #3a3a3a;
  --surface-raised: #414141;
  --surface-pressed: #484848;
  --rail: rgba(255,255,255,.62);
  --hairline: rgba(255,255,255,.17);
  --text: #eaeaea;
  --text-2: #d2d2d2;
  --text-3: #c1c1c1;
  --accent: #9fc2f5;
  --accent-soft: rgba(159,194,245,0.15);

  /* Chrome painted per mode by the same inline script that sets data-theme;
   * a static theme-color leaves the status bar wrong in the other mode. */
  --chrome: #1a1a1a;
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme='night']) {
    --page: #c4bcab;
    --page-alt: #ccc4b3;
    --surface: #eee6d6;
    --surface-raised: #f4ecdd;
    --surface-pressed: #faf3e5;
    --rail: rgba(39,33,25,.68);
    --hairline: rgba(39,33,25,.22);
    --text: #272119;
    --text-2: #363026;
    --text-3: #4a4436;
    --accent: #17458f;
    --accent-soft: rgba(23,69,143,0.12);
    --chrome: #c4bcab;
  }
}

:root[data-theme='day'] {
  --page: #c4bcab;
  --page-alt: #ccc4b3;
  --surface: #eee6d6;
  --surface-raised: #f4ecdd;
  --surface-pressed: #faf3e5;
  --rail: rgba(39,33,25,.68);
  --hairline: rgba(39,33,25,.22);
  --text: #272119;
  --text-2: #363026;
  --text-3: #4a4436;
  --accent: #17458f;
  --accent-soft: rgba(23,69,143,0.12);
  --chrome: #c4bcab;
}

:root[data-theme='night'] {
  --page: #1a1a1a;
  --page-alt: #232323;
  --surface: #3a3a3a;
  --surface-raised: #414141;
  --surface-pressed: #484848;
  --rail: rgba(255,255,255,.62);
  --hairline: rgba(255,255,255,.17);
  --text: #eaeaea;
  --text-2: #d2d2d2;
  --text-3: #c1c1c1;
  --accent: #9fc2f5;
  --accent-soft: rgba(159,194,245,0.15);
  --chrome: #1a1a1a;
}
