/* Nisha Enterprise tokens — generated from design/tokens.json */
:root, [data-theme="light"] {
  --brand: #1b4498;
  --brand-soft: #e7edf9;
  --focus-ring: rgba(31, 99, 224, 0.22);
  --row-hover: #f6f8fb;
  --bg: #f4f6fa;
  --surface: #ffffff;
  --surface-sunken: #eef1f6;
  --border: #dbe1ea;
  --border-strong: #7d8aa0;
  --ink: #0f1c2e;
  --ink-muted: #475569;
  --ink-subtle: #5b6a80;
  --primary: #1b3a63;
  --primary-hover: #122b4b;
  --primary-soft: #e6edf7;
  --on-primary: #ffffff;
  --sidebar: #0f2744;
  --sidebar-active: #1f3d66;
  --sidebar-ink: #ffffff;
  --sidebar-ink-muted: #b4c3d8;
  --success: #15703b;
  --success-soft: #e3f5ea;
  --success-fill: #15703b;
  --on-success: #ffffff;
  --warning: #a24a06;
  --warning-soft: #fdf0dc;
  --warning-fill: #e8820c;
  --on-warning: #1f1203;
  --danger: #b3261e;
  --danger-soft: #fde8e6;
  --danger-fill: #b3261e;
  --on-danger: #ffffff;
  --info: #1a56c4;
  --info-soft: #e4edfc;
  --accent: #5e3bb8;
  --accent-soft: #efe9fb;
  --focus: #1f63e0;
  --overlay: rgba(15, 28, 46, 0.48);
  --shadow-sm: 0 1px 2px rgba(15, 28, 46, 0.06);
  --shadow-md: 0 6px 16px rgba(15, 28, 46, 0.10);
  --shadow-lg: 0 20px 48px rgba(15, 28, 46, 0.18);
}
[data-theme="dark"] {
  --row-hover: #1d2a3f;
  --bg: #0d1420;
  --surface: #141d2b;
  --surface-sunken: #1a2536;
  --border: #2a3a52;
  --border-strong: #62789a;
  --ink: #e8eef7;
  --ink-muted: #a9b6c8;
  --ink-subtle: #8a9ab0;
  --primary: #8fb3ef;
  --primary-hover: #a9c5f4;
  --primary-soft: #1c2d48;
  --on-primary: #0b1a30;
  --sidebar: #0a111c;
  --sidebar-active: #1e3354;
  --sidebar-ink: #e8eef7;
  --sidebar-ink-muted: #93a3ba;
  --success: #5fd08f;
  --success-soft: #12301f;
  --success-fill: #5fd08f;
  --on-success: #082014;
  --warning: #f3ad5b;
  --warning-soft: #3a2710;
  --warning-fill: #f3ad5b;
  --on-warning: #1f1203;
  --danger: #f2877c;
  --danger-soft: #3b1714;
  --danger-fill: #f2877c;
  --on-danger: #2a0906;
  --info: #7fb0f7;
  --info-soft: #16294a;
  --accent: #bba5f7;
  --accent-soft: #2a2146;
  --focus: #8fb8ff;
  --overlay: rgba(0, 0, 0, 0.62);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 6px 16px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 20px 48px rgba(0, 0, 0, 0.6);
}
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) {
  --row-hover: #1d2a3f;
  --bg: #0d1420;
  --surface: #141d2b;
  --surface-sunken: #1a2536;
  --border: #2a3a52;
  --border-strong: #62789a;
  --ink: #e8eef7;
  --ink-muted: #a9b6c8;
  --ink-subtle: #8a9ab0;
  --primary: #8fb3ef;
  --primary-hover: #a9c5f4;
  --primary-soft: #1c2d48;
  --on-primary: #0b1a30;
  --sidebar: #0a111c;
  --sidebar-active: #1e3354;
  --sidebar-ink: #e8eef7;
  --sidebar-ink-muted: #93a3ba;
  --success: #5fd08f;
  --success-soft: #12301f;
  --success-fill: #5fd08f;
  --on-success: #082014;
  --warning: #f3ad5b;
  --warning-soft: #3a2710;
  --warning-fill: #f3ad5b;
  --on-warning: #1f1203;
  --danger: #f2877c;
  --danger-soft: #3b1714;
  --danger-fill: #f2877c;
  --on-danger: #2a0906;
  --info: #7fb0f7;
  --info-soft: #16294a;
  --accent: #bba5f7;
  --accent-soft: #2a2146;
  --focus: #8fb8ff;
  --overlay: rgba(0, 0, 0, 0.62);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 6px 16px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 20px 48px rgba(0, 0, 0, 0.6);
} }
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-20: 80px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --sidebar-width: 248px;
  --topbar-height: 60px;
  --bottom-nav-height: 64px;
  --content-max: 1280px;
  --font-sans: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
}

:root {
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --dur-1: 120ms;
  --dur-2: 180ms;
  --dur-3: 240ms;
  --dur-4: 300ms;
  --sidebar-collapsed: 72px;
}
