/* Simulation = Mechanik-/Vorbereitungsmaterial, KEIN Nutzer-/Marktbeleg.
 *
 * public/partnerprovision.css — Welle H, Paket `wh/team-provision-1010`, F-038 Teil 2.
 * Gehört zu `partnerprovision.js` (Gruppen im Partner-Popup) und `abrechnung-tafel.js` (Tafel „Abrechnung“).
 * Nur Token aus `basis.css`; kein Inline-Stil im Markup. Zahlenspalten rechtsbündig mit Tabellenziffern.
 */

/* ---- Gruppen im Partner-Popup ---- */
.pp-block { display: grid; gap: var(--space-2); }
.pp-aktuell, .pp-topf-stand { margin: 0; }
.pp-zukunft, .pp-leer { margin: 0; }
.pp-form { display: grid; gap: var(--space-2); }
.pp-klein { font-size: var(--text-caption); color: var(--marke-etikett); }
.pp-ersetzt { text-decoration: line-through; color: var(--marke-etikett); }
.pp-frueher, .pp-kunden, .pp-buchungen { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.pp-frueher[hidden] { display: none; }
.pp-unter { margin: var(--space-3) 0 var(--space-1); font-size: var(--text-caption); color: var(--marke-etikett); font-weight: 600; }
.pp-fehler { color: var(--marke-fehler); margin: 0; }
.pp-fehler[hidden] { display: none; }

/* ---- Tafel „Abrechnung“ ---- */
.ab-tafel { display: grid; gap: var(--space-4); }
.ab-kopf { display: flex; flex-wrap: wrap; align-items: end; gap: var(--space-3); }
.ab-kopf .feld { margin: 0; min-width: 12rem; }
.ab-satz { margin: 0; max-width: 60ch; }
.ab-meldung { margin: 0; min-height: 1.4em; }
.ab-meldung[data-ton="fehler"] { color: var(--marke-fehler); }
.ab-huelle { overflow-x: auto; }
.ab-tabelle { width: 100%; border-collapse: collapse; font-size: var(--text-caption); }
.ab-tabelle th, .ab-tabelle td { padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--marke-linie); text-align: start; vertical-align: top; }
.ab-tabelle thead th { color: var(--marke-etikett); font-weight: 600; white-space: nowrap; }
.ab-tabelle .zahl, .ab-tabelle th.zahl { text-align: end; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ab-tabelle tr[data-gewaehlt="ja"] { background: var(--glasur-hauch, var(--marke-flaeche-stark)); }
.ab-zeilenknopf[aria-pressed="true"] { font-weight: 600; text-decoration: underline; }
.ab-tabelle tr[data-gegenbuchung="ja"] td { color: var(--marke-etikett); }
.ab-tabelle tr[data-aufgehoben="ja"] .ab-betrag { text-decoration: line-through; }
.ab-zeilenknopf { appearance: none; background: none; border: 0; padding: 0; color: var(--marke-aktion); font: inherit; cursor: pointer; text-align: start; }
.ab-zeilenknopf:focus-visible { outline: 2px solid var(--marke-aktion); outline-offset: 2px; }
.ab-aktion { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-2); }
.ab-erfassen { border: 1px solid var(--marke-linie); border-radius: var(--r-2); padding: var(--space-3); }
.ab-erfassen > summary { cursor: pointer; font-weight: 600; }
.ab-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: var(--space-3); margin-top: var(--space-3); }
.ab-form .knopfreihe { grid-column: 1 / -1; }
.ab-chip[data-status="FAELLIG"] { background: var(--marke-erfolg-flaeche); color: var(--marke-erfolg); }
.ab-chip[data-status="WARTET"], .ab-chip[data-status="SPAETER"] { background: var(--marke-warnung-flaeche); color: var(--marke-warnung); }
.ab-chip[data-status="OHNE_REGEL"] { background: var(--marke-fehler-flaeche); color: var(--marke-fehler); }
.ab-nutzung { display: grid; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); gap: var(--space-3); margin: 0; }
.ab-nutzung div { border: 1px solid var(--marke-linie); border-radius: var(--r-1); padding: var(--space-2) var(--space-3); }
.ab-nutzung dt { font-size: var(--text-caption); color: var(--marke-etikett); }
.ab-nutzung dd { margin: 0; font-size: var(--text-lead, 1.25rem); font-variant-numeric: tabular-nums; }
.ab-abschnitt { display: grid; gap: var(--space-2); }
.ab-abschnitt h2 { margin: 0; font-size: var(--text-body, 1rem); font-weight: 600; } /* 3n P2a: h3 → h2, kein Ebenensprung unter dem h1 */

@media (max-width: 34rem) {
  .ab-tabelle th, .ab-tabelle td { padding-inline: var(--space-2); }
  .ab-kopf .feld { min-width: 0; flex: 1 1 100%; }
}

/* L7: „geworben von“ in der Nutzungstafel — eigene Zeile unter dem Namen, bricht auf dem Telefon nicht aus. */
.nutzung-werber { display: block; font-size: var(--text-caption); font-weight: 400; color: var(--marke-etikett); overflow-wrap: anywhere; }
