/*
 * Marken-Theme „fiscanto“ – überschreibt die Obsidian-Tokens (static/css/obsidian.css), aktiv mit BRAND_THEME=fiscanto.
 *
 * Quelle: CI-Paket vom 10.10.2026 (Arbeitsvariante: Palette Navy #1E2C4F / Creme / Orange #E8843A, Schrift Atkinson
 * Hyperlegible Next/Mono, SIL OFL 1.1 – Lizenz je Schrift in fonts/…/OFL.txt). Direkt geliefert: Hintergrund, Fläche, Text, Primär,
 * Akzent, Status, Rahmen, Trennlinie (docs/ci/farben.md). Abgeleitet (nicht im Paket, Kontrast geprüft): Seitenleiste,
 * Flächen 2/3, Feld, Navigation, Linie 2, Text 3, Akzent weich, Linienfarben, Statusfarben, Bootstrap-RGB.
 * Keine Inline-Styles, keine fremden Abrufe.
 */

@font-face {
  font-family: "Atkinson Hyperlegible Next";
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url("fonts/atkinson-hyperlegible-next/AtkinsonHyperlegibleNext[wght].8f14348d6ef8.woff2") format("woff2-variations");
}
@font-face {
  font-family: "Atkinson Hyperlegible Next";
  font-style: italic;
  font-display: swap;
  font-weight: 200 800;
  src: url("fonts/atkinson-hyperlegible-next/AtkinsonHyperlegibleNext-Italic[wght].3e18104cb3a9.woff2") format("woff2-variations");
}
@font-face {
  font-family: "Literata";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("fonts/literata/Literata[opsz,wght].24f569f3028d.woff2") format("woff2-variations");
}
@font-face {
  font-family: "Atkinson Hyperlegible Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url("fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono[wght].a6e84abbaf3c.woff2") format("woff2-variations");
}

:root {
  --ob-font-ui: "Atkinson Hyperlegible Next", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  --ob-font-display: "Literata", Georgia, "Iowan Old Style", serif;  /* Auszeichnung (Entscheidung 10.10.2026) */
  --ob-font-mono: "Atkinson Hyperlegible Mono", ui-monospace, "Cascadia Mono", Consolas, "Liberation Mono", monospace;
  --ob-fs-xs: 0.75rem;  /* Mindestgröße laut CI 12 px */
}

[data-bs-theme] {
  color-scheme: light;
  --ob-bg: #F4ECDE; --ob-sidebar: #EDE4D3; --ob-surface: #FFFBF5; --ob-surface-2: #F9F3E8; --ob-surface-3: #F1E9DB;
  --ob-field: #FFFFFF; --ob-chrome: #EAE2D3; --ob-nav-hover: #E6DDCC; --ob-nav-active: #FFFBF5;
  --ob-line: #E0D8CA; --ob-line-2: #D3C9B6; --ob-line-strong: #7C8397;
  --ob-text: #121B31; --ob-text-2: #50586D; --ob-text-3: #575F72;
  --ob-accent: #9F4E00; --ob-accent-deco: #E8843A; --ob-accent-soft: #FBE9D8;
  --ob-primary-bg: #1E2C4F; --ob-primary-hover: #2D3C60; --ob-primary-fg: #FCF6EC;
  --ob-danger: #A4192D; --ob-danger-bg: #A4192D; --ob-danger-hover: #8A1426; --ob-danger-fg: #FFFFFF; --ob-danger-soft: #FBE7E8; --ob-danger-line: #EDBFC3;
  --ob-warn: #745800; --ob-warn-soft: #FBF0D2; --ob-warn-line: #E9D594;
  --ob-info: #1D4FA6; --ob-info-soft: #E6EEFB; --ob-info-line: #C5D4F0;
  --ob-success: #17633F; --ob-success-soft: #E3F1E8; --ob-success-line: #BCDEC8;
  --ob-focus: #9F4E00; --ob-focus-halo: rgba(159, 78, 0, 0.18);
  --ob-shadow-1: 0 1px 0 rgba(18, 27, 49, 0.03), 0 1px 2px rgba(18, 27, 49, 0.05);
  --ob-shadow-2: 0 18px 40px -18px rgba(18, 27, 49, 0.28), 0 2px 6px rgba(18, 27, 49, 0.07);
  --ob-btn-sheen: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 1px 2px rgba(18, 27, 49, 0.25);
  --ob-glow: radial-gradient(900px 380px at 14% -10%, rgba(232, 132, 58, 0.10), transparent 62%);
  --ob-scrim: rgba(18, 27, 49, 0.40);

  --st-dun-fg: #8A4400;     --st-dun-bg: #FBE9D8;     --st-dun-line: #F0CBA6;
  --st-accent-fg: #8A4400;  --st-accent-bg: #FBE9D8;  --st-accent-line: #F0CBA6;

  --bs-body-color-rgb: 18, 27, 49;
  --bs-body-bg-rgb: 244, 236, 222;
  --bs-secondary-color-rgb: 80, 88, 109;
  --bs-link-color-rgb: 159, 78, 0;
  --bs-link-hover-color-rgb: 128, 63, 0;
  --bs-primary-rgb: 159, 78, 0;
  --bs-success-rgb: 23, 99, 63;
  --bs-danger-rgb: 164, 25, 45;
  --bs-warning-rgb: 116, 88, 0;
  --bs-info-rgb: 29, 79, 166;
  --bs-secondary-rgb: 80, 88, 109;
}

@media screen {
  [data-bs-theme="dark"] {
    color-scheme: dark;
    --ob-bg: #091123; --ob-sidebar: #0C152A; --ob-surface: #151D32; --ob-surface-2: #1A2339; --ob-surface-3: #202A42;
    --ob-field: #0E1629; --ob-chrome: #060C1A; --ob-nav-hover: #131C31; --ob-nav-active: #1A2339;
    --ob-line: #273045; --ob-line-2: #323C54; --ob-line-strong: #656D7F;
    --ob-text: #F3ECE0; --ob-text-2: #9CA5B8; --ob-text-3: #8E97AB;
    --ob-accent: #E8843A; --ob-accent-deco: #E8843A; --ob-accent-soft: rgba(232, 132, 58, 0.12);
    --ob-primary-bg: #EAE2D4; --ob-primary-hover: #F7EFE1; --ob-primary-fg: #121B31;
    --ob-danger: #FF9B9E; --ob-danger-bg: #F07C82; --ob-danger-hover: #F59095; --ob-danger-fg: #1A0B0E; --ob-danger-soft: #3D1219; --ob-danger-line: #5E2630;
    --ob-warn: #EBC15A; --ob-warn-soft: #33270A; --ob-warn-line: #574316;
    --ob-info: #9DBDF7; --ob-info-soft: #132650; --ob-info-line: #24396A;
    --ob-success: #7FD3A4; --ob-success-soft: #10301F; --ob-success-line: #1E4A33;
    --ob-focus: #F2A262; --ob-focus-halo: rgba(232, 132, 58, 0.25);
    --ob-shadow-1: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 1px 2px rgba(0, 0, 0, 0.45);
    --ob-shadow-2: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 18px 44px -18px rgba(0, 0, 0, 0.8), 0 2px 6px rgba(0, 0, 0, 0.4);
    --ob-btn-sheen: inset 0 1px 0 rgba(255, 255, 255, 0.28), 0 1px 2px rgba(0, 0, 0, 0.4);
    --ob-glow: radial-gradient(900px 380px at 14% -10%, rgba(232, 132, 58, 0.06), transparent 62%);
    --ob-scrim: rgba(4, 8, 18, 0.64);

    --st-dun-fg: #F2A262;     --st-dun-bg: #33200F;     --st-dun-line: #5A3818;
    --st-accent-fg: #E8843A;  --st-accent-bg: #2A1C10;  --st-accent-line: #4D3218;

    --bs-body-color-rgb: 243, 236, 224;
    --bs-body-bg-rgb: 9, 17, 35;
    --bs-secondary-color-rgb: 156, 165, 184;
    --bs-link-color-rgb: 232, 132, 58;
    --bs-link-hover-color-rgb: 242, 162, 98;
    --bs-primary-rgb: 232, 132, 58;
    --bs-success-rgb: 127, 211, 164;
    --bs-danger-rgb: 255, 155, 158;
    --bs-warning-rgb: 235, 193, 90;
    --bs-info-rgb: 157, 189, 247;
    --bs-secondary-rgb: 156, 165, 184;
  }
}

/* Schrift: Überschriften in Literata (Auszeichnung), Markenname und Kennzahlen in Next SemiBold (wie die Wortmarke,
   −0,012 em), Beträge mit Tabellenziffern */
h1, .h1, h2, .h2, .h3 { font-weight: 600; letter-spacing: -0.01em; }
.kf-brand-name, .kf-kpi-value { font-family: var(--ob-font-ui); font-weight: 600; letter-spacing: -0.012em; }
.kf-auth-claim { font-weight: 600; letter-spacing: -0.02em; }
table, .kf-mono, .kf-kpi-value, input[inputmode="decimal"], input[type="number"] { font-variant-numeric: tabular-nums; }

/* Icons: Strich 1,5 wie die Lucide-Vorlage der CI */
.kf-icon { stroke-width: 1.5; }
