/* ========================================
   MatDB — Graphite Design System
   Design Tokens (Light & Dark)
   ======================================== */

:root,
[data-bs-theme="light"] {
  /* Surface */
  --mat-bg: #F7F8FA;
  --mat-surface: #FFFFFF;
  --mat-nav-bg: #FFFFFF;
  --mat-hover-bg: #F1F3F7;

  /* Text */
  --mat-text: #1B2535;
  --mat-text-secondary: #5E6E82;

  /* Borders */
  --mat-border: #DFE3EA;
  --mat-border-subtle: #EEF0F4;

  /* Primary */
  --mat-primary: #4361EE;
  --mat-primary-hover: #3451D1;
  --mat-primary-subtle: rgba(67, 97, 238, 0.08);
  --mat-primary-rgb: 67, 97, 238;

  /* Accent */
  --mat-accent: #6366F1;

  /* Status */
  --mat-danger: #EF4444;
  --mat-success: #10B981;
  --mat-warning: #F59E0B;

  /* Shadows */
  --mat-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
  --mat-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
  --mat-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);

  /* Tab accents */
  --mat-tab-overview: #4361EE;
  --mat-tab-mechanical: #EF4444;
  --mat-tab-physical: #10B981;
  --mat-tab-thermal: #F59E0B;
  --mat-tab-cfrp: #8B5CF6;
  --mat-tab-info: #64748B;

  /* Bootstrap overrides */
  --bs-body-bg: var(--mat-bg);
  --bs-body-color: var(--mat-text);
  --bs-secondary-color: var(--mat-text-secondary);
  --bs-tertiary-bg: var(--mat-hover-bg);
  --bs-border-color: var(--mat-border);
  --bs-primary: var(--mat-primary);
  --bs-primary-rgb: var(--mat-primary-rgb);
  --bs-link-color: var(--mat-primary);
  --bs-link-hover-color: var(--mat-primary-hover);

  /* AG Grid overrides */
  --ag-background-color: var(--mat-surface);
  --ag-foreground-color: var(--mat-text);
  --ag-header-background-color: var(--mat-bg);
  --ag-header-foreground-color: var(--mat-text-secondary);
  --ag-border-color: var(--mat-border);
  --ag-row-hover-color: var(--mat-hover-bg);
  --ag-selected-row-background-color: var(--mat-primary-subtle);
  --ag-range-selection-border-color: var(--mat-primary);
  --ag-font-family: 'Source Sans 3', 'Source Sans 3 Fallback', system-ui, -apple-system, sans-serif;
  --ag-font-size: 13px;
  --ag-row-border-color: var(--mat-border-subtle);
  --ag-header-column-separator-color: var(--mat-border);
  --ag-odd-row-background-color: transparent;
}

[data-bs-theme="dark"] {
  /* Surface */
  --mat-bg: #0E1525;
  --mat-surface: #1A2332;
  --mat-nav-bg: #131D2E;
  --mat-hover-bg: #1E2A3A;

  /* Text */
  --mat-text: #E0E6EE;
  --mat-text-secondary: #8896A8;

  /* Borders */
  --mat-border: #2A3545;
  --mat-border-subtle: #1E2A3A;

  /* Primary */
  --mat-primary: #6B8AFF;
  --mat-primary-hover: #8AA2FF;
  --mat-primary-subtle: rgba(107, 138, 255, 0.12);
  --mat-primary-rgb: 107, 138, 255;

  /* Shadows (deeper in dark) */
  --mat-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.2);
  --mat-shadow: 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px 2px rgba(0, 0, 0, 0.2);
  --mat-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.3);

  /* Tab accents (brighter for dark) */
  --mat-tab-overview: #6B8AFF;
  --mat-tab-mechanical: #F87171;
  --mat-tab-physical: #34D399;
  --mat-tab-thermal: #FBBF24;
  --mat-tab-cfrp: #A78BFA;
  --mat-tab-info: #94A3B8;

  /* Bootstrap overrides */
  --bs-body-bg: var(--mat-bg);
  --bs-body-color: var(--mat-text);
  --bs-secondary-color: var(--mat-text-secondary);
  --bs-tertiary-bg: var(--mat-hover-bg);
  --bs-border-color: var(--mat-border);
  --bs-primary: var(--mat-primary);
  --bs-primary-rgb: var(--mat-primary-rgb);
  --bs-link-color: var(--mat-primary);
  --bs-link-hover-color: var(--mat-primary-hover);

  /* AG Grid overrides */
  --ag-background-color: var(--mat-surface);
  --ag-foreground-color: var(--mat-text);
  --ag-header-background-color: var(--mat-bg);
  --ag-header-foreground-color: var(--mat-text-secondary);
  --ag-border-color: var(--mat-border);
  --ag-row-hover-color: var(--mat-hover-bg);
  --ag-selected-row-background-color: var(--mat-primary-subtle);
  --ag-row-border-color: var(--mat-border-subtle);
  --ag-odd-row-background-color: transparent;
}
