/* ================================================================
   TITAN CLASS — общие пользовательские стили сайта
   Место установки: Настройки сайта → Еще → Пользовательские CSS-стили
                    (кнопка "Редактировать CSS")
   
   БЛОК 1. Стили страниц стульев — body[data-page-chair]
   БЛОК 2. Стили страницы стола — body:has(.uc-my-zero)
   
   === НОВАЯ СХЕМА СТОЛА (v3 финальная) ===
   - Zero-артборд .uc-my-zero (1284×620) центрируется по окну
     самой Тильдой. Элементы калькулятора стоят в правой
     половине артборда (координаты left 644..1284). Левая
     половина артборда (0..644) пустая — на неё накладывается
     галерея.
   - Галерея t762 переносится JS-ом внутрь .t396__artboard,
     позиционируется absolute с left: calc(50% - 642px).
     Так галерея всегда совпадает с левым краем виртуального
     1284-блока на любом разрешении (≥1284), потому что
     артборд центрируется по окну, а 50% даёт центр окна,
     -642 — половина 1284 влево.
   - Родительский .t-rec галереи (rec2242661291) схлопывается
     до высоты 0, чтобы не занимать места в потоке.
   - Под Zero-блоком стоят rec2242661301 и rec2246266481 —
     отдельные блоки страницы, держат свою позицию.
   - Контейнер #my-product-wrap больше НЕ создаётся (вызов
     buildWrap() отключён в titan-head.html).
   
   Адаптив <1284px настраивается отдельно (потом).
   ================================================================ */


/* =============================================================
   БЛОК 1. СТИЛИ СТРАНИЦ СТУЛЬЕВ (body[data-page-chair])
   ============================================================= */

body[data-page-chair] ::marker {
    color: #f0750f !important;
}
body[data-page-chair] label.t-checkbox__control.t-checkbox__control_flex {
    align-items: flex-start;
}

body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet {
    padding: 0 !important;
}
body[data-page-chair] .t-slds__thumbsbullet-border {
    border: 0 !important;
}
body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet.t-slds__bullet_active {
   border: 1px solid #F0750F;
    border-radius: 0;
}
.t-slds__thumbsbullet-wrapper {
    height: 770px;
}
body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet {
    width: 120px !important;
   height: 120px !important;
    border: 1px solid #FFF;
    border-radius: 0;
    margin-top: 0;
}
    body[data-page-chair] .t-slds__thumbsbullet-wrapper {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0 !important;
    left: -126px !important;
    justify-content: space-between;
    padding: 0;
    margin: 0;
}
body[data-page-chair] .t-text_xs {
    font-size: 11px !important;
    font-weight: 600 !important;
    margin-left: 2px;
}
body[data-page-chair] input#qn-1776673353363000002 {
    width: 104px !important;
}
body[data-page-chair] span.t-inputquantity__btn.t-inputquantity__btn-minus, body[data-page-chair] span.t-inputquantity__btn.t-inputquantity__btn-plus {
    border: 1px solid #E8E8E8;
    height: 48px;
    width: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
}
body[data-page-chair] span.t-inputquantity__btn.t-inputquantity__btn-minus {

    height: 44px;
    padding: 0 0 4px 0!important;
}
body[data-page-chair] .t-inputquantity__btn {
    background-color: #ffffff !important;
    
}
body[data-page-chair] .t-inputquantity {
    border-top: 1px solid #E8E8E8 !important;
    border-bottom: 1px solid #E8E8E8 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

@media (min-width: 960px) and (max-width: 1919px) {
    .t-slds__thumbsbullet-wrapper {
    height: 708px !important;
}


    body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet {
    width: 112px !important;
   height: 112px !important;
    border: 1px solid #FFF;
    border-radius: 0;
    margin-top: 0;
}
    body[data-page-chair] .t-slds__thumbsbullet-wrapper {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0 !important;
    left: -118px !important;
    justify-content: space-between;
    padding: 0;
    margin: 0;
}
}
@media (min-width: 960px) and (max-width: 1199px) {
    .t-slds__thumbsbullet-wrapper {
    height: 510px !important;
}


    body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet {
    width: 80px !important;
   height: 80px !important;
    border: 1px solid #FFF;
    border-radius: 0;
    margin-top: 0;
}
    body[data-page-chair] .t-slds__thumbsbullet-wrapper {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0 !important;
    left: -86px !important;
    justify-content: space-between;
    padding: 0;
    margin: 0;
}
}
@media (min-width: 480px) and (max-width: 959px) {
    .t-slds__thumbsbullet-wrapper {
    height: 580px !important;
}


    body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet {
    width: 90px !important;
   height: 90px !important;
    border: 1px solid #FFF;
    border-radius: 0;
    margin-top: 0;
}
    body[data-page-chair] .t-slds__thumbsbullet-wrapper {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0 !important;
    left: -98px !important;
    justify-content: space-between;
    padding: 0;
    margin: 0;
}
input#qn-1776673353363000002 {
    height: 50px !important;

}
}
@media (min-width: 320px) and (max-width: 479px) {
    .t-slds__thumbsbullet-wrapper {
height: 350px;
}


    body[data-page-chair] .t-slds__thumbsbullet.t-slds__bullet {
    width: 54px !important;
   height: 54px !important;
    border: 1px solid #FFF;
    border-radius: 0;
    margin-top: 0;
}
    body[data-page-chair] .t-slds__thumbsbullet-wrapper {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: 0 !important;
        left: -20% !important;
        justify-content: space-between;
        padding: 0;
        margin: 0;
}
body[data-page-chair] input#qn-1776673353363000002 {
    width: 64px !important;
}
body[data-page-chair] span.t-inputquantity__btn.t-inputquantity__btn-minus, body[data-page-chair] span.t-inputquantity__btn.t-inputquantity__btn-plus {
    height: 40px;
}
body[data-page-chair] span.t-inputquantity__btn.t-inputquantity__btn-minus {
 
    padding: 0 !important;
}
}
/* =============================================================
   БЛОК 2. СТИЛИ СТРАНИЦЫ СТОЛА (body:has(.uc-my-zero))
   Схема v3: галерея — absolute внутри артборда.
   ============================================================= */

/* === Карточка товара t762: оставляем только галерею, остальное прячем === */
body:has(.uc-my-zero) .js-product .t762,
body:has(.uc-my-zero) .js-product .t762__container,
body:has(.uc-my-zero) .js-product .t762__container_indent {
    padding: 0 !important;
    margin: 0 !important;
}
body:has(.uc-my-zero) .js-product .t762__col:not(:first-child) {
    display: none !important;
}
body:has(.uc-my-zero) .js-product .t762__col:first-child {
    display: block !important;
    padding: 0 !important;
}
body:has(.uc-my-zero) .js-product .t-product__title,
body:has(.uc-my-zero) .js-product .t-product__sku,
body:has(.uc-my-zero) .js-product .t-product__price,
body:has(.uc-my-zero) .js-product .t-store-prod-buy-btn,
body:has(.uc-my-zero) .js-product .t-product__option {
    display: none !important;
}

/* === FIX скролла на Android ===
   Галерея t-slds и Zero-блок перехватывают touchmove своими обработчиками
   (свайп слайдера, жесты Zero), из-за чего вертикальная прокрутка страницы
   на Android Chrome замирает после первого микро-движения пальца.

   На главном фото галереи свайп нам не нужен (фото переключаются миниатюрами),
   поэтому ставим touch-action: none — Тильда вообще ничего не обрабатывает,
   браузер передаёт жест странице (скролл).
   На остальных контейнерах pan-y — чтобы вертикальный скролл точно проходил. */
body:has(.uc-my-zero) .t-slds__main,
body:has(.uc-my-zero) .t-slds__items-wrapper,
body:has(.uc-my-zero) .t-slds__item,
body:has(.uc-my-zero) .t-slds__bgimg,
body:has(.uc-my-zero) .t-slds__container {
    touch-action: none !important;
    pointer-events: none !important;
}
body:has(.uc-my-zero) .uc-my-zero,
body:has(.uc-my-zero) .uc-my-zero .t396__artboard,
body:has(.uc-my-zero) .js-product,
body:has(.uc-my-zero) .t-slds {
    touch-action: pan-y !important;
}
/* Миниатюры должны кликаться — pointer-events возвращаем */
body:has(.uc-my-zero) .t-slds__thumbsbullet,
body:has(.uc-my-zero) .t-slds__thumbsbullet-wrapper {
    pointer-events: auto !important;
    touch-action: manipulation !important;
}

/* === Галерея .js-product позиционируется absolute внутри .t396__artboard ===
   JS перемещает галерею внутрь артборда (см. titan-head.html).
   left: calc(50% - 642px) — формула, которая выравнивает галерею
   по левому краю виртуального 1284-блока на любом окне ≥1284.
   На 1284: 50%=642, calc(50%-642)=0 → левый край артборда.
   На 1920: 50%=960, calc(50%-642)=318 → центр виртуального 1284 совпадает с центром окна.
   На 2560: 50%=1280, calc(50%-642)=638 → то же самое. */
body:has(.uc-my-zero) .js-product {
    position: absolute !important;
    top: 0 !important;
    left: calc(50% - 642px) !important;
    margin-left: 0 !important;
    width: 640px !important;
    height: 620px !important;
    z-index: 5 !important;
    background-color: #fff !important;
    box-sizing: border-box !important;
    margin-top: 0 !important;
    padding: 0 !important;
    display: block !important;
}

/* Бордер 1px вокруг главного фото — через ::after, чтобы не влиял на layout
   (не съедает внутренние пиксели, не сдвигает картинку). */
body:has(.uc-my-zero) .t-slds__main::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid #bcbcbc;
    box-sizing: border-box;
    pointer-events: none;
    z-index: 5;
}


/* Артборд должен быть позиционным контекстом для галереи */
body:has(.uc-my-zero) .uc-my-zero,
body:has(.uc-my-zero) .uc-my-zero .t396,
body:has(.uc-my-zero) .uc-my-zero .t396__artboard,
body:has(.uc-my-zero) .uc-my-zero .t396__artboard.rendered {
    position: relative !important;
}



/* Родительский .t-rec блока галереи (rec2242661291) — схлопываем до 0,
   чтобы не занимал места в потоке (галерея вылетела в Zero-артборд). */
body:has(.uc-my-zero) #rec2242661291 {
    height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Sam Zero-блок .uc-my-zero — оставляем как Тильда рисует,
   только убираем r_hidden чтобы был сразу видимый. */
body:has(.uc-my-zero) .uc-my-zero,
body:has(.uc-my-zero) .uc-my-zero.r_hidden {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    animation: none !important;
}

/* === Внутри галереи t-slds: 640×620 === */
/* Композиция: миниатюры 100px слева | отступ 4px | главное фото 536px справа */
body:has(.uc-my-zero) .t-slds {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    width: 640px !important;
    height: 620px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
    box-sizing: border-box !important;
}


/* === Высота главного фото 100% слота — пробиваем все промежуточные обёртки ===
   ВАЖНО: только height. Width у .t-slds__items-wrapper НЕ трогаем —
   это «барабан» (ширина = N × ширина_слайда, у Тильды считается inline).
   У .t-slds__bgimg отдельно убиваем padding-bottom:100% (Тильдовский inline). */
body:has(.uc-my-zero) .t-slds__main,
body:has(.uc-my-zero) .t-slds__main .t-slds__container,
body:has(.uc-my-zero) .t-slds__main .t-slds__items-wrapper,
body:has(.uc-my-zero) .t-slds__main .t-slds__item,
body:has(.uc-my-zero) .t-slds__main .t-slds__wrapper,
body:has(.uc-my-zero) .t-slds__main .t-slds__imgwrapper {
    height: 100% !important;
}

body:has(.uc-my-zero) .t-slds__main img,
body:has(.uc-my-zero) .t-slds__main .t-slds__bgimg,
body:has(.uc-my-zero) .t-slds__main .t-bgimg {
    width: 100% !important;
    height: 100% !important;
    padding-bottom: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    background-size: cover !important;
    background-position: center center !important;
}



/* Главное фото 536×620 */
body:has(.uc-my-zero) .t-slds__main {
    width: 536px !important;
    height: 620px !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

/* Колонка миниатюр 100×620 (6 штук × 100 + 5 отступов × 4 = 620) */
body:has(.uc-my-zero) .t-slds__thumbsbullet-wrapper {
    display: flex !important;
    flex-direction: column !important;
    width: 100px !important;
    height: 620px !important;
    flex-shrink: 0 !important;
    gap: 4px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    justify-content: flex-start !important;
}

/* Каждая миниатюра 100×100 */
body:has(.uc-my-zero) .t-slds__thumbsbullet {
    width: 100px !important;
    height: 100px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    box-sizing: border-box !important;
    border: 1px solid #bcbcbc !important;
}
body:has(.uc-my-zero) .t-slds__thumbsbullet.t-slds__bullet_active {
    border: 1px solid #f0750f !important;
}
body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__bgimg.t-bgimg,
body:has(.uc-my-zero) .t-slds__thumbsbullet .t-bgimg {
    width: 96px !important;
    height: 96px !important;
    max-height: 96px !important;
    min-height: 96px !important;
    background-size: cover !important;
    background-position: center center !important;
    padding: 0 !important;
    padding-bottom: 0 !important;
}
body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__thumbsbullet-border {
    width: 96px !important;
    height: 96px !important;
    box-sizing: border-box !important;
    border: none !important;
}

/* === Кнопки форм, цвета, hover === */
body:has(.uc-my-zero) .sky {
    display: none !important;
}
body:has(.uc-my-zero) .my-pru,
body:has(.uc-my-zero) .my-skru,
body:has(.uc-my-zero) .my-eru,
body:has(.uc-my-zero) .my-buy {
    cursor: pointer !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

body:has(.uc-my-zero) .my-pru:hover .tn-atom,
body:has(.uc-my-zero) .my-skru:hover .tn-atom,
body:has(.uc-my-zero) .my-eru:hover .tn-atom {
    opacity: 0.7 !important;
}

body:has(.uc-my-zero) .my-pru.size-active .tn-atom,
body:has(.uc-my-zero) .my-skru.size-active .tn-atom,
body:has(.uc-my-zero) .my-eru.size-active .tn-atom {
    background-color: #000 !important;
    border-color: #000 !important;
}
body:has(.uc-my-zero) .my-pru.size-active .tn-atom__button-text,
body:has(.uc-my-zero) .my-skru.size-active .tn-atom__button-text,
body:has(.uc-my-zero) .my-eru.size-active .tn-atom__button-text {
    color: #fff !important;
}

body:has(.uc-my-zero) .my-pru.size-active:hover .tn-atom,
body:has(.uc-my-zero) .my-skru.size-active:hover .tn-atom,
body:has(.uc-my-zero) .my-eru.size-active:hover .tn-atom {
    opacity: 0.7 !important;
}

body:has(.uc-my-zero) .my-buy.my-buy-busy {
    opacity: 0.5 !important;
    pointer-events: none !important;
}
body:has(.uc-my-zero) .my-buy.my-buy-disabled {
    opacity: 0.5 !important;
    /* pointer-events: none !important; — закомментировано чтобы работал title */
}

/* Скрытие переключателя "С углом наклона?" когда активна форма "прямая" */
body:has(.uc-my-zero).my-naklon-hidden .my-naklon {
    display: none !important;
}

/* Информационные блоки TX16N2 для каждой формы */
body:has(.uc-my-zero) .uc-my-info-skru,
body:has(.uc-my-zero) .uc-my-info-eru,
body:has(.uc-my-zero) .uc-my-info-pru {
    display: none !important;
}
body:has(.uc-my-zero).my-form-skru .uc-my-info-skru { display: block !important; }
body:has(.uc-my-zero).my-form-eru .uc-my-info-eru { display: block !important; }
body:has(.uc-my-zero).my-form-pru .uc-my-info-pru { display: block !important; }
body:has(.uc-my-zero).my-form-pru .my-qty {
    transform: translateX(-236px) !important;
}

/* Стилизация плюс/минус */
body:has(.uc-my-zero) span.t-inputquantity__btn.t-inputquantity__btn-minus {
    border-top: 1px solid #bcbcbc;
    width: 40px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid #bcbcbc;
    border-left: 1px solid #bcbcbc;
    line-height: 0;
}
body:has(.uc-my-zero) span.t-inputquantity__btn.t-inputquantity__btn-plus {
    width: 40px;
    height: 58px;
    border-top: 1px solid #bcbcbc;
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: 1px solid #bcbcbc;
    border-right: 1px solid #bcbcbc;
}

body:has(.uc-my-zero) input#qn-1778089638231000035 {
    width: 80px !important;
}

/* Нижний блок-аккордеон с описанием/характеристиками — растянут до 1284 */
body:has(.uc-my-zero) .uc-my-info-skru .t-col_12,
body:has(.uc-my-zero) .uc-my-info-eru .t-col_12,
body:has(.uc-my-zero) .uc-my-info-pru .t-col_12 {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
body:has(.uc-my-zero) .uc-my-info-skru .t-container,
body:has(.uc-my-zero) .uc-my-info-eru .t-container,
body:has(.uc-my-zero) .uc-my-info-pru .t-container {
    max-width: 1284px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* =============================================================
   БЛОК 2 — АДАПТИВ СТОЛА
   
   Брейкпоинты Тильды (стандартные):
     BP1: ≥1284  — базовый, уже сделан выше
     BP2: 960–1283
     BP3: 640–959
     BP4: 480–639
     BP5: 320–479 (и ниже)
   
   Под каждый BP в Zero построены свои артборды.
   Здесь только:
     — размер и позиция галереи .js-product внутри артборда
     — внутренняя раскладка галереи (t-slds: главное фото + миниатюры)
     — раскладка инфоблоков TX16N2 под ширину BP
     — сброс/пересчёт сдвига my-qty (translateX) — ЗАГОТОВКА
   ============================================================= */


/* ==================== BP2: 960–1283 ====================
   Галерея и калькулятор в РЯД.
   Общая высота блока: 860px
   Галерея:    479×465  @ (0, 0)
   Калькулятор: 479×860 @ (481, 0)
   Артборд: 960px (479 + 2 + 479)
   ==================================================== */
@media (min-width: 960px) and (max-width: 1283px) {

    /* Галерея — позиция и размер */
    body:has(.uc-my-zero) .js-product {
        left: calc(50% - 480px) !important;  /* 50% - артборд/2 = 50% - 480 */
        top: 0 !important;
        width: 479px !important;
        height: 465px !important;
    }

    /* t-slds под 479×465 — пропорции BP1 (миниатюра квадратная)
       75 + 4(gap) + 400 = 479 ✓
       6×75 + 5×3(gap) = 465 ✓ */
    body:has(.uc-my-zero) .t-slds {
        width: 479px !important;
        height: 465px !important;
    }
    body:has(.uc-my-zero) .t-slds__main {
        width: 400px !important;
        height: 465px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet-wrapper {
        width: 75px !important;
        height: 465px !important;
        gap: 3px !important;
        justify-content: flex-start !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet {
        width: 75px !important;
        height: 75px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__bgimg.t-bgimg,
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-bgimg {
        width: 71px !important;
        height: 71px !important;
        max-height: 71px !important;
        min-height: 71px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__thumbsbullet-border {
        width: 71px !important;
        height: 71px !important;
    }

    /* Сдвиг my-qty при форме "прямая" — пересчитать на BP2 */
    body:has(.uc-my-zero).my-form-pru .my-qty {
        transform: none !important;  /* TODO: вычислить под BP2 */
    }

    /* Инфоблоки TX16N2 — ширина под BP2 */
    body:has(.uc-my-zero) .uc-my-info-skru .t-container,
    body:has(.uc-my-zero) .uc-my-info-eru .t-container,
    body:has(.uc-my-zero) .uc-my-info-pru .t-container {
        max-width: 960px !important;
    }
}


/* ==================== BP3: 640–959 ====================
   Галерея и калькулятор в КОЛОНКУ.
   Общая высота блока: 1244px
   Галерея:    640×620 @ (0, 0)
   Калькулятор: 640×620 @ (0, 624)
   Артборд: 640px
   ==================================================== */
@media (min-width: 640px) and (max-width: 959px) {

    body:has(.uc-my-zero) .js-product {
        left: calc(50% - 320px) !important;  /* 50% - 640/2 */
        top: 0 !important;
        width: 640px !important;
        height: 620px !important;
    }

    /* t-slds на 640×620 — как на BP1 */
    body:has(.uc-my-zero) .t-slds {
        width: 640px !important;
        height: 620px !important;
    }
    body:has(.uc-my-zero) .t-slds__main {
        width: 536px !important;
        height: 620px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet-wrapper {
        width: 100px !important;
        height: 620px !important;
        gap: 4px !important;
        justify-content: flex-start !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet {
        width: 100px !important;
        height: 100px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__bgimg.t-bgimg,
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-bgimg {
        width: 96px !important;
        height: 96px !important;
        max-height: 96px !important;
        min-height: 96px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__thumbsbullet-border {
        width: 96px !important;
        height: 96px !important;
    }

    body:has(.uc-my-zero).my-form-pru .my-qty {

        transform: translateX(-236px) !important;
    }

    body:has(.uc-my-zero) .uc-my-info-skru .t-container,
    body:has(.uc-my-zero) .uc-my-info-eru .t-container,
    body:has(.uc-my-zero) .uc-my-info-pru .t-container {
        max-width: 640px !important;
    }
}


/* ==================== BP4: 480–639 ====================
   Галерея и калькулятор в КОЛОНКУ.
   Общая высота блока: 1370px
   Галерея:    480×465 @ (0, 0)
   Калькулятор: 480×901 @ (0, 469)
   Артборд: 480px
   ==================================================== */
@media (min-width: 480px) and (max-width: 639px) {

    body:has(.uc-my-zero) .js-product {
        left: calc(50% - 240px) !important;  /* 50% - 480/2 */
        top: 0 !important;
        width: 480px !important;
        height: 465px !important;
    }

    /* t-slds на 480×465 — пропорции BP1 (миниатюра квадратная)
       75 + 4(gap) + 401 = 480 ✓
       6×75 + 5×3(gap) = 465 ✓ */
    body:has(.uc-my-zero) .t-slds {
        width: 480px !important;
        height: 465px !important;
    }
    body:has(.uc-my-zero) .t-slds__main {
        width: 401px !important;
        height: 465px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet-wrapper {
        width: 75px !important;
        height: 465px !important;
        gap: 3px !important;
        justify-content: flex-start !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet {
        width: 75px !important;
        height: 75px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__bgimg.t-bgimg,
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-bgimg {
        width: 71px !important;
        height: 71px !important;
        max-height: 71px !important;
        min-height: 71px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__thumbsbullet-border {
        width: 71px !important;
        height: 71px !important;
    }

    body:has(.uc-my-zero).my-form-pru .my-qty {

        transform: translateX(-161px) !important;
    }

    body:has(.uc-my-zero) .uc-my-info-skru .t-container,
    body:has(.uc-my-zero) .uc-my-info-eru .t-container,
    body:has(.uc-my-zero) .uc-my-info-pru .t-container {
        max-width: 480px !important;
    }
}


/* ==================== BP5: 320–479 ====================
   Галерея и калькулятор в КОЛОНКУ.
   Общая высота блока: 1130px
   Галерея:    360×349 @ (0, 0)
   Калькулятор: 360×777 @ (-20, 353)
   Артборд: 360px
   ==================================================== */
@media (max-width: 479px) {

    body:has(.uc-my-zero) .js-product {
        left: calc(50% - 180px) !important;  /* 50% - 360/2 */
        top: 0 !important;
        width: 360px !important;
        height: 349px !important;
    }

    /* t-slds на 360×349 — пропорции BP1 (миниатюра квадратная)
       56 + 4(gap) + 300 = 360 ✓
       6×56 + 5×2(gap) = 346, justify-content:center распределит 3px остаток */
    body:has(.uc-my-zero) .t-slds {
        width: 360px !important;
        height: 349px !important;
    }
    body:has(.uc-my-zero) .t-slds__main {
        width: 300px !important;
        height: 349px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet-wrapper {
        width: 56px !important;
        height: 349px !important;
        gap: 2px !important;
        justify-content: center !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet {
        width: 56px !important;
        height: 56px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__bgimg.t-bgimg,
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-bgimg {
        width: 52px !important;
        height: 52px !important;
        max-height: 52px !important;
        min-height: 52px !important;
    }
    body:has(.uc-my-zero) .t-slds__thumbsbullet .t-slds__thumbsbullet-border {
        width: 52px !important;
        height: 52px !important;
    }

    body:has(.uc-my-zero).my-form-pru .my-qty {

        transform: translateX(-132px) !important;
    }

    body:has(.uc-my-zero) .uc-my-info-skru .t-container,
    body:has(.uc-my-zero) .uc-my-info-eru .t-container,
    body:has(.uc-my-zero) .uc-my-info-pru .t-container {
        max-width: 100% !important;
       
    }
    .t-col{
       padding: 0 !important;  
    }
    body:has(.uc-my-zero) span.t-inputquantity__btn.t-inputquantity__btn-plus {
    height: 40px !important;
    }
    body:has(.uc-my-zero) span.t-inputquantity__btn.t-inputquantity__btn-minus {
    height: 40px !important;
        
    }
    .t-inputquantity{
    height: 42px !important;
    width: 82px !important;
    }
    .t668__circle {
    width: 30px;
    height: 30px;
}
    .t668__icon {
    width: 24px !important;
    height: 24px !important;
    padding: 7px
}

.t668__lines {
    width: 15px;
    height: 15px;
}

svg {
    width: 100%;
    height: 100%;
}
}
