/*
  Theme tokens — Nebula-inspired dark SaaS system for IIT Nirvana.
  Edit semantic values here to retheme the whole site.
*/

:root {
  /* Primitives */
  --palette-zinc-950: #09090b;
  --palette-zinc-900: #18181b;
  --palette-zinc-800: #27272a;
  --palette-zinc-700: #3f3f46;
  --palette-zinc-500: #71717a;
  --palette-zinc-400: #a1a1aa;
  --palette-zinc-300: #d4d4d8;
  --palette-zinc-200: #e4e4e7;
  --palette-violet-50: #f5f3ff;
  --palette-violet-100: #ede9fe;
  --palette-violet-200: #ddd6fe;
  --palette-violet-300: #c4b5fd;
  --palette-violet-400: #a78bfa;
  --palette-violet-500: #8b5cf6;
  --palette-violet-600: #7c3aed;

  /* Semantic */
  --color-bg: var(--palette-zinc-900);
  --color-bg-deep: var(--palette-zinc-950);
  --color-surface: #1f1f23;
  --color-surface-2: #252529;
  --color-border: rgb(255 255 255 / 8%);
  --color-border-strong: rgb(255 255 255 / 14%);
  --color-text: var(--palette-violet-50);
  --color-text-soft: var(--palette-zinc-200);
  --color-text-muted: var(--palette-zinc-400);
  --color-text-faint: var(--palette-zinc-500);
  --color-accent: var(--palette-violet-400);
  --color-accent-strong: var(--palette-violet-500);
  --color-accent-soft: var(--palette-violet-300);
  --color-accent-contrast: #ffffff;
  --color-glow: rgb(139 92 246 / 45%);
  --color-glow-soft: rgb(167 139 250 / 18%);
  --color-header: rgb(24 24 27 / 78%);
  --color-header-solid: rgb(24 24 27 / 94%);
  --color-wash: rgb(255 255 255 / 4%);
  --color-wash-strong: rgb(255 255 255 / 6%);
  --color-scrim: rgb(9 9 11 / 45%);
  --color-grid-line: rgb(255 255 255 / 3%);
  --color-accent-line: rgb(167 139 250 / 28%);
  --color-accent-wash: rgb(139 92 246 / 18%);
  --color-hero-glow: rgb(139 92 246 / 22%);
  --color-hero-glow-edge: rgb(167 139 250 / 8%);
  --color-panel: #221b33;
  --color-panel-2: #2a2140;
  --shadow-float: 0 10px 40px rgb(0 0 0 / 28%);

  /* Type */
  --font-sans: "Geist Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;

  /* Layout */
  --content-max: 1120px;
  --header-offset: 88px;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-pill: 999px;
  --shadow-glow: 0 18px 50px var(--color-glow);
  --shadow-card: 0 20px 60px rgb(0 0 0 / 35%);
  color-scheme: dark;
}

html[data-theme="light"] {
  color-scheme: light;
  --color-bg: #f4f2f8;
  --color-bg-deep: #fffcff;
  --color-surface: #ffffff;
  --color-surface-2: #f7f4fb;
  --color-border: rgb(28 22 40 / 10%);
  --color-border-strong: rgb(28 22 40 / 16%);
  --color-text: #1b1624;
  --color-text-soft: #3c3548;
  --color-text-muted: #5c5468;
  --color-text-faint: #7a7286;
  --color-accent: #6d28d9;
  --color-accent-strong: #5b21b6;
  --color-accent-soft: #6d28d9;
  --color-accent-contrast: #ffffff;
  --color-glow: rgb(109 40 217 / 24%);
  --color-glow-soft: rgb(109 40 217 / 12%);
  --color-header: rgb(255 255 255 / 88%);
  --color-header-solid: rgb(255 255 255 / 96%);
  --color-wash: rgb(28 22 40 / 4%);
  --color-wash-strong: rgb(28 22 40 / 7%);
  --color-scrim: rgb(255 252 255 / 78%);
  --color-grid-line: rgb(28 22 40 / 6%);
  --color-accent-line: rgb(109 40 217 / 28%);
  --color-accent-wash: rgb(109 40 217 / 12%);
  --color-hero-glow: rgb(109 40 217 / 14%);
  --color-hero-glow-edge: rgb(109 40 217 / 6%);
  --color-panel: #efe8fb;
  --color-panel-2: #e4daf6;
  --shadow-card: 0 16px 40px rgb(28 22 40 / 8%);
  --shadow-float: 0 10px 30px rgb(28 22 40 / 10%);
  --shadow-glow: 0 14px 36px rgb(109 40 217 / 28%);
}
