.usac-aief-filter{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(15,23,42,.06)}.usac-aief-filter-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:18px}.usac-aief-filter-head a{font-size:13px;color:#64748b;text-decoration:none}.usac-aief-filter-grid{display:grid;grid-template-columns:repeat(var(--usac-aief-cols,2),minmax(0,1fr));gap:12px}.usac-aief-field{display:flex;flex-direction:column;gap:6px}.usac-aief-field>span{font-size:12px;font-weight:700;color:#475569}.usac-aief-field select,.usac-aief-field input{width:100%;min-height:42px;border:1px solid #dbe2ea;border-radius:10px;padding:8px 10px;background:#fff}.usac-aief-field select[multiple]{min-height:100px}.usac-aief-submit{width:100%;margin-top:14px;border:0;border-radius:12px;background:#111827;color:#fff;font-weight:700;min-height:46px;cursor:pointer}@media(max-width:767px){.usac-aief-filter-grid{grid-template-columns:1fr}.usac-aief-filter{padding:14px;border-radius:14px}}

/* 1.3.3 FRONTEND STYLE ISOLATION -----------------------------------------
 * Elementor Site Settings / theme-wide button rules can be more specific
 * than the filter component's own controls on the public site. The editor
 * preview does not always reproduce the same cascade. These rules scope a
 * small compatibility reset only to the USA Candy filter widget so public
 * and editor rendering stay identical without touching product cards. */
.elementor .usac-aief-shop button,
.elementor .usac-aief-shop select,
.elementor .usac-aief-shop input {
    font-family: inherit !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    box-shadow: none !important;
}

/* Header actions */
.elementor .usac-aief-shop button.usac-aief-reset {
    display: inline-block !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--usac-aief-red) !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}
.elementor .usac-aief-shop button.usac-aief-reset:hover,
.elementor .usac-aief-shop button.usac-aief-reset:focus {
    background: transparent !important;
    color: var(--usac-aief-red) !important;
    border: 0 !important;
    outline: none !important;
}
.elementor .usac-aief-shop button.usac-aief-drawer-close {
    display: none !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--usac-aief-line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: var(--usac-aief-navy) !important;
    font-size: 27px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* Accordion heading */
.elementor .usac-aief-shop button.usac-aief-section-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 17px 20px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: var(--usac-aief-navy) !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
    text-align: left !important;
    text-decoration: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}
.elementor .usac-aief-shop button.usac-aief-section-title:hover,
.elementor .usac-aief-shop button.usac-aief-section-title:focus {
    background: #fff !important;
    color: var(--usac-aief-navy) !important;
    border: 0 !important;
    outline: none !important;
}

/* Secondary text buttons inside facets */
.elementor .usac-aief-shop button.usac-aief-show-more,
.elementor .usac-aief-shop button.usac-aief-rating-clear {
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}
.elementor .usac-aief-shop button.usac-aief-show-more {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 8px 0 !important;
    color: var(--usac-aief-blue) !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    text-align: left !important;
}
.elementor .usac-aief-shop button.usac-aief-rating-clear {
    display: inline-block !important;
    width: auto !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    color: var(--usac-aief-red) !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
}

/* Load more button */
.elementor .usac-aief-shop button.usac-aief-load-more {
    display: grid !important;
    grid-template-columns: 42px 1fr 30px !important;
    align-items: center !important;
    gap: 12px !important;
    width: auto !important;
    min-width: min(100%,440px) !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border: 1px solid #d9e2ee !important;
    border-radius: 18px !important;
    background: #fff !important;
    color: var(--usac-aief-navy) !important;
    font-size: inherit !important;
    line-height: normal !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: 0 9px 24px rgba(7,27,73,.07) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}
.elementor .usac-aief-shop button.usac-aief-load-more:hover {
    background: #fff !important;
    color: var(--usac-aief-navy) !important;
    border-color: #b9c7db !important;
    box-shadow: 0 13px 30px rgba(7,27,73,.11) !important;
}

/* Sort control: protect against Elementor global form-control styles. */
.elementor .usac-aief-shop .usac-aief-sort select {
    width: auto !important;
    min-width: 190px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 40px 0 14px !important;
    border: 1px solid #dce2ec !important;
    border-radius: 13px !important;
    background-color: #fff !important;
    color: #263550 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

/* Filter checkboxes must not inherit theme input dimensions. */
.elementor .usac-aief-shop .usac-aief-check input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Mobile controls retain their dedicated design. */
@media (max-width: 767px) {
    .elementor .usac-aief-shop button.usac-aief-drawer-close {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .elementor .usac-aief-shop button.usac-aief-mobile-filter-button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        width: auto !important;
        min-width: 0 !important;
        min-height: 44px !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 14px !important;
        flex: 1 1 0 !important;
        border: 1px solid #dce3ed !important;
        border-radius: 14px !important;
        background: #fff !important;
        color: var(--usac-aief-navy) !important;
        font-size: 13px !important;
        line-height: 1 !important;
        font-weight: 850 !important;
        box-shadow: 0 5px 16px rgba(7,27,73,.06) !important;
        appearance: none !important;
        -webkit-appearance: none !important;
    }
    .elementor .usac-aief-shop button.usac-aief-mobile-apply {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 50px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 12px 16px !important;
        border: 0 !important;
        border-radius: 15px !important;
        background: var(--usac-aief-navy) !important;
        color: #fff !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
        font-weight: 800 !important;
        box-shadow: none !important;
        appearance: none !important;
        -webkit-appearance: none !important;
    }
    .elementor .usac-aief-shop .usac-aief-sort-mobile select {
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
    }
    .elementor .usac-aief-shop button.usac-aief-section-title {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .elementor .usac-aief-shop button.usac-aief-load-more {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* 1.3.16+ FACET LABEL DESCENDER FIX */
.elementor .usac-aief-shop .usac-aief-check{min-height:39px!important;padding-top:6px!important;padding-bottom:6px!important;line-height:1.34!important;overflow:visible!important}
.elementor .usac-aief-shop .usac-aief-check .usac-aief-option-name{display:block!important;min-width:0!important;padding-top:2px!important;padding-bottom:3px!important;line-height:1.34!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-rendering:optimizeLegibility!important;-webkit-font-smoothing:antialiased!important}
.elementor .usac-aief-shop .usac-aief-check .usac-aief-option-count{line-height:1!important}
