:root {
  color-scheme: dark;

  --brand-primary: #2563eb;
  --brand-primary-hover: #1d4ed8;
  --brand-primary-light: #38bdf8;
  --brand-secondary: #06b6d4;
  --brand-accent: #22c55e;
  --brand-accent-dark: #16a34a;

  --background-primary: #0b1120;
  --background-secondary: #0f172a;
  --surface-primary: #111827;
  --surface-secondary: #172033;
  --surface-elevated: #1b263a;

  --text-primary: #ffffff;
  --text-secondary: #cbd5e1;
  --text-muted: #94a3b8;
  --border-subtle: rgba(148, 163, 184, 0.16);
  --border-brand: rgba(56, 189, 248, 0.28);
  --brand-glow: rgba(37, 99, 235, 0.3);

  --gradient-brand: linear-gradient(135deg, #2563eb 0%, #06b6d4 55%, #22c55e 100%);
  --gradient-blue: linear-gradient(135deg, #1d4ed8 0%, #2563eb 50%, #06b6d4 100%);
  --gradient-surface: linear-gradient(145deg, rgba(23, 32, 51, 0.96), rgba(17, 24, 39, 0.8));

  --font-sans: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;

  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-pill: 999px;

  --shadow-card: 0 12px 40px rgba(2, 6, 23, 0.35);
  --shadow-card-hover: 0 24px 56px rgba(2, 6, 23, 0.42);
  --shadow-brand: 0 0 36px rgba(37, 99, 235, 0.2);
  --shadow-focus: 0 0 0 4px rgba(56, 189, 248, 0.2);

  --transition-fast: 160ms ease;
  --transition-default: 260ms ease;
  --transition-slow: 520ms cubic-bezier(0.2, 0.8, 0.2, 1);

  --z-base: 1;
  --z-floating: 20;
  --z-header: 50;
  --z-skip: 9999;

  /* Aliases consumed by the existing animation layer. */
  --bg: var(--background-primary);
  --surface: var(--surface-primary);
  --surface-2: var(--surface-secondary);
  --text: var(--text-primary);
  --muted: var(--text-muted);
  --line: var(--border-subtle);
  --blue: var(--brand-primary);
  --cyan: var(--brand-secondary);
  --green: var(--brand-accent);
  --radius: var(--radius-lg);
  --shadow: var(--shadow-card);
}
