/* Botó natiu del loop ocult */
a.add_to_cart_button {
  display: none !important;
}

/* Efecte press-down */
.product {
  transition: transform 0.15s ease;
}

.product:active {
  transform: scale(0.96);
}

/* Boleta */
.tcqr-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  background: #d40000;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  border-radius: 999px;
  min-width: 20px;
  height: 20px;
  line-height: 20px;
  text-align: center;
  padding: 0 5px;
  z-index: 20;
  display: none;
}

/* Toast */
.tcqr-toast {
  position: fixed;
  left: 50%;
  bottom: 120px;
  transform: translateX(-50%);
  background: #2d6a8a;
  color: #fff;
  padding: 10px 16px;
  border-radius: 8px;
  z-index: 99999;
  font-size: 16px;
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
}

/* Popup variants */
.tcqr-variant-popup {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.7);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.tcqr-variant-popup[hidden] {
  display: none !important;
}

.tcqr-variant-popup__panel {
  background: #fff;
  padding: 20px;
  border-radius: 12px;
  width: min(100%, 420px);
}

.tcqr-variant-popup__panel label {
  display: block;
  margin: 0 0 6px;
  font-weight: 600;
}

.tcqr-variant-popup__panel select {
  width: 100%;
  margin: 0 0 12px;
  min-height: 44px;
}

.tcqr-variant-popup__actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tcqr-btn {
  appearance: none;
  border: 0;
  border-radius: 8px;
  min-height: 46px;
  padding: 10px 16px;
  font-weight: 700;
}

.tcqr-btn--primary {
  background: #2d6a8a;
  color: #fff;
}

.tcqr-btn--secondary {
  background: #ddd;
  color: #111;
}

/* Sale flash WooCommerce: restaurar badge flotant sobre la imatge */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.wc-block-grid__product {
  position: relative;
}

.woocommerce ul.products li.product a,
.woocommerce-page ul.products li.product a,
.wc-block-grid__product a {
  overflow: visible;
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .product-wrap,
.woocommerce-page ul.products li.product .product-wrap,
.woocommerce ul.products li.product .product-inner,
.woocommerce-page ul.products li.product .product-inner,
.woocommerce ul.products li.product .mf-product-thumbnail,
.woocommerce-page ul.products li.product .mf-product-thumbnail,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product .box-image,
.woocommerce-page ul.products li.product .box-image,
.woocommerce ul.products li.product .product-thumbnail,
.woocommerce-page ul.products li.product .product-thumbnail,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail,
.woocommerce-page ul.products li.product .attachment-woocommerce_thumbnail {
  overflow: visible !important;
}

.woocommerce span.onsale,
.woocommerce-page span.onsale,
.wc-block-grid__product-onsale {
  position: absolute !important;
  top: -10px !important;
  left: -10px !important;
  right: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  min-width: 3.1em !important;
  min-height: 3.1em !important;
  width: 3.1em !important;
  height: 3.1em !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.05 !important;
  white-space: normal !important;
  z-index: 25 !important;
  transform: none !important;
  overflow: visible !important;
}
