/* NOPO – CookieYes-Banner Feinschliff (CI) + Google-Maps-Consent-Platzhalter.
   Die Farben kommen primär aus den Inline-Styles des Banner-Templates
   (Cloud #FFFFFF / Midnight #171717 / Flash #E6FA6F); hier nur Typografie,
   Radien, Fokus/Hover + der Maps-Platzhalter.
   WICHTIG: Das Banner darf NICHT von Adobe Fonts abhängen (die sind bis zur
   Einwilligung geblockt) → bewusst System-Schriftstack. */

.cky-consent-container,
.cky-preference-center,
.cky-btn-revisit-wrapper {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

.cky-consent-container { box-shadow: 0 -2px 28px rgba(23, 23, 23, .10); }
.cky-title,
.cky-preference-title { letter-spacing: -.01em; }

/* Buttons: CI-naher Radius + klare Hover-/Fokus-Zustände */
.cky-btn {
  border-radius: 8px !important;
  font-weight: 600;
  transition: transform .12s ease, filter .12s ease, background-color .12s ease;
}
.cky-btn:hover { filter: brightness(.97); }
.cky-btn-accept:hover { filter: none; background-color: #f2ff8a !important; } /* Flash leicht aufgehellt */
.cky-btn:focus-visible { outline: 2px solid #171717; outline-offset: 2px; }

/* Floating "Cookie-Einstellungen erneut öffnen" (Midnight) – dezenter Flash-Ring beim Hover */
.cky-btn-revisit-wrapper:hover { box-shadow: 0 0 0 3px rgba(230, 250, 111, .6); }

/* ---- Google-Maps-Consent-Platzhalter (kontakt, .kt-map__canvas ist position:relative) ---- */
.kt-map__consent {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  text-align: center;
  padding: clamp(1rem, 4vw, 2rem);
  background: #e9e9e9;
  color: #171717;
}
.kt-map__consent-inner {
  max-width: 34rem;
  display: grid;
  gap: .85rem;
  justify-items: center;
}
.kt-map__consent-text { margin: 0; font-size: .95rem; line-height: 1.5; }
.kt-map__consent-fine { margin: 0; font-size: .8rem; opacity: .7; }
.kt-map__consent-fine a { color: inherit; }
.kt-map__load { cursor: pointer; }

/* ============================================================
   Plugin-Chrome-Verhalten (CookieYes-Banner/-Revisit + OneTap-Toolbar)
   ============================================================ */

/* (1) Während des Preloaders (nur Home) Cookie-Banner + Floating-Buttons
   verstecken → Cookies werden erst NACH dem Preloader gefragt, und keine
   Icons liegen über dem Ladescreen. `preloader-active` entfernt script.js. */
html.preloader-active .cky-consent-container,
html.preloader-active .cky-overlay,
html.preloader-active .cky-btn-revisit-wrapper,
html.preloader-active .onetap-container-toggle,
html.preloader-active .onetap-toggle {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* (2) Custom-Cursor sichtbar über den Overlays:
   - Cookie-Banner (z 99999999) liegt unter dem Cursor (z 2147483647) → Flash-Punkt sichtbar.
   - OneTap nutzt einen geklemmten Max-z und liegt im DOM später → der Flash-Punkt
     kommt dort nicht drüber; deshalb die NATIVE Maus einblenden (sonst kein Zeiger). */
html.has-cursor .onetap-accessibility,
html.has-cursor .onetap-accessibility *,
html.has-cursor .onetap-container-toggle,
html.has-cursor .onetap-container-toggle * { cursor: auto !important; }
html.has-cursor .onetap-toggle,
html.has-cursor .onetap-accessibility a,
html.has-cursor .onetap-accessibility button,
html.has-cursor .onetap-accessibility label,
html.has-cursor .onetap-accessibility [role="button"],
html.has-cursor .onetap-accessibility input,
html.has-cursor .onetap-accessibility select { cursor: pointer !important; }

/* (3) Beide Floating-Icons (CookieYes-Revisit + OneTap-Toggle) beim Runterscrollen
   ausblenden, beim Hochscrollen wieder zeigen (consent.js togglet die Klasse).
   CookieYes/OneTap bieten dafür keine eigene Einstellung. */
.cky-btn-revisit-wrapper,
.onetap-container-toggle .onetap-toggle {
  transition: transform .35s ease, opacity .35s ease !important;
}
html.nopo-chrome-hidden .cky-btn-revisit-wrapper,
html.nopo-chrome-hidden .onetap-container-toggle .onetap-toggle {
  transform: translateY(180%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
