/*
 * KemetX Tours — Hurghada chooser emergency compatibility layer
 * Keeps the package chooser inside the real phone viewport even when an older
 * compiled bundle still leaves a transform on <main> or renders the dialog
 * inside the Living Map section instead of a React portal.
 */

html.kemetx-hurghada-modal-open,
html.kemetx-hurghada-modal-open body {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

html.kemetx-hurghada-modal-open main {
  transform: none !important;
  translate: none !important;
  filter: none !important;
  perspective: none !important;
}

html.kemetx-hurghada-modal-open .kemetx-map-section {
  position: relative !important;
  z-index: 2147483000 !important;
  isolation: auto !important;
  overflow: visible !important;
  contain: none !important;
  content-visibility: visible !important;
}

html.kemetx-hurghada-modal-open .ai-launcher-lite,
html.kemetx-hurghada-modal-open a[aria-label="Contact KemetX Tours on WhatsApp"] {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.kemetx-hurghada-chooser {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483600 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  overflow: auto !important;
  padding: max(0.75rem, env(safe-area-inset-top)) max(0.75rem, env(safe-area-inset-right)) max(0.75rem, env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-left)) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
  background: rgba(1, 13, 17, 0.9) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
  overscroll-behavior: contain !important;
  touch-action: pan-y !important;
}

@supports (height: 100dvh) {
  .kemetx-hurghada-chooser {
    height: 100dvh !important;
    min-height: 100dvh !important;
  }
}

.kemetx-hurghada-chooser-panel {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: min(100%, 1040px) !important;
  max-width: 1040px !important;
  max-height: calc(100vh - 1.5rem) !important;
  margin: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
}

@supports (height: 100dvh) {
  .kemetx-hurghada-chooser-panel {
    max-height: calc(100dvh - 1.5rem) !important;
  }
}

@media (max-width: 760px) {
  html.kemetx-hurghada-modal-open main {
    animation: none !important;
    transform: none !important;
  }

  .kemetx-hurghada-chooser {
    align-items: center !important;
    justify-content: center !important;
    padding-top: max(0.5rem, env(safe-area-inset-top)) !important;
    padding-right: max(0.5rem, env(safe-area-inset-right)) !important;
    padding-bottom: max(0.5rem, env(safe-area-inset-bottom)) !important;
    padding-left: max(0.5rem, env(safe-area-inset-left)) !important;
  }

  .kemetx-hurghada-chooser-panel {
    width: calc(100vw - 1rem) !important;
    max-width: calc(100vw - 1rem) !important;
    max-height: calc(100vh - 1rem) !important;
    border: 1px solid rgba(244, 207, 112, 0.32) !important;
    border-radius: 1.35rem !important;
    padding: 1rem 0.85rem max(1.15rem, env(safe-area-inset-bottom)) !important;
  }

  @supports (height: 100dvh) {
    .kemetx-hurghada-chooser-panel {
      max-height: calc(100dvh - 1rem) !important;
    }
  }

  .kemetx-hurghada-chooser-heading {
    margin-bottom: 0.85rem !important;
    padding: 1.2rem 2.25rem 0 !important;
  }

  .kemetx-hurghada-chooser-heading h3 {
    margin-top: 0.75rem !important;
    font-size: clamp(2rem, 10vw, 2.85rem) !important;
    line-height: 0.96 !important;
  }

  .kemetx-hurghada-chooser-heading p {
    margin-top: 0.65rem !important;
    font-size: 0.74rem !important;
    line-height: 1.55 !important;
  }

  .kemetx-hurghada-package-grid {
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  .kemetx-hurghada-package-card {
    min-height: 225px !important;
    border-radius: 1.2rem !important;
  }

  .kemetx-hurghada-package-copy {
    inset: auto 1rem 1rem !important;
  }

  .kemetx-hurghada-package-copy strong {
    font-size: 1.95rem !important;
  }

  .kemetx-hurghada-package-copy em {
    margin-top: 0.45rem !important;
    font-size: 0.7rem !important;
  }

  .kemetx-hurghada-package-copy b {
    margin-top: 0.65rem !important;
  }

  .kemetx-hurghada-all-link {
    margin-top: 0.85rem !important;
    padding-bottom: 0.2rem !important;
  }
}
