#district-map { background-color:#eeece9; }
#district-map.imp-map-national {
  background-color:#e5e8f1;
  background-image:radial-gradient(#adb7cc60 1px,transparent 1px);
}
#district-map .leaflet-tile-pane { filter:saturate(.72) contrast(.86) brightness(1.1); }
.street-price,.street-price.cluster {
  --pin:#db0718; position:relative; background:var(--pin); color:#fff; border:1px solid #ad0d1a;
  padding:8px 11px; min-width:0; font-size:13px; box-shadow:0 3px 8px #26212a46;
}
.street-price::after {
  content:""; position:absolute; bottom:-4px; left:calc(50% - 4px); width:8px; height:8px;
  background:var(--pin); transform:rotate(45deg); border-right:1px solid #ad0d1a; border-bottom:1px solid #ad0d1a;
}
.street-price-icon:is(:hover,:focus-visible,.is-selected) .street-price {
  --pin:#a50819; background:var(--pin); color:#fff; border-color:#850614; box-shadow:0 0 0 3px #fff,0 3px 12px #30202860;
}
.imp-float-tools {
  position:absolute; top:11px; left:11px; right:11px; z-index:3; display:flex; gap:7px;
  align-items:flex-start; flex-wrap:wrap; pointer-events:none;
}
.imp-float-tools button,.imp-float-tools summary {
  pointer-events:auto; appearance:none; background:white; color:#252733; border:1px solid #d8d9df;
  min-height:36px; padding:7px 11px; border-radius:999px; cursor:pointer;
  font:800 12px/1.25 Manrope,system-ui,sans-serif; box-shadow:0 2px 7px #28242e2c;
}
.imp-float-tools button[aria-pressed=true] { border-color:#3868a7; color:#1e4e8c; }
.imp-float-tools summary { display:flex; align-items:center; }
.imp-float-tools summary::before { content:"≋"; font-size:17px; margin-right:6px; }
#district-settings-slot { min-width:0; position:relative; }
#district-settings-slot details[open] {
  pointer-events:auto; max-width:min(480px,calc(100vw - 48px)); background:#fff; border-radius:14px;
  padding:8px; box-shadow:0 6px 20px #292c4240; max-height: min(390px,60vh); overflow:auto;
}
#district-settings-slot details[open] summary { box-shadow:none; }
#explorer .map-view-actions { top:auto; bottom:24px; right:auto; left:11px; justify-items:start; }
#district-map .leaflet-control-zoom { border:0; box-shadow:0 2px 9px #22242b3d; border-radius:18px; overflow:hidden; }
#district-map .leaflet-control-zoom a { width:39px; height:38px; line-height:37px; color:#272733; }
@media(max-width:600px) {
  #explorer .map-view-actions { position:static; }
  .imp-float-tools { gap:4px; top:7px; left:7px; right:7px; }
  .imp-float-tools button,.imp-float-tools summary { padding:5px 7px; min-height:32px; font-size:11px; }
  .street-price,.street-price.cluster { padding:6px 8px; font-size:11px; }
}
