:root {
  /* color */
  --color-primary: #16a34a;
  --color-primary-hover: #15803d;
  --color-brand-dark: #1b4332;
  --color-danger: #dc2626;
  --color-danger-bg: #fef2f2;
  --color-danger-border: #fecaca;
  --color-warning: #ea580c;
  --color-info: #1d4ed8;
  --color-text: #111827;
  --color-text-muted: #6b7280;
  --color-border: #e2e8f0;
  --color-surface: #ffffff;
  --color-surface-alt: #f8fafc;

  /* spacing scale */
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;

  /* radius / shadow */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --shadow-card: 0 2px 8px rgba(0,0,0,.08);
  --shadow-modal: 0 20px 60px rgba(0,0,0,.25);

  /* touch target */
  --touch-target-min: 44px;

  /* breakpoint — documentation only. CSS custom properties cannot be used
     inside @media conditions, so every @media query in the codebase must
     hardcode 700px literally to match this value. */
  --breakpoint-mobile: 700px;
}
