/* ======================================================================
   EISZEIT Cockpit – Facelift 3.60.0
   Gestaltungsebene über app.css. Die Farbwelten (data-farbe, hell/dunkel)
   bleiben unverändert; hier kommen Abstände, Schrift, Formen und die
   Bausteine (Navigation, Kopf, Knöpfe, Felder, Tabellen, Karten, Dialoge).
   Nur Variablen der Farbwelten benutzen – keine festen Farben.
   ====================================================================== */
/* 4.0: Schriften liegen in der App (web/schrift, SIL Open Font License) –
   nichts wird von fremden Servern geladen. Variable Schriften: eine Datei je
   Familie für alle Stärken. Fehlt eine Datei, greift die Systemschrift. */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:100 700;font-display:swap;
  src:url("schrift/ibm-plex-sans-latin-wght-normal.woff2") format("woff2")}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;
  src:url("schrift/manrope-latin-wght-normal.woff2") format("woff2")}
:root{
  --schrift:"IBM Plex Sans","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;
  --schrift-titel:"Manrope","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,sans-serif;
  /* Abstände (4er Raster) */
  --a1:4px; --a2:8px; --a3:12px; --a4:16px; --a5:20px; --a6:28px;
  /* Schrift */
  --fs-xs:11px; --fs-s:12.5px; --fs-m:13.5px; --fs-l:15px; --fs-xl:20px;
  /* Formen */
  --rund:10px; --rund2:8px; --rund3:6px;
  --hoehe:32px; --hoehe-mini:28px;
  --ring:0 0 0 3px color-mix(in srgb, var(--akz) 22%, transparent);
  --schatten:0 1px 2px rgba(16,24,40,.05), 0 1px 3px rgba(16,24,40,.06);
  --schatten-hoch:0 12px 32px rgba(16,24,40,.16), 0 2px 6px rgba(16,24,40,.08);
  --nav-breite:226px;
  --rot:var(--fehler);
  --gruen:var(--zub);
}
:root[data-thema="dunkel"]{
  --schatten:0 0 0 1px rgba(255,255,255,.02);
  --schatten-hoch:0 16px 40px rgba(0,0,0,.5), 0 0 0 1px var(--linie);
}

body{font-family:var(--schrift);font-size:var(--fs-m);line-height:1.5;letter-spacing:.005em}
button,input,select,textarea{font-family:inherit}
/* Titel und große Zahlen in Manrope */
h1,h2,h3,nav .marke b,.mtitel,.mm-kopf b,.anmeldelogo b,.dkpi .z,.summenbalken .gross,.mhd .d{
  font-family:var(--schrift-titel);letter-spacing:-.01em}
.kopfzeile h1{font-weight:750}
:focus-visible{outline:2px solid var(--akz);outline-offset:2px}

/* ------------------------------------------------------------ Navigation
   4.0 (Umbau, Etappe 1): Übersicht und Freigaben oben, darunter die Bereiche
   mit Symbol als aufklappbare Liste, unten die Nutzerkarte. Dieselbe Liste
   steht am Handy im Menü-Blatt (.mm-liste). */
nav{width:var(--nav-breite);padding:var(--a4) var(--a3) 0;background:var(--flaeche);
  border-right:1px solid var(--linie);overflow:hidden;gap:var(--a3)}
nav .marke{padding:2px var(--a1) 0;gap:10px}
nav .marke img{width:32px;height:32px;flex:0 0 32px;border-radius:9px}
nav .marke b{font-size:var(--fs-l);font-weight:700;letter-spacing:-.01em}
.navsuche{margin:0;border:1px solid var(--linie)!important;background:var(--grund)!important;
  color:var(--text3)!important;font-size:var(--fs-s)!important;min-height:34px;border-radius:var(--rund2)!important}
.navsuche:hover{border-color:var(--rand)!important;color:var(--text2)!important}
.navsuche kbd{margin-left:auto;font:inherit;font-size:10.5px;border:1px solid var(--linie);
  border-radius:4px;padding:0 5px;color:var(--text3);background:var(--flaeche)}
nav #navliste{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;margin:0 calc(-1 * var(--a3));
  padding:0 var(--a3) var(--a3);scrollbar-width:thin;display:flex;flex-direction:column;gap:2px}
.mm-liste button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;
  border:none;font:inherit;cursor:pointer;color:var(--text2)}
:is(nav,.mm-liste) .navtitel{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--text3);padding:var(--a4) 10px 6px}
:is(nav,.mm-liste) button.naveintrag,:is(nav,.mm-liste) button.navbereich{position:relative;min-height:36px;
  margin:0;padding:0 10px;gap:10px;border-radius:var(--rund2);font-size:var(--fs-m);font-weight:500;
  color:var(--text2);text-transform:none;letter-spacing:0;background:none;box-shadow:none}
:is(nav,.mm-liste) button .sym{display:inline-flex;color:var(--text3);flex-shrink:0}
:is(nav,.mm-liste) button.naveintrag:hover,:is(nav,.mm-liste) button.navbereich:hover{background:var(--flaeche2);color:var(--text)}
:is(nav,.mm-liste) button:hover .sym{color:var(--text2)}
:is(nav,.mm-liste) button.navbereich.aktiv{color:var(--text);font-weight:600}
:is(nav,.mm-liste) button.navbereich.aktiv .sym{color:var(--text2)}
:is(nav,.mm-liste) button.navbereich .pfeil{margin-left:auto;display:inline-flex;color:var(--text3);transition:transform .15s}
:is(nav,.mm-liste) button.navbereich .navzahl{margin-left:auto}
:is(nav,.mm-liste) button.navbereich .navzahl + .pfeil{margin-left:6px}
:is(nav,.mm-liste) button.navbereich[aria-expanded="true"] .pfeil{transform:rotate(90deg)}
:is(nav,.mm-liste) button.naveintrag[aria-current="page"]{background:var(--akz-t);color:var(--akz-stark);font-weight:600}
:is(nav,.mm-liste) button.naveintrag[aria-current="page"] .sym{color:var(--akz)}
[data-thema="dunkel"] :is(nav,.mm-liste) button.naveintrag[aria-current="page"]{color:var(--text)}
.navunterliste{display:flex;flex-direction:column;gap:1px;margin:1px 0 6px}
nav button.naveintrag.navunter{min-height:32px;padding-left:38px;font-size:13.5px}
nav button.naveintrag.navunter .sym{display:none}
:is(nav,.mm-liste) .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.navzahl{margin-left:auto;min-width:18px;height:18px;padding:0 6px;border-radius:9px;
  display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;
  line-height:1;background:var(--flaeche2);color:var(--text2);border:1px solid var(--linie)}
.navzahl.rot{background:var(--fehler);border-color:var(--fehler);color:var(--akz-auf)}
/* Wochenzähler: steht jetzt in der Übersicht, die Zahlen rechnet er weiter. */
nav #zaehler{display:none}
nav #navliste,main,.tabhuelle{scrollbar-color:var(--rand) transparent}
nav .fuss{font-size:10.5px;padding:0 var(--a1) var(--a2);margin-top:calc(-1 * var(--a2))}
@media (max-height:760px){ nav .fuss{display:none} }

/* Nutzerkarte unten in der Seitenleiste */
.nutzerbox{display:block;margin:0 calc(-1 * var(--a3));padding:var(--a3);border-top:1px solid var(--linie)}
.nutzerkarte{display:flex;align-items:center;gap:10px;min-width:0}
.nutzerkarte .avatar,.mavatar,.zg-person .avatar,.zg-kopf .avatar{width:34px;height:34px;border-radius:50%;flex:none;display:grid;place-items:center;
  background:var(--akz-t);color:var(--akz-stark);font-weight:650;font-size:13px;letter-spacing:.02em}
.nk-text{flex:1;min-width:0;line-height:1.3}
.nk-text b{display:block;font-size:var(--fs-m);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nk-text small{display:block;font-size:12px;color:var(--text3)}
.nk-knoepfe{display:flex;gap:4px;flex:none}
.nk-knoepfe button.k.mini.symbol{width:30px;height:30px;min-height:30px;border-color:transparent;background:none;color:var(--text2)}
.nk-knoepfe button.k.mini.symbol:hover{background:var(--flaeche2);color:var(--text)}
.nutzerkarte.gross{flex-wrap:wrap}
.nutzerkarte.gross .nk-knoepfe{gap:8px}

/* Handy: Kopfleiste, untere Leiste, Menü-Blatt (nur bis 820 px sichtbar) */
#mkopf,#unterleiste{display:none}
.mmenue{position:fixed;inset:0;z-index:300}
.mm-schleier{position:absolute;inset:0;background:rgba(10,14,22,.45)}
.mm-blatt{position:absolute;left:0;right:0;bottom:0;max-height:92%;display:flex;flex-direction:column;
  background:var(--flaeche);color:var(--text);border-radius:20px 20px 0 0;box-shadow:var(--schatten-hoch);
  animation:mm-hoch .24s cubic-bezier(.2,.8,.2,1)}
.mm-blatt::before{content:"";width:40px;height:4px;border-radius:2px;background:var(--rand);margin:8px auto 0;flex:none}
.mm-kopf{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 8px 20px;border-bottom:1px solid var(--linie2)}
.mm-kopf b{font-size:18px;font-weight:700}
.mm-liste{overflow:auto;padding:8px 10px 12px;display:flex;flex-direction:column;gap:2px;min-height:0}
.mm-liste button.naveintrag,.mm-liste button.navbereich{min-height:52px;font-size:16px;font-weight:600;color:var(--text);border-radius:var(--rund)}
.mm-liste button.navbereich > .sym,.mm-liste button.naveintrag:not(.navunter) > .sym{width:32px;height:32px;border-radius:8px;
  background:var(--flaeche2);justify-content:center;align-items:center}
.mm-liste .navunterliste{background:var(--flaeche2);border-radius:var(--rund);padding:4px 8px 8px 46px;margin:0 0 4px}
.mm-liste button.naveintrag.navunter{min-height:46px;font-size:15px;font-weight:500;color:var(--text2)}
.mm-liste button.naveintrag.navunter:hover,.mm-liste button.naveintrag.navunter[aria-current="page"]{background:var(--flaeche)}
.mm-fuss{padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--linie2)}
.mm-fuss .nk-knoepfe button.k{height:40px;min-height:40px}
.mknopf{width:40px;height:40px;display:grid;place-items:center;border:0;background:none;border-radius:var(--rund2);
  color:var(--text2);cursor:pointer;flex:none}
.mknopf:hover{background:var(--flaeche2);color:var(--text)}
button.mavatar{border:0;cursor:pointer;width:36px;height:36px}
@keyframes mm-hoch{from{transform:translateY(30px);opacity:.5}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){ .mm-blatt{animation:none} }

/* --------------------------------------------------------------- Bühne */
main{padding:var(--a5) var(--a6) 56px}
.haftleiste,.kopfzeile{background:color-mix(in srgb, var(--grund) 92%, transparent);
  backdrop-filter:saturate(1.4) blur(8px)}
.haftleiste{margin:-20px calc(-1 * var(--a6)) var(--a4);padding:20px var(--a6) 0}
.kopfzeile{margin:-20px calc(-1 * var(--a6)) var(--a4);padding:20px var(--a6) var(--a3)}
.haftleiste .kopfzeile{margin:0;padding:0 0 var(--a3)}
.kopfzeile{gap:var(--a2) var(--a3)}
.kopfzeile h1{font-size:var(--fs-xl);font-weight:650;letter-spacing:-.25px}
.ueber{font-size:10.5px;letter-spacing:1px;color:var(--text3)}
.kopfknoepfe{display:flex;gap:var(--a2);flex-wrap:wrap;align-items:center}
.kopfsymbole{display:flex;gap:6px;align-items:center;padding-left:var(--a2);
  border-left:1px solid var(--linie);margin-left:var(--a1);flex-shrink:0}
.kopfsymbole > button{flex-shrink:0}
/* Etappe 24: Tabellen-Knopf nur noch als Symbol wie die Nachbarn */
button.k.datenknopf{color:var(--text2)}
button.k.datenknopf:hover{color:var(--akz);border-color:var(--akz)}
@media (max-width:1280px){ .nurbreit{display:none} }

/* Reiter (nur Seiten mit mehreren Ansichten) */
.modulreiter{gap:4px;margin:var(--a2) 0 0;padding:3px;background:var(--flaeche2);
  border-radius:var(--rund2);display:inline-flex;border:1px solid var(--linie2)}
.modulreiter button{border:none;border-radius:6px;padding:0 var(--a3);height:28px;
  font-size:var(--fs-s);color:var(--text2);display:inline-flex;align-items:center;gap:6px}
.modulreiter button:hover{background:var(--flaeche);color:var(--text)}
.modulreiter button[aria-current="page"]{background:var(--flaeche);color:var(--text);font-weight:600;
  box-shadow:var(--schatten);border-bottom:none}

/* ---------------------------------------------------------------- Knöpfe */
button.k,a.k{height:var(--hoehe);min-height:var(--hoehe);border-radius:var(--rund2);
  font-size:var(--fs-s);font-weight:550;border-color:var(--rand);
  transition:background .12s, border-color .12s, color .12s, box-shadow .12s}
button.k:focus-visible,a.k:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--akz)}
button.k.haupt{box-shadow:0 1px 2px color-mix(in srgb, var(--akz) 35%, transparent)}
button.k.mini{height:var(--hoehe-mini);min-height:var(--hoehe-mini);font-size:12px}
button.k:disabled{opacity:.5;cursor:not-allowed}
button.k.gefahr{color:var(--fehler);border-color:color-mix(in srgb, var(--fehler) 45%, var(--rand))}
button.k.gefahr:hover{background:color-mix(in srgb, var(--fehler) 10%, var(--flaeche));border-color:var(--fehler)}
button.k.symbol{width:var(--hoehe);padding:0}
/* Schloss: Farben aus der Farbwelt statt fester Werte */
button.k.schutzknopf.zu,:root[data-thema="dunkel"] button.k.schutzknopf.zu{color:var(--fehler);
  border-color:color-mix(in srgb, var(--fehler) 45%, var(--rand));background:color-mix(in srgb, var(--fehler) 8%, var(--flaeche))}
button.k.schutzknopf.auf,:root[data-thema="dunkel"] button.k.schutzknopf.auf{color:var(--zub);
  border-color:color-mix(in srgb, var(--zub) 45%, var(--rand));background:color-mix(in srgb, var(--zub) 8%, var(--flaeche))}

/* Segmentleisten */
.segment{border-radius:var(--rund2);border-color:var(--linie);background:var(--flaeche2);padding:2px;gap:2px}
.segment button{border:none!important;border-radius:6px;height:28px;font-size:var(--fs-s)}
.segment button:hover{background:var(--flaeche)}
.segment button[aria-current="true"]{background:var(--flaeche);color:var(--text);box-shadow:var(--schatten)}
.segment button[aria-current="true"] span{color:var(--text3);opacity:1}

/* --------------------------------------------------------------- Felder */
input,select,textarea{border-radius:var(--rund2);border-color:var(--rand);font-size:var(--fs-s);
  transition:border-color .12s, box-shadow .12s}
input:hover,select:hover,textarea:hover{border-color:var(--text3)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--akz);box-shadow:var(--ring)}
input.zelle:focus{box-shadow:none;outline:2px solid var(--akz);outline-offset:-2px}
label.feld>span{font-size:10.5px;letter-spacing:.6px;margin-bottom:5px}

/* ---------------------------------------------------------------- Karten */
.karte{border-radius:var(--rund);border-color:var(--linie);box-shadow:var(--schatten)}
.kachel{border-radius:var(--rund)}
.abschnitt{font-size:10.5px;letter-spacing:1px}
.hinweis{background:var(--akz-t);border:1px solid color-mix(in srgb, var(--akz) 25%, var(--linie));
  border-radius:var(--rund2);padding:9px 13px;margin:0 0 var(--a3);font-size:var(--fs-s);color:var(--text2);line-height:1.55}
.hinweis b{color:var(--text)}
.warn{border-radius:var(--rund2)}

/* --------------------------------------------------------------- Tabellen */
th{background:var(--kopf);font-size:10.5px;letter-spacing:.6px;padding:8px 10px}
td{padding:5px 10px}
tbody tr:hover > td{background:color-mix(in srgb, var(--akz) 4%, transparent)}
.karte > table, .karte > .tabhuelle{border-radius:var(--rund)}

/* --------------------------------------------------------------- Dialoge */
dialog{border-radius:14px;border-color:var(--linie);box-shadow:var(--schatten-hoch)}
dialog::backdrop{background:rgba(10,14,22,.45);backdrop-filter:blur(2px)}
/* 4.0 (Etappe 2): jedes Fenster = Kopf (Titel + Schließen) · Inhalt (scrollt)
   · Fußleiste (Knöpfe rechts, „← Zurück“ links). Kopf und Fuß bleiben stehen. */
dialog[open]{display:flex;flex-direction:column;max-height:calc(100dvh - 48px);overflow:hidden}
dialog > form{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}
dialog .inhalt{flex:1 1 auto;min-height:0;overflow:auto;padding:0 22px;scrollbar-width:thin}
dialog .inhalt > :last-child:not(.knopfreihe){margin-bottom:var(--a5)}
dialog .inhalt > h2:first-child{position:sticky;top:0;z-index:5;margin:0 -22px var(--a4);padding:18px 60px 14px 22px;
  background:var(--flaeche);border-bottom:1px solid var(--linie2);font-size:17px;font-weight:700;line-height:1.3}
dialog h2{font-size:var(--fs-l);font-weight:650;margin-bottom:var(--a4)}
.fenster-zu{position:absolute;top:11px;right:12px;width:36px;height:36px;display:grid;place-items:center;border:0;
  background:none;border-radius:var(--rund2);color:var(--text2);cursor:pointer}
.fenster-zu:hover{background:var(--flaeche2);color:var(--text)}
dialog .inhalt > .knopfreihe:last-child{position:sticky;bottom:0;z-index:5;margin:var(--a5) -22px 0;padding:12px 22px;
  background:var(--flaeche);border-top:1px solid var(--linie2);justify-content:flex-end;flex-wrap:wrap}
dialog .knopfreihe .k.links{margin-right:auto}

/* „Als PDF“ – überall derselbe Knopf, neben „Aktionen“ */
.knopfgruppe{display:inline-flex;gap:var(--a2);align-items:center;flex-wrap:wrap}
button.k.pdfknopf{gap:7px;color:var(--text)}
button.k.pdfknopf .sym{display:inline-flex;color:var(--akz)}
button.k.pdfknopf:disabled{opacity:.6}
button.k.pdfknopf.mini{gap:5px}
/* Etappe 10: Fenster „Als PDF speichern“ mit mehreren Inhalten zur Wahl */
.pdfwahl-wo{margin:-6px 0 12px;color:var(--text3)}
.pdfwahl fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pdfwahl legend{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);margin-bottom:6px;padding:0}
.pdfoption{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--linie);border-radius:var(--rund);
  background:var(--flaeche);cursor:pointer}
.pdfoption:hover{border-color:var(--akz)}
.pdfoption:has(input:checked){border-color:var(--akz);background:var(--akz-t);box-shadow:inset 0 0 0 1px var(--akz)}
.pdfoption input{width:18px;height:18px;min-height:0;margin:2px 0 0;flex:none;accent-color:var(--akz)}
.pdfoption span{display:flex;flex-direction:column;gap:2px;min-width:0}
.pdfoption small{color:var(--text3);font-size:12.5px;line-height:1.45}
.pdfwahl{display:flex;flex-direction:column;gap:16px}
.pdfwahl .pdfwahl-wo{margin:-6px 0 -4px}
.pdfwahl-inhalt{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:var(--rund);background:var(--flaeche2)}
.pdfwahl-inhalt small{color:var(--text3);font-size:12.5px}
.pdfformate{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pdfformate .pdfoption{padding:10px 12px;align-items:center}
.pdfkopf{font-size:14px}
.wahlmenue{border-radius:var(--rund)!important;box-shadow:var(--schatten-hoch)!important}
#meldung{border-radius:var(--rund);padding:11px 16px;box-shadow:var(--schatten-hoch)}

/* ------------------------------------------- Monatsplan (4.0, Etappe 3) */
/* Auswahl-Leiste: erscheint nur bei angehakten Zeilen, schwebt mittig unten. */
.ablage{left:calc(var(--nav-breite) + (100vw - var(--nav-breite)) / 2);right:auto;bottom:20px;transform:translateX(-50%);
  gap:4px;padding:6px;align-items:center;flex-wrap:nowrap;max-width:calc(100vw - var(--nav-breite) - 32px);overflow-x:auto;
  background:var(--meldung);color:var(--meldung-t);border:0;border-radius:var(--rund);box-shadow:var(--schatten-hoch)}
.ablage .al-text{padding:0 10px 0 8px;white-space:nowrap;font-size:var(--fs-s)}
.ablage .al-text b{color:var(--meldung-t)}
.ablage .trenner{background:var(--meldung-r);height:24px;margin:0 2px;flex:none}
.ablage button.k{background:none;border-color:transparent;color:var(--meldung-t);box-shadow:none;white-space:nowrap;flex:none}
.ablage button.k:hover{background:color-mix(in srgb, var(--meldung-t) 14%, transparent)}
.ablage button.k.haupt{background:var(--akz);border-color:var(--akz);color:var(--akz-auf)}
.ablage button.k.gefahr{color:color-mix(in srgb, var(--fehler) 70%, var(--meldung-t))}
.ablage .al-zu{margin-left:2px}
.ablage > span:not(.al-text):not(.trenner){white-space:nowrap;padding:0 6px;font-size:var(--fs-s)}
body:has(.ablage) #meldung{bottom:84px}

/* Handy: Tageskarten statt Tabelle (Etappe 3b) */
.plan-karten{display:none}
.pk-woche{display:flex;gap:10px;align-items:baseline;padding:var(--a3) 2px var(--a1);color:var(--text2)}
.pk-woche b{font-family:var(--schrift-titel);color:var(--text)}
.pk-karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rund);box-shadow:var(--schatten);overflow:hidden}
.pk-karte.heute{border-color:var(--akz);box-shadow:0 0 0 1px var(--akz)}
.pk-karte.gewaehlt .pk-kopf{background:var(--akz-t)}
.pk-kopf{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px}
.pk-titel{display:flex;align-items:baseline;gap:8px;flex:1;min-width:0}
.pk-titel b{font-family:var(--schrift-titel);font-size:17px}
.pk-titel > span{color:var(--text3);font-size:13px}
.pk-titel .pk-heute{color:var(--akz-stark);background:var(--akz-t);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}
.pk-werte{color:var(--text2);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.pk-frei{color:var(--text3);font-size:13px}
.pk-karte.frei .pk-kopf{padding:10px 14px}
.pk-karte.frei .pk-titel b{color:var(--text3)}
.pk-last{margin:0 14px 10px}
.pk-einfuegen{margin:0 14px 10px;width:calc(100% - 28px)}
.pk-liste{list-style:none;margin:0;padding:0;border-top:1px solid var(--linie2)}
.pk-zeile{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--linie2)}
.pk-zeile:first-child{border-top:0}
.pk-zeile.gewaehlt{background:var(--akz-t)}
.pk-name{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.pk-name small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--eis)}
.pk-zeile.frucht .pk-name small{color:var(--frucht)}
.pk-zeile.zub .pk-name small{color:var(--zub)}
.pk-name b{font-weight:600;font-size:15px}
.pk-name .pk-mix{text-transform:none;letter-spacing:0;font-weight:500;color:var(--text3);font-size:12.5px}
.pk-mengen{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-variant-numeric:tabular-nums;flex:none}
.pk-mengen > span{display:flex;gap:6px;align-items:baseline}
.pk-mengen small{color:var(--text3);font-size:12px}
.pk-mengen b{font-family:var(--schrift-titel);font-size:16px}
.pk-fuss{display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--linie2)}
.pk-fuss .k{flex:1 1 0}
/* Tages-Blatt mit großen Feldern */
.tb-blatt{display:flex;flex-direction:column;gap:12px}
.tb-sorte{border:1px solid var(--linie);border-radius:var(--rund);padding:10px 12px 12px}
.tb-kopf{display:flex;flex-direction:column;line-height:1.3;margin-bottom:8px}
.tb-kopf small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--eis)}
.tb-sorte.frucht .tb-kopf small{color:var(--frucht)}
.tb-kopf b{font-size:15px}
.tb-felder{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.tb-feld{display:flex;flex-direction:column;gap:4px;min-width:0}
.tb-feld > span{font-size:12px;font-weight:600;color:var(--text2)}
#dialog .tb-feld input{height:46px;min-height:46px;font-size:19px;font-family:var(--schrift-titel);font-weight:700;font-variant-numeric:tabular-nums}
#dialog .tb-feld.tb-mix input{font-size:16px;font-weight:600}

/* ---------------------------------------------- Tagesplan (4.0, Etappe 4)
   Sortenkarten wie in der bisherigen Handy-App; breit zwei nebeneinander. */
.tp-raster{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));align-items:start}
.tp-karte{background:var(--flaeche);border:1px solid var(--linie);border-top:3px solid var(--eis);border-radius:var(--rund);
  box-shadow:var(--schatten);overflow:hidden;min-width:0}
.tp-karte.frucht{border-top-color:var(--frucht)}
.tp-karte.zub{border-top-color:var(--zub)}
.tp-karte.vorl{border-top-color:var(--offen)}
.tp-kopf{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;padding:14px 14px 10px;
  border:0;background:none;color:var(--text);text-align:left;cursor:pointer;font:inherit}
.tp-kopf:hover .tp-pfeil{color:var(--text)}
.tp-nr{width:38px;height:38px;border-radius:10px;background:var(--flaeche2);color:var(--text2);display:grid;place-items:center;
  font-family:var(--schrift-titel);font-weight:700;font-size:16px}
.tp-name{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.tp-name .kunde{font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--eis)}
.tp-karte.frucht .tp-name .kunde{color:var(--frucht)}
.tp-karte.zub .tp-name .kunde{color:var(--zub)}
.tp-name b{font-family:var(--schrift-titel);font-size:20px;font-weight:800;letter-spacing:-.01em;overflow-wrap:anywhere}
.tp-pfeil{display:inline-flex;color:var(--text3);transition:transform .15s}
.tp-karte.offen .tp-pfeil{transform:rotate(90deg)}
.tp-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 12px}
.tp-chip{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 11px;border:1px solid var(--linie);border-radius:999px;
  font-size:12.5px;color:var(--text2);font-variant-numeric:tabular-nums;white-space:nowrap}
.tp-chip b{color:var(--text);font-weight:700}
/* MHD hebt sich ab: größer, in der Akzentfarbe */
.tp-chip.tp-mhd{--mhd:color-mix(in srgb, var(--akz) 62%, #000);height:34px;padding:0 14px;font-size:14px;font-weight:700;
  letter-spacing:.02em;color:var(--mhd);background:var(--akz-t);border:1.5px solid var(--akz)}
.tp-chip.tp-mhd b{color:var(--mhd);font-family:var(--schrift-titel);font-size:17px;font-weight:800}
table.tagesblatt td.tl-mhd{color:color-mix(in srgb, var(--akz) 62%, #000);font-family:var(--schrift-titel);font-size:15px;font-weight:800;white-space:nowrap}
[data-thema="dunkel"] .tp-chip.tp-mhd{--mhd:var(--akz)}
[data-thema="dunkel"] table.tagesblatt td.tl-mhd{color:var(--akz)}
.tp-gebinde{border-top:1px solid var(--linie);padding:0 14px}
.tp-geb{display:flex;align-items:center;gap:12px;padding:12px 0}
.tp-geb + .tp-geb{border-top:1px solid var(--linie2)}
.tp-geb-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.tp-geb-text > span{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.tp-geb-text > span b{font-family:var(--schrift-titel);font-size:16px;font-weight:700}
.tp-geb-text small{color:var(--text3);font-size:12.5px}
.tp-menge{display:flex;flex-direction:column;align-items:flex-end;flex:none}
.tp-menge b{font-family:var(--schrift-titel);font-size:28px;font-weight:800;line-height:1.05;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.tp-menge small{color:var(--text3);font-size:12.5px}
.tp-detail{border-top:1px solid var(--linie);background:var(--flaeche2);padding:12px 14px}
.tp-detail dl{display:grid;grid-template-columns:minmax(80px,auto) minmax(0,1fr);gap:7px 16px;margin:0;font-size:13.5px}
.tp-detail dt{color:var(--text3)}
.tp-detail dd{margin:0;min-width:0;overflow-wrap:anywhere}
.tp-detail-fuss{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--linie)}

/* --------------------------------------------- Mixplanung (4.0, Etappe 5)
   Wie im Entwurf: Summen, je Tag die Aufträge als Karten; Stückzahlen,
   Puffer und Mix direkt in der Karte, Zahlen linksbündig. */
.mp-summen{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;margin-bottom:14px}
.mp-summe{display:flex;flex-direction:column;gap:2px;min-width:120px;padding:10px 16px;background:var(--flaeche);
  border:1px solid var(--linie);border-radius:var(--rund);box-shadow:var(--schatten)}
.mp-summe span{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}
.mp-summe b{font-family:var(--schrift-titel);font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}
.mp-summe.warn b{color:var(--warn)}
.mp-summe-merker{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mp-alle{align-self:center;margin-left:auto}
.mixtag{margin-bottom:22px;display:flex;flex-direction:column;gap:12px}
.mixtagkopf{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:4px 0 0;margin:0;background:none;border:0}
.mixtagkopf h2{font-family:var(--schrift-titel);font-size:19px;font-weight:800;margin:0}
.mp-karte{margin:0;border-left:1px solid var(--linie);border-top:3px solid var(--eis);overflow:hidden;padding:0}
.mp-karte.kritisch{border-left-color:var(--linie);border-top-color:var(--warn)}
.mp-karte .mp-kopf{gap:8px 12px;padding:14px 16px 12px;border-bottom:1px solid var(--linie2)}
.mp-name{display:flex;flex-direction:column;min-width:0;line-height:1.25;margin-right:4px}
.mp-name .kunde{font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--eis)}
.mp-name b{font-family:var(--schrift-titel);font-size:18px;font-weight:800;overflow-wrap:anywhere}
.mp-karte .mp-gebinde{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px 16px;padding:12px 16px;
  border-bottom:1px solid var(--linie2)}
.mp-karte .mp-geb{display:flex;flex-direction:column;align-items:stretch;gap:4px;font-size:13px}
.mp-karte .mp-gebname small{color:var(--text3);font-weight:500}
.mp-karte .mp-gebl{color:var(--text3);font-size:12px}
.mp-karte .mp-gebl b{color:var(--text2);font-variant-numeric:tabular-nums}
.mp-karte input.mp-eingabe{width:100%;height:36px;min-height:36px;text-align:left;font-weight:600;font-variant-numeric:tabular-nums;
  border-color:var(--linie);background:var(--feld)}
.mp-karte input.mp-stueck{width:100%;font-size:16px}
.mp-zahlen{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--linie2)}
.mp-zahlen.duo{grid-template-columns:minmax(0,1fr)}
.mp-zahlen > .mp-zahl{background:var(--flaeche);padding:10px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.mp-zahl > span{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}
.mp-zahlen .mp-zahl > b{font-family:var(--schrift-titel);font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}
.mp-zahlen .mp-zahl > b.mp-minus{color:var(--fehler)}
.mp-karte .mp-duomix{margin:0;border-top:1px solid var(--linie2)}
.mp-karte .mp-duozeile{display:block;padding:0;border-bottom:1px solid var(--linie2)}
.mp-karte .mp-duoname{padding:10px 16px 6px;min-width:0}
.mp-karte .mp-duozeile .mp-zahlen{grid-template-columns:repeat(5,minmax(0,1fr))}
/* 3.80.0: gemeinsamer Mix – ein Block je Rezept und Tag */
.mp-gruppe{display:flex;flex-direction:column;gap:10px;padding:12px;border:1.5px solid var(--akz);border-radius:var(--rund);
  background:var(--akz-t);margin:0 0 4px}
.mp-gruppenkopf{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:0 4px;color:var(--akz)}
.mp-gruppenkopf b{font-family:var(--schrift-titel);font-size:15px;font-weight:800;color:var(--text)}
.mp-gruppenkopf .klein{color:var(--text2)}
.mp-zahlen.mp-mitzahlen{grid-template-columns:repeat(5,minmax(0,1fr))}
.mp-zahlen .mp-bei{grid-column:span 4}
.mp-beiknopf{font-size:14px;color:var(--text2);padding:4px 0}
.mp-beiknopf b{font-family:var(--schrift-titel);font-size:16px;color:var(--akz)}
.mp-karte .mp-mit{margin-left:6px}
.mp-karte.blitz{box-shadow:0 0 0 3px var(--akz)}
@media (max-width:820px){ .mp-gruppe{padding:8px} .mp-zahlen.mp-mitzahlen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mp-zahlen .mp-bei{grid-column:span 1} }
.mp-karte .mp-hinweise{padding:10px 16px;border-top:1px solid var(--linie2);background:var(--warn-t,var(--flaeche2));font-size:13px;line-height:1.6}
.mp-karte .mp-optionen{padding:12px 16px;border-top:1px solid var(--linie2)}
.mp-karte .mp-option{background:var(--flaeche2)}
.mp-fuss{display:flex;gap:8px;padding:8px 16px;border-top:1px solid var(--linie2)}
.mp-fuss .k[aria-expanded="true"] .sym{transform:rotate(90deg)}
.mp-karte .mp-detail{padding:12px 16px 14px;border-top:1px solid var(--linie2);background:var(--flaeche2)}
.mp-zutatenhuelle{overflow-x:auto}
.mp-zutatenhuelle table.mp-zutaten{min-width:520px;background:var(--flaeche)}
.mp-gesamt{border-left:1px solid var(--linie);border-top:3px solid var(--akz)}
@media (max-width:1100px){
  .mp-zahlen,.mp-karte .mp-duozeile .mp-zahlen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mp-zahlen > .mp-planfeld{grid-column:1/-1}
}
@media (max-width:820px){
  .mp-summen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .mp-summe{min-width:0}
  .mp-summe-merker,.mp-alle{grid-column:1/-1;margin:0}
  .mp-karte .mp-gebinde{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mp-karte input.mp-eingabe{height:44px;min-height:44px;font-size:16px}
  .mixtagkopf .k{margin-left:auto}
  .mp-gesamt-rumpf{padding:0 12px 4px;overflow-x:auto}
  /* Zutaten am Handy: ohne Nr. und Anteil, Namen dürfen umbrechen */
  table.mp-zutaten,.mp-zutatenhuelle table.mp-zutaten{min-width:0;table-layout:auto}
  table.mp-zutaten col{width:auto!important}
  table.mp-zutaten td{white-space:normal;overflow:visible}
  table.mp-zutaten tr:not(.mp-gruppe) > :first-child,
  table.mp-zutaten:not(.mp-gesamttab) tr:not(.mp-gruppe) > :nth-child(3){display:none}
}

/* ---------------------------------------------- Dashboards (4.0, Etappe 8)
   Start: Kennzahlen, Bereiche, System, Woche, Was ansteht.
   Bereich: Kennzahlen, Schnellzugriff, Was ansteht des Bereichs. */
.dkpis{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.dkpis[data-anzahl="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}
.dkpi .z{font-family:var(--schrift-titel);font-weight:800;letter-spacing:-.01em}
.dkpi .t{display:flex;align-items:center;gap:8px}
.dkpi .dkpi-sym{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none;
  background:var(--akz-t);color:var(--akz-stark)}
.dkpi.rot .dkpi-sym{background:color-mix(in srgb, var(--fehler) 14%, transparent);color:var(--fehler)}
.dkpi.gelb .dkpi-sym{background:color-mix(in srgb, var(--warn) 14%, transparent);color:var(--warn)}
.dkpi.gruen .dkpi-sym{background:color-mix(in srgb, #2f8a5f 14%, transparent);color:#2f8a5f}
.dkpi .dkpi-sym .sym{display:inline-flex}
.dkpi.gross .z{font-size:30px}
/* Etappe 24: Muster-Kacheln wie die Kennzahl-Kacheln (auch im dunklen Design lesbar) */
.mu-kacheln{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.mu-kachel{font:inherit;color:var(--text);background:var(--flaeche);border:1px solid var(--linie);padding:12px 14px}
.mu-kachel:hover{border-color:var(--akz)}
.mu-kachel.an{border-color:var(--akz);box-shadow:0 0 0 1px var(--akz) inset;background:var(--akz-t)}
.mu-kachel .klein{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--text3)}
.mu-zahl{font-family:var(--schrift-titel);font-size:25px;font-weight:800;letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums}
.mu-zahl.gruen{color:#2f8a5f} .mu-zahl.rot{color:var(--fehler)}
[data-thema="dunkel"] .mu-zahl.gruen{color:#6fc79a}
.dabschnitt{display:flex;align-items:baseline;gap:10px;margin:6px 0 10px}
.dabschnitt h2{font-family:var(--schrift-titel);font-size:16px;font-weight:800;margin:0}
.dbereiche{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;margin-bottom:14px}
.dbereich{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rund);box-shadow:var(--schatten);
  overflow:hidden;display:flex;flex-direction:column;min-width:0}
.dbereich-kopf{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;
  padding:14px 14px 12px;border:0;background:none;font:inherit;color:var(--text);text-align:left;cursor:pointer}
.dbereich-kopf:hover{background:var(--flaeche2)}
.dbereich-kopf > .sym{color:var(--text3)}
.dsym{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex:none;
  background:color-mix(in srgb, var(--ton, var(--akz)) 14%, transparent);color:var(--ton, var(--akz))}
.dbereich-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.dbereich-text b{font-family:var(--schrift-titel);font-size:17px;font-weight:800}
.dbereich-text small{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--text3);font-size:12.5px}
.dbereich-text .navzahl{margin:0}
.dverweise{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 14px}
.dverweis{height:30px;padding:0 11px;border:1px solid var(--linie);border-radius:999px;background:var(--flaeche);
  font:inherit;font-size:12.5px;color:var(--text2);cursor:pointer;white-space:nowrap}
.dverweis:hover{border-color:var(--akz);color:var(--akz)}
.dsystem{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;padding:10px 14px;margin-bottom:14px;--ton:var(--text2)}
.dsystem .dsym{width:32px;height:32px}
.dsystem .dverweise{padding:0;margin-left:auto}
.dzugriffe{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:10px;margin-bottom:16px}
.dzugriff{display:flex;align-items:center;gap:12px;min-width:0;padding:12px 14px;background:var(--flaeche);border:1px solid var(--linie);
  border-radius:var(--rund);box-shadow:var(--schatten);font:inherit;color:var(--text);text-align:left;cursor:pointer}
.dzugriff:hover{border-color:var(--akz)}
.dzugriff b{flex:1;min-width:0;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dzugriff .navzahl{margin:0}
@media (max-width:1180px){ .dkpis[data-anzahl="5"]{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:820px){
  .dkpis,.dkpis[data-anzahl]{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .dkpi.gross{grid-column:1/-1}
  .dkpi .z{font-size:22px}
  .dkpi.gross .z{font-size:26px}
  .dtage{grid-template-columns:repeat(4,minmax(0,1fr))}
  .dsystem .dverweise{margin-left:0}
  .dtab .anteil{display:none}
}

/* ------------------------------------- Zugänge & Rechte (4.0, Etappe 9) */
.zg-punkt{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none;background:var(--stufe);
  --stufe:var(--text3)}
.zg-punkt.s-kein{background:none;box-shadow:inset 0 0 0 1.5px var(--rand)}
.s-lesen{--stufe:var(--eis)} .s-arbeiten{--stufe:var(--akz)} .s-verwalten{--stufe:var(--warn)}
.zg-legende{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.zg-legende > div{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rund);padding:10px 12px;
  display:flex;flex-direction:column;gap:3px}
.zg-legende b{display:flex;align-items:center;gap:8px;font-size:13.5px}
.zg-legende small{color:var(--text3);font-size:12px;line-height:1.45}
.zg-raster{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:14px;align-items:start;margin-bottom:14px}
.zg-personen{display:flex;flex-direction:column;gap:6px}
.zg-person{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:var(--flaeche);border:1px solid var(--linie);
  border-radius:var(--rund);font:inherit;color:var(--text);text-align:left;cursor:pointer}
.zg-person:hover{border-color:var(--akz)}
.zg-person[aria-pressed="true"]{border-color:var(--akz);box-shadow:inset 3px 0 0 var(--akz);background:var(--akz-t)}
.zg-person.gesperrt{opacity:.6}
.zg-ptext{display:flex;flex-direction:column;min-width:0}
.zg-ptext b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zg-ptext small{color:var(--text3);font-size:12px}
.zg-kopf .avatar{width:40px;height:40px;font-size:14px}
.zg-matrix{padding:0;overflow:hidden;margin:0}
.zg-kopf{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:14px 16px;border-bottom:1px solid var(--linie)}
.zg-wer{display:flex;flex-direction:column;min-width:0}
.zg-wer b{font-family:var(--schrift-titel);font-size:18px;font-weight:800}
.zg-wer small{color:var(--text3);font-size:12.5px}
.zg-vorlage{width:auto;min-width:190px}
.zg-hinweis{padding:10px 16px;background:var(--flaeche2);color:var(--text2);font-size:13px;border-bottom:1px solid var(--linie2)}
.zg-zeile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:center;padding:12px 16px;
  border-bottom:1px solid var(--linie2)}
.zg-name{display:flex;align-items:center;gap:12px;min-width:0}
.zg-name > div{display:flex;flex-direction:column;min-width:0}
.zg-name small{color:var(--text3);font-size:12px;line-height:1.4}
.zg-stufen{display:inline-grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:3px;background:var(--flaeche2);
  border:1px solid var(--linie);border-radius:10px}
.zg-stufen button{display:flex;align-items:center;justify-content:center;gap:6px;height:32px;min-width:88px;padding:0 10px;border:0;
  border-radius:7px;background:none;font:inherit;font-size:13px;color:var(--text2);cursor:pointer;white-space:nowrap}
.zg-stufen button:hover:not(:disabled){color:var(--text)}
.zg-stufen button[aria-checked="true"]{background:var(--flaeche);color:var(--text);font-weight:650;box-shadow:var(--schatten)}
.zg-stufen button:disabled{cursor:default;opacity:.55}
.zg-leiste{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 16px;background:var(--flaeche2);color:var(--text3);font-size:13px}
.zg-leiste.geaendert{background:color-mix(in srgb, var(--warn) 12%, var(--flaeche));color:var(--warn);font-weight:600}
.zg-alle{padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.zg-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12.5px;color:var(--text2)}
.zg-badge.s-kein{color:var(--text3)}
@media (max-width:1100px){
  .zg-raster{grid-template-columns:minmax(0,1fr)}
  .zg-personen{flex-direction:row;overflow-x:auto;padding-bottom:4px}
  .zg-person{width:auto;flex:none;max-width:240px}
  .zg-legende{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .zg-zeile{grid-template-columns:minmax(0,1fr)}
  .zg-stufen{display:grid;width:100%}
  .zg-stufen button{min-width:0;height:40px;padding:0 4px}
  .zg-kopf .zg-vorlage{flex:1 1 100%;order:5}
  .zg-legende small{display:none}
}

/* ------------------------------- Einstellungen & Formeln (4.0, Etappe 11) */
.einheitfeld{display:flex;align-items:center;gap:8px}
.einheitfeld input{flex:1;min-width:0}
.einheitfeld em{font-style:normal;color:var(--text3);font-size:13px}
.formelverweis{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:14px 16px;line-height:1.5}
.fk-seite{display:flex;gap:18px;align-items:flex-start}
.fk-seitenspalte{width:340px;flex-shrink:0;min-width:0}
.fk-seite > .wg{min-width:0}
.fk-liste{display:flex;flex-direction:column;gap:10px}
.fk{padding:0;overflow:hidden;margin:0}
.fk.inaktiv{opacity:.65}
.fk-kopf{display:flex;align-items:flex-start;gap:10px;padding:12px 14px 8px}
.fk-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.fk-name input.zelle{width:100%;text-align:left;font-family:var(--schrift-titel);font-size:16px;font-weight:700;
  border-color:transparent;background:none;padding-left:0}
.fk-name input.zelle:hover:not(:disabled),.fk-name input.zelle:focus{border-color:var(--linie);background:var(--feld);padding-left:6px}
.fk-name small{color:var(--text3);font-size:12px;line-height:1.45}
.fk-probe{flex:none;align-self:center;padding:4px 10px;border-radius:999px;background:var(--flaeche2);font-size:13px;white-space:nowrap}
.fk-kopf .schalter,.fk-kopf .k{flex:none;align-self:center}
.fk-formel{padding:0 14px 10px}
.fk-formel textarea.formelfeld{min-width:0;font-size:13.5px;background:var(--feld);border-color:var(--linie);padding:8px 10px}
.fk-felder{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;padding:10px 14px 12px;border-top:1px solid var(--linie2);
  background:var(--flaeche2)}
.fk-fach{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:13px}
.fk-fach > span{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}
.fk-fach select,.fk-fach input.zelle{width:100%;text-align:left}
@media (max-width:1100px){
  .fk-seite{flex-direction:column-reverse}
  .fk-seitenspalte{width:auto;align-self:stretch}
}
@media (max-width:820px){
  .fk-felder{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fk-kopf{flex-wrap:wrap}
  .fk-name{flex:1 1 100%}
  .fk-probe{margin-right:auto}
}

/* --------------------------------------- Einkaufsliste am Handy (4.0, Etappe 12) */
.ek-filter > button.ek-filterknopf{display:none}
@media (max-width:820px){
  .ek-filter{margin-bottom:var(--a3)}
  .ansichtsleiste button.ek-naechste{display:none}
  .ek-filter > button.ek-filterknopf{display:inline-flex;width:100%;justify-content:flex-start;gap:8px;font-weight:600}
  .ek-filter > button.ek-filterknopf .navzahl{margin-left:auto}
  .ek-filter > button.ek-filterknopf .sym{transition:transform .15s}
  .ek-filter:not(.zu) > button.ek-filterknopf .sym{transform:rotate(90deg)}
  .ek-filter.zu > .ek-tage{display:none}
  .ek-filter > .ek-tage{margin-top:8px}
  .ek-tage{max-height:none}
  /* Rohstoff-Liste: Name zuerst, Nummer klein dahinter */
  table.ek-tab.stapelbar > tbody > tr > td:nth-child(2){order:-1;flex:1 1 100%;font-weight:600}
  table.ek-tab.stapelbar > tbody > tr > td:nth-child(2)::before{content:none!important}
  table.ek-tab.stapelbar > tbody > tr > td:first-child{flex:0 1 auto;font-weight:400}
  table.ek-tab.stapelbar > tbody > tr.erg > td{font-weight:700}
  table.ek-tab.stapelbar input.zelle{width:110px}
}

/* -------------------------------------------- Verpackung (4.0, Etappe 13) */
.bst-karte{padding:0;overflow:hidden}
.bst-kopf{display:flex;align-items:baseline;gap:10px;padding:12px 16px;border-bottom:1px solid var(--linie)}
.bst-kopf b{font-family:var(--schrift-titel);font-size:16px;font-weight:800}
.bst-karte table.bestandblatt{border:0;border-radius:0}
@media (max-width:820px){
  .ampelfilter{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .ampelfilter .ampelchip{flex:none}
  table.bestandblatt.stapelbar > tbody > tr{position:relative;padding-right:52px}
  table.bestandblatt.stapelbar > tbody > tr > td:last-child{position:absolute;top:8px;right:8px}
  table.bestandblatt.stapelbar > tbody > tr > td:last-child::before{content:none!important}
  table.bestandblatt.stapelbar > tbody > tr > td:nth-last-child(2){flex:1 1 100%}
  table.bestandblatt.stapelbar > tbody > tr > td:nth-last-child(2)::before{content:none!important}
  .bst-detail{margin:0 0 14px!important}
  .ansichtsleiste .leistentext{flex:1 1 100%;white-space:normal}
  /* Bestellungen (Etappe 14): Zeile als Karte – Nummer oben, Knöpfe oben rechts */
  table.lgr-haupt.stapelbar > tbody > tr:not(.lgr-detail){position:relative;padding-right:118px}
  table.lgr-haupt.stapelbar > tbody > tr > td.lgr-pfeil{display:none}
  table.lgr-haupt.stapelbar > tbody > tr:not(.lgr-detail) > td:nth-child(2){flex:1 1 100%;font-weight:600}
  table.lgr-haupt.stapelbar > tbody > tr:not(.lgr-detail) > td:nth-child(2)::before{content:none!important}
  table.lgr-haupt.stapelbar > tbody > tr:not(.lgr-detail) > td:last-child{position:absolute;top:8px;right:8px}
  table.lgr-haupt.stapelbar > tbody > tr:not(.lgr-detail) > td:last-child::before{content:none!important}
  table.lgr-haupt.stapelbar > tbody > tr.lgr-detail{padding:4px 8px 12px;background:var(--flaeche2)}
  table.lgr-haupt.stapelbar > tbody > tr.lgr-detail > td{flex:1 1 100%;font-weight:400}
  table.lgr-haupt.stapelbar > tbody > tr.lgr-detail > td::before{content:none!important}
  table.lgr-haupt.stapelbar > tfoot{display:block}
  table.lgr-haupt.stapelbar > tfoot > tr{display:flex;justify-content:space-between;padding:10px 12px}
  table.lgr-haupt.stapelbar > tfoot td:empty{display:none}
  .kette.gross{flex-wrap:wrap}
  .ansichtsleiste > label.feldchen:has(input[type=date]){flex:1 1 calc(50% - 8px);min-width:0}
  .ansichtsleiste > label.feldchen:has(input[type=date]) input{width:100%}
}

/* --------------------------------------------- Freigaben (4.0, Etappe 15) */
.fg-gruppe{margin-bottom:18px}
.fg-gruppenkopf{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 10px}
.fg-gruppenkopf h3{margin:0;font-family:var(--schrift-titel);font-size:16px;font-weight:800}
.fg-gruppenkopf .navzahl{margin:0}
.fg-gruppenknopf{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:4px 0;font:inherit;color:var(--text);cursor:pointer}
.fg-gruppenknopf .sym{color:var(--text3);transition:transform .15s}
.fg-gruppenknopf[aria-expanded="true"] .sym{transform:rotate(90deg)}
.fg-gruppe.zu{margin-bottom:6px}
.fg-mehr{width:100%;justify-content:center}
.karte.fg-karte{padding:14px 16px;margin-bottom:10px;border-left:3px solid var(--rand)}
.karte.fg-karte.fg-sicher{border-left-color:var(--ok,#2f8a5f)}
.karte.fg-karte.fg-mittel{border-left-color:var(--akz)}
.karte.fg-karte.fg-unsicher{border-left-color:var(--warn)}
.karte.fg-karte.grau{border-left-color:var(--rand);opacity:.75}
.fg-karte .fg-icon{flex:0 0 36px;height:36px;border-radius:10px;font-size:16px;background:var(--akz-t);color:var(--akz-stark)}
.fg-karte .fg-titel > b{display:block;font-family:var(--schrift-titel);font-size:16px;font-weight:700;line-height:1.3;margin-bottom:4px;overflow-wrap:anywhere}
.fg-karte .fg-text{margin:8px 0 0 48px}
.fg-karte .fg-aktion{margin:12px 0 0 48px;padding-top:12px;border-top:1px solid var(--linie2)}
@media (max-width:820px){
  .fg-kopf{flex-wrap:wrap}
  .fg-karte .fg-links{max-width:none;flex:1 1 100%;justify-content:flex-start}
  .fg-karte .fg-text,.fg-karte .fg-aktion{margin-left:0}
  .fg-karte .fg-aktion button.k.mini{height:40px;min-height:40px;padding:0 14px}
  .fg-karte .fg-aktion .feldchen{flex:1 1 100%}
  .fg-karte .fg-aktion select,.fg-karte .fg-aktion input:not([type=checkbox]):not([type=radio]){max-width:none!important;width:100%!important}
}

/* ------------------------------------------- Posteingang (4.0, Etappe 16) */
/* Filter hinter einem Knopf: am großen Bildschirm unsichtbare Hülle */
.hfilter,.hfilter-inhalt{display:contents}
.hfilter > button.hfilter-knopf{display:none}
@media (max-width:820px){
  .hfilter{display:block;flex:1 1 100%}
  .hfilter > button.hfilter-knopf{display:inline-flex;width:100%;justify-content:flex-start;gap:8px;font-weight:600}
  .hfilter > button.hfilter-knopf .navzahl{margin-left:auto}
  .hfilter > button.hfilter-knopf .sym{transition:transform .15s}
  .hfilter:not(.zu) > button.hfilter-knopf .sym{transform:rotate(90deg)}
  .hfilter.zu > .hfilter-inhalt{display:none}
  .hfilter > .hfilter-inhalt{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
  .hfilter-inhalt > label.feldchen{flex:1 1 calc(50% - 8px);min-width:0}
  .hfilter-inhalt > label.feldchen select{width:100%}
  .hfilter-inhalt > input[type=search]{flex:1 1 100%;max-width:none!important}
  /* Nachricht als Karte: Betreff oben, Knöpfe oben rechts */
  table.pe-tab.stapelbar > tbody > tr > td:nth-child(3){order:-1;flex:1 1 100%;font-weight:600}
  table.pe-tab.stapelbar > tbody > tr > td:nth-child(3)::before{content:none!important}
  table.pe-tab.stapelbar > tbody > tr > td:nth-child(2){flex:0 1 auto;font-weight:400}
  table.pe-tab.stapelbar > tbody > tr > td:nth-child(2)::before{content:none!important}
  table.pe-tab.stapelbar > tbody > tr > td:first-child{flex:0 1 auto;font-weight:400}
  table.pe-tab.stapelbar > tbody > tr:not(.lgr-detail){padding-right:12px}
  table.pe-tab.stapelbar > tbody > tr:not(.lgr-detail) > td:last-child{position:static;order:99;flex:1 1 100%;display:flex;gap:8px;justify-content:flex-end}
  .pe-stand{font-size:13px}
  /* lange Wörter (Fehlertexte, Adressen) brechen statt seitlich hinauszuragen */
  table.stapelbar > tbody > tr > td{overflow-wrap:anywhere;min-width:0;max-width:100%!important}
  .pe-frage,.pe-frage *{overflow-wrap:anywhere;min-width:0}
  /* Etappe 18: Kennzahl-Kacheln (Kalkulation, Preisentwicklung …) am Handy zweispaltig */
  .zkacheln,.pa-kacheln{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  /* Prüflisten (Datenqualität) ohne Kopfzeile: Eintrag untereinander */
  table.prueftab,table.prueftab > tbody{display:block;width:100%}
  table.prueftab > tbody > tr{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-bottom:1px solid var(--linie2)}
  table.prueftab > tbody > tr > td{display:block;padding:0;border:0;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}
  table.prueftab > tbody > tr > td.n{display:flex;flex-wrap:wrap;gap:6px}
  table.prueftab > tbody > tr > td.n .k{margin-left:0!important}
}

/* --------------------------------------- Sorte eintragen (4.0, Etappe 17) */
.sorteeintragen{display:flex;flex-direction:column;gap:12px}
.se-treffer{display:flex;flex-direction:column;gap:4px}
.se-treffer:empty{display:none}
.se-treffer-zeile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:baseline;width:100%;padding:10px 12px;
  border:1px solid var(--linie);border-radius:var(--rund2);background:var(--flaeche);font:inherit;color:var(--text);text-align:left;cursor:pointer}
.se-treffer-zeile:hover{border-color:var(--akz);background:var(--akz-t)}
.se-treffer-zeile .kunde,.se-gewaehlt .kunde{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--eis)}
.se-treffer-zeile small{color:var(--text3)}
.se-treffer-zeile.neu{grid-template-columns:1fr;border-style:dashed}
.se-gewaehlt{display:flex;align-items:baseline;gap:10px;padding:10px 12px;border-radius:var(--rund2);background:var(--akz-t)}
.se-gewaehlt b{flex:1;font-family:var(--schrift-titel);font-size:17px;font-weight:800}
.se-mengen fieldset{border:0;margin:0;padding:0}
.se-mengen legend{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);margin-bottom:6px;padding:0}
.se-felder{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
#dialog .se-feld input{height:46px;min-height:46px;font-size:19px;font-family:var(--schrift-titel);font-weight:700;font-variant-numeric:tabular-nums}

/* ---------------------------- Monatsplan wie im Entwurf (4.0, Etappe 24)
   Je Tag eine Karte: Tageskopf (Häkchen, Datum, Auslastung, Knöpfe),
   Spaltenkopf, Zeilen mit Kunde über Sorte, Ergebnis. Lücke zwischen den
   Tagen bleibt. Mix linksbündig, Namensspalte nimmt den übrigen Platz. */
#buehne .wochenblatt{gap:16px}
#buehne table.planblatt{border-collapse:separate;border-spacing:0;background:var(--flaeche);border:1px solid var(--linie);
  border-radius:var(--rund);box-shadow:var(--schatten);overflow:hidden;font-size:14px}
#buehne .planblatt td{border-bottom:1px solid var(--linie2)}
#buehne .planblatt .gband,#buehne .planblatt th.gband{background:transparent}
/* Tageskopf */
#buehne .planblatt tr.tagband td,#buehne .planblatt tbody tr.tagband td:first-child{background:var(--flaeche2);box-shadow:none;
  border-top:0;border-bottom:1px solid var(--linie);padding:10px 16px;height:auto;letter-spacing:0;font-size:14px;font-weight:500}
#buehne .planblatt tr.tagband.voll td,#buehne .planblatt tbody tr.tagband.voll td:first-child{box-shadow:inset 3px 0 0 var(--fehler)}
#buehne .planblatt tr.tagband.frei td,#buehne .planblatt tbody tr.tagband.frei td:first-child{background:var(--flaeche2);color:var(--text3)}
#buehne .planblatt .tagband .tagkopf{display:flex;align-items:center;gap:12px;flex-wrap:wrap;position:sticky;left:16px;width:calc(100% - 4px)}
#buehne .planblatt .tagband .taglink{font-family:var(--schrift-titel);font-size:15px;font-weight:800;color:var(--text);letter-spacing:-.005em}
#buehne .planblatt .tagband.frei .taglink{color:var(--text3)}
#buehne .planblatt .tagband .haken{margin:0}
#buehne .planblatt .tagband .lastmarke{width:96px;height:20px;border-radius:10px}
/* Knöpfe im Tageskopf rechts, ruhig wie im Entwurf */
#buehne .planblatt .tagband .k{height:30px;min-height:30px;padding:0 12px;font-size:13px;font-weight:500;letter-spacing:0;
  background:var(--flaeche);border:1px solid var(--linie);color:var(--text2);border-radius:var(--rund2)}
#buehne .planblatt .tagband .tagkopf > .k:not(.k ~ .k){margin-left:auto}
#buehne .planblatt .tagband .k.haupt{background:var(--akz);border-color:var(--akz);color:var(--akz-auf,#fff)}
#buehne .planblatt .tagband .k:hover{border-color:var(--akz);color:var(--text);background:var(--flaeche)}
#buehne .planblatt .tagband .k:focus{outline:none}
#buehne .planblatt .tagband .k:focus-visible{box-shadow:0 0 0 3px var(--akz-t)}
/* Spaltenkopf */
#buehne .planblatt tr.spaltenband td,#buehne .planblatt tr.spaltenband td:first-child{background:var(--flaeche);color:var(--text3);
  font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:0 8px;height:32px;border-bottom:1px solid var(--linie2)}
#buehne .planblatt tr.spaltenband td:first-child{padding-left:16px}
#buehne .planblatt tr.spaltenband td.mixkopf{text-align:left;padding-left:20px}
#buehne .planblatt tr.erg td:nth-last-child(2){text-align:left;padding-left:20px}
#buehne .planblatt tr.spaltenband .plus{width:28px;height:24px}
/* Zeilen */
#buehne .planblatt tbody tr:not(.tagband):not(.spaltenband):not(.luecke) td{height:52px;padding:4px 8px;vertical-align:middle}
#buehne .planblatt tbody tr:not(.tagband):not(.spaltenband) td:first-child{padding-left:16px;padding-right:34px;background:var(--flaeche);box-shadow:none}
#buehne .planblatt tbody tr.vorl td:first-child{box-shadow:inset 3px 0 0 var(--offen)}
#buehne .planblatt tbody tr.gewaehlt td,#buehne .planblatt tbody tr.gewaehlt td:first-child{background:var(--akz-t)}
#buehne .planblatt tbody td:first-child{white-space:normal}
#buehne .planblatt td > input.haken{margin:0 10px 0 0;top:0}
#buehne .planblatt td > .punkt{margin-right:10px;top:0}
#buehne .planblatt .pz-name{display:inline-flex;flex-direction:column;vertical-align:middle;min-width:0;max-width:calc(100% - 70px);line-height:1.25}
#buehne .planblatt .pz-name > small{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#buehne .planblatt .pz-sorte{display:flex;align-items:center;gap:8px;min-width:0}
#buehne .planblatt .pz-sorte .sortenname{font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#buehne .planblatt .pz-sorte .merker{flex:none;margin:0}
#buehne .planblatt .zubchip{margin:4px 0 0 46px;display:inline-flex}
#buehne .planblatt input.zelle{height:34px;min-height:34px;border-color:transparent;background:transparent;font-size:14px}
#buehne .planblatt input.zelle:hover{border-color:var(--linie);background:var(--flaeche2)}
#buehne .planblatt input.zelle:focus{border-color:var(--akz);background:var(--feld);box-shadow:0 0 0 3px var(--akz-t)}
#buehne .planblatt td.zeitspalte{font-variant-numeric:tabular-nums}
/* Mix: linksbündig, DUO-Zeilen untereinander bündig */
#buehne .planblatt td.mixzelle{text-align:left;padding-left:12px}
#buehne .planblatt td.mixzelle textarea.mixfeld{text-align:left;width:100%;min-width:0;padding:6px 8px;line-height:1.4;
  border-color:transparent;background:transparent;font-variant-numeric:tabular-nums}
#buehne .planblatt td.mixzelle textarea.mixfeld:hover{border-color:var(--linie);background:var(--flaeche2)}
#buehne .planblatt td.mixzelle textarea.mixfeld:focus{border-color:var(--akz);background:var(--feld)}
/* 3.80.0: gemeinsamer Mix */
#buehne .planblatt td.mixzelle .mix-bei{display:block;padding:6px 9px;font-size:13px;color:var(--text3);line-height:1.35}
#buehne .planblatt td.mixzelle .mix-bei b{color:var(--akz);font-weight:600}
#buehne .planblatt td.mixzelle .mix-mit{display:block;padding:0 9px 4px;font-size:11.5px;color:var(--akz);line-height:1.3}
/* Ergebnis */
#buehne .planblatt tr.erg td,#buehne .planblatt tr.erg td:first-child{background:var(--flaeche2);font-weight:700;border-top:1px solid var(--linie);
  border-bottom:0;height:44px}
#buehne .planblatt tr.erg td:first-child{padding-left:16px}
/* Muster und „neue Sorte“ ordentlich in Reihe */
#buehne .planblatt tr.musterzeile td{background:var(--flaeche);border-left:0;padding:8px 16px;height:auto}
#buehne .planblatt .musterzeile-knopf{gap:8px 18px}
#buehne .planblatt .musterzeile-knopf > .klein{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
#buehne .planblatt tr.neuzeile td{height:48px;background:var(--flaeche)}
#buehne .planblatt tr.neuzeile td:first-child{padding-left:16px}
#buehne .planblatt tr.neuzeile input.zelle{height:34px;min-height:34px;width:100%;max-width:340px;border-color:var(--linie);
  background:var(--feld);text-align:left;padding:0 10px}

/* Datumsfeld zum Springen (Monatsplan) */
.datumsprung{position:relative;display:inline-flex;align-items:center}
.datumsprung .sym{position:absolute;left:10px;color:var(--text3);pointer-events:none;display:inline-flex}
.datumsprung input{height:var(--hoehe);width:150px;padding-left:32px;font-variant-numeric:tabular-nums}
.datumsprung input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}

/* ------------------------------------------------------ Datenbank (3.60) */
.datleiste{gap:var(--a2)!important}
.datleiste select.datwahl{width:auto;min-width:240px;max-width:360px;font-weight:600}
.datleiste input[type=search]{width:240px}
.datleiste select:not(.datwahl){width:auto;max-width:200px}
.datleiste input[type=text]{width:190px}
.blaettern{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.tabhuelle{overflow:auto;max-height:calc(100vh - 230px);border:1px solid var(--linie);
  border-radius:var(--rund);background:var(--flaeche);box-shadow:var(--schatten)}
table.dattab{width:max-content;min-width:100%;font-size:var(--fs-s)}
table.dattab thead th{position:sticky;top:0;z-index:2;cursor:pointer;user-select:none;text-transform:none;
  letter-spacing:0;font-size:12px;color:var(--text2);font-family:Consolas,"Cascadia Mono",monospace}
table.dattab thead th:hover{color:var(--akz)}
table.dattab td{white-space:nowrap;max-width:420px;overflow:hidden;text-overflow:ellipsis;
  border-right:1px solid var(--linie2);font-variant-numeric:tabular-nums}
table.dattab td.zahl{text-align:right}
table.dattab td.bearbeitbar{cursor:text}
table.dattab td.bearbeitbar:hover{box-shadow:inset 0 0 0 1px var(--akz)}
table.dattab td .null{color:var(--text3);opacity:.6}
table.dattab td .verweis{color:var(--text3)}
table.dattab td input.zelle{text-align:left;min-width:140px;width:100%}
table.dattab .dat-haken{width:34px;text-align:center;position:sticky;left:0;background:var(--flaeche);z-index:1}
table.dattab thead .dat-haken{background:var(--kopf);z-index:3}
table.dattab tr.gewaehlt > td{background:var(--akz-t)}
textarea.langtext{font-family:Consolas,"Cascadia Mono",monospace;font-size:12px;min-height:280px;line-height:1.5}

/* --------------------------------------------- Etappe 2 (3.61): Bausteine */
dialog.rueckfrage{max-width:480px}
dialog.rueckfrage .knopfreihe{justify-content:flex-end}
input.seitensuche{max-width:320px}
.ansichtsleiste input.seitensuche{width:280px}
.segment.klein-seg button{height:26px;padding:0 10px;font-size:12px}
.navgruppe-knoepfe{display:inline-flex;gap:4px;align-items:center}

/* Kunden & Sorten: Liste links, Kunde rechts */
.kundenseite{display:flex;gap:18px;align-items:flex-start}
.kundenspalte{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:8px;
  position:sticky;top:96px;max-height:calc(100vh - 120px)}
.kundenspalte input.seitensuche{max-width:none}
.kundenspalte > *{flex-shrink:0}
.kundenspalte > .kundenliste{flex:1 1 auto;flex-shrink:1}
.kundenspalte .segment{margin:0;align-self:flex-start}
.kundenliste{overflow:auto;flex:1 1 auto;min-height:120px;padding:4px}
button.kundeneintrag{display:block;width:100%;text-align:left;border:none;font:inherit;cursor:pointer;
  padding:9px 11px;border-radius:var(--rund2);background:none;color:var(--text);margin-bottom:2px}
button.kundeneintrag:hover{background:var(--flaeche2)}
button.kundeneintrag[aria-current="true"]{background:var(--akz-t);box-shadow:inset 3px 0 0 var(--akz)}
button.kundeneintrag.archiviert{opacity:.6}
button.kundeneintrag .kn{font-weight:650;font-size:var(--fs-m);display:flex;gap:6px;align-items:center}
button.kundeneintrag .ku{font-size:12px;color:var(--text3);margin-top:1px}
button.kundeneintrag .kw{font-size:12px;margin-top:1px;color:var(--offen);font-weight:600}
@media (max-width:1100px){ .kundenspalte{width:230px} }
.kundenseite > button.kundenzurueck{display:none}
/* 4.0 (Etappe 7): am Handy entweder die Liste oder der gewählte Kunde */
@media (max-width:820px){
  .kundenseite{flex-direction:column;align-items:stretch;gap:12px}
  .kundenspalte{width:auto;position:static;max-height:none}
  .kundenliste{overflow:visible;min-height:0}
  button.kundeneintrag{padding:12px 12px}
  .kundenseite.zeigt-liste > :not(.kundenspalte){display:none}
  .kundenseite.zeigt-kunde > .kundenspalte{display:none}
  .kundenseite.zeigt-kunde > button.kundenzurueck{display:inline-flex;align-self:flex-start}
  /* Sortenzeile: Name oben, Merker darunter */
  button.sortekopf{flex-wrap:wrap;row-gap:6px;column-gap:8px!important}
  button.sortekopf > .wg{flex:1 0 100%;height:0}
  .gebindeleiste{flex-wrap:wrap;row-gap:8px}
  .gebindeleiste > .abschnitt{flex:1 0 100%}
  .gebindeleiste > .wg{display:none}
}

/* ----------------------------------------------------- Schmale Fenster */
@media (max-width:1100px){
  :root{--nav-breite:200px}
  main{padding:var(--a4) var(--a5) 48px}
  .haftleiste,.kopfzeile{margin-left:calc(-1 * var(--a5));margin-right:calc(-1 * var(--a5));
    padding-left:var(--a5);padding-right:var(--a5)}
}
/* 4.0: Zwischen 821 und 900 px bleibt die volle Seitenleiste (app.css machte
   daraus eine Symbolleiste). Darunter die Handy-Darstellung. */
@media (max-width:900px) and (min-width:821px){
  nav{width:200px;padding:var(--a4) var(--a3) 0}
  nav .marke b,nav button span.t,nav .fuss{display:block}
  nav button,nav button.naveintrag{justify-content:flex-start;padding:0 10px}
  nav button.navbereich{display:flex}
  nav .navsuche span{display:inline}
  nav button.naveintrag.navunter{padding-left:38px}
}
@media (max-width:820px){
  #huelle{flex-direction:column}
  #huelle > nav{display:none}
  #mkopf{display:flex;align-items:center;gap:8px;flex:none;min-height:56px;padding:env(safe-area-inset-top,0px) 10px 0 16px;
    background:var(--flaeche);border-bottom:1px solid var(--linie)}
  #mkopf img{width:28px;height:28px;border-radius:8px;flex:none}
  .mtitel{flex:1;min-width:0;font-weight:700;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  main{flex:1 1 auto;min-height:0;padding:var(--a4) var(--a4) 32px}
  .haftleiste,.kopfzeile{margin-left:calc(-1 * var(--a4));margin-right:calc(-1 * var(--a4));
    padding-left:var(--a4);padding-right:var(--a4)}
  #unterleiste{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));flex:none;background:var(--flaeche);
    border-top:1px solid var(--linie);padding:6px 6px calc(8px + env(safe-area-inset-bottom,0px))}
  #unterleiste button{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:none;color:var(--text3);
    font:inherit;font-size:11.5px;font-weight:500;padding:6px 0;border-radius:10px;cursor:pointer;position:relative;
    min-height:52px;min-width:0}
  #unterleiste button .sym{display:inline-flex}
  #unterleiste button .t{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}
  #unterleiste button:hover{color:var(--text2)}
  #unterleiste button[aria-current="page"]{color:var(--akz-stark);font-weight:600}
  #unterleiste .navzahl{position:absolute;top:2px;left:calc(50% + 4px);margin:0;height:17px;min-width:17px;font-size:10px}
  .kopfsymbole{border-left:0;padding-left:0;margin-left:0}
  .ablage{left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 16px)}
  body:has(.ablage) #meldung{bottom:150px}
  .datumsprung input{height:40px}
  .plan-tabelle{display:none!important}
  .plan-karten{display:flex;flex-direction:column;gap:10px}

  /* Etappe 2: Seitenkopf – Titel oben, Knöpfe darunter in einer Reihe; Speichern
     und Hell/Dunkel stehen am Handy im Menü (die App speichert ohnehin sofort). */
  .kopfzeile{flex-wrap:wrap;align-items:flex-start;row-gap:var(--a2)}
  .kopfzeile > .wg{flex:1 1 100%}
  .kopfzeile h1{font-size:22px}
  .kopfknoepfe{flex:1 1 auto}
  .kopfsymbole .speichernknopf,.kopfsymbole .themaknopf,.kopfsymbole .datenknopf{display:none}
  /* Etappe 6: Der Seitenkopf haftet am Handy nicht, er läuft mit der Seite weg –
     oben bleibt die Titelleiste stehen. Bereichszeile weg (steht in der
     Titelleiste), Aktionen und Schloss in einer Reihe. */
  .haftleiste,.kopfzeile{position:static;backdrop-filter:none;background:none}
  .haftleiste{margin-top:calc(-1 * var(--a4));padding-top:var(--a3)}
  .kopfzeile{margin-top:calc(-1 * var(--a4));padding-top:var(--a3)}
  .haftleiste .kopfzeile{margin-top:0;padding-top:0}
  .kopfzeile .ueber{display:none}
  .kopfzeile h1{font-size:19px;line-height:1.25}
  .kopfknoepfe{order:2;width:auto;flex:1 1 0;min-width:0}
  .kopfsymbole{order:3}
  .haftleiste .ansichtsleiste{row-gap:var(--a2)}

  /* Tippflächen: Knöpfe 40 px, Felder 40 px und 16 px Schrift (kein Zoomen am iPhone) */
  button.k,a.k{height:40px;min-height:40px;padding:0 14px}
  button.k.mini{height:36px;min-height:36px}
  button.k.symbol{width:40px}
  input:not([type=checkbox]):not([type=radio]),select{min-height:40px;height:40px;font-size:16px}
  textarea{font-size:16px}
  input.zelle{height:34px;min-height:34px;font-size:16px}
  .segment button{height:34px}

  /* Fenster als Blatt von unten */
  dialog[open]{width:100vw;max-width:100vw!important;margin:auto 0 0;border-radius:20px 20px 0 0;border-bottom:0;max-height:92dvh}
  dialog .inhalt{padding:0 var(--a4)}
  dialog .inhalt > h2:first-child{margin:0 calc(-1 * var(--a4)) var(--a3);padding:24px 56px 12px var(--a4)}
  dialog .inhalt > h2:first-child::before{content:"";position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;
    border-radius:2px;background:var(--rand)}
  .fenster-zu{top:14px;right:8px;width:40px;height:40px}
  dialog .inhalt > .knopfreihe:last-child{margin:var(--a4) calc(-1 * var(--a4)) 0;
    padding:12px var(--a4) calc(12px + env(safe-area-inset-bottom,0px))}
  dialog .inhalt > .knopfreihe:last-child > .k{flex:1 1 auto}
  dialog .knopfreihe .wg{display:none}
  dialog .raster{grid-template-columns:minmax(0,1fr)!important}

  /* Tabellen als Liste: Zeile = Eintrag, Zelle = „Spalte: Wert“ */
  table.stapelbar,table.stapelbar > tbody{display:block;width:100%;min-width:0!important}
  table.stapelbar > thead{display:none}
  table.stapelbar > colgroup{display:none}
  table.stapelbar > tbody > tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:10px 12px;
    border-bottom:1px solid var(--linie2)}
  table.stapelbar > tbody > tr > td{display:block;padding:0;border:0;white-space:normal!important;text-align:left!important;
    max-width:none!important;width:auto!important;overflow:visible!important}
  table.stapelbar > tbody > tr > td:first-child{flex:1 1 100%;font-weight:600}
  table.stapelbar > tbody > tr > td[data-l]:not(:first-child)::before{content:attr(data-l) ": ";color:var(--text3);font-size:12px;font-weight:500}
  table.stapelbar > tbody > tr > td[data-l=""]::before{content:none}
  table.stapelbar > tbody > tr > td:empty{display:none}
}

/* ======================================================================
   3.81.0 Design E, Etappe 1 (Entscheidung Slava 30.10.2026): Plus Jakarta
   Sans, Hellblau als Akzent, dunkle Insel-Navigation am PC, rundere
   Kästen ohne Rand, dunkle Hauptknöpfe, MHD-Feld in einstellbarer Farbe.
   Steht am Ende, damit es die Regeln darüber übersteuert.
   ====================================================================== */
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;
  src:url("schrift/plus-jakarta-sans-latin-wght-normal.woff2") format("woff2")}
:root{
  --schrift:"Plus Jakarta Sans","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;
  --schrift-titel:"Plus Jakarta Sans","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,sans-serif;
  --insel:#15181d; --insel2:#23272e; --insel-aktiv:#2b3038; --insel-linie:#2a2e35;
  --insel-text:#c9cdd5; --insel-leise:#8b93a1; --insel-hell:#ffffff;
  --tinte:#15181d; --tinte-auf:#ffffff;
}
:root[data-thema="dunkel"]{--insel:#1a1f26; --insel2:#252b34; --insel-aktiv:#2e3540; --insel-linie:#2c333d;
  --tinte:var(--akz); --tinte-auf:var(--akz-auf)}
:root[data-farbe]{--rund:14px; --rund2:10px; --rund3:7px}
body{font-feature-settings:"tnum" 1}
h1,h2,h3,.kopfzeile h1{letter-spacing:-.02em}

/* Knöpfe: Hauptknopf dunkel, alle anderen hell mit feiner Linie */
button.k,a.k{border-radius:var(--rund2);border-color:var(--linie);font-weight:600}
button.k:hover,a.k:hover{border-color:var(--rand)}
button.k.haupt,.ablage button.k.haupt{background:var(--tinte);border-color:var(--tinte);color:var(--tinte-auf);box-shadow:none}
button.k.haupt:hover{background:color-mix(in srgb, var(--tinte) 84%, #fff);border-color:transparent}
.segment{border:0;border-radius:12px;background:color-mix(in srgb, var(--rand) 35%, var(--flaeche2));padding:3px}
.segment button{border-radius:9px}
.segment button[aria-current="true"]{background:var(--tinte);color:var(--tinte-auf);box-shadow:none}
.segment button[aria-current="true"] span{color:inherit;opacity:.75}

/* Kästen: weiß auf grauem Grund, große Rundung, kein harter Rand, keine Farbstreifen */
.karte,.dkpi,.dkpi.rot,.dkpi.gelb,.dkpi.gruen{border-radius:18px;border:1px solid transparent;box-shadow:0 1px 2px rgba(20,23,28,.04)}
[data-thema="dunkel"] :is(.karte,.dkpi){border-color:var(--linie2)}
/* Status steht als Chip im Kasten, nicht als Farbstreifen am Rand */
.karte{border-left:1px solid transparent!important;border-top-width:1px!important}
[data-thema="dunkel"] .karte{border-left-color:var(--linie2)!important}
.dtag .dz{font-size:14px;white-space:nowrap}
.tp-karte,.tp-karte.zub{border-top-width:1px;border-top-color:transparent;border-radius:18px}
.summenbalken{border-left-width:1px;border-left-color:transparent;border-radius:18px}
.warn{border:1px solid color-mix(in srgb, var(--warn) 22%, transparent);border-radius:12px}
/* Prüfer 3.81.0 (S4): übrige Farbstreifen – Status bleibt über Zahl/Farbe des Inhalts sichtbar */
.kachel.eis,.kachel.frucht,.kachel.zub,.kachel.offen,.mixtagkopf,.rw-hinweis,.auswkopf{border-left-width:0!important}
.dpunkt{border-left:1px solid var(--linie2);border-radius:12px}
.dpunkt:hover{border-left-color:var(--f)}
tr.musterzeile td{border-left:0}
.mixtagkopf{border-radius:12px}

/* MHD hebt sich immer ab – Farbe unter Einstellungen → Darstellung */
.mhd,.mixtagkopf .mhd{background:var(--mhd-g);border-color:var(--mhd-g);color:var(--mhd-t);border-radius:10px}
.mhd .b,.mhd .m,.mixtagkopf .mhd .b,.mixtagkopf .mhd .m{color:var(--mhd-t);opacity:.85}
.tp-chip.tp-mhd,[data-thema="dunkel"] .tp-chip.tp-mhd{--mhd:var(--mhd-t);background:var(--mhd-g);border-color:var(--mhd-g);color:var(--mhd-t)}
table.tagesblatt td.tl-mhd,[data-thema="dunkel"] table.tagesblatt td.tl-mhd{color:inherit}
.mhdmarke{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:7px;
  background:var(--mhd-g);color:var(--mhd-t);font-family:var(--schrift-titel);font-size:12.5px;font-weight:700;white-space:nowrap}

/* Insel-Navigation (nur am PC; am Handy bleibt die Leiste unten) */
@media (min-width:821px){
  #huelle > nav{margin:12px 0 12px 12px;height:calc(100% - 24px);border:0;border-radius:18px;
    background:var(--insel);color:var(--insel-text);box-shadow:0 10px 30px rgba(20,23,28,.14)}
  #huelle > nav .marke b{color:var(--insel-hell)}
  #huelle > nav .marke span{color:var(--insel-leise)}
  #huelle > nav .navsuche{background:var(--insel2)!important;border-color:transparent!important;color:var(--insel-leise)!important}
  #huelle > nav .navsuche:hover{color:var(--insel-hell)!important}
  #huelle > nav .navsuche kbd{background:transparent;border-color:#3a3f48;color:var(--insel-leise)}
  #huelle > nav .navtitel{color:var(--insel-leise)}
  #huelle > nav button.naveintrag,#huelle > nav button.navbereich{color:var(--insel-text)}
  #huelle > nav button .sym,#huelle > nav button.navbereich .pfeil{color:var(--insel-leise)}
  #huelle > nav button.naveintrag:hover,#huelle > nav button.navbereich:hover{background:var(--insel2);color:var(--insel-hell)}
  #huelle > nav button.navbereich.aktiv,#huelle > nav button.navbereich.aktiv .sym{color:var(--insel-hell)}
  #huelle > nav button.naveintrag[aria-current="page"]{background:var(--insel-aktiv);color:var(--insel-hell)}
  #huelle > nav button.naveintrag[aria-current="page"] .sym{color:var(--akz-hell,#9cc8f2)}
  #huelle > nav .navunterliste{margin:1px 0 6px 20px;padding-left:6px;border-left:1px solid var(--insel-linie)}
  #huelle > nav button.naveintrag.navunter{padding-left:10px}
  #huelle > nav .navzahl{background:var(--insel-aktiv);border-color:transparent;color:var(--insel-hell)}
  #huelle > nav .navzahl.rot{background:var(--fehler);border-color:var(--fehler);color:#fff}
  [data-thema="dunkel"] #huelle > nav .navzahl.rot{color:var(--akz-auf)}
  #huelle > nav .nutzerbox{border-top-color:var(--insel-linie)}
  #huelle > nav .nk-text b{color:var(--insel-hell)}
  #huelle > nav .nk-text small,#huelle > nav .fuss{color:var(--insel-leise)}
  #huelle > nav .nk-knoepfe button.k.mini.symbol{color:var(--insel-text)}
  #huelle > nav .nk-knoepfe button.k.mini.symbol:hover{background:var(--insel2);color:var(--insel-hell)}
  #huelle > nav .nutzerkarte .avatar{background:var(--insel-aktiv);color:var(--insel-hell)}
}

/* ======================================================================
   3.82.0 Monatsplan wie Entwurf E (E-Monatsplan, E-Auswahl, E-Detail,
   E-Sorte): Wochen als weiße Kästen, Tageszeilen mit Sortenkästchen,
   Seitenpanel, Rahmen zum Markieren, Ziehen, „+ Sorte“ mit Suche.
   ====================================================================== */
.kopfknoepfe .e-kwnav{display:inline-flex;align-items:center;gap:8px}
.e-kw{font-size:14px;font-weight:700;white-space:nowrap}
.e-plan{display:flex;flex-direction:column;gap:14px;user-select:none}
.e-plan input,.e-plan textarea{user-select:text}
body.e-lasso-an{user-select:none;cursor:crosshair}
.e-woche{background:var(--flaeche);border-radius:18px;padding:4px 16px 8px;box-shadow:0 1px 2px rgba(20,23,28,.04)}
[data-thema="dunkel"] .e-woche{border:1px solid var(--linie2)}
.e-wk{display:flex;align-items:baseline;gap:12px;padding:12px 0 10px}
.e-wk b{font-size:15px;font-weight:700}
.e-wk span{color:var(--text3);font-size:12.5px}
.e-reihe{display:grid;grid-template-columns:140px minmax(0,1fr);gap:14px;padding:12px 0;border-top:1px solid var(--linie)}
.e-tag{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.e-tagname{all:unset;cursor:pointer;font-weight:700;font-size:14px;line-height:1.35}
.e-tagname:hover{color:var(--akz)}
.e-tagname:focus-visible{outline:2px solid var(--akz);outline-offset:2px;border-radius:4px}
.e-tagmin{display:block;font-size:12.5px;color:var(--text2)}
.e-tag small{display:block;font-size:12px;color:var(--text3)}
.e-tag small.formelwert b{color:var(--text2)}
.e-tag.voll .e-tagmin{color:var(--fehler);font-weight:600}
.e-tag.ruhe .e-tagname{color:var(--text3)}
.e-marken{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.e-marken:empty{display:none}
.e-last{align-self:stretch;height:6px;border-radius:3px;background:var(--flaeche2);overflow:hidden;margin:7px 0 8px}
.e-last i{display:block;height:100%;background:var(--akz-hell,var(--akz));border-radius:3px}
.e-tag.voll .e-last i{background:var(--fehler)}
.e-tagknoepfe{display:flex;gap:4px}
.e-mini{width:30px;height:30px;border-radius:9px;border:1px solid var(--linie);background:var(--flaeche);display:grid;place-items:center;color:var(--text2);cursor:pointer;padding:0}
.e-mini:hover{border-color:var(--rand);color:var(--text)}
.e-spur{min-width:0;display:flex;flex-direction:column;gap:8px}
.e-bahn{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;border-radius:14px;background:var(--flaeche2);padding:8px;min-height:64px}
.e-leer{flex:1;min-height:64px;border-radius:12px;border:1.5px dashed var(--rand);display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text2);font-weight:600}
.e-leer button{height:34px;padding:0 14px;border-radius:10px;border:0;background:var(--tinte);color:var(--tinte-auf);font-weight:600;cursor:pointer}
.e-neu{height:34px;padding:0 12px;border-radius:10px;border:1.5px dashed var(--rand);background:transparent;color:var(--text2);font-weight:600;align-self:center;cursor:pointer}
.e-neu:hover{border-color:var(--akz);color:var(--akz)}

/* Sortenkästchen */
.e-karte{flex:none;width:300px;max-width:100%;min-width:240px;background:var(--flaeche);border:1px solid var(--linie);border-radius:14px;padding:10px 12px;
  display:flex;flex-direction:column;gap:8px;box-shadow:0 1px 2px rgba(20,23,28,.04);cursor:default;position:relative}
.e-karte[draggable="true"]{cursor:grab}
.e-karte.sel,.e-karte.offen{border-color:var(--akz-hell,var(--akz));box-shadow:0 0 0 2px var(--akz-hell,var(--akz))}
.e-karte.sel{background:color-mix(in srgb, var(--akz-t) 45%, var(--flaeche))}
.e-karte.weg,.e-zb.weg{opacity:.35}
.e-karte.vorl{border-style:dashed}
.e-dbar{height:4px;border-radius:2px;background:var(--flaeche2);overflow:hidden;margin:-2px 0 2px}
.e-dbar i{display:block;height:100%;background:var(--akz-hell,var(--akz));border-radius:2px}
.e-karte.frucht .e-dbar i{background:var(--frucht,#d27b2c)}
.e-ko{display:flex;align-items:center;gap:8px;min-width:0}
.e-kunde{flex:1;min-width:0;font-size:11px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e-ko .mhd{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:7px;font-size:11.5px;font-weight:700;white-space:nowrap;flex:none;border:0}
.e-weg{display:none}
.e-karte:hover .e-weg,.e-karte:focus-within .e-weg{display:inline-flex}
.e-weg .weg{width:22px;height:22px}
.e-sorte{all:unset;cursor:pointer;font-size:15px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.e-sorte:hover{color:var(--akz)}
.e-sorte:focus-visible{outline:2px solid var(--akz);outline-offset:2px;border-radius:4px}
.e-fehlt{align-self:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-geb{border-radius:10px;background:var(--flaeche2);padding:4px 10px}
.e-gz{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;padding:2px 0;min-height:24px}
.e-gz > span:first-child{color:var(--text3);font-weight:600;white-space:nowrap}
.e-gz.leer,.e-gebdazu{display:none}
.e-geb.alle .e-gz.leer,.e-karte:focus-within .e-gz.leer{display:flex}
.e-karte:focus-within .e-gebdazu{display:block}
.e-st{display:inline-flex;align-items:baseline;gap:4px}
.e-st small{color:var(--text3);font-size:12px;font-weight:500}
.e-st b{font-weight:700}
input.e-menge{all:unset;box-sizing:border-box;width:76px;text-align:right;font-weight:700;font-size:12.5px;border-radius:6px;padding:1px 4px;cursor:text}
input.e-menge::placeholder{color:var(--text3);font-weight:500}
input.e-menge:hover{background:var(--flaeche)}
input.e-menge:focus{background:var(--flaeche);box-shadow:0 0 0 2px var(--akz-hell,var(--akz))}
.e-gebdazu{all:unset;display:none;cursor:pointer;font-size:12px;font-weight:600;color:var(--akz);padding:3px 0 1px}
.e-karte:focus-within .e-gebdazu{display:block}
.e-werte{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--linie);border-radius:10px}
.e-werte > div{padding:5px 9px;border-left:1px solid var(--linie);min-width:0}
.e-werte > div:first-child{border-left:0}
.e-werte span:first-child{display:block;font-size:10.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.e-werte b{font-size:13px;font-weight:700;white-space:nowrap}
.e-mixzelle textarea.mixfeld,.e-mixzelle textarea.mixfeld.duo{all:unset;box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;font-size:13px;font-weight:700;line-height:1.35;white-space:pre-wrap;
  border-radius:6px;padding:0 2px;margin:0 -2px;cursor:text;resize:none;overflow:hidden;min-height:18px}
.e-mixzelle textarea.mixfeld::placeholder{color:var(--text3);font-weight:500}
.e-mixzelle textarea.mixfeld:focus{background:var(--flaeche2);box-shadow:0 0 0 2px var(--akz-hell,var(--akz))}
.e-mixzelle textarea.mixfeld.fehlt{color:var(--warn)}
.e-bei{display:block;overflow:hidden;text-overflow:ellipsis}
.e-gruppe{display:flex;flex-wrap:wrap;gap:8px;border:2px solid var(--akz-hell,var(--akz));border-radius:16px;padding:22px 6px 6px;position:relative;
  background:var(--akz-t);max-width:100%}
.e-gruppe > em{position:absolute;top:4px;left:12px;font-style:normal;font-size:11.5px;font-weight:700;color:var(--akz-stark,var(--akz))}

/* Zubereitungen und Muster unter der Bahn */
.e-zubs{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.e-zb{height:26px;max-width:100%;padding:0 10px;border-radius:9px;border:1.5px dashed var(--rand);font:inherit;font-size:12.5px;color:var(--text2);
  display:inline-flex;align-items:center;gap:6px;background:var(--flaeche);cursor:pointer;white-space:nowrap;overflow:hidden}
.e-zb > span:not(.merker){overflow:hidden;text-overflow:ellipsis}
.e-zb b{color:var(--warn);font-weight:700}
.e-zb.sel{border-style:solid;border-color:var(--akz-hell,var(--akz));box-shadow:0 0 0 1px var(--akz-hell,var(--akz))}
.e-zb.fehlt{border-color:color-mix(in srgb, var(--warn) 55%, transparent);background:var(--warn-t);cursor:default}
.e-eintragen{height:20px;padding:0 8px;border-radius:6px;border:0;background:var(--tinte);color:var(--tinte-auf);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}
.e-muster{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--text3)}
.e-mu{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px;border-radius:8px;background:var(--flaeche2);color:var(--text2);font-size:12px}

/* Rahmen, Ziehen, Ablegen */
.e-lasso{position:fixed;z-index:60;border:2px dashed var(--akz-hell,var(--akz));background:color-mix(in srgb, var(--akz-hell,var(--akz)) 8%, transparent);border-radius:10px;pointer-events:none}
.e-reihe.ziel .e-bahn{background:var(--akz-t);outline:2px dashed var(--akz-hell,var(--akz));outline-offset:-2px}
.e-ablegen{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:6px 10px;color:var(--akz-stark,var(--akz));font-weight:700;pointer-events:none}
.e-ablegen small{color:var(--text2);font-weight:500}
.e-geist{position:fixed;left:-1000px;top:-1000px;width:300px;height:78px;font-family:var(--schrift)}
.e-gk{position:absolute;inset:0;background:var(--flaeche);border:2px solid var(--akz-hell,var(--akz));border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;overflow:hidden}
.e-gk.hinten{transform:translate(8px,8px) rotate(2deg);opacity:.8}
.e-gk b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e-gk small{color:var(--text2);font-size:12px}
.e-zahl{position:absolute;right:4px;top:4px;width:26px;height:26px;border-radius:50%;background:var(--akz-stark,var(--akz));color:#fff;display:grid;place-items:center;font-weight:700;font-size:12.5px;z-index:2}

/* Leiste unten (Auswahl) und Meldung mit Rückgängig – dunkle Insel */
.ablage{background:var(--insel);color:#fff;border:0;border-radius:18px;padding:10px 10px 10px 18px;gap:8px;box-shadow:0 18px 50px rgba(20,23,28,.3);
  min-width:min(700px,calc(100vw - 32px))}
.ablage .al-text{flex:1;min-width:0;font-weight:600;color:#fff}
.ablage .al-text small{display:block;color:#a2a9b5;font-weight:500;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ablage .al-text b{color:#fff}
.ablage button.k.mini,.ablage button.k.mini.haupt{height:38px;padding:0 14px;border-radius:12px;border:0;background:var(--insel-aktiv);color:#fff;font-weight:600}
.ablage button.k.mini:hover{background:#3a404a}
.ablage button.k.mini.gefahr{color:#ffb4a8}
.ablage button.k.mini.al-zu{background:transparent;color:#a2a9b5;width:auto}
.ablage .trenner{display:none}
#meldung{background:var(--insel);color:#fff;border:0;border-radius:16px;padding:10px 10px 10px 16px;display:flex;align-items:center;gap:12px;
  box-shadow:0 14px 34px rgba(20,23,28,.28)}
#meldung[hidden]{display:none}
#meldungknopf{height:34px;padding:0 14px;border-radius:10px;border:0;background:var(--akz-stark,var(--akz));color:#fff;font:inherit;font-weight:700;cursor:pointer}
#meldungtaste{font:inherit;font-size:11.5px;color:#a2a9b5;border:0;background:none}
#meldungknopf[hidden] + #meldungtaste{display:none}

/* Seitenpanel (E-Detail) */
.e-panel{position:fixed;top:12px;right:12px;bottom:12px;width:396px;z-index:30;background:var(--flaeche2);border-radius:18px;
  box-shadow:0 16px 48px rgba(20,23,28,.14);display:flex;flex-direction:column;overflow:hidden}
[data-thema="dunkel"] .e-panel{border:1px solid var(--linie)}
.e-pk{padding:16px 16px 12px;background:var(--flaeche);display:flex;align-items:flex-start;gap:8px;border-bottom:1px solid var(--linie)}
.e-pk small{font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.e-pk h2{margin:2px 0 0;font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.e-zu{margin-left:auto;flex:none;width:34px;height:34px;border-radius:10px;border:0;background:var(--flaeche2);display:grid;place-items:center;color:var(--text2);cursor:pointer}
.e-pb{flex:1;padding:12px;display:flex;flex-direction:column;gap:10px;overflow:auto}
.e-kasten{background:var(--flaeche);border:1px solid var(--linie);border-radius:14px;overflow:hidden;flex:none}
.e-kk{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--linie)}
.e-kk b{color:var(--text);letter-spacing:0;text-transform:none;font-size:12.5px}
.e-mhdk{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:var(--mhd-g);color:var(--mhd-t);flex:none}
.e-mhdk.leer{background:var(--flaeche);color:var(--text3);border:1px solid var(--linie)}
.e-mhdk span{display:block;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.8}
.e-mhdk b{font-size:20px;line-height:1.15}
.e-mhdk em{margin-left:auto;font-style:normal;font-size:12px;text-align:right;opacity:.9}
.e-vg{padding:6px 12px 2px;font-size:12px;font-weight:700;color:var(--akz-stark,var(--akz))}
.e-vp{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:30px;padding:0 12px;font-size:13px}
.e-vp + .e-vp{border-top:1px solid var(--linie)}
.e-vp span{color:var(--text3);font-size:12px;font-weight:600}
.e-vp b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-vp em{font-style:normal;font-weight:700}
.e-summe{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;background:var(--akz-t);font-weight:700;color:var(--akz-stark,var(--akz))}
.e-mz{display:flex;justify-content:space-between;gap:10px;padding:6px 12px;border-top:1px solid var(--linie);font-size:13px}
.e-kk + .e-mz{border-top:0}
.e-mz span{color:var(--text2)}
.e-mz b{text-align:right}
.e-vl{display:flex;align-items:center;gap:10px;padding:9px 12px;font-size:12.5px}
.e-vl + .e-vl{border-top:1px solid var(--linie)}
.e-vl > div{flex:1;min-width:0}
.e-vl small{display:block;color:var(--text3)}
.e-pf{padding:12px;display:flex;gap:6px;background:var(--flaeche);border-top:1px solid var(--linie)}
.e-pf .k.mini{height:30px;padding:0 10px;border-radius:9px;font-size:12.5px;white-space:nowrap}

/* „+ Sorte“ (E-Sorte) */
.e-pop-hinter{position:fixed;inset:0;z-index:70}
.e-pop{position:fixed;z-index:71;background:var(--flaeche);border-radius:20px;box-shadow:0 24px 60px rgba(20,23,28,.22),0 2px 6px rgba(20,23,28,.08);
  overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 24px)}
[data-thema="dunkel"] .e-pop{border:1px solid var(--linie)}
.e-ph{display:flex;align-items:center;gap:8px;padding:14px 16px 10px}
.e-ph b{font-size:15px}
.e-popdatum{width:auto;height:30px;min-height:0;padding:0 8px;border-radius:9px;border:1px solid var(--linie);background:var(--flaeche);color:var(--text2);font:inherit;font-size:12.5px}
.e-ph .e-zu{width:30px;height:30px}
.e-such{margin:0 16px;height:46px;border-radius:12px;border:2px solid var(--akz-hell,var(--akz));box-shadow:0 0 0 4px var(--akz-t);display:flex;align-items:center;gap:10px;padding:0 14px;color:var(--text3);flex:none}
.e-suchfeld{all:unset;flex:1;min-width:0;font-size:15px;color:var(--text)}
.e-such kbd{font:inherit;font-size:11.5px;color:var(--text3);border:1px solid var(--linie);border-radius:6px;padding:1px 6px;background:none}
.e-filter{display:flex;gap:6px;padding:10px 16px 6px;flex-wrap:wrap;flex:none}
.e-filter button{height:28px;padding:0 11px;border-radius:14px;border:0;background:var(--flaeche2);font:inherit;font-size:12.5px;font-weight:600;color:var(--text2);cursor:pointer;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-filter button.on{background:var(--tinte);color:var(--tinte-auf)}
.e-lk{padding:8px 16px 4px;font-size:11px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase;flex:none}
.e-trliste{overflow:auto;min-height:0}
.e-tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;padding:8px 16px;border-top:1px solid var(--linie);cursor:pointer}
.e-tr:hover{background:var(--flaeche2)}
.e-tr b{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-tr b mark{background:color-mix(in srgb, var(--akz-hell,var(--akz)) 25%, transparent);color:inherit;border-radius:3px;padding:0 1px}
.e-tr small{color:var(--text3);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-tr .k{font-size:12px;font-weight:700;color:var(--text2);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.e-tr.on{background:var(--akz-t);border-top-color:transparent;box-shadow:inset 3px 0 0 var(--akz-hell,var(--akz))}
.e-tr.leer{cursor:default;color:var(--text3)}
.e-wahl{margin:4px 16px 12px;border:1px solid var(--linie);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px;background:color-mix(in srgb, var(--flaeche2) 40%, var(--flaeche))}
.e-zuletzt{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--text2)}
.e-zuletzt button{margin-left:auto;flex:none}
.e-felder{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.e-feld > span:first-child{display:block;font-size:12px;font-weight:600;color:var(--text2);margin-bottom:4px}
.e-feldbox{height:38px;border:1px solid var(--linie);border-radius:10px;background:var(--flaeche);display:flex;align-items:center;gap:6px;padding:0 10px}
.e-feldbox:focus-within{border-color:var(--akz-hell,var(--akz));box-shadow:0 0 0 3px var(--akz-t)}
.e-feldbox small{font-weight:500;color:var(--text3);font-size:11.5px}
input.e-wfeld{all:unset;flex:1;min-width:0;font-weight:700}
input.e-wfeld::placeholder{color:var(--rand);font-weight:500}
.e-erg{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-radius:10px;background:var(--flaeche2);padding:8px 10px;font-size:12.5px}
.e-erg b{font-weight:700}
.e-erg .mhd{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:7px;font-size:11.5px;font-weight:700;border:0}
.e-popfuss{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--linie);background:var(--flaeche2);flex:none}
.e-popfuss small{color:var(--text3);font-size:12px}
@media (min-width:1201px){body.e-panel-offen #buehne{padding-right:420px}}
@media (max-width:1200px){
  .e-panel{width:min(396px,calc(100vw - 24px));z-index:40}
}

/* 3.82.0 Nachbesserung nach Prüfung */
.e-marken .kalmarke{white-space:normal;max-width:100%;height:auto;line-height:1.3;overflow-wrap:anywhere}
.e-tagstueck{overflow-wrap:anywhere}
.e-karte.bearbeiten .e-gz.leer{display:flex}
.e-karte.bearbeiten .e-gebdazu,.e-geb.alle .e-gebdazu{display:block}
.e-gz > span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.e-werte b{display:block;overflow:hidden;text-overflow:ellipsis}
.e-mixmit{display:block;font-size:11px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e-suchfeld:focus,.e-suchfeld:focus-visible{outline:0!important;box-shadow:none!important}
input.e-wfeld:focus,input.e-wfeld:focus-visible{outline:0!important;box-shadow:none!important}
.e-reihe.neuziel .e-bahn{background:var(--akt,var(--akz-t));outline:2px solid var(--akz-hell,var(--akz));outline-offset:-2px}
.e-ablegen-warn{display:inline-flex;align-items:center;gap:6px;margin-top:4px;border-radius:10px;background:var(--warn-t);color:var(--warn);padding:5px 9px;font-size:12px;font-weight:600}
@media (min-width:1201px){
  body.e-panel-offen .ablage{left:calc(var(--nav-breite) + (100vw - var(--nav-breite) - 420px) / 2);
    min-width:min(700px,calc(100vw - var(--nav-breite) - 452px));max-width:calc(100vw - var(--nav-breite) - 452px)}
}
@media (max-width:820px){#meldungtaste{display:none}}

/* ======================================================================
   3.83.0 Design E, Paket 2 – gemeinsame Bausteine für Übersicht,
   Tagesplan, Mixplanung, Lager Verpackung, Freigaben, Einstellungen
   (Entwürfe E-Uebersicht, E-Tagesplan, E-Mixplanung, E-Verpackung,
   E-Freigaben, E-Einstellungen). Seitenpanel = .e-panel (3.82.0).
   ====================================================================== */
.e-seite{display:flex;flex-direction:column;gap:16px;min-width:0}
.e-raster{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:start}
.e-s12{grid-column:span 12}.e-s8{grid-column:span 8}.e-s6{grid-column:span 6}.e-s4{grid-column:span 4}
@media (max-width:1200px){.e-s4,.e-s6,.e-s8{grid-column:span 12}}
.e-card{background:var(--flaeche);border-radius:18px;padding:18px;min-width:0;display:flex;flex-direction:column;gap:12px;box-shadow:0 1px 2px rgba(20,23,28,.04)}
[data-thema="dunkel"] .e-card,[data-thema="dunkel"] .e-liste{border:1px solid var(--linie2)}
.e-ct{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.e-ct h2{margin:0;font-size:15px;font-weight:700;letter-spacing:-.01em}
.e-ct > span{color:var(--text3);font-size:12.5px;font-weight:500}
.e-ct .e-r{margin-left:auto}
.e-card .e-kasten{background:var(--flaeche)}
.e-card .e-kk{background:var(--flaeche2)}
.e-z{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:32px;padding:0 12px;border-top:1px solid var(--linie);font-size:13px}
.e-z.zwei{grid-template-columns:minmax(0,1fr) auto}
.e-kk + .e-z,.e-kk + .e-zl{border-top:0}
.e-z > span:first-child{color:var(--text3);font-size:12px;font-weight:600}
.e-z.zwei > span:first-child{color:var(--text);font-size:13px;font-weight:600}
.e-z > b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.e-z > em{font-style:normal;font-weight:700;text-align:right;white-space:nowrap}
.e-zl{display:flex;align-items:center;gap:10px;min-height:42px;padding:4px 12px;border-top:1px solid var(--linie)}
.e-zl .g{flex:1;min-width:0}
.e-zl b{display:block;font-weight:600;line-height:1.25}
.e-zl small{display:block;color:var(--text3);font-size:12px}
.e-pill{height:24px;padding:0 10px;border-radius:12px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;white-space:nowrap;background:var(--flaeche2);color:var(--text2);border:0}
.e-pill.ak{background:var(--akz-t);color:var(--akz-stark,var(--akz))}
.e-pill.rt{background:color-mix(in srgb, var(--fehler) 12%, var(--flaeche));color:var(--fehler)}
.e-pill.wa{background:var(--warn-t);color:var(--warn)}
.e-pill.ok{background:color-mix(in srgb, var(--gruen,#1f7a4d) 14%, var(--flaeche));color:var(--gruen,#1f7a4d)}
.e-pill.dk{background:var(--tinte);color:var(--tinte-auf)}
button.e-pill{cursor:pointer}
.e-hk small{color:var(--text3);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.e-hk div{font-size:18px;font-weight:700;letter-spacing:-.01em}
.e-werte4{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border:1px solid var(--linie);border-radius:12px}
.e-werte4 > div{padding:6px 10px;border-left:1px solid var(--linie);min-width:0}
.e-werte4 > div:first-child{border-left:0}
.e-werte4 span{display:block;font-size:10.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.e-werte4 b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.e-kach{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.e-ka{all:unset;box-sizing:border-box;cursor:pointer;border-radius:14px;background:var(--flaeche2);padding:11px 13px;display:flex;flex-direction:column;min-width:0}
.e-ka:hover{box-shadow:0 0 0 1px var(--rand)}
.e-ka:focus-visible{outline:2px solid var(--akz);outline-offset:2px}
.e-ka b{font-size:23px;letter-spacing:-.02em;line-height:1.2}
.e-ka span{font-size:12.5px;color:var(--text2);font-weight:600}
.e-ka small{font-size:11.5px;color:var(--text3)}
.e-ka.rt b{color:var(--fehler)}.e-ka.wa b{color:var(--warn)}
.e-liste{background:var(--flaeche);border-radius:18px;overflow:hidden;box-shadow:0 1px 2px rgba(20,23,28,.04)}
.e-card .e-liste,.e-kasten .e-liste{border-radius:0;box-shadow:none}
.e-lz{display:grid;grid-template-columns:var(--sp);gap:8px;align-items:center;min-height:44px;padding:4px 14px;border-top:1px solid var(--linie);font-size:13px}
.e-lz.kopf{min-height:34px;border-top:0;background:var(--flaeche2);font-size:11px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.e-lz > *{min-width:0}
.e-lz b{font-weight:600}
.e-lz small{display:block;color:var(--text3);font-size:11.5px}
.e-lz.klick{cursor:pointer}
.e-lz.klick:hover{background:color-mix(in srgb, var(--flaeche2) 55%, var(--flaeche))}
.e-lz.sel{background:var(--akz-t);box-shadow:inset 3px 0 0 var(--akz-hell,var(--akz))}
.e-lz .r2,.e-r2{text-align:right}
.e-neg{color:var(--fehler);font-weight:700}
.e-lt{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 14px;background:color-mix(in srgb, var(--flaeche2) 45%, var(--flaeche));border-top:1px solid var(--linie);font-size:12.5px;color:var(--text2)}
.e-lt b{color:var(--text);font-size:13.5px}
.e-lt .e-pill{margin-left:auto}
.e-chips{display:flex;gap:6px;flex-wrap:wrap}
.e-chips button{height:30px;padding:0 12px;border-radius:15px;border:0;background:var(--flaeche);display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;font-weight:600;color:var(--text2);cursor:pointer}
.e-chips button b{font-weight:700;color:var(--text)}
.e-chips button[aria-current="true"]{background:var(--tinte);color:var(--tinte-auf)}
.e-chips button[aria-current="true"] b{color:inherit}
.e-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.e-kpi{all:unset;box-sizing:border-box;cursor:pointer;background:var(--flaeche);border-radius:16px;padding:12px 14px;min-width:0}
.e-kpi span{display:block;font-size:12px;color:var(--text3);font-weight:600}
.e-kpi b{font-size:22px;letter-spacing:-.02em}
.e-kpi.rt b{color:var(--fehler)}.e-kpi.wa b{color:var(--warn)}
.e-kpi[aria-current="true"]{box-shadow:0 0 0 2px var(--akz-hell,var(--akz))}
.e-leer-text{padding:18px 14px;color:var(--text3);font-size:13px}
/* Panel-Bausteine für andere Seiten (wie Monatsplan) */
.e-panel .e-pk .e-chiprow{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.e-panel .e-mz.gross{background:var(--akz-t);color:var(--akz-stark,var(--akz));font-weight:700}
.e-panel .e-mz.gross span{color:inherit}
.e-panel .e-mz.rot{background:color-mix(in srgb, var(--fehler) 10%, var(--flaeche));color:var(--fehler);font-weight:700}
.e-panel .e-mz.rot span{color:inherit}
.e-panel .e-vor{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--akz-t)}
.e-panel .e-vor b{font-size:20px;color:var(--akz-stark,var(--akz))}
.e-panel .e-vor span{font-size:12.5px;color:var(--text2)}
.e-balken{margin:12px;height:10px;border-radius:5px;background:var(--flaeche2);overflow:hidden}
.e-balken i{display:block;height:100%;background:var(--akz-hell,var(--akz))}
.e-pf .k.haupt.breit{flex:1}
.e-tanks{display:flex;gap:8px;padding:12px}
.e-tank{flex:1;height:84px;border-radius:12px;border:2px solid var(--akz-hell,var(--akz));position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.e-tank i{position:absolute;left:0;right:0;bottom:0;background:color-mix(in srgb, var(--akz-hell,var(--akz)) 28%, var(--flaeche))}
.e-tank b{position:relative;margin-bottom:8px}
.e-zt{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;column-gap:10px;padding:8px 12px;font-size:12.5px}
.e-zt.eins{grid-template-columns:minmax(0,1fr) auto}
.e-zt span{color:var(--text2);padding:3px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-zt b{text-align:right;padding:3px 0;white-space:nowrap}
.e-panel-inhalt{display:flex;flex-direction:column;gap:10px}
/* Dichte „Normal“: etwas luftiger als der Standard „Kompakt“ */
:root[data-dichte="normal"] body{font-size:14px}
:root[data-dichte="normal"] .e-card{padding:22px;gap:14px}
:root[data-dichte="normal"] .e-lz{min-height:52px}
:root[data-dichte="normal"] .e-z,:root[data-dichte="normal"] .e-mz{min-height:38px}
:root[data-dichte="normal"] .e-karte{padding:12px 14px;gap:10px}
:root[data-dichte="normal"] .e-reihe{padding:16px 0}
:root[data-dichte="normal"] table td,:root[data-dichte="normal"] table th{padding-top:9px;padding-bottom:9px}
/* 3.83.0 Einstellungen → Darstellung (Entwurf E-Einstellungen) */
.d-seite{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:16px;align-items:start}
.d-kopf{grid-column:1/-1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.d-kopf h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em}
.d-links{display:flex;flex-direction:column;gap:12px;min-width:0}
.d-links .e-card{gap:0;padding:16px 18px}
.d-links .e-card h2,.d-vorschau h2{margin:0 0 2px;font-size:15px;font-weight:700}
.d-unter{margin:0 0 12px;color:var(--text3);font-size:12.5px}
.d-farben{display:flex;gap:10px;flex-wrap:wrap}
.d-fb{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text2);width:76px}
.d-fb i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:3px solid transparent;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.d-fb[aria-pressed="true"]{color:var(--text)}
.d-fb[aria-pressed="true"] i{border-color:var(--flaeche);box-shadow:0 0 0 2px var(--text)}
.d-fb:focus-visible i{outline:2px solid var(--akz);outline-offset:3px}
.d-mhdv{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.d-badge{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:7px;font-size:12px;font-weight:700}
.d-zeile{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--linie);flex-wrap:wrap}
.d-links .e-card h2 + .d-zeile{border-top:0}
.d-zeile .g{flex:1;min-width:160px}
.d-zeile small{display:block;color:var(--text3);font-size:12px}
.segment.d-seg{margin:0}
.d-vorschau{position:sticky;top:18px}
.d-vorschau .e-karte{width:auto;cursor:default}
.d-eigen summary{cursor:pointer;display:flex;align-items:center;gap:10px;list-style:none}
.d-eigen summary::-webkit-details-marker{display:none}
.d-eigen summary::before{content:"▸";color:var(--text3)}
.d-eigen[open] summary::before{content:"▾"}
.d-eigen[open] > .segment{margin:12px 0}
@media (max-width:1100px){.d-seite{grid-template-columns:minmax(0,1fr)}.d-vorschau{position:static}}
/* 3.83.0 Übersicht (Entwurf E-Uebersicht) */
.u-raster{margin-top:4px}
.u-achse{display:grid;grid-template-columns:44px repeat(var(--n,6),minmax(0,1fr));gap:12px}
.u-skala{height:200px;display:flex;flex-direction:column;justify-content:space-between;font-size:11px;color:var(--text3);text-align:right}
.u-spalte{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:8px;min-width:0}
.u-spalte:focus-visible{outline:2px solid var(--akz);outline-offset:3px;border-radius:12px}
.u-feld{height:200px;border-radius:12px;background-color:var(--flaeche2);display:flex;flex-direction:column-reverse;gap:3px;padding:4px;overflow:hidden;
  background-image:linear-gradient(var(--linie) 1px,transparent 1px);background-size:100% 50px;background-position:0 -1px}
.u-blk{border-radius:9px;background:color-mix(in srgb, var(--akz-hell,var(--akz)) 24%, var(--flaeche));color:color-mix(in srgb, var(--akz-stark,var(--akz)) 75%, #000);
  padding:6px 8px;font-size:12px;font-weight:700;overflow:hidden;line-height:1.25;flex:none;white-space:nowrap;text-overflow:ellipsis}
[data-thema="dunkel"] .u-blk{color:var(--text)}
.u-blk small{display:block;font-weight:500;overflow:hidden;text-overflow:ellipsis}
.u-spalte.heu .u-blk{background:var(--akz-hell,var(--akz));color:#fff}
.u-spalte.heu .u-feld{background-color:var(--akz-t)}
.u-sk b{display:block;font-size:13px}
.u-sk span{display:block;font-size:12px;color:var(--text3)}
.u-spalte.heu .u-sk b{color:var(--akz-stark,var(--akz))}
.u-lg{display:flex;gap:18px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--linie);color:var(--text2);font-size:12.5px}
.u-lg b{color:var(--text)}
.u-wahl button{height:26px;font-size:12px}
.u-link{all:unset;cursor:pointer;color:var(--akz);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
.u-lager{--sp:minmax(0,1fr) 120px 120px 140px}
.u-alt > .karte{margin:0;height:100%}
.e-card .e-mhdk{margin:0}
.e-card .e-vg{padding:6px 12px 2px;font-size:12px;font-weight:700;color:var(--akz-stark,var(--akz))}
.e-card .e-summe{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--akz-t);font-weight:700;color:var(--akz-stark,var(--akz))}
@media (max-width:820px){
  .u-achse{grid-template-columns:repeat(3,minmax(0,1fr))}
  .u-skala{display:none}
  .u-feld{height:140px}
  .u-lager{--sp:minmax(0,1fr) 80px 90px}
  .u-lager .e-lz > :nth-child(3){display:none}
  .e-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* 3.83.0 Tagesplan (Entwurf E-Tagesplan) */
.t-tage{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.t-tg{height:46px;min-width:76px;padding:0 10px;border-radius:12px;border:0;background:var(--flaeche);display:flex;flex-direction:column;align-items:center;justify-content:center;
  font:inherit;font-size:11.5px;color:var(--text3);font-weight:600;cursor:pointer;box-shadow:0 0 0 1px var(--linie) inset}
.t-tg b{font-size:13.5px;color:var(--text)}
.t-tg[aria-current="true"]{background:var(--tinte);color:color-mix(in srgb, var(--tinte-auf) 70%, transparent);box-shadow:none}
.t-tg[aria-current="true"] b{color:var(--tinte-auf)}
.t-raster{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.t-rechts{display:flex;flex-direction:column;gap:16px;min-width:0}
.t-auftrag{display:flex;flex-direction:column;gap:12px;padding-top:12px;border-top:1px solid var(--linie)}
.t-prod .e-ct + .t-auftrag{border-top:0;padding-top:0}
.t-kopf{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.t-kopf .g{flex:1;min-width:200px}
.t-kopf small{font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.t-kopf h3{margin:2px 0 0;font-size:22px;font-weight:700;letter-spacing:-.02em}
.t-kopf .e-mhdk{padding:10px 14px}
.t-kopf .e-mhdk b{font-size:20px}
.t-kopf .e-mhdk em{margin-left:8px}
.t-zwei{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.e-z.t-z{grid-template-columns:72px minmax(0,1fr) auto}
.t-zt{grid-template-columns:minmax(0,1fr) auto;padding:0}
.t-zt span,.t-zt b{padding:6px 12px;border-top:1px solid var(--linie)}
.t-zt span:nth-child(-n+2),.t-zt b:nth-child(-n+2){border-top:0}
.t-zb{display:flex;align-items:center;gap:8px;border:1.5px dashed var(--rand);border-radius:12px;padding:9px 12px;font-size:13px;flex-wrap:wrap}
.t-zb b{color:var(--warn)}
.t-zb .mhd{margin-left:auto;display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:7px;font-size:11.5px;font-weight:700;border:0}
.t-zb.fehlt{border-color:color-mix(in srgb, var(--warn) 55%, transparent);background:var(--warn-t)}
.t-fuss{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media (max-width:1100px){.t-raster{grid-template-columns:minmax(0,1fr)}}
@media (max-width:820px){.t-zwei{grid-template-columns:minmax(0,1fr)}.t-tg{min-width:58px;height:42px}}
/* 3.83.0 Mixplanung (Entwurf E-Mixplanung) */
.mx-liste{--sp:minmax(0,1fr) 70px 62px 70px 112px 62px}
.mx-z{min-height:52px}
.mx-so b{display:block;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mx-so small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mx-z.krit{box-shadow:inset 3px 0 0 var(--fehler)}
.mx-z.sel.krit{box-shadow:inset 3px 0 0 var(--akz-hell,var(--akz))}
.mx-tp{margin-left:auto;height:26px}
.e-lt .e-pill + .mx-tp{margin-left:8px}
.mx-nach{display:flex;align-items:center;gap:10px}
.mx-bearb{display:flex;flex-direction:column;gap:10px}
.e-panel .mp-karte{margin:0;border:1px solid var(--linie)!important;border-radius:14px;padding:10px 12px}
.e-panel .mp-kopf{flex-wrap:wrap;gap:6px}
.e-panel .mp-zahlen{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.e-panel .mp-gebinde{grid-template-columns:minmax(0,1fr)!important}
.e-panel .mp-optionen{grid-template-columns:minmax(0,1fr)!important}
.mx-gesamt{display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow:auto}
.mx-gz > summary{display:flex;align-items:center;gap:8px;padding:7px 12px;border-top:1px solid var(--linie);cursor:pointer;list-style:none;font-size:13px}
.mx-gz > summary::-webkit-details-marker{display:none}
.mx-gz > summary span:first-child{flex:1;min-width:0}
.e-kk + .mx-gz > summary{border-top:0}
.mx-gz .e-z{padding-left:24px;color:var(--text2)}
@media (max-width:820px){.mx-liste{--sp:minmax(0,1fr) 64px 96px}.mx-liste .e-lz > :nth-child(3),.mx-liste .e-lz > :nth-child(4),.mx-liste .e-lz > :nth-child(6){display:none}}
.mx-liste .e-pill{max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px}
/* 3.83.0 Lager → Verpackung (Entwurf E-Verpackung) */
.v-liste{--sp:minmax(0,1fr) 82px 78px 84px 84px 104px}
.v-liste .e-lz b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v-liste .e-lz small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v-sort{all:unset;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit}
.v-sort.r2{text-align:right}
.v-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.v-filter .e-chips{flex:1}
.v-kunde{width:auto;height:30px;min-height:0;border-radius:15px;padding:0 12px;font-size:12.5px}
.bst-detail .k.symbol[aria-label="Verlauf schließen"]{display:none}
@media (max-width:820px){.v-liste{--sp:minmax(0,1fr) 72px 92px}.v-liste .e-lz > :nth-child(3),.v-liste .e-lz > :nth-child(4),.v-liste .e-lz > :nth-child(5){display:none}}
/* 3.83.0 Freigaben (Entwurf E-Freigaben) */
.f-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.f-filter .e-chips{flex:1}
.f-liste{--sp:150px minmax(0,1fr) 20px 64px}
.f-z{min-height:56px}
.f-z.grau{opacity:.7}
.f-art{height:24px;padding:0 9px;border-radius:12px;background:var(--flaeche2);font-size:12px;font-weight:700;color:var(--text2);display:inline-flex;align-items:center;justify-self:start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.f-art.vp{background:var(--akz-t);color:var(--akz-stark,var(--akz))}
.f-art.pr{background:var(--warn-t);color:var(--warn)}
.f-art.rt{background:color-mix(in srgb, var(--fehler) 12%, var(--flaeche));color:var(--fehler)}
.f-t b{display:block;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.f-t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.f-d{color:var(--text3);font-size:12.5px;text-align:right}
.f-liste .fg-mehr{margin:10px 14px}
.f-karte .fg-karte{margin:0;border:1px solid var(--linie)!important;border-radius:14px;padding:10px 12px;background:var(--flaeche)}
.f-karte .fg-icon,.f-karte .fg-titel > b{display:none}
.f-karte .fg-kopf{flex-wrap:wrap}
.f-karte .fg-aktion{flex-wrap:wrap}
@media (max-width:820px){.f-liste{--sp:minmax(0,1fr) 20px 52px}.f-liste .f-art{display:none}}
.f-karte .fg-titel{display:none}

.mx-summe{display:flex;gap:16px;align-items:center;flex-wrap:wrap;color:var(--text2);font-size:13px}
.mx-summe b{color:var(--text)}
.e-panel .mp-zutaten{font-size:12px}
.e-panel .mp-fuss + *{overflow-x:auto}

/* 3.83.0 Nachbesserung nach Prüfung */
.f-sammel{display:flex;gap:6px;flex-wrap:wrap}
.f-sammel:empty{display:none}
.f-karte .fg-text,.f-karte .fg-aktion,.f-karte .fg-links,.f-karte .fg-kopf{margin-left:0!important;padding-left:0!important}
.f-karte .fg-links{display:flex;flex-wrap:wrap;gap:6px}
.f-karte input.fg-mark,.f-karte label:has(> input.fg-mark){display:none}
.f-karte.nurlesen .fg-aktion{display:none}
.e-pf{flex-wrap:wrap}
.e-panel .mp-karte{overflow-x:auto}
.e-werte4 b{white-space:normal;overflow-wrap:anywhere}
@media (min-width:1101px) and (max-width:1200px){
  body.e-panel-offen #buehne{padding-right:380px}
  .e-panel{width:368px}
}
@media (max-width:1100px){
  body.e-panel-offen::after{content:"";position:fixed;inset:0;z-index:29;background:rgba(15,18,23,.28);pointer-events:none}
}

/* 3.91.0: Packliste – Tage als Kacheln, Vorschau der Summen */
.pl-schnell{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.pl-kopf{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.pl-kopf b{flex:1;text-align:center}
.pl-wochen{display:flex;flex-direction:column;gap:8px}
.pl-tage{display:grid;grid-template-columns:44px repeat(var(--n,6),minmax(0,1fr));gap:6px;align-items:center}
.pl-kw{font-size:11px;font-weight:700;color:var(--text3)}
.pl-tag{height:54px;min-width:0;border-radius:12px;border:1.5px solid var(--linie);background:var(--flaeche);font:inherit;font-size:11.5px;font-weight:600;
  color:var(--text3);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;padding:0}
.pl-tag b{font-size:15px;color:var(--text)}
.pl-tag.heute b{color:var(--akz-stark,var(--akz))}
.pl-tag[aria-pressed="true"]{background:var(--tinte);border-color:var(--tinte);color:color-mix(in srgb, var(--tinte-auf) 70%, transparent)}
.pl-tag[aria-pressed="true"] b{color:var(--tinte-auf)}
.pl-vorschau{margin-top:14px;border-radius:12px;background:var(--flaeche2);padding:10px 12px;min-height:44px}
.pl-werte{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pl-werte span{display:block;font-size:10.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.pl-werte b{font-size:17px}

/* ======================================================================
   3.84.0 Design E, Paket 3 – Handy (Entwürfe E-Handy-Plan, E-Handy-Auftrag)
   ====================================================================== */
@media (max-width:820px){
  .plan-karten.hp{gap:8px}
  .plan-karten.hp.mitleiste{padding-bottom:170px}
  .hp-kopf{position:sticky;top:calc(-1 * var(--a4));z-index:5;margin:calc(-1 * var(--a4)) calc(-1 * var(--a4)) 0;height:58px;padding:0 6px 0 6px;
    display:flex;align-items:center;gap:6px;background:var(--insel);color:#fff}
  .hp-kopf b{flex:1;font-size:17px;text-align:center}
  .hp-kopf button{height:44px;padding:0 12px;border:0;background:transparent;color:#9cc8f2;font:inherit;font-weight:700;cursor:pointer}
  .hp-tage{display:flex;gap:6px;overflow-x:auto;padding:4px 0 2px;scrollbar-width:none}
  .hp-tage::-webkit-scrollbar{display:none}
  .hp-tg{flex:1 0 58px;height:56px;border-radius:14px;border:0;background:var(--flaeche);display:flex;flex-direction:column;align-items:center;justify-content:center;
    font:inherit;font-size:11.5px;color:var(--text3);font-weight:600;cursor:pointer}
  .hp-tg b{font-size:15px;color:var(--text)}
  .hp-tg i{display:block;width:24px;height:3px;border-radius:2px;background:var(--linie);overflow:hidden;margin-top:2px}
  .hp-tg i u{display:block;height:100%;background:var(--akz-hell,var(--akz))}
  .hp-tg.heute b{color:var(--akz-stark,var(--akz))}
  .hp-tg.on{background:var(--tinte);color:color-mix(in srgb, var(--tinte-auf) 65%, transparent)}
  .hp-tg.on b{color:var(--tinte-auf)}
  .hp-sum{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:2px 4px;color:var(--text3);font-size:13px}
  /* 3.90.2: ganze Woche untereinander, je Tag ein Abschnitt */
  .hp-tag{display:flex;flex-direction:column;gap:8px;scroll-margin-top:8px}
  .hp-tag + .hp-tag{margin-top:14px;padding-top:12px;border-top:1px solid var(--linie)}
  .hp-sum b{color:var(--text);font-size:15px}
  .hp-sum.heute b{color:var(--akz-stark,var(--akz))}
  .hp-tag .hp-leer{padding:12px}
  .hp-liste{display:flex;flex-direction:column;gap:8px}
  .hp-karte{background:var(--flaeche);border-radius:18px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;border:2px solid transparent;cursor:pointer}
  .hp-karte.sel{border-color:var(--akz-hell,var(--akz))}
  .hp-ko{display:flex;align-items:center;gap:10px;min-width:0}
  .hp-rund{width:28px;height:28px;border-radius:50%;border:2px solid var(--rand);background:transparent;flex:none;display:grid;place-items:center;color:#fff;padding:0;cursor:pointer;
    box-shadow:0 0 0 8px transparent}
  .hp-karte.sel .hp-rund{background:var(--akz-stark,var(--akz));border-color:var(--akz-stark,var(--akz))}
  .hp-kunde{flex:1;min-width:0;font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hp-ko .mhd{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:7px;font-size:12px;font-weight:700;border:0;white-space:nowrap}
  .hp-sorte{font-size:17px;font-weight:700;margin-left:38px;margin-top:-6px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
  .hp-sorte.ohne{margin-left:0;margin-top:0}
  .hp-geb{border-radius:12px;background:var(--flaeche2);padding:5px 12px}
  .hp-geb div{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:2px 0}
  .hp-geb span{color:var(--text3);font-weight:600}
  .hp-werte{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--linie);border-radius:12px}
  .hp-werte div{padding:5px 10px;border-left:1px solid var(--linie);min-width:0}
  .hp-werte div:first-child{border-left:0}
  .hp-werte span{display:block;font-size:10.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
  .hp-werte b{font-size:14px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hp-leer{border-radius:18px;border:1.5px dashed var(--rand);padding:22px;text-align:center;color:var(--text2);font-weight:600}
  .hp-unten{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
  .hp-unten .k{min-height:44px;flex:1}
  .hp-leiste{position:fixed;left:10px;right:10px;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:40;background:var(--insel);color:#fff;border-radius:22px;padding:12px;
    box-shadow:0 14px 34px rgba(20,23,28,.35)}
  .hp-leiste .t{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:0 4px 10px}
  .hp-leiste .t b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hp-leiste .t span{font-size:12.5px;color:#a2a9b5;white-space:nowrap}
  .hp-knoepfe{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .hp-knoepfe button{height:52px;border-radius:14px;border:0;background:var(--insel-aktiv);color:#fff;font:inherit;font-weight:700;display:flex;flex-direction:column;align-items:center;
    justify-content:center;gap:2px;font-size:12.5px;cursor:pointer}
  .hp-knoepfe button.on{background:var(--akz-stark,var(--akz))}
  .hp-knoepfe.vier{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hp-tg.knapp i u{background:var(--warn)}
  .hp-tg.voll i u{background:var(--fehler)}
  .hp-tg.ruhe:not(.on){background:color-mix(in srgb, var(--flaeche) 55%, transparent);color:var(--text3)}
  .hp-werte.zwei{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-werte b .marke-zub{font-size:11.5px;color:var(--warn-t,var(--warn))}
  .hp-mit{font-size:12.5px;color:var(--text3);font-weight:600}
  .hp-rund{position:relative}
  .hp-rund::after{content:"";position:absolute;inset:-8px}
  .hp-karte:focus-visible{outline:2px solid var(--akz-stark,var(--akz));outline-offset:2px}
}
/* Blatt von unten (E-Handy-Auftrag) – auch am PC als Fenster nutzbar */
dialog.h-blatt{border:0;padding:0;margin:auto auto 6px;width:min(560px,calc(100vw - 12px));max-height:calc(100vh - 66px);border-radius:26px;background:var(--flaeche2);
  color:var(--text);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -10px 40px rgba(20,23,28,.25)}
dialog.h-blatt:not([open]){display:none}
dialog.h-blatt::backdrop{background:rgba(20,23,28,.4)}
.h-kopf{background:var(--flaeche);flex:none}
.h-griff{width:40px;height:5px;border-radius:3px;background:var(--rand);margin:0 auto;flex:none;position:relative;top:8px}
.h-kz{display:flex;align-items:flex-start;gap:8px;background:var(--flaeche);padding:6px 16px 12px;border-bottom:1px solid var(--linie);flex:none}
.h-kz small{font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.h-kz h2{margin:2px 0 0;font-size:21px;font-weight:700;letter-spacing:-.02em}
.h-kz .e-zu{width:44px;height:44px;border-radius:14px}
.h-sb{flex:1;min-height:0;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}
.h-sb .e-mhdk b{font-size:22px}
.h-sb .e-werte4{background:var(--flaeche)}
.h-knoepfe{padding:10px calc(10px + env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px;
  background:var(--flaeche);border-top:1px solid var(--linie);flex:none}
.h-knoepfe .k{height:50px;border-radius:14px}
@media (max-width:820px){.e-wochenwahl,.zubabgleich{display:none!important}}

/* ======================================================================
   3.84.0 Design E, Paket 3 – gemeinsame Bausteine für alle übrigen Seiten
   (Entscheidung Slava 30.10.2026: übrige Seiten über die Bausteine, der
   Aufbau der Seiten bleibt). Kopf, Reiter, Karten, Tabellen, Merker als
   Pillen, Fenster, Eingabefelder, Hinweise im Stil der E-Entwürfe.
   ====================================================================== */
.kopfzeile h1{font-size:22px;font-weight:700;letter-spacing:-.02em}
.kopfzeile .ueber{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
.modulreiter{border:0;border-radius:12px;background:color-mix(in srgb, var(--rand) 35%, var(--flaeche2));padding:3px}
.modulreiter button{border-radius:9px;height:30px;font-weight:600;font-size:12.5px;color:var(--text2)}
.modulreiter button[aria-current="page"]{background:var(--tinte);color:var(--tinte-auf);box-shadow:none}
/* Karten */
.karte{border-radius:18px}
.karte > table:first-child th:first-child{border-top-left-radius:18px}
.karte > table:first-child th:last-child{border-top-right-radius:18px}
.karte.leer,.leer{color:var(--text3)}
/* Tabellen wie die E-Listen: ruhiger Kopf, klare Zeilen */
th{background:var(--flaeche2);color:var(--text3);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:9px 10px;border-bottom:1px solid var(--linie)}
td{padding:7px 10px;border-bottom:1px solid var(--linie2)}
tbody tr:last-child > td{border-bottom:0}
tr.klickbar:hover > td,tbody tr.klickbar:hover > td{background:color-mix(in srgb, var(--flaeche2) 55%, var(--flaeche))}
tr.gewaehlt > td{background:var(--akz-t)}
/* Merker als Pillen */
.merker{border-radius:11px;padding:1px 9px;font-weight:700;font-size:11.5px;line-height:18px}
/* Abschnitts-Überschriften */
.abschnitt{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
/* Eingabefelder */
/* :where = ohne Gewicht, eigene Regeln einzelner Felder (Zellen, Mengen, Suche) gehen vor */
:where(input:not([type=checkbox]):not([type=radio]):not([type=color]):not(.e-menge):not(.e-wfeld):not(.e-suchfeld):not(.zelle),select){border-radius:10px;border-color:var(--linie)}
:where(input:not([type=checkbox]):not([type=radio]):not([type=color]):not(.e-menge):not(.e-wfeld):not(.e-suchfeld):not(.zelle),select):hover{border-color:var(--rand)}
textarea{border-radius:10px;border-color:var(--linie)}
/* Hinweise */
.warn,.hinweis,.banner{border-radius:14px}
/* Fenster: großer Radius, Kopf und Fuß wie das Seitenpanel */
dialog{border-radius:22px;border:0}
dialog .inhalt > h2:first-child{font-size:20px;font-weight:700;letter-spacing:-.02em;background:var(--flaeche);border-bottom:1px solid var(--linie)}
dialog .inhalt > .knopfreihe:last-child{background:var(--flaeche2);border-top:1px solid var(--linie)}
.fenster-zu{border-radius:10px}
/* Kennzahl-Kacheln der Bereichsseiten wie .e-kpi */
.dkpi{border-radius:16px;box-shadow:none}
.dkpi .z{letter-spacing:-.02em}
/* Segmente in Leisten wie im Entwurf */
.ansichtsleiste .segment button,.segment button{font-weight:600}
/* 3.84.1: Abstand zwischen Kennzahlen, Filterleiste und Liste (lagen bündig aufeinander) */
#buehne > .e-kpis + *,#buehne > .v-filter + *,#buehne > .mx-summe + *,#buehne > .f-filter + *,
#buehne > .importwege + *,#buehne > .karte.klein + .karte{margin-top:12px}

/* ======================================================================
   3.85.0 Runde 1 (Entwürfe F, Slava 30.10.2026)
   ====================================================================== */
/* Monatsplan: Tageskopf geordnet */
.e-reihe{grid-template-columns:172px minmax(0,1fr)}
.e-tag{align-items:stretch;gap:6px}
.e-tn{display:flex;align-items:center;justify-content:space-between;gap:6px}
.e-pz{height:22px;min-width:46px;padding:0 7px;border-radius:7px;font-size:12px;font-weight:700;display:inline-grid;place-items:center;background:var(--akz-t);color:var(--akz-stark,var(--akz))}
.e-tag.knapp .e-pz,.e-tz.tag.knapp .e-pz{background:var(--warn-t);color:var(--warn)}
.e-tag.voll .e-pz,.e-tz.tag.voll .e-pz{background:color-mix(in srgb, var(--fehler) 14%, var(--flaeche));color:var(--fehler)}
.e-tag .e-last{margin:0}
.e-kv{display:grid;grid-template-columns:auto 1fr;column-gap:8px;row-gap:1px;font-size:12.5px}
.e-kv span{color:var(--text3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e-kv b{text-align:right;font-weight:700;white-space:nowrap}
.e-kv b.e-tagmin{display:block;font-size:12.5px;color:var(--text)}
.e-tag.voll .e-kv b.e-tagmin{color:var(--fehler)}
.e-kvtr{grid-column:1 / -1;height:1px;background:var(--linie);margin:3px 0}
.e-marken{margin-top:0}
/* Karte: Eis / Früchte und DUO */
.e-art{height:20px;padding:0 7px;border-radius:6px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;white-space:nowrap;flex:none}
.e-art.eis{background:var(--akz-t);color:var(--akz-stark,var(--akz))}
.e-art.fr{background:color-mix(in srgb, #d27b2c 16%, var(--flaeche));color:#8A3B12}
:root[data-thema="dunkel"] .e-art.fr{color:#F2B27A}
.e-ko .e-kunde{flex:0 1 auto}
.e-ko .mhd{margin-left:auto}
.e-duooffen{color:var(--warn)}
.e-duo{border:1px solid var(--linie);border-radius:10px;padding:3px 9px}
.e-duo > div{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;padding:2px 0;min-width:0}
.e-duo > div > span{color:var(--text3);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e-duo b{white-space:nowrap}
.e-duofeld{all:unset;box-sizing:border-box;width:130px;text-align:right;font-weight:700;font-size:12.5px;border-radius:6px;padding:1px 4px}
.e-duofeld::placeholder{color:var(--warn);font-weight:600}
.e-duofeld:focus{background:var(--flaeche2);box-shadow:0 0 0 2px var(--akz-hell,var(--akz))}
/* Ansichts-Schalter Karten | Tabelle */
.e-ansicht{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 4px 0 12px;border-radius:13px;background:var(--flaeche);border:1px solid var(--linie)}
.e-ansicht > span{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
.e-schiene{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--flaeche2);border-radius:10px;padding:3px;width:196px}
.e-schiene > i{position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:8px;background:var(--tinte);transition:left .15s ease}
.e-schiene.rechts > i{left:50%}
.e-schiene button{position:relative;height:26px;border:0;background:transparent;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:6px;font-weight:600;font-size:12.5px;color:var(--text2);cursor:pointer}
.e-schiene button[aria-pressed="true"]{color:var(--tinte-auf)}
@media (max-width:820px){.e-ansicht{display:none!important}}
/* Tabelle je Tag */
.e-tt .e-tt-flaeche{background:var(--flaeche);border-radius:18px;overflow-x:auto}
.e-tz{display:grid;align-items:center;min-height:44px;border-top:1px solid var(--linie)}
.e-tz > *{padding:0 5px;min-width:0}
.e-tz .r{text-align:right}
.e-tz.kopf{min-height:36px;border-top:0;background:var(--flaeche2);font-size:11px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.e-tt-kw{padding:10px 12px 6px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3);border-top:1px solid var(--linie)}
.e-tt-tag{display:block;padding:0;border-top:0}
.e-tz.tag{min-height:50px;background:color-mix(in srgb, var(--flaeche2) 60%, var(--flaeche));border-top:1px solid var(--rand)}
.e-tz.tag.heute{box-shadow:inset 3px 0 0 var(--akz)}
.e-tt-name{grid-column:1 / span 3;display:flex;align-items:center;gap:10px}
.e-tt-name .e-last{flex:1;max-width:120px;height:6px;border-radius:3px;background:var(--flaeche2);overflow:hidden;margin:0}
.e-tt-name .e-last i{display:block;height:100%;background:var(--akz-hell,var(--akz));border-radius:3px}
.e-tz.tag.voll .e-last i{background:var(--fehler)}
.e-tz.tag .s{font-weight:700;font-size:13px}
.e-tz.tag .s.leer{color:var(--text3);font-weight:500}
.e-tz .e-kunde{font-size:11.5px}
.e-tt-sorte{display:flex;align-items:center;gap:6px;min-width:0}
.e-tt-sorte .e-sorte{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e-tt-mengen{display:flex;flex-direction:column;gap:2px}
input.e-tt-menge{display:block;width:100%;height:30px;border:1px solid transparent;border-radius:8px;background:var(--flaeche2);text-align:right;padding:0 6px;font:inherit;font-weight:600;color:var(--text)}
input.e-tt-menge.leer{background:var(--flaeche);border:1px dashed var(--linie)}
input.e-tt-menge:hover{border-color:var(--rand)}
input.e-tt-menge:focus{outline:none;border-color:var(--akz-hell,var(--akz));box-shadow:0 0 0 2px var(--akz-t)}
.e-tz .e-mixzelle textarea.mixfeld{all:unset;box-sizing:border-box;display:block;width:100%;font-size:13px;font-weight:700;line-height:1.35;white-space:pre-wrap;border-radius:6px;padding:2px 4px}
.e-tz .e-mixzelle textarea.mixfeld:focus{background:var(--flaeche2);box-shadow:0 0 0 2px var(--akz-hell,var(--akz))}
.e-tz .e-duo{border:0;padding:4px 0}
.e-tz .mhd{display:inline-flex;align-items:center;height:22px;padding:0 7px;border-radius:7px;font-size:11.5px;font-weight:700;white-space:nowrap;border:0}
.e-tz.gm{box-shadow:inset 3px 0 0 var(--akz-hell,var(--akz))}
.e-tz.sel{background:var(--akz-t)}
.e-tz.offen{background:color-mix(in srgb, var(--akz-t) 60%, var(--flaeche))}
.e-tz.weg{opacity:.35}
.e-tz[draggable="true"]{cursor:grab}
.e-tz .e-weg{display:none}
.e-tz:hover .e-weg,.e-tz:focus-within .e-weg{display:inline-flex}
.e-tt-zub{padding:6px 12px 8px 98px;border-top:1px solid var(--linie2,var(--linie))}
.e-tt-neu{padding:6px 12px 10px 98px}
.e-tt-ziel:empty{display:none}
.e-tt-ziel{padding:8px 12px}
.e-duo > div > span{flex:1}
.e-tz .e-duofeld{width:74px}
/* Mixplanung: Sorte klappt in der Liste auf (statt Panel) */
.mx-liste{--sp:minmax(0,1fr) 70px 62px 70px 112px 78px 34px}
.mx-dd{width:30px;height:30px;border-radius:9px;border:1px solid var(--linie);background:var(--flaeche);display:grid;place-items:center;color:var(--text2);cursor:pointer;padding:0}
.mx-z.sel .mx-dd{background:var(--tinte);border-color:var(--tinte);color:var(--tinte-auf)}
.mx-klapp{border-top:1px solid color-mix(in srgb, var(--akz) 30%, var(--linie));background:var(--flaeche2);padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.mx-drei{display:grid;grid-template-columns:260px minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:start}
.mx-drei.duo{grid-template-columns:minmax(0,1fr)}
.mx-zwei{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:10px;align-items:start}
.mx-zut{display:flex;flex-direction:column;gap:10px;min-width:0}
.mx-vs{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:7px 12px;border-top:1px solid var(--linie);font-size:13px}
.e-kk + .mx-vs{border-top:0}
.mx-vs small{display:block;font-size:11px;color:var(--text3);font-weight:600}
.mx-vs b{white-space:nowrap}
.mx-vs em{font-style:normal;font-size:12.5px;color:var(--text3);white-space:nowrap}
.mx-vs em.e-neg{color:var(--fehler)}
.mx-vs.beste{background:color-mix(in srgb, var(--ok,#1F7A4D) 10%, var(--flaeche))}
.mx-vs button{white-space:nowrap}
.mx-kf{display:flex;gap:6px;align-items:center}
.mx-klapp .mp-karte{margin:0}
@media (max-width:1180px){.mx-drei{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.mx-drei > :first-child{grid-column:1 / -1}.mx-zwei{grid-template-columns:minmax(0,1fr)}}
@media (max-width:820px){.mx-liste{--sp:minmax(0,1fr) 64px 96px 34px}.mx-liste .e-lz > :nth-child(6){display:none}.mx-drei{grid-template-columns:minmax(0,1fr)}}
.mx-zut .e-zt{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;column-gap:18px}
.mx-zwei{grid-template-columns:minmax(0,1fr) minmax(380px,470px)}
@media (max-width:1180px){.mx-zwei{grid-template-columns:minmax(0,1fr)}}
.mx-klapp .mp-zahlen:not(.mp-mitzahlen){display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.mx-klapp .mp-zahlen .mp-planfeld{grid-column:1 / -1}
.mx-klapp .mp-zahlen .mp-planfeld input{width:100%}
/* Gebinde-Maske in drei Spalten (Entwurf F-Gebinde) */
dialog.gebindedialog{width:min(1240px,96vw)}
.gkoerper.gdrei{grid-template-columns:minmax(0,.8fr) minmax(0,1.55fr) minmax(0,.8fr);align-items:start;background:var(--flaeche2)}
.gspalte{display:flex;flex-direction:column;gap:14px;min-width:0}
.gdrei .gblock{background:var(--flaeche);border-radius:16px;padding:0;overflow:hidden}
.gdrei .gblock > h3{display:flex;align-items:center;gap:8px;margin:0;padding:10px 14px;border-bottom:1px solid var(--linie);font-size:11.5px;letter-spacing:.05em}
.gdrei .gblock > :not(h3){margin-left:14px;margin-right:14px}
.gdrei .gblock > :last-child{margin-bottom:12px}
.gdrei .graster{grid-template-columns:1fr;gap:0;margin-top:4px}
.gdrei .graster .feld{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,150px);align-items:center;gap:10px;padding:5px 0;border-top:1px solid var(--linie2,var(--linie))}
.gdrei .graster .feld:first-child{border-top:0}
.gdrei .graster .feld > span{font-size:13px;color:var(--text2);text-transform:none;letter-spacing:0;font-weight:500}
.gdrei .graster .feld input[placeholder="fehlt"]::placeholder{color:var(--warn);font-weight:600}
.gdrei .gsorte{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
@media (max-width:1000px){.gkoerper.gdrei{grid-template-columns:1fr 1fr}.gdrei > .gspalte:last-child{grid-column:1 / -1}}
@media (max-width:820px){.gkoerper.gdrei{grid-template-columns:1fr}}
/* Kunden & Sorten: Sortenliste mit Filtern + Sorte gegliedert (Entwurf F-Sorten) */
.ks-zwei{display:grid;grid-template-columns:280px minmax(0,1fr);gap:12px;align-items:start;margin-top:12px}
.ks-liste{border-radius:18px;overflow:hidden;padding:0}
.ks-kk{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--linie)}
.ks-kk b,.ks-kk .linkknopf{color:var(--text);letter-spacing:0;text-transform:none;font-size:12.5px;font-weight:700}

.ks-chips{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;border-bottom:1px solid var(--linie)}
.ks-chip{height:28px;padding:0 10px;border-radius:14px;border:1px solid var(--linie);background:var(--flaeche);font:inherit;font-size:12.5px;font-weight:600;color:var(--text2);display:inline-flex;align-items:center;gap:3px;cursor:pointer}
.ks-chip b{color:var(--text)}
.ks-chip.warn{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 35%, var(--linie))}
.ks-chip.warn b{color:var(--warn)}
.ks-chip.on{background:var(--tinte);border-color:var(--tinte);color:var(--tinte-auf)}
.ks-chip.on b{color:var(--tinte-auf)}
.ks-sl{max-height:calc(100vh - 260px);overflow:auto}
.ks-s{all:unset;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 8px;width:100%;padding:7px 12px;border-top:1px solid var(--linie2,var(--linie));cursor:pointer}
.ks-s:first-child{border-top:0}
.ks-s b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ks-s small{grid-column:1;font-size:11.5px;color:var(--text3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ks-s small.ks-warn{color:var(--warn);font-weight:600}
.ks-s .e-art{grid-row:1 / span 2;grid-column:2;align-self:center}
.ks-s:hover{background:var(--flaeche2)}
.ks-s.on{background:var(--akz-t);box-shadow:inset 3px 0 0 var(--akz)}
.ks-s:focus-visible{outline:2px solid var(--akz);outline-offset:-2px}
.ks-detail{min-width:0;display:flex;flex-direction:column;gap:12px}
.ks-kopf{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:18px}
.ks-titel{flex:1;min-width:0}
.ks-titel small{font-size:11.5px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
input.ks-name{display:block;width:100%;border:0;background:transparent;padding:0;margin:2px 0 8px;font:inherit;font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text);height:auto;min-height:0;border-radius:6px}
input.ks-name:focus{outline:none;box-shadow:0 0 0 2px var(--akz-t)}
.ks-tags{display:flex;gap:6px;flex-wrap:wrap}
.ks-akt{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.ks-drei{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;align-items:start}
.ks-block{border-radius:16px;overflow:hidden;padding:0}
.ks-f{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 12px;border-top:1px solid var(--linie2,var(--linie));font-size:13px}
.ks-kk + .ks-f{border-top:0}
.ks-f > span:first-child{color:var(--text2)}
.ks-f b{text-align:right}
.ks-warn{color:var(--warn)!important;font-weight:700}
.ks-fw{display:flex;align-items:center;gap:6px}
.ks-fw input{width:80px;height:30px;min-height:0;text-align:right;padding:0 8px;font-weight:600}
.ks-fw small{font-size:11.5px;color:var(--text3);min-width:30px}
.ks-notiz{grid-template-columns:1fr}
.ks-notiz input{width:100%;height:32px;min-height:0}
.ks-sw{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-top:1px solid var(--linie2,var(--linie));font-size:13px;cursor:pointer}
.ks-kk + .ks-sw{border-top:0}
.ks-sw input{appearance:none;-webkit-appearance:none;width:36px;height:22px;border-radius:11px;background:var(--rand);position:relative;cursor:pointer;margin:0;flex:none;border:0}
.ks-sw input::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}
.ks-sw input:checked{background:var(--akz)}
.ks-sw input:checked::after{left:17px}
.ks-sw input:focus-visible{outline:2px solid var(--akz);outline-offset:2px}
.ks-mehr{display:flex;gap:14px;padding:8px 12px;border-top:1px solid var(--linie2,var(--linie));font-size:12.5px}
.ks-anteile{padding:9px 12px;display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--linie2,var(--linie))}
.ks-balken{display:flex;height:9px;border-radius:5px;overflow:hidden;background:var(--flaeche2)}
.ks-balken i{display:block;height:100%}
.ks-leg{font-size:12px;color:var(--text2)}
.ks-gk{display:flex;align-items:center;gap:8px;margin-top:2px}
.ks-gk h3{margin:0;font-size:15px;font-weight:700}
.ks-gebs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.ks-geb{border-radius:16px;overflow:hidden;padding:0;cursor:pointer}
.ks-geb:hover{box-shadow:0 0 0 2px var(--akz-t)}
.ks-geb.fehlt{box-shadow:inset 3px 0 0 var(--warn)}
.ks-gh{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--linie);white-space:nowrap}
.ks-gh b{font-size:16px;letter-spacing:-.01em}
.ks-gh small{color:var(--text3);font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis}
.ks-ed{margin-left:auto;width:30px;height:30px;border-radius:9px;border:1px solid var(--linie);background:var(--flaeche);display:grid;place-items:center;color:var(--text2);cursor:pointer;flex:none;padding:0}
.ks-gz{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:6px;padding:5px 12px;border-top:1px solid var(--linie2,var(--linie));font-size:12.5px;align-items:baseline}
.ks-gh + .ks-gz,.ks-gt + .ks-gz{border-top:0}
.ks-gz span{color:var(--text3);font-weight:600}
.ks-gz b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ks-gz em{font-style:normal;color:var(--text2);font-weight:700;white-space:nowrap}
.ks-gt{padding:6px 12px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3);background:var(--flaeche2)}
.ks-gf{display:flex;gap:6px;flex-wrap:wrap;padding:9px 12px;border-top:1px solid var(--linie)}

@media (max-width:1100px){.ks-zwei{grid-template-columns:1fr}.ks-sl{max-height:320px}}
@media (max-width:820px){.ks-drei{grid-template-columns:1fr}.ks-kopf{flex-direction:column}.ks-akt{justify-content:flex-start}}

/* Kundenliste schmaler, damit Sorten und Sorte Platz haben */
.kundenseite .kundenspalte{width:210px}
.ks-zwei{grid-template-columns:260px minmax(0,1fr)}
@media (max-width:1100px){.kundenseite .kundenspalte{width:190px}}
/* Rezepte: Filter links, Liste, Rezept klappt auf (Entwurf F-Rezepte) */
.rz-zwei{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px;align-items:start}
.rz-filter{border-radius:18px;padding:0;overflow:hidden;position:sticky;top:96px}
.rz-fg{padding:10px 12px;border-top:1px solid var(--linie);display:flex;flex-direction:column;gap:2px}
.rz-fg:first-child{border-top:0}
.rz-fg h4{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
.rz-fo{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;height:30px;padding:0 8px;border-radius:8px;cursor:pointer;font-size:13px}
.rz-fo b{font-size:12px;color:var(--text3);font-weight:600}
.rz-fo:hover{background:var(--flaeche2)}
.rz-fo.on{background:var(--tinte);color:var(--tinte-auf);font-weight:700}
.rz-fo.on b{color:var(--tinte-auf)}
.rz-fo:focus-visible{outline:2px solid var(--akz);outline-offset:1px}
.rz-fg select{height:32px;min-height:0}
.rz-liste2{border-radius:18px;overflow:hidden;padding:0}
.rz-z{display:grid;grid-template-columns:34px minmax(0,1.2fr) 150px 60px minmax(0,1.5fr) 86px 34px;gap:10px;align-items:center;min-height:50px;padding:4px 12px 4px 8px;border-top:1px solid var(--linie)}
.rz-z.kopf{min-height:34px;border-top:0;background:var(--flaeche2);font-size:11px;font-weight:700;color:var(--text3);letter-spacing:.05em;text-transform:uppercase}
.rz-z .r2{text-align:right}
.rz-z.offen{background:var(--akz-t)}
.rz-z.grau{opacity:.7}
.rz-name{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.rz-name .linkknopf{font-weight:700;text-align:left}
.rz-ant{display:flex;flex-direction:column;gap:4px}
.rz-balken{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--flaeche2)}
.rz-balken i{display:block;height:100%}
.rz-balken .mi{background:var(--akz)}.rz-balken .va{background:#9A7BD6}.rz-balken .st{background:#E0A43B}
.rz-ant small{font-size:11.5px;color:var(--text2);font-weight:600}
.rz-ver{min-width:0}
.rz-ver .gebindechips{flex-wrap:wrap}
.rz-auszug{border-top:1px solid color-mix(in srgb, var(--akz) 30%, var(--linie));background:var(--flaeche2);padding:12px 14px 12px 50px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px}
.rz-teile,.rz-seite{display:flex;flex-direction:column;gap:12px;min-width:0}
.rz-zz{display:grid;grid-template-columns:minmax(0,1fr) 80px 90px 90px;gap:10px;align-items:center;padding:5px 12px;border-top:1px solid var(--linie2,var(--linie));font-size:13px}
.rz-zz.kopf{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3);background:var(--flaeche2);border-top:0}
.rz-zz .r2{text-align:right}
.rz-zz > span:first-child{display:flex;gap:6px;align-items:center;min-width:0}
.rz-bal{height:6px;border-radius:3px;background:var(--flaeche2);overflow:hidden}
.rz-bal i{display:block;height:100%;background:var(--akz-hell,var(--akz))}
.rz-quelle{padding:8px 12px;font-size:12.5px;color:var(--text2)}
.rz-af{grid-column:1 / -1;display:flex;gap:8px;align-items:center}
.e-mz.klick{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;gap:10px;width:100%;padding:7px 12px;border-top:1px solid var(--linie);font-size:13px;cursor:pointer}
.e-mz.klick:hover{background:var(--flaeche2)}
@media (max-width:1180px){.rz-z{grid-template-columns:34px minmax(0,1fr) 130px 54px minmax(0,1fr) 34px}.rz-z > :nth-child(6){display:none}.rz-auszug{grid-template-columns:1fr;padding-left:14px}}
@media (max-width:820px){.rz-zwei{grid-template-columns:1fr}.rz-filter{position:static}.rz-z{grid-template-columns:34px minmax(0,1fr) 34px}.rz-z > :nth-child(3),.rz-z > :nth-child(4),.rz-z > :nth-child(5){display:none}}
/* Lager Verpackung: Status-Leiste, gruppiert, Zeile klappt auf (Entwurf F-Verpackung) */
.v-stat{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--flaeche);border-radius:16px;overflow:hidden}
.v-stat .e-kpi{border-radius:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-left:1px solid var(--linie)}
.v-stat .e-kpi:first-child{border-left:0}
.v-stat .e-kpi span{font-size:12.5px;color:var(--text2)}
.v-stat .e-kpi b{font-size:20px}
.v-stat .e-kpi[aria-current="true"]{background:var(--tinte)}
.v-stat .e-kpi[aria-current="true"] span,.v-stat .e-kpi[aria-current="true"] b{color:var(--tinte-auf)}
.v-filter .seitensuche{width:220px;height:34px;min-height:0}
.v-liste{--sp:34px minmax(0,1fr) 86px 76px 76px 88px 90px 104px}
.v-gr{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 14px;border-top:1px solid var(--rand);background:color-mix(in srgb, var(--flaeche2) 60%, var(--flaeche));font-size:12.5px;color:var(--text2)}
.v-gr b{font-size:13.5px;color:var(--text)}
.v-p{width:9px;height:9px;border-radius:50%;flex:none}
.v-z .mx-dd{width:28px;height:28px}
.v-vs{font-weight:700}
.v-klapp{border-top:1px solid color-mix(in srgb, var(--akz) 30%, var(--linie));background:var(--flaeche2);padding:12px 14px 12px 50px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.8fr);gap:12px;align-items:start}
.v-rw{padding:12px 12px 6px}
.v-rwb{height:12px;border-radius:6px;background:var(--flaeche2);overflow:hidden}
.v-rwb i{display:block;height:100%;background:var(--akz);border-radius:6px}
.v-rwl{display:flex;justify-content:space-between;font-size:11.5px;color:var(--text3);margin-top:5px}
.v-zahlen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--linie)}
.v-zahlen div{padding:8px 12px;border-left:1px solid var(--linie);min-width:0}
.v-zahlen div:first-child{border-left:0}
.v-zahlen span{display:block;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
.v-zahlen b{font-size:15px}
.v-ku{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}
.v-ku span{height:24px;padding:0 9px;border-radius:8px;background:var(--flaeche2);font-size:12px;font-weight:600;color:var(--text2);display:inline-flex;align-items:center}
.v-af{grid-column:1 / -1;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
@media (max-width:1180px){.v-klapp{grid-template-columns:1fr 1fr;padding-left:14px}.v-klapp > :first-child{grid-column:1 / -1}.v-liste{--sp:34px minmax(0,1fr) 80px 70px 84px 104px}.v-liste .e-lz > :nth-child(6),.v-liste .e-lz > :nth-child(7){display:none}}
@media (max-width:820px){.v-stat{grid-template-columns:1fr 1fr}.v-liste{--sp:30px minmax(0,1fr) 72px 92px}.v-liste .e-lz > :nth-child(4),.v-liste .e-lz > :nth-child(5),.v-liste .e-lz > :nth-child(6),.v-liste .e-lz > :nth-child(7){display:none}.v-klapp{grid-template-columns:1fr}.v-zahlen{grid-template-columns:1fr 1fr}}
/* Lager Zutaten (Entwurf F-Zutatenlager) */
.lg-stat{grid-template-columns:repeat(4,minmax(0,1fr))}
.lg-liste{--sp:34px minmax(0,1fr) 104px 70px 104px 96px 104px 50px}
input.lg-feld{width:96px;height:30px;min-height:0;text-align:right;padding:0 8px;font-weight:600;margin-left:auto;display:block}
input.lg-feld.e-neg{color:var(--fehler)}
.lg-spaet{display:block;font-size:11px;color:var(--fehler);font-weight:700}
.lg-klapp{grid-template-columns:repeat(3,minmax(0,1fr))}
.lg-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 12px;border-top:1px solid var(--linie);font-size:13px}
.lg-opt small{display:block;font-size:11.5px;color:var(--text3)}
.lg-gruende{grid-column:1 / -1;background:var(--flaeche);border-radius:12px;font-size:12.5px;color:var(--text2);line-height:1.6;padding:8px 12px}
.lg-gruende summary{cursor:pointer;font-weight:700;color:var(--akz-stark,var(--akz))}
.lg-gruende ul{margin:6px 0 0;padding-left:18px}
@media (max-width:1180px){.lg-liste{--sp:34px minmax(0,1fr) 100px 96px 104px}.lg-liste .e-lz > :nth-child(4),.lg-liste .e-lz > :nth-child(6),.lg-liste .e-lz > :nth-child(8){display:none}.lg-klapp{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.lg-stat{grid-template-columns:1fr 1fr}.lg-liste{--sp:30px minmax(0,1fr) 96px}.lg-liste .e-lz > :nth-child(n+4){display:none}.lg-klapp{grid-template-columns:1fr}}
/* 3.85.0 Nachbesserung (Prüfer) */
.rz-zz{grid-template-columns:minmax(0,1fr) 90px 140px}
.mx-vsm{display:block;font-size:11.5px;color:var(--text3)}
.mx-jetank > summary{cursor:pointer;list-style:none}
.mx-jetank > summary::-webkit-details-marker{display:none}
.mx-jetank .mp-zutatenhuelle{overflow-x:auto;padding:0 8px 8px}
.e-tt-plus{width:22px;height:22px;border-radius:7px;border:1px dashed var(--rand);background:transparent;color:var(--text2);cursor:pointer;padding:0;flex:none;display:none}
.e-tz:hover .e-tt-plus,.e-tz:focus-within .e-tt-plus{display:inline-grid;place-items:center}
.e-tt-sorte .e-fehlt{white-space:nowrap}
:root[data-dichte] .e-reihe.e-tt-tag{padding:0}
/* Spalten-Regeln der Listen nach Aufklapp-Knopf (alte Regel ≤ 820 px blendete Bestand aus) */
@media (max-width:820px){.v-liste .e-lz > :nth-child(3){display:block}}
@media (min-width:821px) and (max-width:1180px){.lg-liste .e-lz > :nth-child(7){display:block}}

/* ===================== 3.86.0 Runde 2 (b) */
/* ======================================================================
   3.86.0 Runde 2, Gruppe B (Entwürfe G): Artikel & Preise, Verpackungsartikel,
   Posteingang, Rechnungskontrolle
   ====================================================================== */
/* gemeinsame Bausteine */
.r2b-nm{min-width:0}
.r2b-nm b,.r2b-nm small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2b-nm b{font-weight:700}
.r2b-nm b.r2b-norm{font-weight:500}
.r2b-ell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2b-leise{color:var(--text3)}
.r2b-rot,.r2b-nm small.r2b-rot{color:var(--fehler);font-weight:600}
.r2b-pills{display:flex;gap:4px;flex-wrap:wrap;min-width:0}
.r2b-pills .e-pill,.r2b-nm .e-pill{height:22px;padding:0 9px;font-size:11.5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:22px}
.r2b-zt .e-lz.grau,.r2b-vp .e-lz.grau,.r2b-pe .e-lz.grau{opacity:.72}
.r2b-z.sel > .mx-dd{background:var(--tinte);border-color:var(--tinte);color:var(--tinte-auf)}
.r2b-z .mx-dd{width:28px;height:28px}
.r2b-mehr{justify-content:flex-end}
.r2b-mehr .linkknopf,.r2b-rg .v-gr .linkknopf{color:var(--akz-stark,var(--akz));font-weight:700}
input.seitensuche.r2b-such{width:240px;height:34px;min-height:0;background:var(--flaeche);color:var(--text)}
/* Aufklappen: Kästen nebeneinander (Anzahl über --kn) */
.v-klapp.r2b-klapp{grid-template-columns:repeat(var(--kn,3),minmax(0,1fr))}
.r2b-klapp .e-mz > span{min-width:0}
.r2b-klapp .e-mz > b{text-align:right;min-width:0;overflow-wrap:anywhere}
.r2b-klapp .e-mz.rot{background:color-mix(in srgb, var(--fehler) 8%, var(--flaeche));color:var(--fehler);font-weight:700}
.r2b-klapp .e-mz.rot span{color:inherit}
.r2b-klapp .e-mz.gross{background:var(--akz-t);color:var(--akz-stark,var(--akz));font-weight:700}
.r2b-hinw{color:var(--text2);font-size:12.5px;line-height:1.45}
.r2b-belege{display:inline-flex;gap:6px;flex-wrap:wrap}
.r2b-belege:empty{display:none}
/* Filter links (wie Rezepte), am Handy hinter einem Knopf */
.r2b-filter .rz-fo.r2b-wa b{color:var(--warn)}
.r2b-filter select{width:100%;background:var(--flaeche);color:var(--text)}
.r2b-filter .rz-fg select + select,.r2b-filter .rz-fo + select{margin-top:4px}
.r2b-fknopf{display:none}
.rz-filter.r2b-filter{max-height:calc(100vh - 110px);overflow:auto}
.r2b-kstand{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.r2b-kstand > div{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--text2);padding:2px 8px}
.r2b-kstand small{color:var(--text3);white-space:nowrap}
.r2b-kstand > div.r2b-rot small{color:var(--fehler);font-weight:600}
.r2b-spalte{display:flex;flex-direction:column;gap:12px;min-width:0}
/* Artikel & Preise */
.r2b-zt{--sp:34px minmax(0,1.2fr) 120px minmax(0,1.3fr) minmax(0,1fr) 30px}
/* Verpackungsartikel */
.r2b-vp{--sp:minmax(0,1.3fr) 90px 80px minmax(0,1fr) 120px 96px 90px}
.r2b-chk{height:30px;padding:0 12px;border-radius:15px;background:var(--flaeche);display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text2);cursor:pointer}
.r2b-chk input{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--tinte)}
/* Posteingang */
.r2b-pe{--sp:34px 92px minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr) 120px}
.r2b-gf{--sp:92px minmax(0,1.3fr) minmax(0,1fr) 110px}
.r2b-warn{display:flex;align-items:center;gap:10px;margin:0}
.r2b-stat + *{margin-top:12px}
.r2b-fragen .e-kk{background:var(--flaeche2)}
.r2b-fz{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-top:1px solid var(--linie);font-size:13px}
.r2b-fragen .e-kk + .r2b-fz{border-top:0}
.r2b-fq{min-width:0;flex:1}
.r2b-fq b{display:block;font-weight:700}
.r2b-fq small{display:block;color:var(--text3);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2b-fw{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end;flex:none;max-width:62%}
.r2b-fw select{height:30px;min-height:0;font-size:12.5px;max-width:190px;padding:0 8px;background:var(--flaeche);color:var(--text)}
/* Rechnungskontrolle */
.r2b-rg{--sp:34px 130px minmax(0,1fr) 100px 50px 110px minmax(0,1.4fr)}
.r2b-fl select,.r2b-fl input[type="date"]{height:34px;min-height:0;background:var(--flaeche);color:var(--text)}
.r2b-fl select{max-width:240px}
.r2b-fl input[type="date"]{width:150px}
.r2b-grund{padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.r2b-grund textarea{width:100%;min-height:56px;resize:vertical;font:inherit;font-size:13px;padding:6px 8px;border-radius:9px;border:1px solid var(--linie);background:var(--flaeche);color:var(--text)}
.r2b-knr{display:flex;gap:6px;flex-wrap:wrap}

@media (max-width:1180px){
  .v-klapp.r2b-klapp{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:14px}
  .r2b-zt{--sp:34px minmax(0,1fr) minmax(0,1fr) minmax(0,.9fr) 30px}
  .r2b-zt .e-lz > :nth-child(3){display:none}
  .r2b-vp{--sp:minmax(0,1.3fr) 84px 72px 110px 90px 84px}
  .r2b-vp .e-lz > :nth-child(4){display:none}
  .r2b-pe{--sp:34px 84px minmax(0,1.4fr) minmax(0,1fr) 112px}
  .r2b-pe .e-lz > :nth-child(5){display:none}
  .r2b-rg{--sp:34px 120px minmax(0,1fr) 50px 104px minmax(0,1.2fr)}
  .r2b-rg .e-lz > :nth-child(4){display:none}
  .r2b-fw{max-width:none}
  .r2b-fz{flex-wrap:wrap}
}
@media (max-width:820px){
  .r2b-fknopf{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;font-weight:700;cursor:pointer}
  .r2b-fknopf b{min-width:20px;height:20px;border-radius:7px;background:var(--tinte);color:var(--tinte-auf);font-size:11px;display:grid;place-items:center;padding:0 6px}
  .r2b-fknopf svg{margin-left:auto}
  .r2b-filter.r2b-zu > .rz-fg{display:none}
  .r2b-filter:not(.r2b-zu) > .r2b-fknopf{border-bottom:1px solid var(--linie)}
  .v-klapp.r2b-klapp{grid-template-columns:1fr;padding-left:14px}
  input.seitensuche.r2b-such{width:100%}
  .r2b-zt{--sp:30px minmax(0,1fr) minmax(0,.9fr)}
  .r2b-zt .e-lz > :nth-child(5),.r2b-zt .e-lz > :nth-child(6){display:none}
  .r2b-vp{--sp:minmax(0,1fr) 96px 84px}
  .r2b-vp .e-lz > :nth-child(2),.r2b-vp .e-lz > :nth-child(3),.r2b-vp .e-lz > :nth-child(6){display:none}
  .r2b-pe{--sp:30px 64px minmax(0,1fr) 96px}
  .r2b-pe .e-lz > :nth-child(4){display:none}
  .r2b-gf{--sp:64px minmax(0,1fr) 96px}
  .r2b-gf .e-lz > :nth-child(3){display:none}
  .r2b-rg{--sp:30px minmax(0,1fr) 96px minmax(0,1fr)}
  .r2b-rg .e-lz > :nth-child(3),.r2b-rg .e-lz > :nth-child(5){display:none}
  .r2b-fz{flex-direction:column;align-items:stretch}
  .r2b-fw{justify-content:flex-start}
  .r2b-fw select{max-width:none;flex:1 1 140px}
  .r2b-fl input[type="date"]{width:calc(50% - 5px)}
  .r2b-fl select{max-width:none;flex:1 1 100%}
}

/* ===================== 3.86.0 Runde 2 (a) */
/* ======================================================================
   Runde 2, Gruppe A – Einkaufsliste, Bestellungen, Lieferanten
   (Entwürfe G-Einkaufsliste, G-Bestellungen, G-Lieferanten)
   ====================================================================== */
/* Status-Leiste mit beliebig vielen Feldern; ohne Filter nur Anzeige */
/* auto-fit: so viele Felder nebeneinander wie Platz ist; die Trennlinien
   entstehen aus dem 1-px-Abstand, auch wenn eine zweite Reihe nötig ist */
.v-stat.r2a-stat{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--linie)}
.v-stat.r2a-stat .e-kpi{border-left:0;background:var(--flaeche);padding:10px 14px}
.v-stat.r2a-stat .e-kpi[aria-current="true"]{background:var(--tinte)}
.v-stat.r2a-stat .e-kpi span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v-stat.r2a-stat .e-kpi b{font-size:18px;white-space:nowrap}
.e-kpi.r2a-fest{cursor:default}
.v-stat .e-kpi:disabled{cursor:default}
.v-stat .e-kpi.ok b{color:var(--gruen,#1f7a4d)}
#buehne > .r2a-stat + *,#buehne > .schutzhinweis + .r2a-stat{margin-top:12px}
/* Gemeinsames */
.r2a-leise{color:var(--text3)}
.r2a-rot{color:var(--fehler)!important;font-weight:700}
.e-lz.r2a-grau{opacity:.6}
.r2a-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;min-width:0}
.r2a-spalte{display:flex;flex-direction:column;gap:12px;min-width:0}
.rz-fo.r2a-ohne{color:var(--text3)}
.rz-fo.r2a-ohne.on{color:var(--tinte-auf)}
.rz-fo.r2a-mehr{color:var(--akz-stark,var(--akz));font-weight:700}
.rz-fo > span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v-klapp .e-mz.rot{background:color-mix(in srgb, var(--fehler) 10%, var(--flaeche));color:var(--fehler);font-weight:700}
.v-klapp .e-mz.rot span{color:inherit}
.v-klapp .e-mz.gross{background:var(--akz-t);color:var(--akz-stark,var(--akz));font-weight:700}
.v-klapp .e-mz.gross span{color:inherit}
.v-klapp .e-mz b{min-width:0;overflow-wrap:anywhere}
.e-lz.r2a-summe{background:color-mix(in srgb, var(--flaeche2) 60%, var(--flaeche));font-weight:700;border-top:1px solid var(--rand)}
.v-gr.r2a-wgr{flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.r2a-hinweis{display:flex;align-items:center;gap:10px;padding:8px 12px}
.v-filter select.r2a-wahl{height:34px;min-height:0;max-width:260px}

/* Einkaufsliste */
.r2a-ekzwei{margin-top:12px}
.r2a-filterknopf{display:none;align-items:center;gap:6px;width:100%;padding:10px 12px;border:0;background:transparent;font:inherit;font-weight:700;color:var(--text);cursor:pointer;text-align:left}
.r2a-filterknopf .navzahl{margin-left:auto}
.r2a-ek{--sp:34px 72px minmax(0,1fr) 80px 110px 104px 104px 100px}
.r2a-ek .e-lz b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2a-ek .e-lz .e-pill.wa{margin-top:2px}
.r2a-ek input.lg-feld{width:92px}
.r2a-ekklapp{grid-template-columns:repeat(3,minmax(0,1fr))}
.r2a-eks{--sp:120px minmax(0,1fr) minmax(0,.9fr) 90px 104px 100px}
.r2a-eks .e-lz .linkknopf{text-align:left;font-weight:600}
.r2a-scroll{overflow-x:auto}
.r2a-matrix table{width:100%;border-collapse:collapse}
.r2a-matrix th:first-child,.r2a-matrix td:first-child{position:sticky;left:0;background:var(--flaeche);z-index:1}
.r2a-matrix th:first-child{background:var(--flaeche2)}
.r2a-matrix tr.erg td{font-weight:700;border-top:1px solid var(--rand)}
.r2a-her{--sp:minmax(0,1fr) 110px 100px minmax(0,1fr)}
.r2a-zub{--sp:minmax(0,1fr) 100px minmax(0,1fr) minmax(0,1.2fr)}
.r2a-zname{display:flex;align-items:center;gap:6px;min-width:0}
.r2a-zname b,.r2a-zname .linkknopf{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.r2a-zub .r2a-leise,.r2a-her .r2a-leise{font-size:12.5px}

/* Bestellungen */
.r2a-bst{--sp:34px 112px 92px minmax(0,1fr) minmax(0,1.2fr) 104px 96px 128px}
.r2a-bst .e-lz b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2a-bst .e-lz small.r2a-rot{font-weight:600}
.r2a-bklapp{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.r2a-pos{grid-column:1 / -1;--sp:minmax(0,1.6fr) 96px 104px 96px 84px 108px 90px 78px}
.r2a-pos .e-lz{min-height:40px}
.r2a-pos .e-lz .linkknopf{text-align:left}
.r2a-pos .e-lz b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2a-kette{display:flex;gap:4px;padding:12px}
.r2a-kette > span{flex:1;min-width:0;text-align:center;padding:6px 4px;border-radius:8px;background:var(--flaeche2);color:var(--text3)}
.r2a-kette > span b{display:block;font-size:11.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.r2a-kette > span small{display:block;font-size:10.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.r2a-kette > span.ok{background:color-mix(in srgb, var(--gruen,#1f7a4d) 14%, var(--flaeche));color:var(--gruen,#1f7a4d)}
.r2a-kette > span.offen{background:var(--warn-t);color:var(--warn)}
.r2a-kette > span.problem{background:color-mix(in srgb, var(--fehler) 12%, var(--flaeche));color:var(--fehler)}
.r2a-abw{padding:6px 12px;border-top:1px solid var(--linie);font-size:12.5px;color:var(--fehler);font-weight:600}
.r2a-belege{display:flex;gap:6px;flex-wrap:wrap;padding:8px 12px;border-top:1px solid var(--linie)}

/* Lieferanten: Liste links, kurze Akte rechts */
.rz-zwei.r2a-lf{grid-template-columns:300px minmax(0,1fr);margin-top:12px}
.r2a-lfliste{max-height:calc(100vh - 230px);overflow:auto}
.r2a-lfliste .rz-fg select{width:100%}
.rz-fo.r2a-lfo{height:auto;min-height:44px;padding:7px 8px;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;width:100%}
.rz-fo.r2a-lfo b{font-size:13px;font-weight:600;color:inherit;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rz-fo.r2a-lfo span{font-size:12px;color:var(--text3);font-weight:500}
.rz-fo.r2a-lfo.on span{color:var(--tinte-auf);opacity:.8}
.rz-fo.r2a-lfo.r2a-inaktiv b{color:var(--text3)}
.rz-fo.r2a-lfo.on.r2a-inaktiv b{color:var(--tinte-auf)}
.r2a-sortknopf{all:unset;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}
.r2a-sortknopf:hover{color:var(--text)}
.r2a-sortknopf:focus-visible{outline:2px solid var(--akz);outline-offset:2px}
.r2a-name{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:2px 0 4px;overflow-wrap:anywhere}
.r2a-firma{font-size:12.5px;color:var(--text3);margin:0 0 8px}
.r2a-lfd .ks-drei{grid-template-columns:repeat(3,minmax(0,1fr))}
.r2a-lfd .e-mz b{min-width:0;overflow-wrap:anywhere}
.r2a-lfd .e-kasten .e-mz.klick b{color:var(--akz-stark,var(--akz))}
.r2a-reiter{align-self:flex-start;flex-wrap:wrap}

/* Breiten */
@media (max-width:1180px){
  .r2a-ek{--sp:34px minmax(0,1fr) 100px 104px 100px 96px}
  .r2a-ek .e-lz > :nth-child(2),.r2a-ek .e-lz > :nth-child(4){display:none}
  .r2a-ekklapp{grid-template-columns:1fr 1fr;padding-left:14px}
  .r2a-ekklapp > :first-child{grid-column:1 / -1}
  .r2a-bst{--sp:34px 108px minmax(0,1fr) minmax(0,1fr) 100px 120px}
  .r2a-bst .e-lz > :nth-child(3),.r2a-bst .e-lz > :nth-child(7){display:none}
  .r2a-bklapp{grid-template-columns:1fr;padding-left:14px}
  .r2a-pos{--sp:minmax(0,1fr) 90px 92px 100px 74px}
  .r2a-pos .e-lz > :nth-child(3),.r2a-pos .e-lz > :nth-child(5),.r2a-pos .e-lz > :nth-child(7){display:none}
  .r2a-lfd .ks-drei{grid-template-columns:1fr 1fr}
}
@media (max-width:1100px){
  .rz-zwei.r2a-lf{grid-template-columns:1fr}
  .r2a-lfliste{position:static;max-height:320px}
}
@media (max-width:820px){
  .v-stat.r2a-stat{grid-template-columns:1fr 1fr}
  .v-stat.r2a-stat .e-kpi b{font-size:16px}
  .v-stat.r2a-stat .e-kpi:last-child:nth-child(odd){grid-column:1 / -1}
  .r2a-ek{--sp:30px minmax(0,1fr) 92px 100px}
  .r2a-ek .e-lz > :nth-child(7),.r2a-ek .e-lz > :nth-child(8){display:none}
  .r2a-ek .e-lz.r2a-fehlt > :nth-child(3) b{color:var(--fehler)}
  .r2a-ekfilter.r2a-zu .rz-fg{display:none}
  .r2a-filterknopf{display:flex}
  .r2a-ekklapp{grid-template-columns:1fr}
  .r2a-eks{--sp:minmax(0,1fr) 84px 92px}
  .r2a-eks .e-lz > :nth-child(1),.r2a-eks .e-lz > :nth-child(3),.r2a-eks .e-lz > :nth-child(4){display:none}
  .r2a-her{--sp:minmax(0,1fr) 84px 90px}
  .r2a-her .e-lz > :nth-child(4){display:none}
  .r2a-zub{--sp:minmax(0,1fr) 90px}
  .r2a-zub .e-lz > :nth-child(3),.r2a-zub .e-lz > :nth-child(4){display:none}
  .r2a-bst{--sp:30px minmax(0,1fr) 92px 104px}
  .r2a-bst .e-lz > :nth-child(2),.r2a-bst .e-lz > :nth-child(5){display:none}
  .r2a-kette{flex-wrap:wrap}
  .r2a-kette > span{flex:1 1 30%}
  .r2a-pos{--sp:minmax(0,1fr) 90px 74px}
  .r2a-pos .e-lz > :nth-child(2),.r2a-pos .e-lz > :nth-child(6){display:none}
  .r2a-lfd .ks-drei{grid-template-columns:1fr}
  .v-filter select.r2a-wahl{max-width:100%;flex:1 1 160px}
}

/* ===================== 3.86.0 Runde 2 (d) */
/* ======================================================================
   Runde 2, Gruppe D (Entwürfe G): Programm, Automatik & Postfächer,
   Protokoll, Datenbank, Zubereitungen, Verbrauch
   ====================================================================== */
/* Reiter links + Inhalt rechts (Programm, Automatik) */
.r2d-zwei{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px;align-items:start}
.r2d-zwei.r2d-zwei-240{grid-template-columns:240px minmax(0,1fr)}
.r2d-rechts{display:flex;flex-direction:column;gap:12px;min-width:0}
.r2d-reiter .rz-fg{padding:8px}
.r2d-reiter .rz-fo{height:34px;padding:0 10px;border-radius:9px}
/* Karten im Raster */
.r2d-karten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.r2d-karten.r2d-drei{grid-template-columns:repeat(3,minmax(0,1fr))}
.r2d-karten > .e-kasten{min-width:0;border-radius:14px}
.r2d-voll{grid-column:1 / -1}
/* Zeile in einem Kasten */
.r2d-zs{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-top:1px solid var(--linie);font-size:13px;min-width:0}
.e-kk + .r2d-zs,.e-kk + .r2d-sw,.e-kk + .r2d-fz,.e-kk + div > .r2d-zs:first-child{border-top:0}
.r2d-zl{min-width:0;flex:1 1 auto}
.r2d-zl > span{color:var(--text2)}
.r2d-zl > b{display:block}
.r2d-zl small{display:block;font-size:11.5px;color:var(--text3);overflow-wrap:anywhere}
.r2d-zr{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;flex:0 1 auto}
.r2d-zr b{white-space:nowrap}
.r2d-sw{border-top-color:var(--linie)}
.r2d-af{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:9px 12px;border-top:1px solid var(--linie)}
.r2d-pfad{overflow-wrap:anywhere;word-break:break-word}
.r2d-pfadzeile input{flex:1 1 auto;min-width:0}
.r2d-fuss{padding:8px 12px;border-top:1px solid var(--linie);font-size:12px;color:var(--text3)}
.r2d-warn{margin:8px 12px;padding:8px 10px;border-radius:10px;background:var(--warn-t);color:var(--warn);font-size:12.5px;font-weight:600;line-height:1.45}
.r2d-warn b{color:inherit}
/* Eingaben: hell, wie die übrigen Felder */
.r2d-zahl,.r2d-feld,.r2d-pfadfeld,.r2d-ist,.r2d-fz input,.r2d-fz select,.r2d-neu input,.r2d-filter select,.r2d-fm select{
  height:30px;min-height:0;border:1px solid var(--linie);border-radius:8px;background:var(--flaeche);color:var(--text);font:inherit;font-size:13px;padding:0 8px}
.r2d-zahl{width:90px;text-align:right;font-weight:600}
.r2d-feld{width:100%}
.r2d-zahl:focus,.r2d-feld:focus,.r2d-pfadfeld:focus,.r2d-ist:focus,.r2d-fz input:focus,.r2d-fz select:focus,.r2d-neu input:focus{outline:none;border-color:var(--akz-hell,var(--akz));box-shadow:0 0 0 2px var(--akz-t)}
.r2d-zahl:disabled,.r2d-feld:disabled,.r2d-ist:disabled,.r2d-fz input:disabled,.r2d-fz select:disabled{background:var(--flaeche2);color:var(--text3)}
/* Schalter ohne Zeile (Liste der Gebindegruppen) */
.r2d-swi{appearance:none;-webkit-appearance:none;width:36px;height:22px;border-radius:11px;background:var(--rand);position:relative;cursor:pointer;margin:0;border:0;flex:none}
.r2d-swi::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}
.r2d-swi:checked{background:var(--akz)}
.r2d-swi:checked::after{left:17px}
.r2d-swi:focus-visible{outline:2px solid var(--akz);outline-offset:2px}
.r2d-swi:disabled{opacity:.5;cursor:default}
/* Alte Karten im neuen Kasten (Produktion) */
.r2d-innen > .karte{box-shadow:none;border:0;border-radius:0;margin:0;background:transparent;padding:12px 14px}
.r2d-innen > .karte.leer{padding:14px}
/* Darstellung im rechten Teil */
.r2d-darst{min-width:0}
.r2d-darst .d-seite{grid-template-columns:minmax(0,1fr) 340px}
/* Kalender: Betriebsurlaub eintragen */
.r2d-neu{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:9px 12px;border-top:1px solid var(--linie)}
.r2d-neu input{flex:1 1 120px;min-width:0}
.r2d-neu > span{font-size:12.5px;color:var(--text3)}
/* Packliste: Becherarten als Chips */
.r2d-wahl{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}
.r2d-wahlchip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 10px;border-radius:14px;border:1px solid var(--linie);background:var(--flaeche);font-size:12.5px;font-weight:600;color:var(--text2);cursor:pointer}
.r2d-wahlchip input{width:14px;height:14px;margin:0;flex:none}
/* Texte */
.r2d-klein{font-size:12px;color:var(--text2)}
.r2d-leise{color:var(--text3)}
.r2d-wa{color:var(--warn);font-weight:700}
.r2d-ok{color:var(--gruen,#1f7a4d);font-weight:700}
.r2d-rt{color:var(--fehler);font-weight:700}
.r2d-eine{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
button.r2d-eine{max-width:100%;text-align:left}
.r2d-akt{display:flex;gap:6px;justify-content:flex-end;align-items:center;flex-wrap:nowrap}
.r2d-link{font-weight:700;color:var(--akz-stark,var(--akz))}
.r2d-nl{margin-left:6px;height:20px;font-size:11px}
.r2d-grau{opacity:.7}
.r2d-zurueck{opacity:.65}
.r2d-filter{display:flex;gap:8px;flex-wrap:wrap}
.r2d-filter select{height:34px;border-radius:11px}
.r2d-spalte{display:flex;flex-direction:column;gap:12px;min-width:0}
.r2d-chips{margin-top:8px}
.kopfknoepfe input.r2d-such{width:220px;height:34px;min-height:0;flex:none}
/* „nur zurücknehmbar“ als Chip in der Kopfzeile */
.r2d-haken{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:11px;border:1px solid var(--linie);background:var(--flaeche);font-size:12.5px;font-weight:600;color:var(--text2);white-space:nowrap;cursor:pointer}
.r2d-haken input{width:14px;height:14px;margin:0;flex:none}
/* Listen (Spalten über --sp) */
.r2d-gr{--sp:minmax(0,1fr) minmax(0,1.3fr) 70px 64px 34px}
.r2d-fm{--sp:minmax(0,1fr) 80px minmax(150px,220px)}
.r2d-fm select{width:100%}
.r2d-fehlt{box-shadow:inset 3px 0 0 var(--warn)}
.r2d-abs{--sp:minmax(0,1.3fr) 110px minmax(0,.8fr) minmax(0,1fr) 120px auto}
.r2d-ml{--sp:minmax(0,1fr) 120px minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr) 90px auto}
.r2d-abgl{--sp:100px 140px minmax(0,1.5fr) minmax(0,1fr) auto}
.r2d-pl{--sp:56px 110px 130px minmax(0,1fr) auto}
.r2d-pl .e-pill{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.r2d-zub{--sp:34px minmax(0,1.2fr) 100px 90px minmax(0,.8fr) 90px minmax(0,1fr)}
.r2d-zub .v-z .mx-dd{width:28px;height:28px}
.r2d-vliste{--sp:minmax(0,1fr) 120px minmax(0,1fr) 80px 110px 70px}
.r2d-wl{--sp:minmax(110px,1fr) repeat(8,minmax(0,84px)) auto}
.r2d-vliste .abw,.r2d-wl .abw{font-weight:600}
.r2d-vliste .abw.plus,.r2d-wl .abw.plus{color:var(--warn)}
.r2d-vliste .abw.minus,.r2d-wl .abw.minus{color:var(--fehler)}
.r2d-summe{font-weight:700;background:var(--flaeche2)}
/* Zubereitung aufgeklappt: Stammdaten | Rezept */
.r2d-zklapp{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.r2d-fz{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:10px;padding:6px 12px;border-top:1px solid var(--linie);font-size:13px}
.r2d-fz > span{color:var(--text2)}
.r2d-fz input,.r2d-fz select{width:100%}
.r2d-fowa b{color:var(--warn)}
.rz-fo.on.r2d-fowa b{color:var(--tinte-auf)}
/* Verbrauch */
.r2d-vstat{grid-template-columns:repeat(4,minmax(0,1fr))}
.e-kpi.r2d-still{cursor:default}
.v-stat .e-kpi.wa b{color:var(--warn)}
.v-stat .e-kpi.wa[aria-current="true"] b{color:var(--tinte-auf)}
.r2d-ist{width:100%;text-align:right;font-weight:600}
.r2d-ist.leer{border-style:dashed}
.r2d-ist::placeholder{color:var(--text3);font-weight:500}
.r2d-summen{font-size:12.5px;color:var(--text2)}
.v-gr.r2d-heute{box-shadow:inset 3px 0 0 var(--akz)}
.v-gr .linkknopf b{font-size:13.5px}
.e-lz .r2d-handy{display:none}
.r2d-vliste .e-lz b .punkt{margin-right:6px}

@media (max-width:1280px){.r2d-darst .d-seite{grid-template-columns:minmax(0,1fr)}}
@media (max-width:1180px){
  .r2d-zwei,.r2d-zwei.r2d-zwei-240{grid-template-columns:200px minmax(0,1fr)}
  .r2d-karten.r2d-drei{grid-template-columns:repeat(2,minmax(0,1fr))}
  .r2d-abs{--sp:minmax(0,1.3fr) 100px minmax(0,1fr) auto}
  .r2d-abs .e-lz > :nth-child(3),.r2d-abs .e-lz > :nth-child(5){display:none}
  .r2d-ml{--sp:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto}
  .r2d-ml .e-lz > :nth-child(2),.r2d-ml .e-lz > :nth-child(5),.r2d-ml .e-lz > :nth-child(6){display:none}
  .r2d-abgl{--sp:90px minmax(0,1fr) minmax(0,.6fr) auto}
  .r2d-abgl .e-lz > :nth-child(2){display:none}
  .r2d-pl{--sp:52px 120px minmax(0,1fr) auto}
  .r2d-pl .e-lz > :nth-child(2){display:none}
  .r2d-zub{--sp:34px minmax(0,1.2fr) 96px minmax(0,.8fr) minmax(0,1fr)}
  .r2d-zub .e-lz > :nth-child(4),.r2d-zub .e-lz > :nth-child(6){display:none}
  .r2d-zklapp{grid-template-columns:minmax(0,1fr);padding-left:14px}
  .r2d-vliste{--sp:minmax(0,1fr) 110px 80px 104px 64px}
  .r2d-vliste .e-lz > :nth-child(3){display:none}
  .r2d-wl{--sp:minmax(0,1fr) repeat(5,minmax(0,84px)) auto}
  .r2d-wl .e-lz > :nth-child(4),.r2d-wl .e-lz > :nth-child(7),.r2d-wl .e-lz > :nth-child(8){display:none}
}
@media (max-width:1000px){.r2d-karten,.r2d-karten.r2d-drei{grid-template-columns:minmax(0,1fr)}}
@media (max-width:820px){
  .r2d-zwei,.r2d-zwei.r2d-zwei-240{grid-template-columns:minmax(0,1fr)}
  .r2d-reiter{position:static}
  .r2d-reiter .rz-fg{flex-direction:row;overflow-x:auto;gap:4px}
  .r2d-reiter .rz-fo{flex:none;gap:8px}
  .r2d-zs{flex-wrap:wrap}
  .kopfknoepfe input.r2d-such{width:auto;flex:1 1 160px;height:40px}
  .r2d-gr{--sp:minmax(0,1fr) 64px 56px 34px}
  .r2d-gr .e-lz > :nth-child(2){display:none}
  .r2d-fm{--sp:minmax(0,1fr) 56px minmax(0,1fr)}
  .r2d-abs{--sp:minmax(0,1fr) auto}
  .r2d-abs .e-lz > :nth-child(2),.r2d-abs .e-lz > :nth-child(4){display:none}
  .r2d-ml{--sp:minmax(0,1fr) minmax(0,1fr) auto}
  .r2d-ml .e-lz > :nth-child(4){display:none}
  .r2d-abgl{--sp:minmax(0,1fr) auto}
  .r2d-abgl .e-lz > :nth-child(1),.r2d-abgl .e-lz > :nth-child(4){display:none}
  .r2d-pl{--sp:46px minmax(0,1fr) auto}
  .r2d-pl .e-lz > :nth-child(3){display:none}
  .r2d-akt{flex-wrap:wrap}
  .r2d-zub{--sp:30px minmax(0,1fr) minmax(0,.8fr)}
  .r2d-zub .e-lz > :nth-child(3),.r2d-zub .e-lz > :nth-child(5){display:none}
  .r2d-fz{grid-template-columns:90px minmax(0,1fr)}
  .r2d-vstat{grid-template-columns:1fr 1fr}
  .r2d-vliste{--sp:minmax(0,1fr) 64px 112px}
  .r2d-vliste .e-lz > :nth-child(2),.r2d-vliste .e-lz > :nth-child(6){display:none}
  .e-lz .r2d-handy{display:block}
  .r2d-summen{display:none}
  .r2d-wl{--sp:minmax(0,1fr) 72px 72px auto}
  .r2d-wl .e-lz > :nth-child(2),.r2d-wl .e-lz > :nth-child(5),.r2d-wl .e-lz > :nth-child(9){display:none}
}

/* ===================== 3.86.0 Runde 2 (c) */
/* ======================================================================
   3.86.0 Runde 2 · Gruppe C (Entwürfe G: Verkauf, Auswertung)
   ====================================================================== */
/* Abstände zwischen den Blöcken einer Seite */
#buehne > .r2c-b + .r2c-b{margin-top:12px}
/* Status-Leiste mit variabler Zahl (wie Lager) */
.v-stat.r2c-stat{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
.r2c-stat .e-kpi span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2c-stat .e-kpi b{white-space:nowrap}
.r2c-stat .e-kpi.ok b{color:var(--gruen,#1f7a4d)}
.r2c-stat .e-kpi.r2c-fest{cursor:default}
.r2c-stat .e-kpi[aria-current="true"].ok b,.r2c-stat .e-kpi[aria-current="true"].wa b,.r2c-stat .e-kpi[aria-current="true"].rt b{color:var(--tinte-auf)}
/* Filterzeile */
.r2c-chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:11px;border:1px solid var(--linie);background:var(--flaeche);font-size:12.5px;font-weight:600;color:var(--text2);cursor:pointer;white-space:nowrap}
.r2c-chip input{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--tinte)}
.r2c-chip.on{color:var(--text);border-color:var(--rand)}
input.r2c-datum{width:150px;height:34px;min-height:0}
.kopfknoepfe input.r2c-kopfsuche{width:220px;flex:0 1 220px;height:34px;min-height:0}
.v-filter input.seitensuche{flex:0 1 240px}
.v-filter.r2c-b select{height:34px;min-height:0;max-width:240px}
.r2c-leise{font-size:12.5px;font-weight:600;color:var(--text3)}
.v-filter.r2c-b .e-chips{flex:0 1 auto}
.r2c-karten .e-mz b{white-space:nowrap}
.k.mini.r2c-an{border-color:var(--akz);color:var(--akz-stark,var(--akz))}
/* Marken (gewählte Kunden/Sorten, gemerkte Filter) */
.r2c-marke{display:inline-flex;align-items:center;gap:2px;height:28px;padding:0 4px 0 10px;border-radius:14px;background:var(--akz-t);color:var(--akz-stark,var(--akz));font-size:12.5px;font-weight:600;max-width:100%}
.r2c-marke > span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2c-marke button{all:unset;box-sizing:border-box;cursor:pointer;width:20px;height:20px;border-radius:10px;display:grid;place-items:center;font-weight:700;flex:none}
.r2c-marke button:hover{background:color-mix(in srgb, var(--akz) 18%, transparent)}
.r2c-marke button:focus-visible{outline:2px solid var(--akz);outline-offset:1px}
.r2c-marke.gemerkt{background:var(--flaeche);border:1px solid var(--linie);color:var(--text2)}
.r2c-marke .r2c-markename{width:auto;height:auto;padding:0 4px;border-radius:6px;display:inline;font-weight:600;color:var(--text)}
/* Zeilen */
.r2c-b .nm{min-width:0}
.r2c-b .nm > b,.r2c-b .nm > .r2c-name,.r2c-b .nm > small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.r2c-name{font-weight:700;text-align:left}
.r2c-ks{display:flex;align-items:center;gap:4px;white-space:nowrap;overflow:hidden}
.r2c-ks > b{flex:none}
.r2c-wahl{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--tinte);cursor:pointer}
.r2c-b .e-lz .e-mini{width:28px;height:28px}
.r2c-b .e-lz .mx-dd{width:28px;height:28px}
.r2c-b .e-lz.sel .mx-dd{background:var(--tinte);border-color:var(--tinte);color:var(--tinte-auf)}
.r2c-grau{opacity:.65}
.r2c-warntext{color:var(--warn)!important;font-weight:600}
.r2c-oktext{color:var(--gruen,#1f7a4d)}
.r2c-geplantz{color:var(--text2)}
.e-mz.r2c-rot b{color:var(--fehler)}
.e-mz.r2c-warn b{color:var(--warn)}
.r2c-chips{padding:8px 12px;border-top:1px solid var(--linie)}
.r2c-fuss{padding:10px 14px;border-top:1px solid var(--linie)}
.r2c-geplant{padding:0 12px 7px;font-size:11.5px;color:var(--text3)}
.r2c-schutz{display:flex;align-items:center;gap:10px}
/* Aufklappen */
.v-klapp.r2c-k3{grid-template-columns:repeat(3,minmax(0,1fr))}
.v-klapp.r2c-k1{grid-template-columns:minmax(0,1fr)}
.v-klapp .e-leer-text{grid-column:1 / -1}
/* Filter links (Rezeptkalkulation, wie Rezepte) */
.r2c-fozeile{display:flex;align-items:center;gap:4px;min-width:0}
.r2c-fozeile .rz-fo{flex:1;min-width:0}
.r2c-fozeile .rz-fo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r2c-fomenue{width:26px;height:26px;flex:none}
.rz-fo.r2c-plus{color:var(--akz-stark,var(--akz));font-weight:600}
.rz-fg select{width:100%}
/* Karten-Raster (Kostensätze, Verpackung je Art) */
.r2c-karten{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
/* Listen: Spalten */
.r2c-kalk{--sp:22px 30px minmax(0,1.4fr) minmax(0,.9fr) 90px 128px 112px 108px 30px}
.r2c-ang{--sp:30px minmax(0,1.3fr) minmax(0,1fr) 96px 104px 130px 30px}
.r2c-weg{--sp:minmax(0,1.3fr) 84px 96px 96px 104px 90px 96px 132px}
.r2c-wes{--sp:minmax(0,1.4fr) 110px 96px 96px 128px 132px}
.r2c-vp{--sp:minmax(0,1.3fr) minmax(0,1fr) 100px 150px 140px}
.r2c-zv{--sp:80px minmax(0,1fr) 120px minmax(120px,220px)}
.r2c-zv.mitkosten{--sp:80px minmax(0,1fr) 120px minmax(120px,220px) 110px}
.r2c-vb{--sp:minmax(0,1fr) 80px 84px minmax(0,1fr) 80px minmax(0,1fr) 76px minmax(0,1.2fr)}
.r2c-vl{--sp:110px 40px minmax(0,1.4fr) 90px 84px 76px minmax(0,1fr) 104px}
.r2c-vs{--sp:minmax(0,1.4fr) 48px 84px 80px minmax(0,.8fr) 116px 116px 72px 150px}
.r2c-pa{--sp:30px minmax(0,1.4fr) 110px 110px 120px}
.r2c-pa-z{--sp:minmax(0,1.6fr) 72px 76px 76px 80px 80px 104px 90px}
.r2c-spr{--sp:96px minmax(0,1.4fr) 130px 150px 90px 96px}
/* Auswertung Zutaten: Anteil-Balken, Unterzeilen, Summe */
.r2c-anteil{display:flex;align-items:center;gap:8px;min-width:0}
.r2c-bar{flex:1;height:8px;border-radius:4px;background:var(--flaeche2);overflow:hidden}
.r2c-bar i{display:block;height:100%;background:var(--akz);border-radius:4px}
.r2c-anteil small{font-size:12px;font-weight:600;color:var(--text2);min-width:44px;text-align:right}
.e-lz.r2c-unter{min-height:30px;background:color-mix(in srgb, var(--flaeche2) 40%, var(--flaeche));font-size:12.5px}
.e-lz.r2c-summe{font-weight:700;background:var(--flaeche2)}
.r2c-ohne{display:flex;flex-wrap:wrap;gap:6px;padding:8px 14px 10px;border-top:1px solid var(--linie)}
.r2c-ohne .e-pill{cursor:pointer}
/* Bericht (Lieferanten): Tabelle in der Liste */
.r2c-tabhuelle{overflow-x:auto}
table.r2c-tab{width:100%;margin:0;border:0}
table.r2c-tab th{background:var(--flaeche2);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
table.r2c-tab th .v-sort{display:block;width:100%}
/* Preisentwicklung: Artikel im Aufklappbereich */
.r2c-pa-k{overflow:hidden}
.r2c-pa-k .e-lz{padding:4px 12px}
.r2c-pa-gr{padding:6px 12px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text3);background:var(--flaeche2);border-top:1px solid var(--linie)}
.e-lz.r2c-bester{background:color-mix(in srgb, var(--gruen,#1f7a4d) 7%, var(--flaeche))}

@media (max-width:1360px){
  .r2c-kalk{--sp:22px 30px minmax(0,1.4fr) minmax(0,.9fr) 90px 128px 112px 30px}
  .r2c-kalk > .e-lz > :nth-child(8){display:none}
}
@media (max-width:1180px){
  .v-klapp.r2c-k3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .v-klapp.r2c-k3 > :first-child{grid-column:auto}
  .r2c-karten{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .r2c-kalk{--sp:22px 30px minmax(0,1fr) 110px 104px 30px}
  .r2c-kalk > .e-lz > :nth-child(4),.r2c-kalk > .e-lz > :nth-child(5),.r2c-kalk > .e-lz > :nth-child(8){display:none}
  .r2c-ang{--sp:30px minmax(0,1.3fr) minmax(0,1fr) 104px 130px 30px}
  .r2c-ang > .e-lz > :nth-child(4){display:none}
  .r2c-weg{--sp:minmax(0,1.3fr) 80px 96px 104px 96px 128px}
  .r2c-weg > .e-lz > :nth-child(4),.r2c-weg > .e-lz > :nth-child(6){display:none}
  .r2c-wes{--sp:minmax(0,1.4fr) 110px 96px 96px 132px}
  .r2c-wes > .e-lz > :nth-child(5){display:none}
  .r2c-vb{--sp:minmax(0,1fr) 80px 84px minmax(0,1fr) 80px minmax(0,1fr) 76px}
  .r2c-vb > .e-lz > :nth-child(8){display:none}
  .r2c-vl{--sp:110px minmax(0,1.4fr) 90px 84px 76px 104px}
  .r2c-vl > .e-lz > :nth-child(2),.r2c-vl > .e-lz > :nth-child(7){display:none}
  .r2c-vs{--sp:minmax(0,1.4fr) 84px 116px 116px 72px 140px}
  .r2c-vs > .e-lz > :nth-child(2),.r2c-vs > .e-lz > :nth-child(4),.r2c-vs > .e-lz > :nth-child(5){display:none}
  .r2c-pa-z{--sp:minmax(0,1.6fr) 76px 80px 104px 90px}
  .r2c-pa-z > :nth-child(2),.r2c-pa-z > :nth-child(3),.r2c-pa-z > :nth-child(6){display:none}
  .r2c-spr{--sp:96px minmax(0,1.4fr) 150px 90px}
  .r2c-spr > .e-lz > :nth-child(3),.r2c-spr > .e-lz > :nth-child(6){display:none}
}
@media (max-width:820px){
  .v-stat.r2c-stat{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .v-klapp.r2c-k3{grid-template-columns:minmax(0,1fr)}
  .r2c-karten{grid-template-columns:minmax(0,1fr)}
  .r2c-seg{flex-wrap:wrap;max-width:100%;height:auto}
  .v-filter.r2c-b > select,.v-filter.r2c-b > .seitensuche{flex:1 1 100%;width:100%;max-width:none}
  input.r2c-datum{flex:1 1 130px;width:auto}
  .kopfknoepfe input.r2c-kopfsuche{flex:1 1 160px;width:auto}
  .r2c-kalk{--sp:22px 30px minmax(0,1fr) 100px 30px}
  .r2c-kalk > .e-lz > :nth-child(4),.r2c-kalk > .e-lz > :nth-child(5),.r2c-kalk > .e-lz > :nth-child(7),.r2c-kalk > .e-lz > :nth-child(8){display:none}
  .r2c-ang{--sp:30px minmax(0,1fr) 120px 30px}
  .r2c-ang > .e-lz > :nth-child(3),.r2c-ang > .e-lz > :nth-child(4),.r2c-ang > .e-lz > :nth-child(5){display:none}
  .r2c-weg{--sp:minmax(0,1fr) 100px 112px}
  .r2c-weg > .e-lz > :nth-child(2),.r2c-weg > .e-lz > :nth-child(3),.r2c-weg > .e-lz > :nth-child(4),.r2c-weg > .e-lz > :nth-child(6),.r2c-weg > .e-lz > :nth-child(7){display:none}
  .r2c-wes{--sp:minmax(0,1fr) 100px 112px}
  .r2c-wes > .e-lz > :nth-child(3),.r2c-wes > .e-lz > :nth-child(4),.r2c-wes > .e-lz > :nth-child(5){display:none}
  .r2c-vp{--sp:minmax(0,1fr) 90px 130px}
  .r2c-vp > .e-lz > :nth-child(2),.r2c-vp > .e-lz > :nth-child(4){display:none}
  .r2c-zv{--sp:minmax(0,1fr) 96px}
  .r2c-zv.mitkosten{--sp:minmax(0,1fr) 96px 96px}
  .r2c-zv > .e-lz > :nth-child(1),.r2c-zv > .e-lz > :nth-child(4){display:none}
  .r2c-vb{--sp:minmax(0,1fr) 72px 72px 64px}
  .r2c-vb > .e-lz > :nth-child(2),.r2c-vb > .e-lz > :nth-child(4),.r2c-vb > .e-lz > :nth-child(6),.r2c-vb > .e-lz > :nth-child(8){display:none}
  .r2c-vl{--sp:100px minmax(0,1fr) 72px 92px}
  .r2c-vl > .e-lz > :nth-child(2),.r2c-vl > .e-lz > :nth-child(4),.r2c-vl > .e-lz > :nth-child(6),.r2c-vl > .e-lz > :nth-child(7){display:none}
  .r2c-vs{--sp:minmax(0,1fr) 72px 120px}
  .r2c-vs > .e-lz > :nth-child(n+2):not(:nth-child(3)):not(:nth-child(9)){display:none}
  .r2c-pa{--sp:30px minmax(0,1fr) 100px}
  .r2c-pa > .e-lz > :nth-child(3),.r2c-pa > .e-lz > :nth-child(4){display:none}
  .r2c-pa-z{--sp:minmax(0,1fr) 76px 96px}
  .r2c-pa-z > :nth-child(2),.r2c-pa-z > :nth-child(3),.r2c-pa-z > :nth-child(5),.r2c-pa-z > :nth-child(6),.r2c-pa-z > :nth-child(8){display:none}
  .r2c-spr{--sp:84px minmax(0,1fr) 84px}
  .r2c-spr > .e-lz > :nth-child(3),.r2c-spr > .e-lz > :nth-child(4),.r2c-spr > .e-lz > :nth-child(6){display:none}
}


/* ===================== 3.86.1 Kunden & Sorten geordnet (Rückmeldung Slava 30.10.2026) */
/* Kundenkopf: Name + SAP links, Ansicht und Knöpfe als eine Gruppe rechts */
.kundenkopf{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap}
.ks-kopfakt{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}
.ks-kopfakt .segment{margin:0}
.ks-sap{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text2);margin-top:2px}
.ks-sap input{width:130px;height:28px;min-height:0;padding:0 8px;font-size:12.5px;border:1px solid var(--linie);border-radius:8px;background:var(--flaeche)}
.ks-sap input::placeholder{color:var(--warn);font-weight:600}
/* Sorte: ein Kasten, drei gleich hohe Spalten */
.ks-detail{container-type:inline-size}
.ks-angaben{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;border-radius:16px;overflow:hidden;align-items:stretch}
.ks-angaben > .ks-sp{min-width:0;display:flex;flex-direction:column}
.ks-angaben > .ks-sp + .ks-sp{border-left:1px solid var(--linie)}
.ks-angaben .ks-kk{min-height:40px;box-sizing:border-box;padding:0 14px}
.ks-angaben .ks-f,.ks-angaben .ks-sw{min-height:42px;box-sizing:border-box;padding:0 14px;align-items:center}
.ks-angaben .ks-fw input{width:76px}
.ks-angaben .ks-fw small{width:34px;min-width:34px}
.ks-angaben .ks-anteile{padding:10px 14px}
.ks-angaben .ks-mehr{padding:10px 14px}
.ks-angaben .ks-notiz{padding:8px 14px}
@container (max-width:780px){
  .ks-angaben{grid-template-columns:1fr 1fr}
  .ks-angaben > .ks-sp:nth-child(3){grid-column:1 / -1;border-left:0;border-top:1px solid var(--linie);display:grid;grid-template-columns:1fr 1fr;column-gap:0}
  .ks-angaben > .ks-sp:nth-child(3) > .ks-kk{grid-column:1 / -1}
  .ks-angaben > .ks-sp:nth-child(3) > .ks-sw + .ks-sw{border-left:1px solid var(--linie2,var(--linie))}
  .ks-angaben > .ks-sp:nth-child(3) > .ks-notiz{grid-column:1 / -1}
}
@container (max-width:500px){
  .ks-angaben{grid-template-columns:1fr}
  .ks-angaben > .ks-sp + .ks-sp{border-left:0;border-top:1px solid var(--linie)}
  .ks-angaben > .ks-sp:nth-child(3){display:flex}
  .ks-angaben > .ks-sp:nth-child(3) > .ks-sw + .ks-sw{border-left:0}
}
/* Gebinde-Karten breiter, Bezeichnungen einzeilig */
.ks-gebs{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.ks-gz{grid-template-columns:96px minmax(0,1fr) auto;padding:7px 12px;align-items:center}
.ks-gz span{white-space:nowrap}
/* Schalter: normale Kippschalter (die allgemeine Feld-Regel gab Höhe 32 px und Innenabstand) */
.ks-sw input[type=checkbox]{width:34px;height:20px;min-height:0;padding:0;border-radius:10px;border:0;background:#C9D1DC;box-shadow:none}
.ks-sw input[type=checkbox]::after{left:3px;top:3px;width:14px;height:14px;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.ks-sw input[type=checkbox]:checked{background:var(--akz)}
.ks-sw input[type=checkbox]:checked::after{left:17px}
.ks-sw input[type=checkbox]:disabled{opacity:.55;cursor:not-allowed}
:root[data-thema="dunkel"] .ks-sw input[type=checkbox]:not(:checked){background:#4A5463}
/* Verpackung im Gebinde-Fenster: Rolle | Artikel | Preis | Knopf */
.vp-teilliste{display:flex;flex-direction:column}
.vp-tz{display:grid;grid-template-columns:62px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--linie2,var(--linie))}
.vp-teilliste.ohneknopf .vp-tz{grid-template-columns:62px minmax(0,1fr) auto}
.vp-tz:first-child{border-top:0}
.vp-r{font-size:13px;color:var(--text2)}
.vp-n{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:13px}
.vp-n > b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vp-n > small{font-size:11.5px;color:var(--text3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vp-n > .merker{align-self:flex-start}
.vp-p{white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;font-size:13px}.ks-gk{flex-wrap:wrap;row-gap:6px}
.ks-gebs{grid-template-columns:repeat(auto-fill,minmax(min(270px,100%),1fr))}
/* ===== 3.87.0 SAP (Reiter unter Automatik & Postfächer) ===== */
.sap-laeufe{--sp:110px 90px minmax(0,1fr) 70px 64px 52px 64px minmax(0,1.6fr)}
.sap-laeufe .n{text-align:right;font-variant-numeric:tabular-nums}
.sap-befund{--sp:80px minmax(0,1.4fr) 130px minmax(0,1fr)}
.sap-rz{--sp:minmax(0,1fr) minmax(0,1.3fr) 110px}
.sap-rz .e-lz > :nth-child(2){justify-self:start;text-align:left}
.sap-rz input[list]{width:100%}
.sap-rezepte{max-height:62vh;overflow:auto}
.sap-rezepte h3{font-size:13px;margin:12px 0 6px}
@media (max-width:1180px){
  .sap-laeufe{--sp:100px 80px 64px 56px minmax(0,1fr)}
  .sap-laeufe .e-lz > :nth-child(3),.sap-laeufe .e-lz > :nth-child(6),.sap-laeufe .e-lz > :nth-child(7){display:none}
}
@media (max-width:820px){
  .sap-laeufe{--sp:minmax(0,1fr) 64px minmax(0,1fr)}
  .sap-laeufe .e-lz > :nth-child(2),.sap-laeufe .e-lz > :nth-child(5){display:none}
  .sap-befund{--sp:70px minmax(0,1fr) auto}
  .sap-befund .e-lz > :nth-child(4){display:none}
  .sap-rz{--sp:minmax(0,1fr) minmax(0,1fr)}
  .sap-rz .e-lz > :nth-child(3){display:none}
}

/* ===================== 3.87.1 Planungsleiste mittig, Lieferanten-Suche (Slava 03.11.2026) */
.kopfzeile.mit-mitte{display:flex;align-items:center;flex-wrap:wrap;column-gap:16px}
.kopfzeile.mit-mitte > .wg{flex:1 1 0;min-width:160px}
.kopfzeile.mit-mitte > .e-planleiste{flex:none;display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.kopfzeile.mit-mitte > .kopfknoepfe{flex:1 1 0;min-width:max-content;display:flex;justify-content:flex-end;align-items:center;gap:8px}
.kopfzeile.mit-mitte > .kopfsymbole{flex:none}
.kopfzeile.mit-mitte.eng > .e-planleiste{order:5;flex-basis:100%;margin-top:8px}
.r2a-lfsuche{display:flex;flex-direction:column;gap:8px}
.r2a-lfsuche input.seitensuche{width:100%;max-width:none;flex:none}
/* ===================== 3.87.2 Tagesplan: Rezept zum Aufklappen (Slava 03.11.2026) */
.t-rezept{border:1px solid var(--linie);border-radius:14px;background:var(--flaeche);overflow:hidden}
.t-rezept > summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:13px}
.t-rezept > summary::-webkit-details-marker{display:none}
.t-rezept > summary::before{content:"";width:7px;height:7px;border-right:2px solid var(--text2);border-bottom:2px solid var(--text2);transform:rotate(-45deg);transition:transform .15s;flex:none}
.t-rezept[open] > summary::before{transform:rotate(45deg)}
.t-rezept > summary span{color:var(--text2);font-size:12px}
.t-rezept > summary:hover{background:var(--flaeche2)}
.t-rezept-in{display:flex;flex-direction:column;gap:12px;padding:0 12px 12px}
/* ===================== 3.87.3 Planungsleiste bündig, Spaltenköpfe je Tag (Slava 03.11.2026) */
.e-planleiste{align-items:center}
.e-planleiste > .e-kwnav,.e-planleiste > .e-ansicht,.e-planleiste > .e-wochenwahl{
  box-sizing:border-box;height:40px;margin:0;padding:3px;gap:4px;display:inline-flex;align-items:center;align-self:center;
  border:1px solid var(--linie);border-radius:13px;background:var(--flaeche)}
.e-planleiste > .e-ansicht{padding-left:12px;gap:8px}
.e-planleiste > .e-kwnav .k{height:32px;min-height:32px;border:0;border-radius:10px;background:transparent}
.e-planleiste > .e-kwnav .k:hover{background:var(--flaeche2)}
.e-planleiste > .e-kwnav .k.symbol{width:32px}
.e-planleiste > .e-kwnav .e-kw{padding:0 6px;min-width:96px;text-align:center}
.e-planleiste > .e-kwnav .k[aria-current="true"]{background:var(--flaeche2)}
.e-planleiste > .e-ansicht .e-schiene{height:32px;box-sizing:border-box}
.e-planleiste > .e-wochenwahl button{height:32px}
.e-tt-tag > .e-tz.kopf{min-height:30px;border-top:1px solid var(--rand)}
.e-tt-tag > .e-tz.kopf + .e-tz.tag{border-top:0}

/* ------------------------------------------------------------------ 3.88.0 Wareneingang
   Handy zuerst: eine Spalte, Suche immer oben, große Tippflächen, Karten mit
   höchstens drei kurzen Zeilen (Vorgabe Slava 03.11.2026). */
.wg-seite{display:flex;flex-direction:column;gap:14px;max-width:880px}
.wg-suche{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--linie);
  border-radius:14px;background:var(--flaeche);box-shadow:0 2px 10px rgba(0,0,0,.04);color:var(--text2)}
.wg-suche input.seitensuche{flex:1;min-width:0;border:0;background:transparent;height:38px;font-size:15px;padding:0;box-shadow:none;outline:none}
.wg-schnell{display:grid;grid-template-columns:1fr auto;gap:10px}
.wg-gross{display:flex;align-items:center;gap:12px;padding:14px 16px;border:0;border-radius:16px;background:var(--tinte);color:var(--tinte-auf);
  font:inherit;text-align:left;cursor:pointer;min-height:60px}
.wg-gross .ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb, var(--tinte-auf) 18%, transparent)}
.wg-gross b{display:block;font-size:15px}
.wg-gross small{display:block;opacity:.75;font-size:12px}
.wg-zweit{padding:0 18px;min-height:44px;border:1px solid var(--linie);border-radius:14px;background:var(--flaeche);font:inherit;font-weight:600;
  color:var(--text);cursor:pointer}
.wg-zweit:hover,.wg-karte.klick:hover{border-color:var(--rand)}
.wg-abschnitt{display:flex;flex-direction:column;gap:8px}
.wg-abschnitt > h3,.wg-offen > h3{margin:4px 2px 0;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);font-weight:700}
.wg-karten{display:flex;flex-direction:column;gap:6px}
.wg-karte{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--linie);border-radius:12px;background:var(--flaeche);
  font:inherit;text-align:left;color:var(--text);width:100%}
.wg-karte.klick{cursor:pointer}
.wg-karte:disabled{cursor:default;opacity:.85}
.wg-karte .z1,.wg-karte .z2,.wg-karte .z3,.wg-dpos .z1,.wg-dpos .z2{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0}
.wg-karte .z1 b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wg-karte .z2,.wg-karte .z3{font-size:12.5px;color:var(--text2)}
.wg-karte .z3{color:var(--text3)}
.wg-karte .z2 > span:first-child,.wg-karte .z3 > span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.wg-karte .z1 > span:last-child,.wg-karte .z2 > span:last-child{flex:none}
.wg-grau{opacity:.6}
.wg-rot{color:var(--fehler);font-weight:600}
.wg-chips{margin-bottom:2px}
/* Erfassen */
.wg-kopf{display:flex;flex-direction:column;gap:10px;padding:12px 14px}
.wg-lf{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px}
.wg-lf.leer{color:var(--text3);font-size:13px}
.wg-felder{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wg-felder .feld{display:flex;flex-direction:column;gap:4px;margin:0}
.wg-felder .feld > span,.wg-best > span,.wg-menge .feld > span{font-size:12px;font-weight:600;color:var(--text2)}
.wg-fotos{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.wg-foto{position:relative;width:52px;height:52px;border-radius:10px;border:1px solid var(--linie);background:var(--flaeche2);display:grid;place-items:center;overflow:hidden}
.wg-foto img{width:100%;height:100%;object-fit:cover}
.wg-foto .e-mini{position:absolute;top:2px;right:2px;background:var(--flaeche);border-radius:8px}
.wg-offen{display:flex;flex-direction:column;gap:6px}
.wg-chipreihe{display:flex;flex-wrap:wrap;gap:6px}
.wg-chipreihe .e-chip{min-height:36px;padding:0 12px;border-radius:18px;border:1px dashed var(--rand);background:var(--flaeche);font:inherit;font-size:13px;
  font-weight:600;color:var(--text);cursor:pointer}
.wg-pos{display:flex;flex-direction:column;gap:10px;padding:12px 14px}
.wg-pos.wg-unbekannt{border-style:dashed}
.wg-pkopf{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.wg-pkopf b{display:block;font-size:15px}
.wg-pkopf small{display:block;color:var(--text3);font-size:12px}
.wg-best{display:flex;flex-direction:column;gap:4px;margin:0}
.wg-best select{min-height:40px}
.wg-zeile{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wg-zeile > input[type=text]{flex:1;min-width:110px}
.wg-zeile > input[type=date]{flex:none;width:150px}
.wg-kurz{width:90px!important;flex:none!important;min-width:0!important}
.wg-menge .feld{display:flex;flex-direction:column;gap:4px;margin:0}
.wg-einheit{display:inline-flex;align-items:center;gap:6px;text-transform:none;letter-spacing:0}
.wg-einheit input{width:130px;font-size:16px;font-weight:700;text-align:right;min-height:42px}
.wg-einheit i{font-style:normal;color:var(--text2);font-weight:600}
.wg-gebinde{font-size:13px;color:var(--text2)}
.wg-chargen{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:12px;background:var(--flaeche2)}
.wg-chargen input{background:var(--flaeche)}
.wg-leise{font-size:12.5px;color:var(--text2)}
.wg-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13px}
.wg-check input[type=checkbox]{width:20px;height:20px;min-height:0;margin:0;flex:none}
.wg-seg{display:inline-flex;gap:2px;padding:2px;border-radius:12px;background:var(--flaeche2);align-self:flex-start}
.wg-seg button{min-height:36px;padding:0 14px;border:0;border-radius:10px;background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--text2);cursor:pointer}
.wg-seg button[aria-pressed="true"]{background:var(--flaeche);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.wg-aufteilen{display:flex;flex-direction:column;gap:6px}
.wg-aufteilen small{color:var(--text2);font-weight:600}
.wg-aufteilen .wg-zeile > span{flex:1;min-width:0;font-size:13px}
.wg-schaden{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;background:var(--warn-t)}
.wg-schaden input[type=text]{background:var(--flaeche)}
.wg-schadenknopf{align-self:flex-start;color:var(--text2)}
.wg-befunde{display:flex;flex-direction:column;gap:6px}
.wg-bf{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:12px;background:var(--warn-t);font-size:13px}
.wg-bf b{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--warn)}
.wg-bf.wg-fehler{background:color-mix(in srgb, var(--fehler) 10%, var(--flaeche))}
.wg-bf.wg-fehler b{color:var(--fehler)}
.wg-bf.wg-geklaert{background:var(--flaeche2)}
.wg-bf.wg-geklaert b{color:var(--text2)}
.wg-bf small{color:var(--text2)}
.wg-bf .k.mini{align-self:flex-start;margin-top:4px}
.wg-fuss{position:sticky;bottom:0;padding:12px 0 6px;background:linear-gradient(to top, var(--grund) 75%, transparent)}
.wg-fuss .wg-buchen{width:100%;min-height:48px;font-size:15px}
/* Lieferung ansehen */
.wg-detail{display:flex;flex-direction:column;gap:12px}
.wg-dpos{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--linie);border-radius:12px;background:var(--flaeche)}
.wg-dpos .z2{font-size:12.5px;color:var(--text2);justify-content:flex-start}
.wg-akt{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
@media (max-width:820px){
  .wg-schnell{grid-template-columns:1fr}
  .wg-felder{grid-template-columns:1fr 1fr}
  .wg-zeile > input[type=date]{width:100%;flex:1}
  .wg-einheit input{width:120px}
}
@media (max-width:420px){ .wg-felder{grid-template-columns:1fr} }
.wg-befunde[hidden],.wg-seg[hidden]{display:none}
