/* Five locations share a map, not an acquisition or evaluation pipeline. */
.world-context { min-height: 0; height: auto; display: flex; flex-direction: column; gap: .65rem; }
.world-context__header { flex-wrap: wrap; align-items: flex-start; }
.world-context__header > div { min-width: 0; flex: 1 1 15rem; }
.world-context__header h2 { font-size: .8rem; line-height: 1.4; }
.world-context__header p { font-size: .75rem; line-height: 1.45; }
.map-focus-label { flex: 0 1 15rem; max-width: 100%; overflow-wrap: anywhere; font-size: .72rem; line-height: 1.4; }
.world-map-frame { flex: 0 0 auto; min-height: 0; height: auto; padding-top: .55rem; }
.world-map { width: 100%; height: auto; aspect-ratio: 1000 / 480; overflow: hidden; }
/* Symbol colors mean transport type. The animated ring follows core focus. */
#world-map .map-marker[data-location-kind="port"] { color: var(--port); }
#world-map .map-marker[data-location-kind="air"] { color: var(--air); }
#world-map .map-marker__label { fill: #dfe7f3; opacity: 1; letter-spacing: .02em; paint-order: stroke; stroke: #07101c; stroke-width: 5; stroke-linejoin: round; }
#world-map .map-marker__ring { opacity: .55; }
#world-map .map-marker.is-focus .map-marker__ring { opacity: 1; }
#world-map .map-marker[data-location-only="true"] .map-marker__ring { animation: none; }
.observation-map-legend { display: flex; flex-wrap: wrap; gap: .45rem 1.1rem; margin: 0; color: var(--ink-muted); font-size: .78rem; line-height: 1.5; }
.observation-map-legend > span { display: inline-flex; align-items: center; gap: .4rem; }
.observation-map-key { display: inline-block; width: .55rem; height: .55rem; flex: 0 0 .55rem; }
.observation-map-key--port { background: var(--port); border-radius: 50%; }
.observation-map-key--air { background: var(--air); transform: rotate(45deg); }
@media (max-width: 1000px) {
  .world-context { min-height: 0; }
  .world-map-frame { min-height: 0; }
}
@media (max-width: 600px) {
  .world-context { padding: .8rem; }
  .map-focus-label { text-align: left; }
  .world-context__header h2 { font-size: .8rem; }
  .observation-map-legend { font-size: .78rem; gap: .4rem .9rem; }
}
