/* ============================================================================
   PathoMap design tokens - GENERATED, do not edit.

   Source: assets/design-tokens.json
   Regenerate: python scripts/build_tokens_css.py   (test asserts it is current)

   Light is the default. Dark is selected by [data-bs-theme="dark"] on <html>,
   or follows the operating system when no explicit choice is stored.
   ========================================================================== */


:root {
  /* ---- brand primitives ------------------------------------------- */
  --pm-navy: #11223E;
  --pm-ink: #0B1528;
  --pm-slate: #254B7C;
  --pm-teal: #166D74;
  --pm-teal-bright: #1F9A9C;
  --pm-teal-deep: #0F5257;
  --pm-orange: #EF6D2F;
  --pm-coral: #E44D2E;
  --pm-amber: #F79B2E;

  /* ---- semantic roles --------------------------------------------- */
  --pm-surface-page: #F8FAFC;
  --pm-surface-raised: #FFFFFF;
  --pm-surface-sunken: #F1F5F9;
  --pm-surface-inverse: #11223E;
  --pm-surface-accent-soft: #FDECE7;
  --pm-text-primary: #11223E;
  --pm-text-body: #334155;
  --pm-text-muted: #64748B;
  --pm-text-subtle: #94A3B8;
  --pm-text-inverse: #F8FAFC;
  --pm-text-link: #166D74;
  --pm-text-link-hover: #0F5257;
  --pm-text-accent: #EF6D2F;
  --pm-border-subtle: #E2E8F0;
  --pm-border-default: #CBD5E1;
  --pm-border-strong: #94A3B8;
  --pm-border-focus: #1F9A9C;
  --pm-status-pathogenic-fg: #A33218;
  --pm-status-pathogenic-bg: #FDECE7;
  --pm-status-pathogenic-border: #F0C4B6;
  --pm-status-likely-pathogenic-fg: #A33218;
  --pm-status-likely-pathogenic-bg: #FDECE7;
  --pm-status-likely-pathogenic-border: #F0C4B6;
  --pm-status-uncertain-fg: #7A5000;
  --pm-status-uncertain-bg: #FDF3E0;
  --pm-status-uncertain-border: #EBCF9B;
  --pm-status-benign-fg: #1F6A4A;
  --pm-status-benign-bg: #E8F3EE;
  --pm-status-benign-border: #B7D6C6;
  --pm-status-unknown-fg: #475569;
  --pm-status-unknown-bg: #F1F5F9;
  --pm-status-unknown-border: #D6DEE8;
  --pm-status-info-fg: #1B4F72;
  --pm-status-info-bg: #EAF2F6;
  --pm-status-info-border: #C3DCEA;
  --pm-font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --pm-font-mono: 'JetBrains Mono', ui-monospace, 'Cascadia Mono', 'SFMono-Regular', Consolas, monospace;
  --pm-radius-sm: 6px;
  --pm-radius-md: 10px;
  --pm-radius-lg: 14px;
  --pm-radius-xl: 18px;
  --pm-shadow-sm: 0 1px 2px rgba(17, 34, 62, 0.06);
  --pm-shadow-md: 0 4px 20px rgba(17, 34, 62, 0.06);
  --pm-shadow-lg: 0 12px 40px rgba(17, 34, 62, 0.10);
}

/* Explicit dark choice (the toggle writes this attribute). */
[data-bs-theme="dark"] {
  --pm-surface-page: #0B1528;
  --pm-surface-raised: #11223E;
  --pm-surface-sunken: #0A1220;
  --pm-surface-inverse: #F8FAFC;
  --pm-surface-accent-soft: #2A1A14;
  --pm-text-primary: #F2F6FC;
  --pm-text-body: #D6E0EE;
  --pm-text-muted: #93A3B8;
  --pm-text-subtle: #7C8DA6;
  --pm-text-inverse: #0B1528;
  --pm-text-link: #45C7BE;
  --pm-text-link-hover: #5FD3C8;
  --pm-text-accent: #F08A57;
  --pm-border-subtle: #1E3355;
  --pm-border-default: #24395C;
  --pm-border-strong: #2C4468;
  --pm-border-focus: #45C7BE;
  --pm-action-primary-bg: #45C7BE;
  --pm-action-primary-bg-hover: #5FD3C8;
  --pm-action-primary-fg: #0B1528;
  --pm-action-secondary-bg: #24395C;
  --pm-action-secondary-bg-hover: #2C4468;
  --pm-action-secondary-fg: #E8EEF7;
  --pm-action-ghost-bg: transparent;
  --pm-action-ghost-fg: #45C7BE;
  --pm-action-disabled-bg: #1B2B44;
  --pm-action-disabled-fg: #6D7F98;
  --pm-chart-series-1: #45C7BE;
  --pm-chart-series-2: #F08A57;
  --pm-chart-series-3: #93A3B8;
  --pm-chart-series-4: #5FD3C8;
  --pm-chart-series-5: #F7B45E;
  --pm-chart-series-6: #8FB0D9;
  --pm-chart-grid: #1E3355;
  --pm-chart-axis: #93A3B8;
  --pm-status-pathogenic-fg: #FFB3A0;
  --pm-status-pathogenic-bg: #3A1512;
  --pm-status-pathogenic-border: #6B2A22;
  --pm-status-likely-pathogenic-fg: #FFB3A0;
  --pm-status-likely-pathogenic-bg: #3A1512;
  --pm-status-likely-pathogenic-border: #6B2A22;
  --pm-status-uncertain-fg: #F5CB84;
  --pm-status-uncertain-bg: #382708;
  --pm-status-uncertain-border: #6B4E12;
  --pm-status-benign-fg: #8FE0B2;
  --pm-status-benign-bg: #0E2C1E;
  --pm-status-benign-border: #1F5C3C;
  --pm-status-unknown-fg: #C3CEDF;
  --pm-status-unknown-bg: #1B2B44;
  --pm-status-unknown-border: #33475F;
  --pm-status-info-fg: #9AD1EC;
  --pm-status-info-bg: #10293C;
  --pm-status-info-border: #24506B;
}

/* No stored choice: follow the operating system. An explicit
   [data-bs-theme="light"] must win, so it is excluded here. */
@media (prefers-color-scheme: dark) {
  :root:not([data-bs-theme="light"]) {
    --pm-surface-page: #0B1528;
    --pm-surface-raised: #11223E;
    --pm-surface-sunken: #0A1220;
    --pm-surface-inverse: #F8FAFC;
    --pm-surface-accent-soft: #2A1A14;
    --pm-text-primary: #F2F6FC;
    --pm-text-body: #D6E0EE;
    --pm-text-muted: #93A3B8;
    --pm-text-subtle: #7C8DA6;
    --pm-text-inverse: #0B1528;
    --pm-text-link: #45C7BE;
    --pm-text-link-hover: #5FD3C8;
    --pm-text-accent: #F08A57;
    --pm-border-subtle: #1E3355;
    --pm-border-default: #24395C;
    --pm-border-strong: #2C4468;
    --pm-border-focus: #45C7BE;
    --pm-action-primary-bg: #45C7BE;
    --pm-action-primary-bg-hover: #5FD3C8;
    --pm-action-primary-fg: #0B1528;
    --pm-action-secondary-bg: #24395C;
    --pm-action-secondary-bg-hover: #2C4468;
    --pm-action-secondary-fg: #E8EEF7;
    --pm-action-ghost-bg: transparent;
    --pm-action-ghost-fg: #45C7BE;
    --pm-action-disabled-bg: #1B2B44;
    --pm-action-disabled-fg: #6D7F98;
    --pm-chart-series-1: #45C7BE;
    --pm-chart-series-2: #F08A57;
    --pm-chart-series-3: #93A3B8;
    --pm-chart-series-4: #5FD3C8;
    --pm-chart-series-5: #F7B45E;
    --pm-chart-series-6: #8FB0D9;
    --pm-chart-grid: #1E3355;
    --pm-chart-axis: #93A3B8;
    --pm-status-pathogenic-fg: #FFB3A0;
    --pm-status-pathogenic-bg: #3A1512;
    --pm-status-pathogenic-border: #6B2A22;
    --pm-status-likely-pathogenic-fg: #FFB3A0;
    --pm-status-likely-pathogenic-bg: #3A1512;
    --pm-status-likely-pathogenic-border: #6B2A22;
    --pm-status-uncertain-fg: #F5CB84;
    --pm-status-uncertain-bg: #382708;
    --pm-status-uncertain-border: #6B4E12;
    --pm-status-benign-fg: #8FE0B2;
    --pm-status-benign-bg: #0E2C1E;
    --pm-status-benign-border: #1F5C3C;
    --pm-status-unknown-fg: #C3CEDF;
    --pm-status-unknown-bg: #1B2B44;
    --pm-status-unknown-border: #33475F;
    --pm-status-info-fg: #9AD1EC;
    --pm-status-info-bg: #10293C;
    --pm-status-info-border: #24506B;
  }
}
