/* =====================================================================
   ROS REAL – Werkzeugleiste und Filterblatt (Design v46, Auftrag BK1b).
   Ergänzt die in formular.css und dialog.css bereits gestalteten Bausteine
   (.feld, .haken, .werte, .vonbis, .rselect, .blattd) um Anordnung und Abstände.
   Nur Tokens aus main.css, keine Hex-Werte, keine runden Ecken, keine Schatten.
   ===================================================================== */

.filterband {
	width: 100%;
}

/* ---------- Werkzeugleiste (unter 1024 px ausgeblendet) ---------- */
.filterleiste {
	display: none;
}

/* ---------- Handy-Zeile (unter 1024 px) ---------- */
.mzeile {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--el);
}
.mzeile .mfilter {
	font-size: var(--t3);
	padding-inline: 0;
}
.mzeile .mzahl {
	font: 400 var(--t3)/1.6 var(--sans);
	color: var(--grau);
}

/* ---------- Aktive Filter ---------- */
.aktivzeile {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--el) 24px;
	margin-top: var(--el);
}
.aktivzeile .marken {
	list-style: none;
	margin: 0;
	padding: 0;
	min-width: 0;
	max-width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 24px;
}
.aktivzeile .marke {
	display: inline-flex;
	align-items: baseline;
	min-width: 0;
	max-width: 100%;
}
.aktivzeile .marke .weg {
	font: 400 var(--t3)/1.6 var(--sans);
	color: var(--grau);
}
.aktivzeile .azahl {
	font: 400 var(--t3)/1.6 var(--sans);
	color: var(--grau);
	display: none;
}
.aktivzeile .alleweg {
	font: 400 var(--t3)/1.6 var(--sans);
	color: var(--grau);
	margin-left: auto;
}
.aktivzeile .agent {
	font: 400 var(--t3)/1.6 var(--sans);
	color: var(--blau);
	background: none;
	border: 1px solid var(--blau);
	min-height: 44px;
	padding: 0 20px;
}

/* ---------- Blatt „Mehr Filter“ ---------- */
.fblatt .fgruppe {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
}
.fblatt .fgruppe + .fgruppe {
	margin-top: var(--block);
	padding-top: var(--block);
	border-top: 1px solid var(--linie);
}
.fblatt .fgruppe legend {
	padding: 0;
	margin: 0 0 var(--el);
	font: 400 var(--t4)/1.6 var(--sans);
	text-transform: uppercase;
	letter-spacing: .13em;
	color: var(--grau);
}
.fblatt .fgruppe__feld {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.fblatt .fgruppe__feld + .fgruppe__feld {
	margin-top: var(--el);
}
.fblatt .fgruppe__reihe {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--el);
}
.fblatt .haken.aus {
	color: var(--grau);
	opacity: .5;
	cursor: not-allowed;
}

#mehrfilter-dialog .ffuss {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--el);
}
#mehrfilter-dialog .ffuss .zurueck {
	font: 400 var(--t3)/1.6 var(--sans);
	color: var(--grau);
}
#mehrfilter-dialog .ffuss .anzeigen:disabled {
	background: var(--grau);
	color: var(--papier);
	cursor: not-allowed;
	opacity: 1;
}

/* ---------- Haltepunkte ---------- */
@media (min-width: 600px) {
	.fblatt .fgruppe__reihe {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (min-width: 1024px) {
	.filterleiste {
		display: flex;
		align-items: flex-end;
		gap: var(--el);
	}
	.fl-gruppe {
		display: flex;
		flex-direction: column;
		gap: 8px;
	}
	.fl-gruppe--sort {
		margin-left: auto;
	}
	.filterleiste .mehr {
		font: 400 var(--t3)/1.6 var(--sans);
		color: var(--blau);
		background: none;
		border: 0;
		padding: 0;
		align-self: flex-end;
	}
	.filterleiste .anwenden {
		font-size: var(--t3);
		min-height: 44px;
		padding: 0 20px;
		align-self: flex-end;
	}
	.mzeile {
		display: none;
	}
	.aktivzeile .azahl {
		display: inline;
	}
	.fblatt .fgruppe--grund {
		display: none;
	}
}

/* TC-Review: .knopf setzt display, darum [hidden] ausdrücklich; ausgegraute Werte/Optionen */
.filterleiste .anwenden[hidden] {
	display: none;
}
.fblatt .werte input:disabled + span {
	color: var(--grau);
	opacity: .5;
	cursor: not-allowed;
}

/* TC 22.09. nach Sichtvergleich mit dem Prototyp (1440): Seitenrand, Linien, Zählerzeile */
.filterband {
	padding-inline: var(--rand);
}
@media (min-width: 1024px) {
	.filterleiste {
		margin-inline: calc(-1 * var(--rand));
		padding: 20px var(--rand);
		border-top: 1px solid var(--linie);
		border-bottom: 1px solid var(--linie);
		gap: 34px;
	}
}
.aktivzeile {
	margin-top: 0;
	padding: 18px 0;
	border-bottom: 1px solid var(--linie);
}
.aktivzeile .agent {
	border: 0;
	padding: 0;
	min-height: 0;
	margin-left: auto;
	color: var(--tinte);
}

/* Blatt-Titel: „Mehr Filter“ ab 1024 px, „Filter“ darunter (Messrunde Nr 20) */
#mehrfilter-titel .nur-gross { display: none; }
@media (min-width: 1024px) { #mehrfilter-titel .nur-gross { display: inline; } #mehrfilter-titel .nur-klein { display: none; } }

/* =====================================================================
   BT – Korrektur K1 (Messrunde 1): Aktivzeile Farben und Trefferflächen.
   Nur angehängt, nichts Bestehendes gelöscht.
   ===================================================================== */

/* Nr 16: „Diese Suche per E-Mail erhalten“ in Nachtblau. */
.aktivzeile .agent {
	color: var(--blau);
}

/* Nr 17: Zähler in Tinte. */
.aktivzeile .azahl {
	color: var(--tinte);
}

/* Aktive Filterwörter und Zurücksetzen behalten 44 px Trefferfläche. */
.aktivzeile .marke .weg,
.aktivzeile .alleweg {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

/* Nr 18/24: Platz für den Ansicht-Umschalter rechts in Werkzeugleiste bzw. Handy-Zeile. */
@media (min-width: 1024px) {
	.filterleiste {
		padding-right: calc(var(--rand) + 200px);
	}
}
@media (max-width: 1023px) {
	.mzeile {
		padding-right: 120px;
	}
}

/* TC 22.09. nach K1-Sichtprüfung: Nutzung und „Mehr Filter“ nie umbrechen (Platz für den Ansicht-Umschalter drückte die Gruppe zusammen). */
@media (min-width: 1024px) {
	.filterleiste .fl-gruppe--nutzung,
	.filterleiste .mehr,
	.filterleiste .fl-gruppe--sort { flex: none; }
	.filterleiste .fl-gruppe--nutzung .werte { flex-wrap: nowrap; }
	.filterleiste .mehr { white-space: nowrap; }
	.filterleiste .fl-gruppe:not(.fl-gruppe--nutzung):not(.fl-gruppe--sort) { flex: 1 1 0; min-width: 110px; }
}

/* =====================================================================
   K2 – Werkzeugleiste wie Prototyp v46 (.mfilter), Messrunde 2 Nr 68–77, 18, 80, 84.
   Je Gruppe Beschriftung oben, Wert darunter; alle Bedienflächen 44 hoch, Unterstriche
   auf einer Grundlinie. Sortierung und Ansicht als Umschalter rechts (.fl-abgesetzt).
   Überschreibt die früheren Korrekturen (200 px Platzhalter rechts, gestreckte Gruppen).
   ===================================================================== */
@media (min-width: 1024px) {
	.filterleiste {
		flex-wrap: wrap;
		align-items: flex-end;
		gap: 26px 34px;
		padding: 12px var(--rand) 14px;
		font-size: var(--t3);
	}
	.filterleiste .fl-gruppe,
	.filterleiste .fl-gruppe:not(.fl-gruppe--nutzung):not(.fl-gruppe--sort) {
		flex: none;
		min-width: 0;
		gap: 0;
		align-items: stretch;
	}
	.filterleiste .klein {
		letter-spacing: .14em;
		white-space: nowrap;
	}
	.filterleiste .rselect { min-width: 158px; }
	.filterleiste .fl-gruppe--schmal .rselect { min-width: 88px; }
	.filterleiste .werte {
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 16px;
	}
	.filterleiste .werte label,
	.filterleiste .sicht a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		font: 400 var(--t2)/1.6 var(--sans);
		color: var(--grau);
		text-decoration: none;
		white-space: nowrap;
	}
	.filterleiste .werte label:has(input:checked),
	.filterleiste .sicht a.an {
		color: var(--tinte);
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-underline-offset: var(--unterstrich-abstand);
	}
	.filterleiste .werte label:hover,
	.filterleiste .sicht a:hover { color: var(--blau); }
	.filterleiste .fl-gruppe--mehr .mehr {
		display: inline-flex;
		align-items: center;
		align-self: flex-start;
		min-height: 44px;
		padding: 0;
		font: 400 var(--t3)/1.6 var(--sans);
		color: var(--blau);
		background: none;
		border: 0;
		box-shadow: inset 0 -1px 0 var(--blau);
		white-space: nowrap;
		cursor: pointer;
	}
	.filterleiste .fl-gruppe--mehr .mehr:hover {
		color: var(--blau-tief, var(--tinte));
		box-shadow: inset 0 -1px 0 var(--blau-tief, var(--tinte));
	}
	.filterleiste .fl-abgesetzt {
		margin-left: auto;
		display: flex;
		align-items: flex-end;
		gap: 26px 34px;
	}
	.filterleiste .fl-gruppe--sort { margin-left: 0; }
	.filterleiste .sicht {
		display: flex;
		flex-wrap: nowrap;
		gap: 16px;
	}
}
@media (min-width: 1024px) and (max-width: 1100px) {
	.filterleiste,
	.filterleiste .fl-abgesetzt { gap: 22px 26px; }
	.filterleiste .rselect { min-width: 132px; }
	.filterleiste .fl-gruppe--schmal .rselect { min-width: 88px; }
}

/* Aktive Filter (Prototyp: Zähler zuerst, Suchagent und „Alle Filter zurücksetzen“ rechts). */
.aktivzeile {
	align-items: baseline;
	align-content: center;
	gap: 4px 24px;
	min-height: 58px;
	padding: 0;
	font-size: var(--t3);
}
.aktivzeile .azahl { order: -1; white-space: nowrap; }
.aktivzeile .marken { align-items: baseline; gap: 4px 20px; }
.aktivzeile .marken__reset { display: inline-flex; }
.aktivzeile .marke .weg {
	font-size: var(--t3);
	color: var(--tinte);
	gap: 8px;
	min-width: 44px;
	max-width: 100%;
	text-decoration: none;
}
.aktivzeile .weg__wort {
	min-width: 0;
	white-space: normal;
	overflow-wrap: anywhere;
}
/* Wort und dauerhaft sichtbares Kreuz bilden einen gemeinsamen Entfernen-Link. */
.aktivzeile .weg__kreuz {
	position: relative;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	color: var(--grau);
}
.aktivzeile .weg__kreuz::before,
.aktivzeile .weg__kreuz::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 10px;
	height: 1px;
	background: currentColor;
	transform: translate(-50%, -50%) rotate(45deg);
}
.aktivzeile .weg__kreuz::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.aktivzeile .weg:hover .weg__wort,
.aktivzeile .weg:focus-visible .weg__wort {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: var(--unterstrich-abstand);
}
.aktivzeile .weg:hover .weg__kreuz,
.aktivzeile .weg:focus-visible .weg__kreuz {
	color: var(--blau);
}
.aktivzeile .agent {
	order: 1;
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	font-size: var(--t3);
	white-space: nowrap;
	cursor: pointer;
}
.aktivzeile .alleweg {
	order: 2;
	margin-left: 0;
	font-size: var(--t3);
	color: var(--grau);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: color-mix(in srgb, var(--tinte) 28%, transparent);
	text-underline-offset: var(--unterstrich-abstand);
	white-space: nowrap;
}
.aktivzeile .weg:hover,
.aktivzeile .alleweg:hover { color: var(--blau); text-decoration-color: var(--blau); }
.aktivzeile .agent:hover { color: var(--blau-tief, var(--tinte)); }

/* Handy-Zeile wie Prototyp: „Filter“ als unterstrichener Textknopf, Zahl daneben,
   „Raster · Karte“ rechts; darunter die Aktivzeile mit Suchagent in voller Breite. */
@media (max-width: 1023px) {
	.mzeile {
		gap: 16px;
		padding: 6px 0;
		padding-right: 0;
		font-size: var(--t3);
		border-bottom: 1px solid color-mix(in srgb, var(--tinte) 14%, transparent);
	}
	.mzeile .mfilter.knopf {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		width: auto;
		padding: 0;
		border: 0;
		background: none;
		font: 400 var(--t3)/1.6 var(--sans);
		color: var(--tinte);
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-underline-offset: var(--unterstrich-abstand);
		white-space: nowrap;
	}
	.mzeile .mzahl {
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.mzeile .rechts {
		margin-left: auto;
		display: flex;
		gap: 16px;
	}
	/* Audit 23.09.: Filter/Raster/Karte sind nur 28–41 px breit – Trefferfläche wie .tf auf 44 px. */
	.mzeile .mfilter.knopf,
	.mzeile .rechts a { position: relative; }
	.mzeile .mfilter.knopf::after,
	.mzeile .rechts a::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: max(44px, 100% + 16px);
		height: 44px;
		transform: translate(-50%, -50%);
	}
	.mzeile .rechts a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		font: 400 var(--t3)/1.6 var(--sans);
		color: var(--grau);
		text-decoration: none;
		white-space: nowrap;
	}
	.mzeile .rechts a.an {
		color: var(--tinte);
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-underline-offset: var(--unterstrich-abstand);
	}
	.aktivzeile {
		min-height: 0;
		gap: 0 20px;
		padding: 6px 0;
		align-content: center;
	}
	.aktivzeile .marken { width: 100%; }
	.aktivzeile .azahl { display: none; }
	.aktivzeile .alleweg { margin-left: 0; order: 0; }
	.aktivzeile .agent {
		order: 9;
		width: 100%;
		margin-left: 0;
		justify-content: center;
		text-align: center;
	}
}
@media (max-width: 599px) {
	.mzeile {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0 20px;
	}
	.mzeile .mfilter { justify-self: start; }
	.mzeile .rechts { grid-column: 2; grid-row: 1; }
	.mzeile .mzahl {
		grid-column: 1 / -1;
		grid-row: 2;
		display: block;
		overflow: visible;
		white-space: normal;
		padding-bottom: 6px;
	}
}

/* =====================================================================
   K2 Paket 3 – Blatt „Mehr Filter“ wie Prototyp v46 (Messrunde 2 Nr 111).
   Zwei Spalten ab 768 (.voll über beide), Gruppen mit Linie unten,
   Beschriftung klein in Versalien, Umschalter 15 px mit Linie unter dem gewählten Wert.
   ===================================================================== */
.fblatt .finhalt {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 8px 34px;
	align-items: start;
}
@media (min-width: 768px) {
	.fblatt .finhalt { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.fblatt .fgruppe,
.fblatt .fgruppe + .fgruppe {
	display: block;
	margin: 0;
	padding: 16px 0 12px;
	border: 0;
	min-width: 0;
}
.fblatt .fgruppe.voll { grid-column: 1 / -1; }
.fblatt .fgruppe.voll:not(.fgruppe--grund) {
	border-top: 1px solid var(--linie);
	margin-top: 4px;
	padding-top: 20px;
}
.fblatt .fgruppe legend {
	float: left; /* legend als normale Zeile über dem Wert */
	width: 100%;
	margin: 0 0 8px;
	padding: 0;
	font: 400 var(--t4)/1.6 var(--sans);
	text-transform: uppercase;
	letter-spacing: .14em;
	color: var(--grau);
}
.fblatt .fgruppe legend label { font: inherit; color: inherit; }
.fblatt .werte {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 4px 8px;
}
.fblatt .werte label {
	min-height: 44px;
	min-width: 44px;
	justify-content: center;
	font: 400 var(--t2)/1.6 var(--sans);
	color: var(--grau);
}
.fblatt .werte label:has(input:checked) {
	color: var(--tinte);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: var(--unterstrich-abstand);
}
.fblatt .werte label:hover { color: var(--blau); }
.fblatt .fgruppe--zimmer .werte { column-gap: 3px; }
.fblatt .vonbis {
	display: flex;
	align-items: center;
	gap: 10px;
}
.fblatt .vonbis .rselect { flex: 1 1 0; min-width: 0; }
.fblatt .vonbis i { font-style: normal; color: var(--grau); }
.fblatt .vonbis i::before { content: none; }
.fblatt .fgruppe > .rselect { display: block; width: 100%; }
.fblatt .rselect > button {
	position: relative;
	min-height: 48px;
	padding-right: 24px;
	font-size: var(--t1);
	white-space: normal;
	overflow-wrap: anywhere;
}
.fblatt .rselect > button::after {
	content: "";
	position: absolute;
	right: 4px;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid var(--grau);
	border-bottom: 1px solid var(--grau);
	transform: translateY(-75%) rotate(45deg);
}
.fblatt .rselect.auf > button::after { transform: translateY(-25%) rotate(-135deg); }
.fblatt .rliste [role="option"] { white-space: normal; overflow-wrap: anywhere; }
.fblatt .kaesten {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 2px 20px;
}
.fblatt .kaesten.vier { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 767px) {
	.fblatt .kaesten,
	.fblatt .kaesten.vier { grid-template-columns: minmax(0, 1fr); }
}
.fblatt .kaesten .haken,
.fblatt .fgruppe > .haken {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	margin: 0;
	font: 400 var(--t2)/1.4 var(--sans);
}
.fblatt .fgruppe > :not(legend) { clear: both; }
@media (min-width: 1024px) {
	.fblatt .fgruppe.fgruppe--grund { display: none; }
}

/* ===== K3 – Hinweis bei Merkmalsfiltern (Prototyp magazin.js zeichne) ===== */
.aktivzeile .hinweis {
	flex: 1 1 100%;
	margin: 2px 0 0;
	font: 400 var(--t4)/1.6 var(--sans);
	color: var(--grau);
}

/* K3 · Blatt wie Prototyp: Preis-Hinweis bei „Alle“, „Alle … Merkmale“ am Handy. */
.fblatt .fnote { margin: 2px 0 0; font-size: 12px; color: var(--grau); }
.fblatt .fnote[hidden], .fblatt .fgruppe[hidden] { display: none; }
.fblatt .fmehrm {
	display: none;
	justify-self: start;
	grid-column: 1 / -1;
	min-height: 44px;
	padding: 0;
	border: 0;
	background: none;
	font: inherit;
	font-size: 14px;
	color: var(--blau);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: var(--unterstrich-abstand);
	cursor: pointer;
}
@media (max-width: 1023px) {
	.fblatt .fmehrm { display: inline-flex; align-items: center; }
	.fblatt .fmehrm[hidden] { display: none; }
	.fblatt .fgruppe.zu .mehrm { display: none; }
}

/* =====================================================================
   Thomas 23.09. („die Suchbar muss noch cleaner sein“), Desktop ab 1024 px:
   – eine Linienart: unterstrichen ist nur, was gewählt ist (Nutzung, Sortierung, Ansicht);
     Auswahlfelder ohne lange graue Linien, stattdessen ein feiner Pfeil nach dem Wert
   – Felder so breit wie ihr Wert, gleichmäßiger Abstand zwischen allen Gruppen
   – „Mehr Filter“ in Tinte mit „+“ statt blauer Linie
   – nur noch zwei Linien (über und unter der Leiste), die Zählzeile ohne eigene Linie
   ===================================================================== */
@media (min-width: 1024px) {
	.filterleiste { gap: 26px 44px; }
	.filterleiste .fl-abgesetzt { gap: 26px 44px; }
	.filterleiste .rselect,
	.filterleiste .fl-gruppe--schmal .rselect { min-width: 0; }
	.filterleiste .rselect > button {
		position: relative;
		width: auto;
		max-width: 240px;
		padding: 0 20px 0 0;
		border-bottom: 0;
		font: 400 var(--t2)/1.6 var(--sans);
		color: var(--tinte);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.filterleiste .rselect > button::after {
		content: "";
		position: absolute;
		right: 3px;
		top: 50%;
		width: 6px;
		height: 6px;
		border-right: 1px solid var(--grau);
		border-bottom: 1px solid var(--grau);
		transform: translateY(-75%) rotate(45deg);
	}
	.filterleiste .rselect.auf > button::after { transform: translateY(-25%) rotate(-135deg); }
	.filterleiste .rselect > button:hover { color: var(--blau); }
	.filterleiste .rselect > button:hover::after { border-color: var(--blau); }
	.filterleiste .rliste { min-width: 220px; }
	.filterleiste .fl-gruppe--mehr .mehr {
		align-self: flex-end;
		gap: 8px;
		font: 400 var(--t2)/1.6 var(--sans);
		color: var(--tinte);
		box-shadow: none;
	}
	.filterleiste .fl-gruppe--mehr .mehr::after {
		content: "+";
		font: 400 var(--t1)/1 var(--sans);
		color: var(--grau);
	}
	.filterleiste .fl-gruppe--mehr .mehr:hover { color: var(--blau); box-shadow: none; }
	.filterband .aktivzeile { border-bottom: 0; }
}
/* Suchkriterien bilden einen Block; Sortierung und Ansicht steuern die Darstellung. */
@media (min-width: 1024px) {
	.filterleiste {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 16px 28px;
	}
	.filterleiste .fl-suche {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-end;
		gap: 12px 28px;
		min-width: 0;
	}
	.filterleiste .fl-abgesetzt {
		margin-left: 0;
		padding-left: 28px;
		border-left: 1px solid var(--linie);
		gap: 24px;
	}
}
/* Auf kleinen Laptops bleibt der gesamte Darstellungsblock in einer eigenen Zeile. */
@media (min-width: 1024px) and (max-width: 1179px) {
	.filterleiste { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.filterleiste .fl-suche { gap: 10px 28px; }
	.filterleiste .fl-abgesetzt {
		justify-content: flex-end;
		border-left: 0;
		border-top: 1px solid var(--linie);
		padding: 8px 0 0;
	}
}
/* Fester Abschluss ohne zusätzlichen Schatten oder konkurrierende Trennlinien. */
#mehrfilter-dialog .ffuss { border-top: 1px solid var(--linie); box-shadow: none; flex-wrap: wrap; }
#mehrfilter-dialog .filter-leer { flex: 0 0 100%; margin: 0; }

/* Suche per E-Mail neben dem Zähler; volle Trefferflächen bleiben erhalten. */
@media (max-width: 1023px) {
	.filterband .mzeile {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0 16px;
	}
	.filterband .mzeile .mfilter { grid-column: 1; grid-row: 1; }
	.filterband .mzeile .rechts { grid-column: 2; grid-row: 1; }
	.filterband .mzeile .mzahl { grid-column: 1; grid-row: 2; align-self: center; }
	.filterband .magent {
		grid-column: 2;
		grid-row: 2;
		justify-self: end;
		min-height: 44px;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: none;
		font: 400 var(--t3)/1.4 var(--sans);
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-underline-offset: var(--unterstrich-abstand);
		white-space: nowrap;
	}
	.filterband .aktivzeile .agent { display: none; }
	.filterband .aktivzeile:not(:has(.marken, .hinweis)) { display: none; }
}
