/* Kordo – wählbare Designs je Mandant (Einstellungen → Administration & Profile → Design).
   Aktiv über <html data-k-theme="…">; „standard“ hat keine eigenen Regeln.
   Die Designs ändern nur Aussehen, Abstände und Schriftbild – nie Aufbau, Reihenfolge oder Funktionen.
   Farben des Mandanten kommen weiterhin aus /branding.css:
   --k-primary, --k-primary-soft, --k-primary-ink (lesbar auf Hell), --k-primary-light (lesbar auf Dunkel). */

/* ---------- Schriften (lokal, SIL Open Font License, siehe fonts/*-OFL.txt) ---------- */
@font-face { font-family: "Kordo Fraunces"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/fraunces-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Kordo Fraunces"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/fraunces-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Kordo Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Kordo Plex Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Kordo Plex Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Kordo Plex Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Kordo Plex Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2"); }

:root { --k-font-display: "Kordo Fraunces", Georgia, Cambria, "Times New Roman", serif; --k-font-mono: "Kordo Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace; }

/* =====================================================================
   KLASSISCH – vertraut wie Büro- und Buchhaltungssoftware
   Kopfleiste in Mandantenfarbe, helle Seitenleiste, kompakte Zeilen,
   Tabellen mit Rasterlinien, Reiter statt Pillen.
   ===================================================================== */
:root[data-k-theme="klassisch"] {
  --k-bg: #eceff2; --k-border: #d3d8de; --k-muted: #5d6874;
  --k-topbar-h: 50px; --k-sidebar-w: 240px; --k-radius: .25rem;
  --bs-border-radius: .2rem; --bs-border-radius-sm: .15rem; --bs-border-radius-lg: .3rem;
  --bs-body-font-size: .9rem;
}
[data-k-theme="klassisch"] .k-topbar { background: var(--k-primary-ink); border-bottom: 0; color: #fff; box-shadow: 0 1px 0 rgba(0,0,0,.18); }
[data-k-theme="klassisch"] .k-topbar .navbar-brand,
[data-k-theme="klassisch"] .k-topbar-btn,
[data-k-theme="klassisch"] .k-user-btn { color: #fff; }
[data-k-theme="klassisch"] .k-brand-name { font-size: 1rem; }
[data-k-theme="klassisch"] .k-user-role { color: rgba(255,255,255,.78); }
[data-k-theme="klassisch"] .k-user-btn { border-radius: .2rem; }
[data-k-theme="klassisch"] .k-user-btn:hover,
[data-k-theme="klassisch"] .k-user-btn[aria-expanded="true"] { background: rgba(255,255,255,.14); }
[data-k-theme="klassisch"] .k-avatar { background: rgba(255,255,255,.2); color: #fff; border-radius: .2rem; width: 30px; height: 30px; }
[data-k-theme="klassisch"] .k-logo-fallback { background: #fff; color: var(--k-primary-ink); border-radius: .2rem; width: 30px; height: 30px; }
[data-k-theme="klassisch"] .k-topbar .k-logo { background: #fff; border-radius: .2rem; padding: 2px 4px; }

[data-k-theme="klassisch"] .k-sidebar,
[data-k-theme="klassisch"] .k-sidebar-mobile { background: #f7f8f9; }
[data-k-theme="klassisch"] .k-sidebar { border-right: 1px solid var(--k-border); padding: .25rem 0 1rem; }
[data-k-theme="klassisch"] .k-nav-group { padding: .8rem 1rem .3rem; font-size: .7rem; color: #4b5560; border-radius: 0; }
[data-k-theme="klassisch"] .k-sidebar .nav-link,
[data-k-theme="klassisch"] .k-sidebar-mobile .nav-link { border-radius: 0; padding: .4rem 1rem .4rem 1.15rem; color: #24303a; font-weight: 400; }
[data-k-theme="klassisch"] .k-sidebar .nav-link:hover:not(.active),
[data-k-theme="klassisch"] .k-sidebar-mobile .nav-link:hover:not(.active) { background: #e6eaee; }
[data-k-theme="klassisch"] .k-sidebar .nav-link.active,
[data-k-theme="klassisch"] .k-sidebar-mobile .nav-link.active { background: var(--k-primary-soft); color: var(--bs-primary-text-emphasis); font-weight: 600; box-shadow: inset 3px 0 0 var(--k-primary); }

[data-k-theme="klassisch"] .k-main { padding: 1rem 1.5rem .75rem; }
[data-k-theme="klassisch"] .k-page-head { border-bottom: 1px solid var(--k-border); padding-bottom: .6rem; margin-bottom: 1rem; align-items: center; }
[data-k-theme="klassisch"] .k-page-title { font-size: 1.2rem; font-weight: 600; letter-spacing: 0; }
[data-k-theme="klassisch"] .lead { font-size: 1rem; }

[data-k-theme="klassisch"] .card { border-radius: .25rem; box-shadow: 0 1px 1px rgba(0,0,0,.04); }
[data-k-theme="klassisch"] .card-header { background: #f3f5f7; padding: .5rem .85rem; font-size: .85rem; }
[data-k-theme="klassisch"] .card-footer { background: #f8f9fa; }
[data-k-theme="klassisch"] .list-group-item { padding: .5rem .85rem; }
[data-k-theme="klassisch"] .k-kpi .card-body { padding: .75rem .85rem; }
[data-k-theme="klassisch"] .k-kpi-label { text-transform: uppercase; letter-spacing: .05em; font-size: .7rem; font-weight: 600; }
[data-k-theme="klassisch"] .k-kpi-value { font-size: 1.4rem; font-weight: 600; }
[data-k-theme="klassisch"] .k-kpi-icon { display: grid; place-items: center; width: 1.9rem; height: 1.9rem; border-radius: .2rem; background: var(--k-primary-soft); color: var(--bs-primary-text-emphasis); font-size: 1rem; opacity: 1; }

[data-k-theme="klassisch"] .btn { --bs-btn-padding-y: .3rem; --bs-btn-padding-x: .75rem; --bs-btn-font-size: .875rem; }
[data-k-theme="klassisch"] .btn-lg { --bs-btn-padding-y: .45rem; --bs-btn-padding-x: 1rem; --bs-btn-font-size: 1rem; }
[data-k-theme="klassisch"] .badge { border-radius: .15rem; font-weight: 600; }
[data-k-theme="klassisch"] .form-control, [data-k-theme="klassisch"] .form-select { font-size: .875rem; padding-top: .3rem; padding-bottom: .3rem; }

[data-k-theme="klassisch"] .k-table thead th,
[data-k-theme="klassisch"] .table > thead th { background: #e9edf1; color: #2b3640; text-transform: none; letter-spacing: 0; font-size: .8rem; }
[data-k-theme="klassisch"] .k-table th, [data-k-theme="klassisch"] .k-table td { padding: .42rem .7rem; }
[data-k-theme="klassisch"] .k-table > :not(caption) > * > * { border: 1px solid #e1e5e9; }
[data-k-theme="klassisch"] .k-table > tbody > tr:nth-child(even) > td { --bs-table-bg: #f8f9fa; }
[data-k-theme="klassisch"] tfoot.k-sum td, [data-k-theme="klassisch"] tr.k-sum td { background: #e9edf1; }
[data-k-theme="klassisch"] .card > .k-pager, [data-k-theme="klassisch"] .k-pager.is-in-card, [data-k-theme="klassisch"] .card > .k-table-toolbar { background: #f3f5f7; }

[data-k-theme="klassisch"] .k-main .nav-pills { border-bottom: 1px solid var(--k-border); gap: 0 !important; }
[data-k-theme="klassisch"] .k-main .nav-pills .nav-link { border-radius: 0; color: #2b3640; background: transparent; border-bottom: 2px solid transparent; margin-bottom: -1px; padding: .45rem .9rem; }
[data-k-theme="klassisch"] .k-main .nav-pills .nav-link:hover { background: #e6eaee; }
[data-k-theme="klassisch"] .k-main .nav-pills .nav-link.active { background: transparent; color: var(--k-primary-ink); border-bottom-color: var(--k-primary); font-weight: 600; }
[data-k-theme="klassisch"] .k-footer { border-top: 1px solid var(--k-border); padding-top: .6rem; margin-top: 2rem; }

/* =====================================================================
   SCHWEBEND – weich und ruhig wie eine Tablet-App
   Kopfleiste und Menü schweben über einem leicht in der Mandantenfarbe
   getönten Grund; runde Formen, weiche Schatten, keine Rahmen.
   ===================================================================== */
:root[data-k-theme="schwebend"] {
  --k-bg: color-mix(in srgb, var(--k-primary) 8%, #f3f4f6);
  --k-border: #eceef1; --k-muted: #6b7280;
  --k-topbar-h: 62px; --k-sidebar-w: 252px; --k-radius: 1.25rem; --k-gap: 14px;
  --k-shadow: 0 1px 2px rgba(16,24,40,.04), 0 12px 32px -10px rgba(16,24,40,.14);
  --bs-border-radius: .75rem; --bs-border-radius-sm: .6rem; --bs-border-radius-lg: 1rem;
}
[data-k-theme="schwebend"] .k-topbar { margin: var(--k-gap) var(--k-gap) 0; top: var(--k-gap); border: 0; border-radius: 1.1rem; background: rgba(255,255,255,.9); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: var(--k-shadow); padding: 0 .4rem; }
[data-k-theme="schwebend"] .k-logo-fallback { border-radius: .8rem; }
[data-k-theme="schwebend"] .k-user-btn:hover,
[data-k-theme="schwebend"] .k-user-btn[aria-expanded="true"] { background: var(--k-primary-soft); }
[data-k-theme="schwebend"] .k-shell { gap: var(--k-gap); padding: var(--k-gap); min-height: calc(100vh - var(--k-topbar-h) - var(--k-gap)); }
[data-k-theme="schwebend"] .k-sidebar { border: 0; border-radius: var(--k-radius); box-shadow: var(--k-shadow); top: calc(var(--k-topbar-h) + 2 * var(--k-gap)); height: calc(100vh - var(--k-topbar-h) - 3 * var(--k-gap)); padding: 1rem .7rem; }
[data-k-theme="schwebend"] .k-nav-group { text-transform: none; letter-spacing: 0; font-size: .8rem; color: #8a929c; border-radius: .6rem; }
[data-k-theme="schwebend"] .k-sidebar .nav-link,
[data-k-theme="schwebend"] .k-sidebar-mobile .nav-link { border-radius: .85rem; padding: .55rem .8rem; color: #374151; }
[data-k-theme="schwebend"] .k-sidebar .nav-link:hover:not(.active),
[data-k-theme="schwebend"] .k-sidebar-mobile .nav-link:hover:not(.active) { background: var(--k-primary-soft); }
[data-k-theme="schwebend"] .k-sidebar .nav-link.active,
[data-k-theme="schwebend"] .k-sidebar-mobile .nav-link.active { background: var(--k-primary); color: var(--k-primary-contrast); box-shadow: 0 8px 18px -8px rgba(var(--bs-primary-rgb), .7); }

[data-k-theme="schwebend"] .k-main { padding: .6rem .75rem 0; }
[data-k-theme="schwebend"] .k-page-title { font-size: 1.75rem; font-weight: 700; letter-spacing: -.025em; }

[data-k-theme="schwebend"] .card { border: 0; box-shadow: var(--k-shadow); border-radius: var(--k-radius); }
[data-k-theme="schwebend"] .card-header { background: transparent; border-bottom: 0; padding: 1.1rem 1.25rem .4rem; font-size: 1.02rem; }
[data-k-theme="schwebend"] .card-footer { background: transparent; border-top-color: #f0f1f3; padding: .85rem 1.25rem; }
[data-k-theme="schwebend"] .list-group-item { border-color: #f0f1f3; padding: .8rem 1.25rem; }
[data-k-theme="schwebend"] .k-kpi .card-body { padding: 1.2rem 1.25rem; }
[data-k-theme="schwebend"] .k-kpi-icon { display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border-radius: .85rem; background: var(--k-primary-soft); color: var(--bs-primary-text-emphasis); opacity: 1; }
[data-k-theme="schwebend"] .k-kpi-value { font-size: 1.85rem; font-weight: 700; }

[data-k-theme="schwebend"] .btn { --bs-btn-border-radius: 999px; --bs-btn-padding-x: 1.1rem; --bs-btn-font-weight: 500; }
[data-k-theme="schwebend"] .btn-sm, [data-k-theme="schwebend"] .btn-group-sm > .btn { --bs-btn-padding-x: .85rem; --bs-btn-border-radius: 999px; }
[data-k-theme="schwebend"] .badge { border-radius: 999px; padding: .42em .8em; font-weight: 500; }
[data-k-theme="schwebend"] .form-control, [data-k-theme="schwebend"] .form-select { border-radius: .8rem; background-color: #f5f6f8; border-color: transparent; }
[data-k-theme="schwebend"] .form-control:focus, [data-k-theme="schwebend"] .form-select:focus { background-color: #fff; }
[data-k-theme="schwebend"] .alert { border: 0; border-radius: 1rem; }

[data-k-theme="schwebend"] .k-table thead th { background: transparent; text-transform: none; letter-spacing: 0; font-size: .8rem; color: #8a929c; border-bottom: 1px solid #f0f1f3; }
[data-k-theme="schwebend"] .k-table th, [data-k-theme="schwebend"] .k-table td { padding: .8rem 1.25rem; }
[data-k-theme="schwebend"] .k-table td { border-color: #f3f4f6; }
[data-k-theme="schwebend"] tfoot.k-sum td, [data-k-theme="schwebend"] tr.k-sum td { background: var(--k-primary-soft); border: 0; color: var(--bs-primary-text-emphasis); }
[data-k-theme="schwebend"] .card > .k-pager, [data-k-theme="schwebend"] .k-pager.is-in-card { background: transparent; border-top-color: #f0f1f3; }
[data-k-theme="schwebend"] .card > .k-table-toolbar { border-bottom-color: #f0f1f3; }
[data-k-theme="schwebend"] .page-link { border: 0; border-radius: 999px !important; margin: 0 2px; }
[data-k-theme="schwebend"] .k-main .nav-pills .nav-link { border-radius: 999px; background: #fff; color: #374151; box-shadow: 0 1px 2px rgba(16,24,40,.06); }
[data-k-theme="schwebend"] .k-main .nav-pills .nav-link.active { background: var(--k-primary); color: var(--k-primary-contrast); }

/* =====================================================================
   ATELIER – warm und redaktionell
   Dunkle Espresso-Spalte mit Logo, Papiergrund, Überschriften und Kennzahlen
   in Serifenschrift, feine Linien statt Kästen.
   ===================================================================== */
:root[data-k-theme="atelier"] {
  --k-bg: #f4f3ef; --k-surface: #ffffff; --k-border: #e2ddd4; --k-muted: #6b645a;
  --k-side: #2e2a25; --k-side-line: #45403a; --k-side-text: #d6cfc4; --k-side-muted: #a39a8d;
  --k-radius: 1rem; --k-topbar-h: 64px; --k-sidebar-w: 256px;
  --bs-body-color: #1f1d1a; --bs-border-radius: .6rem; --bs-border-radius-lg: 1rem;
}
[data-k-theme="atelier"] .k-topbar { background: var(--k-bg); border-bottom: 1px solid var(--k-border); }
@media (min-width: 992px) {
  /* Logo sitzt oben in der dunklen Spalte – ergibt eine durchgehende Menüleiste. */
  [data-k-theme="atelier"] .k-topbar > .container-fluid { padding-left: 0; align-self: stretch; align-items: stretch; }
  [data-k-theme="atelier"] .k-topbar > .container-fluid > * { align-self: center; }
  [data-k-theme="atelier"] .k-topbar .navbar-brand { align-self: stretch; width: var(--k-sidebar-w); margin: 0 auto -1px 0; padding: 0 1.25rem; background: var(--k-side); color: #fff; }
  [data-k-theme="atelier"] .k-topbar .k-logo { background: #fff; border-radius: .5rem; padding: 2px 6px; }
}
[data-k-theme="atelier"] .k-brand-name { font-family: var(--k-font-display); font-weight: 600; font-size: 1.3rem; letter-spacing: -.01em; }
[data-k-theme="atelier"] .k-logo-fallback { border-radius: 50%; font-family: var(--k-font-display); }
[data-k-theme="atelier"] .k-avatar { background: #e8e2d8; color: #4a443c; }
[data-k-theme="atelier"] .k-user-btn:hover,
[data-k-theme="atelier"] .k-user-btn[aria-expanded="true"] { background: #ebe7e0; }

[data-k-theme="atelier"] .k-sidebar,
[data-k-theme="atelier"] .k-sidebar-mobile { background: var(--k-side); color: var(--k-side-text); }
[data-k-theme="atelier"] .k-sidebar { border-right: 0; padding: 1.25rem .9rem; }
[data-k-theme="atelier"] .k-sidebar-mobile .offcanvas-title { color: #fff; font-family: var(--k-font-display); }
[data-k-theme="atelier"] .k-sidebar-mobile .btn-close { filter: invert(1) grayscale(1) brightness(2); }
[data-k-theme="atelier"] .k-nav-group { color: var(--k-side-muted); letter-spacing: .12em; font-size: .68rem; border-radius: .4rem; }
[data-k-theme="atelier"] .k-nav-toggle:hover { color: #fff; background: rgba(255,255,255,.04); }
[data-k-theme="atelier"] .k-sidebar .nav-link,
[data-k-theme="atelier"] .k-sidebar-mobile .nav-link { color: var(--k-side-text); border-radius: .65rem; padding: .55rem .75rem; }
[data-k-theme="atelier"] .k-sidebar .nav-link:hover:not(.active),
[data-k-theme="atelier"] .k-sidebar-mobile .nav-link:hover:not(.active) { background: rgba(255,255,255,.06); color: #fff; }
[data-k-theme="atelier"] .k-sidebar .nav-link.active,
[data-k-theme="atelier"] .k-sidebar-mobile .nav-link.active { background: rgba(255,255,255,.1); color: #fff; }
[data-k-theme="atelier"] .k-sidebar .nav-link.active::after,
[data-k-theme="atelier"] .k-sidebar-mobile .nav-link.active::after { content: ""; margin-left: auto; width: 7px; height: 7px; border-radius: 50%; background: var(--k-primary-light); flex: none; }

[data-k-theme="atelier"] .k-main { padding: 2rem clamp(1rem, 4vw, 3rem) 1rem; }
[data-k-theme="atelier"] .k-page-title { font-family: var(--k-font-display); font-weight: 400; font-size: clamp(1.75rem, 3vw, 2.4rem); letter-spacing: -.02em; line-height: 1.1; }
[data-k-theme="atelier"] .lead { font-family: var(--k-font-display); font-size: 1.45rem; }
[data-k-theme="atelier"] h2, [data-k-theme="atelier"] .h2, [data-k-theme="atelier"] h3, [data-k-theme="atelier"] .h3,
[data-k-theme="atelier"] .k-main h4, [data-k-theme="atelier"] .k-main .h4, [data-k-theme="atelier"] .k-main h5, [data-k-theme="atelier"] .k-main .h5 { font-family: var(--k-font-display); font-weight: 600; }

[data-k-theme="atelier"] .card { border: 0; border-radius: var(--k-radius); box-shadow: 0 1px 0 #e6e1d8; }
[data-k-theme="atelier"] .card-header { background: transparent; border-bottom-color: #eee9e1; padding: 1rem 1.25rem .75rem; font-family: var(--k-font-display); font-weight: 600; font-size: 1.12rem; }
[data-k-theme="atelier"] .card-footer { background: #faf9f6; border-top-color: #eee9e1; }
[data-k-theme="atelier"] .list-group-item { border-color: #eee9e1; padding: .8rem 1.25rem; }
[data-k-theme="atelier"] .k-kpi { box-shadow: none; background: transparent; border-top: 1px solid var(--k-side); border-radius: 0; }
[data-k-theme="atelier"] .k-kpi .card-body { padding: 1rem .25rem 1.1rem 0; }
[data-k-theme="atelier"] .k-kpi-label { text-transform: uppercase; letter-spacing: .1em; font-size: .7rem; font-weight: 600; }
[data-k-theme="atelier"] .k-kpi-icon { color: var(--k-muted); }
[data-k-theme="atelier"] .k-kpi-value { font-family: var(--k-font-display); font-weight: 400; font-size: 2.3rem; letter-spacing: -.02em; }
[data-k-theme="atelier"] .k-time { color: var(--k-side); font-weight: 700; }

[data-k-theme="atelier"] .btn { --bs-btn-border-radius: 2rem; --bs-btn-padding-x: 1.1rem; --bs-btn-font-weight: 600; }
[data-k-theme="atelier"] .btn-sm, [data-k-theme="atelier"] .btn-group-sm > .btn { --bs-btn-padding-x: .85rem; --bs-btn-border-radius: 2rem; }
[data-k-theme="atelier"] .btn-outline-secondary { --bs-btn-color: #2e2a25; --bs-btn-border-color: #2e2a25; --bs-btn-hover-bg: #2e2a25; --bs-btn-hover-border-color: #2e2a25; --bs-btn-hover-color: #fff; --bs-btn-disabled-color: #2e2a25; --bs-btn-disabled-border-color: #2e2a25; }
[data-k-theme="atelier"] .badge { border-radius: 2rem; padding: .4em .75em; font-weight: 600; }
[data-k-theme="atelier"] .form-control, [data-k-theme="atelier"] .form-select { border-color: #ddd8cf; }
[data-k-theme="atelier"] .alert { border-radius: var(--k-radius); }

[data-k-theme="atelier"] .k-table thead th { background: transparent; color: var(--k-muted); font-size: .7rem; letter-spacing: .1em; border-bottom: 1px solid var(--k-side); }
[data-k-theme="atelier"] .k-table th, [data-k-theme="atelier"] .k-table td { padding: .75rem 1.25rem; }
[data-k-theme="atelier"] .k-table td { border-color: #eee9e1; }
[data-k-theme="atelier"] tfoot.k-sum td, [data-k-theme="atelier"] tr.k-sum td { background: transparent; border-top: 1px solid var(--k-side); border-bottom: 0; }
[data-k-theme="atelier"] .card > .k-pager, [data-k-theme="atelier"] .k-pager.is-in-card { background: #faf9f6; }
[data-k-theme="atelier"] .k-main .nav-pills .nav-link { border-radius: 2rem; color: #4a443c; }
[data-k-theme="atelier"] .k-main .nav-pills .nav-link.active { background: var(--k-side); color: #fff; }
[data-k-theme="atelier"] .k-footer { border-top: 1px solid var(--k-border); padding-top: .75rem; margin-top: 2.5rem; }

/* =====================================================================
   COCKPIT – dunkel und datendicht
   Bootstrap im Dunkelmodus (data-bs-theme="dark"), kompakte Abstände,
   Zahlen in Monospace, Mandantenfarbe in der für Dunkel aufgehellten Abstufung.
   Belege und Rechnungen bleiben als Papier weiß.
   ===================================================================== */
:root[data-k-theme="cockpit"] {
  --k-bg: #0d1012; --k-surface: #14191c; --k-surface-2: #1a2023; --k-border: #242a2e; --k-muted: #9aa3ab;
  --k-topbar-h: 54px; --k-sidebar-w: 232px; --k-radius: .6rem;
  --k-primary-soft: rgba(var(--k-primary-light-rgb), .14);
  --bs-body-bg: #0d1012; --bs-body-bg-rgb: 13, 16, 18; --bs-body-color: #e6e9eb; --bs-body-color-rgb: 230, 233, 235; --bs-emphasis-color: #ffffff;
  --bs-secondary-color: rgba(230, 233, 235, .68); --bs-tertiary-color: rgba(230, 233, 235, .5);
  --bs-secondary-bg: #1a2023; --bs-tertiary-bg: #14191c; --bs-tertiary-bg-rgb: 20, 25, 28;
  --bs-border-color: #262d31; --bs-border-color-translucent: rgba(255, 255, 255, .1);
  --bs-primary-text-emphasis: var(--k-primary-light); --bs-primary-bg-subtle: rgba(var(--k-primary-light-rgb), .16); --bs-primary-border-subtle: rgba(var(--k-primary-light-rgb), .4);
  --bs-link-color: var(--k-primary-light); --bs-link-color-rgb: var(--k-primary-light-rgb); --bs-link-hover-color: #ffffff; --bs-link-hover-color-rgb: 255, 255, 255;
  --bs-body-font-size: .875rem; --bs-border-radius: .4rem; --bs-border-radius-lg: .6rem;
  color-scheme: dark;
}
[data-k-theme="cockpit"] body.k-app { background: var(--k-bg); }
[data-k-theme="cockpit"] .k-topbar { background: #0f1315; border-bottom-color: #22282c; }
[data-k-theme="cockpit"] .k-logo-fallback { border-radius: .5rem; }
[data-k-theme="cockpit"] .k-topbar .k-logo { background: #fff; border-radius: .35rem; padding: 2px 4px; }
[data-k-theme="cockpit"] .k-avatar { background: #2a3135; color: #e6e9eb; }
[data-k-theme="cockpit"] .k-user-btn:hover, [data-k-theme="cockpit"] .k-user-btn[aria-expanded="true"] { background: #1a2023; }
[data-k-theme="cockpit"] .k-sidebar, [data-k-theme="cockpit"] .k-sidebar-mobile { background: #121619; }
[data-k-theme="cockpit"] .k-sidebar { border-right-color: #22282c; padding: .75rem .5rem; }
[data-k-theme="cockpit"] .k-nav-group { color: #6f797f; padding: .6rem .7rem .25rem; }
[data-k-theme="cockpit"] .k-nav-toggle:hover { color: #e6e9eb; background: rgba(255,255,255,.03); }
[data-k-theme="cockpit"] .k-sidebar .nav-link, [data-k-theme="cockpit"] .k-sidebar-mobile .nav-link { color: #aab3ba; padding: .38rem .7rem; font-weight: 400; border-radius: .4rem; }
[data-k-theme="cockpit"] .k-sidebar .nav-link:hover:not(.active), [data-k-theme="cockpit"] .k-sidebar-mobile .nav-link:hover:not(.active) { background: #1a2023; color: #e6e9eb; }
[data-k-theme="cockpit"] .k-sidebar .nav-link.active, [data-k-theme="cockpit"] .k-sidebar-mobile .nav-link.active { background: #1e2529; color: var(--k-primary-light); box-shadow: inset 2px 0 0 var(--k-primary-light); }

[data-k-theme="cockpit"] .k-main { padding: 1.1rem clamp(.75rem, 2vw, 1.5rem) .75rem; }
[data-k-theme="cockpit"] .k-page-head { margin-bottom: .9rem; }
[data-k-theme="cockpit"] .k-page-title { font-size: 1.3rem; font-weight: 600; }
[data-k-theme="cockpit"] .card { --bs-card-bg: var(--k-surface); border-color: #22282c; border-radius: var(--k-radius); }
[data-k-theme="cockpit"] .card-header, [data-k-theme="cockpit"] .card-footer { background: var(--k-surface); border-color: #22282c; padding: .55rem .9rem; }
[data-k-theme="cockpit"] .list-group { --bs-list-group-bg: transparent; --bs-list-group-border-color: #1e2427; }
[data-k-theme="cockpit"] .list-group-item { padding: .5rem .9rem; }
[data-k-theme="cockpit"] .k-kpi .card-body { padding: .8rem .9rem; }
[data-k-theme="cockpit"] .k-kpi-icon { color: var(--k-primary-light); }
[data-k-theme="cockpit"] .k-kpi-value, [data-k-theme="cockpit"] .k-time, [data-k-theme="cockpit"] .k-pos-total,
[data-k-theme="cockpit"] .k-period-label, [data-k-theme="cockpit"] tfoot.k-sum td, [data-k-theme="cockpit"] .k-table td.text-end,
[data-k-theme="cockpit"] .k-pos-tile-price { font-family: var(--k-font-mono); font-variant-numeric: tabular-nums; }
[data-k-theme="cockpit"] .k-kpi-value { font-weight: 500; font-size: 1.55rem; }
[data-k-theme="cockpit"] .k-time { color: var(--k-primary-light); }

[data-k-theme="cockpit"] .btn-outline-primary { --bs-btn-color: var(--k-primary-light); --bs-btn-border-color: rgba(var(--k-primary-light-rgb), .6); --bs-btn-hover-bg: var(--k-primary-light); --bs-btn-hover-border-color: var(--k-primary-light); --bs-btn-hover-color: #0d1012; --bs-btn-active-bg: var(--k-primary-light); --bs-btn-active-border-color: var(--k-primary-light); --bs-btn-active-color: #0d1012; --bs-btn-disabled-color: var(--k-primary-light); }
[data-k-theme="cockpit"] .btn-outline-secondary { --bs-btn-color: #c3cacf; --bs-btn-border-color: #2f373c; --bs-btn-hover-bg: #262d31; --bs-btn-hover-border-color: #3a4348; --bs-btn-hover-color: #fff; --bs-btn-disabled-color: #e6e9eb; --bs-btn-disabled-border-color: #2f373c; }
[data-k-theme="cockpit"] .btn-light { --bs-btn-bg: #1a2023; --bs-btn-border-color: #2a3135; --bs-btn-color: #e6e9eb; --bs-btn-hover-bg: #232a2e; --bs-btn-hover-color: #fff; }
[data-k-theme="cockpit"] .bg-white, [data-k-theme="cockpit"] .bg-body { background-color: var(--k-surface) !important; }
[data-k-theme="cockpit"] .bg-light, [data-k-theme="cockpit"] .bg-body-tertiary { background-color: var(--k-surface-2) !important; }
[data-k-theme="cockpit"] .text-bg-light { background-color: #1e2529 !important; color: #c3cacf !important; }
[data-k-theme="cockpit"] .text-dark { color: #e6e9eb !important; }
[data-k-theme="cockpit"] .table { --bs-table-bg: transparent; --bs-table-color: #e6e9eb; --bs-table-border-color: #1e2427; --bs-table-hover-bg: rgba(255,255,255,.03); --bs-table-striped-bg: rgba(255,255,255,.02); }
[data-k-theme="cockpit"] .table-light { --bs-table-bg: #161b1e; --bs-table-color: #aab3ba; --bs-table-border-color: #22282c; }
[data-k-theme="cockpit"] .k-table thead th, [data-k-theme="cockpit"] .table > thead th { background: #161b1e; color: #7e888e; font-size: .7rem; }
[data-k-theme="cockpit"] .k-table th, [data-k-theme="cockpit"] .k-table td { padding: .45rem .8rem; }
[data-k-theme="cockpit"] tfoot.k-sum td, [data-k-theme="cockpit"] tr.k-sum td { background: #181e21; color: #fff; }
[data-k-theme="cockpit"] .card > .k-pager, [data-k-theme="cockpit"] .k-pager.is-in-card { background: var(--k-surface); border-top-color: #22282c; }
[data-k-theme="cockpit"] .card > .k-table-toolbar { border-bottom-color: #22282c; }
[data-k-theme="cockpit"] .pagination { --bs-pagination-bg: #1a2023; --bs-pagination-border-color: #2a3135; --bs-pagination-color: #c3cacf; --bs-pagination-hover-bg: #232a2e; --bs-pagination-hover-color: #fff; --bs-pagination-disabled-bg: #14191c; --bs-pagination-disabled-color: #4f585e; }
[data-k-theme="cockpit"] .k-main .nav-pills .nav-link:not(.active) { color: #aab3ba; }
[data-k-theme="cockpit"] .k-main .nav-pills .nav-link:not(.active):hover { background: #1a2023; color: #fff; }
[data-k-theme="cockpit"] .dropdown-menu { --bs-dropdown-bg: #161b1e; --bs-dropdown-border-color: #262d31; --bs-dropdown-link-hover-bg: #1e2529; }
[data-k-theme="cockpit"] .modal { --bs-modal-bg: #14191c; --bs-modal-border-color: #262d31; }
[data-k-theme="cockpit"] .offcanvas { --bs-offcanvas-bg: #121619; }
[data-k-theme="cockpit"] .k-footer { color: #6f797f; }

/* Kordo-Bausteine mit festen hellen Farben in kordo.css */
[data-k-theme="cockpit"] .k-skip { background: #14191c; }
[data-k-theme="cockpit"] .k-consent, [data-k-theme="cockpit"] .k-preview, [data-k-theme="cockpit"] .k-logo-preview { background: #161b1e; border-color: #262d31; }
[data-k-theme="cockpit"] .k-preview-bar { background: #1a2023; border-color: #262d31; }
[data-k-theme="cockpit"] .k-demo-hint { background: #2b2410; border-color: #5a4a1c; color: #f2d48a; }
[data-k-theme="cockpit"] .k-missing { background: #3a1d20; color: #f4a6ad; }
[data-k-theme="cockpit"] .k-role-company { background: #1f2340; color: #b7beff; }
[data-k-theme="cockpit"] .k-role-supplier { background: #33280f; color: #f2cf7a; }
[data-k-theme="cockpit"] .k-role-employee { background: #0f2e24; color: #8fe0bd; }
[data-k-theme="cockpit"] .k-state-aktiv, [data-k-theme="cockpit"] .k-inv-bezahlt { background: #12301f; color: #8ddcae; }
[data-k-theme="cockpit"] .k-state-einrichtung { background: #33280f; color: #f2cf7a; }
[data-k-theme="cockpit"] .k-state-gesperrt, [data-k-theme="cockpit"] .k-inv-overdue { background: #3a1d20; color: #f4a6ad; }
[data-k-theme="cockpit"] .k-state-gekuendigt, [data-k-theme="cockpit"] .k-inv-storniert { background: #22282c; color: #aab3ba; }
[data-k-theme="cockpit"] .k-pos-tile { background: var(--k-surface); border-color: #262d31; color: #e6e9eb; }
[data-k-theme="cockpit"] .k-bar:hover .k-bar-track, [data-k-theme="cockpit"] .k-bar:focus-visible .k-bar-track { background: #1a2023; }
[data-k-theme="cockpit"] .k-bar-fill { background: var(--k-primary-light); }
[data-k-theme="cockpit"] .k-cal-corner, [data-k-theme="cockpit"] .k-cal-dayhead { background: var(--k-surface); }
[data-k-theme="cockpit"] .k-cal-col.is-today { background-color: rgba(var(--k-primary-light-rgb), .05); }
[data-k-theme="cockpit"] .k-ev { background: color-mix(in srgb, var(--k-primary) 26%, #14191c); border-color: color-mix(in srgb, var(--k-primary) 45%, #14191c); border-left-color: var(--k-primary-light); color: #eef1f3; }
[data-k-theme="cockpit"] .k-ev-service, [data-k-theme="cockpit"] .k-ev-gap span { color: #c3cacf; }
[data-k-theme="cockpit"] .k-ev-online { background: color-mix(in srgb, var(--k-secondary) 30%, #14191c); border-color: color-mix(in srgb, var(--k-secondary) 50%, #14191c); }
[data-k-theme="cockpit"] .k-ev-erschienen { background: #12301f; border-color: #1f5236; border-left-color: #4cc38a; }
[data-k-theme="cockpit"] .k-ev-block { background: repeating-linear-gradient(135deg, #1a2023 0, #1a2023 6px, #20272b 6px, #20272b 12px); border-color: #2a3135; color: #8e979e; }
[data-k-theme="cockpit"] .k-ev-gap { background: repeating-linear-gradient(135deg, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 5px, transparent 5px, transparent 10px); border-color: rgba(255,255,255,.15); }
[data-k-theme="cockpit"] .k-ev-gap span { background: rgba(0,0,0,.5); }
/* Papier bleibt Papier: Rechnung, Bon und Gutscheindruck hell darstellen. */
[data-k-theme="cockpit"] .k-invoice, [data-k-theme="cockpit"] .k-bon {
  --bs-body-bg: #ffffff; --bs-body-color: #212529; --bs-emphasis-color: #000000; --bs-secondary-color: rgba(33, 37, 41, .75);
  --bs-border-color: #dee2e6; --bs-tertiary-bg: #f8f9fa; --k-muted: #6b7280; --k-border: #e3e6ea; color: #212529;
}
[data-k-theme="cockpit"] .k-invoice .table, [data-k-theme="cockpit"] .k-bon .table { --bs-table-color: #212529; --bs-table-border-color: #dee2e6; }
[data-k-theme="cockpit"] .k-invoice a, [data-k-theme="cockpit"] .k-bon a { color: var(--k-primary-ink); }

/* =====================================================================
   Auswahl des Designs (Administration & Profile → Betriebsprofil & Branding)
   ===================================================================== */
.k-theme-options { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: .75rem; }
.k-theme-option { position: relative; display: flex; flex-direction: column; gap: .5rem; height: 100%; padding: .7rem; border: 1px solid var(--k-border); border-radius: .75rem; background: var(--k-surface, #fff); cursor: pointer; transition: border-color .12s, box-shadow .12s; }
.k-theme-option:hover { border-color: var(--k-primary); }
.k-theme-option:has(input:checked) { border-color: var(--k-primary); box-shadow: 0 0 0 2px rgba(var(--bs-primary-rgb), .35); }
.k-theme-option:has(input:focus-visible) { outline: 3px solid rgba(var(--bs-primary-rgb), .45); outline-offset: 2px; }
.k-theme-option-head { display: flex; align-items: center; gap: .5rem; font-weight: 600; }
.k-theme-option-head .form-check-input { margin: 0; flex: none; }
.k-theme-option-desc { font-size: .8rem; color: var(--k-muted); line-height: 1.35; }
.k-thumb { --t-bg: #f4f5f7; --t-top: #fff; --t-side: #fff; --t-card: #fff; --t-line: #e3e6ea; --t-item: #d5d9de; --t-on: var(--k-primary); --t-r: 4px; --t-gap: 0px; --t-shadow: none; --t-cardshadow: none;
  display: grid; grid-template-columns: 30% 1fr; grid-template-rows: 14px 1fr; gap: var(--t-gap); padding: var(--t-gap);
  height: 92px; border-radius: .5rem; background: var(--t-bg); overflow: hidden; border: 1px solid rgba(0,0,0,.08); }
.k-thumb > span { display: block; }
.k-thumb-top { grid-column: 1 / -1; background: var(--t-top); border-bottom: 1px solid var(--t-line); border-radius: var(--t-tr, 0); box-shadow: var(--t-shadow); padding: 3px 6px; }
.k-thumb-top i { display: block; width: 8px; height: 8px; border-radius: 2px; background: var(--k-primary); }
.k-thumb-side { background: var(--t-side); border-right: 1px solid var(--t-line); border-radius: var(--t-tr, 0); box-shadow: var(--t-shadow); padding: 8px 6px; }
.k-thumb-side b { display: block; height: 5px; margin-bottom: 5px; border-radius: 3px; background: var(--t-item); }
.k-thumb-side b.on { background: var(--t-on); height: 7px; }
.k-thumb-main { padding: 8px; display: grid; grid-template-columns: 1fr 1fr; gap: 6px; align-content: start; }
.k-thumb-main span { display: block; height: 22px; background: var(--t-card); border: 1px solid var(--t-line); border-radius: var(--t-r); box-shadow: var(--t-cardshadow); }
.k-thumb-main span.wide { grid-column: 1 / -1; height: 26px; }
.k-thumb--klassisch { --t-bg: #eceff2; --t-top: var(--k-primary-ink); --t-side: #f7f8f9; --t-line: #d3d8de; --t-r: 2px; --t-on: var(--k-primary-soft); }
.k-thumb--klassisch .k-thumb-top i { background: #fff; }
.k-thumb--klassisch .k-thumb-side { padding: 8px 0; }
.k-thumb--klassisch .k-thumb-side b { border-radius: 0; margin: 0 6px 5px; }
.k-thumb--klassisch .k-thumb-side b.on { margin: 0 0 5px; box-shadow: inset 3px 0 0 var(--k-primary); }
.k-thumb--schwebend { --t-bg: color-mix(in srgb, var(--k-primary) 10%, #f3f4f6); --t-line: transparent; --t-r: 8px; --t-gap: 5px; --t-tr: 6px; --t-shadow: 0 2px 6px rgba(16,24,40,.1); --t-cardshadow: 0 2px 6px rgba(16,24,40,.08); }
.k-thumb--atelier { --t-bg: #f4f3ef; --t-top: #f4f3ef; --t-side: #2e2a25; --t-line: #e2ddd4; --t-item: #4a443c; --t-on: var(--k-primary-light, var(--k-primary)); --t-r: 7px; }
.k-thumb--atelier .k-thumb-main span { border: 0; border-top: 1px solid #2e2a25; border-radius: 0; background: transparent; }
.k-thumb--atelier .k-thumb-main span.wide { background: #fff; border: 0; border-radius: 7px; }
.k-thumb--cockpit { --t-bg: #0d1012; --t-top: #0f1315; --t-side: #121619; --t-card: #14191c; --t-line: #262d31; --t-item: #2a3135; --t-on: var(--k-primary-light, var(--k-primary)); --t-r: 4px; }
@media (prefers-reduced-motion: reduce) { .k-theme-option { transition: none; } }

/* =====================================================================
   Gemeinsam für alle Designs: Personen-/Firmenverzeichnis und Kassa
   übernehmen Mandantenfarben, Schrift und Linien statt eigener Festwerte.
   ===================================================================== */
html #k-directory { --ink: var(--bs-body-color); --muted: var(--k-muted); --accent: var(--k-primary-ink); --line: var(--k-border); --bg: transparent; --soft: var(--k-primary-soft); font-family: var(--bs-body-font-family); }

/* Cockpit: helle Festwerte der Modul-Stylesheets abdunkeln */
[data-k-theme="cockpit"] #k-directory { --accent: var(--k-primary-light); }
[data-k-theme="cockpit"] #k-directory button:not(.quiet) { color: #0d1012; }
[data-k-theme="cockpit"] #k-directory .top, [data-k-theme="cockpit"] #k-directory .card, [data-k-theme="cockpit"] #k-directory .stat,
[data-k-theme="cockpit"] #k-directory .team-member, [data-k-theme="cockpit"] #k-directory .role-picker button, [data-k-theme="cockpit"] #k-directory button.quiet,
[data-k-theme="cockpit"] #k-directory input, [data-k-theme="cockpit"] #k-directory select, [data-k-theme="cockpit"] #k-directory textarea { background: var(--k-surface); color: var(--bs-body-color); }
[data-k-theme="cockpit"] #k-directory input, [data-k-theme="cockpit"] #k-directory select, [data-k-theme="cockpit"] #k-directory textarea { border-color: #2f373c; }
[data-k-theme="cockpit"] #k-directory th, [data-k-theme="cockpit"] #k-directory .notice, [data-k-theme="cockpit"] #k-directory .assignment,
[data-k-theme="cockpit"] #k-directory .rights-group h3 { background: #161b1e; }
[data-k-theme="cockpit"] #k-directory .team-preview { background: #1a2023; }
[data-k-theme="cockpit"] #k-directory .notice.warning, [data-k-theme="cockpit"] #k-directory .pill.gold { background: #2b2410; color: #f2d48a; }
[data-k-theme="cockpit"] #k-directory .result.denied, [data-k-theme="cockpit"] #k-directory .pill.red { background: #3a1d20; color: #f4a6ad; }
[data-k-theme="cockpit"] #k-directory .pill.green { background: #12301f; color: #8ddcae; }
[data-k-theme="cockpit"] #k-directory th button, [data-k-theme="cockpit"] #k-directory .person-link { color: var(--bs-body-color); background: transparent; }
[data-k-theme="cockpit"] #k-directory .pill { background: #1e2529; color: #c3cacf; }
[data-k-theme="cockpit"] #k-directory .avatar { background: rgba(var(--k-primary-light-rgb), .15); color: var(--k-primary-light); }
[data-k-theme="cockpit"] #k-directory .receipt-preview { color: #222; }
[data-k-theme="cockpit"] .pos-tile { background: var(--k-surface); color: #e6e9eb; }
[data-k-theme="cockpit"] .pos-change { background: #12301f; color: #8ddcae; }
[data-k-theme="cockpit"] #kordo-busy { background: rgba(13, 16, 18, .8); color: #e6e9eb; }
[data-k-theme="cockpit"] .k-busy-panel { background: #14191c; }

/* =====================================================================
   Website, Login und Kundenbereich im gewählten Design (Paket 4)
   site.css arbeitet mit --k-site-*; hier setzt jedes Design Grundfarben,
   Rundungen und die Kopfleiste. Modul-Vorlagen der Website
   (website-templates.css, salon-template.css) liegen darüber und setzen
   weiterhin ihre eigenen Akzente (Hero-Verlauf, Schrift der Vorlage).
   ===================================================================== */
/* Klassisch: Kopfleiste in Mandantenfarbe, kantige Karten, Rasterlinien */
:root[data-k-theme="klassisch"] { --k-site-alt: #eef1f3; --k-site-radius: .3rem; --k-site-radius-sm: .2rem; --k-site-shadow: none; --k-site-footer-bg: #eceff2; }
[data-k-theme="klassisch"] .k-site-nav { background: var(--k-primary-ink); border-bottom: 0; -webkit-backdrop-filter: none; backdrop-filter: none; }
[data-k-theme="klassisch"] .k-site-nav .nav-link,
[data-k-theme="klassisch"] .k-site-nav .navbar-brand,
[data-k-theme="klassisch"] .k-site-nav .btn-link,
[data-k-theme="klassisch"] .k-site-nav .navbar-toggler { color: #fff !important; }
[data-k-theme="klassisch"] .k-site-nav .nav-link:hover, [data-k-theme="klassisch"] .k-site-nav .nav-link.active { color: #fff; box-shadow: inset 0 -3px 0 rgba(255,255,255,.85); }
[data-k-theme="klassisch"] .k-site-nav .btn-primary { background: #fff; border-color: #fff; color: var(--k-primary-ink); }
[data-k-theme="klassisch"] .k-site-nav .k-logo { background: #fff; border-radius: .2rem; padding: 2px 5px; }
[data-k-theme="klassisch"] .k-site-nav .k-logo-fallback { background: #fff; color: var(--k-primary-ink); border-radius: .2rem; }
[data-k-theme="klassisch"] .k-hero { border-bottom: 1px solid var(--k-border); }
[data-k-theme="klassisch"] .k-section-title, [data-k-theme="klassisch"] .k-hero-title { letter-spacing: -.01em; }
[data-k-theme="klassisch"] .k-site-footer { border-top: 3px solid var(--k-primary-ink); }

/* Schwebend: getönter Grund, schwebende Kopfleiste, randlose Karten mit weichem Schatten */
:root[data-k-theme="schwebend"] { --k-site-page: color-mix(in srgb, var(--k-primary) 5%, #f6f7f9); --k-site-alt: color-mix(in srgb, var(--k-primary) 9%, #f1f3f5); --k-site-radius: 1.25rem; --k-site-radius-sm: .9rem;
  --k-site-shadow: 0 1px 2px rgba(16,24,40,.04), 0 12px 32px -10px rgba(16,24,40,.14); --k-site-footer-bg: transparent; --k-site-nav-bg: rgba(255,255,255,.9); }
[data-k-theme="schwebend"] .k-site-nav { margin: 14px 14px 0; top: 14px; border: 0; border-radius: 1.1rem; box-shadow: var(--k-site-shadow); }
[data-k-theme="schwebend"] .k-hero { background: transparent; }
[data-k-theme="schwebend"] :is(.k-site-card, .k-feature, .k-audience, .k-teaser, .k-price-item, .k-booking-service, .k-booking-day, .k-booking-weekday, #customer-portal .card) { border-color: transparent; box-shadow: var(--k-site-shadow); }
[data-k-theme="schwebend"] .k-site-nav .btn, [data-k-theme="schwebend"] .k-site .btn-lg, [data-k-theme="schwebend"] .k-tenant-site .btn { border-radius: 999px; }
[data-k-theme="schwebend"] .k-site-footer { border-top: 0; }

/* Atelier: Papiergrund, Serifen-Überschriften, feine Linien, dunkle Fußzeile */
:root[data-k-theme="atelier"] { --k-site-page: #f4f3ef; --k-site-alt: #ebe8e1; --k-site-ink: #1f1d1a; --k-site-text: #5c554b; --k-site-link: #2e2a25; --k-site-radius: .9rem; --k-site-radius-sm: .6rem;
  --k-site-shadow: none; --k-site-nav-bg: rgba(244,243,239,.94); --k-site-footer-bg: #2e2a25; }
[data-k-theme="atelier"] :is(.k-hero-title, .k-section-title, .k-site-card h2, .k-teaser h2, .portal-hero h1, .k-auth-card h1) { font-family: var(--k-font-display); font-weight: 600; letter-spacing: -.015em; }
[data-k-theme="atelier"] .k-site-nav .navbar-brand .fw-bold { font-family: var(--k-font-display); font-weight: 600; font-size: 1.25rem; }
[data-k-theme="atelier"] .k-eyebrow { color: var(--k-primary-ink); letter-spacing: .14em; }
[data-k-theme="atelier"] .k-hero { background: var(--k-site-page); border-bottom: 1px solid var(--k-border); }
[data-k-theme="atelier"] .k-site-footer { color: #d6cfc4; border-top: 0; }
[data-k-theme="atelier"] .k-site-footer a, [data-k-theme="atelier"] .k-site-footer .fw-bold { color: #f4f3ef; }
[data-k-theme="atelier"] .k-site-footer .text-body-secondary { color: #a39a8d !important; }

/* Cockpit: dunkle Website; Akzent in der aufgehellten Mandantenfarbe */
:root[data-k-theme="cockpit"] { --k-site-page: #0d1012; --k-site-card: #14191c; --k-site-alt: #111518; --k-site-ink: #e6e9eb; --k-site-text: #aab3ba; --k-site-link: #d3d8dc;
  --k-site-nav-bg: rgba(15,19,21,.92); --k-site-footer-bg: #0f1315; --k-site-radius: .6rem; --k-site-radius-sm: .45rem; --k-site-shadow: none; }
[data-k-theme="cockpit"] .k-hero { background: radial-gradient(1100px 480px at 85% -10%, rgba(var(--k-primary-light-rgb), .16), transparent 60%), var(--k-site-page); }
[data-k-theme="cockpit"] :is(.k-eyebrow, .k-site-nav .nav-link:hover, .k-teaser > .bi, .k-teaser span, .k-feature-icon, .k-checklist li::before, .k-hero-points .bi) { color: var(--k-primary-light); }
/* Abbildung der Verwaltung auf kordo.at bleibt hell wie ein Bildschirmfoto. */
[data-k-theme="cockpit"] .k-hero-mock { color: #1f2937; --k-border: #e3e6ea; --bs-border-color: #e3e6ea; --k-muted: #6b7280; }
[data-k-theme="cockpit"] .k-site-nav .k-logo, [data-k-theme="cockpit"] .portal-shell .k-logo { background: #fff; border-radius: .35rem; padding: 2px 5px; }
[data-k-theme="cockpit"] .portal-hero { background: rgba(var(--k-primary-light-rgb), .1); }
[data-k-theme="cockpit"] #customer-portal .nav-link:not(.active) { color: var(--k-primary-light); }
/* Website-Vorlagen der Module mit hellen Festwerten: Verlauf im Dunkeln in der Akzentfarbe */
[data-k-theme="cockpit"] body[data-website-template] .k-hero { background: linear-gradient(130deg, var(--k-site-card), color-mix(in srgb, var(--k-primary) 18%, var(--k-site-page))); }
[data-k-theme="cockpit"] body[data-website-template=zimmer] .k-site-card { border-top-color: var(--k-primary-light); }
/* Die Friseur-Vorlage (Salon) ist eine eigene helle Gestaltung mit Foto; sie bleibt auch bei Cockpit hell. */
[data-k-theme="cockpit"] body[data-website-template=friseur] {
  color-scheme: light; --bs-body-bg: #faf8f4; --bs-body-color: #3a352f; --bs-emphasis-color: #000; --bs-secondary-color: rgba(58,53,47,.75); --bs-border-color: #e3e0d9; --bs-tertiary-bg: #f4f2ee;
  --bs-link-color: var(--k-primary-ink); --bs-link-color-rgb: var(--bs-primary-rgb); --k-surface: #fff; --k-border: #e3e0d9; --k-muted: #6b645a;
  --k-site-page: #faf8f4; --k-site-card: #fff; --k-site-alt: #f4f2ee; --k-site-ink: #3a352f; --k-site-text: #5c554b; --k-site-link: #3a352f; --k-site-nav-bg: #f7f5f0; --k-site-footer-bg: #f4f2ee;
  --bs-body-bg-rgb: 250, 248, 244; --bs-body-color-rgb: 58, 53, 47; --bs-emphasis-color-rgb: 0, 0, 0; --bs-secondary-bg: #efece6; --bs-tertiary-bg-rgb: 244, 242, 238; --bs-border-color-translucent: rgba(0, 0, 0, .175); --bs-secondary-color-rgb: 58, 53, 47;
}
[data-k-theme="cockpit"] body[data-website-template=friseur] .k-site-nav .k-logo { background: transparent; padding: 0; }
[data-k-theme="cockpit"] body[data-website-template=friseur] .k-hero { background: url('../img/templates/salon-m/hero.jpg') center/cover no-repeat; }
[data-k-theme="cockpit"] body[data-website-template=friseur] :is(.card, .form-control, .form-select) { border-color: var(--k-border); background-color: #fff; color: var(--bs-body-color); }
