/* TMV BRW Map Picker – v1.3.5 */
.tmv-map-open-wrap { margin: 10px 0 18px; }
.tmv-map-open-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 22px; border-radius:10px; font-weight:700;
  background:#132345; color:#fff; border:0; cursor:pointer;
}
.tmv-map-open-btn:focus { outline:2px solid rgba(19,35,69,.4); outline-offset:2px; }

/* Overlay & modal */
#tmv-map-picker-overlay { position:fixed; inset:0; background:rgba(0,0,0,.4); z-index:9999; display:flex; align-items:center; justify-content:center; }
#tmv-map-picker-overlay.tmv-hidden { display:none; }
#tmv-map-picker-overlay.tmv-visible { display:flex; }
#tmv-map-picker-modal {
  width:min(980px, 92vw); max-height:88vh; background:#fff; border-radius:14px;
  box-shadow:0 10px 40px rgba(0,0,0,.25); display:flex; flex-direction:column; overflow:hidden;
}
#tmv-map-picker-modal h3 { margin:18px 20px 10px; font-size:20px; }
#tmv-map-picker-modal .tmv-modal-close {
  position:absolute; right:14px; top:10px; font-size:28px; line-height:1; background:#122244; color:#fff;
  border:0; width:44px; height:44px; border-radius:10px; cursor:pointer;
}
#tmv-map-picker-modal .tmv-search-wrap { padding:0 20px 10px; }
#tmv-map-picker-search {
  width:100%; padding:12px 14px; border:1px solid #d6d6d6; border-radius:8px; font-size:16px;
}
#tmv-map { width:100%; height:min(60vh, 520px); }
#tmv-map-picker-modal .tmv-footer { padding:14px 20px 20px; display:flex; justify-content:flex-end; }
#tmv-map-picker-validate {
  background:#132345; color:#fff; border:0; padding:14px 22px; border-radius:12px; font-weight:700; cursor:pointer;
}

/* Alignement sous les champs – même gabarit que gros boutons du site */
.tmv-map-open-wrap .tmv-map-open-btn {
  min-width: 220px;
}

/* Petits écrans */
@media (max-width:600px){
  #tmv-map { height: 56vh; }
}
