/* /Components/Pages/Gaeb/AufmassSeite.razor.rz.scp.css */
/* Eingabezeile fest unten (Spec 4.2), eine Spalte unter md -- MudGrid übernimmt die Spalten. */
.aufmass-eingabe[b-bdnvlt3gde] {
    position: sticky;
    bottom: 0;
    z-index: 2;
    background: var(--mud-palette-surface);
    border-top: 1px solid var(--mud-palette-lines-default);
}

/* Web-Review B4: Die Positionsliste scrollt für sich (bis zu 2 000 Positionen), die Zeilen bleiben sichtbar. */
.aufmass-raster-rahmen[b-bdnvlt3gde]  [data-testid='gaeb-erfassen-positionen'] [role='listbox'] {
    max-height: 45vh;
    overflow-y: auto;
}

@media (min-width: 960px) {
    .aufmass-raster-rahmen[b-bdnvlt3gde]  [data-testid='gaeb-erfassen-positionen'] [role='listbox'] {
        max-height: calc(100vh - 360px);
    }
}

/* Die feste Eingabezeile nimmt auf dem Tablet mit Bildschirmtastatur nie den ganzen Schirm. */
.aufmass-eingabe[b-bdnvlt3gde] {
    max-height: 40vh;
    overflow-y: auto;
}

/* Handversuch B4.4 Step 8 (768x1024, 375x812): Eingabefelder und Suche maßen 32 px, der Aktiv-Schalter 38 px. Berührflächen
   mindestens 44 px (Spec 4.2). */
.aufmass-eingabe[b-bdnvlt3gde]  .mud-input,
.aufmass-raster-rahmen[b-bdnvlt3gde]  .mud-input {
    min-height: 44px;
}

.aufmass-aktiv[b-bdnvlt3gde]  .mud-switch-base,
.aufmass-aktiv[b-bdnvlt3gde]  .mud-button-root {
    min-width: 44px;
    min-height: 44px;
}
/* /Components/Pages/Gaeb/LvAngebot.razor.rz.scp.css */
/* Angebotsseite (GAEB Paket 3, Bieterweg X84). Scoped CSS erreicht MudBlazor-Innereien nicht; hier stehen nur eigene
   Elemente (tr/td, dl). */
.zahl[b-tawtw19yk3] {
    text-align: right;
    white-space: nowrap;
}

.nowrap[b-tawtw19yk3] {
    white-space: nowrap;
}

.angebot-stufe td[b-tawtw19yk3] {
    font-weight: 600;
    background: var(--mud-palette-background-gray);
}

.angebot-detailzeile td[b-tawtw19yk3] {
    background: var(--mud-palette-background-gray);
}

.angebot-summen[b-tawtw19yk3] {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 16px;
    row-gap: 2px;
    margin: 0;
}

.angebot-summen dt[b-tawtw19yk3] {
    color: var(--mud-palette-text-secondary);
    font-size: 12.5px;
}

.angebot-summen dd[b-tawtw19yk3] {
    margin: 0;
    text-align: right;
}

.angebot-pruefpunkt[b-tawtw19yk3] {
    padding: 2px 0;
}
/* /Components/Pages/Gaeb/LvAnsicht.razor.rz.scp.css */
/* Kopfkarte der LV-Ansicht: Bezeichnung links, Wert rechts. Scoped CSS erreicht MudBlazor-Innereien nicht; hier stehen
   nur eigene dl/dt/dd. */
.lv-kopfliste[b-lc50ui03jk] {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 16px;
    row-gap: 4px;
    margin: 0;
}

.lv-kopfliste dt[b-lc50ui03jk] {
    color: var(--mud-palette-text-secondary);
    font-size: 12.5px;
}

.lv-kopfliste dd[b-lc50ui03jk] {
    margin: 0;
}
/* /Components/Pages/Gaeb/LvAuftragDialog.razor.rz.scp.css */
/* Kopf und Summenprobe des Auftragsdialogs: Bezeichnung links, Wert rechts (wie LvAnsicht.razor.css — scoped CSS gilt je
   Komponente). Nur eigene dl/dt/dd. */
.lv-kopfliste[b-z57ivhrs1g] {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 16px;
    row-gap: 4px;
    margin: 0;
}

.lv-kopfliste dt[b-z57ivhrs1g] {
    color: var(--mud-palette-text-secondary);
    font-size: 12.5px;
}

.lv-kopfliste dd[b-z57ivhrs1g] {
    margin: 0;
}
/* /Components/Pages/Gaeb/NachtragAkte.razor.rz.scp.css */
/* Kopfkarte der Nachtragsakte: Bezeichnung links, Wert rechts (wie die LV-Ansicht). Scoped CSS erreicht MudBlazor-Innereien nicht;
   hier stehen nur eigene dl/dt/dd. */
.nachtrag-kopfliste[b-ix6rwx6pdj] {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 16px;
    row-gap: 4px;
    margin: 0;
}

.nachtrag-kopfliste dt[b-ix6rwx6pdj] {
    color: var(--mud-palette-text-secondary);
    font-size: 12.5px;
}

.nachtrag-kopfliste dd[b-ix6rwx6pdj] {
    margin: 0;
}
/* /Components/Pages/Verwaltung/Gaeb/Leistungsverzeichnis/GaebKennzeichenChips.razor.rz.scp.css */
/* Kennzeichen-Chips: neutral = gedaempft, warm = "zaehlt nicht mit / Achtung", akzent = informierend (Tafel 2).
   .swx-chip (app.css) gibt Form und Schrift; hier nur Hoehe und Farben. */
.gaeb-chip[b-0sv0ybzmdq] { flex: none; height: auto; padding: 1px 7px; font-size: 11px; font-weight: 600; white-space: nowrap; }
.gaeb-chip-neutral[b-0sv0ybzmdq] {
    background: var(--mud-palette-action-default-hover, var(--swx-hov));
    color: var(--mud-palette-text-secondary, var(--swx-ink2));
}
.gaeb-chip-warm[b-0sv0ybzmdq] { background: rgba(250, 178, 25, 0.22); color: var(--mud-palette-text-primary, var(--swx-ink)); }
.gaeb-chip-akzent[b-0sv0ybzmdq] {
    background: var(--mud-palette-primary-hover, var(--swx-accbg));
    color: var(--mud-palette-primary, var(--swx-acc));
}
/* /Components/Pages/Verwaltung/Gaeb/Leistungsverzeichnis/GaebLangtextAnzeige.razor.rz.scp.css */
/* Langtext der GAEB-Ansicht (Slice 3). Werte aus der Tafel "2 · Ergebnis - Variante A". Farben ueber
   var(--mud-palette-x, var(--swx-y)) -- siehe "BEKANNTE LUECKE" in app.css. */
.gaeb-langtext[b-z8mc4rzl2n] { display: flex; flex-direction: column; gap: 10px; font-size: 13.5px; line-height: 1.6; min-width: 0; }
/* pre-wrap: GAEB 90 richtet mit Leerzeichen und harten Umbruechen aus. anywhere: eine URL oder Nummer ohne Leerraum sprengt sonst die Spalte. */
.gaeb-absatz[b-z8mc4rzl2n] { white-space: pre-wrap; overflow-wrap: anywhere; min-height: 1.2em; }
.gaeb-ausr-links[b-z8mc4rzl2n] { text-align: left; }
.gaeb-ausr-zentriert[b-z8mc4rzl2n] { text-align: center; }
.gaeb-ausr-rechts[b-z8mc4rzl2n] { text-align: right; }
.gaeb-ausr-blocksatz[b-z8mc4rzl2n] { text-align: justify; }
.gaeb-fett[b-z8mc4rzl2n] { font-weight: 700; }
.gaeb-kursiv[b-z8mc4rzl2n] { font-style: italic; }
.gaeb-unterstrichen[b-z8mc4rzl2n] { text-decoration: underline; }
.gaeb-tabelle[b-z8mc4rzl2n] { border-collapse: collapse; font-size: 12.5px; max-width: 100%; }
.gaeb-tabelle th[b-z8mc4rzl2n], .gaeb-tabelle td[b-z8mc4rzl2n] {
    padding: 4px 8px; vertical-align: top; text-align: left;
    border-bottom: 1px solid var(--mud-palette-lines-default, var(--swx-line));
}
.gaeb-tabelle th[b-z8mc4rzl2n] { font-weight: 600; }
.gaeb-tabelle td.gaeb-ausr-rechts[b-z8mc4rzl2n], .gaeb-tabelle th.gaeb-ausr-rechts[b-z8mc4rzl2n] { text-align: right; }
.gaeb-tabelle td.gaeb-ausr-zentriert[b-z8mc4rzl2n], .gaeb-tabelle th.gaeb-ausr-zentriert[b-z8mc4rzl2n] { text-align: center; }
.gaeb-liste[b-z8mc4rzl2n] { margin: 0; padding-left: 1.4em; }
.gaeb-bild[b-z8mc4rzl2n] {
    display: block; max-width: 100%; height: auto; border-radius: 8px;
    border: 1px solid var(--mud-palette-lines-default, var(--swx-line));
    background: var(--mud-palette-background-gray, var(--swx-sb));
}
.gaeb-seitenumbruch[b-z8mc4rzl2n] {
    display: block; text-align: center; font-size: 11px; margin: 6px 0;
    color: var(--mud-palette-text-disabled, var(--swx-ink3));
    border-top: 1px dashed var(--mud-palette-lines-default, var(--swx-line));
}
.gaeb-nicht-dargestellt[b-z8mc4rzl2n] { font-size: 12px; font-style: italic; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
/* Ergaenzungen: Auftraggeber = hinterlegt, Bieter = gestricheltes Feld (Tafel 2) */
.gaeb-erg[b-z8mc4rzl2n] { display: inline-block; padding: 1px 6px; border-radius: 5px; }
.gaeb-erg-auftraggeber[b-z8mc4rzl2n] { background: var(--mud-palette-action-default-hover, var(--swx-hov)); }
.gaeb-erg-hinweis[b-z8mc4rzl2n] { margin-left: 6px; font-size: 11.5px; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-erg-bieter[b-z8mc4rzl2n] { min-width: 180px; padding: 0 8px; border: 1.5px dashed var(--swx-warn); border-radius: 6px; }
.gaeb-erg-bieter[data-leer="true"][b-z8mc4rzl2n] { font-size: 12px; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
/* /Components/Pages/Verwaltung/Gaeb/Leistungsverzeichnis/GaebLvBaum.razor.rz.scp.css */
/* Kopfzeile und Liste der Gliederung. Spaltenbreiten wie GaebLvZeile.razor.css (OZ 118 + Pfeil 20, Betrag 150). */
.gaeb-lv-kopf[b-h5jnmc3b07] {
    display: flex; align-items: center; gap: 4px; height: 30px; padding: 0 12px 0 6px; box-sizing: border-box;
    font-size: 10px; font-weight: 700; letter-spacing: 0.055em; text-transform: uppercase;
    color: var(--mud-palette-text-secondary, var(--swx-ink2));
    border-bottom: 1px solid var(--mud-palette-lines-default, var(--swx-line));
}
.gaeb-lv-kopf-oz[b-h5jnmc3b07] { flex: none; width: 142px; padding-left: 24px; box-sizing: border-box; }
.gaeb-lv-kopf-text[b-h5jnmc3b07] { flex: 1 1 auto; }
.gaeb-lv-kopf-betrag[b-h5jnmc3b07] { flex: none; width: 150px; text-align: right; }
/* Hoehe: Bildschirm minus Kopf, Steckbrief, Reiterleiste, Werkzeugzeilen. Mindestens 320 px. Eigener Bildlauf = Virtualize misst hier. */
.gaeb-lv-liste[b-h5jnmc3b07] { height: calc(100vh - 500px); min-height: 320px; overflow: auto; }
.gaeb-lv-keine[b-h5jnmc3b07] { padding: 16px; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
/* /Components/Pages/Verwaltung/Gaeb/Leistungsverzeichnis/GaebLvDetail.razor.rz.scp.css */
/* Rechte Spalte der LV-Ansicht (Tafel 2). */
.gaeb-lv-leer[b-or95wfz4bt], .gaeb-lv-detail[b-or95wfz4bt] {
    border: 1px solid var(--mud-palette-lines-default, var(--swx-line)); border-radius: 12px; min-width: 0;
    background: var(--mud-palette-surface, var(--swx-card));
}
.gaeb-lv-leer-text[b-or95wfz4bt] { margin: 0; padding: 24px; font-size: 13px; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-lv-detail[b-or95wfz4bt] { padding: 16px 20px; display: flex; flex-direction: column; gap: 14px; min-height: 320px; }
.gaeb-lv-pfad[b-or95wfz4bt] { font-size: 12px; overflow-wrap: anywhere; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-lv-titel[b-or95wfz4bt] { font-size: 15px; font-weight: 700; letter-spacing: -0.018em; white-space: pre-line; overflow-wrap: anywhere; }
.gaeb-lv-chips[b-or95wfz4bt] { display: flex; flex-wrap: wrap; gap: 6px; }
.gaeb-lv-zahlen[b-or95wfz4bt] {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 12px; padding: 12px 14px; border-radius: 10px;
    background: var(--mud-palette-background-gray, var(--swx-sb));
}
.gaeb-lv-zahlen > div[b-or95wfz4bt] { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.gaeb-lv-wert[b-or95wfz4bt] { font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.gaeb-lv-gp[b-or95wfz4bt] { font-weight: 600; }
.gaeb-lv-wert.entfallen[b-or95wfz4bt] { text-decoration: line-through; color: var(--mud-palette-text-disabled, var(--swx-ink3)); }
.gaeb-lv-hinweis[b-or95wfz4bt] {
    font-size: 12.5px; padding: 8px 12px; border-radius: 8px;
    color: var(--mud-palette-text-secondary, var(--swx-ink2)); background: var(--mud-palette-background-gray, var(--swx-sb));
}
.gaeb-lv-angaben[b-or95wfz4bt] { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 4px 16px; margin: 0; font-size: 12.5px; }
.gaeb-lv-angaben dt[b-or95wfz4bt] { color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-lv-angaben dd[b-or95wfz4bt] { margin: 0; font-variant-numeric: tabular-nums; }
.gaeb-lv-langtext[b-or95wfz4bt] { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.gaeb-lv-kein-langtext[b-or95wfz4bt] { font-size: 13px; color: var(--mud-palette-text-disabled, var(--swx-ink3)); }
.gaeb-lv-abschnitt[b-or95wfz4bt] {
    display: flex; flex-direction: column; gap: 8px; padding-top: 10px;
    border-top: 1px solid var(--mud-palette-lines-default, var(--swx-line));
}
.gaeb-lv-abschnitt-titel[b-or95wfz4bt] { font-weight: 600; white-space: pre-line; }
/* /Components/Pages/Verwaltung/Gaeb/Leistungsverzeichnis/GaebLvReiter.razor.rz.scp.css */
/* LV-Ansicht: zwei Spalten, links Gliederung, rechts Detail (Tafel 2). Unter 1000 px untereinander. */
.gaeb-lv[b-adjsd976sw] { display: grid; grid-template-columns: minmax(420px, 5fr) minmax(0, 7fr); gap: 12px; align-items: start; }
@media (max-width: 1000px) { .gaeb-lv[b-adjsd976sw] { grid-template-columns: minmax(0, 1fr); } }
.gaeb-lv-rechenregel[b-adjsd976sw] { grid-column: 1 / -1; font-size: 12px; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-lv-links[b-adjsd976sw] {
    display: flex; flex-direction: column; overflow: hidden; min-width: 0; border-radius: 12px;
    border: 1px solid var(--mud-palette-lines-default, var(--swx-line));
    background: var(--mud-palette-surface, var(--swx-card));
}
.gaeb-lv-werkzeug[b-adjsd976sw] { display: flex; align-items: center; gap: 8px; padding: 10px 12px 2px; }
.gaeb-lv-suche[b-adjsd976sw] { flex: 1 1 auto; min-width: 0; }
.gaeb-lv-werkzeug2[b-adjsd976sw] {
    display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 12px 6px; font-size: 12px;
    color: var(--mud-palette-text-secondary, var(--swx-ink2));
    border-bottom: 1px solid var(--mud-palette-lines-default, var(--swx-line));
}
.gaeb-lv-treffer[b-adjsd976sw] { white-space: nowrap; }
/* /Components/Pages/Verwaltung/Gaeb/Leistungsverzeichnis/GaebLvZeile.razor.rz.scp.css */
/* Eine Zeile der Gliederung. FESTE Hoehe 34 px = ItemSize in GaebLvBaum.razor (Test Zeilenhoehe_der_Stile_und_ItemSize_gehoeren_zusammen). */
.gaeb-lv-zeile[b-7wnhl9xqwa] {
    display: flex; align-items: center; gap: 4px; height: 34px; box-sizing: border-box;
    padding: 0 12px 0 calc(6px + var(--ebene, 0) * 16px);
    border-top: 1px solid var(--mud-palette-action-default-hover, var(--swx-hov));
    cursor: pointer; font-size: 13px; outline-offset: -2px;
}
.gaeb-lv-zeile:hover[b-7wnhl9xqwa] { background: var(--mud-palette-action-default-hover, var(--swx-hov)); }
.gaeb-lv-zeile.aktiv[b-7wnhl9xqwa] {
    background: var(--mud-palette-primary-hover, var(--swx-accbg));
    box-shadow: inset 3px 0 0 var(--mud-palette-primary, var(--swx-acc));
}
.gaeb-lv-zeile.gaeb-art-stufe[b-7wnhl9xqwa] { font-weight: 700; background: var(--mud-palette-background-gray, var(--swx-sb)); }
.gaeb-lv-zeile.gaeb-art-stufe.aktiv[b-7wnhl9xqwa] { background: var(--mud-palette-primary-hover, var(--swx-accbg)); }
.gaeb-lv-zeile.gaeb-art-hinweis .gaeb-lv-kurz[b-7wnhl9xqwa],
.gaeb-lv-zeile.gaeb-art-beschreibung .gaeb-lv-kurz[b-7wnhl9xqwa],
.gaeb-lv-zeile.gaeb-art-unbekannt .gaeb-lv-kurz[b-7wnhl9xqwa] { color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-lv-zeile.entfallen .gaeb-lv-kurz[b-7wnhl9xqwa] { text-decoration: line-through; color: var(--mud-palette-text-disabled, var(--swx-ink3)); }
.gaeb-lv-pfeil[b-7wnhl9xqwa] {
    flex: none; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; padding: 0;
    border: 0; border-radius: 4px; background: transparent; cursor: pointer;
    color: var(--mud-palette-text-secondary, var(--swx-ink2));
}
.gaeb-lv-pfeil svg[b-7wnhl9xqwa] { transition: transform 0.12s; }
.gaeb-lv-pfeil.offen svg[b-7wnhl9xqwa] { transform: rotate(90deg); }
.gaeb-lv-pfeil:disabled[b-7wnhl9xqwa] { cursor: default; opacity: 0.5; }
.gaeb-lv-pfeil-leer[b-7wnhl9xqwa] { flex: none; width: 20px; }
.gaeb-lv-oz[b-7wnhl9xqwa] { flex: none; width: 118px; font-variant-numeric: tabular-nums; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gaeb-lv-text[b-7wnhl9xqwa] { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 6px; overflow: hidden; }
.gaeb-lv-kurz[b-7wnhl9xqwa] { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gaeb-lv-kurz.leer[b-7wnhl9xqwa] { color: var(--mud-palette-text-disabled, var(--swx-ink3)); font-weight: 400; }
.gaeb-lv-artchip[b-7wnhl9xqwa] {
    flex: none; height: auto; padding: 1px 7px; font-size: 11px; font-weight: 600; white-space: nowrap;
    background: var(--mud-palette-action-default-hover, var(--swx-hov)); color: var(--mud-palette-text-secondary, var(--swx-ink2));
}
/* Betrag: zwei Zeilen in 34 px -- oben der Zusatz (10 px), darunter die Zahl. */
.gaeb-lv-betrag[b-7wnhl9xqwa] {
    flex: none; width: 150px; display: flex; flex-direction: column; align-items: flex-end; justify-content: center;
    line-height: 1.15; font-variant-numeric: tabular-nums; white-space: nowrap;
}
.gaeb-lv-betrag[data-klammer][b-7wnhl9xqwa] { color: var(--mud-palette-text-secondary, var(--swx-ink2)); font-weight: 400; }
.gaeb-lv-betragszusatz[b-7wnhl9xqwa] { font-size: 10px; font-weight: 400; color: var(--mud-palette-text-secondary, var(--swx-ink2)); }
.gaeb-lv-betragwert.entfallen[b-7wnhl9xqwa] { text-decoration: line-through; }
