/* Flächenpilot – Einwilligungsdialog und Kartenplatzhalter */

.fp-consent{position:fixed; inset:0; z-index:9000; display:none; align-items:flex-end; justify-content:flex-start;
  background:rgba(20,22,16,.42); padding:20px}
.fp-consent.is-open{display:flex}

.fp-consent__panel{background:#242424; color:#fff; border-radius:14px; max-width:520px; width:100%;
  padding:26px 26px 20px; box-shadow:0 24px 60px rgba(0,0,0,.35); border-top:4px solid #9BBE3C;
  font-family:"Inter Var","Inter",system-ui,sans-serif; max-height:86vh; overflow:auto}
.fp-consent__title{font-family:"Archivo Var","Archivo Expanded",system-ui,sans-serif; font-weight:800;
  font-stretch:125%; font-size:1.25rem; margin:0 0 12px; line-height:1.2}
.fp-consent__text{font-size:.92rem; line-height:1.55; color:rgba(255,255,255,.82); margin:0 0 18px}

.fp-consent__cat{border-top:1px solid rgba(255,255,255,.14); padding:14px 0}
.fp-consent__cat label{display:flex; align-items:center; gap:.6em; font-size:.95rem; cursor:pointer}
.fp-consent__cat input{width:17px; height:17px; accent-color:#9BBE3C; cursor:pointer}
.fp-consent__cat input:disabled{cursor:default; opacity:.65}
.fp-consent__cat p{margin:6px 0 0 2.2em; font-size:.83rem; line-height:1.5; color:rgba(255,255,255,.62)}

.fp-consent__actions{display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:18px}
.fp-consent__btn{font:inherit; font-weight:600; font-size:.9rem; padding:.7em 1.35em; border-radius:999px;
  border:2px solid rgba(255,255,255,.55); background:transparent; color:#fff; cursor:pointer;
  transition:background .15s ease, border-color .15s ease, color .15s ease}
.fp-consent__btn:hover{border-color:#fff; background:rgba(255,255,255,.08)}
.fp-consent__btn--primary{background:#9BBE3C; border-color:#9BBE3C; color:#1c1c1c}
.fp-consent__btn--primary:hover{background:#B0CF5C; border-color:#B0CF5C; color:#1c1c1c}
.fp-consent__link{font:inherit; font-size:.88rem; background:none; border:none; color:rgba(255,255,255,.78);
  text-decoration:underline; cursor:pointer; padding:.5em .2em}
.fp-consent__link:hover{color:#fff}

.fp-consent__legal{margin:16px 0 0; font-size:.78rem; color:rgba(255,255,255,.55)}
.fp-consent__legal a{color:inherit; text-decoration:underline}
.fp-consent__legal a:hover{color:#fff}

/* --- Kartenplatzhalter (Zwei-Klick-Lösung) --- */
.fp-map-ph{display:flex !important; align-items:center; justify-content:center;
  background:#EFF3E0; border:1px dashed #9BBE3C; border-radius:12px; text-align:center; padding:24px}
.fp-map-ph__inner{max-width:420px}
.fp-map-ph__inner strong{display:block; font-family:"Archivo Var","Archivo Expanded",system-ui,sans-serif;
  font-weight:800; font-stretch:125%; font-size:1.05rem; color:#242424; margin-bottom:8px}
.fp-map-ph__inner p{margin:0 0 10px; font-size:.86rem; line-height:1.5; color:#4a4a4a}
.fp-map-ph__addr{font-weight:600; color:#242424 !important}
.fp-map-ph .fp-consent__btn{border-color:#4F6B1F; color:#242424; margin-top:4px}
.fp-map-ph .fp-consent__btn--primary{color:#1c1c1c}
.fp-map-ph .fp-consent__link{color:#4F6B1F; display:block; margin:8px auto 0}

@media (max-width:560px){
  .fp-consent{padding:0; align-items:flex-end}
  .fp-consent__panel{border-radius:14px 14px 0 0; max-width:none; padding:22px 18px 16px}
  .fp-consent__actions{gap:8px}
  .fp-consent__btn{flex:1 1 auto; text-align:center; justify-content:center}
}

/* Die Kartenbox der Übersicht ist in der Listenansicht ausgeblendet
   (.db-map ohne .show). Der Platzhalter darf sie nicht aufziehen —
   sonst steht in der Listenansicht ein leerer Kasten über den Kacheln. */
.db-map:not(.show).fp-map-ph{display:none !important}
