.breadcrumb-item.dropmenu {
    cursor: pointer;
    position: relative;
    display: inline-block;
}

.dropmenu-hide {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 9000;
    top: 0;
    left: 28px;
}


ul.breadcrumb.inverted a {
    color: #cacaca;
}

ul.breadcrumb.inverted span {
    color: #cacaca;
}

.inner-header ul.breadcrumb.inverted a,
.inner-header ul.breadcrumb.inverted span,
.inner-header .breadcrumb-item+.breadcrumb-item::before {
    color: #797979;
}

ul.breadcrumb.inverted .dropdown-item {
    color: #cacaca;
}

ul.breadcrumb.inverted .dropmenu-hide {
    color: #cacaca;
    background-color: #3c3c3b;
}

ul.breadcrumb.inverted .dropmenu .dropdown-item:hover {
    background-color: black;
}

.breadcrumb-item.dropmenu:hover .dropmenu-hide {
    display: block;
}


.breadcrumb {
    padding: .75rem 0;
    background-color: transparent;
    border-radius: 0;
}

.breadcrumb-item, .breadcrumb-item .link {
    color: #858585;
    font-size: 12px;
    line-height: 2;
    /*z-index: 2 !important;*/
}

.breadcrumb-item.show .dropdown-item,
.breadcrumb-item.show .dropdown-item:hover {
    padding: 0 4px;
    font-size: 12px;
    line-height: 2;
}

.breadcrumb-item.show .link {
    padding: 2px 6px;
    margin: 0 -6px;
    /*border: 1px solid rgba(0,0,0,0.15);*/
}

.breadcrumb-item.show .link,
.breadcrumb-item.show .dropdown-item:hover {
    background-color: #ccc;
}

.breadcrumb-item+.breadcrumb-item::before {
    content: "";
    width: 30px;
    height: 14px;
    background: url("../images/icons2.png") 100% 96.9% no-repeat;
    background-size: 34px;
}

.breadcrumb .dropdown-menu,
.dropdown-item {
    margin: 0;
    padding: 0 10px;
    border-radius: 0;
}

.dropmenu .dropdown-item:hover {
    background-color: #fff;
}.pbx-file-upload .file-hidden {
    display: none;
}

.pbx-file-upload .file-full-width {
    width: 100%;
    display: inline-block;
}

.pbx-file-upload .file-part-width {
    width: calc(100% - 50px);
    display: inline-block;
}

.pbx-file-upload .pbx-file-plus {
    width: 45px;
    display: inline-block;
    text-align: center;
    font-size: 22px;
}

.pbx-file-upload .pointer {
    cursor: pointer;
}

.pbx-form-input-fields {
    margin-top: 30px;
}

.info-pbx-message {
    position: absolute;
    bottom: 10px;
    left: 1em;
    right: 1em;
    height: 50px;
    border-radius: 0;
    background-color: #eee;
    padding: 16px;
}

form input.disabled,
form div.disabled,
form button.disabled,
form a.disabled {
    opacity: 0.5;
    cursor: initial;
    pointer-events: none;
}

#pbx-main-container {
    background-color: var(--color-primary, #3a7fc9);
}

#pbx-main-container .pbx-icon,
#pbx-main-container-shadow .pbx-icon {
    padding: 0!important;
    width: 30px;
    flex-shrink: 0;
}

#pbx-main-container, #pbx-main-container-shadow {
    position: fixed;
    bottom: 35px;
    right: 57px;
    height: 50px;
    width: 90px;
    border-radius: 25px;
    padding: 10px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    z-index: 50;
}

#pbx-main-container-shadow {
    pointer-events: none;
}

#pbx-main-container.tg,
#pbx-main-container.wa,
#pbx-main-container-shadow.tg,
#pbx-main-container-shadow.wa {
    width: 130px;
}

#pbx-main-container.tg.wa,
#pbx-main-container-shadow.tg.wa {
    width: 170px;
}

#pbx-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index: 1997;
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

#pbx-overlay.active {
    display: block;
    opacity: 1;
}

#pbx-form-container {
    position: fixed;
    bottom: 25px;
    right: 40px;
    background-color: #ffffff;
    height: 450px;
    width: 500px;
    z-index: 1998;
    padding: 1em;
    display: none;
    border-radius: 10px;
}

#pbx-form-container .form-fields {
    max-height: 300px;
    padding: 4px;
}

#pbx-form-container button {
    height: 32px;
    background-color: #3a7fc9;
    color: white;
    border: none;
    margin: 10px auto;
    width: 100%;
    transition: 0.15s;
    outline: none;
}

#pbx-form-container button:hover {
    background: transparent;
    color: #3a7fc9;
    border: solid 1px #3a7fc9;
}

#pbx-form-container button:active {
    background-color: #3a7fc9;
    color: white;
    border: none;
    box-shadow: 0 0 0 .2rem rgba(58, 127, 201, .5);
}

#pbx-form-container .close-btn {
    cursor: pointer;
    position: absolute;
    right: 1em;
    transition: 0.15s;
}

#pbx-form-container .close-btn:hover {
    color: #a94442;
}

#pbx-form-container .alert-pbx {
    background-color: #f2dede;
    color: #a94442;
}

form .info-message.alert-pbx {
    background-color: #f2dede;
    color: #a94442;
    border-radius: 25px;
}

#pbx-form-container .success-pbx {
    background-color: #dff0d8;
    color: #3c763d;
}

#pbx-form-container .svg-success {
    display: none;
    height: 100px;
    width: 100px;
    margin: 0 auto;
}

#pbx-form-container .g-recaptcha {
    -webkit-transform: scale(0.8);
    -moz-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -o-transform: scale(0.8);
    transform: scale(0.8);
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
    filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.8, M12=0, M21=0, M22=0.8, SizingMethod='auto expand');
}

#pbx-form-container .captcha-wrap .input-group-prepend.w-100 {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
}

#pbx-form-container .captcha-wrap .input-group-prepend.w-100 > div {
    margin-bottom: 0 !important;
}

#pbx-form-container .captcha-wrap .captcha {
    height: 35px;
}

#pbx-form-container .captcha-wrap .captcha-refresh {
    height: 20px;
    margin-left: 5px !important;
}

#pbx-form-container .captcha-wrap .captcha-input {
    flex: 1;
    width: auto !important;
}

#pbx-form-container .captcha-wrap .captcha-input input {
    height: 35px !important;
    width: 100% !important;
}

#pbx-phone-icon,
#pbx-email-icon.tg,
#pbx-email-icon.wa,
#pbx-tg-icon.wa {
    margin-right: 10px;
}

#pbx-tg-icon,
#pbx-wa-icon {
    cursor: pointer;
}

#pbx-email-icon i {
    margin-top: 5px;
}

#pbx-phone-icon {
    line-height: 1;
}

#pbx-phone-icon, #pbx-email-icon {
    height: 30px;
    cursor: pointer;
    width: 30px;
    border: 1px solid #ffffff;
    border-radius: 50%;
}

#pbx-phone-icon i, #pbx-email-icon i {
    font-size: 18px;
    color: #ffffff;
}

#pbx-email-icon {
    line-height: 30px;
}

#pbx-main-container .fas {
    line-height: 27px;
}

#pbx-phone-icon:hover, #pbx-email-icon:hover {
    background-color: color-mix(in srgb, var(--color-primary, #3a7fc9) 80%, black);
    transition: 0.3s;
}

#pbx-main-container.animate {
    animation: pbx-pulse-main 3s 0.75s ease-out infinite;
}

#pbx-main-container-shadow.animate {
    animation: pbx-pulse-shadow 1.5s 0s ease-out infinite;
}

@keyframes pbx-pulse-shadow {
    0% {
        box-shadow: 0 0 4px 3px transparent, 0 0 0 0 transparent, 0 0 0 0 transparent;
    }
    10% {
        box-shadow: 0 0 4px 3px color-mix(in srgb, var(--color-primary, #3a7fc9) 60%, transparent), 0 0 12px 10px transparent, 0 0 0 0 color-mix(in srgb, var(--color-primary, #3a7fc9) 60%, transparent);
    }
    100% {
        box-shadow: 0 0 4px 3px transparent, 0 0 0 40px transparent, 0 0 0 20px transparent;
    }
}

@keyframes pbx-pulse-main {
    0% {
        box-shadow: 0 0 6px 5px transparent, 0 0 0 0 transparent, 0 0 0 0 transparent;
    }
    10% {
        box-shadow: 0 0 6px 5px color-mix(in srgb, var(--color-primary, #3a7fc9) 60%, transparent), 0 0 12px 10px transparent, 0 0 0 0 color-mix(in srgb, var(--color-primary, #3a7fc9) 60%, transparent);
    }
    100% {
        box-shadow: 0 0 6px 5px transparent, 0 0 0 40px transparent, 0 0 0 30px transparent;
    }
}

@media (max-width: 575.98px) {
    #pbx-main-container,
    #pbx-main-container-shadow,
    #pbx-main-container.tg,
    #pbx-main-container.wa,
    #pbx-main-container-shadow.tg,
    #pbx-main-container-shadow.wa,
    #pbx-main-container.tg.wa,
    #pbx-main-container-shadow.tg.wa {
        flex-direction: column;
        align-items: center;
        gap: 10px;
        width: 50px;
        height: auto;
        right: 13px;
        bottom: 105px;
        border-radius: 25px 0 0 25px;
    }

    #pbx-phone-icon,
    #pbx-email-icon.tg,
    #pbx-email-icon.wa,
    #pbx-tg-icon.wa {
        margin-right: 0;
    }

    #pbx-main-container-shadow {
        display: none;
    }

    #pbx-tg-icon,
    #pbx-wa-icon {
        height: 30px;
        border-radius: 50%;
        overflow: hidden;
    }
}
.main-search-modal {
    display: none;
    background-color: rgba(255, 255, 255, 0.96);
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 0 15px;
}

.main-search-block {
    max-width: 700px;
    margin: 10% auto 0 auto;
}

.main-search-block .search-title {
    text-align: center;
    font-size: 2.5rem;
}

.hits-search a {
    border: 1px solid black;
    border-radius: 5px;
    display: inline-block;
    padding: 3px 5px 3px 5px;
    margin-bottom: 10px;
    cursor: pointer;
}

.main-search-icon {
    position: absolute;
    top: 5px;
    right: 10px;
}

.main-search-icon path {
    fill: #ddd;
}

.main-search-icon:hover path {
    fill: #666666;
}

.main-search-close {
    float: right;
    margin-top: 30px;
    margin-right: 30px;
}

.search-preloader {
    width: 25px;
    height: 25px;
    border: 2px solid #eae4ea;
    box-shadow: 0 -2px 2px rgba(0,0,0,.2);
    border-bottom: 2px solid #000;
    border-radius: 50%;
    animation: loader 3s linear infinite;
    position: absolute;
    top: 5px;
    right: 10px;
    z-index: 100;
}

.calc-form-preloader {
    top: 50%;
    right: 50%;
}

.blackout-block {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    background-color: rgba(255, 255, 255, 0.33);
}

@keyframes loader {
  0%  {
    transform: rotate(0deg);
  }
  100%  {
    transform: rotate(360deg);
  }
}

.main-search-block .input-wrapper {
    position: relative;
}

.main-search-modal .form-control {
    font-size: 15px;
}
#modal-cart .modal-content {
    border-radius: 30px;
}

#modal-cart .modal-content .close {
    right: 1.5rem;
    top: 1.3rem;
    z-index: 999;
}

#modal-cart .sku-title {
    font-weight: 600;
}

#modal-cart .quantity {
    max-height: 30px;
}

#modal-cart .quantity-nav {
    width: 10%;
}

#modal-cart .quantity input {
    height: auto;
    line-height: 35px;
    width: 30%;
}

#modal-cart .quantity-button {
    line-height: 1;
    width: 30px;
    border-radius: 15px;
    left: 35px;
}

#modal-cart .skus-sum {
    font-weight: var(--fw-semi, 600);
    line-height: 35px;
    color: var(--color-primary, #014dd6);
}

#modal-cart .quantity i.fa-ruble-sign {
    color: #014dd6;
}

#modal-cart #fast-buy-form .payment,
#modal-cart #fast-buy-form .delivery {
    border: 1px solid #cacaca;
    border-radius: 10px;
}

#modal-cart #fast-buy-form .payment .form-check,
#modal-cart #fast-buy-form .delivery .form-check {
    display: flex;
    align-items: center;
    padding-left: 0;
}

#modal-cart #fast-buy-form .payment .form-check-input,
#modal-cart #fast-buy-form .delivery .form-check-input {
    position: static;
    margin-left: 0;
    margin-top: 0;
    margin-right: 0.4rem;
    flex-shrink: 0;
}

#modal-cart #fast-buy-form .comment > .input > textarea {
    border-radius: 10px;
}

#modal-cart #fast-buy-form input[type="checkbox"] {
    top: 5px;
}

#modal-cart #fast-buy-form button[type="submit"] {
    width: 100%;
}

#modal-cart #fast-buy-form textarea {
    height: 120px;
}

#modal-cart #fast-buy-form .user-data .label {
    line-height: 35px;
}

#modal-cart label {
    margin-bottom: 0;
}

#modal-cart {
    overflow-y: auto;
}

.sku-information .oneclick-elem + .buy-elem {
    display: block;
}

#modal-cart .cart-button {
    margin: 0;
}

#modal-cart .quantity-selector {
    background: #fff;
    border-color: #dee2e6 !important;
}

#modal-cart .quantity-selector .quantity-input {
    width: 50px;
    text-align: center;
    border: none;
    background: transparent;
    -moz-appearance: textfield;
}

#modal-cart .quantity-selector .quantity-input::-webkit-outer-spin-button,
#modal-cart .quantity-selector .quantity-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#modal-cart .quantity-selector .quantity-minus,
#modal-cart .quantity-selector .quantity-plus {
    width: 32px;
    height: 32px;
    padding: 0;
    font-size: var(--fs-18, 18px);
    font-weight: var(--fw-bold, bold);
    color: var(--color-gray, #014dd6);
    background: transparent;
    border: none !important;
}

#modal-cart .quantity-selector .quantity-minus:hover,
#modal-cart .quantity-selector .quantity-plus:hover {
    background: #f0f0f0;
}

#modal-cart .quantity-selector .quantity-minus:focus,
#modal-cart .quantity-selector .quantity-plus:focus {
    box-shadow: none;
}

#modal-cart .one-click-title {
    font-size: 1.25rem;
    font-weight: 600;
}

#modal-cart .one-click-buy-price .total-amount {
    font-weight: 500;
}

#modal-cart .one-click-buy-price .skus-sum {
    font-size: 1.25rem;
}

#modal-cart #fast-buy-form .buttons-control-move input {
    width: 100%;
    padding: 6px 12px;
    border: 1px solid #cacaca;
    border-radius: 5px;
    margin-top: 5px;
}

        .modal-open {
            overflow: scroll;
        }

        #apply-modal {
            position: fixed;
            left: auto;
            right: 10px;
        }
        .filter-block {
            background: none;
            border: 1px solid #dcdcdc;
            padding: 10px 15px;
        }
        .collapse-block input[type="radio"] {
            border: 1px solid #dcdcdc;
            border-radius: 3px;
        }
        .collapse-button,
        .cf-collapse-btn {
            cursor: pointer;
        }
        .collapsed-block {
            display: none;
        }
        .new-clear-block {
            width: 100%;
            margin: 0;
        }
        #main-panel-filter {
            margin-bottom: 26px;
        }

        #main-panel-filter .collapse-icon,
        #char-filter-body .collapse-icon {
            position: absolute;
            top: 50%;
            transform: translateY(-40%);
            right: 0;
            transition: transform 0.3s ease;
        }
        #main-panel-filter .collapse-icon.rotate-180,
        #char-filter-body .collapse-icon.rotate-180 {
            transform: translateY(-40%) rotate(180deg);
        }
        #main-panel-filter > .title .collapse-icon,
        #char-filter-body > .title .collapse-icon {
            position: static;
            transform: none;
        }
        #main-panel-filter > .title .collapse-icon.rotate-180,
        #char-filter-body > .title .collapse-icon.rotate-180 {
            transform: rotate(180deg);
        }
        #main-panel-filter > .title .filter-block,
        #char-filter-body > .title .filter-block {
            border: none;
            padding: 0;
        }
        #main-panel-filter .collapse-icon-block,
        #char-filter-body .collapse-icon-block {
            position: relative;
        }
        #main-panel-filter .collapse-icon-block + div,
        #char-filter-body .collapse-icon-block + div {
            padding-left: 17px !important;
        }
        .collapse-block-padding {
            padding-top: 5px;
        }


        /* Reset BS4 label margin inside filter panel */
        #main-panel-filter label,
        #char-filter-body label {
            margin-bottom: 0;
        }

        /* Gap between checkbox and label, spacing between rows */
        #main-panel-filter .collapse-block-padding .row.no-gutters,
        #char-filter-body .collapse-block-padding .row.no-gutters {
            gap: 0 6px;
        }
        .collapse-block-padding > div > .row {
            margin-bottom: 5px;
        }
        .collapse-block-padding > .row {
            margin-bottom: 5px;
        }

        .filter-child-container {
            padding: 5px 5px 5px 25px;
        }

        /* Filter help-text tooltip */
        .filter-tooltip {
            position: absolute;
            background: #343a40;
            color: #fff;
            padding: 8px 12px;
            border-radius: 15px;
            font-size: 14px;
            line-height: 1.4;
            max-width: 250px;
            z-index: 9999;
            pointer-events: none;
            opacity: 0;
            transition: opacity 0.2s;
            box-shadow: 0 2px 8px rgba(0,0,0,0.2);
            word-wrap: break-word;
        }
        .filter-tooltip * {
            margin: 0;
        }

        #main-panel-filter .arrow,
        #char-filter-body .arrow {
            display: none;
        }
        @media all and (max-width: 1368px) {
            .padding-left-null {
                padding-left: 0;
            }
        }
        /*#filter-tooltip{*/
        /*    position: fixed;*/
        /*    left: 250px;*/
        /*}*/
        /*.show-results.tooltip {*/
        /*    position: fixed;*/
        /*}*/
        /*.show-results.tooltip a:hover {*/
        /*    text-decoration: none;*/
        /*}*/

        /* noUiSlider Custom Styles (price + range filters) */
        #price-slider,
        .range-slider,
        #cf-price-slider,
        .cf-slider {
            margin: 15px 8px 10px 8px;
            height: 6px;
        }

        #price-slider.noUi-target,
        .range-slider.noUi-target,
        #cf-price-slider.noUi-target,
        .cf-slider.noUi-target {
            background: #d0d0d0;
            border: none;
            box-shadow: none;
            height: 3px;
            border-radius: 2px;
        }

        #price-slider.noUi-horizontal .noUi-connect,
        .range-slider.noUi-horizontal .noUi-connect,
        #cf-price-slider.noUi-horizontal .noUi-connect,
        .cf-slider.noUi-horizontal .noUi-connect {
            background: var(--color-primary);
            height: 3px;
        }

        #price-slider.noUi-horizontal .noUi-handle,
        .range-slider.noUi-horizontal .noUi-handle,
        #cf-price-slider.noUi-horizontal .noUi-handle,
        .cf-slider.noUi-horizontal .noUi-handle {
            width: 18px !important;
            height: 18px !important;
            border-radius: 50% !important;
            background: var(--color-primary) !important;
            border: none !important;
            box-shadow: none !important;
            cursor: pointer;
            top: -8px !important;
            right: -9px !important;
        }

        #price-slider .noUi-handle:before,
        #price-slider .noUi-handle:after,
        .range-slider .noUi-handle:before,
        .range-slider .noUi-handle:after,
        #cf-price-slider .noUi-handle:before,
        #cf-price-slider .noUi-handle:after,
        .cf-slider .noUi-handle:before,
        .cf-slider .noUi-handle:after {
            display: none !important;
        }

        #price-slider .noUi-handle:focus,
        .range-slider .noUi-handle:focus,
        #cf-price-slider .noUi-handle:focus,
        .cf-slider .noUi-handle:focus {
            outline: none;
        }

        #price-slider .noUi-active,
        .range-slider .noUi-active,
        #cf-price-slider .noUi-active,
        .cf-slider .noUi-active {
            transform: scale(1.15);
        }

        .filter-buttons-block {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }

        #product-mobile-sidebar,
        #catalogue-mobile-sidebar {
            display: none;
        }

        /* Mobile: vertical fixed tab + fullscreen overlay */
        @media (max-width: 767.98px) {
            #product-mobile-sidebar,
            #catalogue-mobile-sidebar,
            .row > .catalogue-sidebar {
                display: block;
                position: fixed;
                left: 0;
                top: 50%;
                transform: translateY(-50%);
                z-index: 39;
                width: auto;
                max-width: none;
                flex: none;
                margin: 0;
                padding: 0 !important;
            }

            .catalogue-sidebar:not(.filter-overlay-open) .border-gray-color {
                border: none;
                padding: 0 !important;
                background: transparent;
                border-radius: 0;
            }

            .catalogue-sidebar #main-panel-filter {
                margin-bottom: 0;
            }

            .catalogue-sidebar #main-panel-filter > .title {
                writing-mode: vertical-rl;
                transform: rotate(180deg);
                background: var(--color-white);
                border: 1px solid var(--color-lgray);
                border-right: none;
                border-radius: 10px 0 0 10px;
                padding: 12px 5px;
                margin: 0;
                cursor: pointer;
                font-size: var(--fs-13);
                box-shadow: -2px 0 8px rgba(0, 0, 0, 0.15);
                justify-content: center;
                gap: 0;
            }

            .catalogue-sidebar #main-panel-filter > .title .filter-block {
                display: none;
            }

            .catalogue-sidebar .new-clear-block.collapse-block,
            .catalogue-sidebar .filter-buttons-block {
                display: none;
            }

            #modifications-sidebar > .border-gray-color {
                display: none;
            }

            [data-bs-target="#mobileFiltersCollapse"] {
                display: none !important;
            }

            #mobileFiltersCollapse {
                display: none !important;
            }

            /* Fullscreen overlay when open */
            .catalogue-sidebar.filter-overlay-open,
            #product-mobile-sidebar.filter-overlay-open,
            #catalogue-mobile-sidebar.filter-overlay-open {
                position: fixed;
                left: 0;
                top: 0;
                width: 100% !important;
                height: 100% !important;
                max-width: none !important;
                transform: none;
                background: var(--color-white);
                overflow-y: auto;
                padding: 15px !important;
                z-index: 10000;
            }

            .catalogue-sidebar.filter-overlay-open .border-gray-color {
                padding: 1rem !important;
                border-radius: 15px !important;
            }

            .catalogue-sidebar.filter-overlay-open #main-panel-filter > .title {
                writing-mode: horizontal-tb;
                transform: none;
                border: none;
                border-radius: 0;
                box-shadow: none;
                padding: 10px 0;
                font-size: var(--fs-18);
                font-weight: var(--fw-semi);
                display: flex;
                justify-content: space-between;
                align-items: center;
                border-bottom: 1px solid var(--color-lgray);
                margin-bottom: 10px;
            }

            .catalogue-sidebar.filter-overlay-open #main-panel-filter > .title .filter-block {
                display: block;
            }

            .catalogue-sidebar.filter-overlay-open .new-clear-block.collapse-block,
            .catalogue-sidebar.filter-overlay-open .filter-buttons-block {
                display: flex;
            }

            .catalogue-sidebar.filter-overlay-open .new-clear-block.collapse-block {
                flex-direction: column;
            }

            /* ── Characteristics filter: fullscreen overlay on mobile ── */
            #char-filter-col.cf-overlay-open {
                display: block !important;
                position: fixed;
                left: 0;
                top: 0;
                width: 100% !important;
                height: 100% !important;
                max-width: none !important;
                background: var(--color-white);
                overflow-y: auto;
                padding: 15px !important;
                z-index: 10000;
            }

            #char-filter-col.cf-overlay-open #char-filter-body {
                padding: 1rem !important;
                font-size: inherit;
            }

            #char-filter-col.cf-overlay-open .title {
                font-size: var(--fs-18);
                font-weight: var(--fw-semi);
                border-bottom: 1px solid var(--color-lgray);
                margin-bottom: 10px;
                padding-bottom: 10px;
            }

        }

        #main-panel-filter .filter-changes-apply:hover,
        #main-panel-filter .filter-reset:hover,
        #char-filter-body .cf-apply:hover,
        #char-filter-body .cf-reset:hover {
            background-color: #868e96 !important;
            color: #fff !important;
            border-color: #868e96 !important;
        }

        /* Title style for filter panels */
        #main-panel-filter .title,
        #char-filter-body .title {
            font-size: var(--fs-24);
            font-weight: var(--fw-semi);
        }

        .btn-char-filter {
            font-size: var(--fs-13);
        }

        @media (max-width: 1199.98px) {
            .btn-char-filter {
                font-size: var(--fs-11);
            }
        }

        @media (max-width: 499.98px) {
            .btn-char-filter {
                font-size: var(--fs-9);
            }
        }

        @media (max-width: 991.98px) {
            #char-filter-body {
                font-size: var(--fs-13);
            }
            #char-filter-body .title {
                font-size: var(--fs-18);
            }
        }

        /* ── Characteristics filter: active tags ── */
        .cf-active-tags {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
        }

        .cf-tag {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 5px 10px 5px 10px;
            border: 1px solid var(--color-primary);
            border-radius: 20px;
            font-size: var(--fs-13);
            white-space: nowrap;
            color: var(--color-primary);
        }

        @media (max-width: 991.98px) {
            .cf-tag {
                padding: 4px 12px;
                font-size: var(--fs-13);
            }
        }

        @media (max-width: 575.98px) {
            .cf-tag {
                padding: 3px 10px;
                font-size: var(--fs-11);
            }
        }

        .cf-tag .cf-tag-remove {
            cursor: pointer;
            font-size: 16px;
            line-height: 1;
            color: var(--color-primary);
            opacity: 0.6;
        }

        .cf-tag .cf-tag-remove:hover {
            opacity: 1;
        }
