.CatalogMainContent {
    padding-bottom: 100px;

    &-filter {
        margin: 20px 0 0;
    }

    &-footer {
        display: flex;

        &-bulk {
            align-self: center;
            padding-right: 10px;
        }
        &-pagination {
            flex: 1;
        }
    }

    .checkbox > [type="checkbox"].disabled {
        &:checked + label {
            &::before,
            &:hover::before {
                border: 1px solid var(--gray-400);
            }
            &::after {
                opacity: 1;
                transform: scale(1);
            }
        }

        &:checked + label.partial::after,
        &:not(:checked) + label.partial::after {
            border-color: var(--gray-400);
        }

        &:checked + label::after,
        &:not(:checked) + label::after {
            border-color: var(--gray-400);
            content: " ";
            transform: rotate(45deg);
        }
    }

    .checkbox > [type="checkbox"] {
        &:checked,
        &:not(:checked) {
            left: -9999px;
            position: absolute;
        }
        &:checked + label,
        &:not(:checked) + label {
            padding-left: 25px;
            position: relative;
        }
        &:checked + label {
            &::after,
            &::before {
                border-radius: 2px;
                height: 16px;
                left: 1px;
                margin-top: -9px;
                position: absolute;
                top: 50%;
                width: 16px;
            }
        }
        &:not(:checked) + label {
            &::after,
            &::before {
                border-radius: 2px;
                height: 16px;
                left: 1px;
                margin-top: -9px;
                position: absolute;
                top: 50%;
                width: 16px;
            }
        }
        &:checked + label::before,
        &:not(:checked) + label::before {
            background: var(--white);
            border: 1px solid var(--gray-500);
            content: "";
        }
        &:checked + label:hover::before {
            border: 1px solid var(--gray-700);
        }
        &:not(:checked) + label {
            &:hover::before {
                border: 1px solid var(--gray-700);
            }
            &::after {
                opacity: 0;
                transform: scale(0);
            }
        }
        &:checked + label {
            &::before,
            &:hover::before {
                border: 1px solid var(--bluejay);
            }
            &::after {
                opacity: 1;
                transform: scale(1);
            }
        }
    }

    .checkbox {
        .checkbox-input,
        label {
            margin-bottom: 0;
            user-select: none;
        }
        .checkbox-input {
            &:not(:checked) + label,
            &:checked + label {
                cursor: pointer;
                padding-left: 22px;
                position: relative;
            }
            &:not(:checked) + label::after,
            &:checked + label::after {
                padding-left: 2px;
                padding-top: 0;
            }
            &:checked + label.partial::after {
                border: none;
                border-bottom: 2px solid var(--bluejay);
                border-radius: 0;
                content: " ";
                margin-left: 3px;
                margin-top: -9px;
                transform: none;
                width: 10px;
            }
            &:checked + label::after {
                border-bottom: 2px solid var(--bluejay);
                border-radius: 0;
                border-right: 2px solid var(--bluejay);
                content: " ";
                font-size: 14px;
                height: 9px;
                margin-left: 6px;
                margin-top: -7px;
                transform: rotate(45deg);
                width: 5px;
            }
        }
    }

    label {
        display: inline-block;
        margin-bottom: 5px;
        max-width: 100%;
    }
}
