/* MVM map filter control — collapsible "Show" panel pinned to the top-left
   of an interactive map, beneath the zoom & fullscreen buttons. */
.mvm-mf {
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 5px rgba(0,0,0,0.65);
  overflow: hidden;
  font: 13px/1.3 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color: #1B2A4E;
  max-width: 230px;
  border: 2px solid rgba(0,0,0,.2);
}
.leaflet-bar.mvm-mf { border-radius: 4px; }

.mvm-mf__head {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding: 6px 8px;
  background: #fff;
  color: #1B2A4E;
  border: 0;
  border-bottom: 1px solid #e1e1e1;
  cursor: pointer;
  font: inherit;
  font-weight: 600;
  text-align: left;
}
.mvm-mf__head:hover { background: #f7f7f4; }
.mvm-mf__head-icon { display: inline-flex; align-items: center; color: #6B6B6B; }
.mvm-mf__head-label { flex: 1; }
.mvm-mf__head-caret { color: #6B6B6B; font-size: 10px; transition: transform .15s ease; }
.mvm-mf.is-collapsed .mvm-mf__head { border-bottom-color: transparent; }
.mvm-mf.is-collapsed .mvm-mf__head-caret { transform: rotate(-90deg); }
.mvm-mf.is-collapsed .mvm-mf__body { display: none; }

.mvm-mf__body {
  padding: 6px 8px 8px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mvm-mf__row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 3px 2px;
  border-radius: 3px;
  cursor: pointer;
  user-select: none;
}
.mvm-mf__row:hover { background: #f0f4ff; }
.mvm-mf__cb {
  margin: 0;
  width: 14px;
  height: 14px;
  accent-color: #D4A341;
  flex-shrink: 0;
}
.mvm-mf__swatch-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.mvm-mf__swatch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  border: 1.5px solid #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,0.25);
  background: #1B2A4E;
}
.mvm-mf__swatch--svg { padding: 2px; }
.mvm-mf__swatch--svg > svg { width: 100%; height: 100%; display: block; }
.mvm-mf__swatch--miles {
  background: #1B2A4E;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10px;
}

.mvm-mf__label {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Slight spacing from the leaflet zoom + fullscreen stack above it. */
.leaflet-top.leaflet-left .mvm-mf {
  margin-top: 6px;
}
