/* ═══ DPC TAP-TARGETS — увеличение нажимаемости кнопок (аудит 2026-07-02) ═══
   Грузится ПОСЛЕДНИМ в <head> (после dpc-tw.css и dpc-polish.css) через server.js.
   Принцип: min-width/min-height только УВЕЛИЧИВАЕТ мелкие цели, не уменьшая корректные (≥44px).
   Норма тач-таргета: 44×44px (Apple) / 48px (Google). Улучшения применяются на всех ширинах. */

/* ───────── ВЫСОКИЙ ПРИОРИТЕТ ───────── */

/* #1 Иконки шапки: корзина (35) и бургер-меню (36) → 44. Селектор совпадает по специфичности с nav.js. */
#dpc-newhdr .nh-cart,
#dpc-newhdr .nh-burger {
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
}

/* #2 Крестик закрытия корзины-дровера (17×26) и «удалить» (18px) → 44. Скоуп по id cart.js. */
#dpc-cart-drawer .hd .x {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: -8px; /* компенсация роста, чтобы крестик остался у края */
}
.dpc-ci .rm {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0;
}

/* #3 Крестики закрытия модалок (заказ, галерея и пр.) — иконочные кнопки w-8/w-9/w-10 (32–40) → 44. */
button.w-8.h-8,
button.w-9.h-9,
button.w-10.h-10 {
  min-width: 44px;
  min-height: 44px;
}

/* #4 Соц-иконки футера (YouTube/VK/Telegram/TikTok) — круглые w-9 h-9 (36) → 44. */
footer a.rounded-full.w-9.h-9 {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* ───────── СРЕДНИЙ ПРИОРИТЕТ ───────── */

/* #5 Фильтры-чипы: каталог (серия/бюджет/разрешение/сортировка), «Наши работы» на главной, категории FAQ (34–39) → 44. */
.works-fg,
.works-fc,
.catalog-filter,
.faq-cat-btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* #6 Кнопки срока рассрочки 6/12/18/24 мес (58×29) → высота 44, зазор комфортнее. */
#home-credit-tabs {
  gap: 0.6rem;
}
#home-credit-tabs button,
button[onclick*="reditMonths"] {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* #7 Контакт-чипы (Яндекс.Карты / Telegram / MAX) — px-4 py-2 rounded-lg (~32) → 44. min-height не трогает уже крупные. */
a.rounded-lg.px-4.py-2 {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* #8 Миниатюры галереи в модалке ПК: 5 в ряд (~45px на 375) → 4 в ряд (крупнее) на телефоне. */
@media (max-width: 430px) {
  #modal-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* #9 Чекбоксы согласия (16×16) → 20×20. Главные формы + корзина (в корзине inline-стиль → !important). */
.consent-check input[type="checkbox"] {
  width: 20px;
  height: 20px;
}
#dpc-cart-foot .cons input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  margin-top: 0 !important;
}

/* #10 Горизонтальный вылет на маленьких телефонах (≤360px): блок сводки отзывов не переносился → перенос. */
@media (max-width: 400px) {
  #reviews-summary {
    flex-wrap: wrap;
    gap: 1rem;
  }
  /* Страховка от горизонтального вылета на узких экранах (напр. FAQ +13px из scroll-ряда «Написать в Telegram»).
     Скрывает только вылет за край body; внутренние горизонтальные скроллеры (карусель отзывов, таблица сравнения) работают как прежде.
     Ограничено ≤400px, где sticky-сайдбар (lg:) не используется → sticky не ломается. */
  html, body {
    overflow-x: hidden;
  }
}

/* ───────── НИЗКИЙ ПРИОРИТЕТ ───────── */

/* #11 Текст-ссылка «Читать полностью» в отзывах — дать площадь нажатия. */
button[onclick^="toggleReviewText"] {
  padding: 0.4rem 0.5rem;
  min-height: 34px;
}

/* #12 Юр-ссылки футера (Оферта/Политика/Согласие/Cookie) — вертикальный паддинг для площади. */
footer a.text-ink-600 {
  display: inline-block;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

/* #13 Миниатюры в полноэкранном лайтбоксе: высота 42 → 44. */
#lightbox-thumbs img {
  height: 44px;
}

/* ───────── ФИКС ФОНА HERO НА ТЕЛЕФОНЕ ───────── */
/* На ≤820px inline-скрипт вырезает <source> у #hero-video (фикс краша iOS Safari) и рассчитывает на poster.
   iOS Safari ненадёжно рисует poster у <video> без источника → фон пустой.
   Дублируем постер CSS-фоном на самом video (CSS background iOS рисует всегда). */
@media (max-width: 820px) {
  #hero-video {
    background-image: url('/hero-poster.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #0a0f18;
  }
  /* Нижняя плашка «От · Заказать» (#pp-sticky) на iPhone перекрывается панелью Safari (её хром нельзя пробить z-index'ом),
     а заказ/связь на телефоне уже даёт кнопка «+» (#dpc-mfab). Скрываем на ≤820px; планшет/десктоп не трогаем. */
  #pp-sticky {
    display: none !important;
  }
}

/* ───────── ПЕРВЫЙ ЭКРАН (HERO) НА ТЕЛЕФОНЕ — компактнее, чтобы было видно фото ───────── */
/* Контент был растянут justify-between по всей высоте hero и закрывал фото. Собираем компактно вверху,
   уменьшаем заголовок/подзаголовок и инфо-бейджи (СЛОВА не меняются). Кнопки CTA не трогаем — остаются крупными/нажимаемыми.
   Только портретные телефоны (≤640px); на планшете/десктопе hero без изменений. */
@media (max-width: 640px) {
  /* обёртка контента hero: собрать вверх вместо растягивания на всю высоту (padding по бокам сохраняется) */
  #page-home .min-h-\[88vh\] .justify-between.flex-col {
    justify-content: flex-start !important;
    gap: 14px;
    padding-top: 96px !important;
    padding-bottom: 16px !important;
  }
  #page-home .min-h-\[88vh\] h1 {
    font-size: 24px !important;
    line-height: 1.08 !important;
  }
  #page-home .min-h-\[88vh\] .max-w-xl p {
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin-top: 10px !important;
  }
  /* инфо-бейджи (5.0·отзывы, гарантия, сборки, доставка) — компактнее, плотнее */
  #page-home .min-h-\[88vh\] .flex-wrap.gap-2\.5 {
    gap: 8px !important;
  }
  #page-home .min-h-\[88vh\] .flex-wrap.gap-2\.5 > * {
    font-size: 11px !important;
    padding: 6px 10px !important;
  }
}
