/**
 * Wohnungsfinder – Frontend-Styles.
 *
 * Alles ist unter der Wurzelklasse .wohnungsfinder-app gescoped, damit das
 * Theme der Website nicht beeinflusst wird. Keine globalen Regeln für
 * button/table/input/select/a. font-family: inherit statt eigener
 * Web-Fonts, damit die Typografie des Themes übernommen wird.
 *
 * Farben (Vorgabe):
 *   Hintergrund: #f0e7d9   Text: #1a2a3f   Akzent: #8faf8a
 * Tabellenzeilen wechseln zwischen Weiß und einem sehr hellen Grauton, die
 * TOP-Spalte jeder Zeile ist unabhängig davon durchgehend in der
 * Akzentfarbe eingefärbt und dient als visuelles Orientierungselement.
 * --whf-border bleibt für Filterleiste, Umschalter und Mobile-Cards
 * bestehen, --whf-row-border ist eigens für die dezenten horizontalen
 * Tabellenzeilen-Trennlinien reserviert.
 */

.wohnungsfinder-app {
	--whf-bg: #ffffff;
	--whf-bg-alt: #fafafa;
	--whf-border: #d8c7a4;
	--whf-row-border: rgba(26, 42, 63, 0.1);
	--whf-text: #1a2a3f;
	--whf-label: #acacac;
	--whf-muted: #6b7280;
	--whf-accent: #8faf8a;
	--whf-accent-dark: #759870;
	--whf-header-bg: #1a2a3f;
	--whf-header-text: #f5f1e6;
	--whf-radius: 4px;
	/* Gemeinsame Höhe aller Bedienelemente in der Filterleiste, damit
	   Auswahlfelder und Regler exakt auf einer Linie sitzen. */
	--whf-control-height: 38px;

	font-family: inherit;
	color: var(--whf-text);
	line-height: 1.5;
	max-width: 100%;
}

.wohnungsfinder-app * {
	box-sizing: border-box;
}

.wohnungsfinder-app .whf-noscript {
	background: var(--whf-bg-alt);
	border: 1px solid var(--whf-border);
	border-radius: var(--whf-radius);
	padding: 0.9em 1.1em;
	margin: 0 0 1.2em;
}

/* -----------------------------------------------------------------------
   Hauptfilter: Unter 100 m² / Über 100 m²
   ----------------------------------------------------------------------- */

.wohnungsfinder-app .whf-hauptfilter {
	display: inline-flex;
	gap: 0.4em;
	background: var(--whf-bg-alt);
	border: 1px solid var(--whf-border);
	border-radius: var(--whf-radius);
	padding: 0.35em;
	margin: 0 0 1.4em;
}

.wohnungsfinder-app .whf-hauptfilter__btn {
	appearance: none;
	border: none;
	background: transparent;
	color: var(--whf-text);
	font: inherit;
	font-weight: 600;
	font-size: 1rem;
	padding: 0.65em 1.4em;
	border-radius: calc(var(--whf-radius) - 1px);
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.wohnungsfinder-app .whf-hauptfilter__btn.is-active {
	background: var(--whf-accent);
	color: var(--whf-text);
}

.wohnungsfinder-app .whf-hauptfilter__btn:hover:not(.is-active) {
	background: rgba(143, 175, 138, 0.25);
}

/* -----------------------------------------------------------------------
   Weitere Filter
   ----------------------------------------------------------------------- */

.wohnungsfinder-app .whf-filterbar {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 1em 1.4em;
	margin: 0 0 1em;
}

.wohnungsfinder-app .whf-field-group {
	display: flex;
	flex-direction: column;
	min-width: 150px;
}


/*
 * Filtergruppen sind Flex-Container. display: flex würde das
 * hidden-Attribut überstimmen, deshalb hier ausdrücklich zurücksetzen.
 */
.wohnungsfinder-app .whf-field-group[hidden] {
	display: none;
}

/*
 * Die Preisgruppen brauchen mehr Breite als die übrigen Filter, weil in
 * ihrer Kopfzeile Label und Betrag nebeneinander stehen.
 */
.wohnungsfinder-app .whf-field-group--price {
	min-width: 210px;
}

/*
 * Eine einzige Klasse für sämtliche Filterlabels (Stock, Ausrichtung,
 * Status, Kaufpreis von/bis, Sortieren nach), damit alle garantiert
 * identisch aussehen. Der Abstand zum Eingabefeld wird bewusst hier über
 * margin-bottom festgelegt statt über eine gap auf dem Elternelement, damit
 * die Klasse allein für die komplette Optik verantwortlich ist.
 */
.wohnungsfinder-app .whf-filter-label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--whf-label);
	margin: 0 0 6px;
	white-space: nowrap;
}

.wohnungsfinder-app .whf-field-group select,
.wohnungsfinder-app .whf-field-group input:not([type="range"]) {
	font: inherit;
	font-size: 0.95rem;
	color: var(--whf-text);
	background: #fff;
	border: 1px solid var(--whf-border);
	border-radius: var(--whf-radius);
	padding: 0 0.7em;
	height: var(--whf-control-height);
}

/* -----------------------------------------------------------------------
   Preisregler
   ----------------------------------------------------------------------- */

/*
 * Die Regler bekommen bewusst keinen Rahmen und keine Polsterung wie die
 * übrigen Felder. Ihre Höhe wird an die der Selects angeglichen, damit die
 * Filterleiste auf einer Linie bleibt.
 */
.wohnungsfinder-app .whf-range {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: var(--whf-control-height);
	margin: 0;
	padding: 0;
	background: transparent;
	border: none;
	cursor: pointer;
	accent-color: var(--whf-accent-dark);
}

.wohnungsfinder-app .whf-range::-webkit-slider-runnable-track {
	height: 4px;
	border-radius: 2px;
	background: var(--whf-border);
}

.wohnungsfinder-app .whf-range::-moz-range-track {
	height: 4px;
	border-radius: 2px;
	background: var(--whf-border);
}

.wohnungsfinder-app .whf-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--whf-accent-dark);
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px var(--whf-border);
	/* Zentriert den Griff auf der 4px hohen Spur. */
	margin-top: -7px;
}

.wohnungsfinder-app .whf-range::-moz-range-thumb {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--whf-accent-dark);
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px var(--whf-border);
}

/*
 * Label und aktueller Wert stehen nebeneinander in einer Kopfzeile. Dadurch
 * hat die Preisgruppe genau zwei Kinder wie die übrigen Filtergruppen und
 * die Filterleiste bleibt trotz align-items: end auf einer Linie.
 */
.wohnungsfinder-app .whf-range-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.8em;
	/* Identischer Abstand wie beim einfachen Label, bewusst in px, weil sich
	   em hier auf eine andere Schriftgröße bezöge. */
	margin: 0 0 6px;
	line-height: 1.3;
}

.wohnungsfinder-app .whf-range-head .whf-filter-label {
	margin: 0;
}

.wohnungsfinder-app .whf-range-value {
	font-size: 13px;
	font-weight: 600;
	color: var(--whf-text);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	/* Gleiche Zeilenhöhe wie das Label, sonst wird die Kopfzeile höher als
	   ein einfaches Label und die Filterleiste gerät aus der Linie. */
	line-height: 1.3;
}

/*
 * Ist ein Regler vom Anschlag weg bewegt, wird sein Wert farblich
 * hervorgehoben. Die Klasse setzt das JavaScript, bewusst statt eines
 * :has()-Selektors, der in älteren Safari-Versionen fehlt.
 */
.wohnungsfinder-app .whf-range-value.is-active {
	color: var(--whf-accent-dark);
}

.wohnungsfinder-app .whf-field-group select.is-active,
.wohnungsfinder-app .whf-field-group input:not([type="range"]).is-active {
	border-color: var(--whf-accent-dark);
	box-shadow: inset 0 0 0 1px var(--whf-accent-dark);
}

.wohnungsfinder-app .whf-reset {
	appearance: none;
	background: transparent;
	border: 1px solid var(--whf-text);
	color: var(--whf-text);
	font: inherit;
	font-weight: 600;
	font-size: 0.9rem;
	padding: 0.6em 1.1em;
	border-radius: var(--whf-radius);
	cursor: pointer;
	align-self: end;
	transition: background-color 0.15s ease;
}

.wohnungsfinder-app .whf-reset:hover {
	background: rgba(26, 42, 63, 0.08);
}

.wohnungsfinder-app .whf-count {
	font-size: 0.9rem;
	color: var(--whf-muted);
	margin: 0 0 0.8em;
	min-height: 1.2em;
}

/* -----------------------------------------------------------------------
   Tabelle
   ----------------------------------------------------------------------- */

/*
 * Textlicher Hinweis auf die horizontale Scrollbarkeit. Standardmäßig
 * ausgeblendet, wird nur in der Smartphone-Media-Query eingeblendet.
 */
.wohnungsfinder-app .whf-scroll-hint {
	display: none;
	font-size: 0.82rem;
	color: var(--whf-text);
	opacity: 0.7;
	margin: 0 0 0.6em;
}

/*
 * Container für den Scrollbereich. position: relative dient als Bezug für
 * den Fade am rechten Rand.
 */
.wohnungsfinder-app .whf-table-outer {
	position: relative;
}

/*
 * Fade am rechten Rand als Hinweis, dass rechts noch Inhalte folgen. Wird
 * per Klasse gesteuert, die das JavaScript abhängig von der Scrollposition
 * setzt. pointer-events: none, damit das Wischen darüber nicht blockiert
 * wird.
 */
.wohnungsfinder-app .whf-table-outer::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 28px;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.2s ease;
	background: linear-gradient(to right, rgba(26, 42, 63, 0), rgba(26, 42, 63, 0.13));
}

.wohnungsfinder-app .whf-table-outer.whf-has-more::after {
	opacity: 0;
}

@media (max-width: 767px) {
	.wohnungsfinder-app .whf-table-outer.whf-has-more::after {
		opacity: 1;
	}
}

.wohnungsfinder-app .whf-table-wrap {
	overflow-x: auto;
}

.wohnungsfinder-app .whf-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 0.95rem;
}

/*
 * Alle Zellrahmen zunächst auf 0 zurücksetzen. Im collapsed Border-Modell
 * hat die Border einer einzelnen Zelle Vorrang vor einer Border auf tr oder
 * table, das unterdrückt zuverlässig auch vom Theme injizierte vertikale
 * Linien. Sichtbare Trennlinien werden weiter unten gezielt nur als
 * border-bottom wieder ergänzt.
 */
.wohnungsfinder-app .whf-table th,
.wohnungsfinder-app .whf-table td {
	border-style: solid;
	border-width: 0;
}

.wohnungsfinder-app .whf-table thead th {
	background: var(--whf-header-bg);
	color: var(--whf-header-text);
	font-weight: 600;
	font-size: 0.82rem;
	letter-spacing: 0.03em;
	text-align: left;
	padding: 0.85em 0.9em;
	white-space: nowrap;
	/* Dezente Abgrenzung zur ersten Wohnungszeile, hell statt dunkel, da der
	   Tabellenkopf selbst einen dunklen Hintergrund hat. */
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

/*
 * Sämtliche Überschriften im Tabellenkopf sind linksbündig. Die Klasse
 * whf-col-num bleibt am th erhalten (sie wird für nichts anderes gebraucht),
 * setzt hier aber bewusst keine rechtsbündige Ausrichtung mehr.
 */
.wohnungsfinder-app .whf-table thead th.whf-col-num,
.wohnungsfinder-app .whf-table thead th.whf-col-top {
	text-align: left;
}

.wohnungsfinder-app .whf-sortbtn {
	appearance: none;
	background: transparent;
	border: none;
	color: inherit;
	font: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	text-align: left;
	padding: 0;
	cursor: pointer;
}

/*
 * Sortierbare Spalten tragen dauerhaft einen dezenten Doppelpfeil, damit
 * erkennbar ist, dass sich die Spalte anklicken lässt. Ist nach ihr
 * sortiert, zeigt der Pfeil die Richtung an und wird voll deckend.
 */
.wohnungsfinder-app .whf-sortbtn::after {
	content: " \2195";
	opacity: 0.45;
}

.wohnungsfinder-app th[data-whf-sortcol][aria-sort="ascending"] .whf-sortbtn::after {
	content: " \2191";
	opacity: 1;
}

.wohnungsfinder-app th[data-whf-sortcol][aria-sort="descending"] .whf-sortbtn::after {
	content: " \2193";
	opacity: 1;
}

.wohnungsfinder-app .whf-sortbtn:hover::after {
	opacity: 1;
}

.wohnungsfinder-app .whf-table tbody tr {
	background: var(--whf-bg);
}

.wohnungsfinder-app .whf-table tbody tr:nth-child(even) {
	background: var(--whf-bg-alt);
}

/*
 * text-align wird hier explizit gesetzt. Ohne diese Angabe greift bei
 * Themes, die eine eigene Regel für td-Elemente mitbringen (häufig
 * text-align: center), deren Ausrichtung durch.
 */
.wohnungsfinder-app .whf-table td {
	padding: 0.8em 0.9em;
	vertical-align: middle;
	text-align: left;
	border-bottom-width: 1px;
	border-color: var(--whf-row-border);
}

/*
 * Zahlenspalten stehen ebenfalls linksbündig, damit Wert und zugehörige
 * Überschrift exakt an derselben Kante beginnen. tabular-nums sorgt
 * weiterhin für gleich breite Ziffern, sodass die Werte trotz
 * Linksbündigkeit sauber untereinander stehen.
 */
.wohnungsfinder-app .whf-table td.whf-col-num {
	text-align: left;
	font-variant-numeric: tabular-nums;
}

/*
 * Die Top-Spalte hat bewusst KEINE eigene Hintergrundfarbe. Sie übernimmt
 * den Zebra-Hintergrund ihrer Zeile, damit jede Wohnungszeile optisch eine
 * durchgehende Einheit bildet. Hervorgehoben wird die Top-Nummer nur noch
 * über Schriftstärke und Schriftgröße.
 */
.wohnungsfinder-app .whf-table td.whf-col-top {
	text-align: left;
	font-weight: 600;
	font-size: 1.02em;
}

/* Statuspunkte */
.wohnungsfinder-app .whf-status {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	font-weight: 600;
	font-size: 0.9em;
}

.wohnungsfinder-app .whf-status::before {
	content: "";
	width: 0.6em;
	height: 0.6em;
	border-radius: 50%;
	background: currentColor;
	flex-shrink: 0;
}

.wohnungsfinder-app .whf-status--verfuegbar {
	color: var(--whf-accent-dark);
}

.wohnungsfinder-app .whf-status--reserviert,
.wohnungsfinder-app .whf-status--verkauft {
	color: var(--whf-muted);
	font-weight: 500;
}

/* Kontakt-Button */
.wohnungsfinder-app .whf-btn {
	display: inline-block;
	background: transparent;
	border: 1px solid var(--whf-accent-dark);
	color: var(--whf-text);
	font-weight: 600;
	font-size: 0.9em;
	text-decoration: none;
	padding: 0.5em 1em;
	border-radius: var(--whf-radius);
	white-space: nowrap;
	transition: background-color 0.15s ease;
}

.wohnungsfinder-app .whf-btn:hover {
	background: var(--whf-accent);
}

.wohnungsfinder-app .whf-sold-label {
	color: var(--whf-muted);
	font-size: 0.9em;
	font-style: italic;
}

.wohnungsfinder-app .whf-empty {
	background: var(--whf-bg-alt);
	border: 1px solid var(--whf-border);
	border-radius: var(--whf-radius);
	padding: 1.4em;
	text-align: center;
	color: var(--whf-text);
	margin: 0.5em 0 0;
}

.wohnungsfinder-app .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

/* -----------------------------------------------------------------------
   Fokuszustände (Barrierefreiheit)
   ----------------------------------------------------------------------- */

.wohnungsfinder-app button:focus-visible,
.wohnungsfinder-app a:focus-visible,
.wohnungsfinder-app select:focus-visible,
.wohnungsfinder-app input:focus-visible {
	outline: 2px solid var(--whf-text);
	outline-offset: 2px;
}

/* -----------------------------------------------------------------------
   Tablet: etwas kompakter, Tabelle bleibt eine Tabelle
   ----------------------------------------------------------------------- */

@media (max-width: 1024px) {
	.wohnungsfinder-app .whf-table {
		font-size: 0.88rem;
	}

	.wohnungsfinder-app .whf-table thead th,
	.wohnungsfinder-app .whf-table td {
		padding: 0.65em 0.6em;
	}
}

/* -----------------------------------------------------------------------
   Smartphone: Tabelle bleibt eine echte Tabelle und wird horizontal
   scrollbar. Die erste Spalte (Top) bleibt dabei links fixiert, damit beim
   Wischen immer erkennbar ist, zu welcher Wohnung eine Zeile gehört.
   ----------------------------------------------------------------------- */

@media (max-width: 767px) {
	.wohnungsfinder-app .whf-filterbar {
		flex-direction: column;
		align-items: stretch;
	}

	.wohnungsfinder-app .whf-field-group,
	.wohnungsfinder-app .whf-field-group--price {
		min-width: 0;
		width: 100%;
	}

	.wohnungsfinder-app .whf-reset {
		align-self: stretch;
		text-align: center;
	}

	/* Textlicher Scroll-Hinweis, nur auf kleinen Displays sichtbar. */
	.wohnungsfinder-app .whf-scroll-hint:not([hidden]) {
		display: block;
	}

	/*
	 * Der Scroll-Container begrenzt sich strikt auf die Breite seines
	 * Elternelements. Ohne max-width würde die breite Tabelle den Container
	 * aufziehen und die gesamte Seite horizontal scrollbar machen.
	 */
	.wohnungsfinder-app .whf-table-wrap {
		overflow-x: auto;
		overflow-y: hidden;
		max-width: 100%;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
	}

	/*
	 * width: auto statt 100%, damit die Summe der Spalten-Mindestbreiten die
	 * tatsächliche Tabellenbreite bestimmt und der Scrollbereich entsteht.
	 */
	.wohnungsfinder-app .whf-table {
		width: auto;
		min-width: 100%;
	}

	.wohnungsfinder-app .whf-table thead th,
	.wohnungsfinder-app .whf-table td {
		white-space: nowrap;
	}

	/*
	 * Sticky-Spalte. Die Hintergrundfarbe wird weiter unten je Zeile
	 * explizit gesetzt: eine transparente Sticky-Zelle würde die darunter
	 * durchscrollenden Zellen durchscheinen lassen.
	 */
	.wohnungsfinder-app .whf-table th.whf-col-top,
	.wohnungsfinder-app .whf-table td.whf-col-top {
		position: sticky;
		left: 0;
	}

	/*
	 * Layering: die Kopfzelle links oben liegt über allem, danach die
	 * Sticky-Zellen der Zeilen, darunter die normal scrollenden Kopfzellen.
	 */
	.wohnungsfinder-app .whf-table thead th.whf-col-top {
		z-index: 3;
	}

	.wohnungsfinder-app .whf-table tbody td.whf-col-top {
		z-index: 2;
	}

	/*
	 * Die übrigen Kopfzellen brauchen lediglich einen Stapelkontext für den
	 * z-index. position: relative statt sticky, weil das in iOS Safari
	 * deutlich unempfindlicher ist und hier kein Sticky-Verhalten benötigt
	 * wird.
	 */
	.wohnungsfinder-app .whf-table thead th {
		position: relative;
		z-index: 1;
	}

	/*
	 * Zebra-Farben werden auf der Sticky-Zelle wiederholt. nth-child richtet
	 * sich nach der aktuell sichtbaren Reihenfolge im DOM, die Farben bleiben
	 * nach Filtern und Sortieren daher automatisch korrekt.
	 */
	.wohnungsfinder-app .whf-table tbody tr:nth-child(odd) td.whf-col-top {
		background-color: var(--whf-bg);
	}

	.wohnungsfinder-app .whf-table tbody tr:nth-child(even) td.whf-col-top {
		background-color: var(--whf-bg-alt);
	}

	/* Lesbare Mindestbreiten je Spalte. */
	.wohnungsfinder-app .whf-table th:nth-child(1),
	.wohnungsfinder-app .whf-table td:nth-child(1) {
		min-width: 80px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(2),
	.wohnungsfinder-app .whf-table td:nth-child(2) {
		min-width: 70px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(3),
	.wohnungsfinder-app .whf-table td:nth-child(3) {
		min-width: 90px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(4),
	.wohnungsfinder-app .whf-table td:nth-child(4) {
		min-width: 130px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(5),
	.wohnungsfinder-app .whf-table td:nth-child(5) {
		min-width: 130px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(6),
	.wohnungsfinder-app .whf-table td:nth-child(6),
	.wohnungsfinder-app .whf-table th:nth-child(7),
	.wohnungsfinder-app .whf-table td:nth-child(7),
	.wohnungsfinder-app .whf-table th:nth-child(9),
	.wohnungsfinder-app .whf-table td:nth-child(9) {
		min-width: 110px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(8),
	.wohnungsfinder-app .whf-table td:nth-child(8) {
		min-width: 120px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(10),
	.wohnungsfinder-app .whf-table td:nth-child(10),
	.wohnungsfinder-app .whf-table th:nth-child(11),
	.wohnungsfinder-app .whf-table td:nth-child(11) {
		min-width: 140px;
	}

	.wohnungsfinder-app .whf-table th:nth-child(12),
	.wohnungsfinder-app .whf-table td:nth-child(12) {
		min-width: 165px;
	}
}

/* -----------------------------------------------------------------------
   Reduzierte Bewegung respektieren
   ----------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	.wohnungsfinder-app * {
		transition: none !important;
	}
}

/* -----------------------------------------------------------------------
   Reset gegen aggressive Theme-Styles (Salient, Astra, Divi & Co.)
   Bewusst am Dateiende, damit eigene Regeln nicht überschrieben werden.
   ----------------------------------------------------------------------- */

.wohnungsfinder-app button,
.wohnungsfinder-app a.whf-btn {
	font-family: inherit !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	text-shadow: none !important;
	box-shadow: none !important;
	background-image: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

/*
 * Viele Themes definieren eigene Regeln für label-Elemente in Formularen.
 * Damit sämtliche Filterlabels garantiert identisch bleiben, werden die
 * relevanten Werte hier abschließend festgeschrieben.
 */
.wohnungsfinder-app .whf-filter-label {
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	color: #acacac !important;
}

/*
 * Ebenso können Themes eine eigene Ausrichtung für th-Elemente erzwingen
 * (häufig center). Der Tabellenkopf bleibt deshalb erzwungen linksbündig.
 */
.wohnungsfinder-app .whf-table thead th {
	text-align: left !important;
}

/*
 * Abschließende Absicherung gegen vom Theme gesetzte senkrechte
 * Trennlinien zwischen den Spalten.
 */
.wohnungsfinder-app .whf-table th,
.wohnungsfinder-app .whf-table td {
	border-left: 0 !important;
	border-right: 0 !important;
}
