/* Cookie-Consent — Lord-GmbH */
#cc-banner{
  position:fixed; left:0; right:0; bottom:0; z-index:9999;
  background:#0e131c; border-top:1px solid rgba(255,255,255,.12);
  padding:20px; box-shadow:0 -8px 24px rgba(0,0,0,.35);
  font-family:inherit; color:#eceff3;
  transform:translateY(110%); transition:transform .35s ease;
}
#cc-banner.cc-visible{transform:translateY(0)}
#cc-banner .cc-inner{max-width:1040px;margin:0 auto;display:flex;gap:24px;align-items:center;flex-wrap:wrap}
#cc-banner .cc-text{flex:1 1 380px;font-size:13.5px;line-height:1.55;color:#c7cdd6}
#cc-banner .cc-text strong{color:#eceff3}
#cc-banner .cc-text a{color:#d4af37;text-decoration:underline}
#cc-banner .cc-actions{display:flex;gap:10px;flex-wrap:wrap}
#cc-banner button{
  font-family:inherit; font-size:13.5px; font-weight:600; cursor:pointer;
  padding:10px 18px; border-radius:6px; border:1px solid rgba(255,255,255,.16);
  background:transparent; color:#eceff3; white-space:nowrap;
}
#cc-banner button:hover{border-color:#d4af37}
#cc-banner button.cc-accept-all{background:#d4af37;border-color:#d4af37;color:#191204}
#cc-banner button.cc-accept-all:hover{background:#e4c358}

/* Settings panel */
#cc-settings{
  position:fixed; inset:0; z-index:10000; display:none;
  background:rgba(5,7,11,.72); align-items:center; justify-content:center; padding:20px;
}
#cc-settings.cc-visible{display:flex}
#cc-settings .cc-modal{
  background:#0e131c; border:1px solid rgba(255,255,255,.12); border-radius:12px;
  max-width:520px; width:100%; padding:28px; color:#eceff3; max-height:86vh; overflow:auto;
}
#cc-settings h2{font-size:18px;margin:0 0 6px}
#cc-settings > .cc-modal > p{font-size:13.5px;color:#9aa3b1;margin:0 0 20px}
.cc-category{border-top:1px solid rgba(255,255,255,.10);padding:16px 0}
.cc-category:last-of-type{border-bottom:1px solid rgba(255,255,255,.10);margin-bottom:22px}
.cc-cat-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:12px}
.cc-cat-head strong{font-size:14.5px}
.cc-cat-desc{font-size:13px;color:#9aa3b1;margin:0}

/* toggle switch */
.cc-switch{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}
.cc-switch input{opacity:0;width:0;height:0}
.cc-slider{position:absolute;inset:0;background:rgba(255,255,255,.18);border-radius:999px;cursor:pointer;transition:.2s}
.cc-slider::before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.cc-switch input:checked + .cc-slider{background:#d4af37}
.cc-switch input:checked + .cc-slider::before{transform:translateX(18px)}
.cc-switch input:disabled + .cc-slider{opacity:.5;cursor:not-allowed}

#cc-settings .cc-modal-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
#cc-settings .cc-modal-actions button{
  font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer;
  padding:10px 18px;border-radius:6px;border:1px solid rgba(255,255,255,.16);
  background:transparent;color:#eceff3;
}
#cc-settings .cc-modal-actions button:hover{border-color:#d4af37}
#cc-settings .cc-modal-actions button.cc-accept-all{background:#d4af37;border-color:#d4af37;color:#191204}
#cc-settings .cc-modal-actions button.cc-accept-all:hover{background:#e4c358}

/* Deckt die Google-Maps-Bedienelemente (Zoom, Pegman) unten rechts ab.
   Das Logo/Terms-Link unten links bleibt sichtbar. */
.cc-map-mask{
  position:absolute; right:0; bottom:0; width:56px; height:114px;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(11,15,22,0) 0%, rgba(11,15,22,.55) 35%, rgba(16,21,33,.92) 100%);
  -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px);
  border-bottom-right-radius:12px;
}

/* Placeholder shown instead of an embed until consent is given */
.cc-embed-placeholder{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px;
  text-align:center; padding:28px 20px; background:#111826; border:1px solid rgba(255,255,255,.10);
  border-radius:10px; font-size:13.5px; color:#9aa3b1; min-height:200px;
}
.cc-embed-placeholder button{
  font-family:inherit; font-size:13.5px; font-weight:600; cursor:pointer;
  padding:10px 20px; border-radius:6px; border:1px solid #d4af37; background:#d4af37; color:#191204;
}
.cc-embed-placeholder button:hover{background:#e4c358}

@media(max-width:560px){
  #cc-banner .cc-actions{width:100%}
  #cc-banner .cc-actions button{flex:1 1 auto}
}
