.products-panel__page-switch{
    flex: 0 1 auto;
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    justify-content: flex-end;
    flex-flow: row wrap-reverse;
}

.products-current-page{
    flex: 0 1 auto;
    margin: 0 0 0 20px;
    font-size: 12px;
    color: #adadad;
    line-height: 40px;
    text-align: right;
    white-space: nowrap;
}

.views-switch{
    flex: 0 0 auto;
    border: 1px solid var(--border-elements-color);
    border-radius: 12px;
    display: inline-flex;
    margin: 0 0 10px 20px;
    position: relative;
    box-sizing: border-box;
    color: #000;
    background: var(--wrap-bg-color);
}

.views-switch__item{
    height: 41px;
    width: 40px;
    text-align: center;
    font-size: 12px;
    position: relative;
    background: none;
    z-index: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--body-text-color);
}

.views-switch__item rect{
    fill: #000;
}

.dark-theme .views-switch__item rect{
    fill: var(--body-text-color);
}

.views-switch__item.selected{
    color: var(--ac-bg-color-font);
}

.views-switch__item.selected rect{
    fill: var(--ac-bg-color-font);
}


.views-switch__bg{
    position: absolute;
    top: -1px;
    bottom: -1px;
    width: 40px;
    border-radius: 12px;
    box-sizing: border-box;
    z-index: 0;
    transition: left 0.5s, transform 0.5s, opacity .5s;
    box-shadow: 0 5px 10px rgba(0,0,0,0.07);
}

.views-switch__item:hover ~ .views-switch__bg{
    opacity: .8;
}

.views-switch__item.selected:nth-child(1) ~ .views-switch__bg{
    left: 0;
    margin: 0 0 0 -1px;
    width: 42px;
}

.views-switch__item.selected:nth-child(2) ~ .views-switch__bg{
    left: 39px;
}

.views-switch__item.selected:nth-child(3) ~ .views-switch__bg{
    left: 80px;
    width: 41px;
    margin: 0 0 0 -1px;
}

.views-switch__item.selected:nth-child(4) ~ .views-switch__bg{
    left: 120px;
    margin: 0 0 0 -1px;
}

.views-switch__item.selected:nth-child(5) ~ .views-switch__bg{
    left: 160px;
    width: 42px;
    margin: 0 0 0 -2px;
}


.horizontal-filter{
    flex: 1 1 auto;
}

.horizontal-filter__items{
    display: flex;
    flex-wrap: wrap;
}

.horizontal-filter__item.sk-loading{
    opacity: 0.5;
}

.horizontal-filter__item{
    flex: 0 0 auto;
    margin: 0 10px 10px 0;
    cursor: pointer;
    position: relative;
    font-size: 14px;
    vertical-align: top;
    z-index: 1;
}

.horizontal-filter__item.-sk-last{
    margin-right: 25px;
}

.horizontal-filter__item:last-child{
    margin-right: 0;
}

.horizontal-filter__item.open{
    z-index: 7;
}

.horizontal-filter__item.open:after {
    position: absolute;
    top: 100%;
    color: var(--popup-bg-color);
    content: "\f0d8";
    font-family: Font Awesome\ 5 Pro;
    font-weight: 900;
    line-height: 4px;
    left: 50%;
    margin-left: -6px;
    margin-top: 6px;
    font-size: 20px;
    text-shadow: 0 -3px 5px rgba(0,0,0,0.06);
}

.horizontal-filter__head{
    height: 40px;
    line-height: 40px;
    padding: 0 17px;
    background: #f8f8f8;
    border-radius: 7px;
    display: inline-block;
    white-space: nowrap;
}

.dark-theme .horizontal-filter__head{
    background: var(--wrap-bg-color);
}

.horizontal-filter a{
    text-decoration: none;
    display: inline-block;
    vertical-align: middle;
}

.horizontal-filter__head .sort-asc,
.horizontal-filter__head .sort-desc{
    line-height: 35px;
    margin-bottom: 5px;
}

.horizontal-filter__count{
    position: absolute;
    width: 15px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    font-size: 11px;
    border-radius: 50%;
    top: 4px;
    right: 4px;
    background: var(--header-counters-bg-color);
    color: var(--header-counters-font-color);
}

.horizontal-filter__caret,
.horizontal-filter__remove{
    margin: 0 0 0 2px;
    display: inline-block;
    vertical-align: middle;
    font-size: 13px;
    width: 15px;
    text-align: center;
}

.horizontal-filter__caret{
    transition: .2s;
}

.horizontal-filter__item.open .horizontal-filter__caret{
    transform: rotate(180deg);
}

.horizontal-filter__remove,
.horizontal-filter__count,
.horizontal-filter__item.selected > .horizontal-filter__head .horizontal-filter__caret{
    display: none;
}

.horizontal-filter__item.selected > .horizontal-filter__head .horizontal-filter__remove,
.horizontal-filter__item.selected > .horizontal-filter__head .horizontal-filter__count{
    display: inline-block;
}

.horizontal-filter__body{
    position: absolute;
    line-height: 16px;
    left: 0;
    top: 100%;
    padding-top: 10px;
    font-size: 14px;
    display: none;
}

.horizontal-filter__body.to-left{
    right: 0;
    left: auto;
}

.horizontal-filter__body-inner{
    padding: 20px 25px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    border-radius: 13px;
    background: var(--popup-bg-color);
    color: var(--popup-text-color);
    position: relative;
    width: 220px;
    display: flex;
    flex-direction: column;
}

.horizontal-filter__variants{
    display: flex;
    order: 10;
    flex-wrap: wrap;
}

.horizontal-filter__variants.-buttons{
    margin: 0 -4px;
}

.horizontal-filter__variant{
    padding: 5px 0;
    display: block;
    order: 10;
    width: 100%;
}

.horizontal-filter__variant.checked {
    order: 5;
}

.horizontal-filter__variant.sk-hide{
    display: none;
}

.horizontal-filter__body .filter-item__button{
    margin: 0 4px 8px 4px;
}

.horizontal-filter__variant.__sort{
    padding: 7px 0;
}

.horizontal-filter__variant.__sort a{
    display: inline-flex;
    align-items: center;
}

.horizontal-filter__variant.__sort .sort-asc,
.horizontal-filter__variant.__sort .sort-desc{
    margin: 0 0 0 5px;
}


.horizontal-filter__variant.__sort a:hover{
    color: var(--bs-color);
}

.dark-theme .horizontal-filter__variant.__sort a:hover{
    color: var(--popup-text-color);
    opacity: 0.5;
}

.horizontal-filter__send{
    height: 40px;
    line-height: 40px;
    border-radius: 7px;
    padding: 0 17px;
    margin: 0 10px 10px 0;

}

.category-filters__reset{
    background: none;
    height: 40px;
    line-height: 40px;
    margin: 0 10px 10px 0;
}

.horizontal-filter__buttons{
    margin: 15px 0 0;
    display: flex;
    gap: 5%;
    order: 20;
}

.horizontal-filter__button-clear,
.horizontal-filter__button-close{
    height: 35px;
    line-height: 35px;
    border-radius: 10px;
    flex: 1 1 47.5%;
    padding: 0 10px;
    box-sizing: border-box;
}

.horizontal-filter__button-clear{
    display: none;
}

.horizontal-filter__item.selected .horizontal-filter__button-clear{
    display: block;
}

@media (max-width: 1150px){
    .content-cols--sidebar .products-panel{
        flex-wrap: wrap;
    }

    .content-cols--sidebar .horizontal-filter{
        flex: 1 1 100%;
        order: 5;
    }
    .content-cols--sidebar .products-panel__page-switch{
        flex: 1 1 100%;
        order: 1;
        margin: 0 0 5px;
        justify-content: flex-start;
    }

    .content-cols--sidebar .views-switch,
    .content-cols--sidebar .products-current-page{
        margin: 0 20px 10px 0;
    }

    .content-cols--sidebar .views-switch{
        order: 1;

    }

    .content-cols--sidebar .products-current-page{
        order: 2;
        flex: 1 1 auto;
    }
}

@media (max-width: 1024px){
    .horizontal-filter,
    .products-panel__page-switch{
        display: none;
    }
}

.sidebar-filters{
    margin: 0 0 50px;
    background: var(--wrap-bg-color);
}

.sidebar-subcategories{
    background: #f8f8f8;
    border-radius: 20px;
    margin: 0 0 40px;
    padding: 20px 25px;
}

.dark-theme .sidebar-subcategories{
    background: var(--wrap-bg-color);
}

/* плагин categoryReviews (Каталог отзывов) - список в сайдбаре */
.sidebar-categoryreviews-items__outer{
    max-height: 457px;
}

.sidebar-categoryreviews-items{
    margin: 30px 0 0;
    padding: 0;
    list-style: none;
    font-size: 14px;
}

.sidebar-categoryreviews-item{
    padding: 0 0 20px;
    list-style: none;
}

.sidebar-categoryreviews-item__inner{
    text-decoration: none;
}

.sidebar-categoryreviews-item__inner:hover{
    color: var(--body-text-color);
}

.catalogreviews-block a:hover, .catalogreviews-block a:focus,
.catalogreviews-block a:hover, .catalogreviews-block a:focus{
    color: var(--body-text-color) !important;
}

.sidebar-categoryreviews__top{
    display: flex;
    margin: 0 0 5px;
    align-items: center;
}

.sidebar-categoryreviews__img{
    margin: 0 10px 0 0 ;
    flex: 0 0 50px;
    display: flex;
    align-items: center;
    height: 50px;
    justify-content: center;
}

.sidebar-categoryreviews__img img{
    max-height: 50px;
}

.sidebar-categoryreviews__meta{
    flex: 1 1 auto;
}

.sidebar-categoryreviews__title{
    font-weight: bold;
    font-size: 13px;
    line-height: 15px;
}

.sidebar-categoryreviews__info{
    font-size: 12px;
    color: #aaaaaa;
    margin: 10px 0 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-categoryreviews__date{
    margin: 0 10px 0 0;
}

.sidebar-categoryreviews__text{
    overflow: hidden;
    height: 84px;
    line-height: 1.4;
}