/* =========================================================
 * VIVILIV 0.6.0.4 — PILOTAŻ ILOŚCI W GRAMACH
 * Aktywny wyłącznie dla produktów z ustawionym Minimum/Krok.
 * ========================================================= */

.viviliv-qv-card.viviliv-qv-weight-ready .viviliv-qv-number,
.viviliv-mini-cart-qty--weight .viviliv-mini-cart-number {
  min-width: 68px !important;
  white-space: nowrap !important;
  text-align: center !important;
}

.viviliv-qv-card.viviliv-qv-weight-ready .viviliv-qv-minus:disabled,
.viviliv-single-weight-minus:disabled {
  opacity: .42 !important;
  cursor: not-allowed !important;
}

.viviliv-qv-card.viviliv-qv-weight-ready .viviliv-qv-add {
  white-space: normal !important;
  line-height: 1.18 !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.viviliv-qv-card .viviliv-add-error {
  font-size: 11px !important;
  line-height: 1.25 !important;
}

/* Badge na małej karcie pokazuje czytelne gramy zamiast technicznej liczby. */
ul.products li.product.viviliv-weight-card-in-cart a.viviliv-product-button-has-qty::after {
  min-width: 46px !important;
  width: auto !important;
  padding: 0 7px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
  font-size: 8.5px !important;
  line-height: 22px !important;
}

/* Pojedynczy produkt — ukrywamy techniczny input, ale pozostaje on w formularzu. */
form.cart input.qty.viviliv-technical-qty {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.viviliv-single-weight-control {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 42px minmax(92px, 1fr) 42px !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 5px !important;
  background: rgba(6, 21, 13, .66) !important;
  border: 1px solid rgba(216, 178, 74, .46) !important;
  border-radius: 12px !important;
}

.viviliv-single-weight-control button {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  padding: 0 !important;
  color: #f3d77a !important;
  background: transparent !important;
  border: 1px solid rgba(216, 178, 74, .32) !important;
  border-radius: 10px !important;
  font-size: 20px !important;
  font-weight: 750 !important;
  cursor: pointer !important;
}

.viviliv-single-weight-number {
  color: #f7f4ea !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

/* WooCommerce Cart Block — liczba w input pozostaje prawdziwa, nad nią pokazujemy g/szt. */
.wc-block-components-quantity-selector.viviliv-block-weight-selector {
  position: relative !important;
}

.wc-block-components-quantity-selector.viviliv-block-weight-selector
.wc-block-components-quantity-selector__input {
  color: transparent !important;
  caret-color: transparent !important;
  text-shadow: none !important;
}

.viviliv-block-weight-label {
  position: absolute !important;
  inset: 0 32px !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #f7f4ea !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

@media (max-width: 767px) {
  .viviliv-qv-card.viviliv-qv-weight-ready .viviliv-qv-number,
  .viviliv-mini-cart-qty--weight .viviliv-mini-cart-number {
    min-width: 62px !important;
  }

  ul.products li.product.viviliv-weight-card-in-cart a.viviliv-product-button-has-qty::after {
    min-width: 42px !important;
    padding: 0 6px !important;
    font-size: 8px !important;
  }
}

.viviliv-qv-card .viviliv-qv-order-rule__note {
  margin-top: 4px !important;
  color: rgba(247, 244, 234, .62) !important;
  font-size: 9.5px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}
