/**
 * Orbit Deep Space — the token contract.
 *
 * Values come from DESIGN.md and nowhere else. This file declares custom
 * properties only: no selectors beyond :root, no rules, no dark-mode block.
 * There is exactly one theme (DESIGN.md §1) and --media-surface is baked into
 * the Blender renders, so a second surface value cannot be served.
 */
:root {
  /* ---- colour: required ---- */
  --canvas: #070b12;
  --ink: #e9eef0;
  --ink-muted: rgba(233, 238, 240, 0.72);
  --rule: rgba(233, 238, 240, 0.22);
  --media-surface: #141b26;

  /* ---- colour: optional, this direction uses them ---- */
  --accent: #2563eb;
  /* White, not --canvas. The green direction could sit dark text on its accent
     (11.45:1); #2563eb is a dark blue, and #070b12 on it is only 3.81:1 — under
     AA for the skip link, the one place a solid accent fill carries text. */
  --accent-ink: #ffffff;

  /* ---- colour: recorded extension (DESIGN.md §2b) ---- */
  --ink-soft: rgba(233, 238, 240, 0.84);
  --ink-faint: rgba(233, 238, 240, 0.62);
  --ink-dim: rgba(233, 238, 240, 0.4);
  --rule-soft: rgba(233, 238, 240, 0.16);
  --rule-strong: rgba(233, 238, 240, 0.3);
  --surface-a: #111823;
  --surface-b: #151d29;
  /* Every alpha the final export actually uses, and no others. */
  --accent-nebula: rgba(37, 99, 235, 0.16);
  --accent-nebula-far: rgba(37, 99, 235, 0.05);
  --accent-nebula-cool: rgba(120, 150, 255, 0.14);
  --accent-wash: rgba(37, 99, 235, 0.07);
  --accent-beam: rgba(37, 99, 235, 0.18);
  --accent-aura: rgba(37, 99, 235, 0.35);
  --accent-line: rgba(37, 99, 235, 0.45);
  --accent-ring: rgba(37, 99, 235, 0.5);
  --accent-bloom: rgba(37, 99, 235, 0.55);
  --accent-glow: rgba(37, 99, 235, 0.6);
  --accent-edge: rgba(37, 99, 235, 0.65);
  --accent-halo: rgba(37, 99, 235, 0.8);
  --ink-veil: rgba(233, 238, 240, 0.12);
  --ink-glow: rgba(233, 238, 240, 0.6);
  --canvas-veil: rgba(7, 11, 18, 0.6);
  --canvas-deep: rgba(7, 11, 18, 0.94);

  /* Pure white, not --ink: the hero bloom and the steam are light sources, and
     the export tints neither of them toward the ink grey. */
  --bloom-white: rgba(255, 255, 255, 0.35);
  --steam-glow: rgba(255, 255, 255, 0.45);
  --steam-1: rgba(255, 255, 255, 0.55);
  --steam-2: rgba(255, 255, 255, 0.62);
  --steam-3: rgba(255, 255, 255, 0.69);

  /* ---- type ---- */
  --font-display: Syne, "Trebuchet MS", ui-sans-serif, sans-serif;
  --font-body: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  --step--1: clamp(10px, 0.8vw, 11.5px);
  --step-0: clamp(12.5px, 1vw, 14px);
  --step-1: clamp(14.5px, 1.5vw, 17px);
  --step-2: clamp(17px, 2vw, 22px);
  --step-3: clamp(28px, 4.8vw, 60px);
  --step-4: clamp(34px, 11.4vw, 118px);

  --measure: 48ch;

  /* ---- space: 8px base, half-steps at the small end ---- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4.5rem;

  /* ---- surface ---- */
  --rule-width: 1px;
  --focus-ring: 2px solid #2563eb;
  --radius: 100px;

  /* ---- motion ---- */
  --transition: 140ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
