/* MapLibre/OpenFreeMap street-map treatment for the BIP interface explorer. */
.regional-live-map{
  background:#f3f2ee!important;
  border:1px solid rgba(18,39,61,.10)!important;
  box-shadow:0 20px 56px rgba(18,39,61,.09)!important;
}

.regional-live-canvas,
.report-map-wrap .regional-live-canvas{
  position:relative!important;
  background:#f1f0eb!important;
  pointer-events:auto!important;
  cursor:grab!important;
  touch-action:none!important;
}
.regional-live-canvas:active{cursor:grabbing!important}

.regional-vector-map{
  position:absolute;
  inset:0;
  z-index:0;
  background:#f1f0eb;
}
.regional-vector-map .maplibregl-map,
.regional-vector-map .maplibregl-canvas-container,
.regional-vector-map .maplibregl-canvas{
  width:100%!important;
  height:100%!important;
}
.regional-vector-map .maplibregl-canvas{outline:none!important}
.regional-vector-map .maplibregl-control-container{display:none!important}

/* Keep the map clear and editorial, with only a faint edge treatment. */
.regional-live-canvas:after{
  content:'';
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,254,249,.025),transparent 12%,transparent 88%,rgba(255,254,249,.035));
  box-shadow:inset 0 0 46px rgba(17,40,63,.022)!important;
}

.regional-live-markers{
  position:absolute;
  inset:0;
  z-index:4!important;
  pointer-events:none!important;
}

/* Individual records: compact civic-map markers with an ivory halo. */
.regional-live-marker{
  width:30px!important;
  height:30px!important;
  pointer-events:auto!important;
}
.regional-live-marker span{
  width:var(--regional-marker-size)!important;
  height:var(--regional-marker-size)!important;
  border:2px solid rgba(255,254,249,.99)!important;
  background:#163555!important;
  box-shadow:0 0 0 1px rgba(16,34,52,.12),0 3px 9px rgba(16,34,52,.22)!important;
}
.regional-live-marker span:after{
  inset:3px!important;
  background:rgba(255,255,255,.08)!important;
}
.regional-live-marker:hover span,
.regional-live-marker:focus-visible span,
.regional-live-marker.is-active span{
  transform:scale(1.34)!important;
  background:#bb7655!important;
  box-shadow:0 0 0 5px rgba(187,118,85,.14),0 5px 15px rgba(16,34,52,.24)!important;
}

/* Lighter, more map-native controls. */
.regional-live-controls{
  left:14px!important;
  top:14px!important;
  z-index:8!important;
  border:1px solid rgba(16,34,52,.10)!important;
  border-radius:7px!important;
  box-shadow:0 8px 24px rgba(16,34,52,.10)!important;
  backdrop-filter:blur(10px)!important;
}
.regional-live-controls button{
  min-width:42px!important;
  height:40px!important;
  background:rgba(255,255,252,.95)!important;
  color:#14293e!important;
  border-bottom:1px solid rgba(16,34,52,.09)!important;
}
.regional-live-controls button:hover{background:#fff!important}
.regional-live-controls button:last-child{
  border-bottom:0!important;
  font-size:8px!important;
  letter-spacing:.12em!important;
}

.regional-live-attribution{
  z-index:8!important;
  padding:4px 7px!important;
  background:rgba(255,255,255,.88)!important;
  color:#506d8b!important;
  font:8px/1.2 Arial,sans-serif!important;
  backdrop-filter:blur(5px)!important;
}
.regional-live-attribution a{text-decoration:none!important}
.regional-live-attribution a:hover{text-decoration:underline!important}

/* Slightly calmer filter chrome to complement the street map. */
.regional-live-filter{background:#fffefa!important}
.regional-live-filter-buttons button{box-shadow:none!important}
.regional-live-filter-buttons button.is-active{
  background:#f8fbf8!important;
  border-color:#718fae!important;
  box-shadow:inset 0 -2px 0 #163555!important;
}

@media(max-width:600px){
  .regional-live-map{box-shadow:0 12px 34px rgba(18,39,61,.075)!important}
  .regional-live-controls{left:9px!important;top:9px!important}
  .regional-live-controls button{min-width:39px!important;height:38px!important}
  .regional-live-attribution{font-size:7px!important;padding:3px 5px!important}
}
