input[type=number], input[type=datetime-local] {
  display:block; width:100%; padding:.6rem; margin:.4rem 0;
  border:1px solid #ccc; border-radius:4px; font-size:1rem; }
.zeile { display:flex; gap:.6rem; align-items:flex-end; flex-wrap:wrap; }
.zeile > div { flex:1; min-width:200px; }
.zeile label { font-size:.85rem; color:#555; }
.tab { overflow-x:auto; }
.tab table { min-width:600px; }
.tab td, .tab th { white-space:nowrap; }
.tab input { display:inline-block; width:auto; margin:0; padding:.3rem; font-size:.85rem; }
.tab input.breit { width:100%; min-width:220px; }
button.klein { padding:.3rem .6rem; font-size:.8rem; }
.badge { padding:.1rem .5rem; border-radius:10px; font-size:.75rem;
         background:var(--grau); color:#333; }
.badge.geplant { background:#e6f0ff; color:#0b4ea2; }
.badge.ausgewertet { background:#e3f6e8; color:#1a7f37; }
.cfg { font-family:monospace; }
.hinweis_klein { color:#777; font-size:.8rem; }
.hinweis.links { text-align:left; }
.vorgabe_zeile td { white-space:normal; background:#fafafa; padding:.6rem; }
#status a { color:#fff; }
.zeile .flex0 { flex:0; }
.vz_sz_wrap { flex:0 0 90px; }
.vz_sz_wrap input { width:70px; }
.vz_s77_wrap { flex:0 0 140px; }
.vz_s77_wrap input { width:120px; }
.vz_s6_wrap { flex:0 0 130px; }
.vz_s6_wrap input { width:110px; }

/* Aktionen-Spalte bleibt beim horizontalen Scrollen sichtbar */
.tab td:last-child:not([colspan]), .tab th:last-child {
  position:sticky; right:0; background:#fff;
  box-shadow:-4px 0 6px -4px rgba(0,0,0,.15);
}
