:root {
  /* Foundation — a phosphor screen glowing in a dark room. Near-black with the
     phosphor hue baked in, a screen-emission bloom, and a CRT edge vignette.
     NOT a flat black, NOT a grid. The green is BANKED — warm, deep, glowing
     from within — not the archetypal retina-bright terminal green. */
  --tm-black: #080d06;          /* warm phosphor-tinted black */
  --tm-glow: rgba(92, 176, 106, 0.10);   /* screen emission (banked green) */
  --tm-glow-soft: rgba(92, 176, 106, 0.05);
  --tm-vignette: rgba(0, 0, 0, 0.55);    /* CRT edge falloff */
  --tm-scanline: rgba(0, 0, 0, 0.22);

  --tm-bg: #080d06;
  --tm-surface: #0c130a;        /* panel */
  --tm-surface-raised: #111b0f;
  --tm-surface-active: #1a2e15; /* glowing/active panel */

  /* Ink — warm phosphor white, never pure white */
  --tm-text: #dbecd0;
  --tm-text-muted: #88a67f;
  --tm-text-dim: #586a4f;

  /* Phosphor — the screen's own light, banked (warm + deep, not neon) */
  --tm-primary: #58ad6a;
  --tm-primary-bright: #74c886;
  --tm-primary-glow: rgba(108, 186, 118, 0.42);
  --tm-primary-soft: #122a16;
  --tm-text-glow: rgba(108, 186, 118, 0.18);  /* headline halo (hue-matched) */
  --tm-on-primary: #04130a;                   /* dark text on the bright primary */

  /* Structure — warm green-dark hairlines (a phosphor circuit, not neutral grey) */
  --tm-line: #223420;
  --tm-line-bright: #375436;

  --tm-warning: #e6b15a;
  --tm-warning-soft: #2a2010;
  --tm-danger: #ff6b6b;
  --tm-danger-soft: #2a1212;

  /* Type — mono-dominant (the machine voice) */
  --tm-font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, ui-monospace, monospace;

  --tm-radius-sm: 3px;
  --tm-radius-md: 6px;
  --tm-radius-lg: 10px;

  --tm-shadow: 0 1px 0 rgba(125, 255, 171, 0.06) inset, 0 30px 70px -36px rgba(0, 0, 0, 0.9);
  --tm-glow-ring: 0 0 0 1px rgba(87, 229, 137, 0.20), 0 0 40px -8px var(--tm-primary-glow);

  --tm-space-1: 4px;
  --tm-space-2: 8px;
  --tm-space-3: 12px;
  --tm-space-4: 16px;
  --tm-space-5: 24px;
  --tm-space-6: 32px;
  --tm-space-7: 48px;
  --tm-space-8: 64px;
  --tm-space-9: 88px;
}
