/* ALTIMIT OS design tokens.
 *
 * The ONLY place raw colours, sizes and timings are allowed to appear.
 * Every other stylesheet consumes these. If you find yourself typing a
 * hex code anywhere else, the token is missing -- add it here instead.
 *
 * Reference: early-2000s MMO client. Dense, cyan-on-dark, hairline
 * borders, information-heavy, deliberately a little cheap-looking.
 * No soft shadows, no big radii, no gradients-as-decoration.
 */

:root {
  /* --- palette ------------------------------------------------- */
  --void: #05080d;
  --panel: #0d1520;
  --panel-hi: #16222f;
  --panel-lo: #080e16;
  --line: #1e3446;
  --line-hi: #2d4a61;

  --cyan: #4fd6e8;
  --cyan-dim: #2a7f8c;
  --cyan-glow: rgba(79, 214, 232, 0.15);

  --text: #cfe3ee;
  --text-dim: #7d95a5;
  --text-faint: #4a5f6e;

  --gold: #e8b84f;
  --blood: #c4453a;

  /* Magenta is RESERVED for corruption / Data Bugs / infection.
   * It must never appear in ordinary UI, so that when it does show
   * up the player's stomach drops. Do not borrow it for a hover
   * state, however tempting. */
  --corrupt: #d94fd6;
  --corrupt-dim: #7a2d78;

  /* --- type ---------------------------------------------------- */
  --font-ui: "Barlow Semi Condensed", "Roboto Condensed",
    "Segoe UI Semibold", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", "Cascadia Mono", Consolas, monospace;

  /* Small sizes and tight leading: MMO clients pack information in. */
  --fs-xs: 11px;
  --fs-sm: 13px;
  --fs-md: 15px;
  --fs-lg: 19px;
  --fs-xl: 26px;
  --fs-xxl: 38px;

  --lh-tight: 1.2;
  --lh-normal: 1.45;

  /* --- spacing (4px base) -------------------------------------- */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-6: 24px;
  --sp-8: 32px;

  /* --- chrome -------------------------------------------------- */
  /* Hairlines and bevels, not blur. Max radius 2px. */
  --radius: 2px;
  --border: 1px solid var(--line);
  --border-hi: 1px solid var(--line-hi);

  --titlebar-h: 26px;
  --taskbar-h: 34px;
  --icon-sm: 16px;
  --icon-lg: 32px;

  --z-desktop: 0;
  --z-window: 100;
  --z-taskbar: 9000;
  --z-boot: 9500;

  /* --- motion -------------------------------------------------- */
  /* Short and mechanical. This OS is not delighted to see you. */
  --t-fast: 90ms;
  --t-med: 180ms;
  --ease: cubic-bezier(0.2, 0, 0.3, 1);
}

/* Respect users who ask for less motion. Cheap to honour, rude not to. */
@media (prefers-reduced-motion: reduce) {
  :root {
    --t-fast: 0ms;
    --t-med: 0ms;
  }
}
