/* egs2026-mobile.css — мобильная версия сайта под iPhone / Google Pixel / Samsung Galaxy.
   Кора, 10.10.2026. Подключается после egs2026.css.
   Палитра «Тёплый дом»: #C2410C терракота · #4F7A28 олива · #2E2622 какао · #FFF6EC крем (оттенки — rgba).

   Что решает:
   1) безопасные зоны iPhone (Dynamic Island, полоса жестов) и Android (жесты, «челка»);
   2) тач-цели не меньше 44 px и поля ввода 16 px (иначе iOS зумит при фокусе);
   3) компактная шапка — на телефоне она съедала половину экрана;
   4) липкая кнопка покупки на карточке товара;
   5) корректные отступы на узких (360) и широких (440–480) экранах, плюс ландшафт. */

/* ── 1. Безопасные зоны (нужен viewport-fit=cover в index.php) ───────────── */
@supports (padding: env(safe-area-inset-top)) {
  body.rp-brooksite .brooksite-header {
    padding-top: env(safe-area-inset-top);
  }
  body.rp-brooksite .top-section,
  body.rp-brooksite .top-brand-search-cart {
    padding-left: max(12px, env(safe-area-inset-left));
    padding-right: max(12px, env(safe-area-inset-right));
  }
  body.rp-brooksite #cookie-notice,
  body.rp-brooksite .egs-sticky-buy,
  body.rp-brooksite .jshopping-bottom-bar {
    padding-bottom: max(10px, env(safe-area-inset-bottom));
  }
  body.rp-brooksite .jshopping-bottom-bar {
    margin-bottom: env(safe-area-inset-bottom);
  }
}

/* ── 2. Общие правила для телефонов и планшетов ─────────────────────────── */
@media (max-width: 991px) {
  /* поля ввода 16 px — иначе iOS Safari зумит страницу при фокусе */
  body.rp-brooksite input[type="text"],
  body.rp-brooksite input[type="search"],
  body.rp-brooksite input[type="tel"],
  body.rp-brooksite input[type="email"],
  body.rp-brooksite input[type="password"],
  body.rp-brooksite input[type="number"],
  body.rp-brooksite textarea,
  body.rp-brooksite select {
    font-size: 16px !important;
  }

  /* тап-цели: не меньше 44 px по высоте и ширине */
  body.rp-brooksite .top-cart a,
  body.rp-brooksite .top-wishlist a,
  body.rp-brooksite .top-compare a,
  body.rp-brooksite .top-section-left a,
  body.rp-brooksite .top-section-right a,
  body.rp-brooksite .navbar-toggle,
  body.rp-brooksite .nav > li > a,
  body.rp-brooksite .dropdown-menu > li > a,
  body.rp-brooksite .pagination a,
  body.rp-brooksite .pagination span,
  body.rp-brooksite .button_buy,
  body.rp-brooksite .list-btn,
  body.rp-brooksite .btn,
  body.rp-brooksite button {
    min-height: 44px;
  }
  body.rp-brooksite .nav > li > a,
  body.rp-brooksite .dropdown-menu > li > a,
  body.rp-brooksite .button_buy,
  body.rp-brooksite .list-btn,
  body.rp-brooksite .btn,
  body.rp-brooksite button {
    display: flex;
    align-items: center;
  }
  body.rp-brooksite .nav > li > a,
  body.rp-brooksite .dropdown-menu > li > a {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  /* иконки в шапке — заметные и с воздухом */
  body.rp-brooksite .top-cart a svg,
  body.rp-brooksite .top-wishlist a svg,
  body.rp-brooksite .top-compare a svg,
  body.rp-brooksite .top-cart .fa,
  body.rp-brooksite .top-wishlist .fa,
  body.rp-brooksite .top-compare .fa {
    font-size: 24px;
    width: 24px;
    height: 24px;
  }
  body.rp-brooksite .top-cart,
  body.rp-brooksite .top-wishlist,
  body.rp-brooksite .top-compare {
    min-width: 44px;
    min-height: 44px;
  }

  /* таблицы и длинные блоки — горизонтальный скролл вместо обрезки */
  body.rp-brooksite .jshop_cart table,
  body.rp-brooksite .table,
  body.rp-brooksite table.jshop {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* ── 3. Телефоны: компактная шапка вместо «половины экрана» ─────────────── */
@media (max-width: 767px) {
  /* верхняя служебная полоса («Вход») — только меню, дублирующий модуль входа скрыт */
  body.rp-brooksite .top-section,
  body.rp-brooksite .brooksite-header .top-section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 44px;
  }
  body.rp-brooksite .top-section .moduletable,
  body.rp-brooksite .top-section-container .moduletable.inline-block {
    display: none !important;          /* «Вход» переехал в бургер-меню */
  }
  body.rp-brooksite .top-section .navbar,
  body.rp-brooksite .top-section nav {
    min-height: 44px !important;
    margin-bottom: 0 !important;
  }
  body.rp-brooksite .top-section a,
  body.rp-brooksite .top-section .nav > li > a {
    min-height: 44px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    font-size: 14px;
  }

  /* логотип и поиск — в одну строку: так шапка вдвое ниже */
  body.rp-brooksite .top-brand-search-cart .top-brand {
    width: 42% !important;
    float: left !important;
    clear: none !important;
    text-align: left !important;
    padding: 4px 0 !important;
  }
  body.rp-brooksite .top-brand-search-cart .top-search {
    width: 58% !important;
    float: left !important;
    clear: none !important;
    margin: 4px 0 !important;
    padding: 0 0 0 8px !important;
  }
  body.rp-brooksite .top-brand-search-cart::after {
    content: "";
    display: table;
    clear: both;
  }

  /* логотип — компактный, в одну строку с поиском */
  body.rp-brooksite .top-brand img,
  body.rp-brooksite .top-brand .logo-image,
  body.rp-brooksite .top-brand-search-cart img.logo-image {
    max-height: 38px !important;
    width: auto !important;
  }
  body.rp-brooksite .top-brand .name,
  body.rp-brooksite .top-brand .site-description {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  /* поиск — крупный, но компактный по отступам */
  body.rp-brooksite .top-search {
    margin: 4px 0 !important;
  }
  body.rp-brooksite .top-search input,
  body.rp-brooksite .top-search .inputbox {
    height: 44px !important;
    border-radius: 12px 0 0 12px !important;
  }
  body.rp-brooksite .top-search button,
  body.rp-brooksite .top-search .btn {
    height: 44px !important;
    border-radius: 0 12px 12px 0 !important;
  }

  /* телефон и иконки — одной плотной строкой */
  body.rp-brooksite .top-address {
    font-size: 14px;
    margin: 0 0 2px !important;
    padding: 0 !important;
  }
  body.rp-brooksite .top-address a {
    font-size: 16px !important;
    min-height: 32px !important;
  }
  body.rp-brooksite .top-brand-search-cart {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  body.rp-brooksite .top-cart,
  body.rp-brooksite .top-wishlist,
  body.rp-brooksite .top-compare {
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
  }

  /* меню: крупная кнопка, но без высокой полосы */
  body.rp-brooksite .top-navbar,
  body.rp-brooksite .moduletable.tmpl-bgcolor.rainbow {
    min-height: 44px !important;
  }
  body.rp-brooksite .navbar-toggle {
    padding: 8px 12px !important;
    min-height: 44px;
  }
  body.rp-brooksite .middle-navbar,
  body.rp-brooksite .top-navbar-wrap {
    padding-left: 12px;
    padding-right: 12px;
  }
  /* пустой слот под меню не должен съедать экран */
  body.rp-brooksite .middle-navbar:empty,
  body.rp-brooksite .top-main-content:empty {
    display: none;
  }

  /* ссылки в карточках товаров — палец должен попадать */
  body.rp-brooksite .modopprod_item_name a {
    display: block;
    padding: 6px 0;
    min-height: 34px;
    line-height: 1.3;
  }
  body.rp-brooksite td.download a,
  body.rp-brooksite .cert-note a,
  body.rp-brooksite .plusshippinginfo a,
  body.rp-brooksite a.down-click {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 4px 0;
  }
  body.rp-brooksite .pathway a,
  body.rp-brooksite .breadcrumb a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 2px 0;
  }

  /* карточки товаров: крупная кнопка покупки */
  body.rp-brooksite .modopprod_item .list-btn,
  body.rp-brooksite .modopprod_item .button_buy,
  body.rp-brooksite .product .list-btn,
  body.rp-brooksite .product .button_buy {
    width: 100%;
    justify-content: center;
    min-height: 46px;
    font-size: 15px;
  }

  /* cookie-баннер: компактный, снизу, не закрывает товар */
  body.rp-brooksite #cookie-notice {
    padding: 10px 12px !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
    max-height: 42vh;
    overflow-y: auto;
  }
  body.rp-brooksite #cookie-notice a {
    display: inline;
    min-height: 0;
  }
  body.rp-brooksite #cookie-notice button,
  body.rp-brooksite #cookie-notice .btn {
    min-height: 44px !important;
    flex: 1 1 0;
    margin: 4px 2px 0 !important;
  }

  /* заголовки страниц — читаемые, без «лестницы» переносов */
  body.rp-brooksite .jshop > h1,
  body.rp-brooksite h1 {
    font-size: 22px !important;
    line-height: 1.25 !important;
  }
  body.rp-brooksite h2 {
    font-size: 19px !important;
  }

  /* боковые модули на телефоне не должны сжимать контент */
  body.rp-brooksite .left,
  body.rp-brooksite .right {
    margin-bottom: 12px;
  }
}

/* ── 4. Узкие экраны (Galaxy S24/S25 базовые, 360–374 px) ───────────────── */
@media (max-width: 374px) {
  body.rp-brooksite .top-brand-search-cart,
  body.rp-brooksite .top-section,
  body.rp-brooksite .middle-navbar,
  body.rp-brooksite .moduletop,
  body.rp-brooksite .container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  body.rp-brooksite .top-address a {
    font-size: 16px !important;
  }
  body.rp-brooksite h1,
  body.rp-brooksite .jshop > h1 {
    font-size: 20px !important;
  }
}

/* ── 5. Крупные телефоны (Pixel 10 Pro 410, Galaxy S26 Ultra 412, iPhone 420–440) */
@media (min-width: 410px) and (max-width: 767px) {
  body.rp-brooksite .top-brand-search-cart,
  body.rp-brooksite .top-section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  body.rp-brooksite .top-search input,
  body.rp-brooksite .top-search .inputbox {
    height: 50px !important;
  }
}

/* ── 6. Ландшафт: экономим высоту (iPhone/Android повёрнуты) ────────────── */
@media (max-width: 991px) and (orientation: landscape) and (max-height: 520px) {
  body.rp-brooksite .top-brand img,
  body.rp-brooksite .logo-image {
    max-height: 34px !important;
  }
  body.rp-brooksite .top-search input,
  body.rp-brooksite .top-search .inputbox {
    height: 40px !important;
  }
  body.rp-brooksite .brooksite-header {
    padding-top: env(safe-area-inset-top, 0);
  }
  body.rp-brooksite #cookie-notice {
    max-height: 50vh;
  }
}

/* ── 7. Липкая панель покупки на карточке товара ────────────────────────── */
.egs-sticky-buy {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  display: none;
  align-items: center;
  gap: 10px;
  padding: 10px max(12px, env(safe-area-inset-left)) 10px max(12px, env(safe-area-inset-right));
  background: var(--egs-white, #FFF6EC);
  border-top: 1px solid rgba(var(--egs-ink-rgb, 46,38,34), .12);
  box-shadow: 0 -6px 20px rgba(var(--egs-ink-rgb, 46,38,34), .12);
}
.egs-sticky-buy.is-visible { display: flex; }
.egs-sticky-buy .egs-sb-price {
  font-size: 19px;
  font-weight: 800;
  color: var(--egs-ink, #2E2622);
  white-space: nowrap;
}
.egs-sticky-buy .egs-sb-old {
  font-size: 12px;
  color: rgba(var(--egs-ink-rgb, 46,38,34), .55);
  text-decoration: line-through;
  margin-left: 6px;
}
.egs-sticky-buy .egs-sb-btn {
  flex: 1 1 auto;
  min-height: 48px;
  border: 0;
  border-radius: 12px;
  background: var(--egs-blue, #C2410C);
  color: var(--egs-white, #FFF6EC);
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
/* место под панель, чтобы она не перекрывала низ страницы */
body.egs-has-sticky-buy { padding-bottom: 84px; }
