/* Niepołomicki Bartnik — Wyrównanie cen w kafelkach v1.0.0.
 * ONLY shop/archive/related product cards. No changes to single product buybox.
 * Classic WC normally nests the price inside a product link while the cart button
 * is its sibling. Make that link fill remaining vertical space so the price sits
 * at a common baseline immediately above the button.
 */

/* Classic WooCommerce: listing, categories, tags, related and upsells. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box;
  min-width: 0;
}

.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product > a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
.woocommerce-page ul.products li.product > a.woocommerce-loop-product__link {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  min-width: 0;
  width: 100%;
}

/* Consistent price zone. The active price stays visually closest to the CTA.
 * Existing sale <del>/<ins> markup and actual prices are unchanged.
 */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  box-sizing: border-box;
  width: 100%;
  min-height: 2.55em;
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-end;
  align-content: flex-end;
  gap: 3px 7px;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding-top: 10px;
  line-height: 1.32;
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
  opacity: .7;
}
.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins {
  text-decoration: none;
}

/* Keep the add-to-cart CTA at the same bottom level, without changing color,
 * font, padding, or its behavior. */
.woocommerce ul.products li.product > a.button,
.woocommerce-page ul.products li.product > a.button,
.woocommerce ul.products li.product > button.button,
.woocommerce-page ul.products li.product > button.button {
  flex-shrink: 0;
  margin-top: 12px !important;
}

/* The Bartnik custom catalog cards (.nb-product) have their own markup.
 * Keep their original size and visual styles; align only the price zone. */
.nb-app .nb-products > .nb-product,
.nb-app .nb-related-products .nb-product {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.nb-app .nb-products > .nb-product .nb-product-info,
.nb-app .nb-related-products .nb-product .nb-product-info {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
}
.nb-app .nb-products > .nb-product .nb-price,
.nb-app .nb-related-products .nb-product .nb-price {
  box-sizing: border-box;
  min-height: 2.55em;
  display: flex;
  align-items: flex-end;
  align-content: flex-end;
  flex-wrap: wrap;
  gap: 3px 7px;
  margin-top: auto !important;
  margin-bottom: 0;
}

/* Optional modern WooCommerce product blocks. */
.wc-block-grid__products > .wc-block-grid__product {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.wc-block-grid__products > .wc-block-grid__product > .wc-block-grid__product-link {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.wc-block-grid__products > .wc-block-grid__product > .wc-block-grid__product-price {
  margin-top: auto !important;
  min-height: 2.55em;
}
.wc-block-grid__products > .wc-block-grid__product > .wc-block-grid__product-add-to-cart {
  margin-top: 12px !important;
}

/* New block-based product collection uses separate price and button blocks. */
.wc-block-product-template > li.wc-block-product {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.wc-block-product-template > li.wc-block-product > .wp-block-woocommerce-product-price,
.wc-block-product-template > li.wc-block-product > .wc-block-components-product-price {
  margin-top: auto !important;
  min-height: 2.55em;
}

/* All rules scale with existing theme fonts/columns. No hard-coded card heights,
 * no truncation of product names, no changes to mobile column counts. */
