/* ==========================================================================
   Funkwelt – Komponenten-Styles (Variante C «Magazin dunkel»)
   Farben, Schriften und Abstände kommen aus theme.json (CSS-Variablen).
   ========================================================================== */

:root {
	--fw-base: var(--wp--preset--color--base, #0b1426);
	--fw-surface: var(--wp--preset--color--surface, #122039);
	--fw-surface-2: var(--wp--preset--color--surface-2, #172745);
	--fw-line: var(--wp--preset--color--line, #223558);
	--fw-line-strong: var(--wp--preset--color--line-strong, #2a3f66);
	--fw-text: var(--wp--preset--color--contrast, #eceff3);
	--fw-text-soft: var(--wp--preset--color--text-soft, #c4ccd6);
	--fw-muted: var(--wp--preset--color--muted, #9aa4b1);
	--fw-faint: var(--wp--preset--color--faint, #8f9aab);
	--fw-accent: var(--wp--preset--color--accent, #84bdf5);
	--fw-accent-hover: var(--wp--preset--color--accent-hover, #b5d6f9);
	--fw-accent-deep: var(--wp--preset--color--accent-deep, #1a3156);
	--fw-accent-line: var(--wp--preset--color--accent-line, #2f5689);
	--fw-accent-ink: var(--wp--preset--color--accent-ink, #08121f);
	--fw-good: var(--wp--preset--color--good, #4ade80);
	--fw-fair: var(--wp--preset--color--fair, #fbbf24);
	--fw-poor: var(--wp--preset--color--poor, #f87171);
	--fw-mono: var(--wp--preset--font-family--mono, ui-monospace, monospace);
	--fw-serif: var(--wp--preset--font-family--serif, Georgia, serif);
	--fw-r-s: 10px;
	--fw-r-m: 14px;
	--fw-r-l: 16px;
	color-scheme: dark;
}

body { -webkit-font-smoothing: antialiased; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important;
	width: 1px; word-wrap: normal !important;
}

:where(a, button, input, select, textarea):focus-visible {
	outline: 2px solid var(--fw-accent);
	outline-offset: 2px;
}

/* ---------- Kopfzeile ---------- */
.fwt-site-header { border-bottom: 1px solid var(--fw-line); }
:root { --fwt-hs: 1.5; --fwt-ns: 1; } /* Skalierung Kopfzeile: Logo/Wortmarke/Suche (hs), Menü (ns) */
.fwt-site-header-inner { min-height: calc(64px * var(--fwt-hs)); gap: 10px 32px; padding-block: calc(6px * var(--fwt-hs)); }
.fwt-brand { gap: calc(10px * var(--fwt-hs)); align-items: center; }
.fwt-brand .wp-block-site-logo img { width: calc(40px * var(--fwt-hs)); height: calc(40px * var(--fwt-hs)); }
.fwt-wordmark { margin: 0; font-family: var(--fw-serif); font-weight: 700; font-size: calc(1.375rem * var(--fwt-hs)); line-height: 1; }
.fwt-wordmark a { color: var(--fw-text); text-decoration: none; }
.fwt-wordmark a:hover { color: var(--fw-accent); text-decoration: none; }
.fwt-callsign { margin: 0; font-family: var(--fw-mono); font-size: 0.8125rem; color: var(--fw-muted); }
.fwt-brand .fwt-callsign { font-size: calc(1.375rem * var(--fwt-hs)); line-height: 1; color: var(--fw-text-soft); letter-spacing: 0.02em; }
.fwt-nav { flex: 1 1 auto; gap: 4px calc(16px * var(--fwt-ns)); font-size: calc(1rem * var(--fwt-ns)); }
/* Ab 600 px (Core-Umbruch des Menüs): Logo und Suche in der ersten Zeile, Menü als eigene Zeile darunter.
   Neun Punkte mit Symbolen passen nicht neben Logo und Suche in die 1320 px breite Zeile. */
@media (min-width: 600px) {
	.fwt-nav { order: 3; flex-basis: 100%; }
	.fwt-site-header-search { order: 2; }
	.fwt-site-header-inner { row-gap: 2px; }
}
.fwt-nav .current-menu-item > a, .fwt-nav [aria-current="page"] { color: var(--fw-text); }
/* Sprachumschalter DE | EN ([fwt_sprache]), steht vor der Suche */
.fwt-lang { display: flex; align-items: center; gap: 6px; font-family: var(--fw-mono); font-size: 0.875rem; line-height: 1; }
.fwt-lang a { color: var(--fw-text-soft); text-decoration: none; padding: 6px 4px; }
.fwt-lang a:hover { color: var(--fw-accent); text-decoration: underline; }
.fwt-lang-current { color: var(--fw-text); font-weight: 600; padding: 6px 4px; }
.fwt-lang-sep { color: var(--fw-muted); }
@media (min-width: 600px) { .fwt-site-header-inner > .fwt-lang { order: 2; margin-left: auto; } }
/* Handy: nur die andere Sprache als Link, sonst verdrängt der Umschalter das Logo */
@media (max-width: 599px) { .fwt-lang-current, .fwt-lang-sep { display: none; } }
.wp-block-navigation__responsive-container.is-menu-open {
	background: var(--fw-base) !important; color: var(--fw-text) !important;
}
/* Untermenü (Desktop-Dropdown ab 600 px, darunter übernimmt das Overlay): Core liefert weiss auf schwarz, hier dunkle Karte */
@media (min-width: 600px) {
	.fwt-nav .wp-block-navigation__submenu-container {
		background: var(--fw-surface) !important; color: var(--fw-text) !important;
		border: 1px solid var(--fw-line-strong) !important; border-radius: var(--fw-r-s);
		padding: 6px !important; min-width: 240px !important;
	}
	.fwt-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		padding: 8px 12px; border-radius: 8px; color: var(--fw-text-soft); white-space: nowrap;
	}
	.fwt-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
	.fwt-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible {
		background: var(--fw-surface-2); color: var(--fw-accent);
	}
}
.fwt-nav .wp-block-navigation__submenu-icon { color: var(--fw-muted); }

/* Symbole vor den Hauptpunkten (Inline-SVG als Maske, färbt sich mit dem Text; Untermenüs ohne) */
.fwt-nav .wp-block-navigation__container > .fwt-mi > .wp-block-navigation-item__content::before,
.fwt-nav .wp-block-navigation__container > .fwt-mi > .wp-block-navigation__submenu-container ~ *::before { content: none; }
.fwt-nav .wp-block-navigation__container > .fwt-mi > .wp-block-navigation-item__content::before {
	content: ""; display: inline-block; width: 0.95em; height: 0.95em; margin-right: 0.45em; vertical-align: -0.12em;
	background-color: currentColor; opacity: 0.8;
	-webkit-mask: var(--fwt-mi) center / contain no-repeat; mask: var(--fwt-mi) center / contain no-repeat;
}
.fwt-mi-start { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M3 10.5 12 3l9 7.5V21h-6v-6H9v6H3z%22/></svg>"); }
.fwt-mi-artikel { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M4 4h16v16H4zM8 8h8M8 12h8M8 16h5%22/></svg>"); }
.fwt-mi-afu { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M4.9 16.1a7 7 0 0 1 0-9.9M7.8 13.2a3 3 0 0 1 0-4.2M16.2 13.2a3 3 0 0 0 0-4.2M19.1 16.1a7 7 0 0 0 0-9.9M12 11v11M12 11m-1.5 0a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0%22/></svg>"); }
.fwt-mi-outdoor { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M8 3l4 8 5-5 5 15H2L8 3z%22/></svg>"); }
.fwt-mi-cb { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M7 8h10v12a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2zM10 2v6M14 5v3M10 12h4%22/></svg>"); }
.fwt-mi-nuetzliches { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z%22/></svg>"); }
.fwt-mi-antenne { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M4 5h16M6 9h12M8 13h8M12 13v9%22/></svg>"); }
.fwt-mi-software { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M4 5h16v11H4zM2 19h20%22/></svg>"); }
.fwt-mi-ueber { --fwt-mi: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><path d=%22M12 8m-4 0a4 4 0 1 0 8 0a4 4 0 1 0-8 0M4 21a8 8 0 0 1 16 0%22/></svg>"); }
.fwt-site-header-search .wp-block-search__button {
	width: calc(44px * var(--fwt-hs)); height: calc(44px * var(--fwt-hs)); padding: 0; border-radius: 999px;
	border: 1px solid var(--fw-line-strong); background: var(--fw-surface); color: var(--fw-text);
}
.fwt-site-header-search .wp-block-search__button { display: inline-flex; align-items: center; justify-content: center; margin: 0; }
.fwt-site-header-search .wp-block-search__button svg { fill: currentColor; width: calc(20px * var(--fwt-hs)); height: calc(20px * var(--fwt-hs)); min-width: 0; min-height: 0; }
.fwt-site-header-search .wp-block-search__input { border-radius: 22px; }

/* Logo: schwarz auf weiss → hell auf dunkel */
.is-style-fwt-invert img {
	filter: invert(1);
	mix-blend-mode: screen;
	border-radius: 50%;
}

/* ---------- Hauptbereich ---------- */
.fwt-main { padding-top: 1.75rem; padding-bottom: 3rem; }
.fwt-main > .screen-reader-text + * { margin-block-start: 0 !important; }
.fwt-main > * + * { margin-block-start: 2.25rem; }
.fwt-page-title { margin-bottom: 0.5rem; }
.fwt-section-title { font-size: var(--wp--preset--font-size--xl); margin-bottom: 0; }
.fwt-eyebrow {
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.875rem !important; font-weight: 500 !important;
	text-transform: uppercase; letter-spacing: 0.08em; color: var(--fw-muted) !important;
	margin: 0 0 0.75rem;
}

/* Meta-Zeile: Datum · Rubrik */
.fwt-meta { gap: 6px 10px; font-family: var(--fw-mono); font-size: 0.8125rem; color: var(--fw-muted); }
.fwt-meta > * { margin: 0; }
.fwt-meta .wp-block-post-terms a { color: var(--fw-accent); }
.fwt-meta > * + *::before { content: "·"; margin-right: 10px; color: var(--fw-faint); }

/* ---------- Startseite: Aufmacher + Raster links, Live-Seitenleiste rechts ---------- */
.fwt-home { gap: 48px; }
.fwt-home-main > * + * { margin-block-start: 2.25rem; }
.fwt-home-main > .fwt-section-title { margin-block-start: 2.75rem; }
.fwt-hero-query .wp-block-post-template { margin: 0; }
.fwt-hero-query .wp-block-post { display: flex; flex-direction: column; gap: 14px; }
.fwt-hero-image img { border-radius: var(--fw-r-l); }
.fwt-hero-title { font-size: clamp(1.75rem, 1.2rem + 1.6vw, 2.4rem) !important; font-weight: 700; line-height: 1.15; margin: 0; }
.fwt-hero-excerpt { color: var(--fw-text-soft); font-size: 1.0625rem; max-width: 64ch; }
.fwt-hero-excerpt .wp-block-post-excerpt__more-link { font-weight: 600; }

/* ---------- Beitragskarten ---------- */
.fwt-grid-query .wp-block-post-template { gap: 24px; }
.fwt-grid-query .wp-block-post { display: flex; flex-direction: column; gap: 10px; }
.fwt-thumb img, .fwt-thumb { border-radius: 12px; }
.fwt-thumb { background: var(--fw-surface-2); }
.fwt-thumb-placeholder {
	aspect-ratio: 16 / 9; margin: 0; display: flex; align-items: center; justify-content: center;
	border: 1px dashed var(--fw-line-strong);
}
.fwt-thumb-placeholder a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; text-decoration: none; }
.fwt-thumb-placeholder-mark { font-family: var(--fw-serif); font-weight: 700; font-size: 1.25rem; color: var(--fw-faint); letter-spacing: 0.02em; }
.fwt-card-title { font-size: 1.25rem !important; line-height: 1.3; margin: 0; }
.fwt-card-title a { color: var(--fw-text); }

/* Seite «Alle Beiträge»: Rubriken-Chips über dem Raster */
.fwt-artikel-rubriken .fwt-chipset > * { max-width: none; }
.fwt-artikel-rubriken .fwt-eyebrow { display: none; }

/* Pagination */
.fwt-pagination { margin-top: 2rem; font-family: var(--fw-mono); font-size: 0.875rem; }
.fwt-pagination a, .fwt-pagination .page-numbers {
	padding: 8px 12px; border-radius: var(--fw-r-s); border: 1px solid var(--fw-line-strong);
	color: var(--fw-text-soft); text-decoration: none;
}
.fwt-pagination .current { background: var(--fw-accent); color: var(--fw-accent-ink); border-color: var(--fw-accent); }

/* ---------- Karten (Block-Stil «Karte») ---------- */
.is-style-fwt-card {
	background: var(--fw-surface); border: 1px solid var(--fw-line); border-radius: var(--fw-r-m);
	padding: 16px !important;
}
.is-style-fwt-card > * { margin-block: 0; }
.is-style-fwt-card > * + * { margin-block-start: 8px; }
.is-style-fwt-card-accent {
	background: var(--fw-accent-deep); border: 1px solid var(--fw-accent-line); border-radius: var(--fw-r-l);
	padding: 22px 24px !important; color: #dbeafd;
}
.fwt-card-heading { font-family: var(--wp--preset--font-family--sans) !important; font-size: 0.9375rem !important; font-weight: 600 !important; }
.fwt-status-dot::before { content: "●"; color: var(--fw-good); margin-right: 6px; }
.fwt-mono { font-family: var(--fw-mono); font-size: 0.875rem; color: var(--fw-text-soft); }
.fwt-small { font-size: 0.8125rem; color: var(--fw-muted); }
.fwt-dx .wp-block-buttons { gap: 8px; margin-top: 12px !important; }
.fwt-dx .wp-block-button__link { padding: 8px 14px; font-size: 0.8125rem; }

.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent; color: var(--fw-accent); border: 1px solid var(--fw-accent);
}

/* ---------- Seitenleiste Live-Daten ---------- */
.fwt-live { gap: 12px; }
.fwt-live > * { width: 100%; margin: 0 !important; }
/* Abzeichen HB9HJI (wie auf der alten Seite unter den Live-Daten) */
.fwt-badge { display: flex; justify-content: center; padding: 20px 0 8px; }
.fwt-badge img { width: 220px; height: 220px; border-radius: 50%; }
.fwt-live .fwt-badge { margin: 0 auto !important; width: auto; }

/* Suchfeld */
.wp-block-search__input, .wp-block-search .wp-block-search__inside-wrapper {
	background: var(--fw-surface); color: var(--fw-text);
	border-color: var(--fw-line-strong); border-radius: 22px;
}
.fwt-search .wp-block-search__inside-wrapper { padding: 4px; border: 1px solid var(--fw-line-strong); }
.fwt-search .wp-block-search__input { border: 0; background: transparent; padding: 8px 12px; min-height: 36px; }
.fwt-search .wp-block-search__button {
	border-radius: 18px; background: var(--fw-accent); color: var(--fw-accent-ink); border: 0; padding: 0 12px;
}

/* ---------- Chips ---------- */
.fwt-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.fwt-chips a, .is-style-fwt-chips a {
	display: inline-block; padding: 9px 14px; border-radius: 999px;
	background: var(--fw-surface); border: 1px solid var(--fw-line-strong);
	color: var(--fw-text); font-size: 0.875rem; text-decoration: none;
}
.fwt-chips a:hover, .is-style-fwt-chips a:hover { border-color: var(--fw-accent); color: var(--fw-accent); text-decoration: none; }
.fwt-chips-accent a { background: var(--fw-accent-deep); border-color: var(--fw-accent-line); color: #dbeafd; }
.is-style-fwt-chips .wp-block-post-terms__separator { display: none; }
.is-style-fwt-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.fwt-chip-row { border-top: 1px solid var(--fw-line); padding-top: 1.75rem; gap: 24px; }

/* ---------- Artikel ---------- */
.fwt-single { gap: 48px; }
.fwt-article { max-width: 760px; }
.fwt-aside { position: sticky; top: 20px; align-self: flex-start; }
.fwt-article-title, .fwt-page-title.wp-block-post-title { font-size: var(--wp--preset--font-size--xxxl) !important; font-weight: 700; line-height: 1.12; margin: 0.5rem 0 0.75rem; }
.fwt-byline { gap: 8px; color: var(--fw-muted); font-size: 0.875rem; margin-bottom: 1.5rem; }
.fwt-byline > * { margin: 0; }
.fwt-prose {
	font-family: var(--fw-serif); font-size: 1.1875rem; line-height: 1.7; color: #dde2e8;
}
.fwt-prose :where(h2, h3, h4) { margin-top: 2.25rem; }
.fwt-prose :where(ul, ol) { padding-left: 1.4em; }
.fwt-prose :where(table) { font-family: var(--wp--preset--font-family--sans); font-size: 0.9375rem; }
.fwt-prose :where(code, kbd) { font-family: var(--fw-mono); font-size: 0.875em; background: var(--fw-surface); padding: 0.1em 0.35em; border-radius: 6px; }
.fwt-prose :where(figcaption) { font-family: var(--wp--preset--font-family--sans); }
/* Links im Fliesstext dauerhaft unterstrichen (Review F04, WCAG 1.4.1): nur redaktionelle Blöcke,
   nicht Plugin-Ausgaben, Knöpfe, Karten oder Navigation. */
.wp-block-post-content > :is(p, ul, ol, blockquote, .wp-block-quote, .wp-block-table, .wp-block-details) a:not(.wp-block-button__link),
.wp-block-post-content > figure figcaption a,
.wp-block-post-content > :is(.wp-block-group, .wp-block-columns, .wp-block-media-text) :is(p, li, figcaption, td) a:not(.wp-block-button__link),
.wp-block-comment-content a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
	text-decoration-color: color-mix(in srgb, currentColor 55%, transparent);
}
.wp-block-post-content > :is(p, ul, ol, blockquote, .wp-block-quote, .wp-block-table, .wp-block-details) a:not(.wp-block-button__link):hover,
.wp-block-post-content > figure figcaption a:hover,
.wp-block-post-content > :is(.wp-block-group, .wp-block-columns, .wp-block-media-text) :is(p, li, figcaption, td) a:not(.wp-block-button__link):hover,
.wp-block-comment-content a:hover {
	text-decoration-color: currentColor;
	text-decoration-thickness: 2px;
}
.fwt-tags { margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid var(--fw-line); }
.fwt-postnav { gap: 16px; margin-top: 1.5rem; }
.fwt-postnav > div:empty { display: none; }
.fwt-postnav > div {
	padding: 18px; border-radius: var(--fw-r-m); background: var(--fw-surface); border: 1px solid var(--fw-line);
	font-family: var(--fw-serif); font-weight: 600;
}
.fwt-postnav .post-navigation-link__label { display: block; font-family: var(--wp--preset--font-family--sans); font-weight: 400; font-size: 0.8125rem; color: var(--fw-muted); }

/* Yoast-Breadcrumbs */
#breadcrumbs, .yoast-breadcrumbs { font-size: 0.875rem; color: var(--fw-muted); margin: 0 0 1rem; }

/* Kommentare */
.fwt-comments { margin-top: 3rem; border-top: 1px solid var(--fw-line); padding-top: 1.5rem; }

/* ---------- Formulare (auch Contact Form 7) ---------- */
input[type="text"], input[type="email"], input[type="url"], input[type="search"], input[type="number"],
input[type="tel"], input[type="password"], select, textarea {
	background: var(--fw-surface); color: var(--fw-text);
	border: 1px solid var(--fw-line-strong); border-radius: var(--fw-r-s);
	padding: 10px 12px; font: inherit;
}
input::placeholder, textarea::placeholder { color: var(--fw-muted); opacity: 1; }
.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .wpcf7 textarea, .wpcf7 select { width: 100%; max-width: 100%; box-sizing: border-box; }
.wpcf7 .fwt-form-hinweis { font-size: 0.8125rem; color: var(--fw-muted); margin-top: 1rem; }
.wpcf7-submit, input[type="submit"], button[type="submit"] {
	background: var(--fw-accent); color: var(--fw-accent-ink); border: 0;
	border-radius: 999px; padding: 12px 20px; font-weight: 600; cursor: pointer;
}

/* ---------- Fusszeile ---------- */
.fwt-site-footer { border-top: 1px solid var(--fw-line); padding-top: 22px; padding-bottom: 22px; color: var(--fw-muted); font-size: 0.875rem; }
.fwt-site-footer p { margin: 0; }
.fwt-site-footer-brand { gap: 12px; align-items: center; }
.fwt-site-footer-brand img { opacity: 0.85; width: 32px; height: 32px; }
.fwt-site-footer-links { display: flex; gap: 20px; flex-wrap: wrap; }

/* ==========================================================================
   Plugins im dunklen Look
   ========================================================================== */

/* Funkwelt Solar & Bandbedingungen (funkwelt-solar-widget) – bringt helle Inline-Styles mit */
.fw-solar-widget {
	background: var(--fw-surface) !important; color: var(--fw-text) !important;
	border-color: var(--fw-line) !important; border-radius: var(--fw-r-m) !important;
	font-family: var(--wp--preset--font-family--sans) !important;
}
.fw-solar-widget .fw-header, .fw-solar-widget .fw-footer {
	background: transparent !important; border-color: var(--fw-line) !important;
	padding: 12px 14px; min-height: 0; font-size: 0.75rem;
}
.fw-solar-widget .fw-header strong, .fw-solar-widget .fw-band-name, .fw-solar-widget .fw-idx-val { color: var(--fw-text) !important; }
.fw-solar-widget .fw-source, .fw-solar-widget .fw-idx-label, .fw-solar-widget .fw-idx-sub,
.fw-solar-widget .fw-band-title, .fw-solar-widget .fw-utc, .fw-solar-widget .fw-footer a,
.fw-solar-widget .fw-gauge-caption { color: var(--fw-muted) !important; }
.fw-solar-widget .fw-gauge-caption strong { color: var(--fw-text) !important; }
.fw-solar-widget .fw-indices, .fw-solar-widget .fw-idx, .fw-solar-widget .fw-vhf-title { border-color: var(--fw-line) !important; }
.fw-solar-widget .fw-idx-val { font-family: var(--fw-mono); }
.fw-solar-widget .fw-bar-bg { background: var(--fw-line) !important; }
.fw-solar-widget .fw-good, .fw-solar-widget .fw-bar.fw-good { color: var(--fw-good) !important; }
.fw-solar-widget .fw-fair, .fw-solar-widget .fw-amber { color: var(--fw-fair) !important; }
.fw-solar-widget .fw-poor { color: var(--fw-poor) !important; }
.fw-solar-widget .fw-bar.fw-good { background: var(--fw-good) !important; }
.fw-solar-widget .fw-bar.fw-fair { background: var(--fw-fair) !important; }
.fw-solar-widget .fw-bar.fw-poor { background: var(--fw-poor) !important; }
.fw-solar-widget .fw-bar.fw-closed { background: var(--fw-line-strong) !important; }
.fw-solar-widget .fw-closed { color: var(--fw-faint) !important; }
.fw-solar-widget .fw-toggle-btn { background: var(--fw-surface-2) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-muted) !important; }
.fw-solar-widget .fw-toggle-btn.fw-toggle-active { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fw-solar-widget .fw-xray-warn.fw-poor { background: #3a1717 !important; border-color: #5c2424 !important; }
.fw-solar-widget .fw-xray-warn.fw-fair { background: #3a2c10 !important; border-color: #5c4516 !important; }
.fw-solar-widget svg text { fill: var(--fw-muted); }

/* Kaffee-PayPal-Widget (kaffee-paypal): helle Box → dunkle Karte, PayPal-Blau bleibt */
.kaffee-box {
	background: var(--fw-surface) !important; border: 1px solid var(--fw-line) !important;
	border-radius: var(--fw-r-m) !important; color: var(--fw-text) !important;
	font-family: var(--wp--preset--font-family--sans) !important;
}
.kaffee-select {
	background-color: var(--fw-surface-2) !important; color: var(--fw-text) !important;
	border: 1px solid var(--fw-line-strong) !important; border-radius: var(--fw-r-s) !important;
}

/* Table of Contents Plus */
#toc_container {
	background: var(--fw-surface) !important; border: 1px solid var(--fw-line) !important;
	border-radius: var(--fw-r-m); padding: 14px 18px !important; width: auto !important;
	font-family: var(--wp--preset--font-family--sans); font-size: 0.9375rem;
}
#toc_container .toc_title { color: var(--fw-muted); text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.8125rem; }
#toc_container a { color: var(--fw-accent); }

/* ---------- ISS-Tracker (iss-tracker): helles Design mit Dunkelblau → Theme-Farben ---------- */
#iss-tracker-wrap { color: var(--fw-text); }
#iss-header { border-bottom-color: var(--fw-line-strong) !important; }
#iss-qth-form label { color: var(--fw-text) !important; }
#iss-qth-display { color: var(--fw-muted) !important; }
#iss-locator-input { background: var(--fw-surface); color: var(--fw-text); border-color: var(--fw-line-strong) !important; }
#iss-locator-btn { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.iss-badge { border-width: 1px !important; }
.iss-badge-loading { background: var(--fw-surface-2) !important; color: var(--fw-muted) !important; border-color: var(--fw-line-strong) !important; }
.iss-badge-active { background: rgba(74, 222, 128, 0.15) !important; color: var(--fw-good) !important; border-color: rgba(74, 222, 128, 0.4) !important; }
.iss-badge-school { background: rgba(129, 140, 248, 0.15) !important; color: #b4bcfd !important; border-color: rgba(129, 140, 248, 0.4) !important; }
.iss-badge-inactive { background: rgba(248, 113, 113, 0.15) !important; color: var(--fw-poor) !important; border-color: rgba(248, 113, 113, 0.4) !important; }
.iss-badge-unknown { background: rgba(251, 191, 36, 0.15) !important; color: var(--fw-fair) !important; border-color: rgba(251, 191, 36, 0.4) !important; }
.iss-tile { background: var(--fw-surface) !important; border: 1px solid var(--fw-line); color: var(--fw-muted) !important; }
.iss-tile-label { opacity: 1 !important; color: var(--fw-muted); }
.iss-tile-value { color: var(--fw-poor) !important; font-family: var(--fw-mono) !important; }
.iss-tile-value.above-horizon { color: var(--fw-good) !important; }
#iss-map { border-color: var(--fw-line-strong) !important; }
#iss-tabs { border-bottom-color: var(--fw-line-strong) !important; }
.iss-tab-btn { background: var(--fw-surface) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-text-soft) !important; }
.iss-tab-btn:hover { background: var(--fw-surface-2) !important; }
.iss-tab-btn.active { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
#iss-passes-table th, #iss-aprs-table th, .iss-freq-table th { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; }
#iss-passes-table td, #iss-aprs-table td, .iss-freq-table td, .iss-freq-table th { border-color: var(--fw-line) !important; }
#iss-passes-table tr:hover, #iss-aprs-table tr:hover { background: var(--fw-surface) !important; }
#iss-passes-table .next-pass { background: var(--fw-accent-deep) !important; }
.q-excellent { background: rgba(74, 222, 128, 0.18) !important; color: var(--fw-good) !important; }
.q-good { background: rgba(129, 140, 248, 0.18) !important; color: #b4bcfd !important; }
.q-fair { background: rgba(251, 191, 36, 0.18) !important; color: var(--fw-fair) !important; }
.q-poor { background: rgba(248, 113, 113, 0.18) !important; color: var(--fw-poor) !important; }
#iss-tle-text { background: var(--fw-surface) !important; color: var(--fw-good) !important; border: 1px solid var(--fw-line); font-family: var(--fw-mono); }
.iss-loading { color: var(--fw-muted) !important; }
.iss-error { background: rgba(248, 113, 113, 0.15) !important; color: var(--fw-poor) !important; border-color: rgba(248, 113, 113, 0.4) !important; }
#iss-next-pass-countdown { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }

/* ---------- APRS-Karte (funkwelt-aprs-karte): helles Widget → dunkle Karte, Orange nur für Pins und LIVE ---------- */
.fw-aprs-widget {
	background: var(--fw-surface) !important; color: var(--fw-text) !important;
	border-color: var(--fw-line) !important; border-radius: var(--fw-r-m) !important; box-shadow: none !important;
	font-family: var(--wp--preset--font-family--sans) !important;
}
.fw-aprs-header, .fw-aprs-stations, .fw-aprs-info-bar, .fw-aprs-footer { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fw-aprs-header { border-bottom-color: var(--fw-line-strong) !important; }
.fw-aprs-title, .fw-aprs-station-name, .fw-aprs-info-item:first-child { color: var(--fw-text) !important; }
.fw-aprs-station-label { color: var(--fw-text-soft) !important; }
.fw-aprs-station-desc, .fw-aprs-info-item, .fw-aprs-footer, .fw-aprs-popup-time { color: var(--fw-muted) !important; }
.fw-aprs-station-dot { border-color: rgba(255, 255, 255, 0.25) !important; }
.fw-aprs-hours-select { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border-color: var(--fw-line-strong) !important; }
.fw-aprs-ext-link { background: var(--fw-surface-2) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-text-soft) !important; }
.fw-aprs-ext-link:hover { border-color: var(--fw-accent) !important; color: var(--fw-accent) !important; }
.fw-aprs-footer a { color: var(--fw-accent) !important; }
.fw-aprs-overlay-status, .fw-aprs-refresh-bar {
	background: rgba(18, 32, 57, 0.92) !important; color: var(--fw-text-soft) !important;
	border-color: var(--fw-line-strong) !important; box-shadow: none !important;
}

/* ---------- Aktivierungsplaner (funkwelt-aktivierungsplaner): helle Inline-Styles → dunkle Karte ---------- */
.fwpl-wrap { background: var(--fw-surface) !important; color: var(--fw-text) !important; border-color: var(--fw-line) !important; border-radius: var(--fw-r-m) !important; font-family: var(--wp--preset--font-family--sans) !important; }
.fwpl-hdr, .fwpl-tabs, .fwpl-locmap-hint, .fwpl-locmap-info { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fwpl-title, .fwpl-rc-name, .fwpl-iv, .fwpl-cl-title, .fwpl-tab-act { color: var(--fw-text) !important; }
.fwpl-rc-dist { color: var(--fw-text-soft) !important; }
.fwpl-sub, .fwpl-tab, .fwpl-locmap-hint, .fwpl-locmap-info, .fwpl-status, .fwpl-rc-ref, .fwpl-rc-sub, .fwpl-il, .fwpl-sec, .fwpl-cl-sec { color: var(--fw-muted) !important; }
.fwpl-tab-act { border-bottom-color: var(--fw-accent) !important; }
.fwpl-locmap-wrap, .fwpl-rc, .fwpl-detail-inner, .fwpl-link, .fwpl-abtn, .fwpl-chk-box { border-color: var(--fw-line-strong) !important; }
.fwpl-rc, .fwpl-ic, .fwpl-abtn, .fwpl-chk-box { background: var(--fw-surface-2) !important; }
.fwpl-link { color: var(--fw-text-soft) !important; }
.fwpl-abtn { color: var(--fw-text) !important; }
.fwpl-sep { background: var(--fw-line) !important; }
.fwpl-searchbar input, .fwpl-searchbar select { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border-color: var(--fw-line-strong) !important; }
.fwpl-searchbar input:focus, .fwpl-searchbar select:focus { border-color: var(--fw-accent) !important; }
.fwpl-dh { border-bottom-color: var(--fw-line) !important; }
.set { color: var(--fw-good) !important; }
/* Programm-Farben SOTA (bernstein), POTA (grün), WWFF (türkisgrün) als dunkle Tönung */
.fwpl-b-sota, .fwpl-btn-sota, .fwpl-abtn-sota, .fwpl-rc-sota, .fwpl-dh-sota { background: rgba(251, 191, 36, 0.16) !important; color: #f5cf6b !important; border-color: rgba(251, 191, 36, 0.45) !important; }
.fwpl-b-pota, .fwpl-btn-pota, .fwpl-abtn-pota, .fwpl-rc-pota, .fwpl-dh-pota, .fwpl-active-badge, .done { background: rgba(74, 222, 128, 0.16) !important; color: #9fe7b6 !important; border-color: rgba(74, 222, 128, 0.45) !important; }
.fwpl-b-wwff, .fwpl-btn-wwff, .fwpl-abtn-wwff, .fwpl-rc-wwff, .fwpl-dh-wwff { background: rgba(45, 212, 191, 0.16) !important; color: #8fe9dc !important; border-color: rgba(45, 212, 191, 0.45) !important; }
.sel-sota { border-color: #f5cf6b !important; background: rgba(251, 191, 36, 0.10) !important; }
.sel-pota { border-color: #9fe7b6 !important; background: rgba(74, 222, 128, 0.10) !important; }
.sel-wwff { border-color: #8fe9dc !important; background: rgba(45, 212, 191, 0.10) !important; }
.fwpl-dh-sota .fwpl-dh-title, .fwpl-dh-sota .fwpl-dh-ref { color: #f5cf6b !important; }
.fwpl-dh-pota .fwpl-dh-title, .fwpl-dh-pota .fwpl-dh-ref { color: #9fe7b6 !important; }
.fwpl-dh-wwff .fwpl-dh-title, .fwpl-dh-wwff .fwpl-dh-ref { color: #8fe9dc !important; }

/* ---------- CB-Kanalplan (funkwelt-cb-kanalplan): Dunkelblau/Weiss → Theme-Farben, Orange bleibt Akzent für Frequenzen ---------- */
.fwcb-outer { color: var(--fw-text-soft) !important; }
.fwcb-outer .fwcb-section-title { color: var(--fw-text) !important; font-family: var(--fw-serif); }
.fwcb-outer .fwcb-intro, .fwcb-outer .fwcb-leg-item, .fwcb-outer .fwcb-ch-freq { color: var(--fw-muted) !important; }
.fwcb-outer .fwcb-filter-btn { background: var(--fw-surface) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-text-soft) !important; }
.fwcb-outer .fwcb-filter-btn:hover { border-color: var(--fw-accent) !important; color: var(--fw-accent) !important; }
.fwcb-outer .fwcb-filter-active, .fwcb-outer .fwcb-filter-active:hover { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fwcb-outer .fwcb-table thead tr { background: var(--fw-surface-2) !important; }
.fwcb-outer .fwcb-table thead th { color: var(--fw-text) !important; }
.fwcb-outer .fwcb-table tbody tr { border-bottom-color: var(--fw-line) !important; }
.fwcb-outer .fwcb-table tbody tr:hover { background: var(--fw-surface) !important; }
.fwcb-outer .fwcb-table tbody td { color: var(--fw-text-soft) !important; }
.fwcb-outer .fwcb-typ-sprech { background: rgba(129, 140, 248, 0.16) !important; color: #b4bcfd !important; }
.fwcb-outer .fwcb-typ-daten { background: rgba(45, 212, 191, 0.16) !important; color: #8fe9dc !important; }
.fwcb-outer .fwcb-mod-badge { background: var(--fw-surface-2) !important; color: var(--fw-text-soft) !important; border: 1px solid var(--fw-line-strong); font-family: var(--fw-mono) !important; }
.fwcb-outer .fwcb-lizenz-box { background: rgba(251, 191, 36, 0.10) !important; border-left-color: var(--fw-fair) !important; color: #f5d78a !important; }
.fwcb-outer .fwcb-ch-card { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fwcb-outer .fwcb-ch-card:hover { box-shadow: none !important; border-color: var(--fw-accent) !important; }
.fwcb-outer .fwcb-ch-num { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; }

/* ---------- IARU-Bandplan (funkwelt-bandguide): weisse Bandkarten → dunkle Karten, Segmentfarben bleiben.
Das Plugin scoped auf #fwbg-N; html :is(#fwbg-0, [id^="fwbg-"]) gibt ID-Spezifität plus Typ für jede Instanz, Plugin-Styles stehen im DOM nach dem Theme. ---------- */
.fwbg-wrap { color: var(--fw-text-soft); }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-search { background: var(--fw-surface) !important; color: var(--fw-text) !important; border-color: var(--fw-line-strong) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-search::placeholder { color: var(--fw-muted) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-search:focus { border-color: var(--fw-accent) !important; box-shadow: 0 0 0 2px rgba(132, 189, 245, 0.28) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-btn { background: var(--fw-surface) !important; color: var(--fw-text-soft) !important; border-color: var(--fw-line-strong) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-btn:hover { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border-color: var(--fw-accent) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-btn.active { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; border-color: var(--fw-accent) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-band, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-header, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-empty { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-band.open, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-band:hover { border-color: var(--fw-line-strong) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-name, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-dtitle { color: var(--fw-text) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-meta, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-dfreq, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-dinfo, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-leg, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-empty { color: var(--fw-muted) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-dsource, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-source { color: var(--fw-faint) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-bar { background: var(--fw-line) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-detail { background: var(--fw-base) !important; border-top-color: var(--fw-line) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-dinfo { border-bottom-color: var(--fw-line) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-legend { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable td { border-bottom-color: var(--fw-line) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable td:first-child { color: var(--fw-text) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable td:nth-child(2), html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable td:nth-child(3) { color: var(--fw-muted) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable td:last-child { color: var(--fw-text-soft) !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-cw, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-ssb, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-digi, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-fm, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-am, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-beacon, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-sat, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-mixed, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-dx, html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-segtable .sc-emcom { background: transparent !important; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-cw { background: rgba(55, 138, 221, 0.22); color: #9cc9ff; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-ssb { background: rgba(104, 160, 46, 0.25); color: #b6e38b; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-ft8 { background: rgba(214, 142, 20, 0.25); color: #f3cf7a; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-am { background: rgba(222, 92, 60, 0.25); color: #f6b4a2; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-fm { background: rgba(108, 99, 220, 0.28); color: #c4bdff; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-digi { background: rgba(45, 212, 191, 0.2); color: #8fe9dc; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-sat { background: var(--fw-surface-2); color: var(--fw-text-soft); }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-cont { background: rgba(220, 60, 120, 0.25); color: #f7a8c6; }
html :is(#fwbg-0, [id^="fwbg-"]) .fwbg-chip.ch-warc { background: rgba(55, 138, 221, 0.18); color: #9cc9ff; }

/* ---------- DXCC-Liste (funkwelt-dxcc-liste): Kopf ist schon dunkel, Tabelle und Fuss weiss → dunkel. Nur unter #fwdxcc-app, .fw-header kollidiert sonst mit dem Solar-Widget ---------- */
#fwdxcc-app { box-shadow: none !important; border: 1px solid var(--fw-line); }
#fwdxcc-app .fw-header { background: var(--fw-surface) !important; color: var(--fw-text) !important; border-bottom: 1px solid var(--fw-line); }
#fwdxcc-app .fw-sub, #fwdxcc-app .fw-flbl, #fwdxcc-app .fw-sico, #fwdxcc-app #fw-sqclr { color: var(--fw-muted) !important; }
#fwdxcc-app .fw-counters { background: var(--fw-surface-2) !important; border-color: var(--fw-line-strong) !important; }
#fwdxcc-app .fw-cnt-div { background: var(--fw-line-strong) !important; }
#fwdxcc-app #fw-sq { background: var(--fw-surface-2) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-text) !important; }
#fwdxcc-app #fw-sq:focus { border-color: var(--fw-accent) !important; }
#fwdxcc-app .fw-chip { background: var(--fw-surface-2) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-text-soft) !important; }
#fwdxcc-app .fw-chip:hover { border-color: var(--fw-accent) !important; color: var(--fw-accent) !important; }
#fwdxcc-app .fw-chip.active { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
#fwdxcc-app .fw-body { background: var(--fw-base) !important; border-top-color: var(--fw-line) !important; }
#fwdxcc-app .fw-state { color: var(--fw-muted) !important; }
#fwdxcc-app .fw-spin { border-color: var(--fw-line-strong) !important; border-top-color: var(--fw-accent) !important; }
#fwdxcc-app .fw-err-box { background: rgba(248, 113, 113, 0.15) !important; border-color: rgba(248, 113, 113, 0.4) !important; color: var(--fw-poor) !important; }
#fwdxcc-app .fw-th { background: var(--fw-surface) !important; border-bottom-color: var(--fw-line-strong) !important; color: var(--fw-muted) !important; }
#fwdxcc-app .fw-arr { color: var(--fw-faint) !important; }
#fwdxcc-app .fw-tbl tbody tr { border-bottom-color: var(--fw-line) !important; }
#fwdxcc-app .fw-tbl tbody tr:hover { background: var(--fw-surface) !important; }
#fwdxcc-app .fw-tbl tbody tr.fw-del { background: rgba(251, 191, 36, 0.06) !important; }
#fwdxcc-app .fw-tbl td { color: var(--fw-text-soft); }
#fwdxcc-app .fw-n { color: var(--fw-text) !important; }
#fwdxcc-app .fw-p { color: var(--fw-accent) !important; font-family: var(--fw-mono) !important; }
#fwdxcc-app .fw-z { color: var(--fw-muted) !important; }
#fwdxcc-app .bcu { background: rgba(74, 222, 128, 0.18) !important; color: var(--fw-good) !important; }
#fwdxcc-app .bdl { background: rgba(248, 113, 113, 0.18) !important; color: var(--fw-poor) !important; }
#fwdxcc-app .fw-footer { background: var(--fw-surface) !important; border-top-color: var(--fw-line) !important; color: var(--fw-muted) !important; }
#fwdxcc-app .fw-footer a { color: var(--fw-accent) !important; }

/* ---------- HamLogTools (hamlogtools): helle App → dunkel, Grün #1d9e75 bleibt als Plugin-Akzent ---------- */
.hlt-app { color: var(--fw-text) !important; font-family: var(--wp--preset--font-family--sans) !important; }
.hlt-header, .hlt-tabs { border-color: var(--fw-line) !important; }
.hlt-logo { color: var(--fw-text) !important; }
.hlt-version { background: var(--fw-surface-2) !important; color: var(--fw-muted) !important; }
.hlt-tab { color: var(--fw-muted) !important; }
.hlt-tab:hover { color: var(--fw-text) !important; }
.hlt-tab--active { color: var(--fw-accent) !important; border-bottom-color: var(--fw-accent) !important; }
.hlt-card, .hlt-modal { background: var(--fw-surface) !important; border: 1px solid var(--fw-line) !important; }
.hlt-card__desc, .hlt-stat-card__lbl, .hlt-empty-state, .hlt-dropzone__sub, .hlt-dropzone__icon { color: var(--fw-muted) !important; }
.hlt-dropzone { background: var(--fw-surface-2) !important; border-color: var(--fw-line-strong) !important; color: var(--fw-text) !important; }
.hlt-dropzone:hover, .hlt-dropzone--over { background: var(--fw-accent-deep) !important; border-color: var(--fw-accent) !important; }
.hlt-sep { background: var(--fw-line-strong) !important; }
.hlt-search, .hlt-select, .hlt-input, .hlt-cell-input { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border: 1px solid var(--fw-line-strong) !important; }
.hlt-btn { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border: 1px solid var(--fw-line-strong) !important; }
.hlt-btn:hover { background: var(--fw-surface) !important; border-color: var(--fw-accent) !important; }
.hlt-btn--primary, .hlt-upload-label { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.hlt-btn--primary:hover, .hlt-upload-label:hover { background: var(--fw-accent-hover) !important; }
.hlt-btn--danger { color: var(--fw-poor) !important; border-color: rgba(248, 113, 113, 0.4) !important; }
.hlt-btn--danger:hover { background: rgba(248, 113, 113, 0.12) !important; }
.hlt-notice--warn { background: rgba(251, 191, 36, 0.12) !important; border-color: rgba(251, 191, 36, 0.4) !important; color: #f5d78a !important; }
.hlt-notice--error { background: rgba(248, 113, 113, 0.12) !important; border-color: rgba(248, 113, 113, 0.4) !important; color: var(--fw-poor) !important; }
.hlt-notice--success { background: rgba(74, 222, 128, 0.12) !important; border-color: rgba(74, 222, 128, 0.4) !important; color: var(--fw-good) !important; }
.hlt-notice--info, .hlt-info-box { background: rgba(129, 140, 248, 0.12) !important; border-color: rgba(129, 140, 248, 0.4) !important; color: #b4bcfd !important; }
.hlt-app .hlt-table thead { background: var(--fw-surface-2) !important; }
.hlt-app .hlt-table th, .hlt-app .hlt-table td { border-color: var(--fw-line) !important; color: var(--fw-text-soft); }
.hlt-app .hlt-table th { color: var(--fw-muted) !important; }
.hlt-app .hlt-table tbody tr:hover td { background: var(--fw-surface) !important; }
.hlt-app .hlt-table tr.hlt-dupe td { background: rgba(248, 113, 113, 0.08) !important; }
.hlt-app .hlt-table tr.hlt-selected td { background: var(--fw-accent-deep) !important; }
.hlt-cell-view:hover { background: var(--fw-accent-deep) !important; outline-color: var(--fw-accent) !important; }
.hlt-stat-card { background: var(--fw-surface-2) !important; }
.hlt-map-wrap { border-color: var(--fw-line) !important; background: var(--fw-surface-2) !important; }
.hlt-modal__header, .hlt-modal__footer { border-color: var(--fw-line) !important; }
.hlt-modal__close { color: var(--fw-muted) !important; }
.hlt-badge--cw { background: rgba(129, 140, 248, 0.18) !important; color: #b4bcfd !important; }
.hlt-badge--ssb { background: rgba(74, 222, 128, 0.18) !important; color: var(--fw-good) !important; }

/* ---------- ADIF QSO Map (fw-qso-map): Upload-Zone, Toolbar, Statistik → dunkel ---------- */
.fw-qso-map-wrap { color: var(--fw-text) !important; max-width: 100% !important; }
.fwqm-upload-zone { background: var(--fw-surface) !important; border-color: var(--fw-line-strong) !important; }
.fwqm-upload-zone.fwqm-drag-over { background: var(--fw-accent-deep) !important; border-color: var(--fw-accent) !important; }
.fwqm-upload-title { color: var(--fw-text) !important; }
.fwqm-upload-icon, .fwqm-upload-sub, .fwqm-upload-privacy, .fwqm-toolbar-label, .fwqm-legend-label, .fwqm-legend-item, .fwqm-stat-label, .fwqm-stat-sub, .fwqm-loading { color: var(--fw-muted) !important; }
.fwqm-upload-btn { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fwqm-upload-btn:hover { background: var(--fw-accent-hover) !important; }
.fwqm-toolbar, .fwqm-stat { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fwqm-toolbar-sep, .fwqm-legend-sep { background: var(--fw-line-strong) !important; }
.fwqm-btn { background: var(--fw-surface-2) !important; color: var(--fw-text-soft) !important; border-color: var(--fw-line-strong) !important; }
.fwqm-btn:hover { background: var(--fw-surface) !important; border-color: var(--fw-accent) !important; }
.fwqm-map-container { border-color: var(--fw-line) !important; }
.fwqm-loading { background: rgba(11, 20, 38, 0.85) !important; }
.fwqm-spinner { border-color: var(--fw-line-strong) !important; border-top-color: var(--fw-accent) !important; }
.fwqm-stat-val { color: var(--fw-text) !important; }

/* ---------- DX-POTA-SOTA-WWFF-Map (funkwelt-dxmap): helles Widget → dunkel, Programm-Farben als Tönung ---------- */
.fwdxm-wrap { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; border-radius: var(--fw-r-m) !important; font-family: var(--wp--preset--font-family--sans) !important; }
.fwdxm-hdr, .fwdxm-foot { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fwdxm-filters, .fwdxm-agebar, .fwdxm-filterrow { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fwdxm-title { color: var(--fw-text) !important; }
.fwdxm-sub, .fwdxm-fl, .fwdxm-count, .fwdxm-foot, .fwdxm-leg { color: var(--fw-muted) !important; }
.fwdxm-refresh-btn, .fwdxm-pill { background: var(--fw-surface-2) !important; color: var(--fw-text-soft) !important; border-color: var(--fw-line-strong) !important; }
.fwdxm-refresh-btn:hover, .fwdxm-pill:hover { background: var(--fw-surface) !important; border-color: var(--fw-accent) !important; }
.fwdxm-pill-all.fwdxm-on, .fwdxm-pill-band.fwdxm-on, .fwdxm-pill-mode.fwdxm-on { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fwdxm-pill-pota.fwdxm-on { background: rgba(74, 222, 128, 0.18) !important; border-color: rgba(74, 222, 128, 0.5) !important; color: #9fe7b6 !important; }
.fwdxm-pill-sota.fwdxm-on { background: rgba(251, 191, 36, 0.18) !important; border-color: rgba(251, 191, 36, 0.5) !important; color: #f5cf6b !important; }
.fwdxm-pill-wwff.fwdxm-on { background: rgba(45, 212, 191, 0.18) !important; border-color: rgba(45, 212, 191, 0.5) !important; color: #8fe9dc !important; }
.fwdxm-pill-dx.fwdxm-on { background: rgba(129, 140, 248, 0.18) !important; border-color: rgba(129, 140, 248, 0.5) !important; color: #b4bcfd !important; }
.fwdxm-age-label { color: var(--fw-accent) !important; }
.fwdxm-agebar input[type=range] { accent-color: var(--fw-accent) !important; }
.fwdxm-dot-lg { border-color: rgba(255, 255, 255, 0.25) !important; }

/* ---------- HB Repeater Map (hb-repeater-map): helles Panel mit Blau → dunkel ---------- */
.hb-repeater-wrap { background: var(--fw-surface) !important; color: var(--fw-text) !important; border-color: var(--fw-line) !important; box-shadow: none !important; }
.hbrm-header { background: var(--fw-surface-2) !important; border-bottom: 1px solid var(--fw-line); }
.hbrm-header h2 { color: var(--fw-text) !important; }
.hbrm-header p { color: var(--fw-muted) !important; }
.hbrm-tabs { background: var(--fw-surface) !important; border-bottom-color: var(--fw-line-strong) !important; }
.hbrm-tab { color: var(--fw-muted) !important; }
.hbrm-tab:hover, .hbrm-tab.active { color: var(--fw-accent) !important; border-bottom-color: var(--fw-accent) !important; }
.hbrm-panel { background: var(--fw-surface) !important; }
.hbrm-card, .hbrm-chart-box, .hbrm-table-box { background: var(--fw-surface-2) !important; border-color: var(--fw-line) !important; }
.hbrm-card .val, .hbrm-chart-box h3, .hbrm-table-box h3 { color: var(--fw-accent) !important; }
.hbrm-card.green .val { color: var(--fw-good) !important; }
.hbrm-card.orange .val { color: var(--fw-fair) !important; }
.hbrm-card.red .val { color: var(--fw-poor) !important; }
.hbrm-card .lbl, .hbrm-table-box th { color: var(--fw-muted) !important; }
.hbrm-table-box th { background: var(--fw-surface) !important; border-bottom-color: var(--fw-line-strong) !important; }
.hbrm-table-box td { color: var(--fw-text-soft) !important; border-bottom-color: var(--fw-line) !important; }
.hbrm-table-box tr:hover td { background: var(--fw-surface) !important; }
.hbrm-bar { background: var(--fw-accent) !important; }
/* Karte und Liste (Review F03): Filter, Legende, Suche, Export, Liste, Badges. Leaflet-Popups bleiben hell (Plugin-Farben passen dazu). */
.hb-repeater-wrap .hbrm-map-el { border-color: var(--fw-line-strong); }
.hb-repeater-wrap .hbrm-filters { background: var(--fw-surface-2); border-color: var(--fw-line); }
.hb-repeater-wrap .hbrm-filter-label, .hb-repeater-wrap .hbrm-filter-count, .hb-repeater-wrap .hbrm-legend, .hb-repeater-wrap .hbrm-list-count { color: var(--fw-muted); }
.hb-repeater-wrap .hbrm-filter-sep { background: var(--fw-line-strong); }
.hb-repeater-wrap .hbrm-filter-btn { background: var(--fw-surface); border-color: var(--fw-line-strong); color: var(--fw-text-soft); }
.hb-repeater-wrap .hbrm-filter-btn:hover { border-color: var(--fw-accent); color: var(--fw-accent); }
.hb-repeater-wrap .hbrm-filter-btn.active { background: var(--fw-accent); border-color: var(--fw-accent); color: var(--fw-accent-ink); }
.hb-repeater-wrap .hbrm-filter-btn.active-status { background: rgba(74, 222, 128, 0.16); border-color: rgba(74, 222, 128, 0.5); color: var(--fw-good); }
.hb-repeater-wrap .hbrm-filter-btn.active-band { background: rgba(129, 140, 248, 0.18); border-color: rgba(129, 140, 248, 0.5); color: #b4bcfd; }
.hb-repeater-wrap .hbrm-filter-btn.active-mode { background: rgba(251, 191, 36, 0.16); border-color: rgba(251, 191, 36, 0.5); color: var(--fw-fair); }
.hb-repeater-wrap .hbrm-search { background: var(--fw-surface-2); border-color: var(--fw-line-strong); color: var(--fw-text); max-width: 100%; }
.hb-repeater-wrap .hbrm-search::placeholder { color: var(--fw-muted); }
.hb-repeater-wrap .hbrm-search:focus { border-color: var(--fw-accent); box-shadow: 0 0 0 2px rgba(132, 189, 245, 0.28); }
.hb-repeater-wrap .hbrm-export-btn { background: var(--fw-surface-2); border-color: var(--fw-accent-line); color: var(--fw-accent); }
.hb-repeater-wrap .hbrm-export-btn:hover { background: var(--fw-accent); border-color: var(--fw-accent); color: var(--fw-accent-ink); }
.hb-repeater-wrap .hbrm-export-pdf { border-color: rgba(248, 113, 113, 0.5); color: var(--fw-poor); }
.hb-repeater-wrap .hbrm-export-pdf:hover { background: var(--fw-poor); border-color: var(--fw-poor); color: #1a0c0c; }
.hb-repeater-wrap .hbrm-list-wrap { border-color: var(--fw-line); }
.hb-repeater-wrap .hbrm-list-table th { background: var(--fw-surface-2); color: var(--fw-muted); border-bottom-color: var(--fw-line-strong); }
.hb-repeater-wrap .hbrm-list-table td { color: var(--fw-text-soft); border-bottom-color: var(--fw-line); }
.hb-repeater-wrap .hbrm-list-table tr:hover td { background: var(--fw-surface-2); }
.hb-repeater-wrap .hbrm-badge-aktiv { background: rgba(74, 222, 128, 0.15); color: var(--fw-good); border-color: rgba(74, 222, 128, 0.45); }
.hb-repeater-wrap .hbrm-badge-eingeschraenkt { background: rgba(251, 191, 36, 0.15); color: var(--fw-fair); border-color: rgba(251, 191, 36, 0.45); }
.hb-repeater-wrap .hbrm-badge-projekt { background: rgba(129, 140, 248, 0.16); color: #b4bcfd; border-color: rgba(129, 140, 248, 0.45); }
.hb-repeater-wrap .hbrm-badge-qrt { background: rgba(248, 113, 113, 0.15); color: var(--fw-poor); border-color: rgba(248, 113, 113, 0.45); }
.hb-repeater-wrap .hbrm-badge-mode { background: var(--fw-surface-2); color: var(--fw-text-soft); border-color: var(--fw-line-strong); }

/* ---------- Linkliste (funkwelt-linkliste): WP-Blau und helle Karten → Theme ---------- */
.fll-cat-nav { background: var(--fw-surface) !important; border-left-color: var(--fw-accent) !important; }
.fll-cat-nav strong { color: var(--fw-text) !important; }
.fll-cat-nav a { color: var(--fw-accent) !important; border-color: var(--fw-accent-line) !important; background: var(--fw-accent-deep); }
.fll-cat-nav a:hover { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fll-category-title { color: var(--fw-text) !important; border-bottom-color: var(--fw-line-strong) !important; font-family: var(--fw-serif); }
.fll-count { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fll-category-desc, .fll-link-desc, .fll-empty, .fll-hint { color: var(--fw-muted) !important; }
.fll-link-meta { color: var(--fw-faint) !important; }
.fll-link-item { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fll-link-item:hover { background: var(--fw-surface-2) !important; border-color: var(--fw-accent) !important; box-shadow: none !important; }
.fll-link-item.fll-dead { background: rgba(251, 191, 36, 0.06) !important; border-color: rgba(251, 191, 36, 0.4) !important; }
.fll-link { color: var(--fw-accent) !important; }
.fll-link:hover { color: var(--fw-accent-hover) !important; }
.fll-favicon { background: #fff; }
.fll-suggest-form { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fll-suggest-form h3 { color: var(--fw-text) !important; }
.fll-suggest-form > p, .fll-form-row label { color: var(--fw-text-soft) !important; }
.fll-form-row input, .fll-form-row textarea, .fll-form-row select { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border-color: var(--fw-line-strong) !important; }
.fll-form-row input:focus, .fll-form-row textarea:focus, .fll-form-row select:focus { border-color: var(--fw-accent) !important; box-shadow: 0 0 0 3px rgba(132, 189, 245, 0.28) !important; }
.fll-submit-btn { background: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fll-submit-btn:hover { background: var(--fw-accent-hover) !important; }
.fll-message.fll-success { background: rgba(74, 222, 128, 0.12) !important; color: var(--fw-good) !important; border-color: rgba(74, 222, 128, 0.4) !important; }
.fll-message.fll-error { background: rgba(248, 113, 113, 0.12) !important; color: var(--fw-poor) !important; border-color: rgba(248, 113, 113, 0.4) !important; }

/* ---------- Sichtlinien-Rechner (funkwelt-sichtlinie): weisse Karten → dunkel ---------- */
.fwlos-wrap { color: var(--fw-text) !important; font-family: var(--wp--preset--font-family--sans) !important; }
.fwlos-card { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; }
.fwlos-card-title { color: var(--fw-text) !important; }
.fwlos-label, .fwlos-hint, .fwlos-freq-label, .fwlos-check-label, .fwlos-legend, .fwlos-status { color: var(--fw-muted) !important; }
.fwlos-input, .fwlos-btn, .fwlos-pill { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border-color: var(--fw-line-strong) !important; }
.fwlos-input:focus { border-color: var(--fw-accent) !important; box-shadow: 0 0 0 2px rgba(132, 189, 245, 0.28) !important; }
.fwlos-btn:hover, .fwlos-pill:hover { background: var(--fw-surface) !important; border-color: var(--fw-accent) !important; }
.fwlos-btn-primary { background: var(--fw-accent) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent-ink) !important; }
.fwlos-btn-primary:hover { background: var(--fw-accent-hover) !important; }
.fwlos-btn-primary:disabled { background: var(--fw-accent-line) !important; border-color: var(--fw-accent-line) !important; color: var(--fw-muted) !important; }
.fwlos-pill-active { background: var(--fw-accent-deep) !important; border-color: var(--fw-accent) !important; color: var(--fw-accent) !important; }
.fwlos-map { border-color: var(--fw-line-strong) !important; }
.fwlos-status.ok { color: var(--fw-good) !important; }
.fwlos-status.blocked, .fwlos-status.error { color: var(--fw-poor) !important; }
.fwlos-status.loading { color: var(--fw-accent) !important; }
.fwlos-badge-ok { background: rgba(74, 222, 128, 0.18) !important; color: var(--fw-good) !important; }
.fwlos-badge-blocked { background: rgba(248, 113, 113, 0.18) !important; color: var(--fw-poor) !important; }
.fwlos-badge-warn { background: rgba(251, 191, 36, 0.18) !important; color: var(--fw-fair) !important; }
.fwlos-badge-info { background: var(--fw-surface-2) !important; color: var(--fw-text-soft) !important; }

/* ---------- QSO-Spickzettel (qso_spickzettel): Styles stehen im Inhalt nach dem Theme → mit .qso-container präfixen ---------- */
.qso-container .qso-form { background: var(--fw-surface) !important; border-color: var(--fw-line) !important; border-left-color: var(--fw-accent) !important; }
.qso-container .qso-form h4, .qso-container h3 { color: var(--fw-text) !important; }
.qso-container h3 { border-bottom-color: var(--fw-line) !important; }
.qso-container .qso-form, .qso-container .qso-form p, .qso-container .qso-input-group label { color: var(--fw-text-soft) !important; }
.qso-container .qso-input-group input { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; border-color: var(--fw-line-strong) !important; }
.qso-container .qso-table { background: transparent !important; box-shadow: none !important; }
.qso-container .qso-table th { background: var(--fw-surface-2) !important; color: var(--fw-text) !important; }
.qso-container .qso-table th, .qso-container .qso-table td { border-color: var(--fw-line) !important; }
.qso-container .qso-table td { color: var(--fw-text-soft); }
.qso-container .qso-table tr:nth-child(even) { background: var(--fw-surface) !important; }
.qso-container .qso-table td:nth-child(1) { background: var(--fw-surface) !important; color: var(--fw-text) !important; }
.qso-container .qso-highlight { background: rgba(251, 191, 36, 0.15) !important; color: var(--fw-fair) !important; }

/* ---------- Shack-Manager (funkwelt-shack-manager ≥ 1.1): Plugin arbeitet mit Variablen, hier nur dunkle Werte.
   body-Präfix, weil die Plugin-Styles in wp_head nach dem Theme stehen. ---------- */
body .fwsm-outer {
	--fwsm-bg: var(--fw-surface); --fwsm-bg-2: var(--fw-surface-2);
	--fwsm-line: var(--fw-line); --fwsm-line-strong: var(--fw-line-strong);
	--fwsm-text: var(--fw-text); --fwsm-muted: var(--fw-muted); --fwsm-faint: var(--fw-faint);
	--fwsm-accent: var(--fw-accent); --fwsm-accent-bg: var(--fw-accent-deep); --fwsm-accent-line: var(--fw-accent-line); --fwsm-accent-ink: var(--fw-accent-ink);
	--fwsm-mono: var(--fw-mono); --fwsm-serif: var(--fw-serif);
	font-family: var(--wp--preset--font-family--sans); font-size: 1rem; line-height: 1.5;
}
.fwt-prose .fwsm-outer h3.fwsm-group-title { margin-top: 0; }

/* Alte HTML-Seiten (inc/legacy-html.php färbt die Farben um): Inhaltsverzeichnis gehört nicht in die Hero-Box */
[class$="-hero"] #toc_container, [class*="-hero "] #toc_container { display: none !important; }

/* Über HB9HJI: Galerie «Im Shack und unterwegs» */
.fwt-ueber-galerie-titel { margin-top: 2.5rem !important; }
.fwt-ueber-galerie.wp-block-gallery img { border-radius: var(--fw-r-m); }

/* Tabellen generell */
.wp-block-table table, .fwt-prose table { border-collapse: collapse; }
.wp-block-table td, .wp-block-table th, .fwt-prose td, .fwt-prose th { border-color: var(--fw-line) !important; }

/* ---------- Mobil ---------- */
@media (max-width: 781px) {
	.fwt-aside { position: static; }
	.fwt-single, .fwt-home { gap: 28px; }
	:root { --fwt-hs: 1; --fwt-ns: 1; }
	.fwt-site-header-inner { padding-block: 8px; gap: 8px 16px; }
	/* Platz für Menü-Toggle und Suche in einer Zeile */
	.fwt-brand .wp-block-site-logo img { width: 32px; height: 32px; }
}
@media (max-width: 599px) {
	.fwt-site-header-inner { flex-wrap: nowrap !important; gap: 8px 12px; }
	.fwt-brand { gap: 8px; min-width: 0; }
	.fwt-wordmark, .fwt-brand .fwt-callsign { font-size: 1.125rem !important; }
	.fwt-brand .fwt-callsign { letter-spacing: 0; }
	.fwt-site-header-search .wp-block-search__button { width: 40px; height: 40px; }
}
/* Handy: geöffnete Kopfzeilen-Suche (Review F07) nimmt die ganze Zeile, Wortmarke und Menü treten zurück.
   Schliessen per Tipp daneben oder Escape (Core-Verhalten). */
@media (max-width: 599px) {
	.fwt-site-header-inner:has(.fwt-site-header-search:not(.wp-block-search__searchfield-hidden)) > :is(.fwt-brand, .fwt-nav, .fwt-lang) { display: none; }
	.fwt-site-header-search:not(.wp-block-search__searchfield-hidden) { flex: 1 1 auto; }
	.fwt-site-header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper { width: 100% !important; }
	.fwt-site-header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__input { flex: 1 1 auto !important; min-width: 0; width: auto !important; }
}
/* Sehr schmal: Rufzeichen steht im Logo */
@media (max-width: 359px) { .fwt-brand .fwt-callsign { display: none; } }
