/* =========================================================================
   ALLES FÜR DEN BAU 2026 – custom.css
   Vereinheitlichung der Schriftart auf Nunito Sans

   Wird von YOOtheme Pro automatisch geladen, und zwar NACH theme.css.
   Deshalb greifen die Regeln hier ohne !important.

   Bewusst OHNE Arial UND OHNE Helvetica: beide gehoeren zu Monotype/Linotype
   und unterliegen derselben Lizenzproblematik. Ein Austausch von Arial gegen
   Helvetica loest das Problem also nicht.
   ========================================================================= */


/* -------------------------------------------------------------------------
   1. Schrift-Stack an einer einzigen Stelle definieren
   -------------------------------------------------------------------------
   Aenderungen bitte nur hier vornehmen, nicht in den Regeln weiter unten.

   system-ui  = Systemschrift des Geraets (Segoe UI, SF Pro, Roboto ...)
   sans-serif = generischer Letzt-Fallback des Browsers
   ------------------------------------------------------------------------- */

:root {
  --afdb-font: "Nunito Sans", system-ui, sans-serif;
}


/* -------------------------------------------------------------------------
   2. Basis
   ------------------------------------------------------------------------- */

html,
body {
  font-family: var(--afdb-font);
}


/* -------------------------------------------------------------------------
   3. Formularelemente
   -------------------------------------------------------------------------
   Der wichtigste Block. Formularelemente erben die Body-Schrift in KEINEM
   Browser automatisch - sie benutzen per Default die Systemschrift des
   Betriebssystems. Genau deshalb bleibt in Suchfeldern, Dropdowns und
   Buttons so haeufig Arial stehen, obwohl der Rest der Seite laengst
   korrekt gesetzt ist.
   ------------------------------------------------------------------------- */

button,
input,
optgroup,
option,
select,
textarea,
fieldset,
legend,
label {
  font-family: var(--afdb-font);
}


/* Pseudoelemente MUESSEN in eigenen Regeln stehen.
   Grund: Kennt ein Browser einen Selektor in einer Liste nicht, verwirft er
   die KOMPLETTE Regel - inklusive aller anderen Selektoren darin. Stuenden
   sie oben mit drin, koennte ein einziger nicht unterstuetzter Selektor den
   gesamten Block ausser Kraft setzen. */

::placeholder {
  font-family: var(--afdb-font);
}

::file-selector-button {
  font-family: var(--afdb-font);
}

::-webkit-file-upload-button {
  font-family: var(--afdb-font);
}


/* UIkit-Formularklassen (YOOtheme) */

.uk-input,
.uk-select,
.uk-textarea,
.uk-radio,
.uk-checkbox,
.uk-button,
.uk-form-label,
.uk-form-custom,
.uk-search-input {
  font-family: var(--afdb-font);
}


/* Hinweis zu <option>:
   Die Darstellung geoeffneter Dropdown-Listen uebernimmt unter Windows das
   Betriebssystem. Die Schriftart ist dort nicht zuverlaessig per CSS
   steuerbar - das ist eine Browser-/OS-Grenze, kein Fehler im Theme.
   Es wird dabei aber die System-Schrift verwendet, nicht Arial. */


/* -------------------------------------------------------------------------
   4. Drittanbieter
   -------------------------------------------------------------------------
   Diese Selektoren vor dem Livegang gegen den tatsaechlichen Scan abgleichen
   und nicht benoetigte Zeilen entfernen.
   ------------------------------------------------------------------------- */

/* Borlabs Cookie */
.brlbs-cmpnt-container,
.brlbs-cmpnt-container * {
  font-family: var(--afdb-font);
}

/* WP Store Locator – eigenes Markup des Plugins */
#wpsl-wrap,
#wpsl-wrap *,
#wpsl-result-list,
#wpsl-result-list * {
  font-family: var(--afdb-font);
}


/* -------------------------------------------------------------------------
   5. Sonderfall Google Maps
   -------------------------------------------------------------------------
   Google schreibt 'font-family: Roboto, Arial, sans-serif' zur Laufzeit per
   Inline-Style in Kartensteuerung, Attribution und InfoWindow. Das laesst
   sich nicht an der Quelle abstellen.

   !important aus dem Autoren-Stylesheet schlaegt Googles Inline-Styles:
   es wird also nichts mehr in Arial GERENDERT. Der String bleibt jedoch im
   DOM stehen und wird von Scan-Tools weiterhin gemeldet. Vollstaendig
   entfernen liesse er sich nur durch Ablösung von Google Maps
   (z. B. Leaflet/OpenStreetMap).

   Zu beachten: Googles Nutzungsbedingungen untersagen das Veraendern der
   Attribution. Das Umstellen ihrer Schriftart ist eine Grauzone.
   ------------------------------------------------------------------------- */

/* WICHTIG: hier bewusst KEIN ".gm-style *".
   Google Maps nutzt fuer einige Bedienelemente (u. a. "Standort ermitteln"
   neben dem Pegman) einen Icon-Font. Ein pauschaler Stern-Selektor
   ueberschreibt dessen font-family, und die Icons erscheinen als leere
   Kaesten.

   Deshalb zweistufig:

   a) .gm-style setzt die Schrift nur auf dem Container. Alle Textelemente
      erben sie. Icon-Elemente, die ihre eigene font-family mitbringen,
      behalten diese und bleiben unbeschaedigt.

   b) Die wenigen Elemente, die Google per Inline-Style selbst mit
      "Roboto, Arial, sans-serif" versieht, werden gezielt nachgezogen:
      InfoWindow (.gm-style-iw), Attribution/Copyright (.gm-style-cc)
      und die Kartentyp-Umschaltung Karte/Satellit (.gm-style-mtc). */

.gm-style {
  font-family: var(--afdb-font) !important;
}

.gm-style-iw,
.gm-style-iw *,
.gm-style-cc,
.gm-style-cc *,
.gm-style-mtc,
.gm-style-mtc * {
  font-family: var(--afdb-font) !important;
}


/* -------------------------------------------------------------------------
   6. Eskalationsstufe – standardmaessig DEAKTIVIERT
   -------------------------------------------------------------------------
   Zuerst ohne diesen Block testen und neu scannen. Nur einkommentieren,
   wenn Fremd-CSS die Regeln oben nachweislich ueberschreibt.

   Wird dieser Block aktiviert, MUSS anschliessend Punkt 7 geprueft werden,
   sonst werden Icon-Fonts als leere Kaesten dargestellt.
   ------------------------------------------------------------------------- */

/*
* {
  font-family: var(--afdb-font) !important;
}
*/


/* -------------------------------------------------------------------------
   7. Icon-Fonts zuruecksetzen – nur noetig, wenn Punkt 6 aktiv ist
   -------------------------------------------------------------------------
   Icon-Fonts, die direkt auf dem Element gesetzt sind (FontAwesome,
   Dashicons), werden vom Stern-Selektor ueberschrieben und erscheinen als
   leere Kaesten. Icon-Fonts, die ausschliesslich ueber ::before definiert
   sind, sind nicht betroffen - "*" trifft keine Pseudoelemente.

   UIkit-/YOOtheme-Icons sind Inline-SVG und damit generell unkritisch.

   Diese Liste auf die Icon-Fonts kuerzen, die tatsaechlich geladen werden.
   ------------------------------------------------------------------------- */

/*
.dashicons,
.dashicons-before::before,
.fa, .fas, .far, .fal, .fab,
[class^="fa-"], [class*=" fa-"],
.brlbs-icon, [class^="brlbs-icon"] {
  font-family: revert !important;
}
*/


/* -------------------------------------------------------------------------
   8. Projektspezifische Nachtraege
   ------------------------------------------------------------------------- */

/* ... hier ergaenzen, was der Scan des Kunden zusaetzlich meldet ... */
