/* ═══════════════════════════════════════════════════════════════════════════
   Gemeinsame Basis der Stile „Nemesis Logistik“, „J.A.R.V.I.S.“, „LCARS“, „Terraner“ (StarCraft II) und „Pip-Boy“ (Fallout 3).
   Wirkt nur mit <html data-app-stil="logistik|jarvis|lcars|terraner|fallout">. Jede Stil-Datei setzt nur die --st-* Variablen
   (Farben, Schriften, Rundungen) und ihre Besonderheiten; hier werden daraus Ribbon, Tab-Leiste, Dialoge,
   Tabellen, Knöpfe, Eingaben und Meldungen gebaut. Arbeitsflächen bleiben ruhig und gut lesbar.
   ═══════════════════════════════════════════════════════════════════════════ */

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) {
    /* Bootstrap */
    --bs-body-bg: var(--st-bg);
    --bs-body-color: var(--st-text);
    --bs-border-color: var(--st-rahmen);
    --bs-tertiary-bg: var(--st-flaeche-2);
    --bs-secondary-color: var(--st-text-2);
    --bs-primary: var(--st-akzent);
    --bs-link-color: var(--st-akzent);
    --bs-link-hover-color: var(--st-akzent-2);

    /* Radzen */
    --rz-primary: var(--st-akzent);
    --rz-primary-light: var(--st-akzent-2);
    --rz-primary-lighter: color-mix(in srgb, var(--st-akzent) 20%, transparent);
    --rz-primary-dark: color-mix(in srgb, var(--st-akzent) 80%, #000);
    --rz-primary-darker: color-mix(in srgb, var(--st-akzent) 65%, #000);
    --rz-on-primary: var(--st-auf-akzent);
    --rz-secondary: var(--st-akzent-2);
    --rz-success: var(--st-erfolg);
    --rz-danger: var(--st-gefahr);
    --rz-warning: var(--st-warnung);
    --rz-info: var(--st-info);
    --rz-base-background-color: var(--st-bg);
    --rz-body-background-color: var(--st-bg);
    --rz-text-color: var(--st-text);
    --rz-text-secondary-color: var(--st-text-2);
    --rz-text-title-color: var(--st-text);
    --rz-border-color: var(--st-rahmen);
    --rz-input-background-color: var(--st-eingabe, var(--st-flaeche));
    --rz-card-background-color: var(--st-flaeche);
    --rz-panel-background-color: var(--st-flaeche);
    --rz-grid-background-color: var(--st-flaeche);
    --rz-grid-stripe-background-color: var(--st-zebra);
    --rz-dialog-title-background-color: var(--st-kopf);
    --rz-dialog-title-color: var(--st-kopf-akzent);
    --rz-text-font-family: var(--st-font-text);
    --rz-border-radius: var(--st-radius);

    /* Radzen-Grautöne aus dem Stil ableiten (Fläche → Text): viele Seiten (Notizen, Tagesplan, Suche …) nutzen --rz-base-*;
       sonst kämen die hellen Grautöne des Radzen-Standardthemas durch und Text wäre auf dunklen Stilen kaum lesbar. */
    --rz-base-50: color-mix(in srgb, var(--st-text) 3%, var(--st-flaeche-2));
    --rz-base-100: color-mix(in srgb, var(--st-text) 6%, var(--st-flaeche-2));
    --rz-base-200: color-mix(in srgb, var(--st-text) 10%, var(--st-flaeche-2));
    --rz-base-300: color-mix(in srgb, var(--st-text) 16%, var(--st-flaeche-2));
    --rz-base-400: color-mix(in srgb, var(--st-text) 28%, var(--st-flaeche-2));
    --rz-base-500: color-mix(in srgb, var(--st-text) 42%, var(--st-flaeche-2));
    --rz-base-600: color-mix(in srgb, var(--st-text) 56%, var(--st-flaeche-2));
    --rz-base-700: color-mix(in srgb, var(--st-text) 70%, var(--st-flaeche-2));
    --rz-base-800: color-mix(in srgb, var(--st-text) 82%, var(--st-flaeche-2));
    --rz-base-900: color-mix(in srgb, var(--st-text) 92%, var(--st-flaeche-2));

    /* Radzens Dunkel-Themes nehmen für Flächen die OBEREN Grautöne (--rz-base-600…900 = dort dunkel). Bei unserer Skala sind die fast
       textfarben → heller Grund, heller Text (z. B. inaktive Reiter). Darum alle diese Flächen direkt aus dem Stil. */
    --st-hover: color-mix(in srgb, var(--st-akzent) 14%, var(--st-flaeche-2));
    --st-gewaehlt: color-mix(in srgb, var(--st-akzent) 28%, var(--st-flaeche-2));
    --rz-tabs-tab-background-color: var(--st-flaeche-2);
    --rz-tabs-tab-color: var(--st-text-2);
    --rz-tabs-tab-hover-background-color: var(--st-hover);
    --rz-tabs-tab-hover-color: var(--st-text);
    --rz-tabs-tab-focus-background-color: var(--st-hover);
    --rz-tabs-tab-focus-color: var(--st-text);
    --rz-tabs-tab-selected-background-color: var(--st-bg);
    --rz-tabs-tab-selected-color: var(--st-text);
    --rz-tabs-tab-selected-top-border-color: var(--st-akzent);
    --rz-tabs-background-color: var(--st-bg);
    --rz-alert-background-color: var(--st-flaeche-2);
    --rz-card-flat-background-color: var(--st-flaeche-2);
    --rz-chip-background-color: var(--st-flaeche-2);
    --rz-datepicker-header-background-color: var(--st-flaeche-2);
    --rz-datepicker-calendar-hover-background-color: var(--st-hover);
    --rz-dialog-background-color: var(--st-flaeche);
    --rz-dropdown-open-background-color: var(--st-eingabe, var(--st-flaeche));
    --rz-editor-separator-background-color: var(--st-rahmen);
    --rz-fieldset-toggle-background-color: var(--st-flaeche-2);
    --rz-form-field-filled-background-color: var(--st-eingabe, var(--st-flaeche-2));
    --rz-form-field-filled-hover-background-color: var(--st-hover);
    --rz-grid-detail-template-background-color: var(--st-flaeche-2);
    --rz-grid-filter-background-color: var(--st-flaeche);
    --rz-grid-filter-buttons-background-color: var(--st-flaeche-2);
    --rz-grid-apply-filter-button-background-color: var(--st-flaeche-2);
    --rz-grid-clear-filter-button-background-color: var(--st-flaeche-2);
    --rz-grid-foot-background-color: var(--st-flaeche-2);
    --rz-grid-frozen-cell-background-color: var(--st-flaeche);
    --rz-grid-header-background-color: var(--st-tabellenkopf, var(--st-flaeche-2));
    --rz-grid-header-sorted-background-color: var(--st-tabellenkopf, var(--st-flaeche-2));
    --rz-grid-group-header-item-background-color: var(--st-flaeche-2);
    --rz-grid-hover-background-color: var(--st-hover);
    --rz-grid-loading-indicator-background-color: var(--st-flaeche-2);
    --rz-input-disabled-background-color: var(--st-flaeche-2);
    --rz-numeric-button-disabled-background-color: var(--st-flaeche-2);
    --rz-pager-back-button-background-color: var(--st-flaeche-2);
    --rz-pager-next-button-background-color: var(--st-flaeche-2);
    --rz-pager-numeric-button-background-color: var(--st-flaeche-2);
    --rz-pager-numeric-button-hover-background-color: var(--st-hover);
    --rz-pager-numeric-button-selected-background-color: var(--st-gewaehlt);
    --rz-panel-menu-item-background-color: var(--st-flaeche);
    --rz-panel-menu-item-2nd-level-background-color: var(--st-flaeche-2);
    --rz-panel-menu-item-active-background-color: var(--st-gewaehlt);
    --rz-panel-menu-item-hover-background-color: var(--st-hover);
    --rz-panel-menu-item-2nd-level-hover-background-color: var(--st-hover);
    --rz-panel-menu-item-3rd-level-hover-background-color: var(--st-hover);
    --rz-panel-toggle-icon-background-color: transparent;
    --rz-progressbar-background-color: var(--st-flaeche-2);
    --rz-scheduler-header-background-color: var(--st-flaeche-2);
    --rz-scheduler-other-month-background-color: var(--st-bg);
    --rz-scheduler-toolbar-background-color: var(--st-flaeche);
    --rz-scheduler-weekend-background-color: var(--st-flaeche-2);
    --rz-skeleton-background-color: var(--st-flaeche-2);
    --rz-slider-background-color: var(--st-rahmen);
    --rz-slider-disabled-handle-background-color: var(--st-flaeche-2);
    --rz-slider-disabled-range-background-color: var(--st-flaeche-2);
    --rz-splitter-bar-background-color: var(--st-rahmen);
    --rz-steps-number-background-color: var(--st-flaeche-2);
    --rz-switch-background-color: var(--st-rahmen);
    --rz-timeline-point-background-color: var(--st-rahmen);
    --rz-timepicker-background-color: var(--st-flaeche);
    --rz-timepicker-button-background-color: var(--st-flaeche-2);
    --rz-timespanpicker-panel-background-color: var(--st-flaeche);
    --rz-tree-node-hover-background-color: var(--st-hover);
    --rz-overlay-background-color: var(--st-flaeche);
    --rz-upload-button-bar-background-color: var(--st-flaeche-2);
    --rz-upload-choose-background-color: var(--st-flaeche-2);
    --rz-upload-cancel-background-color: var(--st-flaeche-2);
    --rz-upload-files-remove-background-color: var(--st-flaeche-2);
    --rz-login-register-background-color: var(--st-flaeche-2);

    /* Diagramme (window.appChartFarben) */
    --app-chart-text: var(--st-text);
    --app-chart-linie: var(--st-rahmen);
    --app-chart-schrift: var(--st-font-text);
}

/* ── Grundflächen und Schrift ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(body, .rz-body.app-body, .rz-layout) {
    background-color: var(--st-bg);
    color: var(--st-text);
    font-family: var(--st-font-text);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(h1, h2, h3, h4, h5, .rz-text-h3, .rz-text-h4, .rz-text-h5, .rz-text-h6, .dashboard-leiste-titel) {
    font-family: var(--st-font-display);
    letter-spacing: var(--st-titel-abstand, .02em);
    text-transform: var(--st-titel-schrift, none);
    color: var(--st-titel, var(--st-akzent));
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-grid-table td, .rz-numeric-input) {
    font-variant-numeric: tabular-nums;
}

/* ── Ribbon ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-header {
    background-color: var(--st-kopf);
    border-bottom: 3px solid var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .tabs-holder {
    background-color: var(--st-kopf);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .tabs-holder li {
    background-color: var(--st-kopf);
    color: var(--st-kopf-text-2);
    border-color: transparent;
    font-family: var(--st-font-display);
    letter-spacing: .08em;
    text-transform: var(--st-reiter-schrift, none);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .tabs-holder li a { color: inherit; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .tabs-holder li:hover { color: var(--st-kopf-text); }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .tabs-holder .active {
    background-color: var(--st-kopf-2);
    color: var(--st-kopf-akzent);
    border-color: var(--st-kopf-linie);
    border-bottom-color: transparent;
    box-shadow: inset 0 3px 0 var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .content-holder {
    background-color: var(--st-kopf-2);
    color: var(--st-kopf-text);
    border-color: var(--st-kopf-linie);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .content-holder .group {
    background-color: transparent;
    border-radius: var(--st-radius);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .content-holder :is(.group + .group, .section) {
    border-color: var(--st-kopf-linie);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .content-holder .group .group-divider {
    background-color: var(--st-kopf-linie);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .caption { color: var(--st-kopf-text); }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-menu .content-holder .group .title {
    font-family: var(--st-font-display);
    font-size: .62rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--st-kopf-text-2);
    border-color: transparent;
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.ribbon-button, .ribbon-tool-button, .ribbon-icon-button, .ribbon-button-dropdown) {
    background-color: transparent !important;
    color: var(--st-kopf-text);
    border-color: transparent;
    border-radius: var(--st-radius);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.ribbon-button, .ribbon-tool-button, .ribbon-icon-button):hover:enabled {
    background-color: color-mix(in srgb, var(--st-kopf-akzent) 16%, transparent) !important;
    border-color: var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.ribbon-button, .ribbon-icon-button, .ribbon-tool-button) img {
    filter: var(--st-icon-filter, none);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.app-kopf-info, .app-kopf-info a) { color: var(--st-kopf-text-2); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .theme-toggle .rz-button { color: var(--st-kopf-akzent) !important; }

/* Horke-Schnelleingabe im Ribbon */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .ribbon-horke-eingabe {
    background: color-mix(in srgb, var(--st-kopf) 60%, #000);
    color: var(--st-kopf-text);
    border: 1px solid var(--st-kopf-linie);
    border-radius: var(--st-radius);
}

/* ── Tab-Leiste unten ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-tab-leiste {
    background: var(--st-kopf);
    border-top: 2px solid var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-tab {
    color: var(--st-kopf-text);
    border-color: var(--st-kopf-linie);
    background: transparent;
    font-family: var(--st-font-text);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-tab:hover { background: color-mix(in srgb, var(--st-kopf-akzent) 12%, transparent); }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-tab.aktiv {
    color: var(--st-kopf-akzent);
    border-color: var(--st-kopf-akzent);
    background: var(--st-kopf-2);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.app-tab-x, .app-tab-alle) { color: var(--st-kopf-text-2); }

/* ── Dialoge ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-dialog-mask {
    background-color: var(--st-maske, rgba(0, 0, 0, .6)) !important;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-dialog, .rz-dialog-side) {
    background-color: var(--st-flaeche);
    color: var(--st-text);
    border: 1px solid var(--st-kopf-linie);
    border-radius: var(--st-radius-gross, 10px);
    box-shadow: var(--st-dialog-schatten, 0 18px 48px rgba(0, 0, 0, .45));
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-dialog-titlebar, .rz-dialog-side-titlebar) {
    background-color: var(--st-kopf);
    color: var(--st-kopf-akzent);
    border-bottom: 2px solid var(--st-kopf-akzent);
    border-radius: var(--st-radius-gross, 10px) var(--st-radius-gross, 10px) 0 0;
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-dialog:has(.rz-dialog-content > .app-dialog-menue) .rz-dialog-titlebar { border-bottom: none; }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-dialog-title, .rz-dialog-side-title) {
    font-family: var(--st-font-display);
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: var(--st-titel-schrift, none);
    color: var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-dialog-titlebar-close {
    color: var(--st-kopf-text-2) !important;
    background: transparent !important;
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-dialog-titlebar-close:hover { color: var(--st-kopf-akzent) !important; }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-dialog-content, .rz-dialog-side-content) {
    background-color: var(--st-flaeche);
    color: var(--st-text);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-dialog-menue {
    background: var(--st-kopf);
    color: var(--st-kopf-text);
    border-bottom: 2px solid var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-dialog-menue-punkt {
    font-family: var(--st-font-text);
    font-weight: 500;
    text-transform: var(--st-knopf-schrift, none);
    letter-spacing: .02em;
    border: 1px solid transparent;
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-dialog-menue-punkt :is(.rzi, .rz-icon) { color: var(--st-kopf-akzent); }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-dialog-menue-punkt:is(:hover:not(:disabled), :focus-visible) {
    background: color-mix(in srgb, var(--st-kopf-akzent) 18%, transparent);
    border-color: color-mix(in srgb, var(--st-kopf-akzent) 55%, transparent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .app-dialog-menue-punkt.hervorgehoben { color: var(--st-kopf-akzent); }

/* ── Kacheln, Fieldsets ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-card {
    background-color: var(--st-flaeche);
    border: 1px solid var(--st-rahmen);
    border-radius: var(--st-radius-gross, 10px);
    box-shadow: var(--st-schatten, none);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-fieldset {
    border-color: var(--st-rahmen);
    border-radius: var(--st-radius-gross, 10px);
    background-color: var(--st-flaeche);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-fieldset-legend, .rz-fieldset legend) {
    font-family: var(--st-font-display);
    font-size: .8rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--st-akzent);
}

/* ── Tabellen ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-grid-table thead th,
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-grid-table thead th .rz-column-title,
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .table thead th {
    background-color: var(--st-tabellenkopf, var(--st-kopf));
    color: var(--st-tabellenkopf-text, var(--st-kopf-text));
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-grid-table thead th, .table thead th) {
    border-bottom: 2px solid var(--st-kopf-akzent);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-grid-table thead th .rz-column-title-content {
    font-family: var(--st-font-display);
    font-size: .72rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-grid-table thead th :is(.rz-sortable-column-icon, .rzi) { color: var(--st-kopf-akzent); }

/* Hintergrund an der Zeile (RowRender-Markierungen bleiben sichtbar) */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-data-row { background-color: var(--st-flaeche); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-data-row > td {
    background-color: transparent;
    border-color: color-mix(in srgb, var(--st-rahmen) 60%, transparent);
}
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-grid-table-striped .rz-data-row:nth-child(even) { background-color: var(--st-zebra); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-data-row:hover > td { background-color: color-mix(in srgb, var(--st-akzent) 12%, var(--st-flaeche)) !important; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-state-highlight > td { background-color: color-mix(in srgb, var(--st-akzent) 24%, var(--st-flaeche)) !important; }

/* ── Knöpfe: gefüllt in den Akzentfarben ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-primary, .btn-primary) { --stk-bg: var(--st-akzent); --stk-text: var(--st-auf-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-secondary, .btn-secondary) { --stk-bg: var(--st-akzent-2); --stk-text: var(--st-auf-akzent-2, #fff); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-success, .btn-success) { --stk-bg: var(--st-erfolg); --stk-text: var(--st-auf-status, #fff); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-danger, .btn-danger) { --stk-bg: var(--st-gefahr); --stk-text: var(--st-auf-status, #fff); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-warning, .btn-warning) { --stk-bg: var(--st-warnung); --stk-text: var(--st-auf-warnung, #1a1a1a); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-info, .btn-info) { --stk-bg: var(--st-info); --stk-text: var(--st-auf-status, #fff); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-dark, .btn-dark) { --stk-bg: var(--st-kopf); --stk-text: var(--st-kopf-text); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-light, .rz-button.rz-base, .btn-light, .btn-default, .btn-outline-dark) { --stk-bg: var(--st-knopf-hell, var(--st-flaeche-2)); --stk-text: var(--st-knopf-hell-text, var(--st-text)); }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button:is(.rz-primary, .rz-secondary, .rz-success, .rz-danger, .rz-warning, .rz-info, .rz-dark, .rz-light, .rz-base):not(.rz-variant-text):not(.rz-variant-outlined),
    .btn:is(.btn-primary, .btn-secondary, .btn-success, .btn-danger, .btn-warning, .btn-info, .btn-dark, .btn-light, .btn-default, .btn-outline-dark)) {
    color: var(--stk-text) !important;
    background: var(--stk-bg) !important;
    border: 1px solid color-mix(in srgb, var(--stk-bg) 70%, #000) !important;
    border-radius: var(--st-knopf-radius, var(--st-radius)) !important;
    font-family: var(--st-font-text);
    text-transform: var(--st-knopf-schrift, none);
    letter-spacing: var(--st-knopf-abstand, normal);
    box-shadow: var(--st-knopf-schatten, none);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button:is(.rz-primary, .rz-secondary, .rz-success, .rz-danger, .rz-warning, .rz-info, .rz-dark, .rz-light, .rz-base):not(.rz-variant-text):not(.rz-variant-outlined),
    .btn:is(.btn-primary, .btn-secondary, .btn-success, .btn-danger, .btn-warning, .btn-info, .btn-dark, .btn-light, .btn-default, .btn-outline-dark)):is(:hover, :focus-visible):not(:disabled):not(.rz-state-disabled) {
    filter: brightness(1.12);
}

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button.rz-state-disabled, .btn:disabled, .btn.disabled) { opacity: .5; }

/* ── Fokus in Eingaben ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.rz-button:focus-visible, .rz-textbox:focus, .rz-textarea:focus, .rz-numeric:focus-within, .rz-dropdown.rz-state-focused, .rz-datepicker:focus-within) {
    box-shadow: var(--st-fokus, 0 0 0 2px color-mix(in srgb, var(--st-akzent) 55%, transparent)) !important;
    border-color: var(--st-akzent) !important;
}

/* ── Meldungen ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-notification-item-wrapper {
    background: var(--st-kopf) !important;
    color: var(--st-kopf-text) !important;
    border-left: 5px solid var(--st-meldung, var(--st-akzent));
    border-radius: var(--st-radius);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .35);
}
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-notification-success { --st-meldung: var(--st-erfolg); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-notification-error { --st-meldung: var(--st-gefahr); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-notification-warn { --st-meldung: var(--st-warnung); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-notification-info { --st-meldung: var(--st-info); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-notification-item-wrapper :is(.rz-notification-item, .rz-notification-message, .rz-notification-content, .rz-notification-title, .rz-notification-summary, .rz-notification-close .rzi) {
    color: var(--st-kopf-text) !important;
    background: transparent !important;
}

/* ── Karussell, Splitter, Scrollbalken ── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-carousel-pager-button.rz-state-active { background-color: var(--st-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .rz-splitter-bar:hover { background-color: var(--st-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) * {
    scrollbar-color: color-mix(in srgb, var(--st-akzent) 55%, transparent) transparent;
}

/* ───────── Manometer als Blickfang auch in Logistik / J.A.R.V.I.S. / LCARS ─────────
   Dashboards zeigen statt der Torte das Manometer (wie im Messingwerk), ohne die Messingrohre.
   Shared/Manometer.razor bringt je Design ein eigenes Gehäuse mit (.mano-sp/.mano-lg/.mano-jv/.mano-lc). */
.manometer :is(.mano-lg, .mano-jv, .mano-lc, .mano-tr, .mano-fo) { display: none; }

html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .nur-klassisch { display: none !important; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .nur-steampunk { display: block; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .messing-rohr { display: none !important; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .manometer .mano-sp { display: none; }
html[data-app-stil="logistik"] .manometer .mano-lg,
html[data-app-stil="jarvis"] .manometer .mano-jv,
html[data-app-stil="lcars"] .manometer .mano-lc,
html[data-app-stil="terraner"] .manometer .mano-tr,
html[data-app-stil="fallout"] .manometer .mano-fo { display: inline; }

/* Gemeinsam: Zonenfarben und Schrift aus dem Stil */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .manometer {
    --mano-zone-1: var(--st-gefahr);
    --mano-zone-2: var(--st-warnung);
    --mano-zone-3: var(--st-erfolg);
}
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .manometer :is(.manometer-titel, .manometer-erreicht-text) { font-family: var(--st-font-display); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .manometer :is(.manometer-zahl, .manometer-betrag) { font-family: var(--st-font-text); }

/* ───────── Notizen (Pages/Notizen): Ordnerspalte, Auswahl, Icons, Checklisten in den Stilfarben statt fest Gelb/Hellgrau ───────── */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .nz-ordner {
    background: var(--st-flaeche-2);
    color: var(--st-text);
    border-color: var(--st-rahmen);
}
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.nz-liste, .nz-liste-kopf, .nz-editor-kopf, .nz-md-leiste) { border-color: var(--st-rahmen); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.nz-ordner-eintrag.aktiv, .nz-eintrag.aktiv) {
    background: var(--st-akzent);
    color: var(--st-auf-akzent);
}
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.nz-ordner-eintrag.aktiv, .nz-eintrag.aktiv) * { color: inherit; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.nz-ordner-eintrag .rzi, .nz-neu .rzi) { color: var(--st-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .nz-ordner-eintrag.aktiv .rzi { color: var(--st-auf-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.nz-neuer-ordner, .nz-md-knopf) { color: var(--st-text); opacity: .85; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) :is(.nz-liste-titel, .nz-spalten-titel) { font-family: var(--st-font-display); color: var(--st-titel, var(--st-akzent)); opacity: 1; }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) ul.nz-check > li.erledigt::before { background: var(--st-akzent); border-color: var(--st-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) ul.nz-check > li.erledigt::after { color: var(--st-auf-akzent); }
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .nz-suche { background: var(--st-eingabe, var(--st-flaeche)); border: 1px solid var(--st-rahmen); }

/* Projekte: Zähler im aktiven Bereich */
html:is([data-app-stil="logistik"], [data-app-stil="jarvis"], [data-app-stil="lcars"], [data-app-stil="terraner"], [data-app-stil="fallout"]) .prj-bereich.aktiv .prj-zahl { background: var(--st-auf-akzent); color: var(--st-akzent); }
