/* Keep city identity and tools in separate rows above the map canvas. */
html body #mapwrap {
  margin-top: 148px;
  height: calc(100dvh - 182px) !important;
  overflow: visible;
}
html body #mapwrap > .ovl-l,
html body #mapwrap > .ovl-r {
  top: -136px;
}
html body #mapsvg { overflow: hidden; }
html body #cityExplorer { top: 134px !important; }
html body #cityDirectory,
html body #cityDetail { top: 184px !important; }
html body #mapwrap > .hint {
  top: -132px;
  left: 370px;
  right: 370px;
  margin: 0;
  max-height: 72px;
  overflow: auto;
  background: transparent;
  font-size: 10px;
  line-height: 1.5;
}
@media (max-width: 1100px) {
  html body #mapwrap > .hint { display: none; }
}

/* Retain the original tower silhouette and allow its labels in full-city view. */
html body #mapsvg.city-wide .city-tower-label,
html body #mapsvg.city-wide .city-evtol-label { visibility: visible; }
html body #mapsvg .city-tower-label {
  font: 700 18px Georgia, "Songti SC", serif;
  fill: #0b1a3a;
  paint-order: stroke;
  stroke: #fbfaf6;
  stroke-width: 3px;
  stroke-linejoin: round;
}
html body #mapsvg .city-tower-label.geo-ml { font-size: 12px; }
html body #mapsvg.city-wide .city-tower-label { font-size: 76px; stroke-width: 12px; }
html body #mapsvg.city-wide .city-tower-label.geo-ml { font-size: 48px; }
html body #mapsvg:not(.city-wide) .city-tower-label.geo-ml { transform: translateY(-32px); }
html body #mapsvg .city-evtol-label {
  font: 700 18px system-ui, sans-serif;
  fill: #8d6224;
  paint-order: stroke;
  stroke: #fbfaf6;
  stroke-width: 3px;
  stroke-linejoin: round;
}
html body #mapsvg .city-evtol-note { font-size: 11px; }
html body #mapsvg.city-wide .city-evtol-label { font-size: 66px; stroke-width: 10px; }
html body #mapsvg.city-wide .city-evtol-note { font-size: 36px; }
html body #mapsvg:not(.city-wide) .city-evtol-note { transform: translateY(-28px); }
html body #mapsvg .aircor path { stroke-width: 4px; opacity: .85; }
html body #city-tower-link { cursor: pointer; }

@media (max-width: 760px) {
  html body #mapwrap {
    margin-top: 176px;
    height: calc(100dvh - 210px) !important;
  }
  html body #mapwrap > .ovl-l {
    top: -164px;
    max-width: calc(100vw - 24px);
  }
  html body #mapwrap > .ovl-r { top: auto; }
  html body #cityExplorer { top: 146px !important; }
  html body #cityDirectory,
  html body #cityDetail { top: 222px !important; }
}
