





.wp-fuellbalken{ display:inline-block; position:relative; flex:0 0 auto; width:40px; height:6px; border-radius:3px; overflow:hidden;
vertical-align:middle; background:color-mix(in srgb, var(--gh-text) 14%, transparent); }
.wp-fuellbalken-fuellung{ display:block; height:100%; border-radius:3px; background:var(--belegung-3); }
.wp-fuellbalken--4{ background:var(--belegung-4); }
.wp-fuellbalken.is-ueber > .wp-fuellbalken-fuellung{ background:var(--farbe-gefahr-text); }
.wp-fuellbalken.is-ohne{ background:repeating-linear-gradient(135deg, var(--belegung-na) 0 1.5px, transparent 1.5px 4px); }
.wp-fuellbalken.is-unbekannt{ background:none; box-shadow:inset 0 0 0 var(--rand-haar) var(--gh-muted); }


.wpwl--pop{ display:flex; align-items:stretch; padding:0; max-height:min(72%, 660px); overflow:hidden; }
.wpwl--pop.wpwl--fuellstand{ width:min(560px, calc(100% - 32px)); }
.wpwl--pop.wpwl--vorschlag{ width:min(420px, calc(100% - 32px)); }
.wpwl--pop.wpwl--mitvorschau{ width:min(760px, calc(100% - 32px)); }
.wpwl--pop > .wpwl-koerper{ display:flex; flex:1 1 auto; min-width:0; min-height:0; }
.wpwl-koerper > .wp-statuszeile{ padding:var(--sp-3); }
.wpwl-rollen{ flex:1 1 auto; min-width:0; min-height:0; overflow-y:auto; overscroll-behavior:contain; }
.wpwl--pop .wpwl-rollen{ max-height:min(72%, 660px); }
.wpwl-kopf{ position:sticky; top:0; z-index:2; background:var(--gh-panel); }
.wpwl-vorschau{ flex:0 0 320px; min-height:300px; border-left:var(--rand-haar) solid var(--raster-linie); padding:var(--sp-3);
display:flex; flex-direction:column; gap:var(--sp-2); }


.wpwl-sprung{ display:flex; gap:var(--sp-1); overflow-x:auto; scrollbar-width:none; padding:var(--sp-2) var(--sp-3) var(--sp-1); }
.wpwl-sprung::-webkit-scrollbar{ display:none; }
.wpwl-sprung-pille{ flex:0 0 auto; }
.wpwl-sprung-pille[aria-current="true"]{ background:var(--zustand-flaeche); color:var(--zustand-text); font-weight:600; }



.wpwl-spalten, .wpwl-zeile{ --wpwl-kw:max(calc(var(--t-text) * 5), calc(var(--fs-sm) * 7.1)); display:grid;
grid-template-columns:var(--wpwl-kw) minmax(0, 1fr) 18px; column-gap:var(--sp-2); }
.wpwl-spalten{ padding:var(--sp-1) var(--sp-3); font-size:var(--t-neben); font-weight:600; color:var(--gh-muted); border-bottom:var(--rand-haar) solid var(--raster-linie); }
.wpwl-spalten-trupps, .wpwl-zellen{ display:grid; grid-template-columns:repeat(var(--t, 5), minmax(0, 1fr)); gap:var(--sp-1); }
.wpwl-spalten-trupps > span{ display:flex; align-items:center; justify-content:center; gap:var(--sp-1); min-width:0; }
.wpwl-marke{ width:8px; height:8px; border-radius:50%; flex:0 0 auto; background:var(--wpwl-trupp); }


.wpwl-liste{ display:flex; flex-direction:column; }
.wpwl-zeile.wpwl-zeile{ grid-template-areas:"kw inhalt haken" "kw zusatz haken"; align-items:center; row-gap:var(--sp-1); width:100%; min-height:48px;
padding:6px var(--sp-3); border:0; border-top:var(--rand-haar) solid var(--raster-linie); border-radius:0; color:inherit; font:inherit;
text-align:left; cursor:pointer; }

.wpwl-zeile:not(:where(:root:not([data-wp-objekt-zieht],[data-wp-markierung-ruht])) [data-wp-markiert]){ background:none; }
.wpwl-zeile:first-child{ border-top:0; }
@media (hover:hover){ .wpwl-zeile:not([data-wp-markiert],.is-vorschau):hover{ background:var(--gh-card-hover); } }
.wpwl-zeile:focus-visible{ outline:2px solid var(--fokus-kontur); outline-offset:-2px; }
.wpwl-zeile.is-vorbei{ opacity:.7; }
.wpwl-zeile.is-vorschau{ background:var(--ablage-passend); }
.wpwl-kw{ grid-area:kw; display:flex; flex-direction:column; gap:1px; min-width:0; }
.wpwl-kw-nr{ font-size:var(--t-text); font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
.wpwl-zeile.is-heute .wpwl-kw-nr{ color:var(--heute-text); }
.wpwl-kw-datum{ font-size:var(--fs-sm); color:var(--gh-muted); white-space:nowrap; font-variant-numeric:tabular-nums; }
.wpwl-inhalt{ grid-area:inhalt; min-width:0; }
.wpwl-haken{ grid-area:haken; display:flex; align-items:center; justify-content:center; color:var(--gh-accent); }
.wpwl-haken .wp-i{ width:16px; height:16px; }


.wpwl-zusatz{ grid-area:zusatz; display:flex; flex-wrap:wrap; align-items:center; gap:var(--sp-1) var(--sp-3); font-size:var(--fs-sm); color:var(--gh-muted);
min-width:0; overflow:hidden; }
.wpwl-zusatz .wp-chip{ font-size:var(--fs-sm); }
.wpwl-zusatz-text{ display:inline-flex; align-items:center; gap:3px; min-width:0; }
.wpwl-zusatz > * + .wpwl-zusatz-text{ position:relative; }
.wpwl-zusatz > * + .wpwl-zusatz-text::before{ content:"·"; position:absolute; left:calc(var(--sp-3) / -2 - .2em); color:var(--gh-muted); }
.wpwl-zusatz-text .wp-i{ width:12px; height:12px; flex:0 0 auto; }


.wpwl-zelle{ position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-width:0; height:40px;
border-radius:var(--r-sm); background:var(--kachel-bg); color:var(--gh-text); overflow:hidden; }
.wpwl-zelle .wp-fuellbalken{ width:68%; }
.wpwl-zelle--ohne, .wpwl-zelle--konflikt{ background:repeating-linear-gradient(135deg, var(--belegung-na) 0 1.5px, transparent 1.5px 6px), var(--belegung-0); }
.wpwl-zelle--konflikt .wpwl-wert{ color:var(--farbe-gefahr-text); }
.wpwl-zelle--konflikt .wpwl-wert .wp-i{ width:14px; height:14px; }
.wpwl-zelle--ohne .wpwl-wert, .wpwl-zelle--unbekannt .wpwl-wert{ color:var(--gh-muted); font-weight:400; }
.wpwl-wert{ max-width:100%; font-size:var(--t-neben); font-weight:600; font-variant-numeric:tabular-nums; line-height:1; white-space:nowrap; }
.wpwl-wert small{ font-size:var(--fs-sm); font-weight:400; color:var(--gh-muted); }


.wpwl-zelle{ container-type:inline-size; }
@container (max-width:63px){ .wpwl-einheit{ display:none; } }
.wpwl-zelle--ueber{ gap:2px; }
.wpwl-zelle--ueber .wpwl-wert, .wpwl-zu{ color:var(--farbe-gefahr-text); }
.wpwl-zu{ font-size:var(--fs-sm); line-height:1; white-space:nowrap; }

.wpwl-tagwarn{ position:absolute; top:2px; right:2px; display:flex; color:var(--farbe-gefahr-text); }
.wpwl-tagwarn .wp-i{ width:11px; height:11px; }
.wpwl-kurz{ display:none; }


.wpwl-vorschlag{ display:flex; align-items:center; gap:var(--sp-2); min-width:0; flex-wrap:wrap; }
.wpwl-vorschlag-trupp{ display:inline-flex; align-items:center; gap:var(--sp-1); font-weight:600; white-space:nowrap; }
.wpwl-vorschlag-wert{ font-size:var(--t-neben); color:var(--gh-muted); white-space:nowrap; font-variant-numeric:tabular-nums; }
.wpwl-vorschlag-wert.is-gefahr{ color:var(--farbe-gefahr-text); }
.wpwl-vorschlag-wert.is-knapp{ color:var(--farbe-offen-text); }
.wpwl-alternative{ grid-area:zusatz; font-size:var(--fs-sm); color:var(--gh-muted); }


.wpwl-andere.wpwl-andere{ display:flex; align-items:center; gap:var(--sp-2); width:100%; min-height:44px; padding:0 var(--sp-3); border:0; border-radius:0;
border-top:var(--rand-haar) solid var(--raster-linie); background:none; color:var(--gh-accent); font:inherit; cursor:pointer; text-align:left; }
.wpwl-andere .wp-i{ width:16px; height:16px; }
@media (hover:hover){ .wpwl-andere:hover{ background:var(--gh-card-hover); } }


.wpwl--blatt > .wp-sheet-karte{ display:flex; flex-direction:column; overflow:hidden; }
.wpwl--blatt > .wp-sheet-karte > :not(.wp-sheet-menue){ flex:0 0 auto; }
.wpwl--blatt .wp-sheet-menue{ flex:1 1 auto; min-height:0; display:flex; flex-direction:column; overflow:hidden; padding:0; }
.wpwl--blatt .wpwl-koerper{ flex:1 1 auto; min-height:0; display:flex; flex-direction:column; }
.wpwl--blatt .wpwl-rollen{ flex:1 1 auto; }
.wpwl--blatt .wpwl-liste{ margin:0 var(--sp-3) var(--sp-3); border-radius:var(--r-lg); overflow:hidden; background:var(--gh-card); }
.wpwl--blatt .wpwl-spalten{ padding-left:calc(var(--sp-3) * 2); padding-right:calc(var(--sp-3) * 2); border-bottom:0; }
.wpwl--blatt .wpwl-fuss{ padding-left:var(--sp-3); padding-right:var(--sp-3); }
@media (max-width:480px){
.wpwl-spalten, .wpwl-zeile.wpwl-zeile{ --wpwl-kw:max(calc(var(--t-text) * 5), calc(var(--fs-sm) * 6)); column-gap:var(--sp-1);
grid-template-columns:var(--wpwl-kw) minmax(0, 1fr) 14px; }
.wpwl-zeile.wpwl-zeile, .wpwl-spalten{ padding-left:var(--sp-2); padding-right:var(--sp-2); }
.wpwl--blatt .wpwl-spalten{ padding-left:calc(var(--sp-3) + var(--sp-2)); padding-right:calc(var(--sp-3) + var(--sp-2)); }
.wpwl-zelle .wp-fuellbalken{ width:76%; }
.wpwl-lang, .wpwl-ca{ display:none; }
.wpwl-kurz{ display:inline; }
}



.wpwl--pop:has(> .wpwl-popkopf){ flex-direction:column; }
.wpwl-popkopf{ flex:none; padding:var(--sp-3) var(--sp-4) var(--sp-2); border-bottom:var(--rand-haar) solid var(--gh-border-subtle); }
.wpwl-popkopf-titel{ font-size:var(--t-titel); font-weight:700; color:var(--gh-text); }
.wpwl-popkopf-sub{ margin-top:var(--sp-1); font-size:var(--t-neben); color:var(--gh-muted); }
.wpwl--truppwahl .wpwl-zelle{ cursor:pointer; }
@media (hover:hover){ .wpwl--truppwahl .wpwl-zelle:hover{ box-shadow:inset 0 0 0 2px var(--gh-accent); background:var(--tabelle-auswahl); } }
