:root {
  /* Surfaces */
  --bg-0: #08090B;
  --bg-1: #0E1014;
  --bg-2: #15171C;
  --bg-3: #1C1F25;

  /* Foreground */
  --fg-0: #F2F3F5;
  --fg-1: #C7C9CE;
  --fg-2: #8B8E96;
  --fg-3: #5A5D64;
  --fg-4: #3A3D43;

  /* Borders */
  --border-0: rgba(255,255,255,0.04);
  --border-1: rgba(255,255,255,0.06);
  --border-2: rgba(255,255,255,0.10);
  --border-3: rgba(255,255,255,0.16);

  /* Accent — default lime */
  --accent: oklch(0.84 0.18 145);
  --accent-soft: oklch(0.84 0.18 145 / 0.16);
  --accent-faint: oklch(0.84 0.18 145 / 0.06);
  --accent-fg: #08090B;

  /* Status colors */
  --status-active: oklch(0.82 0.16 145);
  --status-dev: oklch(0.82 0.14 75);
  --status-planning: oklch(0.78 0.10 250);
  --status-idea: oklch(0.70 0.04 280);

  /* Type */
  --font-sans: "Geist", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;

  /* Sizing */
  --container: 1240px;
  --section-pad: 140px;
  --gap-tight: 24px;
  --gap: 40px;
  --gap-loose: 80px;

  /* Radii */
  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 16px;
  --r-xl: 24px;

  /* Easing */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}

[data-density="compact"] {
  --section-pad: 100px;
  --gap: 28px;
}

[data-density="spacious"] {
  --section-pad: 180px;
  --gap: 56px;
}

[data-accent="lime"] {
  --accent: oklch(0.84 0.18 145);
  --accent-soft: oklch(0.84 0.18 145 / 0.16);
  --accent-faint: oklch(0.84 0.18 145 / 0.06);
  --accent-fg: #08090B;
}

[data-accent="cyan"] {
  --accent: oklch(0.84 0.13 215);
  --accent-soft: oklch(0.84 0.13 215 / 0.16);
  --accent-faint: oklch(0.84 0.13 215 / 0.06);
  --accent-fg: #08090B;
}

[data-accent="amber"] {
  --accent: oklch(0.84 0.15 80);
  --accent-soft: oklch(0.84 0.15 80 / 0.16);
  --accent-faint: oklch(0.84 0.15 80 / 0.06);
  --accent-fg: #08090B;
}

[data-accent="violet"] {
  --accent: oklch(0.78 0.16 295);
  --accent-soft: oklch(0.78 0.16 295 / 0.16);
  --accent-faint: oklch(0.78 0.16 295 / 0.06);
  --accent-fg: #F2F3F5;
}

[data-accent="white"] {
  --accent: #F2F3F5;
  --accent-soft: rgba(242,243,245,0.16);
  --accent-faint: rgba(242,243,245,0.06);
  --accent-fg: #08090B;
}
