/* theme/breakpoints.css */
:root {
  /* Reference only â€” hardcode in @media queries */
  --theme-breakpoint-sm: 550px;
  --theme-breakpoint-md: 744px;
  --theme-breakpoint-lg: 1128px;
  --theme-breakpoint-xl: 1440px;
}

/* theme/colors.css */
:root {
  /* Rausch â€” primary brand coral */
  --theme-rausch-50: #fff1f0;
  --theme-rausch-100: #ffe0de;
  --theme-rausch-200: #ffc7c3;
  --theme-rausch-300: #ffa199;
  --theme-rausch-400: #ff7b6f;
  --theme-rausch-500: #ff385c;
  --theme-rausch-600: #e0294b;
  --theme-rausch-700: #bd1e3c;
  --theme-rausch-800: #9a1731;
  --theme-rausch-900: #7d1229;

  /* Hof â€” neutral gray scale */
  --theme-hof-50: #f7f7f7;
  --theme-hof-100: #ebebeb;
  --theme-hof-200: #dddddd;
  --theme-hof-300: #b0b0b0;
  --theme-hof-400: #8a8a8a;
  --theme-hof-500: #6a6a6a;
  --theme-hof-600: #484848;
  --theme-hof-700: #333333;
  --theme-hof-800: #222222;
  --theme-hof-900: #111111;

  /* Kazan â€” teal accent */
  --theme-kazan-50: #ecfdf5;
  --theme-kazan-100: #d1fae5;
  --theme-kazan-200: #a7f3d0;
  --theme-kazan-300: #6ee7b7;
  --theme-kazan-400: #34d399;
  --theme-kazan-500: #008a05;
  --theme-kazan-600: #047857;
  --theme-kazan-700: #065f46;
  --theme-kazan-800: #064e3b;
  --theme-kazan-900: #053e30;

  /* Babu â€” blue interactive */
  --theme-babu-50: #eff6ff;
  --theme-babu-100: #dbeafe;
  --theme-babu-200: #bfdbfe;
  --theme-babu-300: #93c5fd;
  --theme-babu-400: #60a5fa;
  --theme-babu-500: #3b82f6;
  --theme-babu-600: #2563eb;
  --theme-babu-700: #1d4ed8;
  --theme-babu-800: #1e40af;
  --theme-babu-900: #1e3a8a;

  /* Arches â€” warm gold for ratings */
  --theme-arches-50: #fffbeb;
  --theme-arches-400: #fbbf24;
  --theme-arches-500: #f59e0b;
  --theme-arches-600: #d97706;

  /* Semantic raw */
  --theme-white: #ffffff;
  --theme-black: #000000;

  /* Overlay values */
  --theme-overlay-dark: rgba(0, 0, 0, 0.55);
  --theme-overlay-light: rgba(255, 255, 255, 0.9);
  --theme-focus-ring: 0 0 0 2px #ffffff, 0 0 0 4px var(--theme-rausch-500);
}

/* theme/motion.css */
:root {
  --theme-motion-fast: 120ms ease-out;
  --theme-motion-base: 200ms ease-out;
  --theme-motion-slow: 300ms cubic-bezier(0.2, 0, 0, 1);
  --theme-motion-spring: 400ms cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* theme/radii.css */
:root {
  --theme-radius-sm: 0.375rem;
  --theme-radius-md: 0.5rem;
  --theme-radius-lg: 0.75rem;
  --theme-radius-xl: 1rem;
  --theme-radius-2xl: 1.5rem;
  --theme-radius-full: 9999px;
}

/* theme/shadows.css */
:root {
  --theme-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.06);
  --theme-shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.08);
  --theme-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --theme-shadow-lg: 0 8px 28px rgba(0, 0, 0, 0.12);
  --theme-shadow-xl: 0 16px 40px rgba(0, 0, 0, 0.16);
  --theme-shadow-border: 0 0 0 1px rgba(0, 0, 0, 0.08);
  --theme-shadow-border-strong: 0 0 0 1px rgba(0, 0, 0, 0.16);
}

/* theme/spacing.css */
:root {
  --theme-spacing-2xs: 0.125rem;
  --theme-spacing-xs: 0.25rem;
  --theme-spacing-sm: 0.5rem;
  --theme-spacing-md: 0.75rem;
  --theme-spacing-lg: 1rem;
  --theme-spacing-xl: 1.5rem;
  --theme-spacing-2xl: 2rem;
  --theme-spacing-3xl: 3rem;
  --theme-spacing-4xl: 4rem;
}

/* theme/typography.css */
:root {
  --theme-font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;

  --theme-font-size-xs: 0.6875rem;
  --theme-font-size-sm: 0.75rem;
  --theme-font-size-base: 0.875rem;
  --theme-font-size-md: 1rem;
  --theme-font-size-lg: 1.125rem;
  --theme-font-size-xl: 1.375rem;
  --theme-font-size-2xl: 1.625rem;
  --theme-font-size-3xl: 2rem;
  --theme-font-size-4xl: 2.5rem;

  --theme-font-weight-normal: 400;
  --theme-font-weight-medium: 500;
  --theme-font-weight-semibold: 600;
  --theme-font-weight-bold: 700;
  --theme-font-weight-extrabold: 800;

  --theme-line-height-tight: 1.2;
  --theme-line-height-snug: 1.35;
  --theme-line-height-normal: 1.5;
  --theme-line-height-relaxed: 1.65;
}