/* KNDev Discount - minimal fallback CSS. Copy docs/kndev_global.css.snippet.css to the theme global CSS for full control. */
.product-miniature,
.product-cover,
.knd-discount-label-anchor {
  position: relative;
}
.knd-discount-label-anchor {
  overflow: visible;
}
.knd-discount-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: calc(100% - 20px);
  min-height: 2rem;
  padding: .48rem .78rem;
  border-radius: 999px;
  border: 0;
  background: var(--knd-discount-label-bg, rgba(14, 122, 67, .08));
  color: var(--knd-discount-label-color, #0e7a43);
  font-size: .74rem;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: .035em;
  text-transform: uppercase;
  box-shadow: 0 10px 24px rgba(14, 122, 67, .12);
  z-index: 2147483000;
  pointer-events: none;
  position: absolute;
  white-space: normal;
  text-align: center;
}
.knd-discount-product-page-label[data-knd-discount-product-label],
.knd-discount-list-label[data-knd-discount-list-label] {
  position: absolute;
  top: var(--knd-discount-label-mt, 38px);
  left: var(--knd-discount-label-ml, 0px);
}
.knd-discount-list-label[data-knd-discount-list-label] {
  max-width: calc(100% - 1.3rem);
  font-size: .67rem;
}
.knd-discount-pos-top-right[data-knd-discount-product-label],
.knd-discount-pos-top-right[data-knd-discount-list-label] {
  top: var(--knd-discount-label-mt, 38px);
  right: var(--knd-discount-label-mr, 0px);
  left: auto;
}
.knd-discount-pos-bottom-left[data-knd-discount-product-label],
.knd-discount-pos-bottom-left[data-knd-discount-list-label] {
  top: auto;
  bottom: var(--knd-discount-label-mb, 0px);
  left: var(--knd-discount-label-ml, 0px);
}
.knd-discount-pos-bottom-right[data-knd-discount-product-label],
.knd-discount-pos-bottom-right[data-knd-discount-list-label] {
  top: auto;
  right: var(--knd-discount-label-mr, 0px);
  bottom: var(--knd-discount-label-mb, 0px);
  left: auto;
}
.knd-discount-product-benefit {
  display: grid;
  gap: .18rem;
  margin: .85rem 0 1rem;
  padding: .95rem 1rem;
  border: 1px solid rgba(14, 122, 67, .22);
  border-radius: 1rem;
  background: rgba(14, 122, 67, .08);
  color: #111827;
}
.knd-discount-product-benefit.is-knd-discount-achieved {
  border-color: rgba(14, 122, 67, .42);
  background: rgba(14, 122, 67, .08);
}
.knd-discount-product-benefit-kicker {
  color: #0e7a43;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.knd-discount-product-benefit-main {
  font-size: .95rem;
  font-weight: 800;
}
.knd-discount-product-benefit-price {
  color: #374151;
  font-size: .9rem;
}
.knd-discount-product-benefit-price strong {
  color: #0e7a43;
  font-weight: 900;
}
.knd-discount-cart-line {
  display: grid;
  gap: .1rem;
  margin-top: .45rem;
  padding: .55rem .7rem;
  border: 1px solid rgba(14, 122, 67, .22);
  border-radius: .75rem;
  background: rgba(14, 122, 67, .08);
  color: #111827;
  font-size: .86rem;
}
.knd-discount-cart-line-kicker {
  color: #0e7a43;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.knd-discount-cart-line-text strong {
  color: #0e7a43;
}
.knd-discount-cart-summary {
  margin: 1rem 0;
  padding: .85rem 1rem;
  border-radius: .85rem;
  background: rgba(14, 122, 67, .08);
  color: #0e7a43;
  font-weight: 800;
}
@media (max-width: 767px) {
  .knd-discount-label {
    max-width: calc(100% - 1rem);
    padding: .42rem .62rem;
    font-size: .65rem;
  }
}

.knd-discount-product-page-label[data-knd-discount-product-label] {
  min-height: 2.15rem;
  padding-inline: .9rem;
}
.knd-discount-product-benefit,
.knd-discount-cart-line {
  max-width: 32rem;
}
.knd-discount-cart-line.is-knd-discount-achieved,
.knd-discount-product-benefit.is-knd-discount-achieved {
  border-color: rgba(14, 122, 67, .28);
}


/* v1.0.11: stronger overlay placement only for KNDev Discount labels. */
.knd-discount-label-anchor > .knd-discount-label[data-knd-discount-product-label],
.knd-discount-label-anchor > .knd-discount-label[data-knd-discount-list-label] {
  position: absolute !important;
  z-index: 2147483000 !important;
  pointer-events: none !important;
}
.product-cover .knd-discount-label,
.images-container .knd-discount-label,
.thumbnail-container .knd-discount-label,
.product-thumbnail .knd-discount-label {
  z-index: 2147483000 !important;
}


/* v1.0.12: strict visibility fallbacks for product page label + common Hummingbird cards. */
.knd-discount-product-label-fallback {
  position: relative;
  min-height: 0;
  z-index: 2147483000;
  pointer-events: none;
}
.product-miniature .thumbnail-container,
.js-product-miniature .thumbnail-container,
.products article,
#products article,
#js-product-list article,
.product-card {
  position: relative;
}

/* v1.0.13: payload markers used only to anchor discount labels/info in PS9/Hummingbird templates. */
.knd-discount-payload-marker {
  display: none !important;
}

/* v1.0.15: robust visible product/cart discount info fallbacks. */
.knd-discount-list-info {
  display: flex;
  flex-direction: column;
  gap: .15rem;
  margin-top: .45rem;
  padding: .55rem .65rem;
  border: 1px solid rgba(14, 122, 67, .18);
  border-radius: .75rem;
  background: rgba(14, 122, 67, .06);
  color: #111827;
  font-size: .78rem;
  line-height: 1.25;
}
.knd-discount-list-info-kicker {
  color: #0e7a43;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.knd-discount-list-info-text {
  color: #374151;
  font-weight: 700;
}
.knd-discount-cart-summary {
  display: flex;
  flex-direction: column;
  gap: .45rem;
  margin: 1rem 0;
  padding: .9rem 1rem;
  border: 1px solid rgba(14, 122, 67, .18);
  border-radius: .9rem;
  background: rgba(14, 122, 67, .06);
  color: #111827;
  font-weight: 700;
}
.knd-discount-cart-summary-kicker {
  color: #0e7a43;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.knd-discount-cart-summary-row {
  display: flex;
  flex-direction: column;
  gap: .12rem;
}
.knd-discount-cart-summary-name {
  color: #111827;
  font-weight: 900;
}
.knd-discount-cart-summary-text,
.knd-discount-cart-summary-total {
  color: #374151;
  font-size: .88rem;
}
.knd-discount-cart-summary-row.is-knd-discount-achieved .knd-discount-cart-summary-text,
.knd-discount-cart-summary-total {
  color: #0e7a43;
  font-weight: 900;
}

/* v1.0.16: direct offset positioning + safer visual states. */
.knd-discount-label-anchor {
  position: relative !important;
}
.knd-discount-product-label-fallback {
  display: none !important;
}
.knd-discount-list-info.is-knd-discount-achieved {
  border-color: rgba(14, 122, 67, .32);
  background: rgba(14, 122, 67, .08);
}
.knd-discount-list-info.is-knd-discount-achieved .knd-discount-list-info-kicker,
.knd-discount-list-info.is-knd-discount-achieved .knd-discount-list-info-text {
  color: #0e7a43;
  font-weight: 900;
}
