/* 입지환경 지도 — 모바일에서 탭하면 큰 이미지로 보기 (핀치 확대·드래그·더블탭) */
.map-zoom-hint { display: none; }
@media (max-width: 1024px) {
  .loc-map__img { cursor: zoom-in; -webkit-tap-highlight-color: transparent; }
  .map-zoom-hint {
    display: block; position: absolute; right: 12px; bottom: 36px; z-index: 2;
    padding: 6px 12px; border-radius: 16px; background: rgba(0, 0, 0, .55);
    color: #fff; font-size: 12px; line-height: 1.2; pointer-events: none;
  }
}
.map-modal {
  display: none; position: fixed; inset: 0; z-index: 99999;
  background: rgba(0, 0, 0, .96); overflow: hidden; touch-action: none;
}
.map-modal.is-open { display: block; }
.map-modal__stage {
  position: absolute; left: 50%; top: 50%;
  transform: translate(-50%, -50%) scale(1); transform-origin: center center;
  will-change: transform; touch-action: none;
}
.map-modal__img {
  display: block; max-width: 100vw; max-height: 100vh; width: auto; height: auto;
  user-select: none; -webkit-user-drag: none; pointer-events: none;
}
.map-modal__close {
  position: absolute; top: 12px; right: 12px; z-index: 3; width: 44px; height: 44px;
  border: 0; border-radius: 50%; background: rgba(255, 255, 255, .18);
  color: #fff; font-size: 30px; line-height: 1; cursor: pointer;
}
.map-modal__guide {
  position: absolute; left: 50%; bottom: 16px; z-index: 2; transform: translateX(-50%);
  padding: 8px 12px; border-radius: 20px; background: rgba(0, 0, 0, .55);
  color: #fff; font-size: 12px; white-space: nowrap;
}
