/*
  WooCommerce bar, product listing и hover ефекти
  Съдържа стиловете за product grid, pagination и продуктови карти.
*/

/* =========================================================
   3. WOOCOMMERCE BAR & SEARCH
========================================================= */

.woocommerce-bar {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

.woocommerce-bar .container {
  display: flex;
  justify-content: space-between !important;
}

.categories-menu-first {
  padding: 10px 20px 10px 4px !important;
}

div.product-search-form {
  border: 1px solid #e9e9e9;
}

/* =========================================================
   4. WOOCOMMERCE PRODUCT LISTING
========================================================= */

.custom_product_widget .woocommerce-ordering {
  display: none;
}

.custom_product_widget .woocommerce-result-count {
  font-size: 0.9em;
  margin: 0.5em 0 10px;
  font-style: italic;
}

.custom_product_widget .woocommerce nav.woocommerce-pagination .page-numbers li,
.custom_product_widget .woocommerce nav.woocommerce-pagination .page-numbers li a,
.custom_product_widget .woocommerce nav.woocommerce-pagination .page-numbers li span.page-numbers {
  line-height: 10px;
  height: 25px;
  width: 25px;
  border: initial;
  font-size: 14px;
}

/* Ensure pagination numbers are visible and centered (fix missing '2') */
nav.woocommerce-pagination .page-numbers,
nav.woocommerce-pagination .page-numbers li {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  list-style: none !important;
}

nav.woocommerce-pagination .page-numbers li a,
nav.woocommerce-pagination .page-numbers li span.page-numbers {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #222 !important;
  text-indent: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: transparent !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
}

/* Active/current page style (keeps existing look but ensures text appears) */
nav.woocommerce-pagination .page-numbers li .current,
nav.woocommerce-pagination .page-numbers li span.current {
  color: #fff !important;
}

.custom_product_widget .woocommerce a.added_to_cart {
  padding-top: 0;
  padding-bottom: 10px;
}

.hover-area .yith-wcwl-wishlistexistsbrowse {
  display: none;
}

/* Карти на продуктите с по-мек и модерен вид */
.woocommerce ul.products li.product,
.custom_product_widget li {
  background: var(--esf-card);
  border-radius: var(--esf-radius);
  box-shadow: var(--esf-soft-shadow);
  padding: 16px 16px 22px;
  border: 1px solid rgba(31, 36, 48, 0.06);
}

.woocommerce ul.products li.product img,
.custom_product_widget li img {
  border-radius: 14px;
  background: #f5f7fb;
}

/* Reserve space for product thumbnails to avoid layout shift when images load */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 140px; /* reserve approximate thumbnail height */
  overflow: hidden;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link img {
  width: 100%;
  height: auto;
  max-height: 140px;
  object-fit: contain;
  display: block;
}

.woocommerce ul.products li.product .price,
.custom_product_widget li .price {
  color: var(--esf-muted);
  font-weight: 600;
}

/* =========================================================
   5. PRODUCT HOVER EFFECTS
========================================================= */

.custom_product_widget li,
.woocommerce ul.products li {
  transition: transform 0.9s;
}

.custom_product_widget li:hover,
.woocommerce ul.products li:hover {
  -ms-transform: scale(1.04);
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}

@media (prefers-reduced-motion: no-preference) {
  .woocommerce ul.products li.product,
  .custom_product_widget li {
    animation: esf-fade-up 0.6s ease both;
  }
}

@keyframes esf-fade-up {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
