/* Generated from shared/design-tokens/tokens.json — DO NOT EDIT BY HAND.
   Run: node shared/scripts/generate-theme-tokens.mjs */

:root {
  --color-brand-primary: #E8A598;
  --color-brand-primary-light: #F0A995;
  --color-brand-primary-dark: #D66E57;
  --color-brand-primary-bg: rgba(232, 165, 152, 0.10);
  --color-brand-primary-border: rgba(232, 165, 152, 0.30);
  --color-brand-accent: #E8D5B7;
  --color-brand-accent-light: #EAD7B8;
  --color-brand-accent-dark: #CBB392;
  --color-brand-accent-bg: rgba(232, 213, 183, 0.12);
  --color-brand-accent-border: rgba(232, 213, 183, 0.30);
  --color-indigo: #5B6FB0;
  --color-indigo-light: #7A8DC8;
  --color-indigo-dark: #475693;
  --color-sage: #789870;
  --color-sage-light: #9CB593;
  --color-sage-dark: #5D7B56;
  --color-honey: #D4AD66;
  --color-honey-light: #E9CC93;
  --color-honey-dark: #B8904A;
  --color-blush200: #F7CBBA;
  --color-blush300: #F0A995;
  --color-blush400: #E8A598;
  --color-blush500: #D66E57;
  --color-blush600: #B8563F;
  --color-champagne300: #F2E3CB;
  --color-champagne400: #EAD7B8;
  --color-champagne500: #E8D5B7;
  --color-champagne600: #CBB392;
  --color-success: #789870;
  --color-success-bg: rgba(120, 152, 112, 0.10);
  --color-warning: #D4AD66;
  --color-warning-bg: rgba(212, 173, 102, 0.12);
  --color-error: #C96B5E;
  --color-error-bg: rgba(201, 107, 94, 0.10);
  --color-info: #5B6FB0;
  --color-info-bg: rgba(91, 111, 176, 0.10);
  --gradient-brand: linear-gradient(135deg, #E8A598 0%, #E8D5B7 100%);
  --gradient-brand-subtle: linear-gradient(135deg, rgba(232, 165, 152, 0.15) 0%, rgba(232, 213, 183, 0.10) 100%);
  --gradient-sunrise: linear-gradient(160deg, #FCE8E0 0%, #F5E4C2 100%);
  --gradient-dusk: linear-gradient(160deg, #2F3649 0%, #191E2B 100%);
  --gradient-card-dark: linear-gradient(165deg, #232938 0%, #191E2B 100%);
  --gradient-card-light: linear-gradient(165deg, #FFFFFF 0%, #F5F2EA 100%);
  --gradient-shimmer: linear-gradient(90deg, transparent 0%, var(--color-skeleton-shine) 50%, transparent 100%);
  --font-display: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', Consolas, monospace;
  --text-display-xl-size: 2.5rem;
  --text-display-xl-weight: 800;
  --text-display-xl-line-height: 1.05;
  --text-display-xl-tracking: -0.03em;
  --text-display-lg-size: 2rem;
  --text-display-lg-weight: 700;
  --text-display-lg-line-height: 1.1;
  --text-display-lg-tracking: -0.025em;
  --text-display-md-size: 1.625rem;
  --text-display-md-weight: 700;
  --text-display-md-line-height: 1.15;
  --text-display-md-tracking: -0.025em;
  --text-heading-xl-size: 1.5rem;
  --text-heading-xl-weight: 700;
  --text-heading-xl-line-height: 1.2;
  --text-heading-xl-tracking: -0.02em;
  --text-heading-lg-size: 1.25rem;
  --text-heading-lg-weight: 700;
  --text-heading-lg-line-height: 1.25;
  --text-heading-lg-tracking: -0.02em;
  --text-heading-md-size: 1.0625rem;
  --text-heading-md-weight: 600;
  --text-heading-md-line-height: 1.3;
  --text-heading-md-tracking: -0.015em;
  --text-heading-sm-size: 0.9375rem;
  --text-heading-sm-weight: 600;
  --text-heading-sm-line-height: 1.35;
  --text-heading-sm-tracking: -0.01em;
  --text-body-lg-size: 1rem;
  --text-body-lg-weight: 400;
  --text-body-lg-line-height: 1.55;
  --text-body-md-size: 0.875rem;
  --text-body-md-weight: 400;
  --text-body-md-line-height: 1.5;
  --text-body-sm-size: 0.8125rem;
  --text-body-sm-weight: 400;
  --text-body-sm-line-height: 1.45;
  --text-caption-size: 0.75rem;
  --text-caption-weight: 500;
  --text-caption-line-height: 1.4;
  --text-label-size: 0.6875rem;
  --text-label-weight: 600;
  --text-label-line-height: 1.3;
  --text-label-tracking: 0.04em;
  --text-mono-size: 0.8125rem;
  --text-mono-weight: 500;
  --text-mono-line-height: 1.45;
  --text-mono-tracking: 0.02em;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --spacing-base: 4px;
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --radius-2xl: 28px;
  --radius-full: 9999px;
  --shadow-xs: 0 1px 2px rgba(17, 21, 32, 0.04);
  --shadow-sm: 0 2px 6px rgba(17, 21, 32, 0.06);
  --shadow-md: 0 4px 14px rgba(17, 21, 32, 0.08);
  --shadow-lg: 0 8px 24px rgba(17, 21, 32, 0.12);
  --shadow-xl: 0 16px 48px rgba(17, 21, 32, 0.18);
  --shadow-brand: 0 8px 28px rgba(232, 165, 152, 0.35);
  --shadow-accent: 0 8px 28px rgba(232, 213, 183, 0.35);
  --shadow-glow: 0 0 40px rgba(232, 165, 152, 0.25);
  --motion-fast: 150ms;
  --motion-normal: 250ms;
  --motion-spring: 500ms;
  --motion-slow: 700ms;
  --motion-stagger: 80ms;
  --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-bounce: cubic-bezier(0.68, -0.55, 0.27, 1.55);
  --focus-ring-color: rgba(232, 165, 152, 0.55);
  --focus-ring-width: 2px;
  --focus-ring-offset: 2px;
  --min-touch-target: 44px;

  /* Backcompat aliases */
  --color-primary: var(--color-brand-primary);
  --color-primary-light: var(--color-brand-primary-light);
  --color-primary-dark: var(--color-brand-primary-dark);
  --color-primary-bg: var(--color-brand-primary-bg);
  --color-primary-border: var(--color-brand-primary-border);
  --color-accent: var(--color-brand-accent);
  --color-accent-light: var(--color-brand-accent-light);
  --color-accent-dark: var(--color-brand-accent-dark);
  --color-accent-bg: var(--color-brand-accent-bg);
  --color-accent-border: var(--color-brand-accent-border);
}

/* Light theme (default, warm cream paper) */
:root, :root[data-theme="light"] {
  --color-background: #FBF9F4;
  --color-surface: #FFFFFF;
  --color-surface-elevated: #FFFFFF;
  --color-surface2: #F5F2EA;
  --color-text: #111520;
  --color-text-secondary: #2E2C26;
  --color-text-muted: #6F6A5E;
  --color-text-disabled: #A8A294;
  --color-border: rgba(17, 21, 32, 0.08);
  --color-border2: rgba(17, 21, 32, 0.14);
  --color-border-focus: rgba(232, 165, 152, 0.50);
  --color-overlay: rgba(17, 21, 32, 0.45);
  --color-shadow: rgba(17, 21, 32, 0.06);
  --color-shadow-lg: rgba(17, 21, 32, 0.14);
  --color-skeleton: #EAE6DA;
  --color-skeleton-shine: #F5F2EA;
  /* Backcompat aliases */
  --color-bg: var(--color-background);
  --color-muted: var(--color-text-muted);
}

/* Dark theme — night Dusk */
:root[data-theme="dark"] {
  --color-background: #111520;
  --color-surface: #191E2B;
  --color-surface-elevated: #232938;
  --color-surface2: #2F3649;
  --color-text: #FBF9F4;
  --color-text-secondary: #EAE6DA;
  --color-text-muted: #A8A294;
  --color-text-disabled: #6F6A5E;
  --color-border: rgba(232, 236, 245, 0.08);
  --color-border2: rgba(232, 236, 245, 0.14);
  --color-border-focus: rgba(240, 169, 149, 0.55);
  --color-overlay: rgba(0, 0, 0, 0.65);
  --color-shadow: rgba(0, 0, 0, 0.35);
  --color-shadow-lg: rgba(0, 0, 0, 0.55);
  --color-skeleton: #2F3649;
  --color-skeleton-shine: #3D4558;
  /* Backcompat aliases */
  --color-bg: var(--color-background);
  --color-muted: var(--color-text-muted);
}

/* System preference = dark, unless user explicitly chose light */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --color-background: #111520;
    --color-surface: #191E2B;
    --color-surface-elevated: #232938;
    --color-surface2: #2F3649;
    --color-text: #FBF9F4;
    --color-text-secondary: #EAE6DA;
    --color-text-muted: #A8A294;
    --color-text-disabled: #6F6A5E;
    --color-border: rgba(232, 236, 245, 0.08);
    --color-border2: rgba(232, 236, 245, 0.14);
    --color-border-focus: rgba(240, 169, 149, 0.55);
    --color-overlay: rgba(0, 0, 0, 0.65);
    --color-shadow: rgba(0, 0, 0, 0.35);
    --color-shadow-lg: rgba(0, 0, 0, 0.55);
    --color-skeleton: #2F3649;
    --color-skeleton-shine: #3D4558;
  }
}
