/* Los visores comparten controles móviles; el diseño de escritorio se conserva. */
@media (max-width: 767.98px), (max-width: 991.98px) and (pointer: coarse) {
  #vehicleLightbox,
  #serviceLightbox {
    grid-template-columns: minmax(0, 1fr) 3rem 5rem 3rem minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr) 3rem;
    gap: 1rem 0;
    padding: calc(4.5rem + env(safe-area-inset-top, 0px)) 0 max(1rem, env(safe-area-inset-bottom, 0px));
    overflow: hidden;
  }

  #vehicleLightbox.is-open,
  #serviceLightbox.is-open {
    display: grid;
  }

  #vehicleLightbox .service-lightbox__stage,
  #serviceLightbox .service-lightbox__stage {
    grid-area: 1 / 1 / 2 / -1;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    touch-action: none;
  }

  #vehicleLightbox .service-lightbox__image,
  #serviceLightbox .service-lightbox__image {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    touch-action: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
  }

  #vehicleLightbox .service-lightbox__nav,
  #serviceLightbox .service-lightbox__nav {
    position: static;
    grid-row: 2;
    width: 3rem;
    height: 3rem;
    transform: none;
  }

  #vehicleLightbox .service-lightbox__nav--prev,
  #serviceLightbox .service-lightbox__nav--prev {
    grid-column: 2;
  }

  #vehicleLightbox .service-lightbox__nav--next,
  #serviceLightbox .service-lightbox__nav--next {
    grid-column: 4;
  }

  #vehicleLightbox .vehicle-lightbox-count,
  #serviceLightbox .service-detail-lightbox-count {
    position: static;
    grid-area: 2 / 3;
    align-self: center;
    justify-self: center;
    transform: none;
  }

  #vehicleLightbox .service-lightbox__close,
  #serviceLightbox .service-lightbox__close {
    top: calc(.75rem + env(safe-area-inset-top, 0px));
    right: max(.75rem, env(safe-area-inset-right, 0px));
    z-index: 1;
  }
}
