/*
 * Christoph 17 Abrechnung – Stile der Modulinhalte (Schlüsselverwaltung A2b, GOÄ-Ansicht A4b).
 * Nutzt die Design-Tokens des Themes (mit Ersatzwerten ohne Theme). Das Untermenü (Karteireiter) ist hier
 * bewusst NICHT gestaltet: Es steht zentral im Theme (mitglieder.css, Abschnitt „Karteireiter“, A-31).
 */
.c17-abr .c17-reiterkarte h2 { margin: 0; }
.c17-abr-formular { display: flex; flex-direction: column; gap: 10px; max-width: 520px; }
.c17-abr-formular > p, .c17-abr-formular fieldset { margin: 0; }
.c17-abr-formular textarea { font-family: var(--c17-font-mono, monospace); text-transform: uppercase; letter-spacing: .04em; }
.c17-abr-rolle { border: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.c17-abr-rolle legend { font-weight: 600; padding: 0; margin-bottom: 4px; }
.c17-abr-wege { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--c17-space-16, 16px); }
.c17-abr-weg { display: flex; flex-direction: column; gap: 10px; padding: 16px 18px; border: 1px solid var(--c17-line, #d5dade); background: var(--c17-surface, #f3f4f5); min-width: 0; }
.c17-abr-weg > * { margin: 0; }
.c17-abr-abschnitt { display: flex; flex-direction: column; gap: 12px; }
.c17-abr-abschnitt > * { margin: 0; }
.c17-abr-tabelle-rahmen { overflow-x: auto; }
.c17-abr-tabelle { border-collapse: collapse; width: 100%; font-size: 15px; }
.c17-abr-tabelle th, .c17-abr-tabelle td { padding: 8px; border-bottom: 1px solid var(--c17-line, #d5dade); text-align: left; vertical-align: top; }
.c17-abr-tabelle thead th { font: 500 11px var(--c17-font-mono, monospace); letter-spacing: .1em; text-transform: uppercase; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-aktionen { display: flex; flex-wrap: wrap; gap: 8px; }
.c17-abr-inline p { margin: 0; }
.c17-abr-inline .c17-knopf { min-height: 40px; padding: 0 14px; font-size: 14px; }
/* GOÄ-Ansicht (A4b): amtlicher Text, Suche, Regelwerk */
.c17-abr-goae { display: flex; flex-direction: column; gap: 16px; }
.c17-abr-goae > *, .c17-abr-goae p { margin: 0; }
.c17-abr-goae__suche { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; }
.c17-abr-goae__suche .c17-feld { flex: 1 1 260px; margin: 0; }
.c17-abr-goae__inhalt ul, .c17-abr-goae__treffer { margin: 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 6px; }
.c17-abr-goae__wege ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px 20px; }
.c17-abr-goae__wege a { font-weight: 600; }
.c17-abr-goae__gruppe { margin: 20px 0 4px; }
.c17-abr-goae__text--relevant .c17-abr-goae__marke { display: none; } /* dort ist jede Ziffer aus dem Katalog */
.c17-abr-goae__text { display: flex; flex-direction: column; gap: 0; }
.c17-abr-goae__teil { display: flex; flex-direction: column; gap: 8px; padding: 18px 0 10px; scroll-margin-top: 90px; }
.c17-abr-goae__teil h3, .c17-abr-goae__teil h4 { margin: 0; }
.c17-abr-goae__teil--paragraph h3 { font-size: 20px; }
.c17-abr-goae__ziffer { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 4px 14px; padding: 10px 8px; border-bottom: 1px solid var(--c17-line, #d5dade); scroll-margin-top: 90px; }
.c17-abr-goae__ziffer p { margin: 0; }
.c17-abr-goae__leistung { display: flex; flex-direction: column; gap: 6px; font-size: 15px; }
.c17-abr-goae__legende { font-weight: 600; }
.c17-abr-goae__nr, .c17-abr-goae__punkte { font: 500 14px var(--c17-font-mono, monospace); white-space: nowrap; }
.c17-abr-goae__punkte { text-align: right; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-goae__ziffer--katalog { border-left: 4px solid var(--c17-brand, #ff5900); }
.c17-abr-goae__marke { font: 500 11px var(--c17-font-mono, monospace); letter-spacing: .1em; text-transform: uppercase; color: var(--c17-accent-text, #b33f00); }
.c17-abr-goae :target { background: var(--c17-surface, #f3f4f5); outline: 2px solid var(--c17-tint-line, #ff5900); outline-offset: 2px; }
.c17-abr-goae__quelle { font-size: 13px; }
/* Tabellen des Regelwerks ohne Scrollrahmen, damit Tooltips nicht abgeschnitten werden */
.c17-abr-goae__tabelle .c17-abr-fundstelle { margin: 0 6px 4px 0; }
@media screen and (max-width: 820px) {
	.c17-abr-goae__ziffer { grid-template-columns: minmax(0, 1fr) auto; }
	.c17-abr-goae__leistung { grid-column: 1 / -1; grid-row: 2; }
}
/* Verweis auf eine GOÄ-Fundstelle mit Zitat als Tooltip (Zeigen oder Tastaturfokus). Versteckt mit display:none,
   damit es keine Bildlaufleisten erzeugt; abrechnung.js rückt es in den sichtbaren Bereich. */
.c17-abr-fundstelle { position: relative; display: inline-block; }
.c17-abr-fundstelle > a { font: 500 13px var(--c17-font-mono, monospace); white-space: nowrap; }
.c17-abr-fundstelle__zitat {
	display: none; position: absolute; z-index: 20; left: 0; top: calc(100% + 6px); width: max-content; max-width: min(420px, calc(100vw - 32px));
	padding: 10px 12px; background: var(--c17-text, #0e161e); color: var(--c17-bg, #fff); font-size: 14px; line-height: 1.45;
	white-space: normal; box-shadow: 0 4px 16px rgba(0, 0, 0, .25); pointer-events: none;
}
.c17-abr-fundstelle:hover .c17-abr-fundstelle__zitat, .c17-abr-fundstelle:focus-within .c17-abr-fundstelle__zitat { display: block; }
/* Druckblatt im Stil der Rechnungsvorlage (Papier: immer hell, auch im dunklen Modus) */
.c17-abr-blatt {
	--blatt-text: #0e161e; --blatt-gedaempft: #5b6b78; --blatt-linie: #d5dade; --blatt-flaeche: #f3f4f5; --blatt-akzent: #ff5900;
	position: relative; display: flex; flex-direction: column; gap: 14px; max-width: 794px; padding: 36px 40px 24px 48px;
	background: #fff; color: var(--blatt-text); border: 1px solid var(--blatt-linie); border-top: 8px solid var(--blatt-akzent);
	font-family: var(--wp--preset--font-family--barlow, Barlow, Arial, sans-serif); font-size: 15px; line-height: 1.45;
}
.c17-abr-blatt > * { margin: 0; }
.c17-abr-blatt p { margin: 0; color: var(--blatt-text); }
.c17-abr-blatt__kopf { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 8px; }
.c17-abr-blatt__logo { width: 200px; height: auto; }
.c17-abr-blatt__marke { font: 700 26px/1 var(--wp--preset--font-family--barlow-condensed, 'Barlow Condensed', 'Arial Narrow', sans-serif); text-transform: uppercase; }
.c17-abr-blatt .c17-abr-blatt__absender { font: 400 11px/1.5 var(--wp--preset--font-family--ibm-plex-mono, 'IBM Plex Mono', monospace); letter-spacing: .08em; text-transform: uppercase; color: var(--blatt-gedaempft); text-align: right; }
.c17-mitglieder .c17-abr-blatt .c17-abr-blatt__titel { align-self: flex-start; margin: 4px 0 0; padding-top: 8px; border-top: 4px solid var(--blatt-akzent); font: 700 24px/1.1 var(--wp--preset--font-family--barlow-condensed, 'Barlow Condensed', 'Arial Narrow', sans-serif); text-transform: uppercase; letter-spacing: .01em; color: var(--blatt-text); }
.c17-abr-blatt__daten { margin: 0; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 4px 12px; font: 400 12px/1.6 var(--wp--preset--font-family--ibm-plex-mono, 'IBM Plex Mono', monospace); }
.c17-abr-blatt__daten dt { letter-spacing: .08em; text-transform: uppercase; color: var(--blatt-gedaempft); }
.c17-abr-blatt__daten dd { margin: 0; overflow-wrap: anywhere; color: var(--blatt-text); }
.c17-abr-blatt__kasten { display: flex; flex-direction: column; gap: 6px; padding: 14px 18px 16px; background: var(--blatt-flaeche); border-top: 4px solid var(--blatt-akzent); }
.c17-abr-blatt .c17-abr-blatt__etikett { font: 500 11px var(--wp--preset--font-family--ibm-plex-mono, 'IBM Plex Mono', monospace); letter-spacing: .1em; text-transform: uppercase; color: var(--blatt-gedaempft); }
.c17-abr-blatt__etikett + .c17-abr-blatt__schluessel { margin-bottom: 8px; }
.c17-abr-blatt .c17-abr-blatt__schluessel { font: 500 19px/1.6 var(--wp--preset--font-family--ibm-plex-mono, 'IBM Plex Mono', monospace); letter-spacing: .06em; word-spacing: .2em; overflow-wrap: anywhere; color: var(--blatt-text); }
.c17-abr-blatt .c17-abr-blatt__klein { font-size: 12.5px; color: var(--blatt-gedaempft); }
.c17-abr-blatt__fuss { margin-top: 8px !important; padding-top: 10px; border-top: 1px solid var(--blatt-linie); display: flex; flex-direction: column; gap: 2px; }
.c17-abr-blatt__fuss p { font-size: 11.5px; color: var(--blatt-gedaempft) !important; }
.c17-abr-blatt__fuss strong { color: var(--blatt-text); font-weight: 600; }
@media screen and (max-width: 820px) {
	.c17-abr-blatt { padding: 24px 18px 18px; }
	.c17-abr-blatt__logo { width: 140px; }
	.c17-abr-blatt .c17-abr-blatt__schluessel { font-size: 16px; }
	.c17-abr-blatt__daten { grid-template-columns: minmax(0, 1fr); }
}
.c17-abr-codekasten { display: flex; flex-direction: column; gap: 10px; padding: 16px; border: 2px solid var(--c17-brand, #ff5900); }
.c17-abr-codekasten > p { margin: 0; }
/* Handy: Tabelle der Personen als Karten untereinander */
@media screen and (max-width: 820px) {
	.c17-abr-tabelle thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.c17-abr-tabelle, .c17-abr-tabelle tbody, .c17-abr-tabelle tr, .c17-abr-tabelle td { display: block; width: 100%; }
	.c17-abr-tabelle tr { padding: 10px 0; border-bottom: 1px solid var(--c17-line, #d5dade); }
	.c17-abr-tabelle td { border: 0; padding: 3px 0; }
	.c17-abr-tabelle td[data-titel]::before { content: attr(data-titel) ": "; font: 500 11px var(--c17-font-mono, monospace); letter-spacing: .1em; text-transform: uppercase; color: var(--c17-text-muted, #5b6b78); }
	.c17-abr-aktionen { padding-top: 8px !important; }
}
/* Druck: nur die Blätter, je eines pro A4-Seite (gleiche Vorsilbe für die Sichtbarkeit, sonst gewinnt die Ausblende-Regel) */
@media print {
	@page { size: A4; margin: 0; }
	html:has(.c17-abr-blatt), body:has(.c17-abr-blatt) { background: #fff !important; }
	body:has(.c17-abr-blatt) :is(header, footer, .c17-seitenkopf) { display: none !important; }
	body:has(.c17-abr-blatt) * { visibility: hidden; }
	body:has(.c17-abr-blatt) .c17-abr-blatt, body:has(.c17-abr-blatt) .c17-abr-blatt * { visibility: visible; }
	/* Alle Vorfahren ohne eigene Positionierung, damit die Blätter am Seitenanfang beginnen */
	body:has(.c17-abr-blatt) :has(.c17-abr-blatt) { position: static !important; margin-top: 0 !important; padding-top: 0 !important; }
	body:has(.c17-abr-blatt) .c17-abr { position: absolute !important; inset: 0 0 auto 0; }
	body:has(.c17-abr-blatt) .c17-reiterleiste, .c17-abr-nicht-drucken { display: none !important; }
	/* Überschrift, Hinweise und Formulare der Seite nehmen im Druck keinen Platz ein */
	body:has(.c17-abr-blatt) .c17-reiterkarte > :not(.c17-abr-blatt):not(.c17-abr-codekasten),
	body:has(.c17-abr-blatt) .c17-abr-codekasten > :not(.c17-abr-blatt) { display: none !important; }
	body:has(.c17-abr-blatt) .c17-reiterkarte { border: 0; padding: 0; margin: 0; background: #fff; gap: 0; }
	body:has(.c17-abr-blatt) .c17-abr-codekasten { border: 0; padding: 0; }
	.c17-abr-blatt { box-sizing: border-box; width: 210mm; max-width: none; height: 296.5mm; overflow: hidden; padding: 16mm 20mm 14mm 25mm; border: 0; border-top: 3mm solid #ff5900; break-after: page; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
	.c17-abr-blatt__fuss { margin-top: auto !important; }
	.c17-abr-blatt__logo { width: 62mm; }
}
/* ---------- Erfassung (A6b, Mockups 2B/2C und Maßnahmen Variante 3) ---------- */
.c17-abr-einsaetze { display: flex; flex-direction: column; gap: 14px; }
.c17-abr-einsaetze > *, .c17-abr-vorschlag > * { margin: 0; }
.c17-abr-einsaetze__liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; max-width: 720px; }
.c17-abr-einsatz { display: flex; flex-direction: column; gap: 6px; padding: 12px 14px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); color: var(--c17-text, #0e161e); text-decoration: none; }
.c17-abr-einsatz:hover { border-color: var(--c17-text, #0e161e); color: var(--c17-text, #0e161e); }
.c17-abr-einsatz__kopf { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.c17-abr-einsatz__zeit { font: 500 14px var(--c17-font-mono, monospace); }
.c17-abr-einsatz__name { font-weight: 600; font-size: 17px; }
.c17-abr-einsatz__stand { font-size: 15px; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-einsatz__marke { align-self: flex-start; background: var(--c17-warnung, #ffd000); color: #0e161e; font-size: 14px; font-weight: 600; padding: 3px 8px; }
.c17-abr-einsatz__weiter { font-size: 15px; font-weight: 600; color: var(--c17-accent-text, #b33f00); }
.c17-abr-erf { display: flex; flex-direction: column; gap: 18px; }
.c17-abr-erf > *, .c17-abr-erf p { margin: 0; }
.c17-abr-erf__kopf { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.c17-abr-erf__status { font-size: 15px; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-erf__status[data-art="ok"] { color: var(--c17-success-text, #186b3c); font-weight: 600; }
.c17-abr-erf__status[data-art="ok"]::before { content: "✓ "; }
.c17-abr-erf__status[data-art="fehler"] { color: var(--c17-danger-text, #b0103a); font-weight: 600; }
.c17-abr-erf__warnungen { display: flex; flex-direction: column; gap: 6px; padding: 12px 14px; background: var(--c17-warnung, #ffd000); color: #0e161e; font-weight: 600; }
.c17-abr-erf__warnungen[hidden] { display: none; }
.c17-abr-erf__zwei { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.c17-abr-erf__schritt { display: flex; flex-direction: column; gap: 18px; }
.c17-abr-erf__schritt[hidden] { display: none; }
.c17-abr-erf__karte { margin: 0; padding: 18px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.c17-abr-erf__karte > legend { padding: 0 4px; font: 800 22px/1 var(--c17-font-condensed, 'Arial Narrow', sans-serif); text-transform: uppercase; }
.c17-abr-erf__karte h3 { margin: 0; }
.c17-abr-erf__reihe { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.c17-abr-erf__reihe--plz { grid-template-columns: 110px minmax(0, 1fr); }
.c17-abr-erf [hidden] { display: none !important; }
.c17-abr-erf__hilfe { font-size: 14px; font-weight: 400; }
.c17-abr-erf__zuschlag { padding: 10px 12px; background: var(--c17-tint, #ffdecc); border: 1px solid var(--c17-brand, #ff5900); font-size: 15px; color: var(--c17-text, #0e161e); }
/* Maßnahmen: eine Zeile je Abschnitt, Titel mit Icon links (Variante 3) */
.c17-abr-erf__massnahmen { gap: 0; padding-bottom: 6px; }
.c17-abr-erf__massnahmen > p { margin-bottom: 10px; }
.c17-abr-erf__kategorie { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 8px 16px; padding: 14px 0; border-top: 1px solid var(--c17-line, #d5dade); }
.c17-abr-erf__kattitel { display: flex; align-items: center; gap: 10px; align-self: start; padding-top: 6px; }
.c17-abr-erf__kattitel h3 { font: 600 16px/1.2 var(--c17-font-sans, Barlow, Arial, sans-serif); text-transform: none; flex-grow: 1; }
.c17-abr-erf__icon { flex: none; color: currentColor; }
.c17-abr-erf__zahl { font: 500 12px var(--c17-font-mono, monospace); color: var(--c17-text-muted, #5b6b78); white-space: nowrap; }
.c17-abr-erf__kacheln, .c17-abr-erf__kurzinfo, .c17-abr-erf__details { grid-column: 2; }
.c17-abr-erf__kacheln { display: flex; flex-wrap: wrap; gap: 6px; }
.c17-abr-erf__umbruch { flex-basis: 100%; height: 0; }
.c17-abr-erf__kachel { position: relative; display: inline-flex; }
.c17-abr-erf__kachel input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.c17-abr-erf__kachel label { display: inline-flex; align-items: center; min-height: 44px; padding: 0 12px; border: 1px solid var(--c17-grau-500, #7d8a95); background: transparent; font-size: 16px; cursor: pointer; user-select: none; }
.c17-abr-erf__kachel input:checked + label { background: var(--c17-brand, #ff5900); border-color: var(--c17-brand, #ff5900); color: #0e161e; }
.c17-abr-erf__kachel input:focus-visible + label { outline: 3px solid var(--c17-focus, #0e161e); outline-offset: 2px; }
.c17-abr-erf__info { display: none; position: absolute; z-index: 20; left: 0; top: calc(100% + 6px); width: max-content; max-width: min(300px, calc(100vw - 32px)); padding: 8px 10px; background: var(--c17-text, #0e161e); color: var(--c17-bg, #fff); font-size: 14px; line-height: 1.4; pointer-events: none; }
@media (hover: hover) and (min-width: 821px) {
	.c17-abr-erf__kachel:hover .c17-abr-erf__info, .c17-abr-erf__kachel:focus-within .c17-abr-erf__info { display: block; }
}
.c17-abr-erf__kurzinfo { padding: 8px 10px; border-left: 3px solid var(--c17-brand, #ff5900); background: var(--c17-surface, #e8ebed); font-size: 14px; line-height: 1.4; }
.c17-abr-erf__details { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; padding: 10px 12px; background: var(--c17-surface, #e8ebed); }
.c17-abr-erf__dtitel { font-weight: 600; font-size: 15px; align-self: center; }
.c17-abr-erf__details .c17-feld { flex: 0 1 200px; }
.c17-abr-erf__details .c17-feld--haken { flex: 0 0 auto; }
.c17-abr-erf__zusammenfassung dl { margin: 0; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 8px 10px; font-size: 15px; }
.c17-abr-erf__zusammenfassung dt { color: var(--c17-text-muted, #5b6b78); }
.c17-abr-erf__zusammenfassung dd { margin: 0; overflow-wrap: anywhere; }
.c17-abr-erf__fuss { display: flex; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.c17-abr-erf__fortschritt { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
.c17-abr-erf__fortschritt li { padding-top: 8px; border-top: 6px solid var(--c17-line, #d5dade); font: 500 11px/1.3 var(--c17-font-mono, monospace); letter-spacing: .06em; text-transform: uppercase; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-erf__fortschritt li.fertig { border-top-color: var(--c17-brand, #ff5900); }
.c17-abr-erf__fortschritt li[aria-current] { border-top-color: var(--c17-text, #0e161e); color: var(--c17-text, #0e161e); }
.c17-abr-erf__loeschen { margin: 0; }
@media screen and (max-width: 820px) {
	.c17-abr-erf__zwei { grid-template-columns: minmax(0, 1fr); }
	.c17-abr-erf__kategorie { grid-template-columns: minmax(0, 1fr); }
	.c17-abr-erf__kacheln, .c17-abr-erf__kurzinfo, .c17-abr-erf__details { grid-column: 1; }
	.c17-abr-erf__karte { padding: 14px; }
	.c17-abr-erf__details .c17-feld { flex: 1 1 140px; }
	/* Schritte: Knöpfe unten fest, wie in der App */
	.c17-abr-erf--schritte .c17-abr-erf__fuss { position: sticky; bottom: 0; z-index: 5; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 -16px; padding: 10px 16px 16px; background: var(--c17-surface-raised, #fff); border-top: 1px solid var(--c17-line, #d5dade); }
	.c17-abr-erf--schritte .c17-abr-erf__fuss > :only-child, .c17-abr-erf--schritte .c17-abr-erf__fuss [data-c17-weiter]:first-child { grid-column: 1 / -1; }
}
/* Vorschlag ohne Beträge (Mockup 3) */
.c17-abr-vorschlag { display: flex; flex-direction: column; gap: 12px; max-width: 720px; }
.c17-abr-vorschlag__liste { list-style: none; margin: 0; padding: 0; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); }
.c17-abr-vorschlag__liste li { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 2px 10px; padding: 10px 12px; border-bottom: 1px solid var(--c17-line, #d5dade); }
.c17-abr-vorschlag__nr { font: 500 15px var(--c17-font-mono, monospace); grid-row: span 2; }
.c17-abr-vorschlag__zusatz { grid-column: 2; font: 500 13px var(--c17-font-mono, monospace); color: var(--c17-text-muted, #5b6b78); }
.c17-abr-vorschlag__hinweis { padding: 10px 12px; background: var(--c17-info, #003b62); color: var(--c17-on-info, #fff); font-size: 15px; }
.c17-abr-vorschlag__nachricht { padding: 10px 12px; background: var(--c17-surface, #e8ebed); }
/* ---------- Abrechnung: Übersicht und Prüfansicht (A7a, Mockups 4 und 5) ---------- */
.c17-abr .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.c17-abr-mono { font-family: var(--c17-font-mono, monospace); font-size: 14px; white-space: nowrap; }
.c17-abr-rechts { text-align: right !important; }
.c17-abr-uebersicht, .c17-abr-pruefen { display: flex; flex-direction: column; gap: 18px; }
.c17-abr-uebersicht > *, .c17-abr-pruefen > *, .c17-abr-pruefen__teil > * { margin: 0; }
.c17-abr-uebersicht__kopf, .c17-abr-pruefen__kopf { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.c17-abr-uebersicht__kopf h2, .c17-abr-pruefen__kopf h2 { margin: 0; }
.c17-abr-uebersicht__kopf .c17-abr-aktionen { align-items: center; gap: 16px; margin: 0; }
.c17-abr-kacheln { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 10px; }
.c17-abr-kacheln > li { display: flex; }
.c17-abr-kachel { flex: 1; display: flex; flex-direction: column; gap: 4px; min-height: 118px; padding: 12px 14px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); border-top: 4px solid var(--c17-line, #d5dade); color: var(--c17-text, #0e161e); text-decoration: none; }
.c17-abr-kachel:hover { color: var(--c17-text, #0e161e); border-color: var(--c17-text, #0e161e); }
.c17-abr-kachel--hinweis { border-top-color: var(--c17-brand, #ff5900); }
.c17-abr-kachel--warnung { border-top-color: var(--c17-danger, #b0103a); }
.c17-abr-kachel--warnung .c17-abr-kachel__zahl { color: var(--c17-danger-text, var(--c17-danger, #b0103a)); }
.c17-abr-kachel--aktiv { outline: 2px solid var(--c17-text, #0e161e); outline-offset: -2px; }
.c17-abr-kachel__zahl { font: 800 32px/1 var(--c17-font-condensed, 'Arial Narrow', sans-serif); }
.c17-abr-kachel__titel { font-weight: 700; }
.c17-abr-kachel__zusatz { color: var(--c17-text-muted, #4a5560); font-size: 0.875rem; }
.c17-abr-erledigt { color: var(--c17-text-muted, #4a5560); font-size: 0.875rem; }
@media (max-width: 820px) { .c17-abr-kacheln { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.c17-abr-filter { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; }
.c17-abr-filter > p { margin: 0; }
.c17-abr-filter .c17-feld { flex: 1 1 160px; }
.c17-abr-filter .c17-abr-filter__suche { flex: 2 1 260px; }
.c17-abr-status { display: inline-block; padding: 3px 8px; font-size: 14px; font-weight: 600; white-space: nowrap; border: 1px solid var(--c17-grau-500, #7d8a95); }
.c17-abr-status--entwurf { background: var(--c17-warnung, #ffd000); color: #0e161e; border-color: var(--c17-warnung, #ffd000); }
.c17-abr-status--erfasst { background: var(--c17-brand, #ff5900); color: #0e161e; border-color: var(--c17-brand, #ff5900); }
.c17-abr-status--in_pruefung { background: var(--c17-info, #003b62); color: var(--c17-on-info, #fff); border-color: var(--c17-info, #003b62); }
.c17-abr-faelle td { vertical-align: middle; }
.c17-abr-faelle .c17-abr-inline, .c17-abr-aktionen .c17-abr-inline { display: inline-flex; margin: 0; }
.c17-abr-pruefen__daten { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px 20px; }
.c17-abr-pruefen__daten > div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.c17-abr-pruefen__daten dd { margin: 0; overflow-wrap: anywhere; }
.c17-abr-pruefen__zuschlag, .c17-abr-pruefen__hinweis { padding: 10px 12px; background: var(--c17-tint, #ffdecc); border: 1px solid var(--c17-brand, #ff5900); font-size: 15px; }
.c17-abr-pruefen__teil { display: flex; flex-direction: column; gap: 10px; padding-top: 14px; border-top: 1px solid var(--c17-line, #d5dade); }
.c17-abr-pruefen__teil h3 { margin: 0; }
.c17-abr-summe td { font-weight: 600; border-top: 2px solid var(--c17-text, #0e161e); }
.c17-abr-pruefliste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.c17-abr-pruefliste li { padding: 10px 12px; border-left: 4px solid var(--c17-line, #d5dade); background: var(--c17-surface-raised, #fff); font-size: 15px; }
.c17-abr-pruefliste__hart { border-left-color: var(--c17-danger, #b0103a) !important; }
.c17-abr-pruefliste__weich { border-left-color: var(--c17-warnung, #ffd000) !important; }
.c17-abr-pruefliste__hinweis { border-left-color: var(--c17-info, #003b62) !important; }
.c17-abr-pruefliste__ok { border-left-color: var(--c17-success, #1e7b47) !important; }
.c17-abr-pruefen__nachricht { padding: 10px 12px; background: var(--c17-surface, #e8ebed); }
.c17-abr-verlauf { margin: 0; padding-left: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; font-size: 15px; }
.c17-abr-dialog { position: relative; }
.c17-abr-dialog > summary { list-style: none; cursor: pointer; }
.c17-abr-dialog > summary::-webkit-details-marker { display: none; }
.c17-abr-dialog__inhalt { position: absolute; z-index: 30; left: 0; bottom: calc(100% + 8px); width: min(460px, calc(100vw - 48px)); display: flex; flex-direction: column; gap: 12px; padding: 18px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); border-top: 4px solid var(--c17-brand, #ff5900); box-shadow: 0 8px 24px rgba(14, 22, 30, .25); }
.c17-abr-dialog__inhalt > *, .c17-abr-dialog__inhalt h4 { margin: 0; }
@media screen and (max-width: 820px) {
	.c17-abr-dialog__inhalt { position: static; width: auto; margin-top: 10px; box-shadow: none; }
	.c17-abr-faelle .c17-abr-rechts { text-align: left !important; }
}
.c17-abr-pruefen__ablauf { display: flex; flex-direction: column; gap: 10px; }
.c17-abr-pruefen__ablauf > * { margin: 0; }
.c17-abr-pruefen__ablauf .c17-abr-aktionen { align-items: flex-start; }
.c17-abr-pruefen__ablauf .c17-knopf, .c17-abr-faelle .c17-knopf { min-height: 44px; padding: 0 16px; font-size: 16px; }
/* ---------- Positionen bearbeiten und Texte (A7b) ---------- */
.c17-abr-marke { display: inline-block; margin-left: 6px; padding: 1px 6px; font: 500 11px var(--c17-font-mono, monospace); letter-spacing: .06em; text-transform: uppercase; border: 1px solid var(--c17-grau-500, #7d8a95); color: var(--c17-text-muted, #5b6b78); }
.c17-abr-pos-aktionen { white-space: nowrap; text-align: right; width: 96px; }
.c17-abr-pos-aktionen > * { display: inline-flex; vertical-align: top; margin: 0; }
.c17-abr-icon-knopf { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; background: none; border: 1px solid transparent; color: var(--c17-text-muted, #5b6b78); cursor: pointer; list-style: none; }
.c17-abr-icon-knopf::-webkit-details-marker { display: none; }
.c17-abr-icon-knopf:hover { color: var(--c17-text, #0e161e); border-color: var(--c17-line, #d5dade); }
.c17-abr-pos-aendern { position: relative; }
.c17-abr-pos-aendern[open] > summary { color: var(--c17-text, #0e161e); border-color: var(--c17-text, #0e161e); }
.c17-abr-pos-formular { position: absolute; z-index: 25; right: 0; top: calc(100% + 4px); width: 300px; display: flex; flex-direction: column; gap: 10px; padding: 14px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); border-top: 4px solid var(--c17-brand, #ff5900); box-shadow: 0 8px 24px rgba(14, 22, 30, .25); text-align: left; white-space: normal; }
.c17-abr-pos-formular > p { margin: 0; }
.c17-abr-pos-neu { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; padding: 12px; background: var(--c17-surface, #e8ebed); }
.c17-abr-pos-neu > p { margin: 0; }
.c17-abr-pos-neu .c17-feld { flex: 0 1 120px; }
.c17-abr-pos-neu .c17-abr-pos-neu__nr { flex: 1 1 280px; }
.c17-abr-pruefliste li { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.c17-abr-pruefliste--geprueft { border-left-color: var(--c17-success, #1e7b47) !important; }
.c17-abr-geprueft { margin: 0; }
.c17-abr-haken { min-height: 40px; padding: 0 12px; border: 1px solid var(--c17-text, #0e161e); background: transparent; color: var(--c17-text, #0e161e); font: 600 14px var(--c17-font-sans, Barlow, Arial, sans-serif); cursor: pointer; display: inline-flex; align-items: center; }
.c17-abr-haken[aria-pressed="true"], .c17-abr-haken--fest { background: var(--c17-success, #1e7b47); border-color: var(--c17-success, #1e7b47); color: var(--c17-on-success, #fff); }
.c17-abr-haken--fest { cursor: default; }
.c17-abr-texte { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.c17-abr-texte__intern { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.c17-abr-textkasten { display: flex; flex-direction: column; gap: 6px; padding: 14px; min-width: 0; }
.c17-abr-textkasten > *, .c17-abr-texte__eingabe > *, .c17-abr-texte__vorschau > * { margin: 0; }
.c17-abr-textkasten--grau { background: var(--c17-surface, #e8ebed); }
.c17-abr-textkasten--druck { background: var(--c17-tint, #ffdecc); border: 2px solid var(--c17-brand, #ff5900); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
.c17-abr-texte__eingabe, .c17-abr-texte__vorschau { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.c17-abr-textkasten__kopf { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.c17-abr-textkasten__klein { font-size: 14px; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-textkasten__druck { color: var(--c17-accent-text, #b33f00); font-weight: 600; }
.c17-abr-textkasten textarea { width: 100%; box-sizing: border-box; min-height: 96px; padding: 10px 12px; font: 400 16px/1.5 var(--c17-font-sans, Barlow, Arial, sans-serif); color: var(--c17-text, #0e161e); background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-grau-500, #7d8a95); border-radius: 0; resize: vertical; }
/* Papier ist immer hell, auch im Dunkelmodus (wie das PDF) */
.c17-abr-papier { display: flex; flex-direction: column; gap: 8px; padding: 16px 18px; background: #fff; color: #0e161e; border: 1px solid #d5dade; font: 400 13.3px/1.45 Barlow, Arial, sans-serif; }
.c17-abr-papier > p { margin: 0; color: #0e161e; }
.c17-abr-papier .c17-abr-papier__fussnote { font-size: 12.5px; color: #5b6b78; }
.c17-abr-texte__knopf { margin: 0; }
@media screen and (max-width: 820px) {
	.c17-abr-texte__intern, .c17-abr-textkasten--druck { grid-template-columns: minmax(0, 1fr); }
	.c17-abr-pos-aktionen { width: auto; text-align: left; }
	.c17-abr-pos-formular { position: static; width: auto; margin-top: 8px; box-shadow: none; }
	.c17-abr-pos-aendern[open] { display: block !important; width: 100%; }
}
.c17-abr-textkasten--druck .c17-label { color: var(--c17-text, #0e161e); }
/* ---------- Rechnung (A8a) ---------- */
.c17-abr-einstellungen { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; max-width: 900px; }
.c17-abr-einstellungen > p { margin: 0; }
.c17-abr-einstellungen > p:nth-last-child(-n+2) { grid-column: 1 / -1; }
.c17-abr-hilfe { font-size: 14px; font-weight: 400; }
.c17-abr-hindernisse { padding: 10px 14px; border-left: 4px solid var(--c17-warnung, #ffd000); background: var(--c17-surface-raised, #fff); font-size: 15px; }
.c17-abr-hindernisse > * { margin: 0; }
.c17-abr-hindernisse ul { margin: 4px 0 0; padding-left: 20px; }
.c17-knopf[disabled] { opacity: 1; background: var(--c17-surface, #e8ebed); color: var(--c17-text-muted, #5b6b78); border-color: var(--c17-surface, #e8ebed); cursor: not-allowed; }
@media screen and (max-width: 820px) { .c17-abr-einstellungen { grid-template-columns: minmax(0, 1fr); } }
/* ---------- Rechnungen und Zahlungen (A8b, Mockup 6) ---------- */
.c17-abr-status--versendet { background: transparent; }
.c17-abr-status--abgeschlossen { background: var(--c17-success, #1e7b47); color: var(--c17-on-success, #fff); border-color: var(--c17-success, #1e7b47); }
.c17-abr-status--rechnung_erstellt { background: var(--c17-surface, #e8ebed); }
.c17-abr-rechnungen { display: flex; flex-direction: column; gap: 18px; }
.c17-abr-rechnungen > * { margin: 0; }
.c17-abr-rechnungen__kopf { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 24px; }
.c17-abr-rechnungen__kopf h2 { margin: 0; }
.c17-abr-kennzahlen { display: flex; flex-wrap: wrap; gap: 12px 32px; margin: 0; }
.c17-abr-kennzahlen dd { margin: 0; font: 800 30px/1 var(--c17-font-condensed, 'Arial Narrow', sans-serif); }
.c17-abr-kennzahlen dd.c17-abr-kennzahlen--ueber { color: var(--c17-danger-text, var(--c17-danger, #b0103a)); }
.c17-abr-filterleiste { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.c17-abr-filterleiste a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border: 1px solid var(--c17-grau-500, #7d8a95); color: var(--c17-text, #0e161e); text-decoration: none; }
.c17-abr-filterleiste a:hover { border-color: var(--c17-text, #0e161e); color: var(--c17-text, #0e161e); }
.c17-abr-filterleiste a[aria-current] { background: var(--c17-text, #0e161e); border-color: var(--c17-text, #0e161e); color: var(--c17-bg, #fff); font-weight: 600; }
.c17-abr-belege td { vertical-align: middle; }
.c17-abr-beleg__haupt { background: var(--c17-surface-raised, #fff); }
.c17-abr-beleg__haupt td { border-top: 2px solid var(--c17-line, #d5dade); }
.c17-abr-beleg__kind td { font-size: 14px; }
.c17-abr-beleg__einzug { padding-left: 26px !important; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-beleg__aktionen { text-align: right; }
.c17-abr-beleg__aktionen > * { margin: 2px 0 2px 6px; }
.c17-abr-beleg__aktionen .c17-knopf, .c17-abr-beleg__aktionen .c17-abr-dialog { display: inline-flex; }
.c17-abr-beleg__aktionen .c17-knopf { min-height: 40px; padding: 0 12px; font-size: 14px; white-space: nowrap; }
.c17-abr-beleg__aktionen .c17-abr-dialog__inhalt { text-align: left; font-size: 15px; }
.c17-abr-stand { display: inline-block; padding: 3px 8px; font-size: 14px; font-weight: 600; white-space: nowrap; border: 1px solid var(--c17-grau-500, #7d8a95); }
.c17-abr-stand--entwurf { background: var(--c17-warnung, #ffd000); color: #0e161e; border-color: var(--c17-warnung, #ffd000); }
.c17-abr-stand--teil { background: var(--c17-info, #003b62); color: var(--c17-on-info, #fff); border-color: var(--c17-info, #003b62); }
.c17-abr-stand--ueber { background: var(--c17-danger, #b0103a); color: var(--c17-on-danger, #fff); border-color: var(--c17-danger, #b0103a); }
.c17-abr-stand--bezahlt { background: var(--c17-success, #1e7b47); color: var(--c17-on-success, #fff); border-color: var(--c17-success, #1e7b47); }
.c17-abr-stand--storno { background: var(--c17-surface, #e8ebed); color: var(--c17-text, #0e161e); border-color: var(--c17-surface, #e8ebed); }
.c17-abr-textknopf { background: none; border: 0; padding: 0 2px; min-height: 32px; color: var(--c17-link, var(--c17-text, #0e161e)); text-decoration: underline; font: inherit; cursor: pointer; }
/* Dialoge in der Liste: fest in der Mitte, damit die Tabelle sie nicht abschneidet. */
.c17-abr-dialog--fest[open] > summary::before { content: ""; position: fixed; inset: 0; z-index: 29; background: rgba(14, 22, 30, .45); cursor: default; }
.c17-abr-dialog--fest .c17-abr-dialog__inhalt { box-sizing: border-box; position: fixed; left: 50%; top: 50%; bottom: auto; transform: translate(-50%, -50%); width: min(560px, calc(100vw - 32px)); max-height: calc(100vh - 32px); overflow-y: auto; }
.c17-abr-dialog__zeile { display: flex; flex-wrap: wrap; gap: 12px; }
.c17-abr-dialog__zeile > .c17-feld { flex: 1 1 180px; margin: 0; }
.c17-abr-dialog__schritte { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
.c17-abr-pruefen__rechnungen { display: flex; flex-direction: column; gap: 10px; }
.c17-abr-pruefen__rechnungen h3 { margin: 0; }
@media screen and (max-width: 820px) {
	.c17-abr-beleg__aktionen { text-align: left; }
	.c17-abr-beleg__aktionen > * { margin: 4px 6px 0 0; }
	.c17-abr-belege .c17-abr-rechts { text-align: left !important; }
	.c17-abr-belege .c17-abr-leer { display: none; }
	.c17-abr-beleg__einzug { padding-left: 0 !important; }
	.c17-abr-beleg__kind { padding-left: 18px !important; border-left: 3px solid var(--c17-line, #d5dade); }
	.c17-abr-dialog--fest .c17-abr-dialog__inhalt { position: fixed; margin: 0; box-shadow: 0 8px 24px rgba(14, 22, 30, .25); }
}
/* ---------- Mahnwesen (A9) ---------- */
.c17-abr-einstellungen__teil, .c17-abr-einstellungen > .c17-abr-einstellungen__breit { grid-column: 1 / -1; }
.c17-abr-einstellungen__teil { margin: 10px 0 0; padding-top: 12px; border-top: 1px solid var(--c17-line, #d5dade); }
.c17-abr-einstellungen textarea { width: 100%; box-sizing: border-box; }
.c17-abr-dialog__werte { margin: 0; display: flex; flex-wrap: wrap; gap: 8px 24px; }
.c17-abr-dialog__werte dt { font: 500 11px var(--c17-font-mono, monospace); letter-spacing: .1em; text-transform: uppercase; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-dialog__werte dd { margin: 0; font-weight: 600; }
.c17-abr-status--ueberfaellig, .c17-abr-status--erinnert, .c17-abr-status--gemahnt1, .c17-abr-status--gemahnt2 { background: var(--c17-danger, #b0103a); color: var(--c17-on-danger, #fff); border-color: var(--c17-danger, #b0103a); }
.c17-abr-status--abgeschrieben { background: var(--c17-surface, #e8ebed); border-color: var(--c17-surface, #e8ebed); }
/* ---------- Störungen und Cronjob (A10) ---------- */
.c17-abr-stoerungen { margin: 0 0 16px; padding: 12px 16px; border-left: 4px solid var(--c17-danger, #b0103a); background: var(--c17-surface-raised, #fff); font-size: 15px; }
.c17-abr-stoerungen > * { margin: 0; }
.c17-abr-stoerungen ul { margin: 6px 0 0; padding-left: 20px; display: flex; flex-direction: column; gap: 6px; }
.c17-abr-stoerungen p + p { margin-top: 6px; }
.c17-abr-stoerungen .c17-abr-inline { display: inline-flex; margin-left: 6px; }
.c17-abr-anleitung { margin: 0; padding-left: 22px; display: flex; flex-direction: column; gap: 4px; }
#c17-abr-cron-url { width: 100%; box-sizing: border-box; font-family: var(--c17-font-mono, monospace); font-size: 13px; }
/* ---------- Sicherung (A11a) ---------- */
.c17-abr-vorschau-backup { display: flex; flex-direction: column; gap: 12px; padding: 14px 16px; border-left: 4px solid var(--c17-brand, #ff5900); background: var(--c17-surface-raised, #fff); }
.c17-abr-vorschau-backup > * { margin: 0; }
.c17-abr-vorschau-backup fieldset { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
#c17-abr-bk-schluessel { width: 100%; box-sizing: border-box; font-family: var(--c17-font-mono, monospace); }
/* A11b: Abholschlüssel (nur einmal sichtbar) */
.c17-abr-schluessel-neu { display: flex; flex-direction: column; gap: 10px; margin: 0 0 12px; padding: 14px 16px; border-left: 4px solid var(--c17-brand, #ff5900); background: var(--c17-surface-raised, #fff); }
.c17-abr-schluessel-neu > * { margin: 0; }
.c17-abr-schluessel-neu .c17-abr-dialog__werte > div { min-width: 0; max-width: 100%; }
.c17-abr-schluessel-neu dd { overflow-wrap: anywhere; white-space: normal; }
/* ---------- Verwaltung (A12): Menü links als Unterreiter (Rechner), Sprungleiste (Handy) ---------- */
.c17-abr-verwaltung { display: flex; flex-direction: column; gap: 22px; }
.c17-abr-vmenue .c17-label { margin: 0 0 8px; }
.c17-abr-vmenue ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.c17-abr-vmenue a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border: 1px solid var(--c17-line, #d5dade); background: var(--c17-surface-raised, #fff); color: var(--c17-text, #0e161e); font-weight: 600; text-decoration: none; box-sizing: border-box; }
.c17-abr-vmenue a:hover { border-color: var(--c17-text, #0e161e); }
.c17-abr-vmenue a:focus-visible { outline: 3px solid var(--c17-brand, #ff5900); outline-offset: 2px; }
.c17-abr-vinhalt { display: flex; flex-direction: column; gap: 28px; min-width: 0; }
.c17-abr-bereich { display: flex; flex-direction: column; gap: 14px; scroll-margin-top: 16px; }
.c17-abr-bereich > * { margin: 0; }
.c17-abr-bereich:focus { outline: none; }
.c17-abr-bereich + .c17-abr-bereich { padding-top: 24px; border-top: 2px solid var(--c17-line, #d5dade); }
.c17-abr-nach-oben { font-size: 15px; }
.c17-abr-knoepfe { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.c17-abr-knoepfe > form { margin: 0; }
.c17-abr a.c17-knopf { box-sizing: border-box; }
@media screen and (min-width: 821px) {
	.c17-abr-verwaltung { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 28px; align-items: start; }
	.c17-abr-vmenue { position: sticky; top: 16px; }
	.c17-abr-vmenue ul { flex-direction: column; flex-wrap: nowrap; gap: 0; }
	.c17-abr-vmenue a { display: flex; width: 100%; min-height: 0; padding: 10px 12px; border: 0; border-bottom: 1px solid var(--c17-line, #d5dade); background: transparent; }
	.c17-abr-vmenue a:hover { background: var(--c17-surface, #e8ebed); }
	.c17-abr-vmenue a[aria-current="true"] { background: var(--c17-text, #0e161e); color: var(--c17-bg, #fff); border-bottom-color: var(--c17-text, #0e161e); }
	.c17-abr-bereich:not(.ist-aktiv) { display: none; }
	.c17-abr-bereich + .c17-abr-bereich { padding-top: 0; border-top: 0; }
	.c17-abr-nach-oben { display: none; }
}
@media screen and (max-width: 820px) {
	/* Kopfleiste des Themes bleibt oben stehen: Sprungziele darunter. */
	.c17-abr-bereich, .c17-abr-vmenue { scroll-margin-top: 88px; }
	.c17-abr-vmenue a[aria-current="true"] { border-color: var(--c17-text, #0e161e); box-shadow: inset 0 -3px 0 var(--c17-brand, #ff5900); }
}
/* Prüfbericht Regelwerk */
.c17-abr-pruefbericht { display: flex; flex-direction: column; gap: 12px; padding: 16px 18px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); border-left: 6px solid var(--c17-success, #1e7b47); }
.c17-abr-pruefbericht > * { margin: 0; }
.c17-abr-pruefbericht--fehler { border-left-color: var(--c17-danger, #c62828); }
.c17-abr-pruefbericht__fehler { padding-left: 20px; }
.c17-abr-pruefbericht__fehler li + li { margin-top: 4px; }
.c17-abr-rw-vergleich .c17-abr-zahl, .c17-abr-rw-vergleich th.c17-abr-zahl { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
/* ---------- Löschlauf und Auskunft (A13) ---------- */
.c17-abr-hinweisliste { margin: 0; padding-left: 20px; font-size: 15px; color: var(--c17-text-muted, #5b6b78); }
.c17-abr-hinweisliste li + li { margin-top: 4px; }
.c17-abr-leer-hinweis { padding: 12px 16px; background: var(--c17-surface-raised, #fff); border: 1px solid var(--c17-line, #d5dade); }
.c17-abr .c17-knopf--gefahr { background: var(--c17-danger, #c62828); color: var(--c17-on-danger, #fff); border-color: var(--c17-danger, #c62828); }
.c17-abr .c17-knopf--gefahr:hover { background: var(--c17-danger-text, #a31f1f); color: var(--c17-on-danger, #fff); }
.c17-abr-loeschliste td:first-child { width: 32px; }
.c17-abr-loeschliste input[type="checkbox"] { width: 22px; height: 22px; margin: 0; }
.c17-abr-auskunft { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--c17-line, #d5dade); }
.c17-abr-auskunft > * { margin: 0 0 8px; }
.c17-abr .c17-abr-loeschform { max-width: none; }
