/* Helferplan-Generator: nur, was es zusätzlich braucht (Basis: ../lezo/lezo-ui.css, ki-seite.css) */
.gruppe{margin:0 0 var(--a6);padding:var(--a4) var(--a5) var(--a2);border:1px solid var(--linie);border-radius:var(--r-l);background:var(--flaeche);min-width:0}
.gruppe legend{padding:0 var(--a2);font-weight:700;color:var(--ink);font-size:var(--fs-l)}
.zeile{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 var(--a5)}
.zeile .feld{min-width:0}
select.eingabe,.seite textarea{width:100%;font-family:inherit}
.feld.check{display:flex;align-items:flex-start;gap:var(--a3)}
.feld.check input{margin-top:10px;width:20px;height:20px;flex:none}
.feld.check label{margin:0;min-height:var(--tipp);display:flex;align-items:center}
.hilfe{display:block}
.hilfe code,.seite code{font-size:.9em;background:var(--flaeche-2);border-radius:4px;padding:0 4px;overflow-wrap:anywhere}
.seite .card h3{margin-top:0}
.seite .faq{margin-bottom:var(--a6)}
.seite .meldung{margin:var(--a4) 0}
#warnungen,#hinweise,#konflikte{margin:var(--a3) 0;padding-left:var(--a5)}
#konflikte li{font-weight:600;color:var(--fehler)}
.sprungzeile a{display:inline-flex;align-items:center;min-height:var(--tipp);padding:0 var(--a1)}
#weitere-rechner + ul li a{display:inline-flex;align-items:center;min-height:var(--tipp)}
.noscript-hinweis:empty{display:none}
html{scroll-padding-top:120px}
[hidden]{display:none!important}
.knopfreihe{display:flex;flex-wrap:wrap;gap:var(--a3);margin:var(--a4) 0}

/* Zuteilungs-Raster */
.vorschau-rahmen{overflow-x:auto;border:1px solid var(--linie);border-radius:var(--r-m);background:#fff;padding:var(--a4);margin:var(--a4) 0}
.rz{border-collapse:collapse;min-width:100%}
.rz th,.rz td{border:1px solid var(--linie-stark);padding:var(--a2);vertical-align:top;text-align:left}
.rz thead th{background:var(--flaeche-2);font-size:.9rem;min-width:11rem}
.rz thead th:first-child{min-width:7rem}
.rz tbody th{background:var(--flaeche-2);font-size:.95rem}
.rz tbody th .anz{display:block;font-weight:400;font-size:.8rem;color:var(--text-2)}
.rz td.aus{background:var(--flaeche-3);color:var(--text-2);text-align:center;vertical-align:middle}
.rz select{display:block;width:100%;min-width:10rem;min-height:var(--tipp);margin:0 0 var(--a2);font:inherit;font-size:1rem;color:var(--ink);background:var(--flaeche);border:1px solid var(--feldrand);border-radius:var(--r-s);padding:0 var(--a2)}
.rz select:last-child{margin-bottom:0}
.rz select.konflikt{border:2px solid var(--fehler);background:var(--fehler-weich)}
.rz select.fremd{border:2px dashed var(--warn)}

/* Vorschau und Druckblatt */
.plan{color:#000;background:#fff;font-size:.95rem}
.plan.quer{min-width:760px}
.plan.hoch{min-width:520px}
.plan-blatt{margin:0 0 var(--a6)}
.plan-kopf h2{margin:0 0 .15em;font-size:1.4rem;color:#000}
.plan-objekt{margin:0;font-size:1.05rem;font-weight:600}
.plan-zeit{margin:.15em 0 .6em}
.plan-tab{border-collapse:collapse;width:100%;table-layout:auto}
.plan-tab th,.plan-tab td{border:1px solid #444;padding:.35em .5em;text-align:left;vertical-align:top}
.plan-tab th{background:#e9e9e9;font-weight:700;font-size:.85rem}
.plan-tab th.sch{text-align:center}
.plan-tab td.postenname{font-weight:700;width:11%}
.plan-tab td.nam{font-size:.9rem}
.plan-tab td.nam div{min-height:1.5em;border-bottom:1px dotted #888}
.plan-tab td.nam div:last-child{border-bottom:0}
.plan-tab td.aus{background:#f2f2f2;text-align:center;vertical-align:middle;color:#333}
.plan-tab td.box{text-align:center;width:11%}
.plan-tab td.box::before{content:"";display:inline-block;width:1.1em;height:1.1em;border:1.5px solid #222;vertical-align:middle}
.plan-tab tr{height:2.3em}
.plan-tab .frei{color:#666}
.plan-tab .kontakt{font-size:.85rem;color:#222}
.plan-tab td.zahl{text-align:center;white-space:nowrap}
.plan-person{margin:0 0 var(--a6);padding:0 0 var(--a4)}
.plan-person .plan-kopf h2{font-size:1.25rem}
.plan-fuss{margin-top:.8em;font-size:.9rem}
.plan-fuss p{margin:.2em 0}
.plan-fuss .klein{font-size:.8rem;color:#333}

@media (max-width:700px){
  .gruppe{padding:var(--a3) var(--a4) var(--a1)}
  .vorschau-rahmen{padding:var(--a2)}
}

@media print{
  html,body{background:#fff!important;color:#000!important}
  .skip,.kopf,.fuss,.ki-hero,.noprint,.btn,.faq,.gruppe,form,#meldung,.seite>*:not(#ergebnis){display:none!important}
  #ergebnis{display:block!important;margin:0;padding:0}
  #ergebnis>*:not(.vorschau-rahmen){display:none!important}
  .seite{max-width:none!important;padding:0!important;margin:0!important}
  .vorschau-rahmen{overflow:visible!important;border:0!important;padding:0!important;margin:0!important}
  .plan,.plan.quer,.plan.hoch{min-width:0!important;font-size:11pt}
  .plan-blatt{margin:0;break-inside:auto}
  .plan-blatt.neue-seite{break-before:page;page-break-before:always}
  .plan-person{break-inside:avoid;page-break-inside:avoid;margin:0 0 10mm}
  .plan-person.neue-seite{break-before:page;page-break-before:always;margin:0}
  .plan-person.neue-seite:first-child{break-before:auto;page-break-before:auto}
  .plan-tab{width:100%}
  .plan-tab thead{display:table-header-group}
  .plan-tab tr{break-inside:avoid;page-break-inside:avoid}
  .plan-tab th{background:#e9e9e9!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .plan-tab td.aus{background:#f2f2f2!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .plan-tab.uebersicht{font-size:9.5pt}
}
@media print{#ergebnis[hidden]{display:none!important}}
