:root {
  --color-primary:#7311d4; --color-primary-light:#9845e8; --color-primary-dark:#5a0da8;
  --color-primary-10:rgba(115,17,212,.10); --color-primary-20:rgba(115,17,212,.20); --color-primary-40:rgba(115,17,212,.40);
  --color-accent:#f59e0b; --color-accent-light:#fbbf24;
  --color-accent-10:rgba(245,158,11,.10); --color-accent-20:rgba(245,158,11,.20);
  --color-bg:#f7f6f8; --color-bg-alt:#ffffff; --color-bg-muted:#f0eef4; --color-surface:#ffffff;
  --color-text:#0f0a1a; --color-text-muted:#64748b;
  --color-border:rgba(115,17,212,.08); --color-border-strong:rgba(115,17,212,.20);
  --font-family:"Plus Jakarta Sans",sans-serif;
  --font-size-xs:.75rem; --font-size-sm:.875rem; --font-size-base:1rem; --font-size-lg:1.125rem;
  --font-size-xl:1.25rem; --font-size-2xl:1.5rem; --font-size-3xl:2rem; --font-size-4xl:2.5rem;
  --font-size-hero:clamp(2.5rem,6vw,4.5rem);
  --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.25rem;
  --space-6:1.5rem; --space-8:2rem; --space-10:2.5rem; --space-12:3rem; --space-16:4rem;
  --space-20:5rem; --space-24:6rem; --space-32:8rem;
  --radius-sm:.5rem; --radius-md:.75rem; --radius-lg:1rem; --radius-xl:1.5rem; --radius-2xl:2rem; --radius-full:9999px;
  --shadow-sm:0 1px 3px rgba(0,0,0,.06); --shadow-md:0 4px 16px rgba(0,0,0,.08);
  --shadow-lg:0 10px 40px rgba(0,0,0,.12); --shadow-xl:0 20px 60px rgba(0,0,0,.16);
  --shadow-primary:0 8px 32px var(--color-primary-40);
  --transition-fast:150ms ease; --transition-base:250ms ease; --transition-slow:400ms ease;
  --navbar-height:80px; --container-max:1280px; --container-pad:clamp(1rem,4vw,2rem);
}
.dark {
  --color-bg:#191022; --color-bg-alt:#231530; --color-bg-muted:#1e1330; --color-surface:#231530;
  --color-text:#f1eeff; --color-text-muted:#94a3b8;
  --color-border:rgba(255,255,255,.06); --color-border-strong:rgba(255,255,255,.12);
}
