/* In brands archive pages we do not have brand filters as multiselect so we hide the checkboxes */
body.archive.tax-product_brand #content .wc-brand-list-layered-nav-product_brand .wc-layered-nav-term a::before,
body.archive.tax-product_brand .astra-off-canvas-sidebar .wc-brand-list-layered-nav-product_brand .wc-layered-nav-term a::before {
    content: none;
}

#content,
.astra-off-canvas-sidebar {

    .woocommerce-no-products-found {
        margin-top: 30px;
    }

    .mt-grouped-filters .mt-filter-group {
        margin-bottom: 10px;
        padding: 16px;
        border-radius: 16px;
        border: 1px solid #FFF;
        background: rgba(253, 253, 253, 0.60);
    }

    .mt-grouped-filters .mt-filter-group-toggle {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
        background: none;
        border: none;
        border-radius: 0;
        padding: 12px 0;
        cursor: pointer;
        text-align: left;
        outline: none;
        box-shadow: none;
    }

    .mt-grouped-filters .mt-filter-group-toggle:hover {
        color: #000;
    }

    .mt-grouped-filters .mt-filter-group-title {
        font-size: 16px;
        font-weight: 600;
        color: #333;
    }

    .mt-grouped-filters .mt-filter-group-icon {
        width: 12px;
        height: 12px;
        position: relative;
        transition: transform 0.3s ease;
    }

    /* Arrow icon using CSS borders */

    .mt-grouped-filters .mt-filter-group-icon::after {
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-right: 2px solid #333;
        border-bottom: 2px solid #333;
        transform: rotate(45deg);
        position: absolute;
        top: 0;
        left: 0;
    }

    /* Rotate arrow when open */

    .mt-grouped-filters .mt-filter-group.open .mt-filter-group-icon {
        transform: rotateX(180deg);
    }

    /* --- Accordion Animation (Grid Method) --- */

    .mt-grouped-filters .mt-filter-group-content {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 0.3s ease-out;
    }

    .mt-grouped-filters .mt-filter-group.open .mt-filter-group-content {
        grid-template-rows: 1fr;
    }

    .mt-grouped-filters .ast-filter-content-inner {
        padding: 0;
    }

    .mt-grouped-filters .mt-filter-group-inner {
        overflow: hidden;
        margin: 0;
        padding: 0;
    }

    /* ----------------------------------------- */

    /* Hide native widget titles inside the group */

    .mt-grouped-filters .mt-filter-group-inner .widget-title,
    .mt-grouped-filters .mt-filter-group-inner .widgettitle,
    .mt-grouped-filters .mt-filter-group-content .widget-title,
    .mt-grouped-filters .mt-filter-group-content .widgettitle {
        display: none !important;
    }

    .mt-grouped-filters .mt-filter-group-inner .widget {
        padding: 16px 0 0 0;
    }

    /* --- Checkbox Style for Filter List --- */

    .mt-grouped-filters .woocommerce-widget-layered-nav-list {
        display: flex;
        flex-direction: column;
        padding: 0;
        margin: 0;
        list-style: none;
    }

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item {
        padding: 6px 0;
        font-size: 14px;
    }

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before {
        content: none;
    }

    /* The Link (acts as label) */

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a {
        display: flex;
        margin: 0;
        padding: 0;
        border: none;
        text-decoration: none;
        color: #555;
        transition: color 0.2s;
        align-items: flex-start;
        gap: 10px; /* Space between box and text */
    }

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a:hover {
        color: #000;
    }

    /* Pseudo-Checkbox */

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a::before {
        content: '';
        display: flex;
        width: 24px;
        height: 24px;
        border: 1px solid #959595;
        border-radius: 0;
        background: #FDFDFD;
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
        transition: all 0.2s;
    }

    /* Chosen State (Active) */

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a {
        font-weight: 600;
        color: #000;
    }

    .mt-grouped-filters .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before {
        content: '✓';
        background-color: #000;
        border-color: #000;
        color: #fff;
        font-size: 12px;
    }

    .mt-grouped-filters .count {
        font-size: 12px;
        color: #999;
        background: #f5f5f5;
        padding: 2px 6px;
        border-radius: 10px;
        white-space: nowrap;
    }

    /* --- Brand Layered Nav (checkbox style) --- */

    .mt-grouped-filters .widget_brand_nav ul[class*="wc-brand-list-layered-nav"] {
        display: flex;
        flex-direction: column;
        padding: 0;
        margin: 0;
        list-style: none;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term {
        padding: 6px 0;
        font-size: 14px;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term::before {
        content: none;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term a {
        display: flex;
        margin: 0;
        padding: 0;
        border: none;
        text-decoration: none;
        color: #555;
        transition: color 0.2s;
        align-items: center;
        gap: 10px;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term a:hover {
        color: #000;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term a::before {
        content: '';
        display: flex;
        width: 24px;
        height: 24px;
        border: 1px solid #959595;
        border-radius: 0;
        background: #FDFDFD;
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
        transition: all 0.2s;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term.chosen a {
        font-weight: 600;
        color: #000;
    }

    .mt-grouped-filters .widget_brand_nav .wc-layered-nav-term.chosen a::before {
        content: '✓';
        background-color: #000;
        border-color: #000;
        color: #fff;
        font-size: 12px;
    }

    /* --- Misc Filters (Price, Active, Categories) --- */

    .mt-grouped-filters .mt-filter-misc {
        margin-bottom: 20px;
    }

    /* Active Filters (Tags style at top) */

    .mt-grouped-filters .mt-active-filters .widget_layered_nav_filters ul {
        padding: 0;
        margin: 0;
        list-style: none;
        overflow: hidden;
    }

    .mt-grouped-filters .mt-active-filters .widget_layered_nav_filters ul li {
        float: left;
        margin-right: 10px;
        margin-bottom: 10px;
    }

    .mt-grouped-filters .mt-active-filters .widget_layered_nav_filters ul li a {
        border: 1px solid #ddd;
        padding: 4px 10px;
        border-radius: 4px;
        background: #f9f9f9;
        font-size: 13px;
        display: flex;
        align-items: center;
        color: #333;
        text-decoration: none;
    }

    .mt-grouped-filters .mt-active-filters .widget_layered_nav_filters ul li a::before {
        content: "✕";
        font-size: 10px;
        margin-right: 6px;
        color: #cc0000;
    }

    /* Price Filter */

    .mt-grouped-filters .mt-price-filter .price_slider_amount {
        text-align: right;
        line-height: 2.4;
        font-size: 0.8751em;
    }

    .mt-grouped-filters .mt-price-filter .price_slider_amount .button {
        float: left;
        padding: 0.4em 1em;
        font-size: 1em;
    }

    /* --- Category Widget Refinements (Track 09) --- */
    .mt-grouped-filters .widget_product_categories ul.product-categories {
        padding: 0;
        margin: 0;
        list-style: none;
    }

    .mt-grouped-filters .widget_product_categories ul.product-categories li.cat-item {
        padding: 4px 0;
        margin: 0;
        position: relative;
    }

    .mt-grouped-filters .widget_product_categories ul.product-categories li.cat-item a {
        color: #555;
        text-decoration: none;
        transition: color 0.2s;
        display: inline-block;
        width: calc(100% - 40px); /* Leave space for count */
        vertical-align: middle;
    }

    .mt-grouped-filters .widget_product_categories ul.product-categories li.cat-item a:hover {
        color: #000;
    }

    .mt-grouped-filters .widget_product_categories ul.product-categories li.current-cat > a {
        font-weight: 600;
        color: #000;
    }

    /* Sub-categories — collapsed by default */
    .mt-grouped-filters .widget_product_categories ul.children {
        display: none;
        margin: 4px 0 4px 12px;
        padding-left: 10px;
        border-left: 1px solid #ddd;
    }

    .mt-grouped-filters .widget_product_categories li.cat-item.open > ul.children {
        display: block;
    }

    /* Count alignment */
    .mt-grouped-filters .widget_product_categories .count {
        float: right;
        margin-left: 5px;
        vertical-align: middle;
    }

    /* Category Toggle Button */
    .mt-grouped-filters .widget_product_categories .mt-cat-toggle {
        display: inline-block;
        width: 24px;
        height: 24px;
        cursor: pointer;
        position: absolute;
        right: 0;
        top: 2px;
        text-align: center;
        line-height: 24px;
        z-index: 10;
    }

    .mt-grouped-filters .widget_product_categories .mt-cat-toggle::after {
        content: '+';
        font-size: 16px;
        color: #999;
        font-weight: normal;
    }

    .mt-grouped-filters .widget_product_categories li.cat-item.open > .mt-cat-toggle::after {
        content: '−'; /* Minus sign */
    }

    /* Adjust link width to accommodate toggle */
    .mt-grouped-filters .widget_product_categories li.cat-item:has(> .mt-cat-toggle) > a {
        /* width is already calculated, but maybe need adjustments */
    }

    /* --- Clear All Filters Button --- */

    .mt-grouped-filters .mt-clear-filters {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-top: 8px;
        padding: 12px 0;
        font-size: 14px;
        font-weight: 500;
        color: #333;
        text-decoration: none;
        border-top: 1px solid rgba(0, 0, 0, 0.08);
        transition: color 0.2s;
    }

    .mt-grouped-filters .mt-clear-filters::before {
        content: '✕';
        font-size: 10px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 18px;
        height: 18px;
        border: 1px solid currentColor;
        border-radius: 50%;
        flex-shrink: 0;
    }

    .mt-grouped-filters .mt-clear-filters:hover {
        color: #000;
    }

    .ast-shop-filter-close {
        width: 24px;
        height: 24px;
        top: 24px;
        right: 16px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        opacity: 1;
        color: black;
    }

    p:has(.mt-filters-title) {
        margin: 0;
        padding: 0;
    }

    .mt-filters-title {
        display: inline-block;
        font-size: 18px;
        font-weight: 500;
        line-height: 1;
        color: black;
    }
}

.astra-off-canvas-sidebar-wrapper {
    p:has(.mt-filters-title) {
        margin: 0;
        padding: 0;
    }

    .mt-filters-title {
        display: inline-block;
        position: absolute;
        top: 24px;
        left: 16px;
        font-size: 18px;
        font-weight: 500;
        line-height: 1;
        color: black;
    }

    .astra-off-canvas-sidebar {
        padding: 80px 16px 16px 16px !important;
        background-color: #F1F1F1 !important;

        .mt-filter-group {
            padding-top: 4px !important;
            padding-bottom: 4px !important;
        }
    }
}
