/**
 * ELBIN Redesign 2 — Єдина адаптивна сітка товарів
 *
 * Система: Dnipro-M (перевірено DevTools)
 * 320–374px: 1 | 375–599px: 2 | 600–1023px: 3 | 1024px+: 4
 *
 * Застосовується на ВСІХ сторінках де є товари:
 *   - Головна (хіти): .elbin-r2-hits__grid
 *   - Архів категорії: ul.products (WooCommerce)
 *   - Будь-які інші WC-сітки
 */

/* =========================================================
   СІТКА — загальні стилі для обох типів
   ========================================================= */

.elbin-r2-hits__grid,
.woocommerce ul.products,
.woocommerce-page ul.products {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* 375px+: 2 колонки */
@media (min-width: 375px) {
    .elbin-r2-hits__grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
}

/* 600px+: 3 колонки */
@media (min-width: 600px) {
    .elbin-r2-hits__grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }
}

/* 1024px+: 4 колонки */
@media (min-width: 1024px) {
    .elbin-r2-hits__grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
    }
}

/* 1440px+: більший gap */
@media (min-width: 1440px) {
    .elbin-r2-hits__grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        gap: 24px;
    }
}

/* 1920px+: 5 колонок на ultrawide. Гейт min-width:1920 зі шкали.
   Виключаємо grid-3 switcher (нижче), щоб користувацький вибір 3 колонок
   мав пріоритет і не конфліктував. 1/2/3/4 колонки на 375/600/1024/1440
   лишаються без змін — цей tier додає лише п’ятий рівень зверху. */
@media (min-width: 1920px) {
    body:not(.elbin-r2-grid-3) .elbin-r2-hits__grid,
    body:not(.elbin-r2-grid-3) .woocommerce ul.products,
    body:not(.elbin-r2-grid-3) .woocommerce-page ul.products {
        grid-template-columns: repeat(5, 1fr);
    }
}

/* Хіти на головній: рендеримо 5 карток (hits.php), але 5-та потрібна лише
   в 5-колонковому tier ≥1920px — нижче ховаємо, щоб не було битого рядка
   (4/3/2/1 колонки діляться чотирма картками рівніше). */
@media (max-width: 1919.98px) {
    .elbin-r2-hits__grid > :nth-child(n+5) {
        display: none;
    }
}

/* Grid switcher: 3 колонки — archive.js додає клас на body */
@media (min-width: 1024px) {
    body.elbin-r2-grid-3 .elbin-r2-hits__grid,
    body.elbin-r2-grid-3 .woocommerce ul.products,
    body.elbin-r2-grid-3 .woocommerce-page ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* =========================================================
   АДАПТАЦІЯ КАРТКИ — єдина для всіх місць
   ========================================================= */

/* База (320–374px) */
.elbin-r2-product-card,
.woocommerce ul.products li.product {
    font-family: var(--elbin-r2-font-ui);
}

.elbin-r2-product-card__sku { display: none; }
.elbin-r2-product-card__body { padding: 10px; }

.elbin-r2-product-card__name {
    font-size: 14px;
    font-weight: 600;
}

.elbin-r2-product-card__stock { font-size: 12px; }
.elbin-r2-product-card__price { font-size: 18px; }

.elbin-r2-product-card__cta {
    width: 48px;
    height: 48px;
    min-width: 48px;
    background-size: 20px 20px;
}

/* 375px+: 2 в рядку — картка менша */
@media (min-width: 375px) {
    .elbin-r2-product-card__name { font-size: 13px; }
    .elbin-r2-product-card__price { font-size: 16px; }
    .elbin-r2-product-card__cta {
        width: 42px;
        height: 42px;
        min-width: 42px;
        background-size: 18px 18px;
    }
}

/* 600px+: 3 в рядку */
@media (min-width: 600px) {
    .elbin-r2-product-card__name { font-size: 14px; }
    .elbin-r2-product-card__price { font-size: 17px; }
    .elbin-r2-product-card__cta {
        width: 44px;
        height: 44px;
        min-width: 44px;
    }
}

/* 1024px+: повний десктоп */
@media (min-width: 1024px) {
    .elbin-r2-product-card__sku { display: block; }
    .elbin-r2-product-card__body { padding: 12px; }
    .elbin-r2-product-card__name { font-size: 15px; }
    .elbin-r2-product-card__price { font-size: 20px; }
    .elbin-r2-product-card__stock { font-size: 13px; }
    .elbin-r2-product-card__cta {
        width: 56px;
        height: 56px;
        min-width: 56px;
        background-size: 22px 22px;
    }
}

/* Specs тільки на десктопі (touch немає hover) */
@media (max-width: 1023.98px) {
    .elbin-r2-product-card:hover
    .elbin-r2-product-card__specs {
        display: none;
    }
}
