/* =========================================================
   Карточки блока «С этим товаром покупают» и «Вы смотрели»
   в карточке товара. Сгенерировано тем же скриптом из тех же
   четырёх источников, что и плитка каталога, — правила карточки
   главной один в один. Руками не редактировать.
   ========================================================= */

/* ---- из sale-products.css — 74 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
    min-width: 0;
    height: auto;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    color: #1e2428;
    background: #fff;
    border: 1px solid #e3e5e5;
    border-radius: 8px;
    box-shadow: none;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card:hover {
    border-color: #d6d8d8;
    box-shadow: 0 10px 26px rgba(33, 39, 43, .07);
    transform: translateY(-3px);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media {
    position: relative;
    padding: 12px 12px 0;
    background: #fff;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    min-height: 22px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    color: #fff;
    background: #ffb600;
    border-radius: 8px;
    font: 800 9px/1 var(--zt-font, Arial, Helvetica, sans-serif);
    letter-spacing: .01em;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card--new .zt-product-card__badge {
    color: #256d40;
    background: #dff5e6;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card--hit .zt-product-card__badge {
    color: #8a6200;
    background: #ffeab1;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
    width: 100%;
    aspect-ratio: 1.18 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: inherit;
    background: #fff;
    text-decoration: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    transition: transform .28s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card:hover .zt-product-card__image img {
    transform: scale(1.035);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #929aa1;
    background: linear-gradient(135deg, #fbfbfb, #f1f2f1);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__placeholder svg {
    width: 52px;
    height: 52px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
    min-height: 218px;
    padding: 9px 13px 13px;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
    margin-bottom: 5px;
    overflow: hidden;
    color: #252a2e;
    /* П-5: вес 700 вместо 800. Заодно снят Arial из шортката —
       последнее место, где артикул рисовался не шрифтом сайта. */
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name {
    min-height: 34px;
    margin: 0 0 8px !important;
    font-family: var(--zt-font, 'Inter', Arial, Helvetica, sans-serif) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.38 !important;
    text-transform: none !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a {
    display: -webkit-box;
    overflow: hidden;
    color: #3d454a !important;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock {
    margin-bottom: 11px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #46995f;
    font: 500 10px/1 var(--zt-font, Arial, Helvetica, sans-serif);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock span {
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    background: currentColor;
    border-radius: 50%;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock.is-order {
    color: #8a6200;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    min-height: 37px;
    margin-top: auto;
    display: flex;
    align-items: flex-end;
    gap: 9px;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    padding-bottom: 2px;
    color: #9ea3a6;
    font: 500 10px/1 var(--zt-font, Arial, Helvetica, sans-serif);
    text-decoration: line-through;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    color: #1c2226;
    font: 800 17px/1.05 var(--zt-font, Arial, Helvetica, sans-serif);
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price--request {
    font-size: 14px;
    white-space: normal;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
    margin-top: 11px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px;
    gap: 8px;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    min-width: 0;
    min-height: 34px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #333a43 !important;
    /* N-209: тот же фирменный жёлтый, что у акцента
       «НАДЁЖНЫЙ ПАРТНЁР» в модуле «О компании». */
    background: var(--zt-products-yellow, #ffb800);
    border: 0;
    border-radius: 8px;
    font: 800 11px/1 var(--zt-font, Arial, Helvetica, sans-serif);
    text-align: center;
    text-decoration: none !important;
    cursor: pointer;
    transition: background-color .18s ease, color .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:hover {
    background: var(--zt-products-yellow, #ffb800);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-success {
    display: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-loading {
    cursor: wait;
    opacity: .65;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added {
    color: #fff !important;
    background: #3f9b60;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added .zt-product-card__cart-label {
    display: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added .zt-product-card__cart-success {
    display: inline;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-error {
    color: #fff !important;
    background: #bd4d45;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    color: #737a7e !important;
    background: #fff;
    border: 1px solid #dfe2e2;
    border-radius: 8px;
    text-decoration: none !important;
    transition: color .18s ease, border-color .18s ease, background-color .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more:hover {
    color: #333a43 !important;
    background: #f5f5f4;
    border-color: #cfd2d2;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
            min-height: 210px;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media {
    padding: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
    object-fit: cover !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    top: 10px !important;
    left: 10px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    text-align: right;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
    position: relative;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__dots {
    position: absolute;
    right: 0;
    bottom: 5px;
    left: 0;
    z-index: 3;
    display: flex;
    justify-content: center;
    gap: 4px;
    pointer-events: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__dots i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(21, 26, 30, .25);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__dots i.is-active {
    background: #ffb800;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    position: relative;
    overflow: hidden;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-icon {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    transition: transform .3s cubic-bezier(.25, 1, .5, 1), opacity .2s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    /* Корзинка чёрная и до нажатия — #333a43 читался серым */
    stroke: #000;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:hover .zt-product-card__cart-icon {
    animation: zt-cart-hop .5s cubic-bezier(.25, 1, .5, 1);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-loading .zt-product-card__cart-icon,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added .zt-product-card__cart-icon,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-error .zt-product-card__cart-icon {
    opacity: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 4;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    padding: 0;
    color: #6b747c;
    background: rgba(255, 255, 255, .92);
    border: 1px solid #e3e5e5;
    border-radius: 50%;
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: fill .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite:hover {
    color: #151a1e;
    border-color: #ffb800;
    transform: scale(1.06);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
    color: #fff;
    background: #ffb800;
    border-color: #ffb800;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg {
    fill: currentColor;
}

@media (prefers-reduced-motion: reduce) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-blob,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-blob svg,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            transition: none;
            }
}

@media (prefers-reduced-motion: reduce) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-qty,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__qty-confirm {
            transition: none;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__maker {
    flex: 0 1 auto;
    overflow: hidden;
    color: #8a939b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-left: auto;
    color: #23a05a;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #2eb968;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail--order {
    color: #98a1a9;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail--order i {
    background: #b9c0c6;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase {
    display: flex;
    flex: 1 1 auto;
    align-items: stretch;
    gap: 6px;
    width: 100%;
    min-width: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase .zt-product-card__stepper,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase .zt-product-card__cart {
    height: 42px !important;
    min-height: 42px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: center;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stepper {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    background: #fff;
    border: 1px solid #dfe3e7;
    border-radius: 8px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__stepper {
    border-color: #ffb800;
    box-shadow: 0 0 0 1px #ffb800;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-btn {
    display: grid;
    place-items: center;
    width: 28px;
    height: 100%;
    min-height: 40px;
    padding: 0;
    color: #333a43;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    background: transparent;
    border: 0;
    cursor: pointer;
    transition: color .15s ease, background-color .15s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-btn:hover {
    color: #111820;
    background: transparent;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-value {
    min-width: 24px;
    color: #1e2428;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase .zt-product-card__cart {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart {
    color: #1d9d54 !important;
    background: #fff !important;
    /* обводка один в один со степпером: рамка 1px + тень 1px */
    border: 1px solid #ffb800 !important;
    box-shadow: 0 0 0 1px #ffb800 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart:hover {
    background: #fff !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart:hover .zt-product-card__cart-icon {
    animation: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-icon {
    color: #1d9d54 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-svg-cart {
    /* N-140/N-141: корзинка в состоянии «N в корзине» — чёрная
       (была жёлтая по N-135, заказчик передумал) */
    stroke: #000 !important;
}

/* ---- из zt-redesign.css — 3 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article-mobile {
    overflow-wrap: anywhere;
}

.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__cart,
.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__buttons .zt-product-card__cart {
    width: 100% !important;
    flex: 1 1 auto !important;
}

.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__buttons {
    width: 100% !important;
    display: flex !important;
}

/* ---- из zt-home-unify.css — 42 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: var(--zt-ink) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card * {
    font-family: var(--zt-font, 'Inter', Arial, sans-serif) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    background-color: var(--zt-yellow, #FFB800) !important;
    color: #1A1A1A !important;
    border-radius: var(--zt-radius-btn) !important;
    font-weight: 700 !important;
    border-color: var(--zt-yellow, #FFB800) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:hover {
    background-color: var(--zt-yellow-hover, #E8A600) !important;
    color: #1A1A1A !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
    border-radius: var(--zt-radius-card) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    min-height: var(--zt-btn-h-sm) !important;
    height: auto !important;
    padding: 0 var(--zt-btn-pad-sm) !important;
    font-size: var(--zt-btn-fs-sm) !important;
    font-weight: var(--zt-btn-weight) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    border-radius: var(--zt-radius-btn, 8px) !important;
    border: 1px solid var(--zt-yellow, #FFB800) !important;
    background-color: var(--zt-yellow, #FFB800) !important;
    color: #1A1A1A !important;
    -webkit-text-fill-color: #1A1A1A !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    /* N-027…N-035 (06.08.2026): квадрат со скруглением вместо круга —
       единый стиль стрелок каруселей по указанию заказчика */
    border-radius: 10px !important;
    border: 1px solid #E3E6E9 !important;
    background-color: #FFFFFF !important;
    color: #333A43 !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more:hover {
    border-color: var(--zt-yellow, #FFB800) !important;
}

@media (max-width: 1023px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            min-height: 44px !important;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    color: #1A1A1A !important;
    -webkit-text-fill-color: #1A1A1A !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article-mobile,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__brand,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__property-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__client-price-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__added,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image-label {
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    /* N-097 → N-111: цена ещё заметнее */
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: baseline !important;
    gap: 8px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    text-decoration: line-through;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices .zt-product-card__price--request,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price.zt-product-card__price--request {
    font-size: 13px !important;
    text-align: right;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
    display: flex !important;
    flex-direction: column !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name {
    min-height: 2.7em !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card [class*="__footer"],
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card [class*="__actions"] {
    margin-top: auto !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    padding: 3px 8px !important;
    border-radius: 6px !important;
}

@media (max-width: 1023px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
            width: 44px !important;
            height: 44px !important;
            min-width: 44px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card a[class*="__image"] {
            display: block !important;
            min-height: 44px !important;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card img[src*="c79c3kq4tn43rcwt3zz3w71z2xilkbe5"],
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card img[src*="4ziinx151auz9aqegxadaywaj6uq5f5l"] {
    content: url("/local/templates/zipteh/assets/images/product-placeholder.svg") !important;
    object-fit: contain !important;
    background: #F6F7F8 !important;
    width: 100% !important;
    height: 100% !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    transition: background-color .18s ease, border-color .18s ease,
                color .18s ease, transform .12s ease !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:active {
    transform: scale(.985) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:focus-visible {
    outline: 3px solid #1A1A1A !important;
    outline-offset: 3px !important;
    outline-style: solid !important;
}

.zt-product-detail-v2 .zt-pd-related__track .swiper-slide.zt-product-card {
    height: auto !important;
    align-self: stretch !important;
}

.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__cart {
    font-size: 14px !important;
    font-weight: 600 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart .zt-product-card__cart-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart .zt-product-card__cart-success {
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price:not([class*="label"]) {
            font-size: 18px !important;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
    margin: 0 !important;
    /* двойной селектор: инлайн модуля красит артикул в muted
       с той же специфичностью — перебиваем связкой id-row */
    color: #1e2428 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .01em;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name:not(#zt_):not(#zt_),
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name:not(#zt_):not(#zt_) a {
    color: #6b747c !important;
    /* двойной :not(#zt_) — иначе шрифтовой слой заголовков
       (body h3:not(#zt_):not(#zt_) → Russo One) сильнее */
    font-family: var(--zt-font-badge, 'Manrope', Arial, sans-serif) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 0 8px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    grid-column: 1;
    order: -1;
    margin: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price:not([class*="request"]) {
    grid-column: 1;
    margin-left: 0 !important;
    text-align: left !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    margin-left: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
    min-height: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    margin: 10px 0 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
    margin-top: 10px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name:not(#zt_):not(#zt_) {
    display: -webkit-box !important;
    overflow: hidden !important;
    max-height: 32px;
    margin: 7px 0 0 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* ---- из sale-products.php — 105 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card a,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card button {
    font-family: inherit !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    color: var(--zt-products-muted) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-meta,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
    display: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    color: var(--zt-products-text) !important;
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            height: auto !important;
            min-height: 0 !important;
            align-self: stretch !important;
            display: flex !important;
            flex-direction: column !important;
            align-items: stretch !important;
            overflow: hidden !important;
            padding: 8px !important;
            border: 1px solid var(--zt-products-border) !important;
            border-radius: 12px !important;
            background: var(--zt-products-surface) !important;
            box-shadow: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media {
            position: relative;
            width: 100% !important;
            min-width: 0 !important;
            height: 112px !important;
            min-height: 112px !important;
            margin: 0 !important;
            padding: 0 !important;
            overflow: hidden;
            border-radius: 8px !important;
            background: #f7f7f7 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
            width: 100% !important;
            height: 112px !important;
            min-height: 112px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            padding: 8px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
            width: 100% !important;
            height: 100% !important;
            max-width: 118px !important;
            max-height: 94px !important;
            object-fit: contain !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
            top: 6px !important;
            left: 6px !important;
            z-index: 3;
            min-height: 19px !important;
            padding: 0 6px !important;
            border-radius: 8px !important;
            font-size: 12px !important;
            font-weight: 700 !important;
            line-height: 19px !important;
            /* П-4: капс через CSS, в данных обычный регистр */
        text-transform: uppercase;
        letter-spacing: .05em;
        }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
            min-width: 0;
            min-height: 0 !important;
            height: auto !important;
            /* Растягиваем тело на остаток высоты карточки: иначе внизу
               оставалась пустота, а кнопка «В корзину» висела в воздухе
               на разной высоте у соседних карточек. */
            flex: 1 1 auto !important;
            display: flex !important;
            flex-direction: column !important;
            padding: 8px 1px 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-meta {
            width: 100%;
            min-width: 0;
            margin: 0 0 3px !important;
            display: block !important;
            overflow: hidden;
            color: var(--zt-products-muted) !important;
            font-size: 12px !important;
            font-weight: 500 !important;
            line-height: 1.2 !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article-mobile {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name {
            /* Ровно две строки, а не «до двух»: в em, чтобы высота
               не разъезжалась при смене кегля. Иначе однострочное
               название делало карточку короче, и цена у соседей
               вставала на разной высоте (разброс 81 px на 390). */
            min-height: 2.6em !important;
            height: 2.6em !important;
            margin: 0 0 2px !important;
            overflow: hidden;
            font-size: 12px !important;
            font-weight: 600 !important;
            line-height: 1.3 !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a {
            font-size: inherit !important;
            font-weight: inherit !important;
            line-height: inherit !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            min-width: 0;
            margin: 0 0 2px !important;
            display: block !important;
            overflow: hidden;
            color: var(--zt-products-muted) !important;
            font-size: 12px !important;
            font-weight: 500 !important;
            line-height: 1.2 !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock {
            min-width: 0;
            margin: 0 0 2px !important;
            overflow: hidden;
            font-size: 12px !important;
            line-height: 1.2 !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock > span {
            width: 5px !important;
            height: 5px !important;
            margin-right: 4px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            min-height: 0 !important;
            margin-top: -1px !important;
            margin-bottom: 4px !important;
            display: flex !important;
            flex-direction: column !important;
            justify-content: flex-start !important;
            gap: 1px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            font-size: 12px !important;
            line-height: 1.1 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            font-size: 16px !important;
            font-weight: 700 !important;
            line-height: 1.1 !important;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price--request {
            font-size: 12px !important;
            white-space: normal;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
            display: grid !important;
            /* Одна колонка: вторая была под кнопку-стрелку, которую
               запрещает ТЗ §8.7 и которая удалена из разметки. */
            grid-template-columns: minmax(0, 1fr) !important;
            gap: 5px !important;
            /* Прижимаем к нижнему краю карточки — ТЗ, критерий 14 */
            margin: auto 0 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
            min-height: 44px !important;
            height: 44px !important;
            border-radius: 8px !important;
            box-shadow: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            min-width: 0;
            padding: 0 6px !important;
            overflow: hidden;
            color: var(--zt-products-text) !important;
            font-size: 12px !important;
            font-weight: 600 !important;
            line-height: 30px !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
            width: 44px !important;
            min-width: 44px !important;
            padding: 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more svg {
            width: 14px !important;
            height: 14px !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            height: auto !important;
            min-height: 0 !important;
            padding: 7px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
            height: 102px !important;
            min-height: 102px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
            max-height: 86px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
            padding-top: 7px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            font-size: 14px !important;
            }
}

@media (min-width: 1281px) and (max-width: 1599px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-icon {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            justify-content: center !important;
            gap: 0 !important;
            text-align: center !important;
            }
}

@media (max-width: 1100px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-label {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-loading .zt-product-card__cart-label,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-error .zt-product-card__cart-label {
            display: inline !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-icon {
            display: grid !important;
            opacity: 1 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            justify-content: center !important;
            gap: 5px !important;
            text-align: center !important;
            }
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
            display: block !important;
            margin: auto !important;
            object-position: center center !important;
            transform: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            top: 6px !important;
            }
}

@media (min-width: 381px) and (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-meta,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row {
            display: flex !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
            display: block !important;
            min-width: 0;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) auto !important;
            grid-template-rows: auto auto !important;
            align-items: end !important;
            gap: 1px 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            grid-column: 2;
            grid-row: 1;
            justify-self: end;
            padding-bottom: 0 !important;
            text-align: right;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            grid-column: 2;
            grid-row: 2;
            justify-self: end;
            text-align: right;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            grid-column: 1;
            grid-row: 1 / 3;
            align-self: end;
            justify-self: start;
            margin: 0 !important;
            text-align: left;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
            min-height: 16px !important;
            padding: 0 4px !important;
            border-radius: 6px !important;
            font-size: 10px !important;
            line-height: 16px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__maker,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            display: grid !important;
            grid-template-columns: auto minmax(0, 1fr) !important;
            grid-template-rows: auto auto !important;
            align-items: end !important;
            gap: 1px 5px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            grid-column: 1;
            grid-row: 1;
            justify-self: start;
            padding-bottom: 0 !important;
            text-align: left;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            grid-column: 1;
            grid-row: 2;
            justify-self: start;
            text-align: left;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            grid-column: 2;
            grid-row: 1 / 3;
            align-self: end;
            justify-self: end;
            margin: 0 !important;
            text-align: right;
            }
}

@media (min-width: 681px) and (max-width: 800px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
            position: relative;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: absolute !important;
            top: 37px !important;
            left: 10px !important;
            z-index: 4;
            margin: 0 !important;
            }
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
            position: relative;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: absolute !important;
            top: 38px !important;
            left: 14px !important;
            z-index: 4;
            grid-column: auto !important;
            grid-row: auto !important;
            margin: 0 !important;
            text-align: left !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            top: 6px !important;
            right: 6px !important;
            width: 19px !important;
            height: 19px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            width: 14px !important;
            height: 14px !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            top: 34px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite:hover,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            width: 16px !important;
            height: 16px !important;
            color: #6b747c !important;
            background: transparent !important;
            border: 0 !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            transform: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            width: 16px !important;
            height: 16px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            display: none !important;
            }
}

@media (min-width: 681px) and (max-width: 800px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            min-height: 355px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) auto !important;
            grid-template-rows: auto auto !important;
            align-items: end !important;
            gap: 3px 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            grid-column: 1;
            grid-row: 1;
            justify-self: start;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            grid-column: 1 / 3;
            grid-row: 2;
            justify-self: start;
            text-align: left;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: static !important;
            grid-column: 2;
            grid-row: 1;
            justify-self: end;
            align-self: end;
            margin: 0 !important;
            text-align: right !important;
            }
}

@media (min-width: 381px) and (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            min-height: 272px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            justify-self: end !important;
            text-align: right !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            min-height: 260px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: absolute !important;
            top: 113px !important;
            right: 8px !important;
            left: auto !important;
            display: flex !important;
            justify-content: flex-end;
            text-align: right !important;
            }
}

@media (min-width: 681px) and (max-width: 800px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase {
            gap: 4px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stepper {
            width: 66px !important;
            flex: 0 0 66px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-btn {
            width: 22px !important;
            flex: 0 0 22px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-value {
            min-width: 20px !important;
            font-size: 13px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            gap: 4px !important;
            padding-right: 4px !important;
            padding-left: 4px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-label {
            white-space: nowrap !important;
            }
}

@media (min-width: 381px) and (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite:hover,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            color: #6b747c !important;
            background: transparent !important;
            border: 0 !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            transform: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            width: 19px !important;
            height: 19px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            margin-top: auto !important;
            margin-bottom: 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
            margin-top: 0 !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: block !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            margin-top: auto !important;
            margin-bottom: 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
            margin-top: 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label {
            width: 16px;
            display: inline-flex !important;
            align-items: center;
            justify-content: center;
            overflow: visible;
            font-size: 0 !important;
            line-height: 1;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label::after {
            content: "→";
            color: currentColor;
            font-size: 18px;
            font-weight: 800;
            line-height: 1;
            }
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active:hover {
            color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg path {
            color: var(--zt-products-yellow) !important;
            fill: currentColor !important;
            stroke: currentColor !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart {
            gap: 2px !important;
            padding-right: 10px !important;
            padding-left: 10px !important;
            }
}

@media (min-width: 681px) and (max-width: 1100px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            align-items: center !important;
            flex-wrap: nowrap !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-icon,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label {
            flex: 0 0 auto !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label {
            display: inline-flex !important;
            align-items: center !important;
            line-height: 1 !important;
            white-space: nowrap !important;
            }
}

@media (min-width: 760px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active:hover {
            color: var(--zt-products-yellow) !important;
            background: #fff !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            border-color: #e3e5e5 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active:hover {
            border-color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg path {
            color: var(--zt-products-yellow) !important;
            fill: currentColor !important;
            stroke: currentColor !important;
            }
}

@media (min-width: 1600px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            display: grid !important;
            place-items: center !important;
            padding: 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            display: block !important;
            margin: 0 !important;
            transform: none !important;
            }
}
/* ---------------------------------------------------------
   Токены карточки — своей копией, а не в расчёте на соседей.

   Правила, перенесённые генератором, ссылаются на двенадцать
   переменных. На главной их задаёт inline-<style> модуля
   `sale-products.php` (`#ztSaleProducts { --zt-products-*: … }`)
   и файлы `zt-redesign.css` / `zt-home-unify.css`. Ни того,
   ни другого нет ни на `/catalog/`, ни в карточке товара —
   на бою `zt-redesign.css` и `zt-home-unify.css` вообще
   отдают 404 (проверено 01.09.2026). Селектор самих токенов
   не содержит `zt-product-card`, поэтому генератор его
   отбрасывает и переменные до этих файлов не доезжали:
   объявления с `var()` без запасного значения браузер
   отбрасывает молча.

   Значения сняты замером с принятого модуля на главной,
   поэтому плитка и блоки карточки товара выглядят так же
   и не зависят от порядка выкладки других позиций.
   --------------------------------------------------------- */

.zt-product-detail-v2 .zt-pd-related__track {
    --zt-products-yellow: #ffb800;
    --zt-products-text: #333a43;
    --zt-products-muted: #929aa1;
    --zt-products-border: #d9dee5;
    --zt-products-surface: #ffffff;
    --zt-ink: #333a43;
    --zt-radius-card: 12px;
    --zt-radius-btn: 8px;
    --zt-btn-h-sm: 40px;
    --zt-btn-pad-sm: 16px;
    --zt-btn-fs-sm: 13px;
    --zt-btn-weight: 700;
}


/* ---------------------------------------------------------
   Товары без цены — последним слоем.

   У принятого модуля уже есть свой вариант `--request`
   (`font-size: 13px !important`, специфичность 0-4-0), поэтому
   переопределение стоит здесь, ниже всех перенесённых правил,
   и повторяет ту же специфичность.

   По решению заказчика 01.09.2026 строка «Уточняйте цену»
   в раскладке карточек набирается кеглем и гарнитурой кнопки
   «В корзину»: 14 px / 600 / Manrope. Модификатор вешает
   catalog-view.js только там, где data-price пустой или нулевой.
   --------------------------------------------------------- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices .zt-product-card__price--request,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price.zt-product-card__price--request {
    font-family: var(--zt-font-btn, "Manrope", "Inter", system-ui, Arial, sans-serif) !important;
    font-size: 14px !important;
    /* N-507: заказчик просил жирнее — 700 вместо 600 */
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    align-self: center !important;
    /* N-509: у принятого модуля строка выровнена вправо
       (`text-align: right`), в карточке нужна по левому краю. */
    text-align: left !important;
}

/* N-507: «Уточняйте цену» и статус наличия должны стоять на одной линии.
   Раньше строка цены была выше статуса на 5,5 px, потому что у неё
   собственная высота строки. Центруем обе части ряда, но только там,
   где цены нет: у товаров с ценой прежняя раскладка не трогается. */
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) {
    /* Сетка модуля рассчитана на короткую цифру и на длинной подписи
       переносила статус на вторую строку (замер: две строки 26,9 и 10,1 px).
       Для случая без цены переводим ряд во flex — обе части остаются
       на одной линии и ужимаются по месту. */
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) .zt-product-card__price--request {
    min-width: 0;
    flex: 1 1 auto;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) .zt-product-card__avail {
    flex: 0 0 auto;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) .zt-product-card__avail {
    align-self: center !important;
}


/* Кнопка «В корзину»: часть легаси-CSS приходит с боевого домена и
   перекрашивает/переразмеряет её по имени тега, из-за чего подпись
   уезжала на 13 px / 700 / Tektur вместо 14 / 600 / Manrope с главной.
   Закрепляем значения главной — на них же равняется «Цена по запросу». */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-label {
    font-family: var(--zt-font-btn, "Manrope", "Inter", system-ui, Arial, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
