/* Design tokens — dark "tech" palette with neon accents (business spec BR-12). */
@font-face {
  font-family: 'Space Grotesk';
  src: url('../fonts/space-grotesk-latin.woff2') format('woff2');
  font-weight: 300 700;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-latin.woff2') format('woff2');
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: 'JetBrains Mono';
  src: url('../fonts/jetbrains-mono-latin.woff2') format('woff2');
  font-weight: 100 800;
  font-display: swap;
}

:root {
  color-scheme: dark;

  /* Surfaces */
  --color-bg: #070a14;
  --color-bg-elevated: #0d1222;
  --color-surface: rgb(255 255 255 / 0.045);
  --color-surface-strong: rgb(255 255 255 / 0.08);
  --color-border: rgb(255 255 255 / 0.09);
  --color-border-strong: rgb(255 255 255 / 0.18);

  /* Text */
  --color-text: #e8ebf5;
  --color-text-muted: #a3adc8;
  --color-text-faint: #8590ad;

  /* Accents */
  --color-cyan: #22d3ee;
  --color-violet: #a78bfa;
  --color-magenta: #f472b6;
  --color-amber: #fbbf24;
  --color-green: #4ade80;
  --gradient-accent: linear-gradient(100deg, var(--color-cyan) 0%, var(--color-violet) 50%, var(--color-magenta) 100%);
  --glow-cyan: 0 0 24px rgb(34 211 238 / 0.35);
  --glow-violet: 0 0 32px rgb(167 139 250 / 0.3);

  /* Diagram interaction kinds */
  --kind-sync: var(--color-cyan);
  --kind-async: var(--color-magenta);
  --kind-config: var(--color-violet);
  --kind-telemetry: var(--color-amber);

  /* Typography */
  --font-display: 'Space Grotesk', 'Segoe UI', system-ui, sans-serif;
  --font-body: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, 'Cascadia Code', Consolas, monospace;
  --text-xs: 0.78rem;
  --text-sm: 0.9rem;
  --text-base: 1rem;
  --text-lg: 1.15rem;
  --text-xl: clamp(1.3rem, 1.1rem + 0.8vw, 1.6rem);
  --text-2xl: clamp(1.8rem, 1.4rem + 1.8vw, 2.6rem);
  --text-hero: clamp(2.6rem, 1.6rem + 5vw, 5.2rem);

  /* Spacing & shape */
  --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: 5rem;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-pill: 999px;
  --container: 1180px;
  --gutter: clamp(16px, 4vw, 40px);
  --header-height: 64px;

  /* Motion */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --duration: 600ms;
}
