/* Дом Фарфора. Desktop storefront layout, 2026-11-03. */
.df-stock-empty {
    margin: 24px 0;
    padding: 26px;
    border: 1px solid #e8e1d9;
    border-radius: 14px;
    background: #fffaf5;
}
.df-stock-empty h2 { margin: 0 0 8px; font-size: 22px; }
.df-stock-empty p { margin: 0 0 16px; }
.df-stock-empty .df-stock-catalog {
    display: inline-flex;
    align-items: center;
    padding: 11px 20px;
    min-height: 44px;
    box-sizing: border-box;
    border-radius: 24px;
    color: #fff;
    background: #a84a00;
    text-decoration: none;
}
.df-stock-empty .df-stock-catalog:hover { background: #873c00; }

.df-image-unavailable { object-fit: contain; }
.image.tc.df-delivery-image-missing { display: none; }
.tb:has(> .df-delivery-image-missing) > .text-wrap.tc { width: auto; }

@media (min-width: 1025px) {
    /* Reserve a right column for fixed controls on shopping pages. */
    body:has(#main :is(#catalog, .productList, .df-curated-grid, #catalogElement, #personalCart, #order)) #main {
        padding-right: 72px !important;
    }
    body:has(#main :is(#catalog, .productList, .df-curated-grid, #catalogElement, #personalCart, #order))
        :is(#df-whatsapp-site.df-wa-float:not(.df-wa-mobile), #upButton, .b24-widget-button-position-bottom-right) {
        right: 12px !important;
        transform-origin: right bottom;
    }
    body:has(#main :is(#catalog, .productList, .df-curated-grid, #catalogElement, #personalCart, #order))
        #df-whatsapp-site.df-wa-float:not(.df-wa-mobile) {
        bottom: 18px;
        width: 44px;
        height: 44px;
    }
    body:has(#main :is(#catalog, .productList, .df-curated-grid, #catalogElement, #personalCart, #order))
        .b24-widget-button-position-bottom-right {
        bottom: 72px !important;
        scale: .70;
    }
    body:has(#main :is(#catalog, .productList, .df-curated-grid, #catalogElement, #personalCart, #order)) #upButton {
        bottom: 126px;
        scale: .65;
    }

    .series-page .series-products > .items.productList {
        grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
    }
    .series-products .tabloid .productColText > a.name {
        display: block;
        flex: 0 0 auto;
        min-height: 63px;
        height: 63px;
        overflow: hidden;
    }
    .series-products .tabloid .productColText > a.name .middle {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        line-height: 21px;
        overflow-wrap: anywhere;
    }

    .rangeSlider:has(> input[name*="_MIN"]):has(> input[name*="_MAX"]) {
        display: grid;
        grid-template-columns: max-content minmax(0, 1fr) max-content minmax(0, 1fr);
        align-items: center;
        column-gap: 6px;
    }
    .rangeSlider:has(> input[name*="_MIN"]):has(> input[name*="_MAX"]) > :is(label, input) {
        margin-inline: 0;
    }
    .rangeSlider:has(> input[name*="_MIN"]):has(> input[name*="_MAX"]) > input {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
    }
    .rangeSlider:has(> input[name*="_MIN"]):has(> input[name*="_MAX"]) > .slider {
        grid-column: 1 / -1;
        min-width: 0;
    }

    #catalog .itemRow.item,
    #catalogElement #tableContainer {
        border-collapse: separate;
        border-spacing: 0;
        box-sizing: border-box;
        max-width: 100%;
    }

    #personalCart #basketProductList .productTable td:nth-child(n+4):nth-child(-n+6) {
        white-space: nowrap;
    }
    .df-wholesale-info .df-wholesale-amount { white-space: nowrap; }
}
