/* Backdrop (dunkler Schleier) */
.epgzm-modal-backdrop {
  position: fixed; inset: 0; background: rgba(14,28,33,.85); display:flex; align-items:center; justify-content:center; z-index: 99999;
}

/* Modal */
.epgzm-modal {
  background: #0E1C21;
  color: #fff !important;
  border-radius: 12px; max-width: 420px; width: 92%; box-shadow: 0 10px 30px rgba(0,0,0,.2);
  font: inherit; padding: 20px;
}
.epgzm-modal h1,
.epgzm-modal h2,
.epgzm-modal h3,
.epgzm-modal h4,
.epgzm-modal h5,
.epgzm-modal h6,
.epgzm-modal p,
.epgzm-modal span,
.epgzm-modal label,
.epgzm-modal .epgzm-msg,
.epgzm-modal a,
.epgzm-modal .material-icons-outlined {
  color: #fff !important;
}

.epgzm-row { display:flex; gap:8px; align-items:center; }

/* Input in Weiß */
.epgzm-input {
  flex: 1;
  padding: 10px 12px;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 8px;
  font: inherit;
  color: #fff !important;
  caret-color: #fff;
}
.epgzm-input::placeholder { color: rgba(255,255,255,.85) !important; }
.epgzm-input:focus {
  outline: 2px solid rgba(255,255,255,.7);
  outline-offset: 2px;
  border-color: rgba(255,255,255,.9) !important;
}

/* Buttons */
.epgzm-btn {
  padding: 10px 14px; border-radius: 8px; cursor: pointer; border: none; font: inherit;
}
.epgzm-btn.primary { background: var(--e-global-color-primary, #2271b1); color: #fff !important; }
.epgzm-btn.ghost { background: transparent; border: 1px solid rgba(255,255,255,.45) !important; color: #fff !important; }

.epgzm-msg { margin-top: 8px; font-size: .9rem; }

.epgzm-map-container { width: 100%; }
@media (max-width: 480px) {
  .epgzm-modal { padding: 16px; }
}
