/*
Theme Name: GeneratePress Child
Template: generatepress
Version: 1.0
*/

/* === 1) Общая ширина сайта на больших экранах === */
/* поменяй значение под себя: 1280px / 1400px / 1600px */
@media (min-width: 1200px){
  :root{ --container-max: 2100px; }

  /* Классические темы */
  .container,
  .site .container,
  .content-area,
  .site-main,
  .site-content,
  .wrap,
  .page-wrap,
  .content-wrap,
  /* Storefront */
  .col-full,
  /* Astra */
  .ast-container,
  /* OceanWP / GeneratePress */
  .container.grid-container,
  .container .grid-container{
    max-width: var(--container-max) !important;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
  }

  /* Блочные темы (Twenty Twenty-Four и т.п.) */
  .wp-site-blocks,
  .is-layout-constrained{
    max-width: var(--container-max) !important;
    margin-left: auto;
    margin-right: auto;
  }
}

/* === 2) Чуть уменьшаем боковые внутренние отступы контента === */
@media (min-width: 1200px){
  .site-content,
  .site-main,
  .content-area{
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* === 3) Таблица списка товаров/товары Woo === */
.woocommerce .shop_table{
  width: 100%;
}

/* Если у таблицы внутри стоят фиксированные max-width у колонок — снимем ограничения */
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
  max-width: none;
  white-space: normal;         /* перенос длинных значений */
  word-break: break-word;
}

/* === 4) (Опционально) Только для страницы «Список товара» — ещё шире === */
/* Узнай ID страницы (в админке в адресной строке page_id=XXXX) и подставь его ниже */
@media (min-width: 1200px){
  body.page-id-XXXX .container,
  body.page-id-XXXX .col-full,
  body.page-id-XXXX .ast-container,
  body.page-id-XXXX .wp-site-blocks{
    max-width: 1600px !important;
    width: 96%;
  }
}

/* ── Хлебные крошки (Yoast) ─────────────────────────────────────────────── */
.woocommerce-breadcrumb .breadcrumb-delimiter{
  margin:0 .4em;
  color:#888;
}

/* ── База для грид-списков Woo ──────────────────────────────────────────── */
.woocommerce ul.products::before,
.woocommerce ul.products::after{ content:none !important; }

.woocommerce ul.products{
  list-style:none; margin:0; padding:0;
  display:grid !important;
  gap:20px;
  grid-auto-flow:row;
  grid-template-columns:repeat(auto-fit, minmax(130px, 1fr));
}
@media (max-width:1024px){
  .woocommerce ul.products{
    grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
  }
}
@media (max-width:768px){
  .woocommerce ul.products{
    grid-template-columns:repeat(auto-fit, minmax(100px, 1fr));
  }
}

/* Сброс ширин, которые могут ломать CSS Grid */
.woocommerce ul.products li.product{
  float:none !important;
  width:auto !important;
  margin:0 !important;
  clear:none !important;
}
.woocommerce ul.products[class*="columns-"] li.product{
  width:auto !important;
  clear:none !important;
  margin-right:0 !important;
}
/* Даже если Woo навесил columns-1 — всё равно держим grid */
.woocommerce ul.products.columns-1{ display:grid !important; }

/* ── Категории: центрирование содержимого ───────────────────────────────── */
.woocommerce ul.products li.product-category a{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.woocommerce ul.products li.product-category a img{
  width: clamp(72px, 16vw, 120px) !important;
  height: clamp(72px, 16vw, 120px);
  object-fit: contain;
  object-position: center;
  display:block;
  margin:0 auto 8px;
  background:#fff;
  padding:6px;
  box-sizing:border-box;
}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  line-height:1.25;
  min-height:calc(1.25em * 3);
  margin:0;
  text-align:center;
  font-size:14px;
  word-break:break-word;
  hyphens:auto;
}

/* ── Страница товара: меньший H1 на мобильных ───────────────────────────── */
@media (max-width:480px){
  .single-product .product_title{ font-size:18px; line-height:1.3; }
}
@media (min-width:481px) and (max-width:767px){
  .single-product .product_title{ font-size:20px; line-height:1.3; }
}

/* ── Сайдбары GeneratePress ─────────────────────────────────────────────── */
/* Узкий ТОЛЬКО левый сайдбар на десктопе (правый оставляем как в теме) */
@media (min-width:1025px){
  body.left-sidebar .content-area{ width:78%; }
  body.left-sidebar .widget-area{ width:22%; }
}
/* Планшеты: чуть шире контент, тот же баланс для обоих вариантов сайдбара */
@media (min-width:769px) and (max-width:1024px){
  .site-content .content-area{ width:70%; }
  .site-content .widget-area{ width:30%; }
}

/* === Search / Relevanssi highlights ===================================== */
/* Подсветка совпадений Relevanssi */
.relevanssi-query-term{
  font-weight:700;           /* жирный */
  background:#fff3a6;        /* мягкая жёлтая подложка */
}
/* === End Search ========================================================== */