/* ============================================================
   Everything Dancing — Events Explorer
   File: assets/css/explorer-desktop.css
   ============================================================ */

.w2d-explorer--desktop {
  --w2d-desktop-gap: 20px;
  --w2d-desktop-radius: 24px;
  --w2d-desktop-pane-bg: rgba(255, 255, 255, 0.88);
  --w2d-desktop-pane-border: rgba(15, 23, 42, 0.08);
  --w2d-desktop-shadow:
    0 18px 48px rgba(15, 23, 42, 0.08),
    0 4px 14px rgba(15, 23, 42, 0.05);

  --w2d-desktop-header-offset: 92px;
  --w2d-desktop-viewport-height: calc(100dvh - var(--w2d-desktop-header-offset));
  --w2d-desktop-results-width: minmax(360px, 460px);
}

/* -----------------------------------
   Desktop / iPad landscape only
----------------------------------- */

@media (min-width: 1024px) {
  .w2d-explorer--desktop {
    height: var(--w2d-desktop-viewport-height) !important;
    max-height: var(--w2d-desktop-viewport-height) !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
  }

  .w2d-explorer--desktop .w2d-explorer__desktop {
    display: grid;
    grid-template-columns: var(--w2d-desktop-results-width) minmax(0, 1fr);
    gap: var(--w2d-desktop-gap);
    align-items: stretch;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    overflow: hidden;
    background: transparent;
  }

  .w2d-explorer--desktop .w2d-explorer__results {
    min-width: 0;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    border-radius: var(--w2d-desktop-radius);
    border: 1px solid var(--w2d-desktop-pane-border);
    background: var(--w2d-desktop-pane-bg);
    box-shadow: var(--w2d-desktop-shadow);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    position: relative;
  }

  .w2d-explorer--desktop .w2d-explorer__resultsInner {
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    overflow: hidden;
    background: transparent;
    position: relative;
  }

  .w2d-explorer--desktop .w2d-sheet,
  .w2d-explorer--desktop .w2d-sheet.w2d-sheet--desktop {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .w2d-explorer--desktop .w2d-sheet__chrome,
  .w2d-explorer--desktop .w2d-sheet__handle {
    display: none !important;
  }

  .w2d-explorer--desktop .w2d-sheet__content,
  .w2d-explorer--desktop .w2d-sheetView,
  .w2d-explorer--desktop .w2d-sheetView--list {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    padding: 0 !important;
    background: transparent !important;
    overflow: hidden !important;
  }

  .w2d-explorer--desktop .w2d-sheetView--detail,
  .w2d-explorer--desktop .w2d-sheetView--detail[hidden],
  .w2d-explorer--desktop .w2d-sheetViewport--detail,
  .w2d-explorer--desktop .w2d-eventDetail {
    display: none !important;
  }

  .w2d-explorer--desktop .w2d-sheetViewport,
  .w2d-explorer--desktop .w2d-sheetViewport--list {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    padding: 0 !important;
    background: transparent !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    touch-action: pan-y !important;
  }

  .w2d-explorer--desktop .w2d-eventsList {
    display: grid !important;
    align-content: start;
    width: 100%;
    min-height: 0 !important;
    background: transparent;
  }

  .w2d-explorer--desktop .w2d-explorer__mapPane {
    min-width: 0;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    position: relative;
    border-radius: var(--w2d-desktop-radius);
    overflow: hidden;
    border: 1px solid var(--w2d-desktop-pane-border);
    box-shadow: var(--w2d-desktop-shadow);
    background: rgba(255, 255, 255, 0.6);
  }

  .w2d-explorer--desktop .w2d-explorer__mapPane--sticky {
    position: relative;
    top: auto;
    align-self: stretch;
  }

  .w2d-explorer--desktop .w2d-explorer__map {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: transparent;
  }

  .w2d-explorer--desktop .w2d-explorer__mapInner,
  .w2d-explorer--desktop [data-w2d-map],
  .w2d-explorer--desktop [data-w2d-map-canvas] {
    width: 100%;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    background: transparent;
  }
}

/* -----------------------------------
   Larger desktop refinement
----------------------------------- */

@media (min-width: 1280px) {
  .w2d-explorer--desktop {
    --w2d-desktop-gap: 22px;
    --w2d-desktop-results-width: minmax(390px, 500px);
  }
}

/* -----------------------------------
   Small-window safety reset
   This prevents desktop rules from breaking mobile/small widths
----------------------------------- */

@media (max-width: 1023.98px) {
  .w2d-explorer--desktop {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .w2d-explorer--desktop .w2d-explorer__desktop,
  .w2d-explorer--desktop .w2d-explorer__results,
  .w2d-explorer--desktop .w2d-explorer__resultsInner,
  .w2d-explorer--desktop .w2d-explorer__mapPane {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .w2d-explorer--desktop .w2d-sheet,
  .w2d-explorer--desktop .w2d-sheet__content,
  .w2d-explorer--desktop .w2d-sheetView,
  .w2d-explorer--desktop .w2d-sheetViewport {
    height: auto;
    max-height: none;
  }
}