/*!
 * tokens.css — the app's binding to the company Brand Core (root DESIGN.md).
 * Every page links this BEFORE its own stylesheet. It is purely declarative
 * (only :root custom properties, no selectors), so linking it renders nothing
 * by itself. Change the brand in DESIGN.md, mirror it here once, and every
 * page follows; tests/tokens.test.ts asserts the two never drift.
 *
 * Property names keep the app's historical nicknames where they predate the
 * spec (ink=primary, muted=secondary/slate, bg=canvas); the guard test owns
 * that mapping. Raw brand hexes in page styles are a review reject — pages
 * only alias these tokens onto their local names.
 */
:root {
  /* Constants — light theme (DESIGN.md colors) */
  --vumo-ink:       #1A1B21;  /* primary: text, default filled buttons */
  --vumo-muted:     #7D858E;  /* secondary/slate: metadata, secondary text */
  --vumo-accent:    #FF4417;  /* interaction + AI only, scarce */
  --vumo-bg:        #F2F2F2;  /* canvas: the page */
  --vumo-surface:   #FFFFFF;  /* cards, nav, modals, tables */
  --vumo-pale:      #D8E1EA;  /* diagrams, scan grids, technical lines */
  --vumo-line:      #CCCCCC;  /* control borders */
  --vumo-separator: #EAEAEA;  /* structural dividers */
  --vumo-gray:      #E2E2E2;  /* filled controls */
  --vumo-midnight:  #081F2D;  /* premium dark panels */
  --vumo-white:     #FFFFFF;
  --vumo-black:     #000000;
  --vumo-glass:     rgba(19,18,26,.70);  /* the one overlay dimmer */

  /* Status — semantic, never expressed with accent */
  --vumo-error:        #D71919;
  --vumo-success:      #2FA86A;  /* text-grade */
  --vumo-success-fill: #56CD54;  /* dots/fills only — fails contrast as text */
  --vumo-warning:      #E68A00;

  /* Dark theme values (DESIGN.md `-dark` tokens) — pages with a dark mode
     alias these behind their theme seam; components are never forked. */
  --vumo-ink-dark:       #F2F2F2;
  --vumo-muted-dark:     #9AA0A8;
  --vumo-accent-dark:    #FF6A47;
  --vumo-bg-dark:        #121212;
  --vumo-surface-dark:   #1C1C1E;
  --vumo-pale-dark:      #31404C;
  --vumo-line-dark:      #3E3E42;
  --vumo-separator-dark: #313131;
  --vumo-gray-dark:      #333333;
  --vumo-glass-dark:     rgba(232,232,232,.70);
  --vumo-error-dark:     #FF5252;
  --vumo-success-dark:   #7DE57B;
  --vumo-warning-dark:   #F2A93B;

  /* Shapes — 0 radius on every rectangle; full only for the circular
     exceptions (dots, spinners, knobs, scan targets) */
  --vumo-radius:      0;
  --vumo-radius-full: 9999px;

  /* Type */
  --vumo-font: 'Space Grotesk', 'Space Grotesk Fallback', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --vumo-mono: ui-monospace, 'SF Mono', 'Cascadia Mono', 'Roboto Mono', Menlo, Consolas, monospace;

  /* Motion (DESIGN.md Components > Motion) */
  --vumo-t-micro: 90ms;   /* hover/press */
  --vumo-t-fast:  140ms;  /* fills, indicators */
  --vumo-t-base:  240ms;  /* panels, modals */
  --vumo-t-slow:  520ms;  /* scan sweeps, cinematic reveals */
  --vumo-ease:         cubic-bezier(0.2, 0.8, 0.2, 1);
  --vumo-ease-machine: cubic-bezier(0.65, 0, 0.35, 1);
  --vumo-ease-commit:  cubic-bezier(0.16, 1, 0.3, 1);
}
