/*
Theme Name: komi-twentyfive-child
Theme URI: 
Author: Justinas
Author URI: 
Description: 
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: komi-twentyfive-child
Tags: 
*/

/* Woo Product Collection card alignment for variable product title lengths. */
.wp-block-woocommerce-product-collection .wc-block-product-template > li.wc-block-product {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Keep title area visually consistent and prevent long names from breaking rows. */
.wp-block-woocommerce-product-collection .wc-block-product > h2.wp-block-post-title {
  line-height: 1.4;
  min-height: calc(1.4em * 3);
  margin-bottom: 0.75rem;
}

.wp-block-woocommerce-product-collection .wc-block-product > h2.wp-block-post-title > a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

/* Push CTA to card bottom so all buttons align in the row. */
.wp-block-woocommerce-product-collection .wc-block-product > .wp-block-woocommerce-product-button {
  margin-top: auto !important;
}

/* Remove per-button inline bottom margin to keep lower edge aligned. */
.wp-block-woocommerce-product-collection .wc-block-components-product-button__button {
  margin-bottom: 0 !important;
}

/* Keep grid cards stable: hide the entire "View cart" row that appears after AJAX add-to-cart. */
.wp-block-woocommerce-product-collection .wc-block-components-product-button > span[data-wp-bind--hidden] {
  display: none !important;
}

/* Homepage "Geriausi pasiūlymai" uses classic Woo loop markup, not Product Collection block. */
.home .woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.home .woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}

.home .woocommerce ul.products li.product .woocommerce-loop-product__title {
  --komi-home-title-lines: 3;
  --komi-home-title-lh: 1.2;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--komi-home-title-lines);
  line-height: var(--komi-home-title-lh) !important;
  min-height: calc(1em * var(--komi-home-title-lh) * var(--komi-home-title-lines));
  max-height: calc(1em * var(--komi-home-title-lh) * var(--komi-home-title-lines));
  overflow: hidden !important;
  font-size: clamp(1.05rem, 1.2vw, 1.35rem) !important;
  text-wrap: wrap !important;
  overflow-wrap: break-word;
  padding: 0 !important;
  margin: 0 0 0.75rem !important;
}

.home .woocommerce ul.products li.product .price {
  margin-top: 0.5rem;
  display: block;
  text-align: center;
  width: 100%;
}

.home .woocommerce ul.products li.product .button {
  margin-top: auto;
  align-self: center;
  display: inline-flex;
  justify-content: center;
  width: auto !important;
  min-width: 10.5rem;
  border-radius: 9999px !important;
  padding: 1rem 2.25rem;
  line-height: 1.2;
}

@media (max-width: 781px) {
  .home .woocommerce ul.products li.product .button {
    min-width: 0;
    max-width: 100%;
    padding: 0.8rem 1.25rem;
    font-size: 0.95rem;
  }
}

/* Classic loop inserts this link after AJAX add-to-cart and it shifts card height. */
.home .woocommerce ul.products li.product .added_to_cart {
  display: none !important;
}

.home .woocommerce ul.products li.product span[id^="woocommerce_loop_add_to_cart_link_describedby_"] {
  display: none !important;
}

/* If Social Icons block is reused/synced in both template parts, keep it visible only in footer. */
header.wp-block-template-part .wp-block-social-links {
  display: none !important;
}

/* Product archive controls: "Rodyti puslapyje" + pagination. */
.post-type-archive-product .wppp-form,
.tax-product_cat .wppp-form {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  min-height: 2.35rem;
}

/* When "Rodyti puslapyje" is placed inside a Flow column next to pagination, */
/* neutralize default Flow spacing and center it vertically in that column. */
.post-type-archive-product .wp-block-column.is-layout-flow > .wppp-form,
.tax-product_cat .wp-block-column.is-layout-flow > .wppp-form {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  align-self: center;
}

.post-type-archive-product .wp-block-column.is-layout-flow:has(> .wppp-form),
.tax-product_cat .wp-block-column.is-layout-flow:has(> .wppp-form) {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.post-type-archive-product .wp-block-columns.is-layout-flex:has(.wppp-form),
.tax-product_cat .wp-block-columns.is-layout-flex:has(.wppp-form) {
  align-items: center;
}

.post-type-archive-product .wppp-form label,
.tax-product_cat .wppp-form label {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1;
  color: #444;
}

.post-type-archive-product .wppp-form select,
.tax-product_cat .wppp-form select {
  min-height: 2.35rem;
  padding: 0.35rem 0.85rem;
  border: 1px solid #cfcfcf;
  border-radius: 999px;
  background: #fff;
  font-size: 0.95rem;
  line-height: 1;
}

.post-type-archive-product .wp-block-query-pagination,
.tax-product_cat .wp-block-query-pagination {
  gap: 0.55rem;
  margin-top: 1rem;
  margin-bottom: 0.35rem;
}

.post-type-archive-product .wp-block-query-pagination a,
.post-type-archive-product .wp-block-query-pagination .page-numbers,
.tax-product_cat .wp-block-query-pagination a,
.tax-product_cat .wp-block-query-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.35rem;
  height: 2.35rem;
  padding: 0 0.8rem;
  border: 1px solid #d8d8d8;
  border-radius: 999px;
  background: #fff;
  color: inherit;
  font-weight: 500;
  text-decoration: none;
}

.post-type-archive-product .wp-block-query-pagination .page-numbers.current,
.tax-product_cat .wp-block-query-pagination .page-numbers.current {
  border-color: #111;
  background: #111;
  color: #fff;
}

.post-type-archive-product .wp-block-query-pagination .page-numbers.dots,
.tax-product_cat .wp-block-query-pagination .page-numbers.dots {
  min-width: auto;
  height: auto;
  padding: 0 0.1rem;
  border: 0;
  background: transparent;
}

.post-type-archive-product .wp-block-query-pagination a:hover,
.post-type-archive-product .wp-block-query-pagination .page-numbers:hover,
.tax-product_cat .wp-block-query-pagination a:hover,
.tax-product_cat .wp-block-query-pagination .page-numbers:hover {
  border-color: #111;
}

@media (max-width: 781px) {
  .post-type-archive-product .wppp-form,
  .tax-product_cat .wppp-form {
    margin: 0 auto;
  }

  .post-type-archive-product .wppp-form label,
  .tax-product_cat .wppp-form label {
    font-size: 0.9rem;
  }
}
