/* ================================
   xStudio — FIX кнопок Store
   Единый размер + иконка корзины справа
   ================================ */

/* 1) Ровняем контейнер кнопок (две кнопки в ряд) */
.t-store__card__btns-wrapper {
  display: flex !important;
  gap: 10px !important;
  align-items: stretch !important;
}

/* 2) Делаем обе кнопки одинаковой ширины и высоты */
.t-store__card__btns-wrapper .t-store__card__btn,
.t-store__card__btns-wrapper .t-store__card__btn_second {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* 3) Единая высота/выравнивание текста для обеих кнопок */
.t-store__card__btns-wrapper .t-btnflex {
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* 4) Текст всегда по центру (и на белой, и на красной) */
.t-store__card__btns-wrapper .t-btnflex__text,
.t-store__card__btns-wrapper .t-store__card__btn-text {
  width: 100% !important;
  text-align: center !important;
  line-height: 1 !important;
  white-space: nowrap !important; /* не переносим */
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* ====== КРАСНАЯ КНОПКА: "В корзину" (иконка СПРАВА) ====== */
.t-store__card__btns-wrapper .x-cart-btn {
  position: relative !important;
  padding-right: 38px !important; /* место под иконку справа */
  padding-left: 16px !important;
}

/* Иконка корзины справа */
.t-store__card__btns-wrapper .x-cart-btn::after {
  content: "" !important;
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 18px !important;
  height: 18px !important;
  background: url("https://static.tildacdn.com/tild6531-3164-4433-a332-386262626464/_.svg") no-repeat center !important;
  background-size: contain !important;
  pointer-events: none !important;
}

/* ====== КРАСНАЯ КНОПКА: "Нет в наличии" (БЕЗ иконки) ====== */
.t-store__card__btns-wrapper .x-oos-btn {
  padding-right: 16px !important;
  padding-left: 16px !important;
}

/* На всякий: если кто-то добавил ::after — убираем */
.t-store__card__btns-wrapper .x-oos-btn::after {
  content: none !important;
}
/* ================================
   FIX: убрать левую корзину/дубли
   и оставить корзину справа только на "В корзину"
   ================================ */

/* 1) УБИРАЕМ любые штатные/старые иконки слева (часто это ::before) */
.t-store__card__btns-wrapper .t-store__card__btn_second::before,
.t-store__card__btns-wrapper .t-btnflex_type_button2::before {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* 2) На всякий случай: если где-то остался старый класс cart-icon — глушим */
.t-store__card__btns-wrapper .cart-icon::before {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* 3) "Нет в наличии" — без корзины, текст по центру, НЕ режем троеточием */
.t-store__card__btns-wrapper .x-oos-btn .t-btnflex__text,
.t-store__card__btns-wrapper .x-oos-btn .t-store__card__btn-text {
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* 4) "В корзину" — текст полностью, по центру, корзина справа нормального размера */
.t-store__card__btns-wrapper .x-cart-btn .t-btnflex__text,
.t-store__card__btns-wrapper .x-cart-btn .t-store__card__btn-text {
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* Корзина справа — чуть крупнее */
.t-store__card__btns-wrapper .x-cart-btn::after {
  width: 20px !important;
  height: 20px !important;
  right: 12px !important;
}
/* =========================================
   xStudio — корзина СЛЕВА, размер как текст
   ========================================= */

/* 1) Убираем любые старые/дубли иконок */
.t-store__card__btns-wrapper .t-store__card__btn_second::before,
.t-store__card__btns-wrapper .t-btnflex_type_button2::before,
.t-store__card__btns-wrapper .cart-icon::before,
.t-store__card__btns-wrapper .x-cart-btn::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* 2) КНОПКА "В корзину" — центрируем связку (иконка + текст) */
.t-store__card__btns-wrapper .x-cart-btn{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;          /* расстояние между иконкой и текстом */
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* текст — без растягивания, чтобы центр был ЧЕСТНЫЙ */
.t-store__card__btns-wrapper .x-cart-btn .t-btnflex__text,
.t-store__card__btns-wrapper .x-cart-btn .t-store__card__btn-text{
  width: auto !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* 3) ИКОНКА КОРЗИНЫ СЛЕВА — размер как текст */
.t-store__card__btns-wrapper .x-cart-btn::before{
  content: "" !important;
  display: inline-block !important;
  width: 1em !important;        /* = размеру текста */
  height: 1em !important;
  background: url("https://static.tildacdn.com/tild6531-3164-4433-a332-386262626464/_.svg")
              no-repeat center !important;
  background-size: contain !important;
  flex: 0 0 auto !important;
  pointer-events: none !important;
}

/* 4) "Нет в наличии" — без иконки, текст строго по центру */
.t-store__card__btns-wrapper .x-oos-btn::before,
.t-store__card__btns-wrapper .
}
/* FIX: центрирование цветного кружка внутри обводки (особенно на MacBook/retina) */
.t-store .t-product__option-variant,
.t-store .t-store__card__opt-item,
.t-store .t-store__prod-popup__option-item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* Если внутри есть отдельный элемент "цвет" — центрируем и его */
.t-store .t-product__option-variant * ,
.t-store .t-store__card__opt-item * ,
.t-store .t-store__prod-popup__option-item * {
  box-sizing: border-box !important;
}
/* =========================================
   FIX: одинаковый вид "Нет в наличии"
   (без смены фирменного цвета)
   ========================================= */

.t-store__card__btn_disabled,
.t-store__card__btn--disabled,
.x-oos-btn {
  opacity: 1 !important;
  filter: none !important;
}

/* Страховка: текст/иконки внутри тоже без приглушения */
.t-store__card__btn_disabled *,
.t-store__card__btn--disabled *,
.x-oos-btn * {
  opacity: 1 !important;
  filter: none !important;
}
/* ===== Card hover: lift + shadow ===== */
.t-store__card {
  transition: transform .18s ease, box-shadow .18s ease;
  will-change: transform;
}

.t-store__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(0,0,0,.10);
}
.t-store__card__descr[style*="display: none"] ~ .t-store__card__price {
  margin-top: 0 !important;
}
/* ==========================================
   XSTUDIO: Нет в наличии — приглушаем ТОЛЬКО В КАТАЛОГЕ (карточки)
   и НЕ ломаем кнопку "Оформить заказ" в карточке товара
========================================== */

/* 1) Приглушаем OOS кнопку в КАРТОЧКАХ каталога */
.t-store__card .x-oos-btn{
  opacity: .45 !important;
  filter: saturate(0.85) !important;
  cursor: default !important;
}

/* Убираем яркую красную обводку/рамку (если рисует inner-слой) */
.t-store__card .x-oos-btn,
.t-store__card .x-oos-btn .t-btnflex__btn,
.t-store__card .x-oos-btn .t-btnflex__wrap{
  border-color: rgba(0,0,0,.12) !important; /* или transparent */
  outline: none !important;
  box-shadow: none !important;
}

/* Важно: если хочешь чтобы в каталоге она НЕ нажималась — включаем только тут */
.t-store__card .x-oos-btn{
  pointer-events: none !important;
}

/* 2) А В КАРТОЧКЕ ТОВАРА (страница товара) — наоборот принудительно разрешаем клики */
.t-store__prod .x-oos-btn,
.t-store__prod a[href="#order"],
.t-store__prod a[href="#order"] *{
  pointer-events: auto !important;
  cursor: pointer !important;
  opacity: 1 !important;
  filter: none !important;
}

.t-popup .t706__product-title__option { display: none !important; }

/* xStudio Jost-overlap fix 07.07.2026 (Jarvis): заголовки zero-block в одну строку, как при Futura PT */
#rec557574139 .tn-elem__5575741391678121758517,
#rec557574594 .tn-elem__5575745941678191183154,
#rec557574594 .tn-elem__5575745941678192281802,
#rec570488804 .tn-elem__5704888041680118128181,
#rec570488804 .tn-elem__5704888041680250642194,
#rec570488804 .tn-elem__5704888041680250752280,
#rec570488804 .tn-elem__5704888041678192281802,
#rec557575056 .tn-elem__5575750561678439349671,
#rec557575056 .tn-elem__5575750561678707831920,
#rec557575056 .tn-elem__5575750561678707744768,
#rec557575056 .tn-elem__5575750561678707696729,
#rec508258526 .tn-elem__5082585261684746490742,
#rec508258526 .tn-elem__5082585261684746490747 {
  white-space: nowrap !important;
}
#rec557574594 .tn-elem__5575745941678192281802,
#rec570488804 .tn-elem__5704888041678192281802,
#rec508258526 .tn-elem__5082585261684746490742,
#rec508258526 .tn-elem__5082585261684746490747 {
  letter-spacing: -0.02em !important;
}

/* FIX 07.07 Jost-метрика: трейд-ин + контакты + футер (Джарвис) */
[data-elem-id="1678122889183"] .tn-atom { white-space: nowrap !important; }
[data-elem-id="1678728091714"] .tn-atom { white-space: nowrap !important; }
[data-elem-id="1678728305955"] .tn-atom { white-space: nowrap !important; }
[data-elem-id="1684746490695"] { width: auto !important; }
[data-elem-id="1684746490695"] .tn-atom { white-space: nowrap !important; width: auto !important; overflow: visible !important; }
[data-elem-id="1678707744768"] { width: auto !important; }
[data-elem-id="1678707744768"] .tn-atom { white-space: nowrap !important; overflow: visible !important; }

/* FIX 07.07 карточка товара (tproduct) — Джарвис */
/* убрать демо-заглушку imgfish (блок T107 на шаблоне карточки) */
#rec1842434141 { display: none !important; }
/* «Смотрите также»: отступы как на главной, кнопки не вылазят */
.t-store__relevants__container .t-store__card__title,
.t-store__relevants__container .t-store__card__price-wrapper,
.t-store__relevants__container .t-product__option,
.t-store__relevants__container .t-store__card__btns-wrapper {
  padding-left: 20px !important;
  padding-right: 20px !important;
  box-sizing: border-box !important;
}
.t-store__relevants__container .t-store__card__btn {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: none !important;
}

/* FIX 07.07b relevants-кнопки: не сжимать, padding как на главной (перебивает flex выше) */
.t-store__relevants__container .t-store__card__btn {
  flex: 0 1 auto !important;
  padding: 7px 6px !important;
  line-height: 1.4 !important;
  min-width: 0 !important;
  max-width: none !important;
}

/* FIX 07.07c футер карточки товара (rec511614516) — меню/контакты/график в одну строку (Сэр 07.07: футер одинаковый по всему сайту) */
#rec511614516 [data-elem-id="1677791496899"],
#rec511614516 [data-elem-id="1677791496902"],
#rec511614516 [data-elem-id="1677791496905"] { width: auto !important; }
#rec511614516 [data-elem-id="1677791496899"] .tn-atom,
#rec511614516 [data-elem-id="1677791496902"] .tn-atom,
#rec511614516 [data-elem-id="1677791496905"] .tn-atom,
#rec511614516 [data-elem-id="1677791496920"] .tn-atom,
#rec511614516 [data-elem-id="1677791496923"] .tn-atom,
#rec511614516 [data-elem-id="1677791496926"] .tn-atom,
#rec511614516 [data-elem-id="1677791496929"] .tn-atom,
#rec511614516 [data-elem-id="1677791496931"] .tn-atom,
#rec511614516 [data-elem-id="1677791496934"] .tn-atom,
#rec511614516 [data-elem-id="1678112197020"] .tn-atom,
#rec511614516 [data-elem-id="1677791496937"] .tn-atom,
#rec511614516 [data-elem-id="1677791496939"] .tn-atom,
#rec511614516 [data-elem-id="1677791496942"] .tn-atom,
#rec511614516 [data-elem-id="1677791496945"] .tn-atom,
#rec511614516 [data-elem-id="1677791496948"] .tn-atom,
#rec511614516 [data-elem-id="1677791496950"] .tn-atom,
#rec511614516 [data-elem-id="1677791496952"] .tn-atom,
#rec511614516 [data-elem-id="1677791496955"] .tn-atom,
#rec511614516 [data-elem-id="1677791496957"] .tn-atom,
#rec511614516 [data-elem-id="1677791496960"] .tn-atom,
#rec511614516 [data-elem-id="1677791496963"] .tn-atom,
#rec511614516 [data-elem-id="1684746266555"] .tn-atom {
  white-space: nowrap !important;
  overflow: visible !important;
}
/* «Технологии будущего уже здесь.» — не рвать слово посередине */
#rec511614516 [data-elem-id="1677791496918"] .tn-atom { word-break: normal !important; overflow-wrap: normal !important; }

/* FIX 07.07d футер: шрифт контактов меньше + подписка в 2 строки (Сэр 33909) */
/* контакты (email/whatsApp/график) обоих футеров — normal + мельче, без наезда на «Покупателю» */
#rec511614516 [data-elem-id="1677791496899"] .tn-atom,
#rec511614516 [data-elem-id="1677791496902"] .tn-atom,
#rec511614516 [data-elem-id="1677791496905"] .tn-atom,
#rec508258526 [data-elem-id="1684746490686"] .tn-atom,
#rec508258526 [data-elem-id="1684746490691"] .tn-atom,
#rec508258526 [data-elem-id="1684746490695"] .tn-atom {
  white-space: normal !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  overflow: visible !important;
}
/* подписка — второе предложение мельче, влезает в 2 строки */
#rec511614515 [data-elem-id="1677667871370"] .tn-atom,
#rec508251365 [data-elem-id="1667227457696"] .tn-atom {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* FIX 07.07e «Технологии будущего уже здесь» — не рвать слово посередине (Сэр) */
#rec511614516 [data-elem-id="1677791496918"] .tn-atom,
#rec508258526 [data-elem-id="1684746490713"] .tn-atom {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  overflow: visible !important;
}

/* FIX 07.07f подписка — второе предложение в ОДНУ строку (второй ряд), Сэр 33915 */
#rec511614515 [data-elem-id="1677667871370"] .tn-atom,
#rec508251365 [data-elem-id="1667227457696"] .tn-atom {
  font-size: 11px !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

/* FIX 07.07g «Технологии будущего уже здесь» — убрать дубль-переполнение (overflow visible→hidden) */
#rec511614516 [data-elem-id="1677791496918"] .tn-atom,
#rec508258526 [data-elem-id="1684746490713"] .tn-atom {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

/* JVS-SUBSCRIBE: подписка футера — крупнее + выравнивание ПОД карточки (десктоп). Анимация fadeinright не трогается.
   Фикс 08.07: left тянется за центрированным контейнером 1200px = calc(50% - 580px) вместо фикс. 120px.
   Замерено live: firstCard.x = center-580 на 1440/1920/2560 → текст встаёт ровно под первую карточку на любом
   широком дисплее (Apple Studio Display). Кнопка «Подписаться» уже привязана к центру (right = center+559), не трогаем. */
@media screen and (min-width:1200px){
  #rec508251365 [data-elem-id="1667227383858"],
  #rec511614515 [data-elem-id="1677667871368"]{
    left:calc(50% - 580px)!important;width:620px!important;top:22px!important;}
  #rec508251365 [data-elem-id="1667227383858"] .tn-atom,
  #rec511614515 [data-elem-id="1677667871368"] .tn-atom{
    font-size:31px!important;line-height:44px!important;text-align:center!important;width:100%!important;}
  #rec508251365 [data-elem-id="1667227457696"],
  #rec511614515 [data-elem-id="1677667871370"]{
    left:calc(50% - 580px)!important;width:620px!important;top:74px!important;}
  #rec508251365 [data-elem-id="1667227457696"] .tn-atom,
  #rec511614515 [data-elem-id="1677667871370"] .tn-atom{
    font-size:15px!important;line-height:21px!important;text-align:center!important;width:100%!important;opacity:.92!important;}
}

/* JVS-ORDERPOPUP: попап «Оформить заказ» (BF502N, hook #popup:productout) — убрать левую колонку с пустыми
   Цвет/Объём null, форма по центру. ⛔ 11.07 вечер: блок перенесён в глобальный Footer + вскрылись ДУБЛИ
   (у главной свой rec604459263 с тем же хуком) — таргетим ЛЮБОЙ экземпляр структурно через :has(),
   без привязки к id (переживёт переносы/копии). */
.t-rec:has([data-tooltip-hook="#popup:productout"]) .t702__leftcol,
.t-rec:has([data-tooltip-hook="#popup:productout"]) .t702__img{ display:none!important; }
.t-rec:has([data-tooltip-hook="#popup:productout"]) .t702__wrapper{ width:100%!important;max-width:100%!important;float:none!important;margin:0 auto!important;box-sizing:border-box!important; }
.t-rec:has([data-tooltip-hook="#popup:productout"]) .t-popup__container.t-width_10{ max-width:520px!important; }

/* JVS-CARDLEFT: карточки — цена, кружок цвета, боксы объём/ОЗУ ровно по ЛЕВОЙ линии первой буквы названия (слово Сэра 08.07).
   Цена и боксы уже на линии; кружок цвета был +5px из-за .t-product__option-variants_custom{margin-left:5px} → обнуляем ТОЛЬКО у формы
   (не у items — иначе на мультицветных товарах кружки слипнутся). Название не трогаем. */
.t-store__card .t-product__option-variants_custom,
.t-store__card .t-product__option-variants{ margin-left:0!important; justify-content:flex-start!important; }

/* JVS-RECOBTN: блок «похожие товары» внизу карточки товара — кнопки как в каталоге: широкие, равные, в один ряд,
   + иконка корзины у «В корзину» (Сэр 08.07). Таргет строго .t-btn_xs — это старый тип кнопок ТОЛЬКО у рекомендаций;
   каталог/главная используют .t-btnflex_xs и не затрагиваются. Иконка — тот же tildacdn-svg, что на главной (::before, 13px). */
.t-store__card__btns-wrapper .t-store__card__btn.t-btn_xs{
  flex:1 1 0!important; width:auto!important; max-width:100%!important;
  text-align:center!important; justify-content:center!important; align-items:center!important;
}
/* отступы кнопок = каталог 20px (11.07 вечер: было 10 — рекомендации жили своей сеткой, Сэр «одинаковый дизайн везде») */
.t-store__card__btns-wrapper:has(.t-btn_xs){ padding-left:20px!important; padding-right:20px!important; }

/* JVS-RECOPAD (11.07 вечер, Сэр voice 34379/34397): контент карточек «Смотрите также» по сетке каталога:
   textwrapper 20px (был 0 — имя/цена/статус/опции прилипали к краю карточки, Сэр «статус левее стоит»).
   ⛔ У slds-карточек имя и цена несут СВОЙ padding 20 (в каталоге 0) — с нашим twPad складывался в 40:
   имя/цена уезжали ПРАВЕЕ линии статуса/кружочков (Сэр «прочерти линию»). Обнуляем внутренние — одна вертикаль 20. */
.t-store__card.js-product-relevant .t-store__card__textwrapper{ padding-left:20px!important; padding-right:20px!important; }
.t-store__card.js-product-relevant .js-store-prod-name,
.t-store__card.js-product-relevant .t-store__card__price-wrapper{ padding-left:0!important; padding-right:0!important; }
/* иконка корзины у «В корзину» = вторая кнопка карточки, НЕ disabled («Нет в наличии» её не получает).
   Класс x-cart-btn на поздно-рендеримых карточках рекомендаций не вешается — таргет по структуре js-store-prod-btn2. */
.t-store__card__btns-wrapper a.js-store-prod-btn2.t-btn_xs:not(.t-store__prod-popup__btn_disabled) .t-btnflex__text::before{
  content:""; display:inline-block; width:13px; height:13px; margin-right:7px; vertical-align:-1px;
  background:url("https://static.tildacdn.com/tild6531-3164-4433-a332-386262626464/_.svg") no-repeat center/contain;
}

/* JVS-CARDS: карточки товара во ВСЕХ блоках (главная/каталог/разделы/похожие) — Сэр 08.07.
   ✨ hover: плавный подъём + мягкая тень (карточка «оживает»). 🏷 цены: новая и старая зачёркнутая
   в ОДНУ строку (не переносить на узких карточках) + старая цена мельче/приглушённо-серая — аккуратно, как на хороших магазинах. */
.t-store__card{ transition: transform .28s cubic-bezier(.19,1,.22,1), box-shadow .28s ease !important; will-change: transform; }
.t-store__card:hover{ transform: translateY(-8px) !important; box-shadow: 0 14px 30px rgba(0,0,0,.13) !important; z-index:2 !important; }
.t-store__card__price-wrapper{ display:flex !important; flex-wrap:nowrap !important; align-items:baseline !important; justify-content:flex-start !important; gap:9px !important; white-space:nowrap !important; }
.t-store__card__price, .t-store__card__price_old{ white-space:nowrap !important; }
.t-store__card__price_old{ font-size:16px !important; color:#a0a0a0 !important; font-weight:400 !important; }

/* JVS-STATUS: статус наличия в карточке (Сэр 08.07; ярче+крупнее+по левой линии — вечер 08.07) —
   🟢 «В наличии» насыщ.зелёным / 🔴 «Под заказ» ярко-красным. Крупнее (15px/700), точка+текст по ЛЕВОЙ линии
   характеристик (padding:0), в одну строку (nowrap), сразу под последней характеристикой (вставка перед кнопками). */
.jvs-stock{ font-family:FuturaPT,Arial,sans-serif !important; font-size:15px !important; font-weight:700 !important; line-height:1.2 !important; margin:10px 0 0 !important; padding:0 !important; display:flex !important; align-items:center !important; gap:7px !important; letter-spacing:.2px; white-space:nowrap !important; }
/* JVS-STOCK-RHYTHM (Сэр 09.07): равномерный отступ вокруг статуса во ВСЕХ блоках — цена→статус = статус→цвет = 10px (ритм характеристик).
   Было 5px сверху / 42px снизу (stock.mb 12 + optsContainer.pt 20 + firstOpt.mt 10). Обнуляем эти два — остаётся ровно 10px (firstOpt.mt) с обеих сторон. */
.t-store__card .js-product-controls-wrapper{ padding-top:0 !important; }
.jvs-stock::before{ content:""; width:9px; height:9px; border-radius:50%; display:inline-block; flex:0 0 9px; }
.jvs-stock-in{ color:#0aa04a !important; }
.jvs-stock-in::before{ background:#0aa04a; box-shadow:0 0 0 3px rgba(10,160,74,.18); }
.jvs-stock-oos{ color:#f52418 !important; }
.jvs-stock-oos::before{ background:#f52418; box-shadow:0 0 0 3px rgba(245,36,24,.16); }

/* JVS-DIM-FIX (Сэр 08.07 вечер): OOS-товар — Tilda приглушает вариант-боксы характеристик
   (.t-product__option-item opacity:0.4, замерено live на iPhone 17e 512GB — в каталоге И на странице товара).
   Канон Сэра: характеристики (объём памяти / цвет) яркие ВСЕГДА; тусклой остаётся только кнопка «Нет в наличии». */
.t-product__option .t-product__option-item{ opacity:1 !important; }

/* JVS-STATUS-PRODUCT: статус наличия на странице товара (/tproduct) — под ценой, чуть крупнее чем в каталоге. */
.jvs-stock-product{ font-size:16px !important; margin:9px 0 2px !important; }

/* JVS-CARTBUBBLE: дубль уведомления «добавлено в корзину» — скрываем родное Тильдино T706, остаётся одно (кастомное nolim). */
.t706__bubble, .t706__bubble-container{ display:none !important; }

/* JVS-RECOSLOTS (11.07, Сэр voice 34321 — заменяет JVS-CARDWIDTH 09.07): слоты карусели «Смотрите также» = 297px.
   ⛔ Корень прошлой поломки: родные слоты .t-slds__item (inline от slick) держали ПО ДВЕ карточки (560px=2×280);
   растяжка КАРТОЧЕК до 297px переполняла слот — кнопки отрывались в общий ряд, сердечко обрезалось, фото наезжали.
   Канон: слот :has(карточку-рекомендацию) = 297px (CSS !important бьёт inline) → slick сам пересчитывает шаг листания
   по фактической ширине слота; карточка заполняет слот (100%). Селектор старого фикса .t-slds__wrapper не матчился вовсе.
   Только десктоп/планшет (≥980px) — на мобиле карусель родная адаптивная. */
@media screen and (min-width:980px){
  /* слот 321 = карточка 297 + воздух 2×12: hover-подъём (translateY -8px + тень) и сердечко в углу НЕ режутся
     рамкой слайдера (Сэр voice 34331 «кнопка и сердечко вылазят за край») */
  .t-slds__item:has(.t-store__card.js-product-relevant){ width:321px !important; flex-basis:321px !important; }
  .t-store__card.js-product-relevant{ width:297px !important; max-width:297px !important; flex:none !important; margin:0 auto !important; }
  /* вертикальный простор трека под hover-подъём: карточка при -8px остаётся в paint-области */
  .t-slds:has(.js-product-relevant) .t-slds__items-wrapper{ padding-top:14px !important; margin-top:-14px !important; padding-bottom:14px !important; margin-bottom:-14px !important; }
}

/* JVS-CARDLINES (11.07, Сэр voice 34321): статусы и кнопки ВСЕХ карточек (каталог/главная/разделы/«Смотрите также»)
   по ОДНОЙ линии в ряду: резерв высоты названия РОВНО 3 строки = 70px (15px×1.55×3=69.75 — при 66px
   трёхстрочные имена сдвигали цену/статус на 4px, Сэр voice 34331 «опять не в строчку»)
   + низ карточки flex-прижат (кнопки на одной горизонтали при равной высоте карточек ряда). */
.t-store__card .js-store-prod-name{ min-height:70px; }
.t-store__card .t-store__card__wrap_all{ display:flex; flex-direction:column; height:100%; }
.t-store__card .js-product-controls-wrapper{ margin-top:auto !important; }

/* JVS-ORDERBTN (11.07, Сэр voice 34326/34331): активная «Заказать» на OOS-карточках —
   рука-курсор, скругление пуля-в-пулю с «В корзину» (btnflex каталога = 7px; btn_xs рекомендаций — родной класс).
   ::before самой кнопки глушим (страховка от чужой корзинки х-cart-btn) — иконка живёт на внутреннем __text. */
.jvs-order-btn::before{ display:none !important; content:none !important; }
.jvs-order-btn{ cursor:pointer !important; }
.t-btnflex.jvs-order-btn{ border-radius:7px !important; }

/* JVS-ORDERICON v2 (13.07, Сэр voice 34741 «коробочку тонкими белыми линиями, идентично корзинке»):
   корзинка «В корзину» = line-art stroke 6 при viewBox 77.79 → видимый штрих ~1px на 13px.
   Коробка: stroke 1.6 при viewBox 24 на боксе 15px → тот же видимый ~1px; цвет #f2f2f2 и
   round-стыки — точно как у корзинки. Куб + рёбра + лента посылки, fill:none. */
.jvs-order-btn .t-btnflex__text::before{
  content:""; display:inline-block; width:15px; height:15px; margin-right:6px; vertical-align:-2px;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f2f2f2' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2.2 21 6.7v10.6l-9 4.5-9-4.5V6.7l9-4.5z'/><path d='M3 6.7l9 4.5 9-4.5'/><path d='M12 11.2v10.6'/><path d='M7.6 4.4l9 4.5'/></svg>") no-repeat center/contain;
}

/* JVS-CARDCURSOR (13.07, Сэр voice 34742): рука-курсор ТОЛЬКО на кнопках карточки
   (Подробнее / В корзину / Заказать) и сердечке избранного; сама карточка (фото/название/
   цена — Store вешал на них pointer) — обычная стрелка. Ховер-подъём и смена фото живут. */
.t-store__card, .t-store__card *{ cursor:default !important; }
.t-store__card .t-store__card__btn, .t-store__card .t-store__card__btn *,
.t-store__card .t1002__addBtn, .t-store__card .t1002__addBtn *{ cursor:pointer !important; }

/* JVS-REVIEWHOVER (13.07, Сэр voice 34743): футер «ОТЗЫВЫ:» — лого 2ГИС/Farpost при наведении
   оранжевые, как текстовые ссылки футера (#ff4500). Родная задумка Zero (белый слой 2gis2/farpost2 +
   оранжевый 2gis/farpost) мертва — слои не переключаются; красим ФИЛЬТРОМ оба слоя лого на
   hover его клик-зоны (ссылки в DOM ПОСЛЕ картинок — только через :has на артборде).
   Фильтр = белый → #ff4500. */
#rec508258526 .t396__elem[data-elem-id="1684746490816"] img,
#rec508258526 .t396__elem[data-elem-id="1684746490821"] img,
#rec508258526 .t396__elem[data-elem-id="1684746490831"] img,
#rec508258526 .t396__elem[data-elem-id="1684746490836"] img{ transition:filter .2s ease; }
#rec508258526 .t396__artboard:has(.t396__elem[data-elem-id="1684746490826"] .tn-atom:hover) .t396__elem[data-elem-id="1684746490816"] img,
#rec508258526 .t396__artboard:has(.t396__elem[data-elem-id="1684746490826"] .tn-atom:hover) .t396__elem[data-elem-id="1684746490821"] img,
#rec508258526 .t396__artboard:has(.t396__elem[data-elem-id="1684746490843"] .tn-atom:hover) .t396__elem[data-elem-id="1684746490831"] img,
#rec508258526 .t396__artboard:has(.t396__elem[data-elem-id="1684746490843"] .tn-atom:hover) .t396__elem[data-elem-id="1684746490836"] img{
  filter:brightness(0) saturate(100%) invert(41%) sepia(93%) saturate(4185%) hue-rotate(2deg) brightness(102%) contrast(103%);
}

/* JVS-SUBMITBTN (11.07 вечер): кнопка «Отправить заявку» формы заказа — единый оранжевый канона 11.07
   (была фиолетовой), у ЛЮБОГО экземпляра попапа на любой странице. */
.t-rec:has([data-tooltip-hook="#popup:productout"]) .t-submit{ background-color:#ff4500 !important; border-color:#ff4500 !important; }

/* JVS-BTNFLAT (12.07 вечер-2, Сэр voice 34715 «Заказать и В корзину — абсолютно один цвет, как Каталог товаров»):
   Store красит OOS-«Заказать» filter:saturate(.85) И В ПОКОЕ (11.07 чинили только hover) — кнопка
   выглядела блёкло рядом с «В корзину». Покой = filter:none у обеих; hover ниже даёт единый brightness. */
.t-store__card__btn.js-store-prod-btn2,
.t-store__prod-popup__btn:not(.t-store__card__btn){ filter:none !important; }

/* JVS-BTNHOVER (11.07 вечер, Сэр voice 34421 «В корзину при наведении светлее/ярче Заказать»):
   ЕДИНЫЙ hover-отклик обеих кнопок карточки (и «Заказать», и «В корзину» = js-store-prod-btn2) и главной
   кнопки товара — лёгкое равномерное затемнение; фон в покое у всех one-в-one #ff4500 (инлайн-краска JS). */
/* ⛔ !important: Store своим правилом давал «Заказать» filter:saturate(.85) (другой отклик, чем у «В корзину»,
   Сэр поймал 11.07 вечер voice 34456) — наш единый brightness обязан побеждать на ОБЕИХ кнопках. */
.t-store__card__btn.js-store-prod-btn2:hover,
.t-store__prod-popup__btn:not(.t-store__card__btn):hover{ filter:brightness(.93) !important; }

/* JVS-OPTRADIUS (11.07, Сэр voice 34333): боксы характеристик (512 Гб / ОЗУ / объём) — углы скруглены
   как у кнопок (7px), в карточках И внутри товара. Кружки цвета (_color) не трогаем — они круглые. */
.t-product__option-select{ border-radius:7px !important; }
.t-product__option-item:not(.t-product__option-item_color){ border-radius:7px !important; }

/* JVS-RECOVIEW v2 (11.07 вечер, Сэр voice 34379/34387 «не обрезалась последняя ни на 13", ни на iMac, ни на Studio Display»):
   ⛔ Корень: обрезающий родитель .t-slds (t-container) = 1200px overflow hidden — вьюпорт 1284 (4 слота) НЕ влезал
   НИ НА ОДНОМ экране, 4-я карточка резалась всегда (замер 11.07: clip 1340/1580/1900 при контейнере до 1424/1664/1984).
   Канон: вьюпорт = ЦЕЛОЕ число слотов ВНУТРИ колонки 1200 → 3 слота (963) на всех десктопах, по центру колонки
   (поля ~118px под стрелки); 2 слота (642) на средних 980-1199 (t-container там 960). Одинаково на любой машине. */
/* ⛔ центр ТОЛЬКО фикс-отступом: margin:auto Тильда глушит, а calc((100%-963px)/2) циклит с shrink-родителем
   (родитель ужимался до 482 — контейнер уезжал за экран, замер 11.07). Колонка стабильна: 1200 (≥1200) / 960 (980-1199)
   → поле = (колонка − вьюпорт)/2 = 118px / 159px. */
@media screen and (min-width:1200px){
  .t-store__relevants__container .t-slds__container{ width:963px !important; max-width:963px !important;
    margin-left:118px !important; margin-right:0 !important; }
}
@media screen and (min-width:980px) and (max-width:1199.98px){
  .t-store__relevants__container .t-slds__container{ width:642px !important; max-width:642px !important;
    margin-left:159px !important; margin-right:0 !important; }
}

/* JVS-QTY (11.07, Сэр voice 34334): счётчик количества ± на странице товара — габариты как у кнопки
   «В корзину» рядом (была куцая 102×32 при кнопке 146×45, пример Galaxy A36). */
.t-store__prod__quantity{ width:146px !important; height:45px !important; justify-content:space-between !important; align-items:center !important; border-radius:7px !important; box-sizing:border-box !important; padding:0 12px !important; }

/* JVS-HEROBTN — живая кнопка «Купить» на наших hero-баннерах (Сэр 12.07: «кнопки только активные»).
   Эталон снят с родных слайдов Тильды: 134×50, прозрачная, рамка 1px, radius 7px, FuturaPT 20px,
   hover — БЕЗ заливки, см. канон ниже (--jvs-hover per-banner). Цвет рамки/текста задаётся инлайн
   под каждый баннер (тёмный на светлых, белый на тёмных). Впечатанная в картинку кнопка стёрта — двойной рамки не будет. */
/* ⛔ ШИРИНА (регресс 12.07, Сэр: «баннеры стали огромные, вылезли, обрезаются»):
   родной слайд — ZeroBlock-артборд ФИКСИРОВАННЫХ 1160px по центру, а наш div тянулся на всю ширину
   owl-item (1552px при окне 1600, 1862px при 1920). Картинка (ratio 2.90) в растянутом контейнере
   (ratio 3.88) шла в cover → срезалась по вертикали. Ставим ровно родные 1160px и центрируем:
   тогда ratio контейнера (2.90) = ratio баннера (2.902) → картинка видна целиком, без обрезки. */
/* ⛔ ВЫРАВНИВАНИЕ ПО РОДНЫМ (Сэр 12.07: «твои четыре баннера смещены неровно, не центрованы»).
   Замер: owl-item = 1164px, полотно = 1160px. Родные слайды прижаты к ЛЕВОМУ краю item (отступ 0),
   а `margin:0 auto` центрировал наш div внутри item → отступ 2px. При перелистывании наши баннеры
   стояли на 2px правее родных — глаз ловит этот сдвиг как «дёрганье». Ставим отступ 0, как у родных. */
.jvs-hero-slide{ width:1160px; max-width:100%; height:400px; margin:0; }
.jvs-hero-btn{
  position:absolute; display:flex; align-items:center; justify-content:center;
  width:134px; height:50px; box-sizing:border-box;
  border:1px solid currentColor; border-radius:7px; background:transparent;
  font-family:FuturaPT,Arial,sans-serif; font-size:20px; font-weight:400; line-height:1;
  text-decoration:none; cursor:pointer;
  transition:background-color .2s ease-in-out, color .2s ease-in-out, border-color .2s ease-in-out;
}
/* ⛔ HOVER КНОПКИ БАННЕРА — канон 12.07 (два слова Сэра, оба обязательны):
     (1) «не должна выделяться вся оранжевым — просто обводка другого цвета» → фон при наведении
         ОСТАЁТСЯ прозрачным, меняются только обводка и текст. Заливки нет.
     (2) «каждая кнопка должна подсвечиваться другим цветом» → цвет наведения СВОЙ у каждого баннера.
   Почему не один цвет на всех: замер родных кнопок Тильды показал ровно это — у каждого слайда свой
   акцент (чёрная→голубая, чёрная→алая, фиолетовая→малиновая, белая→чёрная). Общий чёрный, который
   стоял тут раньше, был НЕВИДИМ на двух наших баннерах: у Fitbit кнопка #03185c и у MacBook #230f54 —
   обе почти чёрные, наведение не давало никакой разницы. Цвет наведения задаётся в JVS_HERO (--jvs-hover)
   и подобран под фон ПОД кнопкой: оранжевый нельзя на Ray-Ban и MacBook — там фон сам оранжевый. */
.jvs-hero-btn:hover{
  background-color:transparent !important;
  border-color:var(--jvs-hover, #000) !important;
  color:var(--jvs-hover, #000) !important;
}

/* JVS-CATALOG — каталог (голос Сэра 12.07): 1) заголовок раздела в две строки РЕЗАЛСЯ по нижней кромке
   (ZeroBlock-артборд 80px + overflow:hidden против текста 25px/39px с отступом 20px = 98px) — кегль мельче,
   обрезку снимаем; 2) слева в фильтрах квадратные боксы — скругляем: «квадратных краёв на сайте быть не должно».
   Цветовые свотчи не трогаем — они уже круглые (border-radius:50%). */
.jvs-cat-head{ overflow:visible !important; }
.jvs-cat-title{ font-size:20px !important; line-height:28px !important; }
.t-store__filter .t-checkbox__indicator:not(.t-store__filter__checkmark_color){ border-radius:6px !important; }
.t-store__filter .t-store__filter__btn,
.t-store__filter button,
.t-store__filter .t-btn{ border-radius:7px !important; }
.t-store__filter input[type="text"],
.t-store__filter input[type="number"],
.t-store__filter input[type="search"],
.t-store__filter select,
.t-store__filter .t-store__filter__input,
.t-store__filter .t-store__filter__search-input{ border-radius:7px !important; }
.t-store__filter .t-store__filter__item{ border-radius:7px !important; }
.t-store__filter__opts-mob-btn,
.t-store__filter__mob-btn{ border-radius:7px !important; }

/* JVS-MOBILE (12.07 вечер, Сэр voice 34679 + 3 скрина): мобильная полировка ≤639px.
   Десктоп/планшет не трогаем — всё под media. Пункты Сэра:
   (1) фиолетовая линия справа от плитки «Смартфоны» — декор десктопной раскладки,
       на мобильной торчит за экран (elem 1684412176877, l275+w260 > 390);
   (2) кнопки карточек резались эллипсисом («Подр…»/«Заказа…») — в столбик на всю ширину;
   (3) карточки неравномерные — имя вверху, блок цена→статус→цвет→кнопки прижат к низу,
       в ряду цены/статусы/кнопки на одних линиях (паттерн = десктопный JVS-CARDLINES). */
@media (max-width: 639px) {
  .tn-elem__5083449721684412176877 { display: none !important; }

  .t-store__card__btns-wrapper { flex-direction: column !important; gap: 8px !important; }
  .t-store__card__btns-wrapper .t-store__card__btn {
    width: 100% !important; max-width: 100% !important; margin: 0 !important;
  }

  .t-store__card { display: flex !important; flex-direction: column !important; }
  /* у мобильных Store-карточек контент живёт в wrap_txt-and-btns (wrap_all — десктопный);
     цена — внутри безклассового инлайн  в wrap_txt-and-opts → flex-колонка каскадом до .
     ⛔ ПЕРЕКРОЕНО 13.07 (Сэр voice 35021, скрин Fitbit×A36): старый паттерн «воздух между именем
     и ценой» (price margin-top:auto) при соседе с 3 опциями ронял цену на ~200px вниз карточки.
     Новый канон: цена СРАЗУ под именем (12px), пакет имя→цена→статус→опции идёт сверху плотно,
     весь свободный воздух — ПЕРЕД КНОПКАМИ (btns margin-top:auto) → кнопки соседних карточек
     на одной линии, textwrapper и  не растягиваются (flex:0), обёртки-цепочка flex:1 живёт. */
  .t-store__card__wrap_all,
  .t-store__card__wrap_txt-and-btns,
  .t-store__card .store__card__wrap_txt-and-opts {
    display: flex !important; flex-direction: column !important; flex: 1 1 auto !important;
  }
  .t-store__card .store__card__wrap_txt-and-opts > a,
  .t-store__card .t-store__card__textwrapper {
    display: flex !important; flex-direction: column !important; flex: 0 0 auto !important;
  }
  .t-store__card .t-store__card__price-wrapper { margin-top: 12px !important; }
  .t-store__card .js-product-controls-wrapper { margin-top: 0 !important; }
  .t-store__card .t-store__card__btns-wrapper { margin-top: auto !important; }

  /* 5. Подъём плиток главной (13.07, Сэр voice 35021 + скрин): под шапкой было 132px пустоты
     (60 межблок + 72 верхний воздух артборда rec508344972) — подъём дал зазор 44px.
     ⛔ -134 = -88 (пустота) + -46 (однорядная шапка v4): отрицательные margin-bottom шапки и
     margin-top этого блока СХЛОПЫВАЮТСЯ (CSS collapse, берётся min, а не сумма) — потому весь
     подъём живёт ЗДЕСЬ одним числом, а на прочих страницах работает margin-bottom шапки -46. */
  #rec508344972 { margin-top: -134px !important; }

  /* 6. ШАПКА В ОДИН РЯД v4 (13.07, Сэр voice 35066 «вариант B»): 110px двумя рядами → 64px.
     [бургер] [лого] … [трубка] [лупа] [корзина] · коробочка «статус заказа» → пункт в меню (JVS-JSFIX
     statusInMenu). Сдвиги = АБСОЛЮТНЫЕ translate (старые HEADERALIGN-сдвиги @<980 уже учтены суммой —
     канон «суммировать, не наслаивать»); замер живой геометрии 390 → цели, скрипт probe_hdr_b.py. */
  /* бургер v4.1 (Сэр voice 35092: «оранжевая огромная — не то; серый квадратик как лупа,
     три ТОНКИЕ линии под наклоном как на десктопе»): плашка 63×45 → 45×45, фон #2b2b2b как
     у лупы/корзины; линии = data-SVG (burgerRestyle в JVS-JSFIX), т.к. ::before на tn-atom
     ненадёжен (инлайн-механика Zero), а родная картинка полосок толстая. Зазоры вокруг лого
     при 45px квадрате выравниваются сами: бургер→лого 31 · лого→трубка 32. */
  #rec507762913 .tn-elem__5077629131667135956437 { transform: translate(-35px,-45px) !important;
    width: 45px !important; height: 45px !important; }                                             /* бургер плашка */
  #rec507762913 .tn-elem__5077629131667135956437 .tn-atom {
    background: #2b2b2b !important; border-radius: 7px !important; width: 100% !important; height: 100% !important; }
  #rec507762913 .tn-elem__5077629131670369277045 { transform: translate(-35px,-45px) !important;
    width: 45px !important; height: 45px !important; }                                             /* бургер кликер */
  #rec507762913 .tn-elem__5077629131667136109552 { transform: translate(-44px,-45px) !important; } /* линии по центру квадрата */
  /* низ паттерна-картинки шапки торчал под полосой «серыми квадратиками» (Сэр voice 35092):
     элемент ужат до 64px, но img внутри осталась 111px — overflow clip решает */
  #rec507762913 .tn-elem__5077629131667134516855 { overflow: hidden !important; }
  #rec507762913 .tn-elem__5077629131667134198293 { overflow: hidden !important; }
  #rec507762913 .tn-elem__5077629131667134398694 { transform: translate(-45px,5px) !important; }   /* лого */
  #rec507762913 .tn-elem__5077629131667134023210 { transform: translate(-71px,5px) !important; }   /* трубка */
  #rec507762913 .tn-elem__5077629131670366367361 { transform: translate(101px,-44px) !important; } /* лупа квадрат */
  #rec507762913 .tn-elem__5077629131670366367370 { transform: translate(101px,-44px) !important; } /* лупа иконка */
  #rec507762913 .tn-elem__5077629131667135574259 { transform: translate(38px,-44px) !important; }  /* корзина квадрат */
  #rec507762913 .tn-elem__5077629131667135574268 { transform: translate(38px,-44px) !important; }  /* корзина иконка */
  #rec507762913 .tn-elem__5077629131667135758135 { transform: translate(38px,-44px) !important; }  /* бейдж */
  #rec507762913 .tn-elem__5077629131667135802520 { transform: translate(38px,-44px) !important; }  /* цифра корзины */
  #rec507762913 .tn-elem__5077629131670458247100 { transform: translate(0px,-46px) !important; }   /* оранжевая полоса */
  #rec507762913 .tn-elem__5077629131667133829555 { display: none !important; }                     /* коробочка → в меню */
  #rec507762913 .tn-elem__5077629131667134198293,
  #rec507762913 .tn-elem__5077629131667134198293 .tn-atom,
  #rec507762913 .tn-elem__5077629131667134516855,
  #rec507762913 .tn-elem__5077629131667134516855 .tn-atom { height: 64px !important; }             /* подложка+декор */
  #rec507762913 { margin-bottom: -46px !important; }  /* схлопнуть пустой низ артборда (120→74) */

  /* пункт «Узнать статус заказа» внутри моб-меню (элемент строит statusInMenu из JVS-JSFIX) */
  #jvs-statusbar {
    position: fixed; left: 14px; right: 14px; bottom: 20px; height: 50px; z-index: 20;
    display: flex; align-items: center; justify-content: center; gap: 9px;
    background: rgba(25,25,25,.92); -webkit-backdrop-filter: blur(9px); backdrop-filter: blur(9px);
    border-radius: 7px; color: #fff; font-size: 15px; cursor: pointer;
  }
  #jvs-statusbar img { width: 18px; height: 20px; }

  /* 4. Низкие плитки категорий (ТВ / Красота / Транспорт): продукт в картинке стоит
     под заголовком — скрим-градиент сверху (span.jvs-scrim вставляет tileScrim() из JVS-JSFIX;
     ::after на tn-atom не рисуется — инлайн-механика Zero) + мягкая тень заголовка */
  .jvs-scrim {
    position: absolute; left: 0; top: 0; right: 0; height: 64px; pointer-events: none;
    background: linear-gradient(180deg, rgba(0,0,0,.30) 0, rgba(0,0,0,.10) 42px, rgba(0,0,0,0) 100%);
    border-radius: inherit;
  }
  .tn-elem__5083449721684411756377 .tn-atom,
  .tn-elem__5083449721684419361241 .tn-atom,
  .tn-elem__5083449721684419378279 .tn-atom {
    text-shadow: 0 1px 3px rgba(0,0,0,.35), 0 2px 12px rgba(0,0,0,.25) !important;
  }
}

/* JVS-TOPBAR (12.07 вечер, Сэр voice 34725): верхняя строка «Уссурийск · Узнать статус заказа»
   стояла на 6px ЛЕВЕЕ логотипа (390 vs 396 на 1920) — сдвиг вправо, левый край = левый край
   логотипа xStudio, пиксель-в-пиксель. Двигается ГРУППА (пин + город + иконка + статус) —
   взаимные расстояния сохранены. Моб не трогаем (там строки нет). */
@media (min-width: 980px) {
  #rec507762913 .tn-elem__5077629131667133727897,
  #rec507762913 .tn-elem__5077629131667133575176,
  #rec507762913 .tn-elem__5077629131667133829555,
  #rec507762913 .tn-elem__5077629131667133846299 { margin-left: 6px; }
}

/* JVS-RABBIT (12.07 вечер, Сэр voice 34728): заяц-маскот в «Контактах» — opacity 0.1 (Zero,
   на .tn-atom) делал его почти невидимым → 0.2; и приподнят от нижней кромки карты на 28px,
   чтобы красиво заполнял угол. На мобиле элемент за краем артборда — не трогаем. */
@media (min-width: 980px) {
  #rec557575056 .tn-elem__5575750561678709226771 .tn-atom { opacity: .2 !important; }
  #rec557575056 .tn-elem__5575750561678709226771 { transform: translateY(-28px); }
}

/* JVS-SUBFIT (13.07, Сэр voice 34755 + фото): подзаголовок подписки «Подпишитесь и узнавайте…» —
   Zero-атом 371px nowrap с left 53/73 вылезал за край НА ЛЮБОМ моб. вьюпорте (390: правый край 424).
   Растяжка left+right (width:auto у absolute) + перенос + центр — красиво под заголовком. */
@media (max-width: 639px) {
  /* ⛔ НЕ left+right: в Safari артборд бывает РАСТЯНУТ шире вьюпорта (его же вылезавшим
     текстом, 441 при vw 393) — right отсчитывался от него, край уезжал за экран (Сэр 34778).
     Привязка к вьюпорту: 100vw + симметричные паддинги атома. */
  #rec508251365 [data-elem-id="1667227457696"],
  #rec511614515 [data-elem-id="1677667871370"] {
    left: 0 !important; right: auto !important; width: 100vw !important;
  }
  #rec508251365 [data-elem-id="1667227457696"] .tn-atom,
  #rec511614515 [data-elem-id="1677667871370"] .tn-atom {
    white-space: normal !important; text-align: center !important;
    font-size: 13px !important; line-height: 1.55 !important;
    width: 100% !important; padding: 0 26px !important; box-sizing: border-box !important;
  }
}

/* JVS-BUYHOVER (13.07, Сэр voice 34758): «Оформить заказ» на странице товара НЕ приглушалась —
   Тильда оборачивает кнопку перехватчиком div.needproduct-btn (pointer-events ловит ОН, :hover
   кнопки мёртв). Вешаем тот же единый отклик карточных кнопок на hover обёртки. */
.needproduct-btn:hover .t-store__prod-popup__btn{ filter:brightness(.93) !important; }

/* JVS-RECOMOREHOVER (13.07, Сэр voice 34759): «Подробнее» в «Смотрите также» (старые t-btn_xs) —
   hover чёрным, пуля-в-пулю с каталогом (#191919 + белый текст/рамка). */
.t-store__card.js-product-relevant a.js-store-prod-btn.t-btn_xs:not(.js-store-prod-btn2):hover{
  background-color:#191919 !important; color:#fff !important; border-color:#191919 !important;
}
.t-store__card.js-product-relevant a.js-store-prod-btn.t-btn_xs:not(.js-store-prod-btn2):hover *{
  color:#fff !important;
}
/* ═══════════════════════════════════════════════════════════════════════════════
   JVS-HEADER (13.07.2026, Сэр voice 34957 + 34958 «ультра-современно»): редизайн шапки.
   1) Серая линия «Каталог товаров + поиск» убрана, высота шапки 155→110 (margin-схлопывание,
      т.к. height артборда переписывает t396_doResize).
   2) Бургер ☰ слева от логотипа = скрытая Zero-заготовка 80×80 (…394/…682, лежала за артбордом
      y-216 с РОДНЫМ toggle-хуком href="#rec510707639") + CSS-полоски. На обычных страницах меню
      открывает родной хэндлер заготовки (⛔ прокси-клик в кнопку каталога = ДВОЙНОЙ toggle,
      меню закрывается мгновенно — инцидент калибровки 13.07). На tproduct — headerUX() из JVS-JSFIX.
   3) Лупа-поиск на месте избранного = скрытые Zero-заготовки (…361/370/364 и карточные …672/676/679,
      дизайн «квадрат как корзина» уже готов у Zero). Панель поиска = родной t838 (rec507791814 гл. /
      rec508205144 карточек) как fixed стеклянная панель под шапкой; ⛔ t838 главной ПЕРЕМЕЩЁН
      родным скриптом ВНУТРЬ Zero-элемента searchinput → тому НЕЛЬЗЯ display:none (t838 умирает),
      только visibility:hidden. ⛔ .t-col Тильды = display:inline — при float:none обязателен
      display:block, иначе высота схлопывается. Родные fadeIn/fadeOut глушим display:block!important
      на >div (@≥980), на мобиле родная механика цела.
   4) Избранное отключено ПОЛНОСТЬЮ (слово Сэра): сердечки карточек, виджет t1002, иконка в шапке.
   5) Кнопка «Каталог товаров» на КАРТОЧНОЙ шапке скрыта visibility:hidden (НЕ display:none) —
      JVS-CATMENU findBtn ищет её ПО ГЕОМЕТРИИ И ТЕКСТУ, без неё меню tproduct не построится.
   6) Сдвиги заменяют JVS-HEADERALIGN (11.07): от БАЗОВЫХ координат лого +42 (было +6),
      разделы/полоски +33 (было +12) → зазоры лого→разделы 76px = разделы→лупа 77px.
      На мобиле старые +6/+12 сохранены (мобилка пиксель-в-пиксель как до редизайна).
   ═══════════════════════════════════════════════════════════════════════════════ */
/* — избранное: отключено везде — */
.t1002__addBtn{display:none!important}
#rec507815505{display:none!important}
.tn-elem__5077629131667135359671,.tn-elem__5077629131667135543700,
.tn-elem__5077629131667142681826,.tn-elem__5077629131667142681833,
.tn-elem__5077629131667135625971,
.tn-elem__5082051431670373906618,.tn-elem__5082051431670373906622,
.tn-elem__5082051431670373906667,.tn-elem__5082051431670373906670,
.tn-elem__5082051431670373906633{display:none!important}

/* — мобильная совместимость: старые сдвиги HEADERALIGN как были; лупа — на место
     убранного сердечка (x179→237, дыра между лупой и корзиной после отключения избранного) — */
@media (max-width:979px){
.tn-elem__5077629131670366367361,.tn-elem__5077629131670366367370,
.tn-elem__5082051431670373906672,.tn-elem__5082051431670373906676{transform:translateX(58px)!important}
.tn-elem__5077629131667134398694,.tn-elem__5082051431670373906661{transform:translateX(6px)!important}
.tn-elem__5077629131667134619948,.tn-elem__5077629131667134917481,
.tn-elem__5077629131667134699733,.tn-elem__5077629131667135198202,
.tn-elem__5077629131667134741876,.tn-elem__5077629131667135230818,
.tn-elem__5077629131667134765044,.tn-elem__5077629131667135250546,
.tn-elem__5077629131667134793563,.tn-elem__5077629131667135275906,
.tn-elem__5077629131667134863146,.tn-elem__5077629131667135300290,
.tn-elem__5077629131667134888186,.tn-elem__5077629131667135321026,
.tn-elem__5082051431670373906548,.tn-elem__5082051431670373906568,
.tn-elem__5082051431670373906551,.tn-elem__5082051431670373906572,
.tn-elem__5082051431670373906555,.tn-elem__5082051431670373906575,
.tn-elem__5082051431670373906558,.tn-elem__5082051431670373906579,
.tn-elem__5082051431670373906560,.tn-elem__5082051431670373906582,
.tn-elem__5082051431670373906563,.tn-elem__5082051431670373906586,
.tn-elem__5082051431670373906565,.tn-elem__5082051431670373906589{transform:translateX(12px)!important}
}

@media (min-width:980px){
/* — серая линия: элементы прочь, высота 155→110 — */
.tn-elem__5077629131667135891086,.tn-elem__5077629131667135956437,
.tn-elem__5077629131667136330148,.tn-elem__5077629131667136015834,
.tn-elem__5077629131667136109552,
.tn-elem__5082051431670373906643,.tn-elem__5082051431670373906647,
.tn-elem__5082051431670373906650,.tn-elem__5082051431670373906654{display:none!important}
/* кнопка каталога КАРТОЧНОЙ шапки — только visibility (геометрия для findBtn catmenu) */
.tn-elem__5082051431670373906658{visibility:hidden!important;pointer-events:none!important}
/* zero-обёртки поиска — visibility (внутри главной живёт перемещённый t838) */
.tn-elem__5077629131667136923195,.tn-elem__5082051431670373906664{visibility:hidden!important;pointer-events:none!important}
#rec507762913,#rec508205143{margin-bottom:-45px!important}
#rec510707639{top:110px!important}
/* декор-паттерн шапки не перехватывает клики бургера */
.tn-elem__5077629131667134516855,.tn-elem__5082051431670373906545{pointer-events:none}

/* — лупа на месте избранного — */
.tn-elem__5077629131670366367361{transform:translate(-10px,216.5px)!important}
.tn-elem__5077629131670366367370{transform:translate(-10px,216.5px)!important}
.tn-elem__5082051431670373906672{transform:translate(-10px,216.5px)!important}
.tn-elem__5082051431670373906676{transform:translate(-10px,216.5px)!important}
.tn-elem__5077629131670366367361,.tn-elem__5077629131670366367370,
.tn-elem__5082051431670373906672,.tn-elem__5082051431670373906676{cursor:pointer}
/* Сэр 34976: только значки — подписи «Поиск»/«Корзина» скрыты, «Каталог» убран из ::after */
.tn-elem__5077629131677706041364,.tn-elem__5082051431670373906679,
.tn-elem__5077629131667135698155,.tn-elem__5082051431670373906635{display:none!important}
.tn-elem__5077629131670366367361 .tn-atom,.tn-elem__5082051431670373906672 .tn-atom,
.tn-elem__5077629131670366367370 .tn-atom,.tn-elem__5082051431670373906676 .tn-atom{cursor:pointer}
.tn-elem__5077629131670366367361:hover .tn-atom,.tn-elem__5082051431670373906672:hover .tn-atom{opacity:.09!important}

/* — бургер ☰ (v2 по фидбеку Сэра 34967: крупнее, наклон-курсив как шрифт лого,
     hover = оранжевый «X», подпись «Каталог» в стиле подписей справа; позиция — полоски
     left=160: отступ от ЛЕВОГО края баннера (x138) = 22px = отступ корзины (r1280) от
     ПРАВОГО края баннера (x1302) — симметрия краёв по слову Сэра) — */
.tn-elem__5077629131670367357394,.tn-elem__5082051431670373906682{
  transform:translate(-448px,246px)!important;width:60px!important;cursor:pointer;z-index:60}
.tn-elem__5077629131670367357394 .tn-atom,.tn-elem__5082051431670373906682 .tn-atom{
  display:flex!important;align-items:center;justify-content:center;width:100%!important;height:100%!important;
  background:transparent!important;cursor:pointer;position:relative}
.tn-elem__5077629131670367357394 .tn-atom::before,.tn-elem__5082051431670373906682 .tn-atom::before{
  content:'';display:block;width:30px;height:4px;background:#fff;border-radius:2px;
  box-shadow:0 11px 0 #fff,0 22px 0 #fff;transform:skewX(-10deg) translateY(-11px);
  transition:background .22s ease,box-shadow .22s ease}
.tn-elem__5077629131670367357394:hover .tn-atom::before,.tn-elem__5082051431670373906682:hover .tn-atom::before{
  background:#ff4500;box-shadow:0 11px 0 #ff4500,0 22px 0 #ff4500}

/* — логотип и разделы: центровка (от базовых координат, HEADERALIGN снят) — */
.tn-elem__5077629131667134398694,.tn-elem__5082051431670373906661{transform:translateX(72px)!important}
.tn-elem__5077629131667134619948,.tn-elem__5077629131667134699733,.tn-elem__5077629131667134741876,
.tn-elem__5077629131667134765044,.tn-elem__5077629131667134793563,.tn-elem__5077629131667134863146,
.tn-elem__5077629131667134888186,
.tn-elem__5077629131667134917481,.tn-elem__5077629131667135198202,.tn-elem__5077629131667135230818,
.tn-elem__5077629131667135250546,.tn-elem__5077629131667135275906,.tn-elem__5077629131667135300290,
.tn-elem__5077629131667135321026,
.tn-elem__5082051431670373906548,.tn-elem__5082051431670373906551,.tn-elem__5082051431670373906555,
.tn-elem__5082051431670373906558,.tn-elem__5082051431670373906560,.tn-elem__5082051431670373906563,
.tn-elem__5082051431670373906565,
.tn-elem__5082051431670373906568,.tn-elem__5082051431670373906572,.tn-elem__5082051431670373906575,
.tn-elem__5082051431670373906579,.tn-elem__5082051431670373906582,.tn-elem__5082051431670373906586,
.tn-elem__5082051431670373906589{transform:translateX(48px)!important}

/* — корзина: вертикальный центр чёрной полосы (подписей больше нет) — */
.tn-elem__5077629131667135574259,.tn-elem__5077629131667135574268,
.tn-elem__5077629131667135758135,.tn-elem__5077629131667135802520,
.tn-elem__5082051431670373906625,.tn-elem__5082051431670373906629,
.tn-elem__5082051431670373906637,.tn-elem__5082051431670373906641{transform:translateY(6.5px)!important}

/* — панель поиска: t838 как стеклянный оверлей — */
#rec507791814,#rec508205144{
  position:fixed!important;top:110px!important;left:0!important;right:0!important;z-index:9996;
  display:block!important;width:auto!important;height:auto!important;
  background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
  box-shadow:0 14px 26px -8px rgba(0,0,0,.09);
  padding:20px 0 22px!important;margin:0!important;
  opacity:0;transform:translateY(-10px);pointer-events:none;visibility:hidden;
  transition:opacity .28s ease,transform .32s cubic-bezier(.22,.61,.36,1),visibility 0s .32s}
body.jvs-search-open #rec507791814,body.jvs-search-open #rec508205144{
  opacity:1;transform:none;pointer-events:auto;visibility:visible;
  transition:opacity .28s ease,transform .32s cubic-bezier(.22,.61,.36,1)}
#rec507791814>div,#rec508205144>div{display:block!important}
#rec507791814 .t-col,#rec508205144 .t-col{display:block!important;float:none!important;margin:0 auto!important;max-width:760px;width:100%!important}
#rec507791814 .t838,#rec508205144 .t838{padding:0 20px}
#rec507791814 .t838__input,#rec508205144 .t838__input{height:50px!important;font-size:16px!important;border-radius:9px!important}
}

/* JVS-SLDLINES (13.07, Сэр voice 34978 + фото OnlyPhones): навигация hero-слайдера —
   стильные линии вместо точек. Активная — оранжевая (бренд), плавный переход. */
.tildoshnaya-slider-owl .owl-dots .owl-dot span{
  width:34px!important;height:4px!important;border-radius:2px!important;
  background:#d6d6d6!important;margin:5px 5px;transition:background .28s ease,width .28s ease}
.tildoshnaya-slider-owl .owl-dots .owl-dot:hover span{background:#b9b9b9!important}
.tildoshnaya-slider-owl .owl-dots .owl-dot.active span{background:#ff4500!important;width:46px!important}

/* JVS-HIDEXIAOMIWATCH (13.07, слово Сэра 34987): раздел «Смарт часы Xiaomi» пуст — скрыть все входы
   (кнопка T976 на витрине часов; страница снята с публикации, ссылок не оставляем). */
a[href="/smartwatchxiaomi"]{display:none!important}
