/* A shared motion plane keeps the live previews behind the fixed footage. */
.gallery-previews { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.gallery-previews .neighbor-preview { top: 0; transform-origin: 50% 0; transition: none; will-change: transform; pointer-events: auto; }
.gallery-previews .preview-ghost { pointer-events: none; }
.gallery-previews .preview-caption { pointer-events: none; }
.gallery-stage .gallery-card { transition: none; }
.gallery-scene.is-dragging .neighbor-preview { cursor: grabbing; }
@media (max-width: 680px), (max-height: 600px) and (min-width: 681px) {
  .is-expanded .gallery-previews { display: none; }
}

/* Finger drags own the horizontal axis; vertical page scrolling stays native. */
.gallery-scene, .gallery-stage, .gallery-card, .neighbor-preview {
  touch-action: pan-y pinch-zoom;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
