/* Ergänzungen zu app.css (Posteingang-App) für die Bakenkontor-App: Formulare, Verwaltung, Belege,
   Angebote, Belegung, Reinigungsplan. Nur Farben und Bausteine der Website. Keine Inline-Stile (CSP). */

.nummer{font-weight:600;color:var(--anthrazit);font-variant-numeric:tabular-nums;user-select:all}

/* Leiste: Abmelden-Knopf */
.leiste__knopf{display:grid;place-items:center;width:2.1rem;height:2.1rem;padding:0;border:0;border-radius:var(--r-knopf);background:none;color:var(--grau)}
.leiste__knopf:hover{background:var(--flaeche);color:var(--anthrazit)}
.leiste__knopf .symbol{width:1.15rem;height:1.15rem}
.band button{margin-left:.5rem;padding:0;border:0;background:none;color:var(--sand-tief);font-weight:600;text-decoration:underline;text-underline-offset:.2em}

/* Ordner: Gruppen */
.ordner__gruppe{padding:.85rem .65rem .3rem;font-size:.75rem;font-weight:600;color:var(--grau)}
.ordner__liste .ordner__gruppe:first-child{padding-top:0}
/* Breit: Die Leiste ist so hoch wie das Fenster und bleibt oben stehen. Mit vielen Bausteinen scrollt sie selbst,
   sonst lägen News, Feedback, Einstellungen und Abmelden unter dem Fensterrand (Marcs Hinweis vom 21.10.2026).
   Am Ende gibt sie das Scrollen an die Seite weiter: Steht oben ein Band, rückt so auch der Rest ins Bild. */
@media (min-width:48rem){
  .ordner{overflow-y:auto;scrollbar-width:thin}
  .ordner__liste{flex:none}
}

/* Seiten und Abschnitte */
.seite--breit{max-width:64rem}
.abschnitt-titel{margin:1.5rem 0 .6rem;font-size:1rem;font-weight:600;color:var(--anthrazit)}
.abschnitt-titel:first-child{margin-top:0}
.liste-karte{background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie),var(--schatten);overflow:hidden}
.liste-karte .post+.post,.liste-karte .vorgang+.vorgang{border-top:1px solid var(--linie)}
.liste-karte .vorgang{border-bottom:0}
.raster{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));gap:1.25rem;align-items:start}
.karte+.karte{margin-top:1.25rem}
.raster .karte+.karte{margin-top:0}
.karte__kopf b{color:var(--anthrazit);font-weight:600;font-size:.875rem}

/* Formulare */
.formular{display:grid;gap:1rem;max-width:44rem}
.formular .zwei{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.formular .drei{display:grid;grid-template-columns:2fr 1fr;gap:1rem}
.beschriftung{display:block;margin:0 0 .35rem;font-size:.85rem;font-weight:600;color:var(--anthrazit)}
.beschriftung small{font-weight:400;color:var(--grau)}
.formular .feld{margin-top:0;max-width:none}
select.feld{appearance:none;-webkit-appearance:none;padding-right:2.4rem;background-image:linear-gradient(45deg,transparent 50%,var(--anthrazit) 50%),linear-gradient(135deg,var(--anthrazit) 50%,transparent 50%);background-position:calc(100% - 1.2rem) 55%,calc(100% - .85rem) 55%;background-size:.35rem .35rem;background-repeat:no-repeat}
.knoepfe{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.kn--klein{min-height:1.9rem;padding:.25rem .7rem;font-size:.8rem}
.kn--gefahr:hover{border-color:var(--ziegel);color:var(--ziegel);background:var(--ziegel-hell)}
.schalter{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;color:var(--text)}
.schalter input{margin-top:.25rem;width:1.05rem;height:1.05rem;accent-color:var(--gruen)}
.schalter b{display:block;font-weight:600;color:var(--anthrazit)}
.schalter small{display:block;color:var(--grau);font-size:.8rem}
.wahl{display:grid;gap:.5rem}
.wahl label{display:flex;gap:.65rem;align-items:flex-start;padding:.7rem .85rem;border:1px solid var(--linie-stark);border-radius:var(--r-klein);cursor:pointer}
.wahl label:has(input:checked){border-color:var(--gruen);background:var(--gruen-zart)}
.wahl input{margin-top:.2rem;accent-color:var(--gruen)}
.wahl b{display:block;color:var(--anthrazit);font-weight:600}
.wahl small{display:block;color:var(--grau);font-size:.82rem}
.hinweis--gruen{background:var(--gruen-hell);color:var(--gruen-tief)}
.hinweis--gruen button{color:var(--gruen-tief)}
.hinweis__liste{margin:.3rem 0 0;padding-left:1.1rem}
.geheim{display:block;margin:.4rem 0;font-size:1.1rem;font-weight:600;letter-spacing:.04em;color:var(--anthrazit);user-select:all;font-variant-numeric:tabular-nums}

/* Bausteine (Freischalten) */
.bausteine{list-style:none;margin:0;padding:0}
.bausteine li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:start;padding:.7rem 0;border-bottom:1px solid var(--linie)}
.bausteine li:last-child{border-bottom:0}
.bausteine input{margin-top:.2rem;width:1.1rem;height:1.1rem;accent-color:var(--gruen)}
.bausteine b{display:block;font-weight:600;color:var(--anthrazit)}
.bausteine small{display:block;font-size:.82rem;color:var(--grau);line-height:1.4}
.bausteine .preis{font-size:.78rem;color:var(--grau);white-space:nowrap;text-align:right}
.bausteine .aus b,.bausteine .aus small{color:#93A09A}
.bausteine-gruppe{margin:1rem 0 .2rem;font-size:.78rem;font-weight:600;color:var(--grau)}
.bausteine-gruppe:first-child{margin-top:0}

/* Sperrliste bearbeiten */
.gestrichen button{margin-left:.35rem;padding:0;border:0;background:none;color:var(--sand-tief);font-weight:600;line-height:1}
.zeile-neu{display:flex;gap:.5rem;margin-top:.75rem;max-width:30rem}
.zeile-neu .feld{margin:0}

/* Tabellen */
.tabelle-huelle{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tabelle{width:100%;border-collapse:collapse;font-size:.85rem}
.tabelle th,.tabelle td{text-align:left;vertical-align:top;padding:.6rem .8rem;border-bottom:1px solid var(--linie);white-space:nowrap}
.tabelle th:first-child,.tabelle td:first-child{padding-left:1.25rem}
.tabelle th:last-child,.tabelle td:last-child{padding-right:1.25rem}
.tabelle thead th{font-weight:600;font-size:.78rem;color:var(--grau);background:var(--flaeche)}
.tabelle tbody tr:last-child td{border-bottom:0}
.tabelle .ziffer{text-align:right;font-variant-numeric:tabular-nums}
.tabelle .lang{white-space:normal;min-width:16rem}

/* Kunden in der Verwaltung */
.kunden{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:1rem;padding:1.25rem}
.kunde-karte{display:flex;flex-direction:column;gap:.75rem;padding:1.1rem 1.2rem;background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie),var(--schatten)}
.kunde-karte h2{font-size:1.05rem}
.kunde-karte p{margin:0;font-size:.85rem;color:var(--grau)}
.kunde-karte .knoepfe{margin-top:auto}
.kennzahlen{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;font-size:.82rem;color:var(--grau)}
.kennzahlen b{color:var(--anthrazit);font-weight:600;font-variant-numeric:tabular-nums}

/* Belege, Angebote, Belegung */
.post--klick{cursor:pointer}
.post--klick:hover{background:var(--seite)}
.betrag{font-weight:600;color:var(--anthrazit);font-variant-numeric:tabular-nums;white-space:nowrap}
.mailtext{margin:.6rem 0 0;padding:.75rem .9rem;border-radius:var(--r-klein);background:var(--flaeche);font-size:.84rem;color:var(--text);white-space:pre-line;max-width:44rem;overflow-wrap:anywhere}
.akte--eng{padding:0;font-size:.87rem}
.akte--eng>div{grid-template-columns:9rem minmax(0,1fr)}
.post--sand-hell{background:var(--sand-hell)}

/* Reinigungsplan */
.tage{display:grid;gap:1rem;padding:1.25rem}
.tagkarte{background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie),var(--schatten);overflow:hidden}
.tagkarte h2{padding:.7rem 1.25rem;background:var(--leiste);border-bottom:1px solid var(--linie);font-size:.9rem}
.tagkarte ul{list-style:none;margin:0;padding:.4rem 1.25rem .6rem}
.tagkarte li{display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:baseline;padding:.45rem 0;border-bottom:1px solid var(--linie);font-size:.9rem}
.tagkarte li:last-child{border-bottom:0}
.tagkarte li b{min-width:6.5rem;color:var(--anthrazit);font-weight:600}

/* Anfragen: Posten, Preisliste und Handbuch bearbeiten */
.posten{margin:.75rem 0 .25rem;max-width:44rem;border:1px solid var(--linie);border-radius:var(--r-klein);overflow:hidden;background:#fff}
.posten .tabelle th:first-child,.posten .tabelle td:first-child{padding-left:.85rem}
.posten .tabelle th:last-child,.posten .tabelle td:last-child{padding-right:.85rem}
.posten small{color:var(--grau)}
.karte__kopf .kn{margin-left:auto}
.tab-zeile{display:grid;gap:.5rem;align-items:start;padding:.5rem 0;border-bottom:1px solid var(--linie)}
.tab-zeile .feld{margin:0;max-width:none;padding:.5rem .6rem}
.tab-zeile textarea.feld{min-height:2.6rem;height:2.6rem}
.tab-kopf{padding:.4rem 0;border-bottom:0;font-size:.75rem;font-weight:600;color:var(--grau)}
.tab-zeile--preise{grid-template-columns:minmax(8rem,1.6fr) 5.5rem 9.5rem 7rem 4.5rem minmax(7rem,1fr) 2.25rem}
.tab-zeile--preise-b{grid-template-columns:minmax(9rem,1.6fr) 6rem 9.5rem minmax(8rem,1fr) 2.25rem}
.tab-zeile--handbuch{grid-template-columns:10rem minmax(0,1fr) 2.25rem}

/* Kundenliste, Aufgaben, Wissen */
.code{margin:.6rem 0 0;padding:.75rem .9rem;border-radius:var(--r-klein);background:var(--flaeche);font:inherit;font-size:.8rem;white-space:pre-wrap;overflow-wrap:anywhere;user-select:all}
.karte--abstand,.herkunft--abstand{margin-top:1.5rem}
.herkunft--abstand .liste-karte{margin-top:.6rem}
.formular--im-post{margin-top:.75rem;max-width:40rem}
.zeile-frage{display:flex;gap:.5rem}
.zeile-frage .feld{margin:0;max-width:none;flex:1}
.antwort__frage{margin:0 0 .5rem;font-weight:600;color:var(--anthrazit)}
.antwort p{margin:.3rem 0}
.quellen{margin:.5rem 0 0;font-size:.8rem;color:var(--grau)}

/* Kostenbremse: Antwort-Gedächtnis */
.liste-karte--innen{border-radius:0 0 .85rem .85rem;box-shadow:none;border-top:1px solid var(--linie)}
.verweis{padding:0;border:0;background:none;font:inherit;color:var(--gruen-tief);text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
.kacheln--abstand{margin-top:1rem}

/* Verwaltung: Kunden filtern, gesperrte Kunden, Preise, Einsicht, Löschen */
.filter{display:flex;flex-wrap:wrap;gap:.4rem;padding:1rem 1.25rem 0}
.filter__knopf{padding:.35rem .8rem;border:1px solid var(--linie-stark);border-radius:999px;background:#fff;font:inherit;font-size:.84rem;color:var(--text);cursor:pointer}
.filter__knopf b{font-weight:600;color:var(--anthrazit)}
.filter__knopf[aria-pressed="true"]{border-color:var(--gruen);background:var(--gruen-zart);color:var(--gruen-tief)}
.kunde-karte--aus{background:var(--flaeche);box-shadow:0 0 0 1px var(--linie-stark)}
.kunde-karte--aus h2{color:var(--grau)}
.preiskarte{margin:1rem 0;padding-top:.25rem;border-top:1px solid var(--linie)}
.tabelle--preis th:first-child,.tabelle--preis td:first-child{padding-left:0}
.tabelle--preis th:last-child,.tabelle--preis td:last-child{padding-right:0}
.tabelle--preis .lang{min-width:0;white-space:normal}
.preis-wechsel{margin:.75rem 0;padding:.75rem .9rem;border-radius:var(--r-klein);background:var(--sand-hell)}
.preis-wechsel p{margin:0}
.preis-wechsel .fussnote{margin-top:.3rem}
.block{display:block;font-weight:400;color:var(--grau)}
.raster--abstand{margin-top:1.25rem}
.zeile-neu--breit{max-width:none}
.zeile-neu--breit .feld{flex:1}
.karte--gefahr{box-shadow:0 0 0 1px #E8C9C2,var(--schatten)}
.schritte{margin:0 0 1rem;padding-left:1.2rem;display:grid;gap:.5rem;font-size:.9rem}
.schritte .erledigt{color:var(--grau)}
.kn--loeschen{background:var(--ziegel);border-color:var(--ziegel);color:#fff}
.kn--loeschen:disabled{background:#D8C3BE;border-color:#D8C3BE;cursor:not-allowed}
.zugriffe{list-style:none;margin:0;padding:0;font-size:.86rem}
.zugriffe li{display:flex;flex-wrap:wrap;gap:.2rem .75rem;padding:.4rem 0;border-bottom:1px solid var(--linie)}
.zugriffe li:last-child{border-bottom:0}
.zugriffe b{font-weight:600;color:var(--anthrazit);min-width:9rem}
.anmeldung__fehler--gut{background:var(--gruen-hell);color:var(--gruen-tief)}
.seite>.etiketten{margin:-.25rem 0 1rem}
.zugaenge li{grid-template-columns:minmax(0,1fr);gap:.4rem}
.zugaenge li>span:first-child{display:none}

/* Vertrieb: KI-Check und Rechner */
.formular--breit{max-width:none}
.fragen{margin:0;padding-left:1.2rem;display:grid;gap:.9rem}
.fragen li{font-size:.9rem}
.fragen b{display:block;margin-bottom:.35rem;font-weight:600;color:var(--anthrazit)}
.fragen .feld{margin:0;max-width:none}
.fragen textarea.feld{min-height:3.4rem;height:3.6rem}
.fragen__zeile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem}
.tabelle--eingabe td{vertical-align:middle}
.tabelle--eingabe .feld{margin:0;max-width:none;min-width:9rem;padding:.4rem .55rem}
.tabelle--eingabe .feld--klein{min-width:0;width:5.5rem;text-align:right}
.tabelle--eingabe select.feld{min-width:11rem}
.zeile--top td{background:var(--gruen-zart)}
.zeile--top td:first-child{font-weight:600;color:var(--gruen-tief)}
.plan{padding:1.5rem 1.6rem}
.plan__kopf{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding-bottom:.75rem;margin-bottom:.5rem;border-bottom:1px solid var(--linie)}
.plan__kopf b{font-size:1.05rem;color:var(--anthrazit)}
.plan__kopf span{font-size:.85rem;color:var(--grau)}
.plan h3{margin:1.1rem 0 .35rem;font-size:.95rem;color:var(--anthrazit)}
.plan p{margin:.3rem 0;max-width:46rem}
.plan .tabelle th:first-child,.plan .tabelle td:first-child{padding-left:0}
.ergebnis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.ergebnis>div{padding:.8rem .9rem;border-radius:var(--r-klein);background:var(--gruen-zart)}
.ergebnis__zahl{display:block;font-size:1.4rem;font-weight:600;color:var(--gruen-tief);font-variant-numeric:tabular-nums}
.ergebnis span:not(.ergebnis__zahl){font-size:.82rem;color:var(--grau)}
.bausteine--knapp li{padding:.35rem 0}

/* Verwaltung: Meldungen oben rechts, Vorführung, Kundenseite in zwei Spalten */
.zahl--knopf{border:0;font-family:inherit;cursor:pointer}
.zahl--knopf:hover{filter:brightness(.96)}
.zahl--sand{color:var(--sand-tief);background:var(--sand-mittel)}
.ordner__zahl--eilt{color:var(--ziegel)}
.band--vorfuehrung{background:var(--gruen-hell);border-bottom-color:var(--gruen-mittel);color:var(--gruen-tief)}
.band--vorfuehrung button{color:var(--gruen-tief)}
.band__form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-start;justify-content:center;max-width:46rem;margin:.6rem auto .2rem;text-align:left}
.band__form .feld{flex:1 1 20rem;margin:0;max-width:none;min-height:3.2rem}
.band__form .kn{margin-left:0;padding:.4rem .95rem;border:1px solid var(--gruen);background:var(--gruen);color:#fff;text-decoration:none}
.band__form .kn--leise{border-color:transparent;background:none;color:var(--gruen-tief)}
.vf-frage{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--linie);max-width:none}
.fehlertests li{align-items:center}
.meld__absatz{margin:.6rem 0 0;font-size:.9rem;max-width:46rem}
.meld__absatz b{font-weight:600;color:var(--anthrazit)}
.meld__technik{margin-top:.75rem;font-size:.82rem;color:var(--grau)}
.meld__technik summary{cursor:pointer;color:var(--gruen-tief);font-weight:600}
.abschnitt-titel--abstand{margin-top:1.75rem}
.seite--kunde{max-width:80rem}
.kunde-spalten{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;align-items:start}
.kunde-spalten__teil{display:contents}  /* schmal: Karten einzeln, in dieser Reihenfolge */
.kunde-spalten .karte{margin:0}
.k-stamm{order:1}.k-bausteine{order:2}.k-zugaenge{order:3}.k-sperr{order:4}.k-einsicht{order:5}.k-testen{order:6}.k-ende{order:7}
.k-garantie{order:3}  /* schmal direkt nach den Bausteinen (steht im DOM vor den Zugängen) */

/* Stunden-Garantie: Monatsbericht (Kunde), Kundenseite (Verwaltung), Rechner (Vertrieb) */
.karte.garantie{margin-top:1rem}
.karte__innen.garantie .kacheln{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));margin-bottom:1.1rem}
.karte__innen.garantie .kachel__zahl{font-size:1.45rem}
.haken small.block{margin-top:.2rem;font-size:.82rem}
@media (max-width:47.99rem){  /* Handy: zwei Spalten, die dritte Kachel über beide; Monatstabelle ohne Scrollen */
  .kacheln--drei>.kachel:nth-child(3){grid-column:1/-1}
  .garantie__monate .tabelle th,.garantie__monate .tabelle td{padding-left:.3rem;padding-right:.3rem}  /* sieben Spalten auf 375 px */
}
.garantie .knoepfe{margin-top:.75rem}
.garantie__betrag{margin:1rem 0 0;font-weight:600;color:var(--anthrazit)}
.garantie__betrag .etikett{margin-left:.35rem;vertical-align:.1em}
.garantie__monate{margin-top:.9rem;font-size:.9rem}
.garantie__monate .tabelle-huelle{margin-top:.5rem}
.garantie__monate .tabelle th:first-child,.garantie__monate .tabelle td:first-child{padding-left:0}
.garantie-rechner{margin-top:1rem;padding-top:.25rem;border-top:1px solid var(--linie)}
.garantie__monate .fussnote{margin-top:.5rem}

/* Außerhalb der App beantwortet (Ordner „Gesendet“): eigenes Etikett in Seeblau, Monatsbericht, Kundenseite */
:root{--see:#2F5168;--see-hell:#E2EBF1}
.etikett--aussen{background:var(--see-hell);color:var(--see)}
.post__bild--aussen{background:var(--see-hell);color:var(--see)}
.post__bild--aussen .symbol{width:1.05rem;height:1.05rem}
.abschnitt-unter{margin:1.1rem 0 .5rem;font-size:.875rem;font-weight:600;color:var(--grau)}
.kacheln--klein .kachel__zahl{font-size:1.45rem}
.k-antworten{order:3}
.k-antworten .kacheln{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));margin-bottom:.9rem}
@media (min-width:68rem){
  .kunde-spalten{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kunde-spalten__teil{display:grid;gap:1.25rem;min-width:0}
}
.bausteine--zwei{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15.5rem),1fr));column-gap:1.25rem}
.bausteine--zwei li{grid-template-columns:auto minmax(0,1fr);row-gap:.15rem;padding:.55rem 0;border-bottom:0}
.bausteine--zwei .preis{grid-column:2;text-align:left;white-space:normal}
.kopfzeile .kn{white-space:nowrap}

/* Einsicht: Fenster für die Anfrage (beim Kunden: Genehmigen oder Ablehnen; in der Verwaltung: Grund eintragen) */
.dialog{width:min(30rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;padding:1.4rem 1.5rem;border:0;border-radius:.85rem;background:#fff;color:var(--text);box-shadow:var(--schatten-gross)}
.dialog::backdrop{background:rgba(23,59,46,.45)}
.dialog h2{margin:0 0 .6rem;font-size:1.15rem;line-height:1.3;color:var(--anthrazit)}
.dialog p{margin:.5rem 0;font-size:.9rem}
.dialog__grund{padding:.6rem .75rem;border-radius:var(--r-klein);background:var(--gruen-zart)}
.dialog__grund b{font-weight:600;color:var(--anthrazit)}
.dialog .formular{margin-top:.75rem}
.dialog__knoepfe{justify-content:flex-end;margin-top:1rem}

/* Website-Formular (Nr. 10), eingebettet auf der Seite des Kunden */
.formularseite{display:flex;justify-content:center;align-items:flex-start;padding:1.25rem 1rem;background:var(--flaeche)}
.formularseite__karte{width:100%;max-width:36rem;padding:1.5rem;background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie),var(--schatten)}
.formularseite__karte h1{margin:0 0 .3rem;font-size:1.3rem}
.formularseite__karte>p{margin:0 0 1.2rem;color:var(--grau)}
.formularseite__fuss{margin:1.25rem 0 0!important;font-size:.75rem}
.honig{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.schalter a{color:var(--gruen-tief)}

/* Breiten */
@media (max-width:47.99rem){
  .tab-kopf{display:none}
  .tab-zeile{grid-template-columns:minmax(0,1fr) 2.25rem}
  .tab-zeile>:not(.akte-zeile__weg){grid-column:1}
  .tab-zeile .akte-zeile__weg{grid-column:2;grid-row:1}
  .zeile-frage{flex-direction:column}
  .fragen__zeile,.ergebnis{grid-template-columns:minmax(0,1fr)}
  .filter{padding:1rem 1rem 0}
  .ordner__zahl--eilt{background:var(--ziegel);color:#fff}
  .plan{padding:1.1rem}
  .ordner__liste{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(4.4rem,1fr);grid-template-columns:none;overflow-x:auto;scrollbar-width:none}
  .ordner__liste::-webkit-scrollbar{display:none}
  /* Pfeil mit Verlauf, wenn links oder rechts noch Bereiche kommen (die Klassen setzt app.js beim Wischen) */
  .ordner::before,.ordner::after{position:absolute;top:0;bottom:0;z-index:1;width:2.25rem;display:flex;align-items:center;font-size:1.35rem;line-height:1;color:var(--grau);pointer-events:none;opacity:0;transition:opacity .15s}
  .ordner::before{content:"‹";left:0;justify-content:flex-start;padding-left:.25rem;background:linear-gradient(to right,#fff 40%,rgba(255,255,255,0))}
  .ordner::after{content:"›";right:0;justify-content:flex-end;padding-right:.25rem;background:linear-gradient(to left,#fff 40%,rgba(255,255,255,0))}
  .ordner--mehr-links::before,.ordner--mehr-rechts::after{opacity:1}
  .ordner__liste .ordner__gruppe,.ordner__liste .ordner__trenner{display:none}
  .formular .zwei,.formular .drei{grid-template-columns:minmax(0,1fr)}
  .kunden,.tage{padding:1rem}
  .tabelle th:first-child,.tabelle td:first-child{padding-left:1rem}
  .akte--eng>div{grid-template-columns:minmax(0,1fr);gap:0}
}
/* Zwei-Faktor in der Karte „Ihr Zugang“ (Verwaltung, Einstellungen) */
.karte__innen.zf{border-top:1px solid var(--linie)}
.zf__titel{display:block;color:var(--anthrazit);font-size:.95rem;font-weight:600}
.zf p{max-width:44rem}
.zf__abstand{margin-top:.8rem}
.zf__einrichten{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-start;margin:.4rem 0 1.25rem}
.zf__einrichten>div{flex:1 1 16rem;min-width:0}
.zf__einrichten .geheim{margin:0 0 .8rem;word-spacing:.15em}
.zf__einrichten .code{margin:0}
.zf__qr{flex:none;width:11.5rem;height:11.5rem;border:1px solid var(--linie);border-radius:var(--r-klein);background:#fff}
.zf__codes{display:grid;grid-template-columns:repeat(2,max-content);gap:.35rem 2.75rem;margin:.4rem 0 1rem;padding:.9rem 1.25rem .9rem 2.5rem;
  border-radius:var(--r-klein);background:var(--flaeche);color:var(--anthrazit);font-size:1rem;font-weight:600;letter-spacing:.04em;
  font-variant-numeric:tabular-nums;user-select:all;max-width:max-content}
.zf__codes li::marker{color:var(--grau);font-weight:400}
@media (max-width:47.99rem){.zf__codes{grid-template-columns:max-content}}
/* WhatsApp als Kanal im Posteingang (18.10.2026): eigene Farben der App, nicht das Grün von WhatsApp */
.etikett--wa{background:#fff;color:var(--gruen-tief);box-shadow:inset 0 0 0 1px var(--gruen-mittel)}
.wa-medien{display:flex;flex-wrap:wrap;gap:.5rem;margin:.55rem 0 .15rem}
.wa-bild{display:block;line-height:0;border-radius:var(--r-klein);overflow:hidden;border:1px solid var(--linie)}
.wa-bild img{display:block;max-width:min(16rem,100%);max-height:12rem;object-fit:cover}
.wa-daten{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.35rem .9rem;margin:.3rem 0 0;font-size:.84rem}
.wa-daten dt{color:var(--grau)}
.wa-daten dd{margin:0;min-width:0}
.wa-daten code{display:block;padding:.3rem .5rem;border-radius:var(--r-knopf);background:var(--flaeche);color:var(--anthrazit);
  font-size:.8rem;overflow-wrap:anywhere;user-select:all}
@media (max-width:47.99rem){.wa-daten{grid-template-columns:minmax(0,1fr)}.wa-daten dd{margin-bottom:.35rem}}
/* News und Feedback (18.10.2026): Karten wie im Rest der App, eine Wartung als Band in Seeblau */
.band--wartung{background:var(--see-hell);border-bottom-color:#C9D8E3;color:var(--see)}
.band--wartung b{font-weight:600}
.band--wartung button{color:var(--see)}
.etikett--geplant{background:var(--see-hell);color:var(--see)}
.etikett--neu{background:var(--gruen);color:#fff}
.news__kopf{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem .75rem}
.news__datum{font-size:.78rem;color:var(--grau);font-variant-numeric:tabular-nums;white-space:nowrap}
.news__titel{margin:.6rem 0 0;font-size:1.05rem;line-height:1.35;color:var(--anthrazit);overflow-wrap:anywhere}
.news__wann{display:flex;gap:.45rem;align-items:center;margin:.45rem 0 0;font-size:.86rem;font-weight:600;color:var(--sand-tief)}
.news__wann .symbol{flex:none;width:1rem;height:1rem}
.news__text,.fb__text{margin-top:.45rem;max-width:44rem;font-size:.9rem;overflow-wrap:anywhere}
.news__text p,.fb__text p{margin:.4rem 0 0}
.fb__antwort{margin-top:.9rem;padding:.75rem .9rem;border-radius:var(--r-klein);background:var(--gruen-zart);box-shadow:inset 3px 0 0 var(--gruen);font-size:.9rem;overflow-wrap:anywhere}
.fb__antwort-kopf{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem}
.fb__antwort-kopf b{font-weight:600;color:var(--gruen-tief)}
.fb__antwort-kopf .news__datum{margin-left:auto}
.fb__antwort p{margin:.4rem 0 0}
.wahl-reihe{margin:0;padding:0;border:0;min-width:0}
.wahl-reihe legend{padding:0}
.wahl-reihe__liste{display:flex;flex-wrap:wrap;gap:.5rem}
.wahl-reihe label{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .85rem;border:1px solid var(--linie-stark);border-radius:999px;background:#fff;font-size:.88rem;color:var(--text);cursor:pointer}
.wahl-reihe label:has(input:checked){border-color:var(--gruen);background:var(--gruen-zart);color:var(--gruen-tief);font-weight:600}
.wahl-reihe input{margin:0;accent-color:var(--gruen)}
textarea.feld--kurz{min-height:6.5rem}
.news-bearbeiten{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}
.news-vorschau{min-width:0}
.news-vorschau .bausteine-gruppe{margin:0 0 .5rem}
.news-vorschau .karte+.bausteine-gruppe{margin-top:1.25rem}
.vorschau-band{border:1px solid #C9D8E3;border-radius:var(--r-klein)}
.news-v__text{margin:.6rem 0 0;max-width:46rem;font-size:.88rem;color:var(--text);overflow-wrap:anywhere}
.filter--seite{padding:0 0 1rem}
.fb-v .formular{margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--linie)}
.seite>.fb+.fb,.seite>.notiz__leer+.fb{margin-top:1rem}
/* E-Mail-Signatur (18.10.2026): Vorschau wie im Mailprogramm (Inhalt im Schatten-DOM), Einfügen, Angaben */
.sig-satz{max-width:44rem}
.sig-vorschau{display:block;max-width:44rem;margin:.4rem 0 0;padding:1rem 1.1rem;background:#fff;border:1px solid var(--linie);border-radius:var(--r-klein);overflow-x:auto;color:#1f2328}
.sig-entwurf{margin:.7rem 0 0;max-width:44rem}
.sig-vorschau--entwurf{margin:0;padding:.75rem .9rem;border-style:dashed;border-color:var(--linie-stark);background:var(--seite)}
.sig-entwurf__notiz{margin:.35rem 0 0;font-size:.78rem;color:var(--grau)}
.sig-entwurf__notiz button,.sig-wechsel button{padding:0;border:0;background:none;color:var(--gruen-tief);font-weight:600;font-size:inherit;text-decoration:underline;text-underline-offset:.2em}
.sig-schritte{margin:0 0 .6rem;padding-left:1.3rem;max-width:44rem;font-size:.9rem}
.sig-schritte li{margin:.15rem 0}
.sig-tipps{margin:0 0 .9rem}
.sig-feld{min-height:3.25rem;resize:none}
.sig-code{margin-top:.6rem}
.sig-wechsel{margin:.9rem 0 0;font-size:.84rem;color:var(--grau)}
.sig-angaben{margin-bottom:.2rem}
.sig-logo{margin-top:.35rem}
.sig-gruss{margin-top:1rem}
.sig-datei{position:relative;cursor:pointer}
.sig-datei:focus-within{outline:2px solid var(--sand);outline-offset:2px}
.sig-fehlen{list-style:none;margin:.7rem 0 0;padding:0;max-width:44rem;display:grid;gap:.5rem}
.sig-fehlen li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .75rem;border:1px dashed var(--linie-stark);border-radius:var(--r-klein);font-size:.85rem;color:var(--text)}
.sig-text{margin:.5rem 0 0;padding:.75rem .85rem;background:var(--flaeche);border-radius:var(--r-klein);font:inherit;font-size:.8rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.sig-schalter{margin:1rem 0 .25rem}
#sig-ergebnis>.knoepfe{margin-top:1rem}
#sig-ergebnis>.bausteine-gruppe:first-child{margin-top:1.1rem}
.sig-hinweise{margin:0;padding-left:1rem}
.sig-hinweise li+li{margin-top:.3rem}

/* Einrichtungslauf (21.10.2026): Stand mit Balken, Schritte je Phase mit Marke (offen, erledigt, nicht nötig) */
.k-lauf{margin-bottom:1.25rem}
#inhalt .karte,.lauf__schritt{scroll-margin-top:6rem}  /* Sprung aus dem Lauf zur Karte: nicht unter der Leiste oben */
.k-lauf .karte__innen>p{margin:.6rem 0 0;font-size:.9rem}
.k-lauf .karte__innen>p:first-child{margin-top:0}
.k-lauf .knoepfe{margin-top:.85rem}
.lauf-balken{display:block;width:100%;height:.5rem;margin-top:.6rem;border:0;border-radius:999px;background:var(--linie);overflow:hidden;-webkit-appearance:none;appearance:none}
.lauf-balken::-webkit-progress-bar{background:var(--linie);border-radius:999px}
.lauf-balken::-webkit-progress-value{background:var(--gruen);border-radius:999px}
.lauf-balken::-moz-progress-bar{background:var(--gruen);border-radius:999px}
.lauf-stand{margin-bottom:1.5rem}
.lauf-stand>p{margin:0;font-size:.9rem}
.lauf-stand .fussnote{margin-top:.6rem}
.abschnitt-titel small{margin-left:.35rem;font-size:.8rem;font-weight:500;color:var(--grau)}
.lauf{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;gap:.6rem}
.lauf__schritt{display:grid;grid-template-columns:1.35rem minmax(0,1fr);gap:.8rem;padding:.95rem 1.1rem;background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie)}
.lauf__schritt--naechster{box-shadow:0 0 0 2px var(--gruen-mittel)}
.lauf__schritt--nicht_noetig{background:var(--leiste)}
.lauf__marke{position:relative;width:1.35rem;height:1.35rem;margin-top:.05rem;border-radius:50%;box-shadow:inset 0 0 0 2px var(--sand-mittel)}
.lauf__schritt--erledigt .lauf__marke{background:var(--gruen-hell);box-shadow:none}
.lauf__schritt--erledigt .lauf__marke::after{content:"";position:absolute;left:.48rem;top:.28rem;width:.32rem;height:.6rem;border-right:2px solid var(--gruen);border-bottom:2px solid var(--gruen);transform:rotate(45deg)}
.lauf__schritt--nicht_noetig .lauf__marke{box-shadow:inset 0 0 0 2px var(--linie)}
.lauf__schritt--nicht_noetig .lauf__marke::after{content:"";position:absolute;left:.35rem;right:.35rem;top:calc(50% - 1px);height:2px;background:var(--linie-stark)}
.lauf__inhalt{min-width:0}
.lauf__kopf{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem}
.lauf__kopf h3{margin:0;font-size:.95rem;font-weight:600;color:var(--anthrazit)}
.lauf__inhalt>p{margin:.4rem 0 0;font-size:.875rem;line-height:1.5;max-width:46rem}
.lauf__inhalt>.hinweis{margin-top:.6rem}
.lauf__angaben,.lauf__fragen{margin:.45rem 0 0;padding-left:1.1rem;font-size:.85rem;line-height:1.5;overflow-wrap:anywhere}
.lauf__angaben{color:var(--grau)}
.lauf__inhalt>p.lauf__wann{font-size:.8rem;color:var(--grau)}
.lauf__inhalt>p.lauf__wartet{font-size:.85rem;font-weight:500;color:var(--sand-tief)}
.lauf__inhalt .zeile-neu{max-width:30rem}
.lauf__inhalt .knoepfe{margin-top:.75rem}
/* Anmeldung mit Microsoft (seit 22.10.2026): Wahl oben in „Ihr Postfach“, Stand, Zustimmung des Administrators, Band, Rückleitung */
.band--fehler{background:var(--ziegel-hell);border-bottom-color:#E9C9BC;color:var(--ziegel)}
.band--fehler button{color:var(--ziegel)}
.ms-wahl{margin:0 0 1rem;padding:0 0 1rem;border-bottom:1px solid var(--linie);max-width:44rem}
.ms-wahl>p{margin:0 0 .6rem;font-size:.875rem;line-height:1.5}
.ms-wahl>.hinweis{margin:0 0 .6rem}
.ms-wahl p.ms-wahl__oder{margin:.9rem 0 0;font-size:.8rem;color:var(--grau)}
.ms-stand{display:flex;gap:.5rem;align-items:flex-start;margin:0 0 .4rem;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
.ms-stand .symbol{width:1.1rem;height:1.1rem;margin-top:.15rem;flex:none;color:var(--gruen-tief)}
.ms-stand--aus .symbol{color:var(--ziegel)}
.ms-admin{margin-top:.8rem;max-width:44rem;font-size:.84rem;line-height:1.5}
.ms-admin summary{cursor:pointer;color:var(--gruen-tief);font-weight:600}
.ms-admin p{margin:.45rem 0}
.ms-admin .feld{width:100%;max-width:none;font-size:.8rem}
.ms-admin .knoepfe{margin-top:.5rem}
.ms-seite{display:flex;align-items:flex-start;justify-content:center;padding:3rem 1rem}
.ms-seite__karte{max-width:30rem;width:100%}
.ms-seite__karte p{margin:0 0 .8rem;line-height:1.5}
@media print{
  body.nur-plan .nicht-drucken,body.nur-plan .kopfzeile{display:none!important}
  body.nur-plan .plan{box-shadow:none;padding:0}
  .leiste,.ordner,.band,.knoepfe,.meldung{display:none!important}
  .koerper{display:block}
  .tagkarte{box-shadow:none;border:1px solid #999;break-inside:avoid}
}
/* Unterlagen der Verwaltung (22.10.2026): Rechnung, Angebot und Vertrag als Blatt mit Briefkopf. Am Bildschirm wie Papier, gedruckt A4.
   Formular mit Positionen links, Blatt rechts (wie News). Druck nur des Blatts: body.nur-blatt (setzt verwaltung.js beim Drucken). */
.blatt{max-width:50rem;margin:0 auto;padding:2.4rem 2.6rem 1.8rem;background:#fff;border-radius:.4rem;box-shadow:0 0 0 1px var(--linie),var(--schatten);color:var(--anthrazit);font-size:.9rem;line-height:1.5;overflow-wrap:anywhere}
.blatt p{margin:.7rem 0 0}
.blatt__entwurf{margin:0 0 1rem!important;padding:.45rem .7rem;border:1px dashed var(--sand);border-radius:var(--r-klein);background:var(--sand-hell);color:var(--sand-tief);font-size:.8rem;font-weight:600}
.blatt__kopf{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem 1.5rem;padding-bottom:.9rem;border-bottom:1px solid var(--linie)}
.blatt__logo{display:block;width:17rem;max-width:100%;height:auto}
.blatt__absender{margin:0!important;font-size:.72rem;color:var(--grau);text-align:right}
.blatt__oben{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;margin-top:2rem}
.blatt__ruecksende{margin:0!important;padding-bottom:.2rem;border-bottom:1px solid var(--linie);font-size:.66rem;color:var(--grau)}
.blatt__anschrift{margin-top:.5rem!important}
.blatt__daten{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem .9rem;margin:0;font-size:.8rem}
.blatt__daten dt{color:var(--grau)}
.blatt__daten dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.blatt__titel{margin:2rem 0 0;font-size:1.3rem;font-weight:600;color:var(--anthrazit)}
.blatt__betreff{font-weight:600}
.blatt__unter{color:var(--grau);font-size:.82rem}
.blatt__posten{width:100%;margin-top:1.1rem;border-collapse:collapse;font-size:.85rem}
.blatt__posten th,.blatt__posten td{padding:.45rem .5rem;border-bottom:1px solid var(--linie);text-align:left;vertical-align:top}
.blatt__posten th:first-child,.blatt__posten td:first-child{padding-left:0}
.blatt__posten th:last-child,.blatt__posten td:last-child{padding-right:0}
.blatt__posten th{font-size:.74rem;font-weight:600;color:var(--grau)}
.blatt__posten .ziffer{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.blatt__posten tfoot td{border-top:2px solid var(--anthrazit);border-bottom:0;font-weight:600}
.blatt__leistung{width:52%}
.blatt__gruss{margin-top:1.4rem!important}
.blatt__leer{color:var(--grau);font-style:italic}
.blatt__text h3{margin:1.4rem 0 0;font-size:1rem;font-weight:600}
.blatt__text h4{margin:1rem 0 0;font-size:.92rem;font-weight:600}
.blatt__text ul{margin:.5rem 0 0;padding-left:1.25rem}
.blatt__fuss{margin-top:2.5rem;padding-top:.6rem;border-top:1px solid var(--linie);font-size:.68rem;color:var(--grau)}
.blatt__fuss p{margin:.1rem 0 0}
.blatt-huelle{margin-top:1.25rem}
.u-bearbeiten{grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr))}
.u-vorschau{min-width:0}
.u-vorschau .blatt{padding:1.6rem 1.7rem 1.2rem;font-size:.8rem}
.u-knoepfe{margin:1rem 0 0}
.seite>.hinweis+.filter--seite{margin-top:1rem}
.u-klein{margin-top:1rem}
.u-klein .zeile-neu{align-items:center;margin-top:0}
.u-klein .beschriftung{margin:0;white-space:nowrap}
.u-plz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1rem}
.u-kontakte{margin:.3rem 0 .9rem;padding:0;list-style:none;font-size:.88rem}
.u-kontakte li{padding:.2rem 0}
.u-verzeichnis{margin:.8rem -1.25rem 0}
.u-verzeichnis-text{margin-top:.8rem;font-size:.78rem;font-family:ui-monospace,Consolas,monospace}
.k-unterlagen{margin-bottom:1.25rem}
.k-unterlagen .knoepfe{margin-top:.2rem}
.etikett--knopf{border:0;font:inherit;font-size:.72rem;font-weight:600;cursor:pointer}
.zahl-eilt{color:var(--ziegel)!important}
/* Positionen im Formular: oben die Leistung mit × daneben, darunter Menge, Einheit, Preis und Betrag */
.u-posten{display:grid}
.u-posten__zeile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) auto 2.25rem;gap:.4rem;align-items:center;padding:.6rem 0;border-bottom:1px solid var(--linie)}
.u-posten__zeile:first-child{padding-top:0}
.u-posten__zeile textarea{grid-column:1 / 5;grid-row:1}
.u-posten__zeile .feld{margin:0;max-width:none;padding:.45rem .55rem}
.u-posten__zeile textarea.feld{min-height:2.6rem;height:3.6rem}
.u-posten__betrag{grid-column:span 2;text-align:right;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.u-posten__weg{grid-column:5;grid-row:1;align-self:start;width:2.25rem;height:2.25rem;display:grid;place-items:center;border:0;border-radius:var(--r-knopf);background:none;color:var(--grau)}
.u-posten__weg:hover{background:var(--ziegel-hell);color:var(--ziegel)}
.u-posten__fuss{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:.8rem}
.u-posten__fuss select.feld{flex:1 1 14rem;margin:0;max-width:22rem}
.u-posten__summe{margin:0 0 0 auto;font-size:.92rem}
.u-posten__summe b{font-variant-numeric:tabular-nums}
textarea.feld--vertrag{min-height:28rem;font-size:.86rem}
@media (max-width:47.99rem){
  .blatt{padding:1.3rem 1rem}
  .blatt__oben{grid-template-columns:minmax(0,1fr);gap:1rem}
  .blatt__absender{text-align:left}
  /* schmal: je Position oben die Leistung über die ganze Breite, darunter Menge, Einzelpreis und Betrag */
  .blatt__posten{font-size:.8rem}
  .blatt__posten thead,.blatt__posten td:first-child{display:none}
  .blatt__posten tr{display:grid;grid-template-columns:minmax(0,1fr) auto auto;column-gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--linie)}
  .blatt__posten td{padding:0;border:0}
  .blatt__posten td.blatt__leistung{grid-column:1 / -1;width:auto;margin-bottom:.2rem}
  .blatt__posten tbody td:nth-child(3){text-align:left}
  .blatt__posten tfoot tr{grid-template-columns:minmax(0,1fr) auto;border-top:2px solid var(--anthrazit);border-bottom:0}
  .blatt__posten tfoot td{border:0}
  .u-verzeichnis{margin:.8rem -1rem 0}
  .u-klein .zeile-neu{flex-wrap:wrap}
}
@media print{
  @page{size:A4;margin:16mm 18mm 14mm}
  body.nur-blatt .seite>:not(.blatt-huelle),body.nur-blatt .seitenblick{display:none!important}
  body.nur-blatt .seite{max-width:none;padding:0}
  body.nur-blatt .blatt-huelle{margin:0}
  body.nur-blatt .blatt{max-width:none;padding:0;border-radius:0;box-shadow:none;font-size:10pt}
  body.nur-blatt .blatt__posten tr{break-inside:avoid}
  body.nur-blatt .blatt__fuss{break-inside:avoid}
}

/* ---------- Planung der Verwaltung (28.10.2026): Bakenkontor grün, Ferienhof friesenblau wie im Unternehmens-OS ---------- */
:root{--fk:#2F5590;--fk-tief:#22406E;--fk-mittel:#C9D6EA;--fk-hell:#E9EEF6}
.seite--voll{max-width:none}
.pl .kopfzeile{margin-bottom:.9rem}
.pl-punkt{display:inline-block;width:.6rem;height:.6rem;border-radius:.15rem;margin-right:.35rem;vertical-align:.05em;background:var(--linie-stark)}
.pl-punkt--bk{background:var(--gruen)}
.pl-punkt--fk{background:var(--fk)}
.pl-punkt--beide{background:linear-gradient(135deg,var(--gruen) 50%,var(--fk) 50%)}
.pl-etikett--bk{background:var(--gruen-mittel);color:var(--gruen-tief)}
.pl-etikett--fk{background:var(--fk-mittel);color:var(--fk-tief)}
.pl-ueberfaellig{color:var(--ziegel)}
.pl-r{text-align:right!important;font-variant-numeric:tabular-nums}

/* Leiste: Ansichten, Blättern, Filter */
.pl-leiste{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin:0 0 1rem}
.pl-leiste--zeiten{margin-top:-.25rem}
.pl-reiter{display:flex;flex-wrap:wrap;gap:.2rem;padding:.2rem;border-radius:var(--r-klein);background:#fff;box-shadow:0 0 0 1px var(--linie)}
.pl-reiter__knopf{border:0;background:none;padding:.35rem .75rem;border-radius:var(--r-knopf);font-size:.84rem;font-weight:500;color:var(--grau)}
.pl-reiter__knopf:hover{background:var(--flaeche);color:var(--anthrazit)}
.pl-reiter__knopf[aria-current="page"]{background:var(--gruen);color:#fff;font-weight:600}
.pl-nav{display:flex;align-items:center;gap:.35rem}
.pl-nav .kn{min-width:2rem}
.pl-nav__titel{margin-left:.35rem;font-weight:600;color:var(--anthrazit);font-size:.92rem}
.pl-filter{display:flex;margin-left:auto;border-radius:var(--r-klein);overflow:hidden;box-shadow:0 0 0 1px var(--linie-stark);background:#fff}
.pl-filter button{display:flex;align-items:center;border:0;background:none;padding:.4rem .7rem;font-size:.8rem;font-weight:600;color:var(--grau)}
.pl-filter button+button{border-left:1px solid var(--linie)}
.pl-filter button[aria-pressed="true"]{background:var(--anthrazit);color:#fff}

/* Laufende Uhr */
.pl-uhr{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .8rem;margin:0 0 1rem;padding:.55rem .9rem;border-radius:var(--r-klein);background:var(--gruen-hell);color:var(--gruen-tief);font-size:.88rem}
.pl-uhr--fk{background:var(--fk-hell);color:var(--fk-tief)}
.pl-uhr__punkt{width:.6rem;height:.6rem;border-radius:50%;background:currentColor;animation:pl-puls 1.6s infinite}
.pl-uhr__zeit{font-weight:600;font-variant-numeric:tabular-nums}
.pl-uhr__warn{flex-basis:100%;color:var(--ziegel);font-size:.8rem}
.pl-uhr .kn{margin-left:auto}
@keyframes pl-puls{50%{opacity:.35}}
.pl-zahl-uhr{display:inline-flex;align-items:center;gap:.3rem}
.pl-zahl-uhr .symbol{width:.85rem;height:.85rem}
.pl-zahl-uhr--fk{color:var(--fk-tief);background:var(--fk-hell)}
.pl-markiert{max-width:none;margin:0 0 1rem}
.pl-markiert button{margin-left:auto}

/* Freigaben */
.pl-freigaben{margin-bottom:1.25rem}
.pl-mail+.pl-mail{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--linie)}
.pl-mail__kopf{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.2rem 1rem;margin-bottom:.45rem}
.pl-mail__kopf b{color:var(--anthrazit)}
.pl-mail__kopf span{color:var(--grau);font-size:.84rem}
.pl-mail__kopf{align-items:center}
.pl-mail__kopf .kn{margin-left:auto}
.pl-mail--zu .pl-mail__kopf{margin:0}
.pl-mail--zu+.pl-mail,.pl-mail+.pl-mail--zu{margin-top:.6rem;padding-top:.6rem}
.pl-mail__text{width:100%;max-width:none;font-size:.88rem;line-height:1.5}
.pl-mail .fussnote{margin:.35rem 0 .6rem}

/* Aufbau: Seitenliste links, Kalender rechts */
.pl-raster{display:grid;grid-template-columns:17.5rem minmax(0,1fr);gap:1.25rem;align-items:start}
.pl-raster--offen{grid-template-columns:22rem minmax(0,1fr)}
.pl-haupt{min-width:0}
.pl-seite{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto;padding:1rem;background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie),var(--schatten)}
.pl-seite.pl-ablage-aktiv{box-shadow:0 0 0 2px var(--gruen),var(--schatten)}
.pl-seite__kopf{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.35rem}
.pl-seite__kopf b{color:var(--anthrazit);font-size:.92rem}
.pl-seite__kopf span{font-size:.8rem;color:var(--grau)}
.pl-seite .fussnote{margin:.2rem 0 .7rem}
.pl-liste{list-style:none;margin:0 0 .8rem;padding:0;display:grid;gap:.5rem}
.pl-karte{position:relative;padding:.55rem .65rem .5rem .8rem;border-radius:var(--r-klein);background:#fff;box-shadow:0 0 0 1px var(--linie);cursor:grab}
.pl-karte::before{content:"";position:absolute;left:0;top:.45rem;bottom:.45rem;width:3px;border-radius:2px;background:var(--gruen)}
.pl-karte--fk::before{background:var(--fk)}
.pl-karte--markiert{box-shadow:0 0 0 2px var(--sand)}
.pl-karte__titel{display:block;width:100%;padding:0;border:0;background:none;text-align:left;font-weight:600;color:var(--anthrazit);font-size:.88rem;line-height:1.35;cursor:inherit}
.pl-karte__titel:hover{color:var(--gruen-tief);text-decoration:underline}
.pl-karte__unter{display:block;margin-top:.15rem;font-size:.76rem;color:var(--grau)}
.pl-karte__knoepfe{display:flex;gap:.25rem;margin-top:.3rem}
.pl-karte__knoepfe .kn{min-height:1.65rem;padding:.15rem .5rem;font-size:.75rem}
.pl-os-ziel{margin-top:1rem;padding:.7rem .8rem;border-radius:var(--r-klein);background:var(--sand-hell);font-size:.82rem}
.pl-os-ziel b{color:var(--sand-tief)}
.pl-os-ziel p{margin:.2rem 0 0;color:var(--text)}

/* Kalender Tag und Woche */
.pl-kal-huelle{overflow-x:auto;border-radius:.85rem;background:#fff;box-shadow:0 0 0 1px var(--linie),var(--schatten)}
.pl-kal{--pl-spalten:7;min-width:0}
.pl-kal--tag{--pl-spalten:1}
.pl-kal__kopf,.pl-kal__ganz,.pl-kal__gitter{display:grid;grid-template-columns:3.4rem repeat(var(--pl-spalten),minmax(0,1fr))}
.pl-kal__kopf{border-bottom:1px solid var(--linie);background:var(--leiste)}
.pl-ecke{display:flex;align-items:center;justify-content:flex-end;padding:0 .4rem;font-size:.66rem;color:var(--grau);text-align:right;line-height:1.2}
.pl-tagkopf{padding:.45rem .3rem;text-align:center;border-left:1px solid var(--linie)}
.pl-tagkopf button{border:0;background:none;padding:.1rem .45rem;border-radius:var(--r-knopf);font-size:.84rem;color:var(--anthrazit)}
.pl-tagkopf button span{color:var(--grau)}
.pl-tagkopf button:hover{background:var(--flaeche)}
.pl-tagkopf small{display:block;font-size:.68rem;color:var(--grau)}
.pl-tagkopf--heute button{background:var(--gruen);color:#fff}
.pl-tagkopf--heute button span{color:var(--gruen-mittel)}
.pl-tagkopf--we{background:#F3F5F4}
.pl-kal__ganz{border-bottom:1px solid var(--linie)}
.pl-ganz{min-height:2.1rem;padding:.25rem;border-left:1px solid var(--linie);display:flex;flex-direction:column;gap:.2rem}
.pl-ganz.pl-ablage-aktiv,.pl-mtag.pl-ablage-aktiv{background:var(--gruen-zart);box-shadow:inset 0 0 0 2px var(--gruen)}
.pl-kal__scroll{max-height:max(26rem,calc(100vh - 19rem));overflow-y:auto;overscroll-behavior:contain}
.pl-kal__gitter{position:relative}
.pl-stunden{position:relative}
.pl-stunden span{position:absolute;right:.45rem;transform:translateY(-.5em);font-size:.68rem;color:var(--grau);font-variant-numeric:tabular-nums}
.pl-stunden span:first-child{transform:none}
/* Linien: volle Stunde kräftig, halbe zart (60 px je Stunde, PL_PX) */
.pl-spalte{position:relative;border-left:1px solid var(--linie);cursor:copy;
  background-image:linear-gradient(to bottom,var(--linie) 1px,transparent 1px),linear-gradient(to bottom,transparent 29px,#EEF2F0 29px,#EEF2F0 30px,transparent 30px);
  background-size:100% 60px,100% 60px}
.pl-spalte--we{background-color:#FAFBFA}
.pl-jetzt{position:absolute;left:0;right:0;height:2px;background:var(--ziegel);z-index:3;pointer-events:none}
.pl-jetzt::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--ziegel)}
.pl-eintrag{position:absolute;z-index:2;overflow:hidden;border-radius:.4rem;background:var(--gruen-hell);border-left:3px solid var(--gruen);color:var(--anthrazit);
  box-shadow:0 1px 2px rgba(27,35,32,.12);cursor:grab}
.pl-eintrag--fk{background:var(--fk-hell);border-left-color:var(--fk)}
.pl-eintrag--aufgabe{background:#fff;box-shadow:0 0 0 1px var(--gruen-mittel),0 1px 2px rgba(27,35,32,.1)}
.pl-eintrag--aufgabe.pl-eintrag--fk{box-shadow:0 0 0 1px var(--fk-mittel),0 1px 2px rgba(27,35,32,.1)}
.pl-eintrag--abgesagt,.pl-eintrag--erledigt{opacity:.55;cursor:default;background:repeating-linear-gradient(135deg,#F3F6F4 0 6px,#fff 6px 12px)}
.pl-eintrag--abgesagt .pl-eintrag__titel,.pl-eintrag--erledigt .pl-eintrag__titel{text-decoration:line-through}
.pl-eintrag--uhr{box-shadow:0 0 0 2px var(--sand),0 1px 2px rgba(27,35,32,.12)}
.pl-eintrag__knopf{display:block;width:100%;height:100%;padding:.2rem .4rem;border:0;background:none;text-align:left;font-size:.74rem;line-height:1.25;color:inherit;cursor:inherit;overflow:hidden}
.pl-eintrag__zeit{font-weight:600;font-variant-numeric:tabular-nums;color:var(--grau)}
.pl-eintrag__titel{font-weight:600}
.pl-eintrag__unter{display:block;color:var(--grau);font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-eintrag--kurz .pl-eintrag__knopf{padding-top:0;padding-bottom:0;white-space:nowrap;text-overflow:ellipsis}
.pl-eintrag--kurz .pl-eintrag__unter{display:none}
.pl-griff{position:absolute;left:0;right:0;bottom:0;height:7px;cursor:ns-resize}
.pl-griff::after{content:"";position:absolute;left:50%;bottom:2px;width:1.4rem;height:2px;margin-left:-.7rem;border-radius:1px;background:currentColor;opacity:0}
.pl-eintrag:hover .pl-griff::after{opacity:.35}
.pl-vorschau{position:absolute;left:2px;right:2px;z-index:4;border-radius:.4rem;border:2px dashed var(--gruen);background:rgba(46,106,83,.08);pointer-events:none}
.pl-geist{position:fixed;z-index:200;padding:.3rem .6rem;border-radius:var(--r-knopf);background:var(--anthrazit);color:#fff;font-size:.78rem;font-weight:600;pointer-events:none;
  box-shadow:var(--schatten-gross);white-space:nowrap}
.pl-geist--fk{background:var(--fk-tief)}
.pl-geist--bk{background:var(--gruen-tief)}
.pl-geist--nein{background:var(--ziegel)}
body.pl-zieht,body.pl-zieht *{cursor:grabbing!important;user-select:none}
.pl-chip{border-radius:.35rem;background:var(--gruen-hell);border-left:3px solid var(--gruen);cursor:grab;min-width:0}
.pl-chip--fk{background:var(--fk-hell);border-left-color:var(--fk)}
.pl-chip--aufgabe{background:#fff;box-shadow:0 0 0 1px var(--gruen-mittel)}
.pl-chip--aufgabe.pl-chip--fk{box-shadow:0 0 0 1px var(--fk-mittel)}
.pl-chip--abgesagt,.pl-chip--erledigt{opacity:.55;text-decoration:line-through;cursor:default}
.pl-chip button{display:block;width:100%;padding:.12rem .35rem;border:0;background:none;text-align:left;font-size:.72rem;line-height:1.3;color:var(--anthrazit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:inherit}
.pl-chip b{font-variant-numeric:tabular-nums;color:var(--grau)}

/* Monat */
.pl-monat{border-radius:.85rem;overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--linie),var(--schatten)}
.pl-monat__kopf,.pl-monat__tage{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.pl-monat__kopf span{padding:.45rem;text-align:center;font-size:.76rem;font-weight:600;color:var(--grau);background:var(--leiste);border-bottom:1px solid var(--linie)}
.pl-mtag{min-height:7.2rem;padding:.3rem;border-right:1px solid var(--linie);border-bottom:1px solid var(--linie);display:flex;flex-direction:column;gap:.2rem;min-width:0;cursor:copy}
.pl-mtag:nth-child(7n){border-right:0}
.pl-mtag--fremd{background:#FAFBFA}
.pl-mtag--fremd .pl-mtag__nr{color:var(--linie-stark)}
.pl-mtag__nr{align-self:flex-start;min-width:1.7rem;padding:.05rem .35rem;border:0;border-radius:999px;background:none;font-size:.8rem;font-weight:600;color:var(--anthrazit)}
.pl-mtag__nr:hover{background:var(--flaeche)}
.pl-mtag--heute .pl-mtag__nr{background:var(--gruen);color:#fff}
.pl-mehr{border:0;background:none;padding:0 .3rem;text-align:left;font-size:.72rem;color:var(--gruen-tief);text-decoration:underline}

/* Liste */
.pl-liste-ansicht .abschnitt-titel{margin-top:1.4rem}
.pl-liste-ansicht .abschnitt-titel:first-child{margin-top:0}
.pl-zeilen{list-style:none;margin:0;padding:0;background:#fff;border-radius:.85rem;box-shadow:0 0 0 1px var(--linie),var(--schatten);overflow:hidden}
.liste-karte .pl-zeilen{box-shadow:none;border-radius:0}
.pl-zeile{position:relative;display:grid;grid-template-columns:1.6rem 7.5rem minmax(0,1fr) auto;grid-template-areas:"haken wann titel knoepfe" "haken wann unter knoepfe";align-items:center;gap:0 .75rem;padding:.6rem 1rem .6rem 1.1rem}
.pl-zeile+.pl-zeile{border-top:1px solid var(--linie)}
.pl-zeile::before{content:"";position:absolute;left:0;top:.5rem;bottom:.5rem;width:3px;border-radius:2px;background:var(--gruen)}
.pl-zeile--fk::before{background:var(--fk)}
.pl-zeile:not(.pl-zeile--bk):not(.pl-zeile--fk)::before{background:var(--sand)}
.pl-zeile--abgesagt .pl-zeile__titel,.pl-zeile--erledigt .pl-zeile__titel{text-decoration:line-through;color:var(--grau)}
.pl-haken,.pl-zeile__art{grid-area:haken}
.pl-zeile__art{color:var(--grau)}
.pl-zeile__art .symbol{width:1.05rem;height:1.05rem}
.pl-zeile__wann{grid-area:wann;font-size:.8rem;color:var(--grau);font-variant-numeric:tabular-nums}
.pl-zeile__titel{grid-area:titel;padding:0;border:0;background:none;text-align:left;font-weight:600;color:var(--anthrazit);font-size:.9rem}
button.pl-zeile__titel:hover{color:var(--gruen-tief);text-decoration:underline}
.pl-zeile__titel--text{font-weight:500}
.pl-zeile__unter{grid-area:unter;font-size:.76rem;color:var(--grau)}
.pl-zeile__knoepfe{grid-area:knoepfe;display:flex;gap:.3rem;flex-wrap:wrap;justify-content:flex-end}
.pl-haken{width:1.15rem;height:1.15rem;padding:0;border:1.5px solid var(--linie-stark);border-radius:.3rem;background:#fff;position:relative}
.pl-haken:hover{border-color:var(--gruen)}
.pl-haken[aria-checked="true"]{background:var(--gruen);border-color:var(--gruen)}
.pl-haken[aria-checked="true"]::after{content:"";position:absolute;left:.33rem;top:.1rem;width:.28rem;height:.55rem;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(43deg)}

/* Formulare in der Seitenleiste */
.pl-form{display:grid;gap:.75rem}
.pl-form+.pl-form,.pl-form--unter{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--linie)}
.pl-form__kopf{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.pl-form__kopf b{font-size:.98rem;color:var(--anthrazit)}
.pl-form p{margin:0}
.pl-form .zwei{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.pl-form .feld,.pl-nachtrag .feld{margin:0;max-width:none;width:100%}
.pl-feld .beschriftung{margin-bottom:.25rem;font-size:.8rem}
.pl-wahl{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;border:0}
.pl-wahl legend{width:100%;padding:0;margin-bottom:.25rem;font-size:.8rem}
.pl-wahl__punkt{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border:1px solid var(--linie-stark);border-radius:var(--r-knopf);font-size:.84rem;cursor:pointer;background:#fff}
.pl-wahl__punkt input{accent-color:var(--gruen);margin:0}
.pl-wahl__punkt:has(input:checked){border-color:var(--gruen);background:var(--gruen-zart);color:var(--gruen-tief);font-weight:600}
.pl-wahl__punkt--fk:has(input:checked){border-color:var(--fk);background:var(--fk-hell);color:var(--fk-tief)}
.pl-wahl__punkt--fk input{accent-color:var(--fk)}
.pl-schieben .kn{min-height:1.7rem;padding:.15rem .55rem;font-size:.76rem}
.pl-staende{list-style:none;margin:0;padding:0;display:grid;gap:.2rem;font-size:.84rem}
.pl-nachtrag{display:grid;gap:.5rem}
.pl-nachtrag .beschriftung{margin:0}
.pl-nachtrag__felder{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:.4rem}
.pl-nachtrag__felder label span{display:block;font-size:.72rem;color:var(--grau);margin-bottom:.15rem}
.pl-nachtrag .kn{justify-self:start}
.pl-nachtrag--breit .pl-nachtrag__felder{grid-template-columns:minmax(0,2.4fr) minmax(0,1.1fr) minmax(0,.8fr) minmax(0,.8fr)}
.pl-nachtrag--breit{max-width:56rem}

/* Zeiten */
.pl-kacheln{margin-bottom:1.25rem}
.pl-kacheln .kachel__zahl{font-variant-numeric:tabular-nums}
.pl .raster{margin-bottom:.5rem}
.pl-zeitzeile--fk td:first-child{box-shadow:inset 3px 0 0 var(--fk)}
.pl-zeitzeile--bk td:first-child{box-shadow:inset 3px 0 0 var(--gruen)}
.pl-zeiten small{color:var(--grau)}
.pl code{font-size:.82em;padding:.05rem .3rem;border-radius:.25rem;background:var(--flaeche)}

@media (max-width:74.99rem){
  .pl-raster{grid-template-columns:15.5rem minmax(0,1fr)}
  .pl-raster--offen{grid-template-columns:19rem minmax(0,1fr)}
}
@media (max-width:61.99rem){
  .pl-raster,.pl-raster--offen{grid-template-columns:minmax(0,1fr)}
  .pl-seite{position:static;max-height:none;order:2}
  .pl-seite--offen{order:0}
  .pl-haupt{order:1}
}
@media (max-width:47.99rem){
  .pl-leiste{gap:.5rem}
  .pl-reiter{width:100%;justify-content:space-between}
  .pl-reiter__knopf{padding:.35rem .45rem;font-size:.78rem}
  .pl-filter{margin-left:0}
  .pl-kal--woche{min-width:46rem}
  .pl-kal__kopf,.pl-kal__ganz,.pl-kal__gitter{grid-template-columns:2.6rem repeat(var(--pl-spalten),minmax(0,1fr))}
  .pl-kal__scroll{max-height:none;overflow-y:visible}
  .pl-mtag{min-height:4.4rem;padding:.2rem}
  .pl-mtag .pl-chip button{font-size:0;padding:0;height:.4rem}
  .pl-mtag .pl-chip{border-left-width:0;height:.4rem}
  .pl-mtag .pl-chip--bk{background:var(--gruen)}
  .pl-mtag .pl-chip--fk{background:var(--fk)}
  .pl-mehr{font-size:.66rem;padding:0}
  .pl-zeile{grid-template-columns:1.6rem minmax(0,1fr);grid-template-areas:"haken titel" "haken wann" "haken unter" "haken knoepfe";padding-right:.8rem}
  .pl-zeile__knoepfe{justify-content:flex-start;margin-top:.3rem}
  .pl-nachtrag__felder,.pl-nachtrag--breit .pl-nachtrag__felder{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pl-nachtrag__ziel{grid-column:1 / -1}
  .pl-zeiten td.lang{min-width:12rem}
  .pl-uhr .kn{margin-left:0}
}
@media (prefers-reduced-motion:reduce){.pl-uhr__punkt{animation:none}}
.kachel--fk{background:var(--fk-hell);box-shadow:none}
.kachel--fk .kachel__zahl{color:var(--fk-tief)}
.pl-os-rest{margin:.2rem 0 .8rem}
.pl-os-rest summary{cursor:pointer;font-size:.8rem;font-weight:600;color:var(--gruen-tief);margin-bottom:.5rem}
.pl-karte__titel{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pl-zeile--os{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"titel knoepfe" "unter knoepfe"}
@media (max-width:47.99rem){.pl-zeile--os{grid-template-columns:minmax(0,1fr);grid-template-areas:"titel" "unter" "knoepfe"}}
.pl-seite{scroll-margin-top:4rem}
/* So hat die KI die Mail gesehen (30.10.2026): aufklappbar wie „Aus Ihrer Hausakte“, Platzhalter als ruhige Marke */
.ki-sicht{margin-top:.7rem;max-width:44rem;font-size:.84rem}
.ki-sicht summary{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;color:var(--gruen-tief);font-weight:600;list-style:none}
.ki-sicht summary::-webkit-details-marker{display:none}
.ki-sicht summary::after{content:"";width:.4rem;height:.4rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:.15rem}
.ki-sicht[open] summary::after{transform:rotate(-135deg) translateY(-1px)}
.ki-sicht__notiz{margin:.5rem 0 0;color:var(--grau)}
.ki-sicht__text{margin:.5rem 0 0;padding:.7rem .85rem;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--r-klein);
  white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);line-height:1.5;max-height:22rem;overflow-y:auto}
mark.platz{background:var(--gruen-hell);color:var(--gruen-tief);border-radius:.25rem;padding:0 .2rem;font-weight:600}
/* Keine Antwort nötig (30.10.2026): unter den offenen Mails, ruhiger als sie, zuklappbar */
.ohne{border-top:1px solid var(--linie);margin-top:1.5rem}
.ohne__kopf{display:flex;align-items:center;gap:.5rem;width:100%;padding:.6rem 1.25rem;border:0;border-bottom:1px solid var(--linie);background:var(--flaeche);
  color:var(--grau);font-size:.78rem;font-weight:600;text-align:left;cursor:pointer}
.ohne__kopf:hover{color:var(--anthrazit)}
.ohne__zahl{padding:0 .45rem;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--linie);font-variant-numeric:tabular-nums}
.ohne__pfeil{margin-left:auto;font-size:.8rem}
.ohne__notiz{margin:0;padding:.6rem 1.25rem 0;color:var(--grau);font-size:.82rem;max-width:48rem}
.post--ohne{padding-top:.75rem;padding-bottom:.75rem}
.post--ohne .post__kopf b{font-weight:500;color:var(--text)}
.post--ohne .post__betreff{font-weight:400;color:var(--grau)}
.post--ohne .post__knoepfe{margin-top:.45rem}
.post__bild--ohne{background:var(--flaeche);color:var(--grau);box-shadow:inset 0 0 0 1px var(--linie)}

/* Rechnungsprüfung (Baustein 15, 3.11.2026) */
.zeile--achtung td{background:var(--sand-hell)}
.zelle--knoepfe{white-space:nowrap}
.zelle--knoepfe .kn{margin-right:.35rem}
.post__knoepfe .feld--kurz{max-width:22rem;margin-left:auto}
.post__knoepfe .beschriftung{align-self:center;margin:0 .4rem 0 auto;font-size:.8rem;color:var(--grau)}

/* Diktat (4.11.2026) */
.knoepfe--diktat{align-items:center;gap:.6rem}
.diktat-hinweis{color:var(--grau);font-size:.8rem;line-height:1.4;max-width:34rem}
.kn--aufnahme{background:var(--ziegel);border-color:var(--ziegel);color:#fff;animation:diktat-puls 1.2s ease-in-out infinite}
@keyframes diktat-puls{0%,100%{opacity:1}50%{opacity:.7}}

/* Monatsbericht (4.11.2026, Weg 1): Auswahl der Monate, Tabelle „Gezählt wurde“, Abschnitt „sonst noch abgenommen“ */
.bericht-wahl{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}
.tabelle--gezaehlt{margin-bottom:1rem}
.tabelle--gezaehlt th:first-child,.tabelle--gezaehlt td:first-child{padding-left:0}
.tabelle--gezaehlt th:last-child,.tabelle--gezaehlt td:last-child{padding-right:0}
.tabelle--gezaehlt tr.still td{color:var(--grau)}
.tabelle--gezaehlt tr.summe td{font-weight:600;color:var(--anthrazit);border-top:2px solid var(--linie-stark)}
.kennzahlen-liste{list-style:none;margin:0 0 .6rem;padding:0}
.kennzahlen-liste li{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-bottom:1px solid var(--linie);font-size:.9rem}
.kennzahlen-liste li:last-child{border-bottom:0}
.kennzahlen-liste b{font-variant-numeric:tabular-nums;color:var(--anthrazit)}
.bericht-sonst .bausteine-gruppe{margin-top:.9rem}
.bericht-sonst .bausteine-gruppe:first-child{margin-top:0}
.bericht-fuss{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid var(--linie)}
.k-berichte{order:8}
.mb-vorschau{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--linie)}
.mb-vorschau .seite{padding:0}
@media print{.bericht-wahl,.seite--bericht .knoepfe{display:none}}

/* Content-Werkstatt der Verwaltung (seit 5.11.2026) */
.ws-abstand{margin-top:1.25rem}
.ws-abstand-klein{margin-top:.9rem}
.ws-neu{margin-bottom:1.25rem}
.ws-liste{list-style:none;margin:0;padding:0}
.ws-liste li+li{border-top:1px solid var(--linie)}
.ws-zeile{display:flex;align-items:center;gap:.75rem;width:100%;padding:.7rem 1.25rem;border:0;background:none;text-align:left;color:var(--text)}
button.ws-zeile:hover{background:var(--flaeche)}
.ws-zeile--still{flex-wrap:wrap}
.ws-zeile__art{flex:none;width:5.2rem;font-size:.8rem;font-weight:600;color:var(--grau)}
.ws-zeile__titel{flex:1 1 8rem;min-width:0;font-weight:500;color:var(--anthrazit);overflow-wrap:anywhere}
.ws-raster{display:grid;gap:1.25rem;grid-template-columns:minmax(0,1fr)}
.ws-buehne{min-width:0}
.ws-leinwand{display:block;width:auto;height:auto;max-width:100%;max-height:68vh;margin:0 auto;border-radius:.6rem;background:var(--flaeche);box-shadow:0 0 0 1px var(--linie),var(--schatten)}
.ws-seiten{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.75rem;justify-content:center}
.ws-seite{min-width:2.2rem;min-height:2.2rem;padding:.25rem .6rem;border:1px solid var(--linie-stark);border-radius:var(--r-knopf);background:#fff;font-size:.85rem;font-weight:600;color:var(--grau)}
.ws-seite:hover{background:var(--flaeche)}
.ws-seite--aktiv{background:var(--gruen);border-color:var(--gruen);color:#fff}
.ws-seite--aktiv:hover{background:var(--gruen)}
.ws-spieler{display:flex;align-items:center;gap:.6rem;margin-top:.75rem}
.ws-spieler input[type=range]{flex:1 1 auto;min-width:0;accent-color:var(--gruen)}
.ws-zeit-text{flex:none;font-size:.78rem;color:var(--grau);font-variant-numeric:tabular-nums}
.ws-regler{display:block;width:100%;margin-top:.4rem;accent-color:var(--gruen)}
.ws-form{min-width:0}
.ws-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.6rem;margin-top:.5rem}
.ws-fotos--breit{margin-top:1rem;grid-template-columns:repeat(auto-fill,minmax(8rem,1fr))}
.ws-fotos--wahl{max-height:19rem;overflow:auto;padding:.15rem}
.ws-foto{position:relative;display:block;min-width:0;padding:0;border:1px solid var(--linie);border-radius:.55rem;background:#fff;overflow:hidden;text-align:left;color:var(--text)}
.ws-foto:hover{border-color:var(--linie-stark)}
.ws-foto canvas{display:block;width:100%;height:auto;background:var(--flaeche)}
.ws-foto--aktiv{border-color:var(--gruen);box-shadow:0 0 0 2px var(--gruen)}
.ws-foto--gesperrt canvas{opacity:.45}
.ws-foto__name{display:block;padding:.3rem .45rem;font-size:.72rem;line-height:1.25;overflow-wrap:anywhere}
.ws-foto__sperre{display:block;padding:0 .45rem .35rem;font-size:.68rem;line-height:1.25;color:var(--ziegel)}
.ws-foto__nr{position:absolute;top:.3rem;right:.3rem;min-width:1.35rem;padding:.05rem .3rem;border-radius:.7rem;background:var(--gruen);color:#fff;font-size:.72rem;font-style:normal;font-weight:600;text-align:center}
.ws-filter{max-width:20rem}
.ws-filter .feld{margin-top:.3rem}
.ws-angaben{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--linie)}
.ws-angaben summary{cursor:pointer;font-size:.875rem;font-weight:600;color:var(--anthrazit)}
.ws-angaben .formular{margin-top:.8rem}
.ws-summe{cursor:pointer;font-size:.875rem;font-weight:600;color:var(--anthrazit)}
.ws-summe small{font-weight:400;color:var(--grau)}
.ws-haken{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text)}
.ws-absatz{margin:.6rem 0 0;font-size:.875rem;white-space:pre-wrap;overflow-wrap:anywhere}
.ws-rot{color:var(--ziegel)}
.ws-rot-hinweis{background:var(--ziegel-hell);color:var(--ziegel)}
.ws-fotofeld .knoepfe{margin-top:.2rem}
.ws-vorschlag{display:grid;gap:.6rem}
.ws-vorschlag .fussnote{margin-top:0}
.ws-vorschlag .kn{justify-self:start}
.ws-verlauf{margin:.6rem 0 0;padding-left:1.1rem;font-size:.8rem;color:var(--grau)}
#ws-stand{font-size:.78rem;color:var(--grau)}
#ws-pruefung{margin-top:1.25rem}
@media (max-width:47.99rem){
  .ws .kopfzeile{flex-direction:column;align-items:stretch}
  .ws .kopfzeile .knoepfe .kn{flex:1 1 auto}
}
@media (min-width:68rem){
  .ws-raster{grid-template-columns:minmax(0,27rem) minmax(0,1fr);align-items:start}
  .ws-buehne{position:sticky;top:1rem}
  .ws-leinwand{max-height:76vh}
}

/* Zwei-Faktor einrichten auf der Anmeldeseite (Server, seit 8.11.2026): Codes in einer Spalte, die Karte ist schmal */
.anmeldung .zf__codes{grid-template-columns:max-content}
.anmeldung .zf__einrichten{margin:.4rem 0 1rem}
