/* Design tokens. Every color, size, and duration in the app resolves here. */

:root {
  /* Palette — cold steel and ink.
     ice   = system, progress, primary action
     ember = fracture and penalty ONLY
     gold  = rank S and legendary achievements ONLY */
  --ink-900: #0A0E13;
  --ink-800: #121820;
  --ink-700: #1C242E;
  --bone: #E6E9EC;
  --bone-dim: #8A939E;
  --ice: #7FD4E8;
  --ice-deep: #2A7A8F;
  --ember: #D9552B;
  --gold: #C9A227;

  /* Spacing — 4px base */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  /* Shape — angular identity, 2px radius maximum */
  --radius: 2px;

  /* Elevation — borders and background steps, never shadows */
  --border: 1px solid var(--ink-700);

  /* Touch */
  --tap-min: 44px;

  /* Type */
  --font-body: 'Heebo', system-ui, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, 'Courier New', monospace;
  --font-display: 'Archivo', var(--font-body);
  --weight-display: 700;
  --weight-display-strong: 900;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-md: 1rem;
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-2xl: 2rem;
  --text-3xl: 2.75rem;

  /* Motion — restrained everywhere except the rank-up sequence */
  --dur-fast: 150ms;
  --dur-base: 200ms;
  --ease: cubic-bezier(0.2, 0, 0, 1);

  /* Focus */
  --focus-ring: 2px solid var(--ice);
}

/* Suez One ships a single weight; synthesized bold is forbidden. */
:root[lang='he'] {
  --font-display: 'Suez One', var(--font-body);
  --weight-display: 400;
  --weight-display-strong: 400;
}
