/* Drupal 10.4/11 compatibility fixes for Martis quick view modal and product media. */

.ui-dialog.product-quick-view {
  width: min(1040px, calc(100vw - 40px)) !important;
  max-width: calc(100vw - 40px) !important;
  box-sizing: border-box;
}

.ui-dialog.product-quick-view .ui-dialog-content {
  width: auto !important;
  max-height: calc(100vh - 120px) !important;
  overflow-x: hidden;
  overflow-y: auto;
  box-sizing: border-box;
}

.ui-dialog.product-quick-view .product-post > .row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.ui-dialog.product-quick-view .product-image-wrap,
.ui-dialog.product-quick-view .product-content-wrap {
  min-width: 0;
}

.ui-dialog.product-quick-view .product-image-wrap img,
.ui-dialog.product-quick-view .piczoomer img,
.ui-dialog.product-quick-view .piczoomer-pic,
.ui-dialog.product-quick-view .piczoomer-pic-wp img {
  max-width: 100% !important;
  height: auto !important;
}

.ui-dialog.product-quick-view .piczoomer-pic-wp {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  box-sizing: border-box;
}

.ui-dialog.product-quick-view .piclist .owl-stage-outer {
  max-width: 100%;
}

.ui-dialog.product-quick-view .piczoomer-zoom-wp,
.ui-dialog.product-quick-view .piczoomer-cursor {
  display: none !important;
}

@media (max-width: 767px) {
  .ui-dialog.product-quick-view {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    left: 10px !important;
  }

  .ui-dialog.product-quick-view .product-image-wrap,
  .ui-dialog.product-quick-view .product-content-wrap {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }
}


/* Product zoom stability with Drupal CSS/JS aggregation enabled. */
.product-image-wrap .piczoomer,
.product-image-wrap .piczoomer .field-item {
  position: relative;
  min-height: 1px;
}

.product-image-wrap .piczoomer-pic-wp {
  line-height: 0;
  overflow: hidden;
}

.product-image-wrap .piczoomer-pic {
  display: block;
  width: 100% !important;
  height: auto !important;
}

.product-image-wrap:not(.product-image-colorbox) .piczoomer-zoom-wp {
  display: none;
  position: absolute;
  top: 0;
  left: calc(100% + 30px);
  z-index: 99;
  overflow: hidden;
  border: 1px solid #efefef;
  background: #fff;
}

.product-image-wrap:not(.product-image-colorbox) .piczoomer-cursor {
  display: none;
}

/* Mobile Colorbox fixes for product images. */
@media (max-width: 767px) {
  #colorbox,
  #cboxWrapper,
  #cboxContent,
  #cboxLoadedContent {
    max-width: 96vw !important;
    box-sizing: border-box !important;
  }

  #colorbox {
    left: 2vw !important;
    right: 2vw !important;
  }

  #cboxLoadedContent {
    overflow: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  #cboxLoadedContent img,
  #colorbox img {
    max-width: 100% !important;
    height: auto !important;
  }

  #cboxClose {
    top: 8px !important;
    right: 8px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    z-index: 10000 !important;
    opacity: 1 !important;
  }

  #cboxOverlay {
    opacity: 0.85 !important;
  }
}
