.category-404 {
    padding-top: 0;

    .content {
        container-type: inline-size;
        display: flex;
        justify-content: space-between;

        .right {
            @container (width < 850px) {
                display: none;
            }
            flex-grow: 1;
            display: flex;
            justify-content: center;
        }
    }

    .description {
        color: #768085;
        padding-bottom: 15px;
    }
}

.products-with-filters-section.table-type {
    padding: 15px;

    .characteristics-filter {
        position: sticky;
        top: 15px;
    }

    .title {
        padding: .75rem .5rem .75rem .5rem;
        background-color: var(--bg-grey-color);
        line-height: 1.75rem;
        color: white;

    }

    table {
        line-height: 1.5rem;
        border-collapse: collapse;

        tbody {
            tr:nth-child(odd) {
                background-color: rgb(229, 231, 235);
            }
        }

        td, th {
            padding: 1px .5rem 1px .5rem;
            border: 1px solid rgb(209, 213, 219);
        }
    }
}

[data-tooltip] {
    position: relative;

    [data-hidden-part] {
        display: none;
    }

    &:hover [data-hidden-part] {
        position: absolute;
        top: 0;
        left: 0;
        background-color: white;
        border-radius: .5rem;
        z-index: 1;
        box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
        display: flex;
    }
}

@media (width < 500px) {
    [data-tooltip]:hover [data-hidden-part] {
        transform: translate(-50%, -50%);
    }
}

.products-with-filters-section.table-type {

    .notify-admission-button {
        border: none;
        background-color: var(--main-color);
        color: white;
        border-radius: 3px;
        padding: 5px 10px;
        cursor: pointer;

        &:hover {
            filter: hue-rotate(-30deg);
        }
    }

    .content {
        width: 100%;
    }

    .products-table {
        width: 100%;
        height: 0;

        tbody {
            filter: blur(0px);
            transition: filter 1s;

            &.blur {
                filter: blur(5px);
            }
        }

        .analog-articles-cell {
            .visible-part {
                display: block;
                cursor: help;
                background-image: url("/images/svg/list-ul-alt-svgrepo-com.svg");
                background-position: center;
                background-size: 34px 34px;
                background-repeat: no-repeat;
                height: 100%;
            }
        }
    }

    .analog-articles-modal {
        width: 50vw;
        padding: .5rem;
    }
}

.image-placeholder {
    background-image: url("/images/camera.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 34px;
}

.to-messenger {
    position: fixed;
    bottom: 80px;
    right: 50px;
    cursor: pointer;
    display: flex;
    gap: 11px;
    align-items: center;

    .icon {
        background-color: white;
        background-image: url('/images/message-icon.svg');
        background-repeat: no-repeat;
        background-position: center;
        width: 71px;
        height: 71px;
        border-radius: 50px;
        border: 1px solid var(--main-color);
    }

    .label {
        font-weight: 500;
        text-transform: uppercase;
        font-size: 12px;
        padding: 10px;
        background-color: white;
        border: 1px solid var(--main-color);
        border-radius: 10px;
    }
}

.pagination-nav {
    position: sticky;
    bottom: 0;
}

.pagination {
    display: flex;
    gap: 10px;
    justify-content: right;
    padding: 25px 0;
    font-weight: bold;
    border-top: 2px solid rgb(209, 213, 219);
    background-color: white;

    li .item {
        padding: .5rem .75rem;
        border-radius: 3px;
        background-color: rgb(209, 213, 219);
    }

    li.active .item {
        background-color: var(--bg-grey-color);
        color: white;
    }
}

.products-with-filters-section {
    [data-characteristic-type-id="5c818740-d460-11ec-baa3-000c293fbf52"] {
        label {
            font-weight: 600;
        }
    }

    [data-characteristic-type-id="b9d9ee6c-d460-11ec-baa3-000c293fbf52"] {
        label {
            font-weight: 600;
        }
    }
}

.sort-tool {
    display: flex;
    gap: 2px;
    justify-content: center;
    align-items: center;
    cursor: pointer;

    select {
        display: none;
    }

    .sort-icon {
        display: block;
        width: 24px;
        height: 24px;

        &[data-selected-value] {
            transition: transform .5s;
        }

        &[data-selected-value="none"] {
            background-image: url("/images/svg/sort-order-none.svg");
        }

        &[data-selected-value="asc"], &[data-selected-value="desc"] {
            background-image: url("/images/svg/sort-order-directed.svg");
        }

        &[data-selected-value="desc"] {
            transform: rotate(180deg);
        }
    }
}

.blur {
    filter: blur(1px);
}

.centring-wrapper {
    display: flex;
    justify-content: center;
}

.cart-purchase-tool {
    display: flex;
    gap: 3px;
    justify-content: center;
    align-items: center;

    &[data-amount] {
        background-color: rgb(167, 243, 208);
        transition: background-color .5s;
    }

    &[data-amount="0"] {
        background-color: transparent;
    }

    .change-amount-tool-table-view-category {
        width: 2.5em;
        height: 2.5em;
        display: flex;
        justify-content: center;
        font-weight: 600;
        background-size: 70%;
        background-position: center;
        background-repeat: no-repeat;
        background-color: transparent;
        cursor: pointer;
        border: none;

        &.minus {
            background-image: url("/images/svg/minus.svg");
        }

        &.plus {
            background-image: url("/images/svg/plus.svg");
        }
    }

    .amount-input {
        border: none;
        width: 2.5em;
        background-color: transparent;
        text-align: center;
        outline: none;
        font-size: 16px;
    }
}

.checkbox-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.auto-compare-tiles-filter {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 30px 60px;
    @container container (width < 720px) {
        padding: 18px;
        gap: 10px;
    }

    background-color: #F1F0F0;

    &[data-show-tiles-state="show-importance"] {
        .tile:not(.importance) {
            display: none;
        }

        [data-toggle-importance-vision-tool] .show-importance {
            display: none;
        }
    }

    &[data-show-tiles-state="show-all"] {
        [data-toggle-importance-vision-tool] .show-all {
            display: none;
        }
    }

    &[data-show-tiles-state="search"] {
        .tile.hidden-for-search {
            display: none;
        }

        [data-toggle-importance-vision-tool] {
            display: none;
        }
    }

    .filter__head {
        display: flex;
        gap: 15px;
        @container container (width < 720px) {
            flex-direction: column;
            gap: 10px;
        }
        justify-content: space-between;
        align-items: center;

        .back {
            font-weight: 700;
            gap: 10px;
            margin-left: auto;
            display: flex;
            align-items: center;

            svg path {
                fill: var(--main-color) !important;
            }
        }

        .search {
            @container container (width < 720px) {
                width: 100%;
            }
            position: relative;
            display: flex;

            &:after {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
                left: 7px;
                background-image: url('/images/32-Search.png');
                content: '';
                display: block;
                width: 32px;
                height: 32px;
                background-repeat: no-repeat;
                background-position: center;
            }
        }

        .search-input {
            width: 100%;
            border: 1px solid #efefef;
            outline: none;
            padding: 16px 16px 16px 40px;
            font-size: 14px;
            border-radius: 4px;
        }

        .title {
            font-size: 22px;
            font-weight: 600;
        }
    }

    .filter__body {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        flex-wrap: wrap;
        gap: 20px;


        @container container (width < 720px) {
            gap: 10px;
        }

        .tile {
            @container container (width < 720px) {
                padding: 3px 7px;
            }
            display: flex;
            align-items: center;
            gap: 10px;
            border-radius: 4px;
            min-height: 50px;

            &.hidden {
                display: none;
            }

            .logo {
                width: 40px;
                height: 40px;
                object-fit: contain;
            }

            .name {
                font-size: 16px;
            }

            padding: 5px 10px;
            background-color: white;
        }

        .button {
            width: 100%;
        }
    }
}

.products-with-filters-section {
    .content {
        display: grid;
        grid-template-columns: 350px 1fr;
        gap: 15px;

        .left-panel {
            display: flex;
            flex-direction: column;
            gap: 30px;
            grid-row: span 2;
        }

        .auto-compare-filter {
            grid-column: 2 / 3;
            grid-row: 1 / 2;
        }

        .product-elements-wrapper {
            grid-column: 2 / 3;
        }
    }

    &.without-left-filter .content {
        display: flex;
        flex-direction: column;
    }
}

.change-amount-tool {
    display: grid;
    grid-template-columns: 4fr 3fr;
    border: 1px solid var(--grey-color);
    border-radius: 3px;
    overflow: hidden;

    .change-amount-input {
        font-size: 18px;
        width: 75px;
        padding: 18px;
        outline: none;
        border: none;
        text-align: center;
    }

    .change-amount-buttons {
        display: grid;
        grid-template-rows: 1fr 1fr;

        button {
            width: 100%;
            border: none;
            cursor: pointer;
        }
    }
}

@container (width < 1000px) {
    .products-table-scroll-wrapper {
        overflow-x: scroll;
    }
}

.live-results {
    position: absolute;
    z-index: 2;
    top: 50px;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 10px 0;
    background-color: white;
    border-top: none;
    border-left: 1px solid var(--grey-color);
    border-bottom: 1px solid var(--grey-color);
    border-right: 1px solid var(--grey-color);
    border-radius: 0 0 5px 5px;
    width: 100%;
    line-height: 1.2;

    .live-result {
        padding-left: 10px;
        padding-right: 10px;
    }

    .live-result:not(:last-child) {
        border-bottom: 1px solid var(--grey-color);
        padding-bottom: 7px;
    }
}

.page-content {
    container-type: inline-size;
}

@container (width < 1200px) {
    .product-main-part .content {
        display: flex;
        flex-direction: column;
    }
}

.search-results {
    display: flex;
    flex-direction: column;

    img {
        height: 50px;
        width: 80px;
        object-fit: cover;
    }

    .search-result {
        display: grid;
        align-items: center;
        grid-template-columns: 40px 1fr;
        border-bottom: 1px solid var(--grey-color);
        border-left: 1px solid var(--grey-color);
        border-right: 1px solid var(--grey-color);
        gap: 15px;
        padding: 5px;

        &:first-of-type {
            border-top: 1px solid var(--grey-color);
        }
    }
}

.search-result-icon {
    height: 30px;
    width: 40px;
    background-image: url(/images/camera.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 34px;

    &.empty {
        background: none;
        cursor: unset;
    }
}

.cart-pagetitle {
    align-items: center;
    display: flex;
    gap: 10px;
}

.upload-tool {
    display: inline-flex;
    gap: 10px;
    background-color: rgb(229, 231, 235);
    border-radius: 6px;
    padding: 10px 15px;
    align-items: center;
    cursor: pointer;

    .label {
        font-size: 14px;
        text-decoration: underline;
        line-height: 24px;
    }

    .upload-icon {
        width: 24px;
        height: 24px;
        background-image: url("/images/svg/upload-icon.svg");
        display: inline-block;

    }

    [type="file"] {
        display: none;
    }
}

.upload-purchase-block {
    display: flex;
    transition: transform .5s, height .5s;
    transform: scale(1, 0);
    height: 0;
    margin-bottom: 15px;

    .input-block {
        display: flex;
        flex-direction: column;
        gap: 5px;
    }

    &.active {
        transform: scale(1, 1);
        gap: 15px;
        height: 75px;
    }

    .danger {
        align-self: center;
        font-weight: 700;
        color: rgb(248, 113, 113);
    }
}

body[data-page-type="cart"] {
    .page-title-block {
        gap: 5px;
        margin-bottom: 15px;
    }
}

.product-filter-form {
    margin-bottom: 15px;
}

.change-city-and-new-items {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

[data-device-type="phone"] {
    .change-city-and-new-items .new-product {
        display: none;
    }
}

@container (width < 900px) {
    .change-city-and-new-items .new-product {
        display: none;
    }
}

.input-with-arrows {
    display: grid;
    grid-template-columns: 1fr 60px 1fr;
    height: 45px;

    .number-input {
        border: none;
        text-align: center;
        font-size: 24px;
        font-weight: 500;
    }

    button {
        background-color: var(--main-color);
        border: none;
        border-radius: 3px;
        height: 45px;
        width: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        cursor: pointer;

        svg {
            width: 25px;
            height: 25px;

            path {
                fill: white;
            }
        }
    }
}

.page-content {
    .section {
        &:first-of-type {
            margin-top: 0;
            padding-top: 0;
        }
    }
}

.page-content .section.news_slides {
    margin-top: 20px;
}

.partners-map {
    margin-top: 20px;
}

.partners-table .map-icon {
    width: 25px;
    height: 30px;
    cursor: pointer;
}


.map-partner {
    position: relative;
    transform: translate(-50%, -100%);

    .text {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        transform: translate(-45%, -110%);
        background-color: white;
        border: 2px solid var(--main-color);
        padding: 3px 6px;
        border-radius: 1px;
        z-index: 1;
    }

    &:hover .text {
        display: block;
    }

    .map-partner_picture {
        cursor: pointer;
    }

    .pointer {
        width: 40px;
        height: 50px;
        background-image: url("/images/svg/map_point.svg");
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
    }

    .logo {
        object-fit: contain;
        border: 2px solid var(--main-color);
        border-radius: 10px;
        background-color: white;
        width: 50px;
        height: 50px;
        padding: 0;
        transition: transform .5s;

        &:hover {
            transform: scale(2.5, 2.5);
        }
    }
}

.button.new-product {
    padding: 18px 8px;
}

.purchases-list {
    .head__cell {
        align-items: center;
        &.image {
            svg {
                width: 33px;
            }
        }
    }

    .image-placeholder {
        width: 50px;
        height: 40px;
    }

    .image {
        justify-content: center;
    }
}

.toggle-dispersion-part {
    cursor: pointer;
}