/* Selecteur de quartiers integre a la carte Injouables (16/10/2026). */
.m-map .m-district-picker {
  position:absolute;bottom:12px;left:12px;right:auto;top:auto;
  width:min(330px,calc(100% - 24px));
  z-index:12;font:13px/1.4 Inter,system-ui,Arial,sans-serif;color:#f6f6f6;
}
.m-map .m-picker-toggle {
  display:flex;align-items:center;gap:10px;width:100%;min-height:50px;
  padding:6px 7px 6px 12px;border:1px solid rgba(237,211,145,.7);
  border-radius:11px;background:rgba(0,0,0,.97);color:#f6f6f6;
  box-shadow:0 8px 26px #00000070;cursor:pointer;text-align:left;
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.m-map .m-picker-toggle:hover,.m-map .m-picker-toggle:focus-visible,
.m-map .m-district-picker.is-open .m-picker-toggle {
  border-color:#f3d999;background:rgba(0,0,0,.98);
}
.m-picker-location {
  display:grid;place-items:center;flex:0 0 28px;width:28px;height:30px;
  color:#efd39a;line-height:1;
}
.m-picker-value {flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650;font-size:13px;}
.m-picker-chevron {
  flex:0 0 35px;display:grid;place-items:center;width:35px;height:35px;
  background:#ffffff10;border:1px solid #ffffff2c;border-radius:7px;
  color:#eecb8b;transition:transform .15s;
}
.m-district-picker.is-open .m-picker-chevron {transform:rotate(180deg);}
.m-map .m-picker-popover {
  position:absolute;bottom:calc(100% + 9px);top:auto;left:0;right:0;
  max-height:min(410px,70svh);
  z-index:30;padding:12px;border:1px solid #00000060;border-radius:13px;
  background:rgba(0,0,0,.985);box-shadow:0 18px 48px #000b;
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}
.m-map .m-picker-popover[hidden],.m-map .m-picker-option[hidden],
.m-map .m-picker-empty[hidden] {display:none!important;}
.m-picker-search-label{display:block;font-size:11px;color:#edce95;font-weight:600;margin:0 0 7px 2px;}
.m-picker-search-box {
  display:flex;align-items:center;gap:9px;min-height:44px;
  padding:0 10px;background:#000000;border:1px solid #00000070;border-radius:9px;
}
.m-picker-search-box:focus-within {border-color:#edd39a;box-shadow:0 0 0 2px #edce9523;}
.m-picker-search-box>span{display:grid;place-items:center;line-height:1;color:#cccccc;}
.m-picker-search-box input[type="search"] {
  display:block;width:100%;min-width:0;min-height:42px;box-shadow:none;
  border:0;outline:none;background:transparent;color:#fff;
  font:inherit;font-size:13px;letter-spacing:0;padding:0;
}
.m-picker-search-box input::placeholder{color:#c2c2c2;opacity:1;}
.m-picker-list {
  display:flex;flex-direction:column;gap:3px;max-height:min(290px,42svh);
  overflow-y:auto;overscroll-behavior:contain;
  padding:6px 2px 3px 0;margin-top:6px;
  scrollbar-width:thin;scrollbar-color:#000000 transparent;
}
.m-picker-option {
  display:flex;align-items:center;gap:9px;width:100%;min-height:47px;
  padding:7px 9px;border:1px solid transparent;border-radius:8px;
  background:transparent;color:#f6f6f6;cursor:pointer;text-align:left;font:inherit;
}
.m-picker-option:hover,.m-picker-option:focus-visible {background:#ffffff14;border-color:#d2b27660;}
.m-picker-option.is-selected {background:#dfbc7d1c;border-color:#d2b27670;}
.m-picker-option-marker {
  flex:0 0 27px;display:grid;place-items:center;width:27px;height:27px;
  border-radius:7px;background:#000000;color:#eaca8a;
}
.m-picker-option-content {min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;}
.m-picker-option-content strong {font-size:12.5px;font-weight:650;line-height:1.3;}
.m-picker-option-content small {font-size:10px;color:#000000;}
.m-picker-option-check {display:none;font-size:15px;color:#f4d693;}
.m-picker-option.is-selected .m-picker-option-check {display:block;}
.m-picker-empty{color:#e0e0e0;font-size:12px;text-align:center;padding:15px 4px;margin:0!important;}
.m-map .m-picker-toggle:focus-visible,.m-map .m-picker-option:focus-visible {outline:2px solid #f3d999;outline-offset:2px;}
@media(max-width:800px) {
 .m-map .m-district-picker {width:min(310px,calc(100% - 24px));}
}
@media(max-width:650px) {
 .m-map .m-district-picker {top:auto;bottom:9px;left:9px;right:9px;width:auto;}
 .m-map .m-picker-toggle {min-height:46px;border-radius:10px;padding:4px 6px 4px 10px;}
 .m-picker-location{flex-basis:24px;width:24px;}
 .m-picker-chevron{flex-basis:34px;width:34px;height:34px;}
 .m-map .m-picker-popover {
   position:absolute;left:0;right:0;bottom:calc(100% + 7px);top:auto;
   width:auto;max-height:min(340px,64svh);overflow:hidden;
   padding:10px;box-shadow:0 20px 55px #000d;
 }
 .m-map .m-district-picker {top:calc(clamp(250px,64vw,300px) - 58px);bottom:auto;}
 .m-picker-list{max-height:min(210px,38svh);}
}
@media (prefers-reduced-motion:reduce) {.m-picker-chevron {transition:none;}}

/* Cohérence des icônes vectorielles entre sélecteur, quartiers et fiches */
.m-map .m-lucide-icon {display:block;flex-shrink:0;pointer-events:none;}
.m-map .m-picker-location svg {width:20px;height:20px;}
.m-map .m-picker-chevron svg {width:18px;height:18px;}
.m-map .m-picker-option-marker svg,.m-map .m-picker-option-check svg {width:16px;height:16px;}
.m-map .m-picker-search-box svg {width:18px;height:18px;}
.m-map .m-project-arrow {display:grid;place-items:center;}
.m-map .m-project-arrow svg {width:18px;height:18px;}
.m-map .m-project-arrow {border:0!important;margin:0!important;padding:0!important;}
.m-map .m-close {display:grid;place-items:center;min-width:34px;min-height:34px;}
.m-map .m-close svg {width:20px;height:20px;}
@media (max-width:650px) {
  .m-map .m-project-arrow {min-width:22px;}
}
