/* Shared design tokens for both surfaces.
 *
 * The reader is a printed page and the GM tool is a workbench; they should look like
 * they came from the same house without pretending to be the same thing. What they
 * share is the type, the rhythm, the spot colour, and the rule that nothing has a
 * rounded corner.
 *
 * The palette is now shared as well. It was not: the reader was paper and the workbench
 * was a dark ground, first warm brown and then blue-black with a red spot. The brown
 * read as a default and the blue-black with red was worse -- hard to read, and two
 * colours fighting. Cream with blue, dark ink for the text, and the same values on both
 * surfaces, because a GM moving between them is looking at one campaign.
 *
 * Legibility first, so these are chosen against contrast ratios rather than by eye:
 * ink on paper is about 14:1, soft ink about 7.5:1, and the blue about 7.4:1, which
 * keeps the spot usable for text and not only for rules and marks.
 */

:root {
  --paper: #f7f2e7;
  /* The desk the pages sit on, and the tint that separates a card from the page
   * without a shadow or a bevel: archaic in the sense of ink and rules, not of
   * simulated leather. */
  --paper-desk: #efe8d8;
  --paper-raised: #fbf8f0;
  --paper-edge: #e4dcc8;

  --ink: #1b1e23;
  --ink-soft: #4a5260;
  --rule: #c6bda8;
  --rule-strong: #a99e84;

  /* One accent, a printer's blue. Dark enough to set type in, which is what makes it
   * usable for headings and links instead of decoration only. */
  --spot: #1e4d8b;
  --spot-soft: #2f6bb5;

  /* The table the paper sits on. Dark, warm, and desaturated: this is a tool operated
   * at a table, often in low light, and a screen of cream is a screen that glares. The
   * chrome goes dark and the content stays paper, which makes the thing being read the
   * lit object rather than the frame around it. */
  /* Night, not felt. Three passes reached for the furniture of games -- paper, baize,
   * card suits -- and all three describe a table rather than this tool. What this
   * actually does is listen to a room for four hours and turn talk into something
   * findable, which makes its cousins audio and archive software, not a card table.
   * So: the blue-black those work on, at the hour these games are played. */
  --table: #14161f;
  --table-raised: #1c1f2b;
  --table-edge: #2a2f40;
  --on-table: #e6e8f2;
  --on-table-soft: #8f96ad;
  --table-rule: #313850;

  /* One signal, and it is green: the colour of an instrument that is on. Violet was
   * legible but it read as ornament, and what this thing actually is is a recorder --
   * it listens to a room and turns talk into something findable. Green is also the only
   * accent genuinely complementary to a blue-black ground, so it separates harder than
   * any blue can: 10.4:1 against the table, where the old printer's blue managed 2.5.
   * It marks the live thing -- where you are, what is selected, what was heard most
   * recently. */
  --signal: #3ddc97;
  --signal-soft: #7df0c0;
  /* Gone quiet. Dormancy is not a fault, so it is the signal drained away rather than
   * a warning colour: the same hue with the light taken out of it. */
  --signal-cold: #33594a;
  /* Text on a filled signal control: the ground showing through, so a button reads as
   * a lit key rather than as a second colour. */
  --on-signal: #0c1712;

  --danger: #96222a;
  --success: #2f6b4f;

  /* Period serif with a local-only stack: no webfont request, and Georgia as the
   * floor because every platform has it and it shares the warm, wide look. */
  --serif: 'Bookman Old Style', 'URW Bookman L', 'Palatino Linotype', Palatino,
    Georgia, 'Times New Roman', serif;
  /* Dense controls and long lists read better sans; the serif carries the titles. */
  --ui: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --mono: ui-monospace, 'Cascadia Mono', 'SF Mono', Menlo, Consolas, monospace;

  /* Corners are square everywhere. Kept as a token so it cannot drift back. */
  --radius: 0;
  --rule-thin: 1px;
  --rule-thick: 2px;

  /* Small caps, letterspaced: the section-heading idiom both surfaces use. */
  --label-size: 0.72rem;
  --label-tracking: 0.16em;
  --heading-tracking: 0.04em;

  --step: 0.25rem;
  --gutter: 1rem;
}
