:root {
  color-scheme: light;
  --lz-sage-900: #34473f;
  --lz-sage-800: #465d53;
  --lz-sage-700: #5f7569;
  --lz-sage-500: #91a58e;
  --lz-sage-300: #bdcbb8;
  --lz-sage-200: #dbe3d4;
  --lz-sage-100: #eef2e8;
  --lz-cream-50: #fffdf8;
  --lz-cream-100: #fbf7ec;
  --lz-cream-200: #f2ead9;
  --lz-mist-100: #edf0f5;
  --lz-mist-300: #cbd3df;
  --lz-coral-100: #ffe6d8;
  --lz-coral-300: #f7b49b;
  --lz-coral-500: #e7856d;
  --lz-purple-100: #eee9fb;
  --lz-purple-300: #c9b9ed;
  --lz-purple-500: #8a6fca;
  --lz-purple-600: #7559ba;
  --lz-purple-700: #6046a5;
  --lz-ink: #26332e;
  --lz-ink-soft: #53615a;
  --lz-muted: #7b857f;
  --lz-line: rgba(69, 92, 82, 0.14);
  --lz-line-strong: rgba(93, 106, 99, 0.24);
  --lz-success: #4c8063;
  --lz-warning: #a8672d;
  --lz-danger: #b95158;
  --lz-focus: #6f53b3;

  --lz-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", Arial, sans-serif;
  --lz-font-xs: 0.75rem;
  --lz-font-sm: 0.875rem;
  --lz-font-md: 1rem;
  --lz-font-lg: 1.125rem;
  --lz-font-xl: clamp(1.35rem, 2vw, 1.75rem);
  --lz-font-display: clamp(2.3rem, 5.2vw, 5.2rem);
  --lz-leading: 1.7;

  --lz-space-1: 4px;
  --lz-space-2: 8px;
  --lz-space-3: 12px;
  --lz-space-4: 16px;
  --lz-space-5: 20px;
  --lz-space-6: 24px;
  --lz-space-8: 32px;
  --lz-space-10: 40px;
  --lz-space-12: 48px;
  --lz-space-16: 64px;

  --lz-radius-sm: 10px;
  --lz-radius-md: 14px;
  --lz-radius-lg: 20px;
  --lz-radius-xl: 28px;
  --lz-radius-pill: 999px;
  --lz-shadow-sm: 0 6px 18px rgba(60, 69, 64, 0.07);
  --lz-shadow-md: 0 14px 38px rgba(60, 69, 64, 0.1);
  --lz-shadow-lg: 0 24px 64px rgba(48, 59, 53, 0.14);
  --lz-shadow-purple: 0 12px 30px rgba(105, 78, 170, 0.24);
  --lz-control-height: 48px;
  --lz-header-height: 72px;
  --lz-bottom-height: 74px;
  --lz-content-max: 1320px;
  --lz-transition: 180ms cubic-bezier(.2, .7, .2, 1);

  /* Compatibility tokens for existing templates. */
  --cosmic-deep: var(--lz-sage-100);
  --cosmic-night: var(--lz-cream-100);
  --cosmic-panel: rgba(255, 253, 248, 0.88);
  --cosmic-panel-strong: rgba(255, 253, 248, 0.96);
  --cosmic-card: rgba(255, 255, 255, 0.72);
  --cosmic-card-strong: rgba(255, 255, 255, 0.92);
  --cosmic-line: var(--lz-line);
  --cosmic-line-strong: var(--lz-line-strong);
  --cosmic-text: var(--lz-ink);
  --cosmic-text-soft: var(--lz-ink-soft);
  --cosmic-muted: var(--lz-muted);
  --cosmic-dim: #97a099;
  --cosmic-gold: var(--lz-coral-500);
  --cosmic-gold-strong: #d77158;
  --cosmic-peach: var(--lz-coral-300);
  --cosmic-pink: var(--lz-purple-300);
  --cosmic-violet: var(--lz-purple-600);
  --cosmic-blue: #718db5;
  --cosmic-cyan: #75aaa2;
  --cosmic-green: #70a184;
  --cosmic-danger: var(--lz-danger);
  --cosmic-shadow: var(--lz-shadow-lg);
  --cosmic-radius-xl: var(--lz-radius-xl);
  --cosmic-radius-lg: var(--lz-radius-lg);
  --cosmic-radius-md: var(--lz-radius-md);
  --cosmic-radius-sm: var(--lz-radius-sm);
  --cosmic-bottom-height: var(--lz-bottom-height);
}

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