/* ================================================================
   GECOMPONENTS PLUGIN TOKENS — self-contained
   GENERIERT aus shared/design-tokens — nicht von Hand editieren.
   Erzeugt via scripts/build/sync-tokens.js (npm run sync:tokens).
   Diese Datei wird auch von EXTERN eingebetteten Rechnern auf
   Fremd-Websites geladen und muss self-contained bleiben (laedt weder
   tokens.css noch legacy-aliases.css nach). Quelle:
     shared/design-tokens/tokens.css        (kanonischer :root-Block)
     shared/design-tokens/legacy-aliases.css (--color-*-Aliase)
   Aenderungen ausschliesslich in den Quellen vornehmen.
   ================================================================ */

:root{
  /* --- Flächen --- */
  --bg:            #0B1220;   /* Dunkel: Topbar, Footer, Ergebnis-Panels, Formelblöcke */
  --bg-raised:     #111A2C;   /* Karten auf dunklem Grund */
  --surface:       #FFFFFF;   /* Karten, Inhaltsflächen */
  --surface-alt:   #F6F8FB;   /* Seitenhintergrund Rechner, alternierende Sektionen, Sidebar */
  --border:        #E5EAF1;
  --border-strong: #CBD5E3;   /* Formular-Rahmen */
  --border-dark:   rgba(255,255,255,.09);

  /* --- Text --- */
  --text:          #0F1729;   /* Überschriften, wichtige Werte */
  --text-body:     #28354D;   /* Fließtext */
  --text-muted:    #5B6B84;   /* Labels, Hints, Meta */
  --text-inverse:  #EDF2FA;
  --text-inverse-muted: #93A3BC;

  /* --- Akzente --- */
  --accent:        #0E9FE8;   /* PV-Blau: Links, primäre Buttons, aktive Zustände */
  --accent-hover:  #0C8FD1;
  --accent-soft:   #E5F4FD;   /* Hintergrund aktiver Nav-Einträge, Norm-Badges */
  --accent-border: #C4E4F7;
  --accent-text:   #0B7CB8;   /* Blau auf hellem Blau (Kontrast) */
  --accent-warm:   #F59E0B;   /* Calor-Amber: NUR für Wärme-Kennzahlen (Heizlast, Wärmebedarf) */

  /* --- Semantik (Ampel) --- */
  --ok:       #10B981; --ok-soft:   #E7F8F1; --ok-text:   #067647;
  --warn:     #F59E0B; --warn-soft: #FEF3E2; --warn-text: #93540A;
  --err:      #EF4444; --err-soft:  #FEECEB; --err-text:  #B42318;
  --info:     #0E9FE8; --info-soft: #E5F4FD; --info-text: #0B7CB8;
  --neutral-soft: #EEF1F6;
  --ok-bright: #34D399; --warn-bright: #FBBF24; --err-bright: #F87171;  /* Ampel auf dunklem Grund */

  /* --- Chart-Palette (Chart.js) — wissenschaftlich gedeckt (v1.3) ---
     Volle Akzentfarben sind UI/KPIs vorbehalten; Datengrafiken nutzen
     entsättigte, drucktaugliche Töne bei erhaltener Semantik. */
  --ch-1: #38618C;  /* Strom / Erzeugung / Wärmepumpe (Stahlblau) */
  --ch-2: #B4592A;  /* Wärme / Heizbedarf (gebranntes Ziegelorange) */
  --ch-3: #4E7B57;  /* Ersparnis / Eigenverbrauch / JAZ (gedecktes Grün) */
  --ch-4: #6E7B91;  /* Bestandsheizung / Vergleichsreihe (Schieferblau) */
  --ch-5: #9AA3B0;  /* Referenz / neutral */
  --ch-neg: #9E3B32;/* negativ (dunkles Ziegelrot) */

  /* --- Typografie --- */
  --font-sans: 'Inter',system-ui,sans-serif;
  --font-head: 'Familjen Grotesk','Inter',sans-serif;  /* A2: eigenständige Headline-Schrift */
  --font-mono: 'JetBrains Mono',ui-monospace,monospace;

  /* --- Geometrie --- */
  --radius:    8px;   /* Karten, Inputs, Boxen (A2: kantiger) */
  --radius-lg: 10px;  /* große Karten, Panels (A2: kantiger) */
  --shadow: 0 1px 2px rgba(15,23,41,.05),0 8px 24px -12px rgba(15,23,41,.12);
  --shadow-lift: 0 2px 4px rgba(15,23,41,.06),0 16px 40px -12px rgba(15,23,41,.22);
  --sidebar-w: 264px;
}

/* ---- Legacy-Aliase (--color-*) aus legacy-aliases.css, 1:1 ---- */
:root{
  --color-surface: var(--surface-alt);
  --color-panel: var(--surface);
  --color-sidebar: var(--bg);
  --color-sidebar-muted: var(--bg-raised);
  --color-text: var(--text);
  --color-text-muted: var(--text-muted);
  --color-shadow: var(--shadow);
}
