/**
 * WC Equal Product Cards — CSS
 * Выравнивает все карточки товаров по одинаковой высоте
 */

/* === ОСНОВНОЙ GRID/FLEX КОНТЕЙНЕР === */
ul.products,
.woocommerce ul.products,
.wc-block-grid__products {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important; /* Все карточки одной высоты */
}

/* === КАРТОЧКА ТОВАРА === */
ul.products li.product,
.woocommerce ul.products li.product,
.wc-block-grid__product {
    display: flex !important;
    flex-direction: column !important;
    /* Высота карточки растягивается автоматически */
}

/* === ССЫЛКА-ОБЁРТКА ВНУТРИ КАРТОЧКИ === */
ul.products li.product > a,
ul.products li.product .woocommerce-LoopProduct-link,
ul.products li.product a.woocommerce-loop-product__link {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

/* === ИЗОБРАЖЕНИЕ ТОВАРА === */
ul.products li.product img,
ul.products li.product .attachment-woocommerce_thumbnail,
ul.products li.product .wp-post-image,
.wc-block-grid__product-image img {
    width: 100% !important;
    height: 250px !important;       /* Фиксированная высота для всех картинок */
    object-fit: contain !important;  /* Вписываем без обрезки */
    object-position: center !important;
    flex-shrink: 0 !important;
}

/* Для больших экранов — увеличиваем высоту картинки */
@media (min-width: 768px) {
    ul.products li.product img,
    ul.products li.product .attachment-woocommerce_thumbnail,
    ul.products li.product .wp-post-image,
    .wc-block-grid__product-image img {
        height: 300px !important;
    }
}

@media (min-width: 1200px) {
    ul.products li.product img,
    ul.products li.product .attachment-woocommerce_thumbnail,
    ul.products li.product .wp-post-image,
    .wc-block-grid__product-image img {
        height: 350px !important;
    }
}

/* === НАЗВАНИЕ ТОВАРА === */
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2,
ul.products li.product h3,
.wc-block-grid__product-title {
    flex-grow: 1 !important;         /* Название занимает свободное пространство */
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important; /* Максимум 3 строки */
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 3.6em !important;     /* Резервируем место под 3 строки */
}

/* === ЦЕНА === */
ul.products li.product .price,
.wc-block-grid__product-price {
    margin-top: auto !important;     /* Цена прижимается к низу */
    min-height: 2.4em !important;    /* Резерв места для зачёркнутой + новой цены */
    display: flex !important;
    align-items: flex-end !important;
    flex-wrap: wrap !important;
}

/* === КНОПКА «В КОРЗИНУ» === */
ul.products li.product .button,
ul.products li.product .add_to_cart_button,
ul.products li.product .ajax_add_to_cart,
ul.products li.product a.added_to_cart,
.wc-block-grid__product .wp-block-button__link {
    margin-top: auto !important;     /* Кнопка всегда внизу */
    align-self: stretch !important;
}

/* === БЕЙДЖ «СКИДКА» / «SALE» === */
ul.products li.product .onsale,
.wc-block-grid__product .wc-block-grid__product-onsale {
    position: absolute !important;
    z-index: 2 !important;
}

/* === Контейнер для иконок (wishlist, compare, quick view) === */
ul.products li.product .yith-wcwl-add-to-wishlist,
ul.products li.product .tinv-wraper,
ul.products li.product .compare-button,
ul.products li.product .quick-view-button,
ul.products li.product .product-buttons,
ul.products li.product .product-actions {
    flex-shrink: 0 !important;
}

/* === Фикс для тем, которые используют CSS Grid === */
.woocommerce .products.columns-2,
.woocommerce .products.columns-3,
.woocommerce .products.columns-4,
.woocommerce .products.columns-5 {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
}

.woocommerce .products.columns-2 {
    grid-template-columns: repeat(2, 1fr) !important;
}

.woocommerce .products.columns-3 {
    grid-template-columns: repeat(3, 1fr) !important;
}

.woocommerce .products.columns-4 {
    grid-template-columns: repeat(4, 1fr) !important;
}

@media (max-width: 767px) {
    .woocommerce .products.columns-2,
    .woocommerce .products.columns-3,
    .woocommerce .products.columns-4,
    .woocommerce .products.columns-5 {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    ul.products li.product img,
    ul.products li.product .attachment-woocommerce_thumbnail,
    ul.products li.product .wp-post-image {
        height: 180px !important;
    }
}

@media (max-width: 480px) {
    .woocommerce .products.columns-2,
    .woocommerce .products.columns-3,
    .woocommerce .products.columns-4,
    .woocommerce .products.columns-5 {
        grid-template-columns: 1fr !important;
    }
}
