:root {
  color-scheme: dark;

  /* Core palette */
  --bg: #111311;
  --bg-alt: #151715;
  --surface: #191b19;
  --surface-secondary: #1e211e;
  --surface-deep: #0c0e0c;
  --text-primary: #f3f3ee;
  --text-secondary: #c5c8c2;
  --text-muted: #898e87;
  --accent: #dcebcf;
  --accent-secondary: #afc5a2;
  --accent-dark: #566a51;
  --border: rgba(255, 255, 255, 0.1);
  --divider: rgba(255, 255, 255, 0.14);

  /* Layout */
  --container-width: 1600px;
  --content-width: 1320px;
  --reading-width: 780px;
  --page-gutter: clamp(2rem, 6vw, 6rem);
  --section-space: clamp(6.25rem, 10vw, 10rem);
  --grid-columns: repeat(12, minmax(0, 1fr));
  --grid-gap: clamp(1rem, 2vw, 2rem);

  /* Type */
  --font-sans: Inter, "SF Pro Display", "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;
  --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;

  /* Shape and motion */
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 10px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-frame: 0;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --transition: 260ms var(--ease);

  /* Compatibility aliases for existing course components */
  --color-primary: var(--accent);
  --color-secondary: var(--accent-secondary);
  --color-purple: var(--accent-secondary);
  --color-blue-soft: var(--surface-secondary);
  --color-bg: var(--bg);
  --color-surface: var(--surface);
  --color-cream: var(--bg);
  --color-ink: var(--text-primary);
  --color-text: var(--text-primary);
  --color-muted: var(--text-secondary);
  --color-line: var(--border);
  --color-line-strong: var(--divider);
  --gradient-brand: var(--accent);
  --gradient-frame: var(--bg);
  --gradient-text: var(--accent);
  --gradient-soft: var(--surface-secondary);
  --shadow-sm: none;
  --shadow-md: none;
  --shadow-blue: none;
  --page-width: var(--container-width);
}
