.imp-map-viewport {
  background: #e8ede4;
  border-radius: 12px 12px 0 0;
}
#district-map { background: #f6f1e7; }
#district-map.imp-map-national {
  background: radial-gradient(ellipse at 55% 38%, #d5e9e9, #b9d7dd);
}
#district-map .imp-atlas-outline { filter: drop-shadow(0 2px 5px #41696748); }
#district-map .imp-atlas-city span {
  color: #2c5046;
  text-shadow: 0 1px 2px #fffdf3, 0 -1px 2px #fffdf3;
}
#district-map .imp-atlas-city::before { background: #477669; }
#district-map :is(.leaflet-imp-ign-pane, .leaflet-imp-backup-pane) {
  filter: saturate(.82) contrast(.97);
}
#district-map:focus-visible { outline: 2px solid #146d61; outline-offset: -2px; }

.imp-float-tools button, .imp-float-tools summary {
  background: #fffefb;
  border-color: #d1ded6;
  color: #244740;
  box-shadow: 0 1px 1px #2342361a, 0 3px 9px #244c392c;
}
.imp-float-tools button[aria-pressed=true],
.imp-float-tools #district-quick-prices[aria-pressed=true] {
  background: #e9f5ed;
  border-color: #8ab6a7;
  color: #115e51;
}
.imp-float-tools :is(button, summary):is(:hover, :focus-visible),
#district-map .leaflet-control-zoom a:is(:hover, :focus-visible) {
  background: #e0f0e7;
  color: #0b544b;
}
#district-map .leaflet-control-zoom {
  border: 1px solid #c8dbd2;
  box-shadow: 0 2px 3px #27463520, 0 5px 12px #27463532;
}
#district-map .leaflet-control-zoom a {
  background: #fffefb;
  color: #204f43;
  border-bottom-color: #dce8df;
}
#district-map .leaflet-control-attribution {
  background: #fffef2ed;
  color: #405e55;
  border-top-left-radius: 6px;
}
#district-map .leaflet-control-attribution a { color: #245e69; }

#district-map .street-price {
  border-color: #f6fff9;
  box-shadow: inset 0 1px 0 #ffffff37, 0 2px 2px #0f473e29, 0 4px 9px #123a354d;
}
#district-map .street-price::after { border-color: #f6fff9; }
#district-map :is(.street-price-icon, .imp-district-label):focus-visible { outline: none; }
#district-map .street-price.commune-count {
  border-color: #fffdf6;
  box-shadow: 0 0 0 2px #146d6138, 0 3px 7px #123a354f;
}
.imp-commune-name {
  background: #fffdf5;
  border: 1px solid #b3c9b9;
  color: #24594d;
  box-shadow: 0 1px 3px #123a3520;
}
.imp-pin-yield { color: #dcf8e9; }

.imp-district-label span {
  background: #fffdf2f5;
  border-color: #7da898;
  color: #22594d;
  box-shadow: 0 1px 2px #173f3422, 0 2px 5px #173f3424;
}
.imp-district-label:is(.is-active, :hover, :focus-visible) span {
  background: #146d61;
  border-color: #f3fff8;
  color: #fff;
}
.imp-district-label:focus-visible span { outline: 2px solid #0b544b; outline-offset: 1px; }
#district-map .imp-map-point {
  background: #fffef8;
  background: color-mix(in srgb, var(--key-color) 11%, #fffef8);
  border-color: #fff;
  box-shadow: 0 2px 0 color-mix(in srgb, var(--key-color) 62%, #dce4da), 0 3px 6px #203a3544;
}
.imp-listing-preview { border-color: #c6dbcf; box-shadow: 0 8px 22px #204d4239; }
.imp-listing-preview .imp-preview-head { background: #ecf5ed; border-bottom-color: #dbe9de; }
.imp-preview-head button { background: #fffdf7; color: #24594d; }

@media (max-width: 600px) {
  #district-map .leaflet-control-attribution { font-size: 9px; }
}
