/* FitOrgOS: eine Farbwelt aus dem unveraenderten Tabler 1.6.1, Grautoene wie 1.5.0.
   Alte Rollennamen bleiben fuer bestehende Renderer erhalten; sie beziehen
   Farben ausschliesslich von Tabler. Keine Studio-Designlinien.
   Schrift, Masse und Funktionsverhalten bleiben eigenstaendige Vertraege.
   fitbox-fonts.css weiterhin als eigenen Link parallel laden.
   Siehe docs/tabler-farbsystem.md. */

/* BEGIN TABLER TOKEN SNAPSHOT */
/* Generiert aus assets/vendor/tabler/1.6.1/tabler.min.css; MIT, The Tabler Authors.
   Regenerieren: node scripts/build-tabler-token-snapshot.mjs */
:root {
  color-scheme: light;
  --tblr-bg-forms: light-dark(var(--tblr-bg-surface), var(--tblr-gray-900));
  --tblr-bg-forms-disabled: light-dark(var(--tblr-bg-surface-secondary), var(--tblr-gray-800));
  --tblr-bg-surface: light-dark(var(--tblr-bg-surface-primary), var(--tblr-gray-800));
  --tblr-bg-surface-dark: var(--tblr-gray-900);
  --tblr-bg-surface-inverted: light-dark(var(--tblr-gray-900), var(--tblr-gray-100));
  --tblr-bg-surface-primary: var(--tblr-white);
  --tblr-bg-surface-secondary: light-dark(var(--tblr-gray-50), var(--tblr-gray-900));
  --tblr-bg-surface-tertiary: light-dark(var(--tblr-gray-50), var(--tblr-gray-800));
  --tblr-black: #000;
  --tblr-body-bg: light-dark(var(--tblr-bg-surface-secondary), var(--tblr-gray-900));
  --tblr-body-color: light-dark(var(--tblr-gray-700), var(--tblr-gray-200));
  --tblr-border-color: light-dark(var(--tblr-gray-200), var(--tblr-gray-700));
  --tblr-border-radius: var(--tblr-border-radius-md);
  --tblr-border-radius-lg: calc(8px * var(--tblr-border-radius-scale, 1));
  --tblr-border-radius-md: calc(6px * var(--tblr-border-radius-scale, 1));
  --tblr-border-radius-pill: calc(100rem * var(--tblr-border-radius-scale, 1));
  --tblr-border-radius-scale: 1;
  --tblr-border-radius-sm: calc(4px * var(--tblr-border-radius-scale, 1));
  --tblr-border-radius-xl: calc(1rem * var(--tblr-border-radius-scale, 1));
  --tblr-danger-bg-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 80%, var(--tblr-danger)), color-mix(in oklab, var(--tblr-black) 80%, var(--tblr-danger)));
  --tblr-danger-border-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 60%, var(--tblr-danger)), color-mix(in oklab, var(--tblr-black) 40%, var(--tblr-danger)));
  --tblr-danger-text-emphasis: light-dark(color-mix(in oklab, var(--tblr-black) 60%, var(--tblr-danger)), color-mix(in oklab, var(--tblr-white) 40%, var(--tblr-danger)));
  --tblr-focus-ring-color: light-dark(color-mix(in oklab, var(--tblr-primary) calc(var(--tblr-focus-ring-opacity) * 100%), var(--tblr-body-bg)), color-mix(in oklab, var(--tblr-primary) calc(var(--tblr-focus-ring-opacity-dark) * 100%), var(--tblr-body-bg)));
  --tblr-focus-ring-opacity: 0.5;
  --tblr-focus-ring-opacity-dark: 0.75;
  --tblr-indigo-darken: oklch(from var(--tblr-indigo) calc(l - 0.06) c h);
  --tblr-indigo-lt: color-mix(in oklab, var(--tblr-indigo) 10%, transparent);
  --tblr-info-bg-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 80%, var(--tblr-info)), color-mix(in oklab, var(--tblr-black) 80%, var(--tblr-info)));
  --tblr-info-border-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 60%, var(--tblr-info)), color-mix(in oklab, var(--tblr-black) 40%, var(--tblr-info)));
  --tblr-info-text-emphasis: light-dark(color-mix(in oklab, var(--tblr-black) 60%, var(--tblr-info)), color-mix(in oklab, var(--tblr-white) 40%, var(--tblr-info)));
  --tblr-primary-bg-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 80%, var(--tblr-primary)), color-mix(in oklab, var(--tblr-black) 80%, var(--tblr-primary)));
  --tblr-primary-border-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 60%, var(--tblr-primary)), color-mix(in oklab, var(--tblr-black) 40%, var(--tblr-primary)));
  --tblr-primary-fg: var(--tblr-light);
  --tblr-primary-lt: color-mix(in oklab, var(--tblr-primary) 10%, transparent);
  --tblr-primary-rgb: 6,111,209;
  --tblr-primary-text-emphasis: light-dark(color-mix(in oklab, var(--tblr-black) 60%, var(--tblr-primary)), color-mix(in oklab, var(--tblr-white) 40%, var(--tblr-primary)));
  --tblr-purple-200: color-mix(in oklab, var(--tblr-purple) 20%, transparent);
  --tblr-purple-lt: color-mix(in oklab, var(--tblr-purple) 10%, transparent);
  --tblr-secondary: light-dark(var(--tblr-gray-500), var(--tblr-gray-400));
  --tblr-secondary-lt: color-mix(in oklab, var(--tblr-secondary) 10%, transparent);
  --tblr-shadow: 0px 2px 4px -1px color-mix(in oklab, var(--tblr-shadow-color) 15%, transparent),0px 4px 6px -1px color-mix(in oklab, var(--tblr-shadow-color) 20%, transparent);
  --tblr-shadow-color: light-dark(rgba(18, 18, 23, 0.4), #000);
  --tblr-shadow-lg: 0px 4px 6px -2px color-mix(in oklab, var(--tblr-shadow-color) 12.5%, transparent),0px 10px 15px -3px color-mix(in oklab, var(--tblr-shadow-color) 20%, transparent);
  --tblr-shadow-md: 0px 2px 4px -1px color-mix(in oklab, var(--tblr-shadow-color) 15%, transparent),0px 4px 6px -1px color-mix(in oklab, var(--tblr-shadow-color) 20%, transparent);
  --tblr-success-bg-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 80%, var(--tblr-success)), color-mix(in oklab, var(--tblr-black) 80%, var(--tblr-success)));
  --tblr-success-border-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 60%, var(--tblr-success)), color-mix(in oklab, var(--tblr-black) 40%, var(--tblr-success)));
  --tblr-success-lt: color-mix(in oklab, var(--tblr-success) 10%, transparent);
  --tblr-success-text-emphasis: light-dark(color-mix(in oklab, var(--tblr-black) 60%, var(--tblr-success)), color-mix(in oklab, var(--tblr-white) 40%, var(--tblr-success)));
  --tblr-teal-200: color-mix(in oklab, var(--tblr-teal) 20%, transparent);
  --tblr-teal-lt: color-mix(in oklab, var(--tblr-teal) 10%, transparent);
  --tblr-warning-bg-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 80%, var(--tblr-warning)), color-mix(in oklab, var(--tblr-black) 80%, var(--tblr-warning)));
  --tblr-warning-border-subtle: light-dark(color-mix(in oklab, var(--tblr-white) 60%, var(--tblr-warning)), color-mix(in oklab, var(--tblr-black) 40%, var(--tblr-warning)));
  --tblr-warning-text-emphasis: light-dark(color-mix(in oklab, var(--tblr-black) 60%, var(--tblr-warning)), color-mix(in oklab, var(--tblr-white) 40%, var(--tblr-warning)));
  --tblr-white: #fff;
}
:root[data-theme="dark"] {
  color-scheme: dark;

}
/* END TABLER TOKEN SNAPSHOT */

/* BEGIN TABLER FARBWELT BISHER */
/* Generiert aus assets/vendor/tabler/1.5.0/tabler.min.css (Werte) und assets/vendor/tabler/1.6.1/tabler.min.css (Abgleich); MIT, The Tabler Authors.
   Grautoene und Markenfarben-Schreibweise wie Tabler 1.5.0, siehe docs/tabler-farbsystem.md.
   Verdoppelte Spezifitaet, damit der Block vor tabler.min.css gewinnt.
   Regenerieren: node scripts/build-tabler-token-snapshot.mjs */
:root:root {
  --tblr-azure: #4299e1;
  --tblr-backdrop-bg: var(--tblr-bg-surface-dark);
  --tblr-blue: #066fd1;
  --tblr-body-bg-rgb: 255,255,255;
  --tblr-body-color-rgb: 107,114,128;
  --tblr-cyan: #17a2b8;
  --tblr-danger: #d63939;
  --tblr-dark: #1f2937;
  --tblr-dark-bg-subtle: light-dark(#9ca3af, rgb(6.0784313725%, 8.0392156863%, 10.7843137255%));
  --tblr-dark-border-subtle: light-dark(#6b7280, #1f2937);
  --tblr-dark-rgb: 31,41,55;
  --tblr-dark-text-emphasis: light-dark(#374151, #d1d5db);
  --tblr-emphasis-color: light-dark(#374151, #fff);
  --tblr-emphasis-color-rgb: 55,65,81;
  --tblr-gray: #4b5563;
  --tblr-gray-100: #f3f4f6;
  --tblr-gray-200: #e5e7eb;
  --tblr-gray-300: #d1d5db;
  --tblr-gray-400: #9ca3af;
  --tblr-gray-50: #f9fafb;
  --tblr-gray-500: #6b7280;
  --tblr-gray-600: #4b5563;
  --tblr-gray-700: #374151;
  --tblr-gray-800: #1f2937;
  --tblr-gray-900: #111827;
  --tblr-gray-950: #030712;
  --tblr-gray-dark: #1f2937;
  --tblr-green: #2fb344;
  --tblr-highlight-color: light-dark(#6b7280, #e5e7eb);
  --tblr-indigo: #4263eb;
  --tblr-info: #4299e1;
  --tblr-light: #f9fafb;
  --tblr-light-bg-subtle: light-dark(rgb(97.6470588235%, 97.8431372549%, 98.2352941176%), #1f2937);
  --tblr-light-border-subtle: light-dark(#e5e7eb, #374151);
  --tblr-light-rgb: 249,250,251;
  --tblr-light-text-emphasis: light-dark(#374151, #f3f4f6);
  --tblr-lime: #74b816;
  --tblr-muted: #6b7280;
  --tblr-muted-rgb: 107,114,128;
  --tblr-orange: #f76707;
  --tblr-pink: #d6336c;
  --tblr-primary: #066fd1;
  --tblr-purple: #ae3ec9;
  --tblr-red: #d63939;
  --tblr-secondary-bg: light-dark(#e5e7eb, #1f2937);
  --tblr-secondary-bg-rgb: 229,231,235;
  --tblr-secondary-color-rgb: 107,114,128;
  --tblr-secondary-rgb: 107,114,128;
  --tblr-success: #2fb344;
  --tblr-teal: #0ca678;
  --tblr-tertiary-bg: light-dark(#f3f4f6, rgb(9.4117647059%, 12.7450980392%, 18.431372549%));
  --tblr-tertiary-bg-rgb: 243,244,246;
  --tblr-tertiary-color-rgb: 107,114,128;
  --tblr-warning: #f59f00;
  --tblr-yellow: #f59f00;
}
:root[data-theme="dark"] {
  --tblr-body-bg-rgb: 17,24,39;
  --tblr-body-color-rgb: 229,231,235;
  --tblr-emphasis-color-rgb: 255,255,255;
  --tblr-secondary-bg-rgb: 31,41,55;
  --tblr-secondary-color-rgb: 229,231,235;
  --tblr-tertiary-bg-rgb: 24,32.5,47;
  --tblr-tertiary-color-rgb: 229,231,235;
}
/* END TABLER FARBWELT BISHER */

:root {
  --brand: var(--tblr-primary);
  --brand-dark: color-mix(in srgb, var(--tblr-primary) 90%, var(--tblr-black));
  --brand-acc: var(--tblr-primary-bg-subtle);
  --brand-soft: var(--tblr-primary-lt);
  --brand-line: var(--tblr-primary-border-subtle);
  --brand-text: var(--tblr-primary-text-emphasis);
  --on-brand: var(--tblr-primary-fg);
  --ai: var(--tblr-indigo);
  --ai-dark: var(--tblr-indigo-darken);
  --ai-2: var(--tblr-purple);
  --ai-soft: var(--tblr-indigo-lt);
  --bg: var(--tblr-body-bg);
  --card: var(--tblr-bg-surface);
  --ink: light-dark(var(--tblr-gray-900), var(--tblr-gray-100));
  --ink2: var(--tblr-body-color);
  --muted: var(--tblr-secondary);
  --border: var(--tblr-border-color);
  --border-strong: var(--tblr-border-color);
  --surface-hover: var(--tblr-bg-surface-secondary);
  --overlay-bg: color-mix(in srgb, var(--tblr-body-bg) 72%, transparent);
  --header-bg: var(--tblr-bg-surface-tertiary);
  --dialog-summary-bg: var(--tblr-bg-surface-dark);
  --dialog-summary-ink: var(--tblr-light);
  --dialog-summary-muted: var(--tblr-gray-300);
  --dialog-accent: var(--tblr-primary);
  --dialog-accent-hover: var(--brand-dark);
  --dialog-accent-ink: var(--tblr-primary-fg);
  --dialog-border-width: 1px;
  --dialog-border-color: var(--tblr-border-color);
  --content-header-bg: var(--tblr-bg-surface);
  --card-header-bg: var(--content-header-bg);
  --dialog-header-bg: var(--content-header-bg);
  --shell-topbar-bg: var(--tblr-bg-surface);
  --shell-nav-bg: var(--tblr-bg-surface);
  --shell-subnav-bg: var(--tblr-bg-surface);
  --shell-workspace-bg: var(--tblr-body-bg);
  --shell-on-accent: var(--tblr-primary-fg);
  --shell-tooltip-bg: var(--tblr-bg-surface-inverted);
  --shell-tooltip-text: var(--tblr-bg-surface);
  --shell-nav-text: var(--tblr-body-color);
  --shell-nav-muted: var(--tblr-secondary);
  --shell-nav-hover: var(--tblr-bg-surface-secondary);
  --shell-nav-active-bg: var(--tblr-primary-lt);
  --shell-nav-active-text: var(--tblr-primary-text-emphasis);
  --shell-nav-accent: var(--tblr-primary);
  --shell-nav-accent-strong: var(--brand-dark);
  --shell-region-border: var(--tblr-border-color);
  --shell-divider: var(--tblr-secondary);
  --shell-divider-subtle: var(--tblr-border-color);
  --shell-region-gap: 8px;
  --shell-bg: var(--tblr-body-bg);
  --danger: var(--tblr-danger);
  --danger-bg: var(--tblr-danger-bg-subtle);
  --danger-border: var(--tblr-danger-border-subtle);
  --auf-danger: var(--tblr-danger-text-emphasis);
  --warn: var(--tblr-warning);
  --warn-bg: var(--tblr-warning-bg-subtle);
  --warn-border: var(--tblr-warning-border-subtle);
  --auf-warn: var(--tblr-warning-text-emphasis);
  --ok: var(--tblr-success);
  --ok-bg: var(--tblr-success-bg-subtle);
  --ok-border: var(--tblr-success-border-subtle);
  --auf-ok: var(--tblr-success-text-emphasis);
  --info: var(--tblr-info);
  --info-bg: var(--tblr-info-bg-subtle);
  --info-border: var(--tblr-info-border-subtle);
  --auf-info: var(--tblr-info-text-emphasis);
  --purple: var(--tblr-purple);
  --purple-bg: var(--tblr-purple-lt);
  --purple-border: var(--tblr-purple-200);
  --teal: var(--tblr-teal);
  --teal-bg: var(--tblr-teal-lt);
  --teal-border: var(--tblr-teal-200);
  --font: 'Geist', system-ui, sans-serif;
  --text-xs: 10.5px;
  --text-sm: 12px;
  --text-base: 13.5px;
  --text-md: 14.5px;
  --text-lg: 16px;
  --text-xl: 22px;
  --text-2xl: 28px;
  --fw-body: 400;
  --fw-ui: 500;
  --fw-heading: 700;
  --type-caption-size: var(--text-xs);
  --type-label-size: var(--text-sm);
  --type-body-size: var(--text-base);
  --type-list-title-size: 13px;
  --type-card-title-size: var(--text-lg);
  --type-page-title-size: var(--text-xl);
  --type-kpi-size: var(--text-2xl);
  --type-ui-weight: 600;
  --type-title-weight: 700;
  --type-kpi-weight: 800;
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 20px;
  --sp-6: 24px;
  --sp-8: 32px;
  --sp-10: 40px;
  --card-top-border-width: 2px;
  --feld-bg: var(--tblr-bg-forms);
  --feld-bg-aus: var(--tblr-bg-forms-disabled);
  --feld-line: var(--tblr-border-color);
  --feld-line-an: var(--brand);
  --feld-ring: var(--tblr-focus-ring-color);
  --feld-fokus: 0 0 0 3px var(--feld-ring);
  --feld-platz: var(--tblr-secondary);
  --feld-r: var(--r-sm);
  --feld-pad: 8px 12px;
  --feld-h: 40px;
  --modal-pad: 14px;
  --modal-gap: 10px;
  --r-xs: var(--tblr-border-radius-sm);
  --r-sm: var(--tblr-border-radius);
  --r: var(--tblr-border-radius-lg);
  --r-lg: var(--tblr-border-radius-lg);
  --r-xl: var(--tblr-border-radius-xl);
  --r-full: var(--tblr-border-radius-pill);
  --shadow: var(--tblr-shadow);
  --shadow-md: var(--tblr-shadow-md);
  --shadow-lg: var(--tblr-shadow-lg);
  --z-topbar: 100;
  --z-dropdown: 200;
  --z-modal: 400;
  --z-toast: 900;
  --z-tooltip: 9999;
  --text: var(--ink);
  --line: var(--border);
  --fit: var(--brand);
  --soft: var(--brand-soft);
  --green: var(--brand);
  --green-dark: var(--brand-dark);
  --green2: var(--brand-acc);
  --radius: var(--r-lg);
  --c-red: var(--danger);
  --c-orange: var(--warn);
  --c-blue: var(--info);
  --c-purple: var(--purple);
  --c-teal: var(--teal);
  --fit-dark: var(--brand-dark);
  --fit-light: var(--brand-soft);
  --fit-mid: var(--brand-acc);
  --fit-soft: var(--brand-soft);
  --fit-line: var(--brand-line);
  --fit-border: var(--brand-line);
  --fit-glow: color-mix(in srgb, var(--brand) 25%, transparent);
  --fit2: var(--brand-acc);
  --brand2: var(--brand-acc);
  --brand-2: var(--brand-acc);
  --primary: var(--brand);
  --green-soft: var(--brand-soft);
  --green-light: var(--brand-soft);
  --green-acc: var(--brand-acc);
  --green-line: var(--brand-line);
  --weich: var(--brand-soft);
  --shadow-strong: var(--shadow-lg);
  --shadow-sm: var(--shadow);
  --schatten: var(--shadow);
  --schatten-stark: var(--shadow-lg);
  --line2: var(--border);
  --line3: var(--border);
  --line-s: var(--border);
  --line-strong: var(--border-strong);
  --linie: var(--border);
  --surface2: var(--bg);
  --card-hover: var(--tblr-bg-surface-secondary);
  --ink3: var(--muted);
  --muted2: var(--muted);
  --tinte: var(--ink);
  --gedaempft: var(--muted);
  --grey: var(--muted);
  --grey-bg: var(--tblr-secondary-lt);
  --grey-line: var(--border);
  --gd: var(--muted);
  --radius-sm: var(--r-sm);
  --header-h: 46px;
  --mono: var(--font);
  --sc: var(--shadow);
  --cal: var(--brand);
  --red: var(--danger);
  --red-bg: var(--danger-bg);
  --blue: var(--info);
  --blue-bg: var(--info-bg);
  --blue-soft: var(--info-bg);
  --orange: var(--warn);
  --orange-bg: var(--warn-bg);
  --warn-mid: var(--warn);
  --danger-soft: var(--danger-bg);
  --danger-line: var(--danger-border);
  --info-line: var(--info-border);
  --ok-line: var(--ok-border);
  --ok-hg: var(--ok-bg);
  --warn-line: var(--warn-border);
  --bad: var(--danger);
  --bad-bg: var(--danger-bg);
  --bad-line: var(--danger-border);
  --gray-500: var(--tblr-secondary);
  --ins-bg: var(--tblr-success-bg-subtle);
  --ins-bd: var(--tblr-success-border-subtle);
  --ins-tx: var(--tblr-success-text-emphasis);
  --del-bg: var(--tblr-danger-bg-subtle);
  --del-bd: var(--tblr-danger-border-subtle);
  --del-tx: var(--tblr-danger-text-emphasis);
  --online: var(--tblr-success);
  --online-bg: var(--tblr-success-lt);
  --absent: var(--tblr-secondary);
  --absent-bg: var(--tblr-secondary-lt);
  --auf-brand: var(--tblr-primary-fg);
  --auf-brand-acc: var(--tblr-primary-text-emphasis);
  --viz-1: var(--tblr-blue);
  --viz-2: var(--tblr-orange);
  --viz-3: var(--tblr-teal);
  --viz-4: var(--tblr-yellow);
  --viz-5: var(--tblr-pink);
  --viz-6: var(--tblr-green);
  --viz-7: var(--tblr-purple);
  --viz-8: var(--tblr-red);
  --viz-seq-1: color-mix(in srgb, var(--tblr-blue) 12%, var(--tblr-bg-surface));
  --viz-seq-2: color-mix(in srgb, var(--tblr-blue) 24%, var(--tblr-bg-surface));
  --viz-seq-3: color-mix(in srgb, var(--tblr-blue) 36%, var(--tblr-bg-surface));
  --viz-seq-4: color-mix(in srgb, var(--tblr-blue) 48%, var(--tblr-bg-surface));
  --viz-seq-5: color-mix(in srgb, var(--tblr-blue) 60%, var(--tblr-bg-surface));
  --viz-seq-6: color-mix(in srgb, var(--tblr-blue) 72%, var(--tblr-bg-surface));
  --viz-seq-7: color-mix(in srgb, var(--tblr-blue) 84%, var(--tblr-bg-surface));
  --viz-skala-1: var(--tblr-indigo);
  --viz-skala-2: var(--tblr-azure);
  --viz-skala-3: var(--tblr-green);
  --viz-skala-4: var(--tblr-yellow);
  --viz-skala-5: var(--tblr-red);
  --viz-gut: var(--tblr-success);
  --viz-warnung: var(--tblr-warning);
  --viz-ernst: var(--tblr-orange);
  --viz-kritisch: var(--tblr-danger);
  --viz-gut-text: var(--tblr-success-text-emphasis);
  --viz-warnung-text: var(--tblr-warning-text-emphasis);
  --viz-kritisch-text: var(--tblr-danger-text-emphasis);
  --viz-1-text: var(--tblr-primary-text-emphasis);
  --viz-grund: var(--tblr-bg-surface);
  --viz-raster: var(--tblr-border-color);
  --viz-achse: var(--tblr-secondary);
  --viz-schrift: var(--tblr-body-color);
  --brand-rgb: var(--tblr-primary-rgb);
  --white: var(--tblr-bg-surface);
  --hover: var(--tblr-bg-surface-secondary);
  --text2: var(--tblr-body-color);
  --text3: var(--tblr-secondary);
  --gray-600: var(--tblr-secondary);
  --gray-700: var(--tblr-body-color);
  --gray-800: var(--ink);
  --red-light: var(--tblr-danger-bg-subtle);
  --amber-light: var(--tblr-warning-bg-subtle);
}

@media (max-width: 640px) {
  :root {
    --modal-pad: 12px;
    --modal-gap: 9px;
  }
}
