/* ==========================================================================
   MODUL MITGLIEDSANTRAG – Design des Formulars [borosen_antrag]
   --------------------------------------------------------------------------
   NEU (Oktober 2026): Vorher stand dieses CSS als <style>-Block mitten im
   Formular. Farben, Rundungen und Knöpfe kommen jetzt aus dem gemeinsamen
   Borosen-Design (assets/borosen-ui.css, Variablen --bo-…).
   ========================================================================== */

/* Honigtopf-Feld gegen Spam-Roboter: muss unsichtbar bleiben! */
.antrag-hp-wrap {
	display: none !important;
	visibility: hidden;
}

/* Abschnitts-Überschriften ("Persönliche Daten", "Zustimmungen")
   GEÄNDERT: vorher gelbe Schrift auf grauem Grund – kaum lesbar.
   Jetzt schwarze Schrift mit gelbem Balken davor. */
.antrag-section-title {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin: 2rem 0 1rem;
	font-size: var(--wp--preset--font-size--medium, 1.4rem);
	color: var(--bo-schwarz);
}
.antrag-section-title::before {
	content: "";
	width: 0.6rem;
	height: 1.4em;
	border-radius: 999px;
	background: var(--bo-gelb);
}

/* Eine Zeile = Beschriftung + Eingabefeld */
.antrag-row {
	margin-bottom: 1rem;
}
.antrag-row label {
	display: block;
	margin-bottom: 0.35rem;
	font-weight: 800;
}
.antrag-row input,
.antrag-row textarea {
	width: 100%;
	box-sizing: border-box;
}
.antrag-row textarea {
	min-height: 9rem;
	resize: vertical;
}

/* Zeichenzähler mit Fortschrittsbalken unter der Motivation */
.antrag-counter {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-top: 0.5rem;
	font-size: 0.9rem;
	color: var(--bo-grau-text);
}
.antrag-counter__balken {
	flex: 1;
	height: 6px;
	border-radius: 999px;
	background: var(--bo-linie);
	overflow: hidden;
}
.antrag-counter__balken > span {
	display: block;
	height: 100%;
	background: var(--bo-gelb);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 250ms var(--bo-kurve), background-color 250ms ease-out;
}
.ist-genug .antrag-counter__balken > span {
	background: var(--bo-gruen);
}
.ist-genug .antrag-counter {
	color: var(--bo-gruen-text);
}

/* Häkchen-Kästen für die Zustimmungen */
.antrag-check {
	display: flex;
	align-items: flex-start;
	gap: 0.85rem;
	margin-bottom: 0.75rem;
	padding: 0.9rem 1rem;
	border: 2px solid var(--bo-linie);
	border-radius: var(--bo-rundung-m);
	background: var(--bo-flaeche);
	cursor: pointer;
	transition: border-color 160ms ease-out, background-color 160ms ease-out;
}
.antrag-check:has(input:checked) {
	border-color: var(--bo-schwarz);
	background: var(--bo-gelb-hell);
}
.antrag-check input[type="checkbox"] {
	flex-shrink: 0;
	width: 1.25rem;
	height: 1.25rem;
	margin-top: 0.15rem;
	accent-color: var(--bo-schwarz);
	cursor: pointer;
}
.antrag-check label {
	line-height: 1.5;
	cursor: pointer;
}
.antrag-check a {
	color: var(--bo-schwarz);
	font-weight: 800;
}

.antrag-req {
	color: var(--bo-rot-text);
	font-weight: 800;
}
.antrag-pflicht {
	margin: 1rem 0;
	color: var(--bo-grau-text);
	font-size: 0.9rem;
}

/* Fehlerliste */
.antrag-errors ul {
	margin: 0.5rem 0 0 1.1rem;
	padding: 0;
}
