/*
 * Mythri by Viji — Final Shop Styles
 * Astra Pro + Elementor Pro Archive Products + WooCommerce + Filter Everything
 * Replace the previous shop.css completely.
 */

body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag {
    --mythri-wine: #2D1B24;
    --mythri-accent: #6B1F49;
    --mythri-border: #E8DDD7;
    --mythri-soft: #F5F8F7;
    --mythri-muted: #7C7276;
}

/* SHOP LAYOUT */
.mythri-shop-main {
    display: flex !important;
    align-items: flex-start !important;
    gap: 30px !important;
    padding-top: 20px !important;
}

.mythri-shop-sidebar {
    flex: 0 0 23% !important;
    width: 23% !important;
    max-width: 300px !important;
    padding: 28px 26px !important;
    background: #fff !important;
    border: 1px solid var(--mythri-border) !important;
    border-radius: 4px !important;
    box-shadow: none !important;
}

.mythri-shop-products {
    flex: 1 1 77% !important;
    width: 77% !important;
    min-width: 0 !important;
}

/* FILTER TITLE */
.mythri-filter-title {
    margin: 0 0 24px !important;
}

.mythri-filter-title .elementor-heading-title {
    font-family: "Cormorant Garamond", serif !important;
    font-size: 34px !important;
    line-height: 1.05 !important;
    font-weight: 600 !important;
    color: var(--mythri-wine) !important;
}

/* FILTER EVERYTHING — RESET INNER CARD */
.mythri-shop-sidebar .wpc-filters-widget-wrapper,
.mythri-shop-sidebar .wpc-filters-main-wrap,
.mythri-shop-sidebar .wpc-filter-set-widget,
.mythri-shop-sidebar .wpc-filter-content {
    width: 100% !important;
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* FILTER SECTIONS */
.mythri-shop-sidebar .wpc-filters-section {
    margin: 0 0 22px !important;
    padding: 0 0 22px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--mythri-border) !important;
}

.mythri-shop-sidebar .wpc-filters-section:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

.mythri-shop-sidebar .wpc-filter-title,
.mythri-shop-sidebar .wpc-filter-title button,
.mythri-shop-sidebar .wpc-filter-title a {
    font-family: "Cormorant Garamond", serif !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    color: var(--mythri-wine) !important;
    letter-spacing: 0 !important;
}

.mythri-shop-sidebar .wpc-filters-ul-list {
    margin-top: 13px !important;
}

.mythri-shop-sidebar .wpc-filters-ul-list li {
    margin-bottom: 9px !important;
}

.mythri-shop-sidebar .wpc-filters-main-wrap label,
.mythri-shop-sidebar .wpc-filters-main-wrap a {
    font-size: 14px !important;
    line-height: 1.35 !important;
    color: #3E3036 !important;
}

.mythri-shop-sidebar .wpc-term-count {
    color: #AAA1A5 !important;
}

/* CHECKBOXES */
.mythri-shop-sidebar input[type="checkbox"] {
    width: 19px !important;
    height: 19px !important;
    margin-right: 9px !important;
    accent-color: var(--mythri-accent);
}

/* PRICE FILTER — CONFIRMED FILTER EVERYTHING STRUCTURE */
.mythri-shop-sidebar .wpc-filters-range-wrapper {
    width: 100% !important;
}

.mythri-shop-sidebar .wpc-filters-range-inputs {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

.mythri-shop-sidebar .wpc-filters-range-inputs input {
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 44px !important;
    padding: 0 12px !important;
    border: 1px solid #D8DDE8 !important;
    border-radius: 5px !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--mythri-wine) !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
}

/* Remove browser clear/reveal controls only from price range inputs */
.mythri-shop-sidebar .wpc-filters-range-inputs input::-webkit-search-cancel-button,
.mythri-shop-sidebar .wpc-filters-range-inputs input::-webkit-search-decoration,
.mythri-shop-sidebar .wpc-filters-range-inputs input::-ms-clear,
.mythri-shop-sidebar .wpc-filters-range-inputs input::-ms-reveal {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.mythri-shop-sidebar .wpc-filters-range-slider-wrapper {
    width: 100% !important;
    margin: 18px 0 4px !important;
}

.mythri-shop-sidebar .wpc-filters-range-slider-wrapper .ui-slider,
.mythri-shop-sidebar .wpc-filters-range-slider-wrapper .noUi-target {
    height: 3px !important;
    border: 0 !important;
    background: var(--mythri-border) !important;
    box-shadow: none !important;
}

.mythri-shop-sidebar .wpc-filters-range-slider-wrapper .ui-slider-range,
.mythri-shop-sidebar .wpc-filters-range-slider-wrapper .noUi-connect {
    background: var(--mythri-accent) !important;
}

.mythri-shop-sidebar .wpc-filters-range-slider-wrapper .ui-slider-handle,
.mythri-shop-sidebar .wpc-filters-range-slider-wrapper .noUi-handle {
    width: 20px !important;
    height: 20px !important;
    top: -9px !important;
    border: 1px solid #CCD4E2 !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: 0 2px 6px rgba(45, 27, 36, .08) !important;
}

/* FILTER SEARCH — TARGET SEARCH ONLY */
.mythri-shop-sidebar .wpc-filter-layout-search-field input[type="search"],
.mythri-shop-sidebar .wpc-filter-layout-search-field input[type="text"] {
    width: 100% !important;
    max-width: 100% !important;
    height: 44px !important;
    padding: 0 10px 0 40px !important;
    border: 1px solid #D8DDE8 !important;
    border-radius: 5px !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--mythri-wine) !important;
    font-size: 13px !important;
    box-sizing: border-box !important;
    text-overflow: ellipsis !important;
}

/* SEE MORE */
.mythri-shop-sidebar .wpc-see-more-control {
    font-size: 13px !important;
    color: var(--mythri-wine) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

/* RESULT COUNT */
.mythri-shop-products .woocommerce-result-count {
    margin: 0 0 24px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #4B4246 !important;
}

/* ELEMENTOR ARCHIVE PRODUCTS */
.elementor-widget-woocommerce-archive-products {
    width: 100% !important;
}

.elementor-widget-woocommerce-archive-products ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 44px 20px !important;
    align-items: stretch !important;
}

.elementor-widget-woocommerce-archive-products ul.products::before,
.elementor-widget-woocommerce-archive-products ul.products::after {
    display: none !important;
}

.elementor-widget-woocommerce-archive-products ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    position: relative !important;
}

.elementor-widget-woocommerce-archive-products ul.products li.product img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    margin: 0 0 20px !important;
    background: var(--mythri-soft) !important;
}

/* PRODUCT TITLE */
.elementor-widget-woocommerce-archive-products .woocommerce-loop-product__title {
    min-height: 52px !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: 24px !important;
    line-height: 1.05 !important;
    font-weight: 600 !important;
    color: var(--mythri-wine) !important;
    text-transform: none !important;
}

/* PRICE */
.elementor-widget-woocommerce-archive-products ul.products li.product .price {
    min-height: 22px !important;
    margin: 0 0 10px !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    color: #44393D !important;
}

.elementor-widget-woocommerce-archive-products .price del {
    margin-right: 5px !important;
    opacity: .55 !important;
}

.elementor-widget-woocommerce-archive-products .price ins {
    color: var(--mythri-wine) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* ADD TO CART */
.elementor-widget-woocommerce-archive-products ul.products li.product .button {
    min-height: 38px !important;
    margin: 0 10px 0 0 !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    background: var(--mythri-accent) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    transition: background .25s ease, transform .25s ease !important;
}

.elementor-widget-woocommerce-archive-products ul.products li.product .button:hover {
    background: var(--mythri-wine) !important;
    transform: translateY(-1px);
}

/* SALE BADGE */
.elementor-widget-woocommerce-archive-products ul.products li.product .onsale {
    top: 18px !important;
    left: 18px !important;
    right: auto !important;
    min-width: auto !important;
    min-height: auto !important;
    margin: 0 !important;
    padding: 7px 12px !important;
    border: 1px solid var(--mythri-border) !important;
    border-radius: 2px !important;
    background: #FFF9F5 !important;
    color: var(--mythri-wine) !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    letter-spacing: .2px !important;
}

/* PAGINATION */
.woocommerce nav.woocommerce-pagination {
    margin-top: 55px !important;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li {
    border: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li {
    margin: 0 4px !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    min-width: 42px !important;
    height: 42px !important;
    padding: 11px !important;
    border: 1px solid var(--mythri-border) !important;
    color: var(--mythri-wine) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
    background: var(--mythri-wine) !important;
    color: #fff !important;
}

/* TABLET */
@media (max-width: 1024px) {
    .mythri-shop-main {
        gap: 20px !important;
    }

    .mythri-shop-sidebar {
        flex-basis: 30% !important;
        width: 30% !important;
        padding: 24px 20px !important;
    }

    .mythri-shop-products {
        width: 70% !important;
    }

    .elementor-widget-woocommerce-archive-products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .elementor-widget-woocommerce-archive-products .woocommerce-loop-product__title {
        min-height: 50px !important;
        font-size: 22px !important;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .mythri-shop-main {
        display: block !important;
        padding-top: 10px !important;
    }

    .mythri-shop-sidebar,
    .mythri-shop-products {
        width: 100% !important;
        max-width: none !important;
    }

    .mythri-shop-sidebar {
        margin-bottom: 30px !important;
        padding: 22px 18px !important;
    }

    .mythri-filter-title .elementor-heading-title {
        font-size: 30px !important;
    }

    .elementor-widget-woocommerce-archive-products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px 12px !important;
    }

    .elementor-widget-woocommerce-archive-products ul.products li.product img {
        margin-bottom: 14px !important;
    }

    .elementor-widget-woocommerce-archive-products .woocommerce-loop-product__title {
        min-height: 44px !important;
        font-size: 19px !important;
        line-height: 1.08 !important;
    }

    .elementor-widget-woocommerce-archive-products ul.products li.product .price {
        font-size: 14px !important;
    }

    .elementor-widget-woocommerce-archive-products ul.products li.product .button {
        padding: 10px 14px !important;
        font-size: 13px !important;
    }

    .elementor-widget-woocommerce-archive-products ul.products li.product .onsale {
        top: 10px !important;
        left: 10px !important;
    }
}


/* =========================================================
   =========================================================
   MOBILE FIX PASS — SEPTEMBER 2026
   =========================================================

   IMPORTANT NOTE ON THE RULES ABOVE
   ---------------------------------
   This archive is built with the Elementor Pro "Archive
   Products" widget. Its real class on the page is:

       .elementor-widget-wc-archive-products

   Every rule above targets
   .elementor-widget-woocommerce-archive-products
   and .mythri-shop-sidebar / .mythri-shop-products, none of
   which exist in the current template — so those rules have
   not been applying at all. They are left in place (harmless)
   in case the old template is ever restored.

   The block below is written against the markup that is
   actually rendered (Astra product cards inside the Elementor
   grid) and covers shop, category and tag archives.
   ========================================================= */

body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag {
    --mythri-wine: #2D1B24;
    --mythri-accent: #6B1F49;
    --mythri-border: #E8DDD7;
}


/* ---------------------------------------------------------
   ARCHIVE GRID — real widget class, all breakpoints
   --------------------------------------------------------- */

.elementor-widget-wc-archive-products ul.products,
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 42px 20px !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.post-type-archive-product ul.products::before,
body.post-type-archive-product ul.products::after,
body.tax-product_cat ul.products::before,
body.tax-product_cat ul.products::after,
body.tax-product_tag ul.products::before,
body.tax-product_tag ul.products::after {
    display: none !important;
}

/* Cards stretch to the full column and to the row height, so
   every "Add to cart" in a row sits on the same line */
body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
    position: relative !important;
}


/* ---------------------------------------------------------
   SHOP FILTER CARD — tighter on phones
   --------------------------------------------------------- */

@media (max-width: 767px) {
    body.post-type-archive-product .elementor-element-3264ef0a,
    body.tax-product_cat .elementor-element-3264ef0a,
    body.tax-product_tag .elementor-element-3264ef0a {
        padding: 16px !important;
    }

    .wpc-open-close-filters-button {
        min-height: 44px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 18px !important;
    }

    .wpc-filter-set-widget-title h2.widgettitle {
        font-size: 22px !important;
        margin: 0 0 16px !important;
    }

    .wpc-filters-main-wrap .wpc-filters-range-inputs input {
        height: 44px !important;
        font-size: 16px !important;   /* stops iOS zooming on focus */
    }
}


/* ---------------------------------------------------------
   BREAKPOINTS — 3 / 2 / 2 / 1 columns
   --------------------------------------------------------- */

@media (max-width: 1024px) {
    body.post-type-archive-product ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 34px 18px !important;
    }
}

@media (max-width: 767px) {
    body.post-type-archive-product ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 26px 12px !important;
    }
}

@media (max-width: 360px) {
    body.post-type-archive-product ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products {
        grid-template-columns: 1fr !important;
        gap: 22px 0 !important;
    }
}


/* =========================================================
   SECOND PASS — SEPTEMBER 2026
   Category / tag archives use a different Elementor
   container than the shop page, so the filter card kept its
   desktop 30px padding + 30px margins on phones and pushed
   the products a long way down.
   ========================================================= */

@media (max-width: 767px) {

    /* Shop page container (id) + category/tag container (id) */
    body.post-type-archive-product .elementor-element-3264ef0a,
    body.tax-product_cat .elementor-element-6b5579f2,
    body.tax-product_tag .elementor-element-6b5579f2 {
        padding: 14px !important;
        margin-block: 10px !important;
    }

    /* Same thing without relying on Elementor ids, for any
       template where the filter widget is moved */
    body.post-type-archive-product .e-con:has(> .elementor-widget-filter-everything-filters),
    body.tax-product_cat .e-con:has(> .elementor-widget-filter-everything-filters),
    body.tax-product_tag .e-con:has(> .elementor-widget-filter-everything-filters) {
        padding: 14px !important;
        margin-block: 10px !important;
    }
}


/* =========================================================
   THIRD PASS — SEPTEMBER 2026
   FILTER FONT SIZES — shop + category + tag archives
   Written against the live Filter Everything markup:
   .wpc-filters-main-wrap > .wpc-filter-set-widget-title h2
                          > .wpc-filters-section > .wpc-filter-header > .wpc-filter-title
                                                 > .wpc-filter-content ul.wpc-filters-ul-list li label
   Live sizes before: widget title 28px, section titles 22px,
   options 16px. Everything below is smaller and tighter.
   (No filter widget renders on single product pages, and
   /product/ is a 404 — nothing to do there.)
   ========================================================= */

/* Widget title "Shop Filters" */
body.post-type-archive-product .wpc-filter-set-widget-title h2.widgettitle,
body.tax-product_cat .wpc-filter-set-widget-title h2.widgettitle,
body.tax-product_tag .wpc-filter-set-widget-title h2.widgettitle {
    margin: 0 0 14px !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
    color: var(--mythri-wine) !important;
}

/* Section titles: Price / Categories / Collections / Design ... */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title button,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title a,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title button,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title a,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title button,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title a {
    font-family: "Poppins", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    letter-spacing: .1px !important;
    color: var(--mythri-wine) !important;
    text-transform: none !important;
}

/* Plugin stacks 12px (title) + 8px (header) + 8px (button) under
   every collapsed heading — collapse that to one 6px gap */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-header,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-header,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-header {
    margin: 0 0 6px !important;
    padding: 0 !important;
}

body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title button,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title button,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title button {
    margin: 0 !important;
    padding: 0 !important;
}

/* Collapse arrow scales with the smaller title */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title button svg,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title button svg,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title button svg {
    width: 12px !important;
    height: 12px !important;
}

/* Sections — less vertical space between them */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-section,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-section,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-section {
    margin: 0 0 12px !important;
    padding: 0 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--mythri-border) !important;
}

body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-section:last-child,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-section:last-child,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-section:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

/* Option rows: Necklaces (47) etc. */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-ul-list li,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-ul-list li,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-ul-list li {
    margin: 0 0 6px !important;
    font-size: 13.5px !important;
    line-height: 1.35 !important;
}

body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-ul-list li label,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-ul-list li a,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-term-name,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-ul-list li label,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-ul-list li a,
body.tax-product_cat .wpc-filters-main-wrap .wpc-term-name,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-ul-list li label,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-ul-list li a,
body.tax-product_tag .wpc-filters-main-wrap .wpc-term-name {
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    color: #3E3036 !important;
}

body.post-type-archive-product .wpc-filters-main-wrap .wpc-term-count,
body.tax-product_cat .wpc-filters-main-wrap .wpc-term-count,
body.tax-product_tag .wpc-filters-main-wrap .wpc-term-count {
    font-size: 12px !important;
    color: #AAA1A5 !important;
}

/* Checkboxes sized to the smaller text */
body.post-type-archive-product .wpc-filters-main-wrap input[type="checkbox"],
body.tax-product_cat .wpc-filters-main-wrap input[type="checkbox"],
body.tax-product_tag .wpc-filters-main-wrap input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    margin-right: 8px !important;
    accent-color: var(--mythri-accent);
}

/* Price inputs */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-range-inputs input,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-range-inputs input,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-range-inputs input {
    height: 38px !important;
    font-size: 14px !important;
}

/* See more / chips / rating text */
body.post-type-archive-product .wpc-filters-main-wrap .wpc-see-more-control,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-chips-list,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-chips-list li,
body.post-type-archive-product .wpc-filters-main-wrap .wpc-stars-rating-block .wpc-filter-content,
body.tax-product_cat .wpc-filters-main-wrap .wpc-see-more-control,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-chips-list,
body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-chips-list li,
body.tax-product_cat .wpc-filters-main-wrap .wpc-stars-rating-block .wpc-filter-content,
body.tax-product_tag .wpc-filters-main-wrap .wpc-see-more-control,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-chips-list,
body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-chips-list li,
body.tax-product_tag .wpc-filters-main-wrap .wpc-stars-rating-block .wpc-filter-content {
    font-size: 13px !important;
    line-height: 1.4 !important;
}

/* "Filters" open/close button */
.wpc-open-close-filters-button {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

/* TABLET */
@media (max-width: 1024px) {
    body.post-type-archive-product .wpc-filter-set-widget-title h2.widgettitle,
    body.tax-product_cat .wpc-filter-set-widget-title h2.widgettitle,
    body.tax-product_tag .wpc-filter-set-widget-title h2.widgettitle {
        font-size: 21px !important;
        margin-bottom: 12px !important;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    body.post-type-archive-product .wpc-filter-set-widget-title h2.widgettitle,
    body.tax-product_cat .wpc-filter-set-widget-title h2.widgettitle,
    body.tax-product_tag .wpc-filter-set-widget-title h2.widgettitle {
        font-size: 20px !important;
        margin-bottom: 10px !important;
    }

    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title,
    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filter-title button,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filter-title button,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filter-title button {
        font-size: 15px !important;
    }

    /* Keep options ≥14px on phones for tap comfort */
    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-ul-list li,
    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-ul-list li label,
    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-ul-list li a,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-ul-list li,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-ul-list li label,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-ul-list li a,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-ul-list li,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-ul-list li label,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-ul-list li a {
        font-size: 14px !important;
        margin-bottom: 8px !important;
    }

    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-section,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-section,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-section {
        margin-bottom: 10px !important;
        padding-bottom: 10px !important;
    }

    /* Price inputs: 16px stops iOS zoom-on-focus (overrides 14px above) */
    body.post-type-archive-product .wpc-filters-main-wrap .wpc-filters-range-inputs input,
    body.tax-product_cat .wpc-filters-main-wrap .wpc-filters-range-inputs input,
    body.tax-product_tag .wpc-filters-main-wrap .wpc-filters-range-inputs input {
        height: 42px !important;
        font-size: 16px !important;
    }
}

/* TABLET LAYOUT — the Elementor sidebar container collapses to
   ~160px at 768–1024px and the headings wrap ("Stock / Status").
   Give it a proper third of the row and let products take the rest. */
@media (min-width: 768px) and (max-width: 1024px) {
    body.post-type-archive-product .e-con:has(> .elementor-widget-filter-everything-filters),
    body.tax-product_cat .e-con:has(> .elementor-widget-filter-everything-filters),
    body.tax-product_tag .e-con:has(> .elementor-widget-filter-everything-filters) {
        flex: 0 0 32% !important;
        width: 32% !important;
        max-width: none !important;
        padding: 18px 16px !important;
    }

    body.post-type-archive-product .e-con:has(> .elementor-widget-wc-archive-products),
    body.tax-product_cat .e-con:has(> .elementor-widget-wc-archive-products),
    body.tax-product_tag .e-con:has(> .elementor-widget-wc-archive-products) {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }
}
