/* Generated from frontend/src/index.css by scripts/export-site-tokens.mjs. Do not edit. */
:root {
  color-scheme: dark;

  --bg-base:       #0a0a0a;
  --bg-surface:    #111111;
  --bg-elevated:   #181818;
  --bg-input:      #141414;

  --accent:        #00ff87;
  --accent-dim:    #00cc6a;
  --accent-muted:  rgba(0, 255, 135, 0.08);
  --accent-border: rgba(0, 255, 135, 0.2);

  --text-primary:  #e8e6e0;
  --text-secondary:#aaa79f;   /* lightened for readability */
  --text-tertiary: #9a968e;
  --text-inverse:  #0a0a0a;   /* text on an accent background */

  --border:        rgba(255,255,255,0.06);
  --border-strong: rgba(255,255,255,0.15);
  --border-focus:  rgba(0, 255, 135, 0.4);
  --grid-faint:    rgba(255,255,255,0.015);

  --red:           #ff6b6b;
  --red-muted:     rgba(255,77,77,0.08);
  --red-border:    rgba(255,77,77,0.25);
  --amber:         #f5a623;
  --green:         #00ff87;

  /* Charts */
  --chart-grid:           rgba(255,255,255,0.06);
  --chart-axis:           #a2a6ad;
  --chart-tooltip-bg:     #14171c;
  --chart-tooltip-border: #2a2f37;
  --chart-bg:             #171717;   /* chart panels inside cards */
  --chart-neutral:        #4a4845;
  --series-1: #3987e5;
  --series-2: #d95926;
  --series-3: #199e70;
  --series-4: #c98500;
  --series-5: #d55181;
  --series-6: #9085e9;

  --font-display:  'Space Mono', monospace;
  --font-body:     'DM Sans', sans-serif;

  --radius-sm:     2px;
  --radius-md:     4px;
  --radius-lg:     6px;

  --transition:    150ms ease;
}

/* Light mode: neutrals, semantic and chart colours */
:root[data-theme="light"] {
  color-scheme: light;

  --bg-base:       #ffffff;
  --bg-surface:    #f7f8f6;
  --bg-elevated:   #eef0ed;
  --bg-input:      #ffffff;

  --text-primary:  #0f172a;
  --text-secondary:#475569;
  --text-tertiary: #5a6372;

  --border:        rgba(0,0,0,0.10);
  --border-strong: rgba(0,0,0,0.20);
  --grid-faint:    rgba(0,0,0,0.03);

  --red:           #cc2b2b;
  --red-muted:     rgba(204,43,43,0.07);
  --red-border:    rgba(204,43,43,0.28);
  --amber:         #8a5200;
  --green:         #08703f;

  --chart-grid:           rgba(0,0,0,0.08);
  --chart-axis:           #6b6f76;
  --chart-tooltip-bg:     #ffffff;
  --chart-tooltip-border: #d6d4ce;
  --chart-bg:             #ffffff;
  --chart-neutral:        #b8b5ae;
  --series-1: #2a6fc9;
  --series-2: #c2491b;
  --series-3: #11815a;
  --series-4: #a36b00;
  --series-5: #c03f6f;
  --series-6: #6e5fd6;
}

/* Accent palettes (Terminal green is the default above) */
:root[data-theme="light"] {
  --accent:        #007a45;
  --accent-dim:    #00663a;
  --accent-muted:  rgba(0,122,69,0.08);
  --accent-border: rgba(0,122,69,0.25);
  --border-focus:  rgba(0,122,69,0.5);
  --text-inverse:  #ffffff;
}

:root[data-accent="ice"] {
  --accent:        #4cc9f0;
  --accent-dim:    #2aa6cc;
  --accent-muted:  rgba(76,201,240,0.08);
  --accent-border: rgba(76,201,240,0.22);
  --border-focus:  rgba(76,201,240,0.45);
  --text-inverse:  #0a0a0a;
}
:root[data-theme="light"][data-accent="ice"] {
  --accent:        #0b6fa4;
  --accent-dim:    #085a86;
  --accent-muted:  rgba(11,111,164,0.08);
  --accent-border: rgba(11,111,164,0.25);
  --border-focus:  rgba(11,111,164,0.5);
  --text-inverse:  #ffffff;
}

:root[data-accent="violet"] {
  --accent:        #b18cff;
  --accent-dim:    #9168ec;
  --accent-muted:  rgba(177,140,255,0.09);
  --accent-border: rgba(177,140,255,0.24);
  --border-focus:  rgba(177,140,255,0.45);
  --text-inverse:  #0a0a0a;
}
:root[data-theme="light"][data-accent="violet"] {
  --accent:        #6d3fd6;
  --accent-dim:    #5730b3;
  --accent-muted:  rgba(109,63,214,0.08);
  --accent-border: rgba(109,63,214,0.25);
  --border-focus:  rgba(109,63,214,0.5);
  --text-inverse:  #ffffff;
}

:root[data-accent="mono"] {
  --accent:        #f2f0ea;
  --accent-dim:    #bdbab3;
  --accent-muted:  rgba(242,240,234,0.07);
  --accent-border: rgba(242,240,234,0.2);
  --border-focus:  rgba(242,240,234,0.4);
  --text-inverse:  #0a0a0a;
}
:root[data-theme="light"][data-accent="mono"] {
  --accent:        #1a1a18;
  --accent-dim:    #45443f;
  --accent-muted:  rgba(26,26,24,0.06);
  --accent-border: rgba(26,26,24,0.2);
  --border-focus:  rgba(26,26,24,0.45);
  --text-inverse:  #ffffff;
}

/* -------------------------------------------------------------------------
   Full theme styles: accent AND background palette (dark + light variant).
   Neutral text/semantic tokens come from the mode above; only backgrounds,
   chart panels and the accent change, so gains/losses stay green/red.
   ------------------------------------------------------------------------- */

/* Midnight: deep navy, blue accent */
:root[data-accent="midnight"] {
  --bg-base: #0a0f1c; --bg-surface: #0f1626; --bg-elevated: #152036; --bg-input: #111a2c;
  --chart-bg: #131c30; --chart-tooltip-bg: #18233b; --chart-tooltip-border: #2a3a5c;
  --border: rgba(140,170,255,0.09); --border-strong: rgba(140,170,255,0.2); --grid-faint: rgba(140,170,255,0.03);
  --accent: #6ea8ff; --accent-dim: #4d8ae6; --accent-muted: rgba(110,168,255,0.1);
  --accent-border: rgba(110,168,255,0.28); --border-focus: rgba(110,168,255,0.5); --text-inverse: #0a0f1c;
}
:root[data-theme="light"][data-accent="midnight"] {
  --bg-base: #eef2fa; --bg-surface: #ffffff; --bg-elevated: #e2e8f5; --bg-input: #ffffff;
  --chart-bg: #f4f7fc; --chart-tooltip-bg: #ffffff; --chart-tooltip-border: #cfd8ea;
  --border: rgba(20,40,90,0.11); --border-strong: rgba(20,40,90,0.22); --grid-faint: rgba(20,40,90,0.04);
  --accent: #2456c4; --accent-dim: #1b44a0; --accent-muted: rgba(36,86,196,0.08);
  --accent-border: rgba(36,86,196,0.28); --border-focus: rgba(36,86,196,0.5); --text-inverse: #ffffff;
}

/* Nord: cool slate, frost accent */
:root[data-accent="nord"] {
  --bg-base: #1b1f27; --bg-surface: #222731; --bg-elevated: #2a303c; --bg-input: #252b36;
  --chart-bg: #272d38; --chart-tooltip-bg: #2e3542; --chart-tooltip-border: #3e4757;
  --border: rgba(216,222,233,0.08); --border-strong: rgba(216,222,233,0.18); --grid-faint: rgba(216,222,233,0.03);
  --accent: #88c0d0; --accent-dim: #6fa7b8; --accent-muted: rgba(136,192,208,0.1);
  --accent-border: rgba(136,192,208,0.28); --border-focus: rgba(136,192,208,0.5); --text-inverse: #1b1f27;
}
:root[data-theme="light"][data-accent="nord"] {
  --bg-base: #eceff4; --bg-surface: #ffffff; --bg-elevated: #e2e6ee; --bg-input: #ffffff;
  --chart-bg: #f3f5f8; --chart-tooltip-bg: #ffffff; --chart-tooltip-border: #d3d9e3;
  --border: rgba(46,52,64,0.11); --border-strong: rgba(46,52,64,0.22); --grid-faint: rgba(46,52,64,0.04);
  --accent: #3b6e8f; --accent-dim: #2f5a75; --accent-muted: rgba(59,110,143,0.09);
  --accent-border: rgba(59,110,143,0.28); --border-focus: rgba(59,110,143,0.5); --text-inverse: #ffffff;
}

/* Ember: warm charcoal, orange accent */
:root[data-accent="ember"] {
  --bg-base: #110d0b; --bg-surface: #18120f; --bg-elevated: #221a15; --bg-input: #1b1411;
  --chart-bg: #1e1713; --chart-tooltip-bg: #261d18; --chart-tooltip-border: #3b2d25;
  --border: rgba(255,200,170,0.08); --border-strong: rgba(255,200,170,0.18); --grid-faint: rgba(255,200,170,0.03);
  --accent: #ff9a4d; --accent-dim: #e57f33; --accent-muted: rgba(255,154,77,0.1);
  --accent-border: rgba(255,154,77,0.28); --border-focus: rgba(255,154,77,0.5); --text-inverse: #110d0b;
}
:root[data-theme="light"][data-accent="ember"] {
  --bg-base: #faf4ee; --bg-surface: #ffffff; --bg-elevated: #f1e7dd; --bg-input: #ffffff;
  --chart-bg: #fcf8f4; --chart-tooltip-bg: #ffffff; --chart-tooltip-border: #e6d8ca;
  --border: rgba(90,50,20,0.11); --border-strong: rgba(90,50,20,0.22); --grid-faint: rgba(90,50,20,0.04);
  --accent: #b9480f; --accent-dim: #963a0b; --accent-muted: rgba(185,72,15,0.08);
  --accent-border: rgba(185,72,15,0.28); --border-focus: rgba(185,72,15,0.5); --text-inverse: #ffffff;
}

/* Solarized: the classic teal-blue base, yellow (dark) / blue (light) accent */
:root[data-accent="solarized"] {
  --bg-base: #00212b; --bg-surface: #002b36; --bg-elevated: #073642; --bg-input: #01303c;
  --chart-bg: #04323e; --chart-tooltip-bg: #073642; --chart-tooltip-border: #194b57;
  --border: rgba(147,161,161,0.12); --border-strong: rgba(147,161,161,0.25); --grid-faint: rgba(147,161,161,0.04);
  --accent: #e0b03a; --accent-dim: #b58900; --accent-muted: rgba(224,176,58,0.1);
  --accent-border: rgba(224,176,58,0.28); --border-focus: rgba(224,176,58,0.5); --text-inverse: #00212b;
}
:root[data-theme="light"][data-accent="solarized"] {
  --bg-base: #f5efdc; --bg-surface: #fdf6e3; --bg-elevated: #eee8d5; --bg-input: #fffbef;
  --chart-bg: #fbf4e0; --chart-tooltip-bg: #fffbef; --chart-tooltip-border: #ddd5bd;
  --border: rgba(88,110,117,0.14); --border-strong: rgba(88,110,117,0.26); --grid-faint: rgba(88,110,117,0.05);
  --accent: #1b67a1; --accent-dim: #165485; --accent-muted: rgba(31,116,181,0.08);
  --accent-border: rgba(31,116,181,0.28); --border-focus: rgba(31,116,181,0.5); --text-inverse: #ffffff;
}
