@layer theme {
  [data-theme="ember"] {
    --contract-version: 2;
    --bg: oklch(0.98 0.012 70); --surface: oklch(0.96 0.02 60); --surface-2: oklch(0.92 0.03 55);
    --text: oklch(0.24 0.03 40); --text-muted: oklch(0.52 0.04 45); --border: oklch(0.86 0.03 55);
    --accent-base: oklch(0.64 0.18 40); --accent: var(--accent-base);
    --on-accent: oklch(0.99 0 0); --link: oklch(0.55 0.17 40); --focus-ring: var(--accent-base);
    --font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --font-display: Georgia, "Times New Roman", serif;
    --font-mono: ui-monospace, "SF Mono", Menlo, monospace;
    --step--1: clamp(0.833rem, 0.8rem + 0.16vw, 0.9rem);
    --step-0: clamp(1rem, 0.95rem + 0.24vw, 1.125rem);
    --step-1: clamp(1.2rem, 1.1rem + 0.5vw, 1.4rem);
    --step-2: clamp(1.44rem, 1.28rem + 0.8vw, 1.8rem);
    --step-3: clamp(1.728rem, 1.5rem + 1.15vw, 2.4rem);
    --step-4: clamp(2.07rem, 1.7rem + 1.9vw, 3.25rem);
    --space-3xs: 0.125rem; --space-2xs: 0.25rem; --space-xs: 0.5rem; --space-s: 0.75rem;
    --space-m: 1rem; --space-l: 1.5rem; --space-xl: 2rem; --space-2xl: 3rem; --space-3xl: 4.5rem;
    --gutter: clamp(1rem, 0.5rem + 2.5vw, 2.5rem); --measure: 64ch;
    --radius-sm: 0.125rem; --radius: 0.375rem; --radius-lg: 0.625rem; --border-width: 1px;
    --shadow-1: 0 1px 2px oklch(0.3 0.05 40 / 0.1);
    --shadow-2: 0 1rem 2.5rem oklch(0.3 0.05 40 / 0.18);
    --ease: cubic-bezier(0.2, 0, 0, 1); --dur-fast: 120ms; --dur: 220ms; --dur-slow: 420ms;
    --bg-scrim: color-mix(in oklab, var(--bg) 78%, transparent); --bg-blur: 0.75rem;
    --glass-bg: color-mix(in oklab, var(--surface) 60%, transparent);
    --glass-blur: 0.75rem;
    --glass-border: color-mix(in oklab, var(--text) 12%, transparent);
  }
  @media (prefers-color-scheme: dark) {
    [data-theme="ember"] {
      --bg: oklch(0.18 0.02 40); --surface: oklch(0.22 0.025 40); --surface-2: oklch(0.27 0.03 40);
      --text: oklch(0.95 0.01 60); --text-muted: oklch(0.72 0.03 50); --border: oklch(0.34 0.03 45);
      --on-accent: oklch(0.18 0.02 40); --link: oklch(0.8 0.14 45);
      --shadow-1: 0 1px 2px oklch(0 0 0 / 0.5); --shadow-2: 0 1rem 2.5rem oklch(0 0 0 / 0.6);
    }
  }
}
