/* ============================================================================
   Athena ⟶ shared skin bridge.

   Maps Athena's local token vocabulary onto the shared design tokens in
   tokens.css, so Athena can render under the CENTRAL skins (midnight /
   guinness / demo) via <html data-skin="...">. Load order in the HTML must be:
       athena.css  →  tokens.css  →  skin-bridge.css
   (bridge last so it wins on equal specificity).

   SCOPE: only STRUCTURAL colour + the primary accent + body font are remapped.
   Athena's data-viz semantics are deliberately LEFT ALONE — red still means
   "down" in every skin:
     • --color-positive / --color-negative / --color-warning / --color-info
     • the chart ramp  --accent-teal / -cyan / -blue / -red / -green / -purple

   SAFETY: everything here is scoped to [data-skin]. With NO data-skin attribute
   present, none of it applies and Athena renders exactly as today (its own
   data-theme presets — bloomberg/light/fintech/teal/sunset — untouched).
   ========================================================================== */

[data-skin]{
  /* Backgrounds (Athena has 6 shades; skin has 4 + derive hover/active) */
  --bg-primary:   var(--bg);
  --bg-secondary: var(--bg-soft);
  --bg-tertiary:  var(--bg-raised);
  --bg-card:      var(--bg-raised);
  --bg-hover:     color-mix(in srgb, var(--bg) 92%, var(--ink));
  --bg-active:    color-mix(in srgb, var(--bg) 86%, var(--ink));

  /* Borders */
  --border-primary:   var(--rule);
  --border-secondary: var(--rule-strong);
  --border-focus:     var(--accent);

  /* Text */
  --text-primary:   var(--ink);
  --text-secondary: var(--ink-soft);
  --text-muted:     var(--ink-mute);
  --text-inverse:   var(--bg);

  /* Primary accent + brand-driven gradients/glow (data-viz accents untouched) */
  --accent-primary:      var(--accent);
  --accent-secondary:    var(--accent-deep);
  --gradient-primary:    linear-gradient(135deg, var(--accent), var(--accent-deep));
  --gradient-accent:     linear-gradient(135deg, var(--accent), var(--accent-deep));
  --gradient-nav-active: linear-gradient(90deg, var(--accent), var(--accent-deep));
  --shadow-glow:         0 0 20px var(--accent-glow);

  /* Body font follows the skin (Montserrat under guinness, etc.) */
  --font-sans: var(--sans);
}

/* Date-picker icon: dark skins need the white-invert, light skins must not. */
[data-skin="midnight"]               { --calendar-icon-filter: invert(1); }
[data-skin="guinness"],
[data-skin="demo"]                   { --calendar-icon-filter: none; }
/* Orion-driven skin: pick the icon filter from the broadcast light/dark mode. */
[data-skin="orion"][data-orion-mode="dark"]  { --calendar-icon-filter: invert(1); }
[data-skin="orion"][data-orion-mode="light"] { --calendar-icon-filter: none; }
