/* BPW design tokens v0.1.0 (2026-11-09). Generated from DESIGN.md by build_tokens.py. Do not edit by hand. */
/* Paste inside a namespaced wrapper instead of :root if needed. */
:root {
  --bpw-pink-500: #D61F69;
  --bpw-pink-600: #B01857;
  --bpw-pink-300: #F0568F;
  --bpw-ink-950: #1A1A1F;
  --bpw-ink-900: #23242A;
  --bpw-ink-700: #3D3D3A;
  --bpw-ink-500: #6B6B6B;
  --bpw-stone-400: #B9B9B4;
  --bpw-stone-200: #E8E8E4;
  --bpw-paper-50: #FAF9F7;
  --bpw-white: #FFFFFF;
  --bpw-red-600: #C4320A;
  --bpw-green-700: #18794E;
  --bpw-red-300: #F2795A;
  --bpw-green-400: #3FB57E;
  --bpw-white-a90: rgba(255,255,255,0.90);
  --bpw-white-a80: rgba(255,255,255,0.80);
  --bpw-white-a65: rgba(255,255,255,0.65);
  --bpw-white-a45: rgba(255,255,255,0.45);
  --bpw-white-a12: rgba(255,255,255,0.12);
  --bpw-white-a06: rgba(255,255,255,0.06);
  --bpw-ink-a04: rgba(35,36,42,0.04);
  --bpw-pink-glow-32: rgba(214,31,105,0.32);
  --bpw-bg-page: var(--bpw-ink-900);
  --bpw-bg-card: var(--bpw-ink-950);
  --bpw-bg-section-adjacent: var(--bpw-ink-950);
  --bpw-bg-hover: var(--bpw-white-a06);
  --bpw-text-heading: var(--bpw-white);
  --bpw-text-body: var(--bpw-white-a90);
  --bpw-text-secondary: var(--bpw-white-a80);
  --bpw-text-muted: var(--bpw-stone-400);
  --bpw-text-accent: var(--bpw-pink-300);
  --bpw-border: var(--bpw-white-a12);
  --bpw-border-input: var(--bpw-stone-400);
  --bpw-border-hover: var(--bpw-pink-300);
  --bpw-action: var(--bpw-pink-500);
  --bpw-on-action: var(--bpw-white);
  --bpw-action-hover: var(--bpw-pink-300);
  --bpw-on-action-hover: var(--bpw-ink-900);
  --bpw-link: var(--bpw-pink-300);
  --bpw-focus: var(--bpw-pink-300);
  --bpw-glow: var(--bpw-pink-glow-32);
  --bpw-error: var(--bpw-red-300);
  --bpw-success: var(--bpw-green-400);
  --bpw-paper-bg-page: var(--bpw-paper-50);
  --bpw-paper-bg-card: var(--bpw-white);
  --bpw-paper-bg-hover: var(--bpw-ink-a04);
  --bpw-paper-text-heading: var(--bpw-ink-900);
  --bpw-paper-text-body: var(--bpw-ink-700);
  --bpw-paper-text-muted: var(--bpw-ink-500);
  --bpw-paper-border: var(--bpw-stone-200);
  --bpw-paper-border-input: var(--bpw-ink-500);
  --bpw-paper-action: var(--bpw-pink-500);
  --bpw-paper-on-action: var(--bpw-white);
  --bpw-paper-action-hover: var(--bpw-pink-600);
  --bpw-paper-on-action-hover: var(--bpw-white);
  --bpw-paper-link: var(--bpw-pink-500);
  --bpw-paper-focus: var(--bpw-pink-500);
  --bpw-paper-error: var(--bpw-red-600);
  --bpw-paper-success: var(--bpw-green-700);
  --bpw-crisis-bg: var(--bpw-paper-50);
  --bpw-crisis-text: var(--bpw-ink-900);
  --bpw-crisis-link: var(--bpw-ink-900);
  --bpw-crisis-focus: var(--bpw-ink-900);
  --bpw-font-display: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --bpw-font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --bpw-step--1: clamp(0.8333rem, 0.7944rem + 0.1728vw, 0.95rem);
  --bpw-step-0: clamp(1rem, 0.9375rem + 0.2778vw, 1.188rem);
  --bpw-step-1: clamp(1.2rem, 1.105rem + 0.4213vw, 1.484rem);
  --bpw-step-2: clamp(1.44rem, 1.302rem + 0.6155vw, 1.855rem);
  --bpw-step-3: clamp(1.728rem, 1.531rem + 0.8761vw, 2.319rem);
  --bpw-step-4: clamp(2.074rem, 1.798rem + 1.223vw, 2.899rem);
  --bpw-step-5: clamp(2.488rem, 2.11rem + 1.682vw, 3.624rem);
  --bpw-space-0: 0px;
  --bpw-space-2: 2px;
  --bpw-space-4: 4px;
  --bpw-space-6: 6px;
  --bpw-space-8: 8px;
  --bpw-space-12: 12px;
  --bpw-space-16: 16px;
  --bpw-space-20: 20px;
  --bpw-space-24: 24px;
  --bpw-space-32: 32px;
  --bpw-space-40: 40px;
  --bpw-space-48: 48px;
  --bpw-space-64: 64px;
  --bpw-space-80: 80px;
  --bpw-space-96: 96px;
  --bpw-radius-s: 4px;
  --bpw-radius-m: 8px;
  --bpw-radius-l: 12px;
  --bpw-radius-xl: 16px;
  --bpw-radius-pill: 999px;
  --bpw-shadow-hover: none;
  --bpw-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --bpw-dur: 220ms;
  --bpw-target-min: 24px;
  --bpw-target: 44px;
}

@media (prefers-reduced-motion: reduce) {
  :root { --bpw-dur: 0ms; }
}
