/* The globe shares the page's vertical gesture; it never needs activation. */
#atlas .globe-window,
#atlas.map-ready .globe-window {
  /* Vertical pan stays native; the globe's two-finger handler owns pinch. */
  touch-action: pan-y;
  overscroll-behavior: auto;
}
#atlas .globe-window.is-pinching { cursor: zoom-in; }
#atlas .atlas-places,
#atlas .atlas-selection {
  overscroll-behavior-y: auto;
}
#atlas .atlas-map-controls > span {
  max-width: 24ch;
  line-height: 1.5;
}
#atlas .atlas-map-controls button svg {
  display: block;
  pointer-events: none;
}
@media (max-width: 700px) {
  /* A sideways place rail leaves every vertical swipe free to move on. */
  #atlas .atlas-places {
    grid-template-columns: none;
    grid-template-rows: repeat(2, auto);
    grid-auto-flow: column;
    grid-auto-columns: minmax(155px, 57%);
    gap: 0 22px;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 9px;
    touch-action: pan-x pan-y pinch-zoom;
    overscroll-behavior: auto;
    scrollbar-width: thin;
  }
  #atlas .atlas-places button {
    min-height: 48px;
    align-items: center;
  }
  #atlas .atlas-places small { padding-top: 0; }
  #atlas .atlas-map-controls > span { max-width: none; }
  #atlas .atlas-map-controls > div {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 4px;
  }
  #atlas .atlas-map-controls button { min-width: 0; width: 100%; }
  #atlas .atlas-map-controls button:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: auto;
    min-width: 78px;
    min-height: 36px;
  }
  #atlas .atlas-location-note::after {
    content: ' Swipe sideways for more places.';
  }
}
@media (max-width: 360px) {
  #atlas .atlas-map-controls > div { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
