/* TEST GPS: supplementary, only displayed on relevant pages. */
.mmDriverEta{margin:12px 15px;padding:13px 14px;border:1px solid #c8ddee;
  background:#f0f7ff;border-radius:12px;font-size:14px;font-weight:650;color:#123d69;line-height:1.4}
.mmGpsConsent{margin:16px 15px;padding:16px;border:1px solid #c8ddee;border-radius:14px;background:#f9fbff}
.mmGpsConsent h2,.mmLiveTracking h2{font-size:17px;margin:0 0 10px;color:#0a1a2d}
.mmGpsConsent p,.mmLiveStatus{font-size:13px;line-height:1.5;color:#405974;margin:8px 0 13px}
.mmGpsConsent button{width:100%;min-height:46px}
.mmLiveTracking{margin:16px 0;padding:14px;border:1px solid #c8ddee;border-radius:14px;background:#f9fbff}
.mmLiveMap{height:260px;min-height:260px;border-radius:12px;overflow:hidden;border:1px solid #d2dce9;z-index:0}
.mmLiveMap .leaflet-container{z-index:0}
@media print{.mmDriverEta,.mmGpsConsent,.mmLiveTracking{display:none!important}}

/* TEST 9-9 : voiture visible sur la carte, au lieu du marqueur Leaflet standard. */
.mmLiveMap .mmVehiclePin.leaflet-div-icon{
  border:0!important;background:transparent!important;box-shadow:none!important;
  overflow:visible!important;pointer-events:auto;
}
.mmVehicleGlyph{
  width:62px;height:76px;display:flex;align-items:center;justify-content:center;
  transform:rotate(var(--mm-vehicle-angle,0deg));transform-origin:50% 50%;
  filter:drop-shadow(0 3px 5px rgba(4,20,42,.24));
  transition:transform .35s ease;
}
.mmVehicleGlyph svg{width:45px;height:59px;max-width:none;display:block}
.mmLiveTracking .mmLiveMap{height:300px;min-height:300px}
.mmLiveTracking .mmLiveStatus{font-weight:600}
@media (prefers-reduced-motion:reduce){
  .mmVehicleGlyph{transition:none}
}

/* TEST 9-10: GPS piloté par la session Chauffeur, sans interrupteur d'arrêt. */
.mmGpsConsent .mmGpsRetry[hidden]{display:none!important}
.mmGpsConsent .mmGpsHelp{display:block;margin-top:12px;font-size:12px;line-height:1.5;color:#52677d}
.mmGpsConsent .mmGpsBookingLabel{display:block;font-size:13px;font-weight:650;color:#123d69;margin:12px 0}
.mmGpsConsent .mmGpsBookingLabel[hidden]{display:none!important}
.mmGpsConsent .mmGpsBookingLabel select{display:block;width:100%;max-width:100%;margin-top:6px;padding:10px;border-radius:10px;border:1px solid #bfd2e6;color:#0a1a2d;background:white}
.mmGpsConsent .mmGpsRetry{width:100%;min-height:42px}
.mmGpsCompact{margin:15px auto;max-width:440px}

/* Secours Leaflet pour carte GPS Client si la feuille CDN est indisponible. */
.mmLiveMap.leaflet-container{position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}
.mmLiveMap .leaflet-pane,
.mmLiveMap .leaflet-tile,
.mmLiveMap .leaflet-marker-icon,
.mmLiveMap .leaflet-marker-shadow,
.mmLiveMap .leaflet-tile-container,
.mmLiveMap .leaflet-pane>svg,
.mmLiveMap .leaflet-pane>canvas,
.mmLiveMap .leaflet-zoom-box,
.mmLiveMap .leaflet-image-layer,
.mmLiveMap .leaflet-layer{position:absolute;left:0;top:0}
.mmLiveMap .leaflet-tile,
.mmLiveMap .leaflet-marker-icon,
.mmLiveMap .leaflet-marker-shadow,
.mmLiveMap .leaflet-image-layer{max-width:none!important;max-height:none!important;user-select:none;-webkit-user-select:none}
.mmLiveMap .leaflet-tile{visibility:hidden}
.mmLiveMap .leaflet-tile-loaded{visibility:inherit}
.mmLiveMap .leaflet-tile-pane{z-index:200}
.mmLiveMap .leaflet-overlay-pane{z-index:400}
.mmLiveMap .leaflet-shadow-pane{z-index:500}
.mmLiveMap .leaflet-marker-pane{z-index:600}
.mmLiveMap .leaflet-tooltip-pane{z-index:650}
.mmLiveMap .leaflet-popup-pane{z-index:700}
.mmLiveMap .leaflet-map-pane canvas{z-index:100}
.mmLiveMap .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}
.mmLiveMap .leaflet-zoom-animated{transform-origin:0 0}
.mmLiveMap .leaflet-top,
.mmLiveMap .leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}
.mmLiveMap .leaflet-top{top:0}
.mmLiveMap .leaflet-bottom{bottom:0}
.mmLiveMap .leaflet-left{left:0}
.mmLiveMap .leaflet-right{right:0}
.mmLiveMap .leaflet-control{position:relative;z-index:800;pointer-events:auto;margin:8px}
.mmLiveMap .leaflet-control-zoom{box-shadow:0 1px 5px #0003;border-radius:4px;overflow:hidden}
.mmLiveMap .leaflet-control-zoom a{display:block;width:29px;height:29px;line-height:28px;background:#fff;color:#234;text-align:center;text-decoration:none;font-size:19px;font-weight:700}
.mmLiveMap .leaflet-control-zoom a+a{border-top:1px solid #ddd}
.mmLiveMap .leaflet-control-attribution{font:10px/1.4 Arial,sans-serif;background:#ffffffe6;padding:1px 5px;color:#333}
.mmLiveMap .leaflet-control-attribution a{color:#0563b3}
.mmLiveMap .leaflet-container .leaflet-control{float:none}

/* TEST 9-11 : en cas de tuiles manquantes, aucun damier blanc. */
.mmLiveMap.leaflet-container{position:relative;overflow:hidden;background:#e4edf5!important}
.mmLiveMap .leaflet-map-pane,.mmLiveMap .leaflet-pane{position:absolute;left:0;top:0}
.mmLiveMap .leaflet-tile{border:0!important;box-shadow:none!important}
.mmLiveMap .leaflet-marker-pane{z-index:650!important}
.mmLiveMap.mmMapTilesUnavailable{background:radial-gradient(circle at 46% 42%,#eef5fb,#dbe6f1)!important}
.mmLiveMap.mmMapTilesUnavailable .leaflet-tile-pane{display:none!important}
.mmLiveMap .mmVehiclePin.leaflet-marker-icon{z-index:auto}
.mmLiveMap .leaflet-container{overflow:hidden}
.mmMapFallbackMessage{position:absolute;left:8px;right:8px;bottom:24px;z-index:900;
  padding:7px 10px;border-radius:9px;text-align:center;pointer-events:none;
  color:#173f62;background:rgba(255,255,255,.92);font-size:12px;line-height:1.4;
  font-weight:650;box-shadow:0 3px 12px #0b26351c}
.mmMapFallbackMessage[hidden]{display:none!important}
