/* Mobil-first: Basisstile gelten für schmale Viewports, ab 600px wird großzügiger. */

.smb-form {
	max-width: 640px;
	margin: 0 auto;
	font-size: 1rem;
}

/* Sprachauswahl (12.09.2026) — Mehrfachauswahl-Fieldset ganz am Anfang der
   Seite, siehe public/views/antragsformular.php. Bleibt bewusst außerhalb der
   Grid-Regeln der einzelnen Formularschritte, da sie ein direktes Kind von
   .smb-form ist, nicht von .smb-schritt. Nutzt ansonsten die normale
   Fieldset-Optik (Rahmen etc. aus ".smb-form fieldset" unten); hier nur die
   Checkbox-Zeilen als Flex-Reihe statt gestapelt. */
.smb-sprachauswahl {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 1.25rem;
}

.smb-sprachauswahl label {
	margin-bottom: 0;
}

.smb-form label {
	display: block;
	margin-bottom: 0.6rem;
	line-height: 1.3;
}

/* Ohne diese Regel würde ".smb-form label { display: block; }" oben das
   [hidden]-Attribut überstimmen (höhere Selektor-Spezifität) — betrifft das
   per JS ein-/ausgeblendete "Eigenes Einkommen"-Detailfeld bei den Kindern,
   siehe assets/js/smb-form.js. */
.smb-form label[hidden] {
	display: none;
}

.smb-form input[type="text"],
.smb-form input[type="email"],
.smb-form input[type="tel"],
.smb-form input[type="date"],
.smb-form input[type="month"],
.smb-form input[type="number"],
.smb-form select,
.smb-form textarea {
	display: block;
	width: 100%;
	padding: 0.4rem 0.5rem;
	font-size: 1rem;
	margin-top: 0.15rem;
	box-sizing: border-box;
}

/* E-Mail/Telefon in einer Zeile (12.09.2026, Nutzer-Vorgabe) — bewusst schon
   auf schmalen Viewports als Flex-Reihe (nicht erst ab 600px), da beide
   Felder auch nebeneinander noch gut bedienbar sind. */
.smb-feld-zeile {
	display: flex;
	gap: 0 1rem;
}

.smb-feld-zeile > label {
	flex: 1;
	min-width: 0;
}

.smb-form textarea {
	min-height: 4.5rem;
}

.smb-form fieldset {
	border: 1px solid #ccc;
	margin-bottom: 0.6rem;
	padding: 0.5rem 0.75rem;
}

.smb-form fieldset label {
	margin-bottom: 0.25rem;
}

/* Pflicht-Checkboxen (12.09.2026, Nutzer-Vorgabe): solange nicht angekreuzt,
   auffällig rot formatieren (dieselbe Farbe wie ".smb-negativ" weiter unten
   in dieser Datei), damit auf einen Blick klar ist, dass die Zustimmung noch
   fehlt. ":has()" wird an dieser Stelle im Projekt bereits verwendet (siehe
   "label:has(textarea)" weiter unten), Browserunterstützung ist also bereits
   vorausgesetzt. */
.smb-form .smb-checkbox-pflicht:has(input:not(:checked)) {
	color: #c62828;
}

.smb-form h2 {
	margin-top: 0;
	margin-bottom: 0.75rem;
}

.smb-form h3 {
	margin-bottom: 0.5rem;
}

/* Formularschritt als eigene "Seite"/Karte (14.09.2026, Nutzer-Vorgabe:
   "die Funktion mit den Einzelseiten auf dem Smartphone ist auch sinnvoll für
   die Desktop Anwendung", präzisiert auf den Antragsbereich). Vorher wurden
   die Felder eines Schritts ab 600px Breite zweispaltig nebeneinander
   angeordnet (kompakter, aber weniger wie eine eigene Seite) — ausdrücklicher
   Nutzer-Wunsch war stattdessen die vom Handy her vertraute Optik (ein
   Formularschritt wirkt wie eine eigene, in sich abgeschlossene Seite)
   einheitlich auch auf dem Desktop zu übernehmen:
   1. Keine zweispaltige Grid-Aufteilung mehr — einspaltig auf allen
      Breiten, wie zuvor nur unterhalb von 600px. Die zahlreichen
      ".smb-schritt ... { grid-column: 1 / -1 }"-Ausnahmen von vorher sind
      dadurch hinfällig und wurden entfernt.
   2. Zusätzlich (Nutzer-Vorgabe, zweiter Teil der Entscheidung) wirkt jeder
      Schritt jetzt auch optisch als eigene Karte mit Rahmen/Schatten/
      Innenabstand — bewusst auf allen Breiten einheitlich, nicht nur auf dem
      Desktop, für ein durchgängiges Erscheinungsbild. */
.smb-schritt {
	background: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
	padding: 1.25rem;
	margin-bottom: 1.5rem;
}

@media (min-width: 600px) {
	.smb-schritt {
		padding: 1.75rem 2rem;
	}
}

.smb-form button {
	min-height: 44px; /* großzügige Bedienelemente für Touch */
	padding: 0.5rem 1.25rem;
	font-size: 1rem;
	margin-right: 0.5rem;
}

.smb-form-navigation {
	display: flex;
	justify-content: space-between;
	margin-top: 1.5rem;
}

.smb-upload-feld {
	border: 1px dashed #999;
	padding: 0.75rem;
}

.smb-hinweis {
	background: #f5f5f5;
	padding: 0.75rem;
	border-left: 4px solid #888;
}

/* Minderjährige Antragstellende (12.09.2026, Nutzer-Vorgabe): auffälligere,
   rote Variante des allgemeinen Hinweiskastens statt der neutralen
   Grau-Optik von ".smb-hinweis" oben — siehe
   admin/views/board-antrag-detail.php. */
.smb-hinweis-minderjaehrig {
	background: #fff5f5;
	border-left-color: #c62828;
	color: #c62828;
	font-weight: bold;
}

.smb-kind-eintrag {
	border: 1px solid #ddd;
	padding: 0.75rem;
	margin-bottom: 0.75rem;
}

/* Board / Prüfoberfläche */

/* Block-/Karten-Layout (14.09.2026, Nutzer-Vorgabe: "die Administrationsseite
   etwas übersichtlicher und in Blöcken gestalten") — vorher standen alle
   Abschnitte einer Einzelfallansicht (Formularangaben, Dokumente, KI-Votum,
   Unterlagen/Rückfrage, Plausibilitätsprüfung, Abstimmung, Entscheidung)
   sowie die Fallübersicht-Tabelle einfach im freien Fluss, nur durch
   Überschriften getrennt. ".smb-block" fasst jeden Abschnitt jetzt als eigene,
   klar abgegrenzte Karte, siehe admin/views/board-list.php und
   admin/views/board-antrag-detail.php. Dieselbe Optik wie ".smb-schritt" im
   öffentlichen Antragsformular oben, bewusst konsistent gehalten. */
.smb-block {
	background: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
	padding: 1.25rem 1.5rem;
	margin-bottom: 1.5rem;
}

.smb-block > h3:first-child {
	margin-top: 0;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid #eee;
}

/* Kopfzeile der Einzelfallansicht: "Antrag #X" + Status-Badge nebeneinander
   statt nur als reiner Überschriftentext (vorher stand der Status als
   Klartext direkt hinter der Überschrift). */
.smb-block-kopf {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 1rem;
	margin-bottom: 1.5rem;
}

.smb-block-kopf h2 {
	margin: 0;
}

/* Status-Badges (14.09.2026): einheitliche, farbcodierte Kennzeichnung des
   internen Bearbeitungsstatus in Übersicht UND Einzelfallansicht — siehe
   SMB_Workflow::interne_status_bezeichnung()/status_badge_klasse(). Bewusst
   eigene, genauere Texte/Farben für Mitarbeiter/Vorstand, getrennt von der
   für Antragstellende vergröberten SMB_Workflow::status_label(). */
.smb-status-badge {
	display: inline-block;
	padding: 0.2rem 0.75rem;
	border-radius: 999px;
	font-size: 0.85rem;
	font-weight: bold;
	white-space: nowrap;
}

.smb-status-neutral {
	background: #e8eaf0;
	color: #37474f;
}

.smb-status-in-arbeit {
	background: #fff3cd;
	color: #8a6100;
}

.smb-status-warnung {
	background: #fde0e0;
	color: #a12a2a;
}

.smb-status-erledigt {
	background: #e0f2e9;
	color: #1b6b45;
}

/* "Abgelehnt" (14.09.2026, Status-Filter, Version 0.9.16): bewusst eine
   eigene, deutlichere Rot-Variante statt der helleren ".smb-status-warnung"
   (Rückfrage) — beides ist "negativ" im weiteren Sinne, aber unterschiedlich
   dringlich (eine Rückfrage erwartet noch eine Handlung, eine Ablehnung ist
   endgültig), siehe SMB_Workflow::anzeige_mit_ausgang(). */
.smb-status-abgelehnt {
	background: #f5c2c7;
	color: #7a1f1f;
}

.smb-antraege-tabelle tbody tr:hover {
	background: #fafafa;
}

/* Status-Filter der Fallübersicht (14.09.2026, Nutzer-Vorgabe: "nach
   Statusanzeige ... auswählen bzw. filtern"), admin/views/board-list.php —
   einfache Filter-Pillen als normale Links (Seiten-Reload über
   "?smb_filter=..."), bewusst NICHT dieselben Farben wie die Status-Badges
   oben: die Badges zeigen den Status EINER Zeile, die Filter-Pillen steuern,
   WELCHE Zeilen überhaupt angezeigt werden — zwei unterschiedliche Zwecke,
   getrennt gehalten, um Verwechslung zu vermeiden. */
.smb-status-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 1.25rem;
}

.smb-status-filter-link {
	display: inline-block;
	padding: 0.35rem 1rem;
	border: 1px solid #ccc;
	border-radius: 999px;
	font-size: 0.9rem;
	text-decoration: none;
	color: #444;
	background: #fff;
}

.smb-status-filter-link:hover {
	background: #f0f0f0;
}

.smb-status-filter-aktiv,
.smb-status-filter-aktiv:hover {
	background: #333;
	border-color: #333;
	color: #fff;
	font-weight: bold;
}

.smb-antraege-tabelle,
.smb-felder-tabelle,
.smb-stimmen-tabelle,
.smb-kinder-tabelle {
	width: 100%;
	border-collapse: collapse;
}

/* Tabellen-Overflow (14.09.2026, Nutzer-Fehlerbericht mit Screenshots, Version
   0.9.15): Tabellen mit mehreren Spalten und längeren, nicht umbrechbaren
   Wörtern in Überschrift/Inhalt (allen voran die 7-spaltige Kinder-Tabelle,
   aber ebenso möglich bei den Felder-/Stimmen-Tabellen) können trotz
   "width:100%" auf der Tabelle selbst breiter werden als ihr Container — die
   CSS-Tabellenlayout-Regeln erzwingen dafür pro Spalte mindestens die Breite
   ihres längsten nicht umbrechbaren Worts. Sichtbares Symptom laut
   Nutzer-Screenshot: Die Tabelle "verlässt" die abgerundete ".smb-block"-Karte
   nach rechts und überlappt optisch mit dem nachfolgenden Block — sowohl am
   Desktop als auch am Handy. Fix: alle mehrspaltigen Tabellen in der
   Prüfoberfläche stecken jetzt in einem eigenen, horizontal scrollbaren
   Wrapper (".smb-tabelle-scroll", siehe admin/views/board-list.php und
   admin/views/board-antrag-detail.php) statt unkontrolliert aus ihrer Karte
   herauszulaufen — bei ausreichend Platz unsichtbar (Tabelle bleibt genauso
   breit wie vorher), bei zu wenig Platz mit eigenem Scrollbalken innerhalb
   der Karte statt eines optischen Overflows darüber hinaus. */
.smb-tabelle-scroll {
	overflow-x: auto;
	max-width: 100%;
	-webkit-overflow-scrolling: touch;
}

.smb-tabelle-scroll > table {
	width: auto;
	min-width: 100%;
}

.smb-antraege-tabelle th,
.smb-antraege-tabelle td,
.smb-felder-tabelle th,
.smb-felder-tabelle td,
.smb-stimmen-tabelle th,
.smb-stimmen-tabelle td,
.smb-kinder-tabelle th,
.smb-kinder-tabelle td {
	border-bottom: 1px solid #ddd;
	padding: 0.5rem;
	text-align: left;
}

/* Zweispaltige Felder-Tabellen (Beschriftung | Wert) — geändert 24.09.2026,
   Nutzer-Rückmeldung "Hier ist die Formatierung unglücklich", Version 0.9.23:
   Vorher "white-space: nowrap" auf der Beschriftung plus "width: auto" aus
   ".smb-tabelle-scroll > table" — lange Beschriftungen wie "Beschreibung der
   Lebenssituation" zogen die linke Spalte breit, der Wert landete in einer
   schmalen rechten Spalte und lief rechts aus der Karte. Jetzt feste
   Aufteilung (Beschriftung max. 38 %, Rest für den Wert) über die volle
   Breite; Beschriftungen und lange Werte (z. B. E-Mail-Adressen) dürfen
   umbrechen. */
.smb-tabelle-scroll > .smb-felder-tabelle,
.smb-felder-tabelle {
	width: 100%;
	table-layout: fixed;
}

.smb-felder-tabelle th {
	width: 38%;
	vertical-align: top;
	overflow-wrap: break-word;
	hyphens: auto;
}

.smb-felder-tabelle td {
	vertical-align: top;
	overflow-wrap: anywhere;
}

/* Lange Freitexte (z. B. Lebenssituation): Beschriftung oben, Text darunter
   über die volle Breite, Zeilenumbrüche der Eingabe bleiben erhalten — siehe
   SMB_Antrag::langtext_feldnamen() und admin/views/board-antrag-detail.php. */
.smb-langtext-zeile td {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}

.smb-langtext-label {
	display: block;
	font-weight: bold;
	margin-bottom: 0.4rem;
}

.smb-langtext-wert {
	white-space: pre-line;
	line-height: 1.55;
}

/* Fallübersicht: kurze Spalten (Betrag, Datum, "Öffnen") nicht umbrechen
   lassen (24.09.2026, Nutzer-Rückmeldung "Die Öffnen Spalte ist zu klein",
   Version 0.9.23, siehe admin/views/board-list.php). */
.smb-antraege-tabelle .smb-spalte-kompakt {
	white-space: nowrap;
}

.smb-board .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.smb-kinder-tabelle {
	margin-bottom: 1rem;
}

.smb-positiv {
	color: #2e7d32;
}

.smb-negativ {
	color: #c62828;
	font-weight: bold;
}

.smb-felder-tabelle tr.smb-positiv th,
.smb-felder-tabelle tr.smb-positiv td,
.smb-felder-tabelle tr.smb-negativ th,
.smb-felder-tabelle tr.smb-negativ td {
	font-weight: bold;
}

.smb-summe-zeile {
	font-weight: bold;
	border-top: 1px solid #ccc;
	padding-top: 0.5rem;
	margin-top: 0.25rem;
}

.smb-summe-ergebnis.smb-positiv #smb-summe-ergebnis,
.smb-summe-ergebnis.smb-positiv #smb-summe-ergebnis-label {
	color: #2e7d32;
}

.smb-summe-ergebnis.smb-negativ #smb-summe-ergebnis,
.smb-summe-ergebnis.smb-negativ #smb-summe-ergebnis-label {
	color: #c62828;
}

.smb-euro-feld {
	text-align: right;
}

.smb-feldgruppe {
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 1rem 1.25rem;
	margin-bottom: 1.25rem;
	background: #fafafa;
}

.smb-feldgruppe h4 {
	margin-top: 0;
	margin-bottom: 0.75rem;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid #ccc;
}

.smb-feldgruppe h5 {
	margin-top: 1.25rem;
	margin-bottom: 0.5rem;
}

.smb-feldgruppe .smb-felder-tabelle,
.smb-feldgruppe .smb-kinder-tabelle {
	background: #fff;
}

.smb-ki-votum-entwurf {
	background: #fff8e1;
	border-left: 4px solid #f0ad4e;
	padding: 1rem;
}

/* Aufbereiteter KI-Votumsentwurf (24.09.2026, Nutzer-Rückmeldung "Die KI
   Prüfung ist dann nicht gut formatiert", Version 0.9.23) — siehe
   SMB_KI::zerlege_antwort() und admin/views/board-antrag-detail.php. */
.smb-ki-votum-entwurf h4 {
	margin: 1.25rem 0 0.5rem;
}

.smb-ki-votum-entwurf .smb-felder-tabelle {
	background: #fff;
}

.smb-ki-votum-entwurf p,
.smb-ki-votum-entwurf li {
	line-height: 1.55;
}

.smb-ki-liste {
	margin: 0;
	padding-left: 1.1rem;
}

.smb-ki-abweichungen,
.smb-ki-empfehlung {
	background: #fff;
	border: 1px solid #e6c9a0;
	border-radius: 4px;
	padding: 0.25rem 1rem 0.5rem;
	margin-top: 1rem;
}

.smb-ki-abweichungen {
	border-color: #ddd;
}

/* Einzelne Abweichung als kleine Karte mit farbigem Rand links je Einstufung
   (Version 0.9.24, siehe SMB_KI::abweichungen_aufbereiten()). */
.smb-ki-abw {
	border-left: 4px solid #b0bec5;
	background: #fafafa;
	border-radius: 3px;
	padding: 0.5rem 0.75rem;
	margin: 0 0 0.6rem;
}

.smb-ki-abw-abweichung {
	border-left-color: #c62828;
}

.smb-ki-abw-klaerung {
	border-left-color: #f0ad4e;
}

.smb-ki-abw-kopf {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.6rem;
}

.smb-ki-abw-kopf .smb-status-badge {
	font-size: 0.75rem;
	padding: 0.1rem 0.55rem;
}

.smb-ki-abw-werte {
	margin-top: 0.3rem;
	font-size: 0.95rem;
}

.smb-ki-abw-text {
	margin-top: 0.3rem;
	color: #444;
	line-height: 1.5;
}

.smb-ki-uebereinstimmend {
	color: #1b6b45;
	font-size: 0.95rem;
	margin: 0.75rem 0 0.25rem;
}

.smb-ki-empfehlung h4 {
	color: #8a6100;
}

.smb-ki-abschnitt {
	margin-top: 1rem;
}

.smb-ki-tabelle {
	border-collapse: collapse;
	margin: 0.5rem 0;
	background: #fff;
}

.smb-ki-tabelle th,
.smb-ki-tabelle td {
	border: 1px solid #ddd;
	padding: 0.35rem 0.6rem;
	text-align: left;
	vertical-align: top;
}

.smb-ki-rohantwort {
	margin-top: 1.25rem;
}

.smb-ki-rohantwort summary {
	cursor: pointer;
	color: #555;
}

.smb-ki-rohantwort pre {
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	background: #fff;
	border: 1px solid #ddd;
	padding: 0.75rem;
	font-size: 0.85rem;
}

.smb-ki-meta {
	margin: 1rem 0 0;
	font-size: 0.85rem;
	color: #666;
}

.smb-bereich {
	padding: 1rem 0;
}

.smb-bereich fieldset {
	border: 1px solid #ddd;
	border-radius: 4px;
	margin-bottom: 1rem;
	padding: 0.75rem 1rem;
}

.smb-bereich legend {
	font-weight: bold;
	padding: 0 0.4rem;
}

/* Sprachauswahl im eigenen Bereich der Antragstellenden als Checkbox-Reihe
   (Version 0.9.23, siehe renderSprachen() in assets/js/smb-antragsteller.js) —
   dieselbe Optik wie ".smb-sprachauswahl" im Antragsformular. */
.smb-bereich-sprachen {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem 1.25rem;
	margin-bottom: 0.6rem;
}

.smb-bereich-sprachen-label {
	flex-basis: 100%;
}

.smb-bereich-sprachen .smb-bereich-checkbox {
	margin-bottom: 0;
}

.smb-board .smb-unterlagen-form,
.smb-board .smb-plausibilitaet-form,
.smb-board .smb-freigabe-form {
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 0.75rem 1rem;
	margin-bottom: 1rem;
	background: #fafafa;
}

.smb-board .smb-plausibilitaet-form label {
	display: block;
	font-weight: normal;
	margin-bottom: 0.3rem;
}

/* Mehrfachauswahl "Unterlagen einfordern" (12.09.2026, Nutzer-Vorgabe,
   Version 0.9.2): dieselbe Gruppierung wie im öffentlichen Antragsformular
   (siehe SMB_Upload::dokumenttyp_gruppen()), hier als Checkbox-Gruppen mit
   eigenem Rahmen statt Datei-Upload-Feldern. */
.smb-unterlagen-form fieldset {
	border: 1px solid #ddd;
	border-radius: 4px;
	margin-bottom: 0.75rem;
	padding: 0.5rem 0.75rem;
}

.smb-unterlagen-form legend {
	font-weight: bold;
	padding: 0 0.4rem;
}

.smb-unterlagen-form fieldset label {
	display: block;
	font-weight: normal;
	margin-bottom: 0.3rem;
}

.smb-unterlagen-form textarea {
	display: block;
	width: 100%;
	min-height: 4rem;
	padding: 0.4rem 0.5rem;
	font-size: 1rem;
	margin-top: 0.15rem;
	margin-bottom: 0.75rem;
	box-sizing: border-box;
}

.smb-board .smb-rueckfrage-abschliessen-form {
	margin-bottom: 1rem;
}

.smb-board-nutzer {
	text-align: right;
	font-size: 0.9rem;
	color: #555;
}

.smb-board-login #loginform label {
	display: block;
	font-weight: bold;
	margin-top: 0.75rem;
}

.smb-board-login #loginform .input {
	display: block;
	width: 100%;
	max-width: 320px;
	padding: 0.4rem 0.5rem;
	font-size: 1rem;
	margin-top: 0.15rem;
	box-sizing: border-box;
}

.smb-board-login #loginform .login-remember {
	margin-top: 0.75rem;
	font-weight: normal;
}

.smb-board-login #loginform .login-remember label {
	display: inline;
	font-weight: normal;
}

.smb-board-login #loginform .login-submit {
	margin-top: 1rem;
}

.smb-board-login #loginform .button {
	min-height: 44px;
	padding: 0.5rem 1.25rem;
	font-size: 1rem;
}

@media (min-width: 600px) {
	.smb-form {
		font-size: 1.05rem;
	}
}

/* --- Navigation in der Einzelfallansicht (24.09.2026, Nutzer-Vorschlag,
   Version 0.9.24) — Sprungmarken zu allen Abschnitten, bleibt beim Scrollen
   oben stehen (unterhalb der WordPress-Adminleiste, falls diese angezeigt
   wird), am Handy horizontal wischbar. Der sichtbare Abschnitt wird per JS
   hervorgehoben (".smb-aktiv", assets/js/smb-board.js). */
.smb-detail-nav {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 20;
	background: rgba(250, 250, 250, 0.96);
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	padding: 0.4rem;
	margin-bottom: 1.5rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.smb-detail-nav ul {
	display: flex;
	gap: 0.35rem;
	list-style: none;
	margin: 0;
	padding: 0;
	white-space: nowrap;
}

.smb-detail-nav li {
	margin: 0;
}

.smb-detail-nav-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.8rem;
	border-radius: 999px;
	font-size: 0.9rem;
	text-decoration: none;
	color: #333;
	background: #fff;
	border: 1px solid #ddd;
}

.smb-detail-nav-link:hover,
.smb-detail-nav-link:focus {
	background: #f0f0f0;
}

.smb-detail-nav-link.smb-aktiv {
	background: #333;
	border-color: #333;
	color: #fff;
}

.smb-detail-nav-stand {
	font-size: 0.75rem;
	font-weight: bold;
	padding: 0 0.4rem;
	border-radius: 999px;
	background: #e8eaf0;
	color: #37474f;
}

.smb-nav-ok .smb-detail-nav-stand {
	background: #e0f2e9;
	color: #1b6b45;
}

.smb-nav-warnung .smb-detail-nav-stand {
	background: #fde0e0;
	color: #a12a2a;
}

.smb-detail-nav-link.smb-aktiv .smb-detail-nav-stand {
	background: rgba(255, 255, 255, 0.2);
	color: #fff;
}

/* Sprungziele nicht unter der stehenbleibenden Leiste verstecken. */
.smb-board-detail .smb-block,
.smb-board-detail .smb-feldgruppe {
	scroll-margin-top: calc(var(--wp-admin--admin-bar--height, 0px) + 4.5rem);
}

@media (prefers-reduced-motion: no-preference) {
	.smb-board-detail {
		scroll-behavior: smooth;
	}
}

/* --- Verlauf der Rückfragen (Version 0.9.24, siehe
   SMB_Antrag::rueckfrage_runden()). */
.smb-rueckfrage-verlauf {
	margin-bottom: 1.25rem;
}

.smb-rueckfrage-runde {
	border: 1px solid #ddd;
	border-left: 4px solid #1b6b45;
	border-radius: 4px;
	padding: 0.75rem 1rem;
	margin-bottom: 0.75rem;
	background: #fff;
}

.smb-rueckfrage-offen {
	border-left-color: #c62828;
	background: #fffafa;
}

.smb-rueckfrage-kopf {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.6rem;
	margin-bottom: 0.5rem;
}

.smb-rueckfrage-teil {
	margin-top: 0.6rem;
}

.smb-rueckfrage-teil ul {
	margin: 0.25rem 0 0.25rem 1.1rem;
	padding: 0;
}

.smb-rueckfrage-label {
	display: block;
	font-size: 0.8rem;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #666;
}

.smb-rueckfrage-unterlabel {
	margin-top: 0.35rem;
	font-weight: bold;
	font-size: 0.95rem;
}

.smb-rueckfrage-text {
	white-space: pre-line;
	line-height: 1.5;
}

.smb-rueckfrage-leer {
	color: #777;
	font-style: italic;
}

.smb-rueckfrage-zeit {
	font-size: 0.8rem;
	color: #777;
	margin-left: 0.35rem;
}

div.smb-rueckfrage-zeit {
	margin: 0.6rem 0 0;
}

/* --- Eigener Bereich: Rückfragen der Stiftung und eigene Unterlagen
   (24.09.2026, Nutzer-Vorgabe, Version 0.9.25, siehe renderRueckfragen()/
   renderUnterlagen() in assets/js/smb-antragsteller.js). */
.smb-bereich-rueckfrage {
	border: 1px solid #ddd;
	border-left: 4px solid #1b6b45;
	border-radius: 4px;
	padding: 0.75rem 1rem;
	margin-bottom: 1rem;
	background: #fff;
}

.smb-bereich-rueckfrage-offen {
	border-left-color: #c62828;
	background: #fffafa;
}

.smb-bereich-rueckfrage-kopf {
	margin: 0 0 0.4rem;
}

.smb-bereich-rueckfrage-stand {
	display: inline-block;
	margin-left: 0.4rem;
	padding: 0 0.55rem;
	border-radius: 999px;
	font-size: 0.8rem;
	font-weight: bold;
	background: #e0f2e9;
	color: #1b6b45;
}

.smb-bereich-rueckfrage-offen .smb-bereich-rueckfrage-stand {
	background: #fde0e0;
	color: #a12a2a;
}

.smb-bereich-rueckfrage-text,
.smb-bereich-antwort p,
.smb-rueckfrage-nachricht {
	white-space: pre-line;
	line-height: 1.5;
}

.smb-bereich-antwort,
.smb-rueckfrage-nachricht {
	background: #f5f7fa;
	border-radius: 4px;
	padding: 0.5rem 0.75rem;
	margin: 0.4rem 0;
}

.smb-bereich-antwort p {
	margin: 0.2rem 0 0;
}

.smb-bereich-antwort-kopf {
	font-size: 0.85rem;
	font-weight: bold;
	color: #555;
}

.smb-bereich-antwort-form {
	margin-top: 0.75rem;
}

.smb-bereich-unterlagen-liste {
	margin: 0 0 1rem 1.1rem;
	padding: 0;
}

.smb-bereich-datum {
	color: #777;
	font-size: 0.9rem;
}

/* --- Fortschrittsanzeige der KI-Auswertung (Version 0.9.34) ---------------- */
.smb-ki-fortschritt {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin-top: 0.75rem;
	padding: 0.75rem 1rem;
	border: 1px solid #cfe3d8;
	border-left: 4px solid #1b6b45;
	border-radius: 4px;
	background: #f3f9f5;
	max-width: 40rem;
}

.smb-ki-fortschritt[hidden],
.smb-ki-fehler[hidden] {
	display: none;
}

.smb-ki-fortschritt-text {
	flex: 1;
	min-width: 0;
}

.smb-ki-schritt {
	display: block;
	margin-bottom: 0.4rem;
}

.smb-ki-balken {
	height: 6px;
	border-radius: 3px;
	background: #dcebe2;
	overflow: hidden;
}

.smb-ki-balken span {
	display: block;
	height: 100%;
	width: 0;
	background: #1b6b45;
	border-radius: 3px;
	transition: width 1s linear;
}

.smb-ki-zeit {
	display: block;
	margin-top: 0.35rem;
	color: #555;
	font-variant-numeric: tabular-nums;
}

.smb-ki-spinner {
	flex: none;
	width: 1.25rem;
	height: 1.25rem;
	margin-top: 0.1rem;
	border: 3px solid #cfe3d8;
	border-top-color: #1b6b45;
	border-radius: 50%;
}

@media (prefers-reduced-motion: no-preference) {
	.smb-ki-spinner {
		animation: smb-ki-drehen 0.9s linear infinite;
	}
}

@media (prefers-reduced-motion: reduce) {
	.smb-ki-balken span {
		transition: none;
	}
}

@keyframes smb-ki-drehen {
	to {
		transform: rotate(360deg);
	}
}

.smb-ki-fehler {
	margin-top: 0.75rem;
	padding: 0.75rem 1rem;
	border: 1px solid #f3c2c2;
	border-left: 4px solid #c62828;
	border-radius: 4px;
	background: #fde0e0;
	color: #a12a2a;
	max-width: 40rem;
}

/* --- Zweizeilige Fallübersicht mit Zebra-Streifen (Version 0.9.35) --------- */
.smb-antraege-zweizeilig td {
	vertical-align: top;
	padding-top: 0.6rem;
	padding-bottom: 0.6rem;
}

.smb-antraege-zweizeilig tbody tr:nth-child(odd) {
	background: #f3f4f5;
}

.smb-antraege-zweizeilig tbody tr:nth-child(even) {
	background: #fff;
}

.smb-antraege-zweizeilig tbody tr:hover {
	background: #e6efe9;
}

.smb-antraege-zweizeilig .smb-zeile-haupt,
.smb-antraege-zweizeilig .smb-zeile-neben {
	display: block;
}

.smb-antraege-zweizeilig .smb-zeile-haupt {
	font-weight: 600;
}

.smb-antraege-zweizeilig .smb-zeile-neben {
	margin-top: 0.15rem;
	font-size: 0.875em;
	color: #595959;
}

.smb-antraege-zweizeilig .smb-antrag-id {
	color: #595959;
}

/* --- Ausschlussgründe (Version 0.9.36) ------------------------------------ */
.smb-ausschluss-hinweis {
	margin: 0 0 1rem;
	padding: 0.75rem 1rem;
	border: 1px solid #f3c2c2;
	border-left: 5px solid #c62828;
	border-radius: 4px;
	background: #fde0e0;
	color: #7f1d1d;
}

.smb-ausschluss-hinweis h4 {
	margin: 0 0 0.5rem;
	color: #a12a2a;
}

.smb-ausschluss-hinweis ul {
	margin: 0 0 0.5rem 1.2rem;
}

.smb-ausschluss-hinweis li + li {
	margin-top: 0.5rem;
}

.smb-ausschluss-fundstelle,
.smb-ausschluss-klein {
	font-size: 0.875em;
}

.smb-ausschluss-klein {
	margin: 0;
}

.smb-plausibilitaet-form .smb-kriterium-ausschluss {
	display: inline-block;
	color: #a12a2a;
	background: #fde0e0;
	border-radius: 4px;
	padding: 0.25rem 0.5rem;
}

.smb-antraege-zweizeilig .smb-zeile-ausschluss {
	display: inline-block;
	margin-top: 0.3rem;
	padding: 0.1rem 0.5rem;
	border-radius: 3px;
	background: #c62828;
	color: #fff;
	font-size: 0.8em;
	font-weight: 600;
}

/* --- Entscheidung und Mitteilung (Version 0.9.37) ------------------------- */
.smb-entscheidung-form fieldset {
	border: 0;
	padding: 0;
	margin: 0 0 1rem;
}

.smb-entscheidung-form .smb-mitteilung-editor {
	display: block;
	width: 100%;
	max-width: 44rem;
	margin: 0.4rem 0 0.25rem;
	font-family: inherit;
	line-height: 1.5;
}

.smb-entscheidung-form .smb-bestaetigung {
	display: block;
	margin: 0.75rem 0;
	font-weight: 600;
}

.smb-mitteilung-text {
	white-space: pre-wrap;
	max-width: 44rem;
	padding: 0.75rem 1rem;
	border: 1px solid #ddd;
	border-left: 4px solid #1b6b45;
	border-radius: 4px;
	background: #fafafa;
}

.smb-plausibilitaet-form .smb-button-ablehnung {
	background: #c62828;
	border-color: #a12a2a;
	color: #fff;
}

.smb-bereich-mitteilung {
	margin: 1rem 0 1.5rem;
}

/* --- Spamschutz: Honeypot für Menschen unsichtbar (Version 0.9.38) -------- */
.smb-hp {
	position: absolute !important;
	left: -10000px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* --- Prüfhinweise in Übersicht und Einzelfall (Version 0.9.38) ------------ */
.smb-pruef-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
	margin-top: 0.35rem;
}

.smb-pruef-tag {
	display: inline-block;
	padding: 0.1rem 0.5rem;
	border-radius: 3px;
	font-size: 0.8em;
	font-weight: 600;
	line-height: 1.5;
}

.smb-pruef-rot {
	background: #c62828;
	color: #fff;
}

.smb-pruef-orange {
	background: #ffe0b2;
	color: #7a3e00;
	border: 1px solid #f0a54a;
}

.smb-pruef-gelb {
	background: #fff8d6;
	color: #5c4a00;
	border: 1px solid #e6cf6b;
}

.smb-pruefhinweise {
	margin: 0 0 1rem;
	padding: 0.75rem 1rem;
	border: 1px solid #e6cf6b;
	border-left: 5px solid #f0a54a;
	border-radius: 4px;
	background: #fffcf0;
}

.smb-pruefhinweise h4 {
	margin: 0 0 0.5rem;
}

.smb-pruefhinweise ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.smb-pruefhinweise li {
	margin: 0.35rem 0;
}

.smb-pruefhinweise li .smb-pruef-tag {
	margin-right: 0.4rem;
}

.smb-weitere-antraege {
	margin-top: 0.75rem;
	font-size: 0.95em;
}

/* --- Info-Tag, Partner & Kofinanzierung (Version 0.9.39) ----------------- */
.smb-pruef-info {
	background: #e3f0fb;
	color: #0b4a7a;
	border: 1px solid #9cc6ea;
}

.smb-partner-tabelle td,
.smb-partner-tabelle th {
	vertical-align: top;
}

.smb-partner-tabelle select,
.smb-partner-tabelle input[type="number"] {
	max-width: 9rem;
}

.smb-partner-summe {
	margin: 0.5rem 0 1rem;
	font-weight: 600;
}

.smb-partner-einwilligung {
	margin: 0 0 1rem;
	padding: 0.6rem 0.9rem;
	border-radius: 4px;
	background: #f5f5f5;
	border-left: 4px solid #999;
}

.smb-partner-einwilligung.smb-einwilligung-erteilt {
	border-left-color: #1b6b45;
	background: #eef7f1;
}

.smb-partner-anfrage textarea {
	display: block;
	width: 100%;
	max-width: 44rem;
	font-family: inherit;
}

.smb-bereich-einwilligung {
	margin: 1rem 0 1.5rem;
	padding: 0.75rem 1rem;
	border: 1px solid #9cc6ea;
	border-left: 4px solid #0b4a7a;
	border-radius: 4px;
	background: #f3f8fd;
}

/* --- Warteliste und vorzeitiges Löschen (Version 0.9.43) ----------------- */
.smb-antrag-loeschen .smb-button-ablehnung {
	background: #c62828;
	border-color: #a12a2a;
	color: #fff;
}

.smb-antrag-loeschen summary {
	cursor: pointer;
	color: #a12a2a;
}

.smb-warteliste-hinweis {
	border-left-color: #c26a00;
}

/* --- Positionen des Förderbedarfs (Version 0.9.44) ------------------------ */
.smb-positionen .smb-position {
	display: grid;
	grid-template-columns: minmax(10rem, 1.2fr) minmax(10rem, 2fr) minmax(6rem, 0.8fr) auto;
	gap: 0.5rem;
	align-items: end;
	margin-bottom: 0.5rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px dashed #ddd;
}

@media (max-width: 640px) {
	.smb-positionen .smb-position {
		grid-template-columns: 1fr;
	}
}

.smb-positionen-summe {
	margin-top: 0.5rem;
}

.smb-positionen-tabelle select {
	max-width: 16rem;
}

.smb-bereich-positionen ul {
	margin: 0.25rem 0 0.75rem 1.2rem;
}

/* Zwischenspeicherung dezent (Version 0.9.52). */
.smb-entwurf-zeile {
	font-size: 0.8rem;
	color: #666;
	margin: 0.4rem 0 0;
}

.smb-entwurf-frage {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.75rem;
	font-size: 0.9rem;
	padding: 0.4rem 0.75rem;
	margin-bottom: 0.75rem;
	background: #f3f7fb;
	border-left: 3px solid #1565c0;
	border-radius: 3px;
}

.smb-form .smb-klein-knopf,
.smb-klein-knopf {
	font-size: 0.85rem;
	padding: 0.2rem 0.7rem;
	min-height: 0;
	line-height: 1.4;
	width: auto;
}

.smb-form .smb-link-knopf,
.smb-link-knopf {
	background: none;
	border: none;
	padding: 0;
	margin: 0;
	min-height: 0;
	width: auto;
	font: inherit;
	color: #1565c0;
	text-decoration: underline;
	cursor: pointer;
	box-shadow: none;
}

/* Nur lesbare Angaben im eigenen Bereich als normaler Text (Version 0.9.44). */
.smb-bereich-lesen {
	margin-bottom: 0.6rem;
	line-height: 1.3;
}

.smb-bereich-lesen-label {
	display: block;
	font-size: 0.9rem;
	color: #555;
}

.smb-bereich-lesen-wert {
	display: block;
	padding: 0.2rem 0;
	white-space: pre-line;
}

/* Jahresbudget (Version 0.9.44). */
.smb-budget {
	border: 1px solid #c3d9c3;
	border-left: 4px solid #2e7d32;
	background: #f4faf4;
	border-radius: 4px;
	padding: 0.6rem 0.9rem;
	margin: 0.75rem 0;
}

.smb-budget-knapp {
	border-color: #f0c36d;
	border-left-color: #e69500;
	background: #fff8e6;
}

.smb-budget-ueberschritten {
	border-color: #e3a3a3;
	border-left-color: #c62828;
	background: #fdecec;
}

.smb-budget-zeile {
	margin: 0.2rem 0;
}

.smb-budget-balken {
	height: 0.5rem;
	background: #e2e2e2;
	border-radius: 0.25rem;
	overflow: hidden;
	margin: 0.35rem 0;
}

.smb-budget-balken span {
	display: block;
	height: 100%;
	background: #2e7d32;
}

.smb-budget-knapp .smb-budget-balken span {
	background: #e69500;
}

.smb-budget-ueberschritten .smb-budget-balken span {
	background: #c62828;
}

.smb-budget-offen {
	font-size: 0.9rem;
	color: #555;
}

.smb-bewilligt-betrag input[type="number"] {
	max-width: 12rem;
}

/* Statistik (Version 0.9.44). */
.smb-statistik-tabelle {
	border-collapse: collapse;
	width: 100%;
}

.smb-statistik-tabelle th,
.smb-statistik-tabelle td {
	border-bottom: 1px solid #e2e2e2;
	padding: 0.35rem 0.5rem;
	text-align: left;
	vertical-align: top;
}

.smb-statistik-tabelle tbody th {
	font-weight: normal;
	width: 60%;
}

.smb-statistik-spalten td:not(:first-child),
.smb-statistik-spalten thead th:not(:first-child) {
	text-align: right;
	white-space: nowrap;
}

.smb-statistik-tabelle tbody tr:nth-child(even) {
	background: #f7f7f7;
}

.smb-tabelle-scroll {
	overflow-x: auto;
}

.smb-statistik-aktionen button {
	margin-right: 0.5rem;
}

@media print {
	.smb-statistik-aktionen,
	.smb-statistik-jahre,
	.smb-board-nutzer {
		display: none;
	}

	.smb-statistik .smb-block {
		break-inside: avoid;
	}
}

/* Reiter „Anträge“ / „Statistik & Budget“ (Version 0.9.45). */
.smb-reiter {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	border-bottom: 2px solid #d0d0d0;
	margin: 0.5rem 0 1rem;
}

.smb-reiter-link {
	display: inline-block;
	padding: 0.5rem 1rem;
	border: 1px solid #d0d0d0;
	border-bottom: none;
	border-radius: 4px 4px 0 0;
	background: #f4f4f4;
	color: inherit;
	text-decoration: none;
	margin-bottom: -2px;
}

.smb-reiter-aktiv {
	background: #fff;
	border-color: #999;
	border-bottom: 2px solid #fff;
	font-weight: bold;
}

/* Rubriken der Übersicht (Version 0.9.45). */
.smb-rubrik h3,
.smb-rubrik summary {
	margin: 0 0 0.5rem;
	font-size: 1.1rem;
	font-weight: bold;
}

.smb-rubrik summary {
	cursor: pointer;
	margin-bottom: 0;
}

.smb-rubrik[open] summary {
	margin-bottom: 0.5rem;
}

.smb-rubrik-abstimmung {
	border-left: 4px solid #1565c0;
}

.smb-rubrik-warteliste {
	border-left: 4px solid #e69500;
}

.smb-rubrik-leer {
	color: #666;
	margin: 0;
}

/* Zustimmung und Bewilligung je Position (Version 0.9.45). */
.smb-stimme-positionen label {
	display: block;
}

.smb-stimmen-positionen,
.smb-bewilligung-positionen {
	border-collapse: collapse;
	width: 100%;
	margin: 0.5rem 0;
}

.smb-stimmen-positionen caption,
.smb-bewilligung-positionen caption {
	text-align: left;
	font-weight: bold;
	padding-bottom: 0.25rem;
}

.smb-stimmen-positionen td,
.smb-bewilligung-positionen th,
.smb-bewilligung-positionen td {
	border-bottom: 1px solid #e2e2e2;
	padding: 0.3rem 0.4rem;
	text-align: left;
	vertical-align: top;
}

.smb-position-mehrheit td:last-child {
	color: #2e7d32;
	font-weight: bold;
}

.smb-bewilligung-positionen input[type="number"] {
	max-width: 8rem;
}

.smb-bew-pos-aus td {
	color: #888;
	text-decoration: line-through;
}

.smb-bew-pos-aus td:first-child,
.smb-bew-pos-aus td:last-child {
	text-decoration: none;
}

.smb-bewilligung-ergebnis .smb-pos-nein {
	color: #888;
}

.smb-bewilligung-positionen .smb-zeile-neben {
	display: block;
	font-size: 0.85rem;
	color: #666;
}

/* Einklappbare Blöcke in der Detailansicht (Version 0.9.48). */
.smb-block-klappbar > summary {
	cursor: pointer;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.25rem 1rem;
}

.smb-block-klappbar > summary::-webkit-details-marker {
	display: none;
}

.smb-block-klappbar > summary h3 {
	margin: 0;
	display: inline;
}

.smb-block-klappbar > summary h3::before {
	content: "▸";
	display: inline-block;
	width: 1.1em;
	transition: transform 0.15s;
}

.smb-block-klappbar[open] > summary h3::before {
	transform: rotate(90deg);
}

.smb-block-klappbar > summary .smb-klapp-stand {
	font-size: 0.9rem;
	color: #666;
}

.smb-block-klappbar[open] > summary {
	margin-bottom: 1rem;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid #eee;
}

/* Mail an Partner: Felder untereinander, volle Breite (Version 0.9.49). */
.smb-partner-anfrage > summary {
	cursor: pointer;
	font-weight: bold;
	margin-bottom: 0.5rem;
}

.smb-partner-anfrage label {
	display: block;
	margin: 0.4rem 0;
}

.smb-partner-anfrage input[type="text"],
.smb-partner-anfrage textarea {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin-top: 0.15rem;
	font: inherit;
	font-size: 0.95rem;
}

.smb-partner-anfrage-status.smb-fehler {
	color: #b71c1c;
	font-weight: bold;
}

/* E-Mail-Entwurf der KI für die Nachforderung (Version 0.9.57) */
.smb-mailentwurf-block { margin: 1em 0; padding: .75em 1em; border-left: 3px solid #c9d6e8; background: rgba(201,214,232,.15); }
.smb-mailentwurf-block textarea { width: 100%; font-family: inherit; }
.smb-ki-stichpunkte { margin-bottom: .75em; }
.smb-ki-stichpunkte ul { margin: .25em 0 0 1.2em; }

/* Fester Kopf der Einzelansicht und Klapp-Knöpfe (Version 0.9.59) */
.smb-fall-kopf { margin: 0 0 1rem; padding: .75rem 1rem; border: 1px solid #ddd; border-radius: 8px; background: #fff; }
.smb-fall-person { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem 1.25rem; }
.smb-fall-name { font-size: 1.15rem; }
.smb-fall-kinder { color: #444; }
.smb-fall-dringend { list-style: none; margin: .6rem 0 0; padding: 0; }
.smb-fall-dringend li { margin: .3rem 0 0; padding: .35rem .6rem; border-left: 4px solid #d98c00; background: #fff6e5; border-radius: 4px; }
.smb-fall-dringend li.smb-dringend-rot { border-left-color: #c62828; background: #fdecea; }
.smb-fall-dringend a { margin-left: .5rem; white-space: nowrap; }
.smb-klapp-alle { display: inline-block; margin-left: auto; font-size: .9rem; white-space: nowrap; }
@media print { .smb-klapp-alle { display: none; } }
.smb-detail-nav { display: flex; align-items: center; gap: .5rem; }

/* Plausibilitätsprüfung mit drei Möglichkeiten (Version 0.9.60) */
.smb-pl-quelle { font-size: .9rem; color: #555; margin: 0 0 .5rem; }
.smb-pl-liste { display: flex; flex-direction: column; gap: .35rem; margin-bottom: .75rem; }
.smb-pl-punkt { margin: 0; padding: .45rem .7rem; border: 1px solid #e3e3e3; border-left: 4px solid #4caf50; border-radius: 6px; background: #fff; display: flex; flex-wrap: wrap; align-items: center; gap: .25rem 1rem; }
.smb-pl-punkt legend { float: left; padding: 0; margin: 0; flex: 1 1 22rem; font-size: 1rem; }
.smb-pl-punkt.smb-pl-offen { border-left-color: #e0a800; background: #fffbea; }
.smb-pl-punkt.smb-pl-nicht, .smb-pl-punkt.smb-kriterium-ausschluss.smb-pl-nicht { border-left-color: #c62828; background: #fdecea; }
.smb-pl-wahl { display: inline-flex; flex-wrap: wrap; gap: .25rem; }
.smb-pl-opt { display: inline-flex; align-items: center; gap: .3rem; padding: .2rem .55rem; border: 1px solid #ccc; border-radius: 999px; font-size: .9rem; cursor: pointer; white-space: nowrap; background: #fafafa; }
.smb-pl-opt input { margin: 0; }
.smb-pl-opt-ja:has(input:checked) { background: #e8f5e9; border-color: #4caf50; }
.smb-pl-opt-nein:has(input:checked) { background: #fdecea; border-color: #c62828; }
.smb-pl-opt-entfaellt:has(input:checked) { background: #eceff1; border-color: #78909c; }
.smb-pl-grund { flex-basis: 100%; color: #666; }
.smb-pl-unterlagen-link { flex-basis: 100%; font-size: .9rem; }
.smb-pl-zaehler { font-weight: 600; color: #8a6d00; }
.smb-pl-zaehler.smb-pl-zaehler-ok { color: #2e7d32; }
.smb-plausibilitaet-form button[disabled] { opacity: .45; cursor: not-allowed; }
.smb-pl-ergebnis { list-style: none; padding: 0; }
.smb-pl-ergebnis li span { display: inline-block; min-width: 8.5em; }
.smb-pl-ergebnis-nein span { color: #c62828; font-weight: 600; }
.smb-pl-ergebnis-offen span { color: #8a6d00; }

/* Gesperrte Plausibilitätsprüfung (Version 0.9.65) */
.smb-pl-gesperrt { padding: .5rem .75rem; background: #eceff1; border-left: 4px solid #78909c; border-radius: 4px; }

/* Partnerzugang (Version 0.9.66) */
.smb-partner-balken { margin: 0 0 1rem; padding: .6rem .9rem; border-left: 4px solid #9C1561; background: #fbeef5; border-radius: 4px; }
.smb-partner-balken a { color: #9C1561; }
.smb-partner-login-link { margin-top: 2rem; font-size: .85rem; text-align: right; }
.smb-partner-login-link a { color: #656263; }
.smb-partner-login { max-width: none; } /* Version 0.9.71: volle Inhaltsbreite des Themes */
.smb-partner-faelle { width: 100%; border-collapse: collapse; }
.smb-partner-faelle th, .smb-partner-faelle td, .smb-pz-konten th, .smb-pz-konten td { text-align: left; padding: .35rem .5rem; border-bottom: 1px solid #e3e3e3; }
.smb-pz-form label { display: block; margin: .4rem 0; }
.smb-pz-form input[type=text], .smb-pz-form input[type=email], .smb-pz-form select { width: 100%; max-width: 40rem; }
.smb-pz-inline { display: inline-flex; flex-wrap: wrap; gap: .5rem; margin: .25rem 0; }
.smb-pz-status-freigeschaltet { color: #2e7d32; }
.smb-pz-status-gesperrt { color: #c62828; }
.smb-pz-status-beantragt, .smb-pz-faellig { color: #8a6d00; }
.smb-reiter-zahl { display: inline-block; min-width: 1.3em; padding: 0 .35em; margin-left: .3em; border-radius: 999px; background: #ED0968; color: #fff; font-size: .8em; text-align: center; }
.smb-hinweis-ok { padding: .5rem .75rem; border-left: 4px solid #2e7d32; background: #e8f5e9; border-radius: 4px; }
.smb-pz-protokoll { font-size: .9rem; color: #555; }

/* Partner-Anlage, Vervollständigen, Unterschrift (Version 0.9.67) */
.smb-partner-box { margin: 0 0 1.25rem; padding: .75rem 1rem; border: 1px solid #e3c4d6; border-radius: 8px; background: #fbeef5; }
.smb-partner-box label { display: block; margin: .35rem 0; }
.smb-ergaenzen-hinweis { margin: 0 0 1.25rem; padding: .75rem 1rem; border-left: 4px solid #9C1561; background: #fbeef5; border-radius: 4px; }
.smb-ergaenzen-hinweis .smb-button { display: inline-block; margin-top: .5rem; }
.smb-unterschrift-block { margin: 1.25rem 0; padding: .75rem 1rem; border: 1px solid #ddd; border-radius: 8px; background: #fff; }
.smb-unterschrift-zeichnen { display: flex; flex-direction: column; align-items: flex-start; gap: .35rem; }
#smb-unterschrift-feld { width: 100%; max-width: 600px; height: auto; aspect-ratio: 10 / 3; border: 1px dashed #9C1561; border-radius: 6px; background: #fff; touch-action: none; cursor: crosshair; }
.smb-fall-partner { flex-basis: 100%; color: #555; font-size: .9rem; }

/* Vereinbarungen online (Version 0.9.68) */
.smb-pv { max-width: none; } /* Version 0.9.71: volle Inhaltsbreite des Themes */
.smb-pv h2, .smb-pv h3 { color: #9C1561; }
.smb-pv-text { padding: .75rem 1rem; border: 1px solid #e3e3e3; border-radius: 8px; background: #fff; margin-bottom: 1rem; }
.smb-pv-form label { display: block; margin: .5rem 0; }
.smb-pv-form input[type=text] { width: 100%; max-width: 40rem; }
.smb-pz-doks { margin: .25rem 0 .5rem 1.2rem; }
.smb-pz-aktionen { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; align-items: flex-start; margin: .5rem 0; }

/* Version 0.9.71: Login-Formular von WordPress auf der Partnerseite nicht zu schmal. */
.smb-partner-login #loginform { max-width: 40rem; }
.smb-partner-login #loginform input[type=text], .smb-partner-login #loginform input[type=password] { width: 100%; }

/* Zugang einrichten (Version 0.9.73) */
.smb-pz-neu-link { margin-top: 1rem; padding-top: .75rem; border-top: 1px solid #e3e3e3; }
.smb-pz-neu-link a { color: #9C1561; font-weight: 600; }
.smb-pz-reg fieldset { border: 0; padding: 0; margin: .75rem 0; }
.smb-pz-reg fieldset label { display: block; margin: .35rem 0; }

/* Personen & Zugänge (Version 0.9.74) */
.smb-ps-tabelle td { vertical-align: top; }
.smb-ps-gesperrt td { color: #8a8a8a; }
.smb-ps-filter, .smb-ps-pruefung { align-items: center; margin: .5rem 0 1rem; }

/* Personen & Zugänge aufgeräumt (Version 0.9.76) */
.smb-ps-tabelle { width: 100%; border-collapse: collapse; }
.smb-ps-tabelle th { font-size: .85rem; text-transform: none; color: #656263; font-weight: 600; white-space: nowrap; }
.smb-ps-tabelle td { padding: .5rem .6rem; vertical-align: middle; }
.smb-ps-aktionen { width: 1%; white-space: nowrap; text-align: right; }
.smb-ps-menue { position: relative; display: inline-block; }
.smb-ps-menue > summary { list-style: none; cursor: pointer; display: inline-block; border: 1px solid #c9c9c9; border-radius: 4px; background: #fff; color: #333; }
.smb-ps-menue > summary::-webkit-details-marker { display: none; }
.smb-ps-menue > summary::after { content: " ▾"; }
.smb-ps-menue[open] > summary { border-color: #9C1561; color: #9C1561; }
.smb-ps-menue-inhalt { position: absolute; right: 0; z-index: 30; margin-top: .3rem; min-width: 17rem; padding: .6rem .75rem; background: #fff; border: 1px solid #ddd; border-radius: 6px; box-shadow: 0 4px 14px rgba(0,0,0,.12); text-align: left; white-space: normal; }
.smb-ps-zeile { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .4rem .75rem; margin: .25rem 0 .5rem; }
.smb-ps-zeile label { display: flex; flex-direction: column; font-size: .85rem; gap: .2rem; }
.smb-ps-zeile select { min-width: 10rem; }
.smb-ps-zeile + .smb-ps-zeile { padding-top: .5rem; border-top: 1px solid #eee; }
.smb-ps-sperren { color: #c62828 !important; }
.smb-ps-stand { display: inline-block; padding: .05rem .5rem; border-radius: 999px; font-size: .85rem; }
.smb-ps-stand-aktiv { background: #e8f5e9; color: #2e7d32; }
.smb-ps-stand-gesperrt { background: #fdecea; color: #c62828; }
.smb-ps-sie { display: inline-block; margin-left: .35rem; padding: 0 .4rem; border-radius: 999px; background: #fbeef5; color: #9C1561; font-size: .8rem; }
.smb-ps-tabelle .smb-ps-menue select { max-width: none; }

/* Kleines MBG-Logo in „Personen & Zugänge“ (Version 0.9.77, nur interner Bereich) */
.smb-ps-logo { display: block; width: 96px; height: auto; }

/* Dezente Knöpfe in Grau (Version 0.9.78): „Prüfung vermerken“, „Filtern“ */
.smb-board button.smb-knopf-dezent,
button.smb-knopf-dezent {
	background: #f2f2f2 !important;
	color: #656263 !important;
	border: 1px solid #c9c9c9 !important;
	box-shadow: none !important;
	font-size: .9rem;
	padding: .3rem .9rem;
	min-height: 0;
	width: auto;
}
.smb-board button.smb-knopf-dezent:hover,
button.smb-knopf-dezent:hover,
button.smb-knopf-dezent:focus-visible {
	background: #e6e6e6 !important;
	color: #333 !important;
	border-color: #9a9a9a !important;
}

/* Eigene Anmeldung (Version 0.9.80) */
.smb-login { max-width: 32rem; }
.smb-login h2 { color: #9C1561; }
.smb-login-form { display: flex; flex-direction: column; gap: .75rem; padding: 1.25rem; border: 1px solid #e3e3e3; border-radius: 8px; background: #fff; }
.smb-login-form label { display: flex; flex-direction: column; gap: .3rem; font-weight: 600; }
.smb-login-form input[type=text], .smb-login-form input[type=email], .smb-login-form input[type=password] { width: 100%; padding: .55rem .7rem; border: 1px solid #c9c9c9; border-radius: 6px; font-size: 1rem; font-weight: 400; }
.smb-login-form input:focus { outline: 2px solid #9C1561; outline-offset: 1px; }
.smb-login-form .smb-login-merken { flex-direction: row; align-items: center; gap: .5rem; font-weight: 400; font-size: .9rem; }
.smb-login-form button { align-self: flex-start; }
.smb-login-vergessen { font-size: .9rem; color: #9C1561; }

.smb-pz-kontofehler { color: #c62828; font-size: .85rem; } /* Version 0.9.82 */
