/* Preserve box metrics while live prices/stock are verified after a composite HIT.
   On non-JS clients the original server-rendered markup remains visible. */
html.js-kitlisa-v2-catalog-live .cardApp[data-live-product]:not([data-live-ready="1"]) .cardOffer__mainPrice,
html.js-kitlisa-v2-catalog-live .cardApp[data-live-product]:not([data-live-ready="1"]) [data-catalog-when],
html.js-kitlisa-v2-catalog-live .cardApp[data-live-product]:not([data-live-ready="1"]) .available-block,
html.js-kitlisa-v2-catalog-live .cardApp[data-live-product]:not([data-live-ready="1"]) [data-catalog-text] {
    visibility: hidden;
}

/* The old composite HTML must not flash an obsolete listing price.
   No layout/display change: visibility retains exact box dimensions. */
html.js-kitlisa-v2-catalog-live .element-card[data-live-product]:not([data-live-ready="1"]) [data-live-value] {
    visibility: hidden;
}

/* V3: long stock quantities/totals must not stretch grid or truncate digits. */
html.kitlisa-v2 .cart_anchor { min-width: 0; }
html.kitlisa-v2 .cart_anchor .nav-link { min-width: 0; }
html.kitlisa-v2 .cart_anchor #basketCount,
html.kitlisa-v2 .cart_anchor #basketSum {
    max-width: 100%; white-space: normal; overflow-wrap: anywhere; line-height: 1.25;
}
html.kitlisa-v2 .basket-items-list-wrapper,
html.kitlisa-v2 .basket-items-list-container,
html.kitlisa-v2 .bx_ordercart_order_table_container { max-width: 100%; overflow-x: auto; }
html.kitlisa-v2 .basket-item-price-current-text,
html.kitlisa-v2 .basket-item-price-old-text,
html.kitlisa-v2 .basket-item-sum-price,
html.kitlisa-v2 [id^="basket-item-sum-price-"] { overflow-wrap: anywhere; }
html.kitlisa-v2 .basket-item-amount-block,
html.kitlisa-v2 .basket-item-quantity-block { max-width: 100%; }
html.kitlisa-v2 .basket-item-amount-filed { min-width: 0; }
html.kitlisa-v2 .kitlisa-stock-plus-disabled {
    opacity: .45; cursor: not-allowed !important; pointer-events: none;
}

/* V3 desktop header: the search field yields width to growing basket totals.
   Only the test template is affected; keep mobile search layout unchanged. */
@media (min-width: 992px) {
    html.kitlisa-v2 .navbar_postheader > .container {
        flex-wrap: nowrap;
    }
    html.kitlisa-v2 .navbar_postheader > .container > .navbar-nav {
        flex: 0 0 auto;
    }
    html.kitlisa-v2 .navbar_postheader #searchbar.w-100 {
        flex: 1 1 800px;
        width: auto !important; /* overrides Bootstrap's .w-100 */
        min-width: 0;
    }
    html.kitlisa-v2 .navbar_postheader #searchbar form,
    html.kitlisa-v2 .navbar_postheader #searchbar .form-control {
        min-width: 0;
    }
    html.kitlisa-v2 .navbar_postheader .navbar-right .nav-link,
    html.kitlisa-v2 .navbar_postheader .navbar-right #basketCount,
    html.kitlisa-v2 .navbar_postheader .navbar-right #basketSum {
        white-space: nowrap;
        overflow-wrap: normal;
    }
    html.kitlisa-v2 .navbar_postheader .navbar-right #basketCount,
    html.kitlisa-v2 .navbar_postheader .navbar-right #basketSum {
        max-width: none;
    }
}

/* Old-price placeholders must respect inline display:none. The previous
   .d-inlineblock utility used !important and exposed "0 руб.". */
html.kitlisa-v2 .cardApp .cardOffer__oldPrice,
html.kitlisa-v2 .element-card .cardOffer__oldPrice {
    display: inline-block;
}

/* Compatibility with cached composite markup from before this fix: Bootstrap-like
   .d-inlineblock/.d-inline-block had display:inline-block!important. A plain
   inline display:none could not hide it. Do not blanket-hide genuine discounts. */
html.kitlisa-v2 .cardApp [data-catalog-when="old-price"][style*="display:none"],
html.kitlisa-v2 .cardApp [data-catalog-when="old-price"][style*="display: none"],
html.kitlisa-v2 .element-card .cardOffer__oldPrice[style*="display:none"],
html.kitlisa-v2 .element-card .cardOffer__oldPrice[style*="display: none"] {
    display: none !important;
}

/* V3 mobile: quantity is requested only after "Купить" succeeds.
   The JS marker is present before first paint; desktop and no-JS are unchanged. */
@media (max-width: 766px) {
    html.js-kitlisa-v2-catalog-live .element-card[data-catalog-quantity-control]:not(.kitlisa-v3-in-cart) [data-kitlisa-v3-qty-controls],
    html.js-kitlisa-v2-catalog-live .cardApp[data-catalog-card]:not(.kitlisa-v3-in-cart) [data-kitlisa-v3-qty-controls] {
        display: none !important;
    }
    html.js-kitlisa-v2-catalog-live .element-card[data-catalog-quantity-control]:not(.kitlisa-v3-in-cart) [data-kitlisa-v3-buy-actions],
    html.js-kitlisa-v2-catalog-live .cardApp[data-catalog-card]:not(.kitlisa-v3-in-cart) [data-kitlisa-v3-buy-actions] {
        flex: 0 0 100%; max-width: 100%;
    }
}
