/* ================================================================
   Exposhop Pagination — единственный владелец пагинационных
   селекторов WooCommerce (nav.woocommerce-pagination / ul.page-numbers).

   Источник: Code Snippets №112 «WooCommerce Pagination — HARD RESET»
   (docs/snippet-112-audit.md, Пакет B Волны 5;
   docs/tasks/task-pagination-module.md). Правила, которые раньше жили
   в catalog.css (Task 5, "toolbar and pagination"), вынесены сюда —
   один селектор теперь имеет ровно одного владельца, а не двух с
   пересекающимся каскадом.

   Эталон снят реальными computed-значениями с прода (тот же метод,
   что в реконсиляции №110 ↔ catalog.css) на 4 ширинах экрана —
   пагинация НЕ адаптивна, значения идентичны на всех брейкпоинтах.
   Значения ниже — то, что фактически побеждало в смешанном каскаде
   catalog.css/№112 на момент переноса, не текст любого источника по
   отдельности:
   — justify-content/gap на ul.page-numbers: было в catalog.css
     `center`/`6px` (задумано дизайном), реально всегда было
     `flex-start`/`0` — №112 перебивал через !important, дизайн-намерение
     никогда не было реализовано на живом сайте.
   — color обычного квадрата: было в catalog.css `var(--esc-text-2)`,
     реально `#333` (№110/№112, !important).
   — font-size prev/next стрелок: 18px, отсутствовало в catalog.css.
   — :hover — смешанный результат: background:#f6f6f6 от №112 (в
     catalog.css было transparent, но без !important — проигрывало),
     цвет остаётся акцентным (catalog.css здесь и раньше побеждал,
     !important).

   Зона действия (аудит голых селекторов сайта, обязателен по заданию):
   — АРХИВЫ КАТАЛОГА (shop/category/taxonomy) — подтверждено, реальная
     разметка nav.woocommerce-pagination + ul.page-numbers.
   — Поиск (`?s=...`) — разметка ДРУГАЯ: Astra/WP core рендерят
     `<nav class="navigation pagination">` с собственными классами
     (.ast-pagination), не woocommerce-pagination — наши селекторы там
     не матчатся. Включено в enqueue по явному указанию задания как
     безвредный запас на будущее (сейчас — no-op).
   — Аккаунт («Мои заказы» и другие списки) — WooCommerce ЖЁСТКО
     рендерит `<div class="woocommerce-pagination woocommerce-pagination--without-numbers">`
     с одной кнопкой Next/Previous (проверено в исходнике
     woocommerce/templates/myaccount/orders.php и живьём — создан
     тестовый клиент с 13 заказами на стейджинге). Другой тег (div, не
     nav), другая структура — наши селекторы не могут сюда попасть ни
     при какой конфигурации. НЕ включено в enqueue — предпосылка
     задания об «единственном источнике стилизации в аккаунте» не
     подтвердилась, см. доклад.
   — Блог/комментарии — недостижимы: нет опубликованной страницы
     листинга блога (page_for_posts не задан), ни у одного товара нет
     более 1 отзыва, постраничная разбивка комментариев выключена
     (page_comments=off). Не включено в enqueue.

   Enqueue: is_shop() || is_product_category() || is_product_taxonomy()
   || is_search() — та же архивная часть, что и у catalog.css
   (Exposhop_Catalog::is_catalog_archive()), плюс is_search() отдельно.
   ================================================================ */

body.exposhop-catalog nav.woocommerce-pagination {
  display: block;
  width: 100%;
  clear: both;
  margin: 30px 0;
  padding: 0;
  float: none;
  text-align: left;
  border: 0;
}

body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 16px;
  line-height: 1;
  white-space: normal;
}

body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li {
  display: block;
  list-style: none;
  float: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li a.page-numbers,
body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li span.page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  /* Правка дизайна 24.07.2026 (docs/catalog-fixes-plan.md, п.6): было
     44px (наследие №112 «Pagination HARD RESET», давно деактивирован,
     конкурентов не осталось) — макет задаёт 38px. */
  min-width: 38px;
  width: 38px;
  height: 38px;
  padding: 0 14px;
  margin: 0;
  border: 0;
  border-radius: var(--esc-radius-control, 6px);
  font-family: var(--esc-sans);
  font-size: 16px;
  font-weight: 400;
  color: #333;
  background: #fff;
  text-decoration: none;
  box-sizing: border-box;
  line-height: 1;
  white-space: nowrap;
  box-shadow: none;
}

body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li span.page-numbers.current {
  background: var(--esc-accent) !important;
  color: #fff !important;
  border-color: var(--esc-accent) !important;
}

body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li span.page-numbers.dots {
  color: var(--esc-text-3, #646360);
  width: auto;
  padding: 0 4px;
}

/* Prev/next arrows — реально 18px (№112), а не унаследованный 16px. */
body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li a.page-numbers.prev,
body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li a.page-numbers.next {
  font-size: 18px;
}

body.exposhop-catalog nav.woocommerce-pagination ul.page-numbers li a.page-numbers:hover {
  background: #f6f6f6;
  color: var(--esc-accent) !important;
  border-color: #d0d0d0;
}
