@layer addon {

    .templateFilter {
        @media (max-width: 56em) {
            padding-top: calc(var(--section) / 2);
        }
        @media (--max-fablet) {
            padding-top: calc(var(--section) / 2);
        }
        .filters {
            @media (max-width: 56em) {
                position: sticky;
                top: 0;
                z-index: 9999;
                .menuOpen & {
                    z-index: 8;
                }
                .filterButton {
                    position: relative;
                    padding-top: 0;
                    padding-left: 0;
                    padding-right: 0;
                    padding-top: var(--gutter);
                    .button {
                        .icon {
                            width: 24px;
                            height: 24px;
                            margin-right: 10px;
                            opacity: 1;
                        }
                        &:hover {
                            @media (hover: hover) {
                                .icon {
                                    width: 24px;
                                    height: 24px;
                                }
                            }
                        }
                    }
                }
            }
            @media (--max-fablet) {
                position: sticky;
                top: 0;
                z-index: 9999;
                .menuOpen & {
                    z-index: 8;
                }
                .filterButton {
                    position: relative;
                    padding-top: 0;
                    padding-left: 0;
                    padding-right: 0;
                    padding-top: var(--gutter);
                    .button {
                        .icon {
                            width: 24px;
                            height: 24px;
                            margin-right: 10px;
                            opacity: 1;
                        }
                        &:hover {
                            @media (hover: hover) {
                                .icon {
                                    width: 24px;
                                    height: 24px;
                                }
                            }
                        }
                    }
                }
            }

            .filterBlock {
                gap: 0;
                @media (max-width: 56em) {
                    background-color: var(--color1);
                }
                @media (--max-fablet) {
                    background-color: var(--color1);
                }
                .filterHeader {
                    line-height: 30px;
                    border-bottom: 2px solid var(--color-dark);
                    padding-bottom: var(--gutter);
                    @media (max-width: 56em) {
                        display: flex;
                        align-items: center;
                        justify-content: space-between;       
                    }
                    @media (--max-fablet) {
                        display: flex;
                        align-items: center;
                        justify-content: space-between;       
                    }
                    .title {
                        font-weight: 400;
                        font-size: var(--m-fontsize);
                    }
                    .close {
                        display: none;
                        @media (max-width: 56em) {
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            width: 40px;
                            height: 40px;
                            background: #fff;
                            border-radius: 8px;
                            svg {
                                width: 16px;
                            }
                        }
                        @media (--max-fablet) {
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            width: 40px;
                            height: 40px;
                            background: #fff;
                            border-radius: 8px;
                            svg {
                                width: 16px;
                            }
                        }
                    }
                }
            }
            .tags {
                padding-top: calc(var(--gutter) * 2);
                .header {
                    display: flex;
                    justify-content: space-between;
                    margin-bottom: var(--gutter);
                    .title {
                        font-size: var(--xs-fontsize);
                        font-weight: 600;
                    }
                    .button {
                        width: auto;
                        color: var(--color-dark);
                    }
                }
                .content {
                    .tag {
                        color: var(--color-dark);
                        background-color: var(--color-light);
                        padding: var(--button-padding);
                        border-radius: var(--button-radius);
                        justify-content: space-between;
                        width: 100%;
                        .icon {
                            opacity: 1;
                            width: 12px;
                            height: 12px;
                            margin-right: 0;
                        }
                    }
                }
                .buttons {
                    margin-top: var(--gutter);
                    .button {
                        width: 100%;
                        svg {
                            width: 20px;
                            height: 20px;
                            margin-right: 10px;
                        }
                    }
                }
            }
            .filterCategory {
                padding-bottom: calc(var(--gutter) * 2);
                padding-top: calc(var(--gutter) * 2);
                gap: calc(var(--gutter) * 2);
                border-bottom: 2px solid var(--color-dark);
                @media (max-width: 56em) {
                    gap: var(--gutter);
                }
                @media (--max-fablet) {
                    gap: var(--gutter);
                }
                fieldset {
                    legend {
                        font-size: var(--fontsize);
                        padding-bottom: 10px;
                        font-weight: 600;
                    }
                    label {
                        font-size: var(--xs-fontsize);
                        line-height: var(--xs-lineheight);
                        .text {
                            font-weight: 500;
                        }
                        .count {
                            background: none;
                            padding: 0;
                            border-radius: 0;
                            color: var(--color-dark);
                            opacity: 0.5;
                        }
                    }
                    .button {
                        text-align: left;
                        justify-content: flex-end;
                        flex-direction: row-reverse;
                        border-bottom: 0;
                        margin-top: 10px;
                        padding-bottom: 0;
                        font-weight: 600;
                        font-size: var(--xs-fontsize);
                    }
                }
            }
        }
        .filterGrid {
            .filterSettings {
                line-height: 30px;
                @media (max-width: 56em) {
                    gap: calc(var(--padding) / 2);
                    flex-direction: column;
                }
                @media (--max-fablet) {
                    gap: calc(var(--padding) / 2);
                    flex-direction: column;
                }
                .text {
                    font-weight: 400;
                    font-size: var(--m-fontsize);
                }   
                .sort {
                    .select {
                        display: flex;
                        flex-direction: row;
                        label {
                            font-size: var(--xs-fontsize);
                            font-weight: 600;
                            white-space: nowrap;
                        }
                        select {
                            background: none;
                            border: 0;
                            padding-bottom: 0;
                            padding-top: 0;
                            padding-left: 0;
                            font-size: var(--xs-fontsize);
                            padding-right: calc(var(--form-input-size) + 10px);
                            option {
                                position: relative;
                                padding-right: 50px;
                                font-size: var(--xs-fontsize);
                            }
                            &::picker-icon {
                                right: 0;
                            }
                        }
                        &::after {
                            right: 0;
                        }
                    }
                }    
            }
        }
    }

    .filterButtonMobile {
        margin-top: calc(var(--gutter) * 2);
        @media (min-width: 56em) {
            display: none;
        }
        @media (--min-fablet) {
            display: none;
        }
    }

    .pagination {
        .symbol {
            &:after {display: none;}
        }
    }
    .views {
        display: none;
    }


    .filterGrid {
        .item {
            &.jobalert {
                .block {
                    border: none;
                    .media {
                        position: absolute;
                        left: 0;
                        top: 0;
                        height: 100%;
                        width: 100%;
                        max-width: unset;
                        border-radius: var(--border-radius);
                        margin: unset;
                        &:before {
                            content: "";
                            position: absolute;
                            top: 0;
                            left: 0;
                            width: 100%;
                            height: 100%;
                            background-color: var(--color-dark);
                            opacity: 0.5;
                        }
                    }
                    .inner {
                        z-index: 9;
                        .content {
                            margin-top: var(--padding);
                            font-size: var(--fontsize);
                        }
                        .header {
                            display: flex;
                            flex-direction: row;
                            align-items: center;
                            .icon {
                                color: var(--color2);
                                width: 32px;
                                height: 32px;
                            }
                            .title {
                                line-height: 1;
                            }
                        }
                        .title, .content, .button {
                            color: var(--color-light);
                        }
                        @media (max-width: 56em) {
                            .header {
                                gap: calc(var(--padding) / 2);
                                .icon {
                                    width: 24px;
                                    height: 24px;
                                }
                            }
                            .footer {
                                width: 100%;
                            }
                        }
                        @media (--max-fablet) {
                            .header {
                                gap: calc(var(--padding) / 2);
                                .icon {
                                    width: 24px;
                                    height: 24px;
                                }
                            }
                            .footer {
                                width: 100%;
                            }
                        }
                        .button {
                            box-shadow: inset 0 0 0 2px var(--color-light);
                            gap: 10px;
                            .icon {
                                height: 24px;
                            }
                        }
                    }
                    @media (min-width: 56em) {
                        padding: calc(var(--padding) * 2);
                        .inner {
                            flex-direction: row;
                            align-items: flex-end;
                            .title {
                                font-size: calc(var(--m-fontsize) + 0.625rem);
                            }
                            .content {
                                font-size: var(--xs-fontsize);
                            }
                            .button {
                                width: max-content;
                            }
                        }
                    }
                    @media (--min-fablet) {
                        padding: calc(var(--padding) * 2);
                        .inner {
                            flex-direction: row;
                            align-items: flex-end;
                            .title {
                                font-size: calc(var(--m-fontsize) + 0.625rem);
                            }
                            .content {
                                font-size: var(--xs-fontsize);
                            }
                            .button {
                                width: max-content;
                            }
                        }
                    }
                }
            }
        }

    }
}