:root {
  color-scheme: dark;
  --color-primary-50: #fdebec;
  --color-primary-100: #fbd7d9;
  --color-primary-200: #f6afb3;
  --color-primary-300: #f07e84;
  --color-primary-400: #ea424c;
  --color-primary-500: #e30613;
  --color-primary-600: #bf0510;
  --color-primary-700: #96040d;
  --color-primary-800: #6d0309;
  --color-primary-900: #490206;
  --color-primary-on: #ffffff;
  --color-primary-container: #fbd7d9;
  --color-primary-on-container: #490206;
  --color-secondary-50: #f6f6f5;
  --color-secondary-100: #edeceb;
  --color-secondary-200: #dad9d8;
  --color-secondary-300: #c3c2bf;
  --color-secondary-400: #a8a5a2;
  --color-secondary-500: #8c8984;
  --color-secondary-600: #76736f;
  --color-secondary-700: #5c5a57;
  --color-secondary-800: #43423f;
  --color-secondary-900: #2d2c2a;
  --color-secondary-on: #ffffff;
  --color-secondary-container: #edeceb;
  --color-secondary-on-container: #2d2c2a;
  --color-neutral-50: #ececec;
  --color-neutral-100: #d9d9d9;
  --color-neutral-200: #b3b3b2;
  --color-neutral-300: #848382;
  --color-neutral-400: #4b4a49;
  --color-neutral-500: #12110f;
  --color-neutral-600: #0f0e0d;
  --color-neutral-700: #0c0b0a;
  --color-neutral-800: #090807;
  --color-neutral-900: #060505;
  --color-neutral-on: #ffffff;
  --color-neutral-container: #d9d9d9;
  --color-neutral-on-container: #060505;
  --color-success-50: #eef6f2;
  --color-success-100: #deede5;
  --color-success-200: #bcdbcb;
  --color-success-300: #93c5aa;
  --color-success-400: #61aa82;
  --color-success-500: #2f8f5b;
  --color-success-600: #27784c;
  --color-success-700: #1f5e3c;
  --color-success-800: #17452c;
  --color-success-900: #0f2e1d;
  --color-success-on: #ffffff;
  --color-success-container: #deede5;
  --color-success-on-container: #0f2e1d;
  --color-error-50: #fceeee;
  --color-error-100: #f9dcde;
  --color-error-200: #f2babc;
  --color-error-300: #ea8e92;
  --color-error-400: #e15a60;
  --color-error-500: #d7262e;
  --color-error-600: #b52027;
  --color-error-700: #8e191e;
  --color-error-800: #671216;
  --color-error-900: #450c0f;
  --color-error-on: #ffffff;
  --color-error-container: #f9dcde;
  --color-error-on-container: #450c0f;
  --color-accent-50: #fcfbfb;
  --color-accent-100: #f9f8f6;
  --color-accent-200: #f3f1ed;
  --color-accent-300: #ebe8e2;
  --color-accent-400: #e2ddd4;
  --color-accent-500: #d9d2c7;
  --color-accent-600: #b6b0a7;
  --color-accent-700: #8f8b83;
  --color-accent-800: #686560;
  --color-accent-900: #454340;
  --color-accent-on: #111111;
  --color-accent-container: #f9f8f6;
  --color-accent-on-container: #454340;
  --surface: #060505;
  --surface-card: #090807;
  --surface-muted: #090807;
  --text: #ececec;
  --text-muted: #848382;
  --border-subtle: #0c0b0a;
  --color-primary-soft: #490206;
  --color-primary-strong: #f07e84;
  --color-secondary-soft: #2d2c2a;
  --color-secondary-strong: #c3c2bf;
  --color-neutral-soft: #060505;
  --color-neutral-strong: #848382;
  --color-success-soft: #0f2e1d;
  --color-success-strong: #93c5aa;
  --color-error-soft: #450c0f;
  --color-error-strong: #ea8e92;
  --color-accent-soft: #454340;
  --color-accent-strong: #ebe8e2;
  --font-heading: 'Inter', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, sans-serif;
  --text-display-lg: 48.8px;
  --leading-display-lg: 53.7px;
  --weight-display-lg: 700;
  --tracking-display-lg: normal;
  --text-display: 39.1px;
  --leading-display: 45px;
  --weight-display: 700;
  --tracking-display: normal;
  --text-headline: 31.3px;
  --leading-headline: 37.6px;
  --weight-headline: 700;
  --tracking-headline: normal;
  --text-title: 25px;
  --leading-title: 32.5px;
  --weight-title: 600;
  --tracking-title: normal;
  --text-subtitle: 20px;
  --leading-subtitle: 28px;
  --weight-subtitle: 600;
  --tracking-subtitle: normal;
  --text-body: 16px;
  --leading-body: 25.6px;
  --weight-body: 400;
  --tracking-body: normal;
  --text-label: 12.8px;
  --leading-label: 17.9px;
  --weight-label: 500;
  --tracking-label: normal;
  --space-0: 4px;
  --space-1: 8px;
  --space-2: 12px;
  --space-3: 16px;
  --space-4: 24px;
  --space-5: 32px;
  --space-6: 48px;
  --space-7: 64px;
  --radius-sm: 0;
  --radius-md: 0;
  --radius-lg: 0;
  --radius-pill: 0;
  --elevation-0: none;
  --elevation-1: 0 1px 0 rgba(0,0,0,0.06);
  --elevation-2: 0 1px 2px rgba(0,0,0,0.08);
  --container-max: 1360px;
  --grid-columns: 12;
  --density: regular;
}

:root[data-theme="light"] {
  color-scheme: light;
  --surface: #ececec;
  --surface-card: #ffffff;
  --surface-muted: #d9d9d9;
  --text: #060505;
  --text-muted: #0f0e0d;
  --border-subtle: #b3b3b2;
  --color-primary-soft: #fbd7d9;
  --color-primary-strong: #96040d;
  --color-secondary-soft: #edeceb;
  --color-secondary-strong: #5c5a57;
  --color-neutral-soft: #d9d9d9;
  --color-neutral-strong: #0c0b0a;
  --color-success-soft: #deede5;
  --color-success-strong: #1f5e3c;
  --color-error-soft: #f9dcde;
  --color-error-strong: #8e191e;
  --color-accent-soft: #f9f8f6;
  --color-accent-strong: #8f8b83;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --surface: #060505;
  --surface-card: #090807;
  --surface-muted: #090807;
  --text: #ececec;
  --text-muted: #848382;
  --border-subtle: #0c0b0a;
  --color-primary-soft: #490206;
  --color-primary-strong: #f07e84;
  --color-secondary-soft: #2d2c2a;
  --color-secondary-strong: #c3c2bf;
  --color-neutral-soft: #060505;
  --color-neutral-strong: #848382;
  --color-success-soft: #0f2e1d;
  --color-success-strong: #93c5aa;
  --color-error-soft: #450c0f;
  --color-error-strong: #ea8e92;
  --color-accent-soft: #454340;
  --color-accent-strong: #ebe8e2;
}

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font-family: var(--font-body); font-size: var(--text-body); line-height: var(--leading-body); color: var(--text); background: var(--surface); }
h1,h2,h3,h4 { font-family: var(--font-heading); margin: 0 0 var(--space-2); }
a { color: var(--color-primary-strong); }