/* AMS 6-theme token set (from amsol-skill assets/themes.css), extended for HumanPulse.
   Ocean is tuned to the HumanPulse brand (healthcare blue → teal). Components only use tokens. */

:root,
[data-theme="ocean"] {
  --bg: #f5f8fb;
  --bg-elevated: #ffffff;
  --bg-sunken: #edf2f7;
  --fg: #0c1f35;
  --fg-muted: #4a5d72;
  --accent: #0b66c3;
  --accent-strong: #0a4f98;
  --accent-fg: #ffffff;
  --accent-2: #0f9d94;
  --accent-soft: #e5f0fb;
  --accent-2-soft: #e3f5f3;
  --border: #d9e3ed;
  --grid-line: rgba(11, 102, 195, 0.07);
  --success: #15803d;
  --warning: #b45309;
  --danger: #c2261e;
  --shadow: 0 1px 2px rgba(12, 31, 53, 0.06), 0 8px 24px -12px rgba(12, 31, 53, 0.18);
  --brand-gradient: linear-gradient(120deg, #0b66c3 0%, #0f9d94 100%);
  color-scheme: light;
}

[data-theme="midnight"] {
  --bg: #0b0f19;
  --bg-elevated: #131a29;
  --bg-sunken: #0f1522;
  --fg: #e6e9f0;
  --fg-muted: #9aa4b6;
  --accent: #818cf8;
  --accent-strong: #a5b4fc;
  --accent-fg: #0b0f19;
  --accent-2: #2dd4bf;
  --accent-soft: #1d2340;
  --accent-2-soft: #10302e;
  --border: #232b3d;
  --grid-line: rgba(129, 140, 248, 0.07);
  --success: #22c55e;
  --warning: #f59e0b;
  --danger: #f87171;
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.4), 0 10px 30px -14px rgba(0, 0, 0, 0.7);
  --brand-gradient: linear-gradient(120deg, #6366f1 0%, #2dd4bf 100%);
  color-scheme: dark;
}

[data-theme="sunset"] {
  --bg: #fff8f2;
  --bg-elevated: #ffffff;
  --bg-sunken: #fbeee2;
  --fg: #2a1810;
  --fg-muted: #75533f;
  --accent: #c2410c;
  --accent-strong: #9a3412;
  --accent-fg: #ffffff;
  --accent-2: #0f766e;
  --accent-soft: #fde8d8;
  --accent-2-soft: #dff3f0;
  --border: #f0d9c4;
  --grid-line: rgba(194, 65, 12, 0.07);
  --success: #15803d;
  --warning: #b45309;
  --danger: #b91c1c;
  --shadow: 0 1px 2px rgba(42, 24, 16, 0.06), 0 8px 24px -12px rgba(42, 24, 16, 0.2);
  --brand-gradient: linear-gradient(120deg, #ea580c 0%, #e11d48 100%);
  color-scheme: light;
}

[data-theme="graphite"] {
  --bg: #161718;
  --bg-elevated: #202224;
  --bg-sunken: #1b1c1e;
  --fg: #e9eaeb;
  --fg-muted: #a1a5ab;
  --accent: #94a3b8;
  --accent-strong: #cbd5e1;
  --accent-fg: #111213;
  --accent-2: #5eead4;
  --accent-soft: #2a2e33;
  --accent-2-soft: #1d2f2c;
  --border: #303236;
  --grid-line: rgba(148, 163, 184, 0.07);
  --success: #22c55e;
  --warning: #eab308;
  --danger: #f87171;
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.4), 0 10px 30px -14px rgba(0, 0, 0, 0.7);
  --brand-gradient: linear-gradient(120deg, #64748b 0%, #5eead4 100%);
  color-scheme: dark;
}

[data-theme="evergreen"] {
  --bg: #f5faf6;
  --bg-elevated: #ffffff;
  --bg-sunken: #e8f2eb;
  --fg: #10241a;
  --fg-muted: #46604f;
  --accent: #15803d;
  --accent-strong: #166534;
  --accent-fg: #ffffff;
  --accent-2: #0e7490;
  --accent-soft: #dcf0e2;
  --accent-2-soft: #dbf0f5;
  --border: #d0e4d6;
  --grid-line: rgba(21, 128, 61, 0.07);
  --success: #15803d;
  --warning: #b45309;
  --danger: #b91c1c;
  --shadow: 0 1px 2px rgba(16, 36, 26, 0.06), 0 8px 24px -12px rgba(16, 36, 26, 0.18);
  --brand-gradient: linear-gradient(120deg, #15803d 0%, #0e7490 100%);
  color-scheme: light;
}

[data-theme="orchid"] {
  --bg: #fbf7fc;
  --bg-elevated: #ffffff;
  --bg-sunken: #f3e9f5;
  --fg: #241827;
  --fg-muted: #66506b;
  --accent: #a21caf;
  --accent-strong: #86198f;
  --accent-fg: #ffffff;
  --accent-2: #0f766e;
  --accent-soft: #f6e1f8;
  --accent-2-soft: #ddf2ef;
  --border: #e8d6eb;
  --grid-line: rgba(162, 28, 175, 0.07);
  --success: #15803d;
  --warning: #b45309;
  --danger: #b91c1c;
  --shadow: 0 1px 2px rgba(36, 24, 39, 0.06), 0 8px 24px -12px rgba(36, 24, 39, 0.2);
  --brand-gradient: linear-gradient(120deg, #a21caf 0%, #db2777 100%);
  color-scheme: light;
}

/* Risk levels derive from each theme's semantic tokens. */
:root, [data-theme] {
  --risk-normal: var(--accent-2);
  --risk-low: var(--success);
  --risk-moderate: var(--warning);
  --risk-high: var(--danger);
  --risk-very-high: color-mix(in srgb, var(--danger) 70%, #000 30%);
  --risk-info: var(--accent);
}
