/* Minimal WordPress/WooCommerce bridge. The uploaded source HTML/CSS remains authoritative. */
.bs-source-product-page product-info,
.bs-source-product-page media-gallery,
.bs-source-product-page slider-component,
.bs-source-product-page variant-radios,
.bs-source-product-page modal-opener,
.bs-source-product-page product-form,
.bs-source-product-page slideshow-component{display:block}
.bs-source-product-page .product__view-details{display:none!important}
.bs-source-product-page product-modal,
.bs-source-product-page .product-media-modal{display:none!important}
.bs-source-product-page .shopify-payment-button,
.bs-source-product-page .shopify-payment-button__button,
.bs-source-product-page [data-shopify="payment-button"]{display:none!important}
.bs-source-product-page .bs-source-add-to-cart{cursor:pointer}
.bs-source-product-page .bs-source-cart-message{font-size:1.2rem;margin-top:.8rem;min-height:1.4em}
.bs-source-product-page .bs-source-cart-message.is-error{color:#b42318}
.bs-source-product-page .product__media-item{display:none}
.bs-source-product-page .product__media-item.is-active{display:block}
.bs-source-product-page .thumbnail-list__item .thumbnail{cursor:pointer}
.bs-source-product-page .thumbnail[aria-current="true"],
.bs-source-product-page .thumbnail.is-active{border-color:rgba(var(--color-foreground),.8)}
.bs-source-product-page .review-items-container .slideshow__slide{display:none}
.bs-source-product-page .review-items-container .slideshow__slide.is-active{display:block}
.bs-source-product-page .slider-buttons button{cursor:pointer}
.bs-source-product-page .jdgm-paginate__page{cursor:pointer}
.bs-source-product-page .bs-reviews-message{font-size:1.4rem;color:#b42318;text-align:center;margin:1rem 0}
.bs-source-product-page .jdgm-rev__pics{display:flex!important;flex-wrap:wrap;gap:1rem;margin:1.2rem 0 0!important}
.bs-source-product-page .jdgm-rev__pics.bs-review-photos-empty{display:none!important}
.bs-source-product-page .jdgm-rev__pic-link{display:block!important;position:relative;width:8rem;height:8rem;overflow:hidden;border:1px solid rgba(0,150,97,.15);border-radius:.4rem;background:#f6f6f6;cursor:zoom-in}
.bs-source-product-page .jdgm-rev__pic-link:focus-visible{outline:2px solid #009661;outline-offset:3px}
.bs-source-product-page .jdgm-rev__pic-img{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:100%!important;object-fit:cover}
.bs-source-product-page .bs-review-photo-error:after{content:"View photo";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#f6f6f6;color:#333;font-size:1.2rem;text-align:center}

/* Do not let WooCommerce's generic post-add UI alter the captured product button. */
.bs-source-product-page .bs-source-add-to-cart.added,
.bs-source-product-page .bs-source-add-to-cart.is-added,
.bs-source-product-page .bs-source-add-to-cart:focus,
.bs-source-product-page .bs-source-add-to-cart:focus-visible{
  outline:0!important;
  box-shadow:none!important;
}
.bs-source-product-page .added_to_cart.wc-forward{display:none!important}

/* Desktop source behavior: preserve the uploaded source sticky values.
   Only correct flex/overflow containment so the source's own product__column-sticky
   rule can work: the left media stays put inside the product row and releases at
   the row end, exactly before the following FAQ/review sections. */
@media screen and (min-width:750px){
  .bs-source-product-page .product{
    align-items:flex-start!important;
    overflow:visible!important;
  }
  .bs-source-product-page .product>.product__media-wrapper.product__column-sticky,
  .bs-source-product-page .product>.product__info-wrapper.product__column-sticky{
    align-self:flex-start!important;
  }
  .bs-source-product-page .product__media-wrapper,
  .bs-source-product-page .product__info-wrapper,
  .bs-source-product-page media-gallery{
    overflow:visible!important;
  }
}

/* Woo variation sale price while keeping the captured source price typography. */
.bs-source-product-page .bs-source-compare-price{
  margin-left:.7rem;
  color:rgba(var(--color-foreground),.65);
  font-size:.72em;
  font-weight:600;
}

/* Real Judge.me pagination is loaded through the WordPress proxy. */
.bs-source-product-page #judgeme_product_reviews.bs-reviews-loading{
  opacity:.62;
  pointer-events:none;
}
.bs-source-product-page #judgeme_product_reviews.bs-reviews-loading .jdgm-rev-widg__paginate-spinner-wrapper{
  display:block!important;
}

/* Bottom add-to-cart bar. It invokes the same WooCommerce AJAX add action as the
   source button; it is not a cart or side-cart implementation. */
.bs-sticky-add-to-cart{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  z-index:9998;
  margin:0;
  padding:.72rem 1.5rem;
  border:0;
  border-radius:0;
  background:#009d70;
  color:#fff;
  font:inherit;
  font-size:1.8rem;
  font-weight:700;
  line-height:1.15;
  text-align:center;
  cursor:pointer;
  transform:translateY(115%);
  transition:transform .16s ease-in-out;
  box-shadow:0 -1px 7px rgba(0,0,0,.12);
}
.bs-sticky-add-to-cart.is-visible{transform:translateY(0)}
.bs-sticky-add-to-cart:disabled{opacity:.55;cursor:not-allowed}
@media screen and (max-width:749px){
  .bs-sticky-add-to-cart{font-size:1.55rem;padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom,0px))}
}
