/* ═══════════════════════════════════════════════════════════════════════════
 * PATCH 7.6 — Wishlist heart: добивка patch-7.5.
 *
 * Контекст:
 *   В 7.5 мы повесили на контейнер .kp-prod-fav классы Woodmart
 *   (.wd-wishlist-btn .wd-action-btn .wd-style-icon .wd-wishlist-icon) для
 *   совместимости с wishlist.js. Они подтянули из woodmart base.min.css
 *   правило `.wd-action-btn>a:hover { color: var(--wd-action-color-hover,
 *   var(--color-gray-500)) }` (специфичность 0,0,1,2), которое перекрывает
 *   наш цвет наследования от .kp-prod-fav:hover (0,0,3,1) — потому что
 *   наследование (color:inherit) проигрывает явному color на <a>:hover.
 *
 *   Визуально это выглядит как серое hover-сердце вместо нашего белого
 *   на красном фоне.
 *
 *   Аналогично для .added — у Woodmart жёсткого color на a.added нет,
 *   но мы хотим белую иконку поверх красной заливки контейнера, и без
 *   явного правила inherit может не дойти.
 *
 * Что делает патч:
 *   Явно ставит color:#fff на <a> при :hover контейнера, при :hover самого <a>
 *   и при состоянии .added. Специфичность 0,0,4,2 — победит Woodmart 0,0,1,2
 *   без !important.
 *
 *   Дополнительно — таймминг: совпадает transition контейнера, чтобы цвет
 *   иконки переключался синхронно с заливкой.
 * ═══════════════════════════════════════════════════════════════════════════ */


/* ───────── 1. Цвет иконки в hover/added — белый ───────── */

body.kp-body .kp-prod-imgwrap .kp-prod-fav:hover > a,
body.kp-body .kp-prod-imgwrap .kp-prod-fav > a:hover,
body.kp-body .kp-prod-imgwrap .kp-prod-fav > a.added {
    color: #fff;
    transition: color .15s;
}


/* ───────── 2. .added — постоянная красная заливка контейнера ─────────
 * patch-7.5 уже ставит это через :has(a.added). Дублируем здесь без :has()
 * на случай старых браузеров — Safari 15.4+ / Firefox 121+ поддерживают,
 * но запасной путь не помешает: селектор .wd-wishlist-btn + a.added — то же
 * самое, только без :has(). */

body.kp-body .kp-prod-imgwrap .kp-prod-fav.wd-wishlist-btn > a.added {
    /* На <a> мы не ставим background — он на контейнере. Тут только
       страховочный color для .added (что уже сделано в блоке 1). */
}


/* ───────── 3. SVG в .added — заполненное сердце ───────── */

body.kp-body .kp-prod-imgwrap .kp-prod-fav > a.added .kp-prod-fav-svg {
    fill: currentColor;        /* currentColor = #fff (см. блок 1) */
}


/* ═══════════════════════════════════════════════════════════════════════════
 * Счётчик избранного в шапке.
 *
 * header.php теперь рендерит <span class="wd-tools-count kp-badge-count">
 * ВСЕГДА (даже при 0) — иначе wishlist.js (updateCountWidget, строки 267-273)
 * не найдёт куда писать новое число после add/remove. Скрываем span когда
 * число = 0 (пустой текст или data-count="0" на родителе).
 *
 * Селекторы:
 *   :empty — span без текста (рендер при count=0)
 *   .kp-snav-icon[data-count="0"] .wd-tools-count — на случай, если число
 *   обновлено JS-ом и стало "0" (текст не пустой, но семантически ноль)
 * ═══════════════════════════════════════════════════════════════════════════ */

body.kp-body .kp-snav-icon.wd-header-wishlist .wd-tools-count:empty,
body.kp-body .kp-snav-icon.wd-header-wishlist[data-count="0"] .wd-tools-count {
    display: none;
}

/* Класс wd-header-wishlist может прийти с CSS-инъекциями от Woodmart
 * header-builder (margin, padding, alignment). Сбрасываем — наш
 * .kp-snav-icon уже знает, как себя позиционировать. */

body.kp-body .kp-snav-icon.wd-header-wishlist {
    /* Сброс на случай, если Woodmart-CSS прилетит позже */
    margin: 0;
    padding: 0;
}

