@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/dist/fonts/merriweather-latin-700-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('/dist/fonts/merriweather-latin-900-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Merriweather Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/dist/fonts/merriweather-sans-latin-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Merriweather Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/dist/fonts/merriweather-sans-latin-500-normal.woff2') format('woff2');
}

:root {
  --bg-primary: #ffffff;
  --bg-secondary: #faf5ff;
  --bg-tertiary: #f3e8ff;
  --bg-stage-top: #d3d1d4;
  --bg-stage-base: #e4e4e6;
  --accent: #7c3aed;
  --accent-hover: #6d28d9;
  --on-accent: #ffffff;
  --text-primary: #2e1065;
  --text-secondary: #5b21b6;
  --text-muted: #5f4b8b;
  --alert: #a3123a;
  --line: rgba(46, 16, 101, 0.14);
  --line-strong: rgba(46, 16, 101, 0.38);
  --shadow-soft: 0 6px 20px rgba(46, 16, 101, 0.08);
  --shadow-lift: 0 16px 40px rgba(46, 16, 101, 0.14);
  --shadow-stage: 0 20px 60px rgba(46, 16, 101, 0.22);
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --space-5: 40px;
  --space-6: 48px;
  --space-8: 64px;
  --radius-card: 14px;
  --radius-tile: 12px;
  --radius-button: 8px;
  --font-head: 'Merriweather', Georgia, 'Times New Roman', serif;
  --font-body: 'Merriweather Sans', 'Segoe UI', Arial, sans-serif;
  --wrap-width: 1200px;
  --wave-from: #ffffff;
  --wave-to: #faf5ff;
}

[data-theme="dark"] {
  --bg-primary: #1c0a45;
  --bg-secondary: #2a1463;
  --bg-tertiary: #3a1f80;
  --accent: #c4b5fd;
  --accent-hover: #ddd6fe;
  --on-accent: #1c0a45;
  --text-primary: #f5f0ff;
  --text-secondary: #ddd0fa;
  --text-muted: #c2b3ea;
  --line: rgba(255, 255, 255, 0.18);
  --line-strong: rgba(255, 255, 255, 0.4);
}
