/* Desktop palettes: tf-tools/src/index.css. Keep values aligned with the app. */
:root {
  color-scheme: dark;
  --bg: var(--bg-primary);
  --panel: var(--bg-secondary);
  --raised: var(--bg-tertiary);
  --line: var(--border);
  --text: var(--text-primary);
  --muted: var(--text-secondary);
  --blue: color-mix(in srgb, var(--accent) 75%, var(--text-primary));
  --button: var(--accent);
  --button-hover: var(--accent-hover);
  --button-text: #101820;
  --control-bg: var(--bg-tertiary);
  --control-border: color-mix(in srgb, var(--text-primary) 35%, var(--border-light));
  --hover: var(--bg-hover);
  --status-success-text: #b0e5cf;
  --status-success-bg: color-mix(in srgb, #22c55e 15%, var(--panel));
  --status-danger-text: #f3bfc4;
  --status-danger-bg: color-mix(in srgb, #ef4444 12%, var(--panel));
}

[data-theme="mcparlane"] {
  --blue: color-mix(in srgb, var(--accent) 65%, var(--text-primary));
  --button-text: #ffffff;
}

[data-theme="emerald"] {
  --button: #086841;
  --button-hover: #0a7a4a;
  --button-text: #f0f3f2;
}

:root {
  --bg-primary: #1a1f2e;
  --bg-secondary: #222838;
  --bg-tertiary: #2a3144;
  --bg-elevated: #323a50;
  --bg-hover: #3a4460;
  --border: #3e4a63;
  --border-light: #4f5d7a;
  --text-primary: #f0f3f8;
  --text-secondary: #a4b0c5;
  --text-muted: #7484a0;
  --accent: #5b9cf6;
  --accent-hover: #4a8bee;
  --accent-glow: rgba(91, 156, 246, 0.18);
  --bg-input: #161b28;
}

[data-theme="charcoal"] {
  --bg-primary: #171717;
  --bg-secondary: #1e1e1e;
  --bg-tertiary: #272727;
  --bg-elevated: #303030;
  --bg-hover: #3a3a3a;
  --border: #3a3a3a;
  --border-light: #4a4a4a;
  --text-primary: #eeeeee;
  --text-secondary: #a8a8a8;
  --text-muted: #777777;
  --accent: #5b9cf6;
  --accent-hover: #4a8bee;
  --accent-glow: rgba(91, 156, 246, 0.18);
  --bg-input: #121212;
}

[data-theme="slate"] {
  --bg-primary: #15181e;
  --bg-secondary: #1c2028;
  --bg-tertiary: #242932;
  --bg-elevated: #2d333e;
  --bg-hover: #373e4c;
  --border: #353c4a;
  --border-light: #454e60;
  --text-primary: #e8ecf2;
  --text-secondary: #9ba6b8;
  --text-muted: #6b7892;
  --accent: #60a5fa;
  --accent-hover: #4f94e8;
  --accent-glow: rgba(96, 165, 250, 0.18);
  --bg-input: #111419;
}

[data-theme="nord"] {
  --bg-primary: #2e3440;
  --bg-secondary: #3b4252;
  --bg-tertiary: #434c5e;
  --bg-elevated: #4c566a;
  --bg-hover: #555f73;
  --border: #4c566a;
  --border-light: #5a657a;
  --text-primary: #eceff4;
  --text-secondary: #d8dee9;
  --text-muted: #8892a4;
  --accent: #88c0d0;
  --accent-hover: #7ab4c4;
  --accent-glow: rgba(136, 192, 208, 0.18);
  --bg-input: #272d38;
}

[data-theme="mcparlane"] {
  --bg-primary: #222222;
  --bg-secondary: #2a2a2a;
  --bg-tertiary: #333333;
  --bg-elevated: #3c3c3c;
  --bg-hover: #474747;
  --border: #444444;
  --border-light: #555555;
  --text-primary: #f0f0f0;
  --text-secondary: #b8b8b8;
  --text-muted: #888888;
  --accent: #dc2626;
  --accent-hover: #c52020;
  --accent-glow: rgba(220, 38, 38, 0.18);
  --bg-input: #1a1a1a;
}

[data-theme="emerald"] {
  --bg-primary: #191b1d;
  --bg-secondary: #232629;
  --bg-tertiary: #2c3033;
  --bg-elevated: #363c3e;
  --bg-hover: #3e4847;
  --border: #424b4a;
  --border-light: #586563;
  --text-primary: #f0f3f2;
  --text-secondary: #b9c3c0;
  --text-muted: #98aaa4;
  --accent: #42aa70;
  --accent-hover: #55b980;
  --accent-glow: rgba(10, 92, 54, 0.38);
  --bg-input: #131617;
}

[data-theme="dracula"] {
  --bg-primary: #282a36;
  --bg-secondary: #2d2f3d;
  --bg-tertiary: #343746;
  --bg-elevated: #3e4154;
  --bg-hover: #484c62;
  --border: #44475a;
  --border-light: #545870;
  --text-primary: #f8f8f2;
  --text-secondary: #c4c4ba;
  --text-muted: #8b8b82;
  --accent: #bd93f9;
  --accent-hover: #ab7ef0;
  --accent-glow: rgba(189, 147, 249, 0.18);
  --bg-input: #21222c;
}

[data-theme="monokai"] {
  --bg-primary: #1e1f1c;
  --bg-secondary: #252620;
  --bg-tertiary: #2e2f28;
  --bg-elevated: #383830;
  --bg-hover: #45453a;
  --border: #3e3e34;
  --border-light: #505044;
  --text-primary: #f8f8f2;
  --text-secondary: #c0bfb4;
  --text-muted: #8a897e;
  --accent: #a6e22e;
  --accent-hover: #96d21e;
  --accent-glow: rgba(166, 226, 46, 0.18);
  --bg-input: #181916;
}

[data-theme="solarized"] {
  --bg-primary: #002b36;
  --bg-secondary: #073642;
  --bg-tertiary: #0e4150;
  --bg-elevated: #1a4a56;
  --bg-hover: #265a66;
  --border: #1a4a56;
  --border-light: #2a5a66;
  --text-primary: #fdf6e3;
  --text-secondary: #b8c4c4;
  --text-muted: #6c8585;
  --accent: #2aa198;
  --accent-hover: #1e9088;
  --accent-glow: rgba(42, 161, 152, 0.18);
  --bg-input: #001f28;
}

[data-theme="editorial"] {
  color-scheme: light;
  --bg-primary: #f5f3ed;
  --bg-secondary: #fffefa;
  --bg-tertiary: #e9e5dc;
  --bg-elevated: #f0ece3;
  --bg-hover: #e3ddd1;
  --border: #d8d2c7;
  --border-light: #aaa295;
  --text-primary: #24272b;
  --text-secondary: #5b5954;
  --text-muted: #625e57;
  --warning: #805500;
  --text-warning: var(--warning);
  --accent: #a43d32;
  --accent-hover: #8e3027;
  --accent-glow: rgba(164, 61, 50, 0.12);
  --bg-input: #fffefa;
  --blue: #94372e;
  --button: var(--accent);
  --button-hover: var(--accent-hover);
  --button-text: #ffffff;
  --control-bg: var(--bg-input);
  --control-border: var(--border-light);
  --status-success-text: #21583b;
  --status-success-bg: #e0ede2;
  --status-danger-text: #8b3036;
  --status-danger-bg: #f4e3e2;
  --status-warning-text: #765217;
  --status-warning-bg: #f5ecd7;
}

[data-theme="editorial"] .analytics-synthetic,
[data-theme="editorial"] .analytics-coverage-indicator {
  background: var(--status-warning-bg);
  border-color: color-mix(in srgb, var(--status-warning-text) 45%, var(--border));
}

[data-theme="editorial"] .analytics-synthetic,
[data-theme="editorial"] .analytics-coverage-indicator strong {
  color: var(--status-warning-text);
}

[data-theme="editorial"] .analytics-coverage-indicator .coverage-dot {
  background: var(--status-warning-text);
}
