.mbpf-v1-wrap{--mbpf-border:rgba(0,0,0,.12);--mbpf-muted:rgba(0,0,0,.58);--mbpf-soft:#f8f8f8;--mbpf-text:inherit;max-width:1500px;color:var(--mbpf-text);font:inherit;box-sizing:border-box}
.mbpf-v1-wrap *{box-sizing:border-box}
.mbpf-v1-wrap.is-frontend-preview{display:none;width:calc(100% - 32px);max-width:1500px;margin:24px auto 32px;padding:0;background:transparent;border:0;clear:both}
.mbpf-v1-wrap.is-frontend-preview.is-preview-hidden{display:none!important}
.mbpf-v1-preview-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 10px}
.mbpf-v1-preview-topbar .mbpf-v1-preview-badge{margin:0}
.mbpf-v1-preview-close{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;padding:0;border:1px solid var(--mbpf-border);border-radius:50%;background:#fff;color:inherit;font:inherit;font-size:24px;line-height:1;cursor:pointer}
.mbpf-v1-preview-close:hover{border-color:rgba(0,0,0,.35)}
.mbpf-v1-preview-reopen{position:fixed;z-index:999997;left:16px;bottom:18px;padding:9px 13px;border:1px solid rgba(0,0,0,.18);background:#fff;color:#111;font:inherit;font-size:12px;line-height:1.2;box-shadow:0 3px 16px rgba(0,0,0,.12);cursor:pointer}
.mbpf-v1-preview-reopen[hidden]{display:none!important}
.mbpf-v1-wrap.is-frontend-preview.is-mounted{display:block}
.mbpf-v1-preview-badge{display:inline-flex;align-items:center;margin:0 0 10px;padding:4px 8px;border:1px solid var(--mbpf-border);border-radius:2px;background:transparent;color:var(--mbpf-muted);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.mbpf-v1-wrap.is-frontend-preview>h1{margin:0 0 6px;font:inherit;font-size:20px;font-weight:500;line-height:1.3}
.mbpf-v1-description{margin:0 0 18px;color:var(--mbpf-muted);font-size:12px;line-height:1.5}
.mbpf-v1-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 20px;padding:12px 0;border-top:1px solid var(--mbpf-border);border-bottom:1px solid var(--mbpf-border);background:transparent}
.mbpf-v1-toolbar label{margin:0;font-size:12px}
.mbpf-v1-toolbar select,.mbpf-facet-search{min-height:38px;border:1px solid var(--mbpf-border);border-radius:0;background:#fff;color:inherit;font:inherit;font-size:13px;padding:7px 10px;box-shadow:none}
.mbpf-v1-toolbar .button,#mbpf-clear{min-height:38px;padding:7px 14px;border:1px solid var(--mbpf-border);border-radius:0;background:#fff;color:inherit;font:inherit;font-size:12px;line-height:1.2;text-decoration:none;box-shadow:none;cursor:pointer}
.mbpf-v1-toolbar .button:hover,#mbpf-clear:hover{border-color:rgba(0,0,0,.35)}
#mbpf-status{font-size:12px;color:var(--mbpf-muted)}
.mbpf-v1-layout{display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:34px;align-items:start}
.mbpf-v1-facets{display:flex;flex-direction:column;gap:0;position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;padding:0 18px 0 0;border-right:1px solid var(--mbpf-border)}
.mbpf-v1-facet{padding:0 0 18px;margin:0 0 18px;border:0;border-bottom:1px solid var(--mbpf-border);background:transparent}
.mbpf-v1-facet:last-child{border-bottom:0}
.mbpf-v1-facet h2{margin:0 0 12px;font:inherit;font-size:13px;font-weight:600;line-height:1.3;text-transform:none}
.mbpf-facet-search{width:100%;margin:0 0 10px}
.mbpf-v1-options{display:flex;flex-direction:column;gap:1px;max-height:260px;overflow:auto;padding-right:4px}
.mbpf-v1-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:center;margin:0;padding:6px 0;cursor:pointer;font-size:12px;line-height:1.35}
.mbpf-v1-option input{width:15px;height:15px;margin:0;accent-color:#111}
.mbpf-v1-option.is-disabled{opacity:.38;cursor:default}
.mbpf-v1-count{min-width:24px;text-align:right;color:var(--mbpf-muted);font-size:11px;font-variant-numeric:tabular-nums}
.mbpf-v1-main{min-width:0}
.mbpf-v1-summary{display:flex;align-items:baseline;gap:5px;margin:0 0 10px;font-size:13px}
#mbpf-total{font-size:20px;font-weight:500}
#mbpf-time{color:var(--mbpf-muted);font-size:10px}
.mbpf-v1-active{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px}
.mbpf-v1-chip{appearance:none;border:1px solid var(--mbpf-border);border-radius:0;background:#fff;color:inherit;padding:6px 9px;font:inherit;font-size:11px;line-height:1.2;cursor:pointer}
.mbpf-v1-chip:hover{border-color:rgba(0,0,0,.35)}
.mbpf-v1-results.is-loading{opacity:.45;pointer-events:none}
/* Results deliberately use WooCommerce/Luchiana native ul.products + content-product template. */
.mbpf-v1-results ul.products{margin-top:0}
.mbpf-v1-pagination{display:flex;gap:5px;justify-content:center;align-items:center;margin:26px 0 10px}
.mbpf-v1-pagination .button{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--mbpf-border);border-radius:0;background:#fff;color:inherit;font:inherit;font-size:12px;box-shadow:none;cursor:pointer}
.mbpf-v1-pagination .button-primary{background:#111;color:#fff;border-color:#111}
.mbpf-v1-debug{margin-top:24px;padding-top:12px;border-top:1px solid var(--mbpf-border);color:var(--mbpf-muted);font-size:11px}
.mbpf-v1-debug pre{overflow:auto;padding:10px;background:var(--mbpf-soft)}
.mbpf-v1-empty{padding:36px 20px;text-align:center;border:1px solid var(--mbpf-border);background:transparent;font-size:13px}
.mbpf-v1-mobile-toggle,.mbpf-v1-mobile-head{display:none}
/* WP admin fallback styling */
.mbpf-v1-wrap.is-admin-screen{max-width:1500px}
.mbpf-v1-wrap.is-admin-screen .mbpf-v1-facet{background:#fff;padding:12px;border:1px solid #dcdcde}
.mbpf-v1-wrap.is-admin-screen .mbpf-v1-facets{gap:12px;border-right:0;padding-right:4px}
@media(max-width:900px){
 .mbpf-v1-layout{grid-template-columns:1fr;gap:18px}
 .mbpf-v1-mobile-toggle{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin:0 0 16px;border:1px solid var(--mbpf-border);background:#fff;color:inherit;font:inherit;font-size:13px;cursor:pointer}
 .mbpf-v1-facets{position:fixed;z-index:999999;left:0;top:0;bottom:0;width:min(88vw,360px);max-height:none;overflow:auto;padding:18px;background:#fff;border:0;border-right:1px solid var(--mbpf-border);transform:translateX(-102%);transition:transform .2s ease;box-shadow:0 0 30px rgba(0,0,0,.12)}
 .mbpf-v1-wrap.is-filter-open .mbpf-v1-facets{transform:translateX(0)}
 .mbpf-v1-mobile-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid var(--mbpf-border)}
 .mbpf-v1-mobile-head button{appearance:none;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer}
 .mbpf-v1-wrap.is-filter-open:after{content:"";position:fixed;z-index:999998;inset:0;background:rgba(0,0,0,.35)}
 .mbpf-v1-facet{padding-bottom:16px;margin-bottom:16px}
 .mbpf-v1-toolbar{align-items:stretch}
 .mbpf-v1-toolbar>*{flex:1 1 150px}
}

@media(max-width:600px){
 .mbpf-v1-wrap.is-frontend-preview{width:calc(100% - 24px);margin-left:auto;margin-right:auto}
 .mbpf-v1-preview-reopen{left:12px;bottom:12px}
}

/* 0.1.6 storefront integration: use the existing Luchiana sidebar instead of a floating test surface. */
.mbpf-sidebar-payload{display:none!important}
.mbpf-sidebar-widget{margin-top:0}
.mbpf-sidebar-widget .widget-title{margin-bottom:18px}
.mbpf-sidebar-widget .woocommerce-widget-layered-nav-list{margin:0;padding:0;list-style:none}
.mbpf-sidebar-widget .mbpf-v1-option{display:block;margin:0;padding:0;border:0}
.mbpf-sidebar-widget .mbpf-v1-option label{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;column-gap:13px;min-height:39px;margin:0;cursor:pointer;font:inherit}
.mbpf-sidebar-widget .mbpf-v1-option input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:0;border:0;background:#faf8f4;box-shadow:none;position:relative;cursor:pointer}
.mbpf-sidebar-widget .mbpf-v1-option input[type="checkbox"]:checked:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #382f32;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.mbpf-sidebar-widget .mbpf-v1-option-name{min-width:0}
.mbpf-sidebar-widget .mbpf-v1-count{margin-left:5px;color:inherit;opacity:.75;font-size:.85em;font-variant-numeric:tabular-nums}
.mbpf-sidebar-widget .mbpf-v1-option.is-disabled{opacity:.35}
.mbpf-sidebar-search-wrap{position:relative;margin:0 0 14px}
.mbpf-sidebar-search-wrap input{display:block;width:100%;height:44px;margin:0;padding:0 38px 0 16px;border:0!important;border-radius:0!important;background:#faf8f4!important;color:inherit;font:inherit;font-size:13px;box-shadow:none!important;outline:none}
.mbpf-sidebar-search-wrap input::placeholder{color:#999}
.mbpf-sidebar-search-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:17px;line-height:1;pointer-events:none}
.mbpf-sidebar-more,.mbpf-native-more{display:inline-block;margin:10px 0 0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mbpf-sidebar-widget li[hidden],.widget_layered_nav li[hidden]{display:none!important}
.widget_layered_nav .mbpf-zero{display:none!important}
.mbpf-archive-grid.mbpf-grid-loading{opacity:.45;pointer-events:none;transition:opacity .15s ease}
.mbpf-native-pagination button.page-numbers{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.mbpf-native-pagination button.page-numbers.current{cursor:default}
.mbpf-mount-failed{display:block!important;margin:16px;padding:12px;border:1px solid #c00;background:#fff;color:#900;font-size:12px}
.mbpf-sidebar-admin-note{display:none}

@media(max-width:900px){
 .mbpf-sidebar-widget .mbpf-v1-option label{min-height:42px}
 .mbpf-sidebar-search-wrap input{height:46px}
}

/* 0.1.7: Luchiana draws its own faux checkbox on layered-nav items. Our custom facets already contain a real checkbox, so suppress the theme pseudo-control only inside MBPF widgets. */
.mbpf-sidebar-widget .wc-layered-nav-term::before,
.mbpf-sidebar-widget .wc-layered-nav-term:before,
.mbpf-sidebar-widget .woocommerce-widget-layered-nav-list__item::before,
.mbpf-sidebar-widget .woocommerce-widget-layered-nav-list__item:before,
.mbpf-sidebar-widget .mbpf-v1-option > label::before,
.mbpf-sidebar-widget .mbpf-v1-option > label:before{
    content:none!important;
    display:none!important;
}


/* 0.1.8: tighter vertical rhythm between MyBelle sidebar facet blocks. */
.mbpf-sidebar-widget{
    margin-top:0!important;
    margin-bottom:20px!important;
    padding-top:0!important;
    padding-bottom:20px!important;
}
.mbpf-sidebar-widget + .mbpf-sidebar-widget{margin-top:0!important;}


/* 0.1.10: storefront clear action and archive-only loading scope. */
.mbpf-sidebar-clear{display:block;width:100%;min-height:46px;margin:0 0 20px;padding:0 14px;border:1px solid #382f32;background:transparent;color:inherit;font:inherit;font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.mbpf-sidebar-clear:hover{background:#382f32;color:#fff}

/* 0.2.0: MyBelle owns the storefront filter UI. Luchiana only provides the surrounding sidebar/product-card design. */
.mbpf-own-filter{display:block;margin:0;padding:0}
.mbpf-own-filter[hidden]{display:none!important}
.mbpf-own-filter .mbpf-sidebar-clear{margin:0 0 18px}
.mbpf-own-filter .mbpf-sidebar-widget{
    margin:0!important;
    padding:18px 0 16px!important;
    border-top:1px solid rgba(56,47,50,.07);
    border-bottom:0!important;
    background:transparent!important;
}
.mbpf-own-filter .mbpf-sidebar-widget:first-of-type{border-top:0}
.mbpf-own-filter .mbpf-sidebar-widget .widget-title{
    margin:0 0 13px!important;
    padding:0!important;
    font:inherit!important;
    font-size:17px!important;
    font-weight:400!important;
    line-height:1.25!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
    color:inherit!important;
}
.mbpf-own-filter .mbpf-sidebar-options{margin:0!important;padding:0!important;list-style:none!important}
.mbpf-own-filter .mbpf-v1-option{display:block!important;margin:0!important;padding:0!important;border:0!important}
.mbpf-own-filter .mbpf-v1-option label{
    display:grid!important;
    grid-template-columns:20px minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:11px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0!important;
    cursor:pointer!important;
    font:inherit!important;
    font-size:14px!important;
    line-height:1.3!important;
    color:inherit!important;
}
.mbpf-own-filter .mbpf-v1-option input[type="checkbox"]{
    appearance:none!important;
    -webkit-appearance:none!important;
    width:20px!important;
    height:20px!important;
    margin:0!important;
    border:1px solid rgba(56,47,50,.22)!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    position:relative!important;
    cursor:pointer!important;
}
.mbpf-own-filter .mbpf-v1-option input[type="checkbox"]:checked:after{
    content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;
    border:solid #382f32;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)
}
.mbpf-own-filter .mbpf-v1-option input[type="checkbox"]:hover{border-color:rgba(56,47,50,.5)!important}
.mbpf-own-filter .mbpf-v1-option input[type="checkbox"]:checked{border-color:#382f32!important;background:#faf8f4!important}
.mbpf-own-filter .mbpf-v1-option-name{min-width:0;font-size:inherit!important;line-height:inherit!important}
.mbpf-own-filter .mbpf-v1-count{
    min-width:28px!important;margin:0!important;text-align:right!important;
    font:inherit!important;font-size:10px!important;line-height:1!important;
    color:inherit!important;opacity:.65!important;font-variant-numeric:tabular-nums
}
.mbpf-own-filter .mbpf-sidebar-search-wrap{position:relative;margin:0 0 9px!important}
.mbpf-own-filter .mbpf-sidebar-search-wrap input{
    display:block;width:100%;height:42px;margin:0;padding:0 38px 0 14px;
    border:0!important;border-radius:0!important;background:#faf8f4!important;
    color:inherit;font:inherit!important;font-size:13px!important;box-shadow:none!important;outline:none!important
}
.mbpf-own-filter .mbpf-sidebar-search-icon{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:16px;pointer-events:none}
.mbpf-own-filter .mbpf-sidebar-more{
    margin:8px 0 0!important;padding:0!important;border:0!important;background:transparent!important;
    color:inherit!important;font:inherit!important;font-size:11px!important;letter-spacing:.08em!important;
    text-transform:uppercase!important;text-decoration:underline!important;text-underline-offset:3px!important;cursor:pointer!important
}
.mbpf-own-filter .is-zero-hidden{display:none!important}
.mbpf-own-filter .mbpf-price-fields{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:end;margin:0 0 10px}
.mbpf-own-filter .mbpf-price-fields label{display:block;margin:0;font:inherit;font-size:10px;line-height:1.2;color:#999}
.mbpf-own-filter .mbpf-price-fields label span{display:block;margin:0 0 5px}
.mbpf-own-filter .mbpf-price-fields input{
    width:100%;height:40px;margin:0;padding:0 8px;border:1px solid rgba(56,47,50,.28)!important;
    border-radius:0!important;background:#fff!important;color:inherit;font:inherit!important;font-size:12px!important;box-shadow:none!important
}
.mbpf-own-filter .mbpf-price-sep{align-self:end;padding:0 0 12px;font-size:12px;color:#999}
.mbpf-own-filter .mbpf-sidebar-clear{
    width:100%;min-height:44px;padding:0 12px;border:1px solid #382f32!important;border-radius:0!important;
    background:transparent!important;color:inherit!important;font:inherit!important;font-size:10px!important;
    letter-spacing:.16em!important;text-transform:uppercase!important;box-shadow:none!important;cursor:pointer!important
}
.mbpf-own-filter .mbpf-sidebar-clear:hover{background:#382f32!important;color:#fff!important}
.mbpf-grid-loading{opacity:.5;pointer-events:none;transition:opacity .15s ease}

@media(max-width:900px){
    .mbpf-own-filter .mbpf-sidebar-widget{padding:15px 0 13px!important}
    .mbpf-own-filter .mbpf-v1-option label{min-height:38px!important}
}

.mbpf-sidebar-status{font-size:12px;line-height:1.4;margin:0 0 12px;color:#9b3a3a;min-height:0}.mbpf-sidebar-status:empty{display:none}

/* 0.2.4: exact Luchiana archive grid integration + dual-handle price range. */
.mbpf-own-filter .mbpf-price-slider{
    position:relative;
    height:28px;
    margin:2px 0 12px;
}
.mbpf-own-filter .mbpf-price-slider-track{
    position:absolute;
    left:0;right:0;top:13px;
    height:2px;
    background:rgba(56,47,50,.18);
}
.mbpf-own-filter .mbpf-price-slider-fill{
    position:absolute;
    top:0;bottom:0;
    background:#382f32;
}
.mbpf-own-filter .mbpf-price-range{
    position:absolute;
    left:0;top:4px;
    width:100%;height:20px;
    margin:0!important;padding:0!important;
    background:transparent!important;
    pointer-events:none;
    -webkit-appearance:none;
    appearance:none;
    border:0!important;
    box-shadow:none!important;
}
.mbpf-own-filter .mbpf-price-range::-webkit-slider-runnable-track{height:2px;background:transparent;border:0}
.mbpf-own-filter .mbpf-price-range::-moz-range-track{height:2px;background:transparent;border:0}
.mbpf-own-filter .mbpf-price-range::-webkit-slider-thumb{
    -webkit-appearance:none;
    width:14px;height:14px;margin-top:-6px;
    border:1px solid #382f32;border-radius:50%;
    background:#fff;cursor:pointer;pointer-events:auto;
}
.mbpf-own-filter .mbpf-price-range::-moz-range-thumb{
    width:14px;height:14px;
    border:1px solid #382f32;border-radius:50%;
    background:#fff;cursor:pointer;pointer-events:auto;
}
.mbpf-own-filter .mbpf-price-range-min{z-index:3}
.mbpf-own-filter .mbpf-price-range-max{z-index:4}



/* 0.3.1 – keep Luchiana recently-viewed block inside the catalogue content width.
   This is deliberately scoped to the shop recently-viewed section only. */
.woocommerce-shop .c-product__products--recently {
    width: calc(100% - 80px);
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}
.woocommerce-shop .c-product__products--recently .c-product-grid__wrap {
    margin-left: 0;
    margin-right: 0;
}
@media (max-width: 900px) {
    .woocommerce-shop .c-product__products--recently {
        width: calc(100% - 30px);
    }
}
