/* Model Viewer Custom css */
.bp_grand,
.bp3dmodel-carousel {
  position: relative;
  margin-bottom: 25px;
}

.bp_model_parent,
.bp_model_gallery {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;

}

.bp_model_parent:fullscreen {
  background-color: #cfcfcf;
}

.fullscreen.bp_model_parent,
.fullscreen.bp_model_gallery {
  width: 100% !important;
  height: 100% !important;
  top: 0;
  left: 0;
  position: fixed;
  z-index: 9999999;
  background: #fff;
}

.fullscreen model-viewer {
  animation-name: opacityTo;
  animation-duration: 2s;
}

.model-icon {
  fill: #333;
  cursor: pointer;
}

.bp_model_parent #closeBtn,
.bp_model_gallery #closeBtn {
  display: none;
}

.fullscreen #closeBtn,
.bp_model_parent:fullscreen #closeBtn {
  display: block;
  background-color: #999;
  position: absolute;
  top: 10px;
  right: 10px;
  background: #333;
  color: #fff;
  border-radius: 3px;
}

.bp_model_parent #openBtn,
.bp_model_gallery #openBtn {
  display: none;
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: #333;
  fill: #f2f2f2;
  padding: 6px;
  border-radius: 3px;
  box-sizing: border-box;
  cursor: pointer;
}

.modelViewerBlock .bp_model_parent:hover #openBtn,
.b3dviewer-wrapper:hover #openBtn,
.modelViewerBlock .bp_model_gallery:hover #openBtn,
[class*="product_"]:hover #openBtn {
  display: block;
}

.modelViewerBlock {
  max-width: 100%;
}

.modelViewerBlock .fullscreen.bp_model_parent #openBtn,
.modelViewerBlock .fullscreen.bp_model_gallery #openBtn,
.modelViewerBlock .bp_model_parent:fullscreen #openBtn {
  display: none;
}

.bp3d_loader {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

@keyframes opacityTo {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

model-viewer {
  max-width: 100%;
  width: 100%;
  height: 100%;
}

.woocommerce-product-gallery__image a model-viewer {
  max-height: 100px;
}

/* .bp3d-model-buttons  */
.slick-prev,
.slick-next {
  width: 25px;
  height: 25px;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: #f4f4f4;
  outline: none;
}

.slick-prev {
  left: 15px;
  z-index: 5;
}

.slick-next {
  right: 15px;
}

.slick-prev::before,
.slick-next::before {
  color: #d2d2d2;
}

/* CSS for Woocommerce */
.product-modal-wrap {
  display: flex;
  flex-direction: column;
  float: left;
  width: 50%;
}

.product-modal-wrap .images {
  width: 100% !important;
}

.bp_model_parent .progress {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #64646440;
  font-weight: bold;
  font-size: 2em;
  position: absolute;
  color: #fff;
  max-width: 100%;
}

.qodef-woo-single-page .qodef-single-product-summary {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .qodef-woo-single-page .summary {
    width: 48%;
    float: right;
  }
}

@media screen and (max-width: 767px) {
  .product-modal-wrap:has(+.summary) {
    width: 100%;
  }
}