/* KuvoHost design tokens — the ONE place to change colours, fonts, radius, spacing, shadows.
   Light values on :root; dark values on [data-bs-theme="dark"] (Bootstrap/FOSSBilling dark switch). */
:root{
  --purple:#4A1A9E; --lav:#9B6BE8; --violet:#7F4FDB; --shadow:#3B1386;
  --ink:#2A0E5E; --night:#0E0824;
  --heading:#1C0D3F; --text:#4B4A63; --muted:#6E6987; --faint:#8B84A6;
  --bg:#F3F0F8; --bg-elev:#FFFFFF; --bg-sidebar:#FFFFFF; --bg-topbar:rgba(255,255,255,.82);
  --bg-soft:#F8F6FC; --tint:#F2ECFF; --tint-2:#E6DBFF; --chip-bg:#F2ECFF;
  --line:#E7E2F2; --line-2:#DCD3EF;
  --ok:#15803D; --ok-bg:#E8F8EE; --ok-line:#C9EFD6;
  --warn:#B45309; --warn-bg:#FEF3C7; --warn-line:#FDE68A;
  --danger:#B91C1C; --danger-bg:#FEE2E2; --danger-line:#FECACA;
  --info:#1D4ED8; --info-bg:#DBEAFE; --info-line:#BFDBFE;
  --ai-bg:linear-gradient(180deg,#F7F3FF,#EFE7FF);
  --fh:"Plus Jakarta Sans",system-ui,sans-serif;
  --fb:"DM Sans",system-ui,sans-serif;
  --sidebar:228px; --sidebar-collapsed:76px; --topbar:64px; --bottom:0px; --ai:400px;
  --r-xs:8px; --r-sm:12px; --r:16px; --r-lg:20px; --r-xl:24px;
  --sh-xs:0 1px 2px rgba(28,13,63,.05);
  --sh-sm:0 1px 2px rgba(28,13,63,.04),0 6px 18px rgba(59,19,134,.05);
  --sh-md:0 2px 4px rgba(28,13,63,.04),0 10px 28px rgba(59,19,134,.08);
  --sh-lg:0 8px 28px rgba(59,19,134,.14);
  --ease:cubic-bezier(.2,.7,.2,1);
  --focus:0 0 0 3px rgba(127,79,219,.35);
  --gauge-track:var(--tint);
  --sidebar-text:#3A3654;
  --overlay:rgba(14,8,36,.45);
  --msg-agent:#F4EEFF;
  --input-bg:#fff;
  --code-bg:#F4F1FA;
  /* spacing scale */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px; --sp-8:32px;
}
[data-bs-theme="dark"]{
  --heading:#F4F0FF; --text:#C9C2DE; --muted:#9B94B8; --faint:#7A7394;
  --bg:#0E0824; --bg-elev:#181230; --bg-sidebar:#120C28; --bg-topbar:rgba(18,12,40,.86);
  --bg-soft:#1C1536; --tint:#2A1B55; --tint-2:#3A2670; --chip-bg:#2A1B55;
  --line:#2E2550; --line-2:#3D3366;
  --ok:#4ADE80; --ok-bg:rgba(22,163,74,.16); --ok-line:rgba(74,222,128,.28);
  --warn:#FBBF24; --warn-bg:rgba(217,119,6,.16); --warn-line:rgba(251,191,36,.28);
  --danger:#F87171; --danger-bg:rgba(185,28,28,.18); --danger-line:rgba(248,113,113,.28);
  --info:#93C5FD; --info-bg:rgba(37,99,235,.18); --info-line:rgba(147,197,253,.28);
  --ai-bg:linear-gradient(180deg,#1A1334,#221850);
  --sh-xs:0 1px 2px rgba(0,0,0,.3);
  --sh-sm:0 1px 2px rgba(0,0,0,.25),0 4px 14px rgba(0,0,0,.25);
  --sh-md:0 2px 4px rgba(0,0,0,.2),0 10px 28px rgba(0,0,0,.35);
  --sh-lg:0 8px 28px rgba(0,0,0,.45);
  --gauge-track:#2A1B55;
  --sidebar-text:#C9C2DE;
  --overlay:rgba(0,0,0,.55);
  --msg-agent:#241A48;
  --input-bg:#1C1536;
  --code-bg:#120C28;
}
