/*
 * Shared design tokens.
 * Values use rem so browser text-size preferences scale interface spacing and type.
 * Keep viewport-relative values where an element is intentionally tied to the viewport.
 */
:root {
  --color-canvas: #000;
  --color-surface: #1e1e1e;
  --color-surface-raised: #333;
  --color-surface-muted: #666;
  --color-text: #f6f6f6;
  --color-text-muted: #a9a9a9;
  --color-accent: #da291c;
  --color-accent-hover: #a82016;
  --color-white: #fff;
  --color-black: #000;

  --font-family-base: "Aspekta", sans-serif;
  --font-family-light: "Aspekta-200", sans-serif;
  --font-family-semibold: "Aspekta-600", sans-serif;

  --space-1: 0.25rem;
  --space-2: 0.3125rem;
  --space-3: 0.5rem;
  --space-4: 0.625rem;
  --space-5: 0.9375rem;
  --space-6: 1.25rem;
  --space-7: 1.5rem;
  --space-8: 1.875rem;
  --space-9: 2.5rem;

  --radius-sm: 0.3125rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.625rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1.5rem;

  --transition-fast: 200ms ease;
  --transition-base: 300ms ease;
  --shadow-card: 0 0.25rem 0.375rem rgb(0 0 0 / 10%);
  --swiper-theme-color: var(--color-accent);
}
