/* GENERATED copy of branding/tokens.css (branding/sync_tool.py). Do not edit here. */
/* ProcureValor Design-Tokens v2
   Entwurf Claude 01.10.2026, Status: freigegeben 02.10.2026 (Daniel, Markensystem_CI.md).
   Eine Quelle fuer Websites (procurevalor.com, spendvalor.com, rheinvalor.com) und das Tool.
   Herkunft je Wert: siehe tokens.json (Feld source). Q1 bis Q5 = Bestand, neu = Vorschlag Claude.
   Verwendung: <html data-theme="dark"> fuer Websites, <html data-theme="light"> fuer das Tool.
   Modulkontext: data-module="spend" (usw.) auf einem Container setzt --pv-mod und --pv-mod-tint.
   Dunkle Teilflaechen in hellem Layout (z.B. Tool-Menue): data-surface="dark". */

:root {
  /* Primitive: Kernfarben */
  --pv-ink-900: #0b1622; /* Hintergrund dunkel (Websites, Tool-Dark); Q2 --ink */
  --pv-ink-800: #122233; /* Fläche dunkel, Tool-Menüleiste; Q2 --ink-2 */
  --pv-ink-700: #1a3046; /* Karte / erhöhte Fläche dunkel; Q2 --ink-3 */
  --pv-ink-600: #243e58; /* Hover / Rahmen stark dunkel; neu */
  --pv-line-dark: #2e4a66; /* Linien auf dunkel; neu */
  --pv-text-dark: #eef4f9; /* Text auf dunkel; Q2 --text */
  --pv-muted-dark: #9fb3c4; /* Sekundärtext auf dunkel; Q2 --muted */
  --pv-signal: #7fb3d5; /* Signal Blue: Akzent auf dunkel; Q1, Q2, Q3 --accent */
  --pv-signal-2: #a9d0ea; /* Signal hell (Hover, Verlauf); Q2 */
  --pv-signal-deep: #2c4c66; /* Signal tief (Flächen, Diagramm-Hintergrund); Q1, Q2 */
  --pv-signal-paper: #2c5a7a; /* Akzent auf Weiss (Links, Primärbutton hell); Q1, Q2 --mid, Q3 --brand */
  --pv-signal-tint: #e6f0f8; /* Akzentfläche hell (Hinweis, Auswahl); Q3 --calc-bg */
  --pv-paper-0: #ffffff; /* Karte / Papier hell; Q3 --card */
  --pv-paper-50: #f5f7f9; /* Hintergrund hell (Tool); Q3 --bg */
  --pv-line-light: #e2e6eb; /* Linien auf hell; Q3 --line */
  --pv-text-light: #0b1622; /* Text auf hell (= ink-900); neu (statt Q3 #1b1f24) */
  --pv-muted-light: #546271; /* Sekundärtext auf hell; neu (statt Q3 #5f6670) */
  --pv-note: #facc15; /* Notiz-Gelb, nur Annotationen (ersetzt Amber #E0B45C); Q4, Entscheid E5 02.10.2026 */
  --pv-swiss: #da291c; /* nur Schweizerkreuz; Q2 */
  /* Primitive: Modulfarben (600 = auf hell, 300 = auf dunkel, 50 = Tint hell, 950 = Tint dunkel) */
  --pv-mod-procure-600: #2c5a7a; --pv-mod-procure-300: #7fb3d5; --pv-mod-procure-50: #e6f0f8; --pv-mod-procure-950: #23394d; /* ProcureValor; Q2/Q3 (= Signal) */
  --pv-mod-spend-600: #2a64a5; --pv-mod-spend-300: #8fbbe8; --pv-mod-spend-50: #e9f1fa; --pv-mod-spend-950: #263a50; /* SpendValor; Q3 app.css */
  --pv-mod-source-600: #0e7268; --pv-mod-source-300: #6dd0c2; --pv-mod-source-50: #e2f3f0; --pv-mod-source-950: #213e4a; /* SourceValor; Q3 app.css */
  --pv-mod-contract-600: #4b4fae; --pv-mod-contract-300: #aeb1f3; --pv-mod-contract-50: #ecedf9; --pv-mod-contract-950: #2b3952; /* ContractValor; Q3 app.css */
  --pv-mod-margin-600: #a65a0c; --pv-mod-margin-300: #f0b968; --pv-mod-margin-50: #fbf0e1; --pv-mod-margin-950: #363a3b; /* MarginValor; Q3 app.css */
  --pv-mod-strategy-600: #914d9c; --pv-mod-strategy-300: #dba4e3; --pv-mod-strategy-50: #f7ecf9; --pv-mod-strategy-950: #32374f; /* StrategyValor; neu */
  --pv-mod-terms-600: #ac4072; --pv-mod-terms-300: #f59dbf; --pv-mod-terms-50: #fdeaf1; --pv-mod-terms-950: #363649; /* TermsValor; neu */
  --pv-mod-advisor-600: #5d6976; --pv-mod-advisor-300: #aeb8c3; --pv-mod-advisor-50: #ecf1f5; --pv-mod-advisor-950: #2b3a4a; /* AdvisorValor; neu */
  --pv-mod-learn-600: #517118; --pv-mod-learn-300: #a4c081; --pv-mod-learn-50: #ecf3e4; --pv-mod-learn-950: #293b3f; /* LearnValor; neu */
  /* Typografie */
  --pv-font-display: "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
  --pv-font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --pv-font-office: "Segoe UI", Arial, sans-serif;
  --pv-weight-display: 700; --pv-weight-display-light: 500;
  /* Form */
  --pv-radius-s: 6px; --pv-radius-m: 10px; --pv-radius-tile: 23%;
}

/* Semantik hell (Standard, Tool) */
:root, [data-theme="light"] {
  --pv-bg: var(--pv-paper-50);
  --pv-surface: var(--pv-paper-0);
  --pv-surface-2: var(--pv-signal-tint);
  --pv-line: var(--pv-line-light);
  --pv-text: var(--pv-text-light);
  --pv-muted: var(--pv-muted-light);
  --pv-accent: var(--pv-signal-paper); /* interaktiv: Links, Primaerbutton, Fokus; white-label ueberschreibbar */
  --pv-on-accent: #ffffff;
  --pv-mark-fg: var(--pv-ink-900); /* Kern und Ring der Bildmarke */
  --pv-nav-bg: var(--pv-ink-800); /* Tool-Menue bleibt dunkel */
  --pv-mod-procure: var(--pv-mod-procure-600); --pv-mod-procure-tint: var(--pv-mod-procure-50);
  --pv-mod-spend: var(--pv-mod-spend-600); --pv-mod-spend-tint: var(--pv-mod-spend-50);
  --pv-mod-source: var(--pv-mod-source-600); --pv-mod-source-tint: var(--pv-mod-source-50);
  --pv-mod-contract: var(--pv-mod-contract-600); --pv-mod-contract-tint: var(--pv-mod-contract-50);
  --pv-mod-margin: var(--pv-mod-margin-600); --pv-mod-margin-tint: var(--pv-mod-margin-50);
  --pv-mod-strategy: var(--pv-mod-strategy-600); --pv-mod-strategy-tint: var(--pv-mod-strategy-50);
  --pv-mod-terms: var(--pv-mod-terms-600); --pv-mod-terms-tint: var(--pv-mod-terms-50);
  --pv-mod-advisor: var(--pv-mod-advisor-600); --pv-mod-advisor-tint: var(--pv-mod-advisor-50);
  --pv-mod-learn: var(--pv-mod-learn-600); --pv-mod-learn-tint: var(--pv-mod-learn-50);
}

/* Semantik dunkel: OS-Einstellung, solange kein data-theme gesetzt ist */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --pv-bg: var(--pv-ink-900);
    --pv-surface: var(--pv-ink-800);
    --pv-surface-2: var(--pv-ink-700);
    --pv-line: var(--pv-line-dark);
    --pv-text: var(--pv-text-dark);
    --pv-muted: var(--pv-muted-dark);
    --pv-accent: var(--pv-signal);
    --pv-on-accent: var(--pv-ink-900);
    --pv-mark-fg: var(--pv-text-dark);
    --pv-nav-bg: var(--pv-ink-800);
    --pv-mod-procure: var(--pv-mod-procure-300); --pv-mod-procure-tint: var(--pv-mod-procure-950);
    --pv-mod-spend: var(--pv-mod-spend-300); --pv-mod-spend-tint: var(--pv-mod-spend-950);
    --pv-mod-source: var(--pv-mod-source-300); --pv-mod-source-tint: var(--pv-mod-source-950);
    --pv-mod-contract: var(--pv-mod-contract-300); --pv-mod-contract-tint: var(--pv-mod-contract-950);
    --pv-mod-margin: var(--pv-mod-margin-300); --pv-mod-margin-tint: var(--pv-mod-margin-950);
    --pv-mod-strategy: var(--pv-mod-strategy-300); --pv-mod-strategy-tint: var(--pv-mod-strategy-950);
    --pv-mod-terms: var(--pv-mod-terms-300); --pv-mod-terms-tint: var(--pv-mod-terms-950);
    --pv-mod-advisor: var(--pv-mod-advisor-300); --pv-mod-advisor-tint: var(--pv-mod-advisor-950);
    --pv-mod-learn: var(--pv-mod-learn-300); --pv-mod-learn-tint: var(--pv-mod-learn-950);
  }
}

/* Semantik dunkel: explizit (Websites) und dunkle Teilflaechen */
[data-theme="dark"], [data-surface="dark"] {
  --pv-bg: var(--pv-ink-900);
  --pv-surface: var(--pv-ink-800);
  --pv-surface-2: var(--pv-ink-700);
  --pv-line: var(--pv-line-dark);
  --pv-text: var(--pv-text-dark);
  --pv-muted: var(--pv-muted-dark);
  --pv-accent: var(--pv-signal);
  --pv-on-accent: var(--pv-ink-900);
  --pv-mark-fg: var(--pv-text-dark);
  --pv-nav-bg: var(--pv-ink-800);
  --pv-mod-procure: var(--pv-mod-procure-300); --pv-mod-procure-tint: var(--pv-mod-procure-950);
  --pv-mod-spend: var(--pv-mod-spend-300); --pv-mod-spend-tint: var(--pv-mod-spend-950);
  --pv-mod-source: var(--pv-mod-source-300); --pv-mod-source-tint: var(--pv-mod-source-950);
  --pv-mod-contract: var(--pv-mod-contract-300); --pv-mod-contract-tint: var(--pv-mod-contract-950);
  --pv-mod-margin: var(--pv-mod-margin-300); --pv-mod-margin-tint: var(--pv-mod-margin-950);
  --pv-mod-strategy: var(--pv-mod-strategy-300); --pv-mod-strategy-tint: var(--pv-mod-strategy-950);
  --pv-mod-terms: var(--pv-mod-terms-300); --pv-mod-terms-tint: var(--pv-mod-terms-950);
  --pv-mod-advisor: var(--pv-mod-advisor-300); --pv-mod-advisor-tint: var(--pv-mod-advisor-950);
  --pv-mod-learn: var(--pv-mod-learn-300); --pv-mod-learn-tint: var(--pv-mod-learn-950);
}

/* Modulkontext: Modulfarbe ist im eigenen Modul der Akzent (Markensystem_CI.md Abschn. 8, Daniel 02.10.2026).
   Hell = 600, dunkel = 300. Suite-Ebene (procure) behaelt Signal. White Label setzt --pv-accent danach neu. */
[data-module="procure"] { --pv-mod: var(--pv-mod-procure); --pv-mod-tint: var(--pv-mod-procure-tint); --pv-accent: var(--pv-mod-procure); }
[data-module="procure"] [data-surface="dark"], [data-module="procure"][data-surface="dark"], [data-theme="dark"][data-module="procure"] { --pv-accent: var(--pv-mod-procure-300); }
[data-module="spend"] { --pv-mod: var(--pv-mod-spend); --pv-mod-tint: var(--pv-mod-spend-tint); --pv-accent: var(--pv-mod-spend); }
[data-module="spend"] [data-surface="dark"], [data-module="spend"][data-surface="dark"], [data-theme="dark"][data-module="spend"] { --pv-accent: var(--pv-mod-spend-300); }
[data-module="source"] { --pv-mod: var(--pv-mod-source); --pv-mod-tint: var(--pv-mod-source-tint); --pv-accent: var(--pv-mod-source); }
[data-module="source"] [data-surface="dark"], [data-module="source"][data-surface="dark"], [data-theme="dark"][data-module="source"] { --pv-accent: var(--pv-mod-source-300); }
[data-module="contract"] { --pv-mod: var(--pv-mod-contract); --pv-mod-tint: var(--pv-mod-contract-tint); --pv-accent: var(--pv-mod-contract); }
[data-module="contract"] [data-surface="dark"], [data-module="contract"][data-surface="dark"], [data-theme="dark"][data-module="contract"] { --pv-accent: var(--pv-mod-contract-300); }
[data-module="margin"] { --pv-mod: var(--pv-mod-margin); --pv-mod-tint: var(--pv-mod-margin-tint); --pv-accent: var(--pv-mod-margin); }
[data-module="margin"] [data-surface="dark"], [data-module="margin"][data-surface="dark"], [data-theme="dark"][data-module="margin"] { --pv-accent: var(--pv-mod-margin-300); }
[data-module="strategy"] { --pv-mod: var(--pv-mod-strategy); --pv-mod-tint: var(--pv-mod-strategy-tint); --pv-accent: var(--pv-mod-strategy); }
[data-module="strategy"] [data-surface="dark"], [data-module="strategy"][data-surface="dark"], [data-theme="dark"][data-module="strategy"] { --pv-accent: var(--pv-mod-strategy-300); }
[data-module="terms"] { --pv-mod: var(--pv-mod-terms); --pv-mod-tint: var(--pv-mod-terms-tint); --pv-accent: var(--pv-mod-terms); }
[data-module="terms"] [data-surface="dark"], [data-module="terms"][data-surface="dark"], [data-theme="dark"][data-module="terms"] { --pv-accent: var(--pv-mod-terms-300); }
[data-module="advisor"] { --pv-mod: var(--pv-mod-advisor); --pv-mod-tint: var(--pv-mod-advisor-tint); --pv-accent: var(--pv-mod-advisor); }
[data-module="advisor"] [data-surface="dark"], [data-module="advisor"][data-surface="dark"], [data-theme="dark"][data-module="advisor"] { --pv-accent: var(--pv-mod-advisor-300); }
[data-module="learn"] { --pv-mod: var(--pv-mod-learn); --pv-mod-tint: var(--pv-mod-learn-tint); --pv-accent: var(--pv-mod-learn); }
[data-module="learn"] [data-surface="dark"], [data-module="learn"][data-surface="dark"], [data-theme="dark"][data-module="learn"] { --pv-accent: var(--pv-mod-learn-300); }
