/* iOS Modal Fix - Body scroll lock */
body.modal-open {
  overflow: hidden !important;
  position: fixed !important;
  width: 100% !important;
  height: 100% !important;
  /* Prevent ALL touch gestures on body when modal is open */
  touch-action: none !important;
  /* Prevent text selection during scroll attempts */
  user-select: none !important;
  -webkit-user-select: none !important;
}

/* Target scroll margin for anchors */
:target {
  scroll-margin-top: 80px;
}

/* Z-INDEX HIERARCHY - FIXED FOR MOBILE */
/* Lightbox (fullscreen photos) - highest */
.lightbox,
#imgLightbox {
  z-index: 20000 !important;
}

/* Toast notifications - always visible, above everything except lightbox */
.toast-notifications,
.ce-toast {
  z-index: 16000 !important;
}

/* Success/Booking popup - appears above trip/hotel modals */
.success-popup-overlay,
.booking-popup-overlay {
  z-index: 15000 !important; /* Above modals when showing success/confirmation */
}

/* Trip/Hotel Modals - ABOVE EVERYTHING ELSE (language, header, etc) */
.trip-modal,
#hotelModal,
#tripModal {
  z-index: 12000 !important;
}

/* Detail modal */
.detail-modal {
  z-index: 11000 !important;
}

/* Language selector - BELOW trip/hotel modals */
.language-selector,
.language-selector-dialog,
.language-mobile-overlay,
.language-switcher-panel {
  z-index: 10000 !important;
}

/* Tutorial overlay */
.tutorial-overlay {
  z-index: 9000 !important;
}

/* Header - way below modals */
header,
.header,
.app-header {
  z-index: 1000 !important;
}

/* Mobile nav */
.mobile-nav {
  z-index: 1000 !important;
}
