/* TOS IT 360 theme tokens. Generated from tokens.json: edit that, not this.
   Light is the default. Dark follows the OS setting unless the app stamps
   data-theme="light" or data-theme="dark" on <html>, which always wins. */

:root {
  color-scheme: light;
  --font-display: 'Be Vietnam Pro', 'Inter', system-ui, sans-serif;
  --font-ui: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Consolas, monospace;
  --text-display-size: 30px;
  --text-display-lh: 36px;
  --text-display-weight: 600;
  --text-h1-size: 24px;
  --text-h1-lh: 32px;
  --text-h1-weight: 600;
  --text-h2-size: 18px;
  --text-h2-lh: 26px;
  --text-h2-weight: 600;
  --text-h3-size: 16px;
  --text-h3-lh: 24px;
  --text-h3-weight: 600;
  --text-body-size: 14px;
  --text-body-lh: 20px;
  --text-body-weight: 400;
  --text-body-strong-size: 14px;
  --text-body-strong-lh: 20px;
  --text-body-strong-weight: 600;
  --text-small-size: 13px;
  --text-small-lh: 18px;
  --text-small-weight: 400;
  --text-caption-size: 12px;
  --text-caption-lh: 16px;
  --text-caption-weight: 500;
  --text-overline-size: 11px;
  --text-overline-lh: 16px;
  --text-overline-weight: 600;
  --text-kpi-size: 32px;
  --text-kpi-lh: 36px;
  --text-kpi-weight: 600;
  --text-mono-size: 13px;
  --text-mono-lh: 18px;
  --text-mono-weight: 400;
  --space-0: 0px;
  --space-0_5: 2px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-none: 0px;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 6px;
  --radius-xl: 8px;
  --radius-full: 9999px;
  --sidebar-w: 240px;
  --sidebar-w-collapsed: 64px;
  --topbar-h: 56px;
  --row-h: 40px;
  --row-h-compact: 32px;
  --control-h: 36px;
  --control-h-sm: 28px;
  --card-pad: 20px;
  --gutter: 24px;
  --content-max: 1600px;
  --motion-fast: 120ms;
  --motion-base: 200ms;
  --motion-ease: cubic-bezier(.2,0,0,1);
  --seq-100: #CDE2FB;
  --seq-150: #B7D3F6;
  --seq-200: #9EC5F4;
  --seq-250: #86B6EF;
  --seq-300: #6DA7EC;
  --seq-350: #5598E7;
  --seq-400: #3987E5;
  --seq-450: #2A78D6;
  --seq-500: #256ABF;
  --seq-550: #1C5CAB;
  --seq-600: #184F95;
  --seq-650: #104281;
  --seq-700: #0D366B;
  --brand-black: #000000;
  --brand-ink: #303133;
  --brand-white: #FFFFFF;
  --brand-steel: #9398A0;
  --brand-red: #DE424A;
  --bg-page: #F4F5F7;
  --bg-surface: #FFFFFF;
  --bg-raised: #FFFFFF;
  --bg-sunken: #F9FAFB;
  --bg-hover: #F4F5F7;
  --bg-selected: #E9EBEE;
  --bg-sidebar: #303133;
  --bg-sidebar-hover: #3E4147;
  --bg-sidebar-active: #FFFFFF;
  --text-primary: #000000;
  --text-secondary: #545860;
  --text-muted: #676C74;
  --text-inverse: #FFFFFF;
  --text-on-sidebar: #FFFFFF;
  --text-on-sidebar-muted: #B0B4BC;
  --text-on-sidebar-active: #000000;
  --border-subtle: #E9EBEE;
  --border-default: #DDE0E4;
  --border-control: #878C94;
  --action-primary-bg: #303133;
  --action-primary-bg-hover: #1C1D1F;
  --action-primary-fg: #FFFFFF;
  --action-danger-bg: #C0343C;
  --action-danger-bg-hover: #A82C33;
  --action-danger-fg: #FFFFFF;
  --focus-ring: #000000;
  --brand-mark: #303133;
  --brand-accent: #DE424A;
  --chart-grid: #E9EBEE;
  --chart-axis: #B0B4BC;
  --chart-track: #E9EBEE;
  --status-good: #0CA30C;
  --status-good-text: #0B6B0B;
  --status-good-bg: #E7F5E7;
  --status-warning: #FAB219;
  --status-warning-text: #7A5200;
  --status-warning-bg: #FEF4DC;
  --status-serious: #EC835A;
  --status-serious-text: #A2401A;
  --status-serious-bg: #FCEDE6;
  --status-critical: #DE424A;
  --status-critical-text: #B32A33;
  --status-critical-bg: #FCEBEC;
  --status-info: #6E737B;
  --status-info-text: #3E4147;
  --status-info-bg: #EEF0F2;
  --series-1: #2A78D6;
  --series-2: #EB6834;
  --series-3: #1BAF7A;
  --series-4: #EDA100;
  --series-5: #E87BA4;
  --series-6: #008300;
  --series-7: #4A3AA7;
  --series-8: #E34948;
  --shadow-sm: 0 1px 2px rgba(0,0,0,.06);
  --shadow-md: 0 2px 8px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);
  --shadow-lg: 0 12px 32px rgba(0,0,0,.14), 0 2px 6px rgba(0,0,0,.08);
}

@media (prefers-color-scheme: dark) {
  :root:where(:not([data-theme="light"])) {
    color-scheme: dark;
  --bg-page: #121314;
  --bg-surface: #1C1D1F;
  --bg-raised: #26272A;
  --bg-sunken: #161719;
  --bg-hover: #26272A;
  --bg-selected: #303133;
  --bg-sidebar: #161719;
  --bg-sidebar-hover: #26272A;
  --bg-sidebar-active: #FFFFFF;
  --text-primary: #FFFFFF;
  --text-secondary: #B0B4BC;
  --text-muted: #9398A0;
  --text-inverse: #000000;
  --text-on-sidebar: #FFFFFF;
  --text-on-sidebar-muted: #9398A0;
  --text-on-sidebar-active: #000000;
  --border-subtle: #2A2B2E;
  --border-default: #36383B;
  --border-control: #6E737B;
  --action-primary-bg: #FFFFFF;
  --action-primary-bg-hover: #DDE0E4;
  --action-primary-fg: #000000;
  --action-danger-bg: #C0343C;
  --action-danger-bg-hover: #A82C33;
  --action-danger-fg: #FFFFFF;
  --focus-ring: #FFFFFF;
  --brand-mark: #FFFFFF;
  --brand-accent: #DE424A;
  --chart-grid: #2A2B2E;
  --chart-axis: #3E4147;
  --chart-track: #303133;
  --status-good: #0CA30C;
  --status-good-text: #5BD45B;
  --status-good-bg: #1E2B1E;
  --status-warning: #FAB219;
  --status-warning-text: #FAB219;
  --status-warning-bg: #2E2716;
  --status-serious: #EC835A;
  --status-serious-text: #F09A77;
  --status-serious-bg: #2E211C;
  --status-critical: #DE424A;
  --status-critical-text: #F07A80;
  --status-critical-bg: #2F1E20;
  --status-info: #9398A0;
  --status-info-text: #CDD0D6;
  --status-info-bg: #26272A;
  --series-1: #3987E5;
  --series-2: #D95926;
  --series-3: #199E70;
  --series-4: #C98500;
  --series-5: #D55181;
  --series-6: #008300;
  --series-7: #9085E9;
  --series-8: #E66767;
  --shadow-sm: 0 1px 2px rgba(0,0,0,.5);
  --shadow-md: 0 4px 12px rgba(0,0,0,.5);
  --shadow-lg: 0 16px 40px rgba(0,0,0,.6);
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg-page: #121314;
  --bg-surface: #1C1D1F;
  --bg-raised: #26272A;
  --bg-sunken: #161719;
  --bg-hover: #26272A;
  --bg-selected: #303133;
  --bg-sidebar: #161719;
  --bg-sidebar-hover: #26272A;
  --bg-sidebar-active: #FFFFFF;
  --text-primary: #FFFFFF;
  --text-secondary: #B0B4BC;
  --text-muted: #9398A0;
  --text-inverse: #000000;
  --text-on-sidebar: #FFFFFF;
  --text-on-sidebar-muted: #9398A0;
  --text-on-sidebar-active: #000000;
  --border-subtle: #2A2B2E;
  --border-default: #36383B;
  --border-control: #6E737B;
  --action-primary-bg: #FFFFFF;
  --action-primary-bg-hover: #DDE0E4;
  --action-primary-fg: #000000;
  --action-danger-bg: #C0343C;
  --action-danger-bg-hover: #A82C33;
  --action-danger-fg: #FFFFFF;
  --focus-ring: #FFFFFF;
  --brand-mark: #FFFFFF;
  --brand-accent: #DE424A;
  --chart-grid: #2A2B2E;
  --chart-axis: #3E4147;
  --chart-track: #303133;
  --status-good: #0CA30C;
  --status-good-text: #5BD45B;
  --status-good-bg: #1E2B1E;
  --status-warning: #FAB219;
  --status-warning-text: #FAB219;
  --status-warning-bg: #2E2716;
  --status-serious: #EC835A;
  --status-serious-text: #F09A77;
  --status-serious-bg: #2E211C;
  --status-critical: #DE424A;
  --status-critical-text: #F07A80;
  --status-critical-bg: #2F1E20;
  --status-info: #9398A0;
  --status-info-text: #CDD0D6;
  --status-info-bg: #26272A;
  --series-1: #3987E5;
  --series-2: #D95926;
  --series-3: #199E70;
  --series-4: #C98500;
  --series-5: #D55181;
  --series-6: #008300;
  --series-7: #9085E9;
  --series-8: #E66767;
  --shadow-sm: 0 1px 2px rgba(0,0,0,.5);
  --shadow-md: 0 4px 12px rgba(0,0,0,.5);
  --shadow-lg: 0 16px 40px rgba(0,0,0,.6);
}

@media (prefers-reduced-motion: reduce) {
  :root { --motion-fast: 0ms; --motion-base: 0ms; }
}
