/* frontend/visitor/tokens.css */
:root {
  /* Type — exactly three sizes, per spec §4.5 */
  --text-sm: 14px;
  --text-md: 18px;
  --text-lg: 28px;

  /* Color — one accent, one neutral surface, one background */
  --color-accent: #2563eb;
  --color-surface: #ffffff;
  --color-background: #0f1115;
  --color-text: #1a1a1a;
  --color-text-on-dark: #f5f5f5;

  /* One shadow recipe: a moulded, two-layer clay shadow */
  --shadow-raised: 0 8px 20px rgba(0, 0, 0, 0.35), 0 -2px 6px rgba(255, 255, 255, 0.04) inset;

  /* One corner radius */
  --radius: 20px;

  /* Spacing scale: 4/8/16/24/32 */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 16px;
  --space-4: 24px;
  --space-5: 32px;

  /* Two values every raised-surface color/spacing token above doesn't cover:
     the video backdrop behind the slide, and a single "something needs
     attention" color for the talking-mic state and input borders. Kept
     separate from --color-background/--color-surface since conflating them
     would make a future re-theme change the wrong thing in the wrong place. */
  --color-video-backdrop: #000000;
  --color-danger: #b91c1c;
  --color-border: #dddddd;

  /* Overlay scrim (lead-capture modal backdrop) */
  --color-overlay-scrim: rgba(0, 0, 0, 0.6);
}
