/* ================================
   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 (11.07 вечер, Сэр voice 34387/34423): иконка у «Заказать» — коробка-посылка,
   белая, В ДИАМЕТР корзинки: у корзинки глиф заполняет бокс 13px почти целиком, у коробки path с полями
   (ink ≈11px при 13px) — компенсируем боксом 15px, чтобы ВИЗУАЛЬНЫЙ размер совпадал один в один. */
.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='%23ffffff'><path d='M12 1.7 3 5.7v12.6l9 4 9-4V5.7l-9-4zm0 2.2 6.2 2.75L12 9.4 5.8 6.65 12 3.9zM5 8.2l6 2.65v8.5L5 16.7V8.2zm14 8.5-6 2.65v-8.5L19 8.2v8.5z'/></svg>") no-repeat center/contain;
}

/* 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-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-HEARTFIX (11.07 вечер, Сэр msg 34427 «перестали нажиматься сердечки»): сердечко избранного
   вложено в ссылку-обёртку фото, которую cardClickGuard глушит pointer-events:none — none наследовался
   и на сердце. Возвращаем сердцу кликабельность явно (его клик nolim-виджет сам preventDefault'ит,
   так что переход в товар по родительской ссылке не срабатывает). */
.t-store__card .t1002__addBtn{ pointer-events:auto !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-HEADERALIGN (11.07 вечер, Сэр voice 34442 «выровнять всё»): симметрия чёрной полосы шапки.
   Замер 1440 (артборд-координаты, на всех десктопах одинаковы): линия слева = кнопка «Каталог товаров» x140,
   линия справа = край поиска x1282. Иконка корзины R1266 → правый отступ 16px; логотип был L150 (отступ 10)
   → +6px = 16px, симметрично. Меню было: зазор логотип→«Главная» 79px (после сдвига лого) vs «Контакты»→
   «Избранное» 103px → пункты+плашки +12px: оба зазора ровно 91px. Обе шапки (главная 5077629131667… и
   tproduct …1670373906…). transform у элементов = none (замерено) — двигаем translateX, left не трогаем. */
[class*="5077629131667134398694"], [class*="1670373906661"]{ transform: translateX(6px) !important; }
[class*="5077629131667134619948"], [class*="5077629131667134917481"],
[class*="5077629131667134699733"], [class*="5077629131667135198202"],
[class*="5077629131667134741876"], [class*="5077629131667135230818"],
[class*="5077629131667134765044"], [class*="5077629131667135250546"],
[class*="5077629131667134793563"], [class*="5077629131667135275906"],
[class*="5077629131667134863146"], [class*="5077629131667135300290"],
[class*="5077629131667134888186"], [class*="5077629131667135321026"],
[class*="1670373906548"], [class*="1670373906568"],
[class*="1670373906551"], [class*="1670373906572"],
[class*="1670373906555"], [class*="1670373906575"],
[class*="1670373906558"], [class*="1670373906579"],
[class*="1670373906560"], [class*="1670373906582"],
[class*="1670373906563"], [class*="1670373906586"],
[class*="1670373906565"], [class*="1670373906589"]{ transform: translateX(12px) !important; }

/* JVS-HEROBTN — живая кнопка «Купить» на наших hero-баннерах (Сэр 12.07: «кнопки только активные»).
   Эталон снят с родных слайдов Тильды: 134×50, прозрачная, рамка 1px, radius 7px, FuturaPT 20px,
   hover — заливка #ff5f5f. Цвет рамки/текста задаётся инлайн под каждый баннер (тёмный на светлых,
   белый на тёмных). Впечатанная в картинку кнопка предварительно стёрта — двойной рамки не будет. */
/* ⛔ ШИРИНА (регресс 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) → картинка видна целиком, без обрезки. */
.jvs-hero-slide{ width:1160px; max-width:100%; height:400px; margin:0 auto; }
.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: «не должна выделяться вся оранжевым — только обводка»).
   Замер живой родной кнопки: фон при наведении ОСТАЁТСЯ прозрачным, меняются цвет обводки и текста
   (белый → чёрный). Никакой заливки. Моя первая версия заливала фон #ff5f5f — отменено. */
.jvs-hero-btn:hover{ background-color:transparent !important; border-color:#000 !important; color:#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; }
