.mjsf-root,
.mjsf-root *{box-sizing:border-box}
.mjsf-root{direction:rtl;display:block;position:relative;color:var(--mjsf-text);font:inherit;width:100%}
.mjsf-root [hidden]{display:none!important}
.mjsf-root button,.mjsf-root input,.mjsf-root select{font:inherit}
.mjsf-root svg{display:block;width:20px;height:20px}

/* Compact filter bar */
.mjsf-panel{position:relative;z-index:35;background:var(--mjsf-panel);border:1px solid var(--mjsf-border);border-radius:var(--mjsf-radius);padding:12px;box-shadow:0 10px 30px rgba(15,23,42,.045)}
.mjsf-panel-head{display:none}
.mjsf-form{margin:0}
.mjsf-filter-row{display:flex;align-items:center;gap:var(--mjsf-gap);flex-wrap:wrap}
.mjsf-filter-title{height:var(--mjsf-filter-height);display:flex;align-items:center;gap:8px;padding:0 13px;color:var(--mjsf-primary);font-weight:800;white-space:nowrap}
.mjsf-filter-title svg{width:22px;height:22px}

.mjsf-group{position:relative;min-width:148px;flex:1 1 158px;max-width:220px;margin:0;padding:0;border:0}
.mjsf-dropdown-toggle{width:100%;height:var(--mjsf-filter-height);display:flex;align-items:center;gap:9px;padding:0 14px;border:1px solid var(--mjsf-border)!important;border-radius:calc(var(--mjsf-radius) - 3px)!important;background:#fff!important;color:var(--mjsf-text)!important;box-shadow:none!important;cursor:pointer;text-align:right;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.mjsf-dropdown-toggle:hover{border-color:color-mix(in srgb,var(--mjsf-primary) 35%,var(--mjsf-border))!important}
.mjsf-dropdown-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--mjsf-accent) 20%,transparent);outline-offset:1px}
.mjsf-dropdown-toggle.is-active,.mjsf-dropdown.is-open .mjsf-dropdown-toggle{border-color:var(--mjsf-accent)!important;background:color-mix(in srgb,var(--mjsf-accent) 5%,#fff)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--mjsf-accent) 10%,transparent)!important}
.mjsf-dropdown-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.mjsf-dropdown-copy b{font-size:13px;line-height:1.25;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mjsf-dropdown-copy small{font-size:11px;line-height:1.25;color:var(--mjsf-muted);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mjsf-dropdown-toggle.is-active .mjsf-dropdown-copy small{color:var(--mjsf-accent);font-weight:700}
.mjsf-dropdown-badge{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--mjsf-accent);color:#fff;font-size:11px;font-weight:800}
.mjsf-chevron{width:8px;height:8px;border-left:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(-45deg);opacity:.55;transition:transform .2s ease}
.mjsf-dropdown.is-open .mjsf-chevron{transform:rotate(135deg)}

.mjsf-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;width:min(var(--mjsf-dropdown-width),calc(100vw - 24px));z-index:1000;background:#fff;border:1px solid var(--mjsf-border);border-radius:var(--mjsf-radius);box-shadow:0 24px 65px rgba(15,23,42,.16);overflow:hidden;animation:mjsf-pop .16s ease both}
@keyframes mjsf-pop{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.mjsf-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--mjsf-border)}
.mjsf-menu-head strong{font-size:14px;font-weight:800}
.mjsf-menu-close{display:grid!important;place-items:center;width:30px!important;height:30px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:8px!important;background:#f8fafc!important;color:var(--mjsf-muted)!important;font-size:22px!important;line-height:1!important;cursor:pointer}
.mjsf-menu-body{padding:12px;max-height:var(--mjsf-dropdown-max-height);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.mjsf-menu-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-top:1px solid var(--mjsf-border);background:#fafafa}
.mjsf-menu-reset,.mjsf-menu-done{height:38px!important;min-height:0!important;padding:0 13px!important;border-radius:10px!important;cursor:pointer!important;font-size:12px!important;font-weight:750!important;box-shadow:none!important}
.mjsf-menu-reset{border:0!important;background:transparent!important;color:var(--mjsf-muted)!important}
.mjsf-menu-done{border:1px solid var(--mjsf-primary)!important;background:var(--mjsf-primary)!important;color:#fff!important}

/* Inputs inside dropdowns */
.mjsf-search-box,.mjsf-option-search{display:flex;align-items:center;gap:8px;height:46px;border:1px solid var(--mjsf-border);border-radius:11px;padding:0 12px;background:#fff}
.mjsf-search-box:focus-within,.mjsf-option-search:focus-within{border-color:var(--mjsf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--mjsf-accent) 10%,transparent)}
.mjsf-search-box svg,.mjsf-option-search svg{width:18px;height:18px;color:var(--mjsf-muted);flex:0 0 auto}
.mjsf-search-box input,.mjsf-option-search input{width:100%;height:42px!important;min-height:0!important;padding:0!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--mjsf-text)!important}
.mjsf-option-search{margin-bottom:10px;height:42px;background:#fafafa}
.mjsf-option-search input{height:38px!important;font-size:12px!important}

.mjsf-options,.mjsf-select-list{display:flex;flex-direction:column;gap:5px}
.mjsf-option,.mjsf-radio-option{position:relative;display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 10px;border:1px solid transparent;border-radius:10px;cursor:pointer;transition:background .15s ease,border-color .15s ease;color:var(--mjsf-text)}
.mjsf-option:hover,.mjsf-radio-option:hover{background:#f8fafc}
.mjsf-option input,.mjsf-radio-option input{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.mjsf-option>span:not(.mjsf-swatch):not(.mjsf-option-mark),.mjsf-radio-option>span{font-size:13px;font-weight:600;line-height:1.5;flex:1}
.mjsf-option small{color:var(--mjsf-muted);font-weight:500}
.mjsf-option-mark{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--mjsf-border);border-radius:7px;color:transparent;font-size:12px;font-weight:900;transition:.15s ease}
.mjsf-option:has(input:checked),.mjsf-radio-option:has(input:checked){background:color-mix(in srgb,var(--mjsf-accent) 7%,#fff);border-color:color-mix(in srgb,var(--mjsf-accent) 25%,var(--mjsf-border))}
.mjsf-option:has(input:checked) .mjsf-option-mark{background:var(--mjsf-accent);border-color:var(--mjsf-accent);color:#fff}
.mjsf-radio-option:before{content:"";width:20px;height:20px;border:1px solid var(--mjsf-border);border-radius:50%;box-shadow:inset 0 0 0 4px #fff;transition:.15s ease}
.mjsf-radio-option:has(input:checked):before{background:var(--mjsf-accent);border-color:var(--mjsf-accent)}
.mjsf-swatch{width:25px;height:25px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--mjsf-border);background:linear-gradient(135deg,#e5e7eb,#cbd5e1);flex:0 0 auto}
.mjsf-options.is-swatches{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.mjsf-options.is-swatches .mjsf-option{min-width:0}

.mjsf-price-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.mjsf-price-row label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--mjsf-muted);font-weight:650}
.mjsf-price-row input{width:100%;height:44px!important;min-height:0!important;border:1px solid var(--mjsf-border)!important;border-radius:10px!important;padding:0 11px!important;box-shadow:none!important;background:#fff!important;color:var(--mjsf-text)!important;text-align:right}
.mjsf-price-row input:focus{border-color:var(--mjsf-accent)!important;outline:0!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--mjsf-accent) 10%,transparent)!important}
.mjsf-menu-note{margin-top:10px;padding:9px 11px;border-radius:9px;background:#f8fafc;color:var(--mjsf-muted);font-size:11px;text-align:center}

/* Quick filters and actions */
.mjsf-quick-filter{height:var(--mjsf-filter-height);display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:0 13px;border:1px solid var(--mjsf-border);border-radius:calc(var(--mjsf-radius) - 3px);background:#fff;cursor:pointer;transition:.18s ease;white-space:nowrap}
.mjsf-quick-filter input{position:absolute;opacity:0;pointer-events:none}
.mjsf-quick-filter b{font-size:12px;font-weight:750}
.mjsf-quick-check{position:relative;width:34px;height:20px;border-radius:999px;background:#d8dee8;transition:.18s ease}
.mjsf-quick-check:after{content:"";position:absolute;top:3px;right:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.24);transition:.18s ease}
.mjsf-quick-filter.is-active{border-color:var(--mjsf-accent);background:color-mix(in srgb,var(--mjsf-accent) 5%,#fff);color:var(--mjsf-accent)}
.mjsf-quick-filter.is-active .mjsf-quick-check{background:var(--mjsf-accent)}
.mjsf-quick-filter.is-active .mjsf-quick-check:after{right:17px}

.mjsf-actions{display:flex;align-items:center;gap:7px;margin-right:auto;flex:0 0 auto}
.mjsf-apply-all,.mjsf-clear-all{height:var(--mjsf-filter-height)!important;min-height:0!important;padding:0 17px!important;border-radius:calc(var(--mjsf-radius) - 3px)!important;cursor:pointer!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;box-shadow:none!important;transition:.18s ease!important}
.mjsf-apply-all{position:relative;border:1px solid var(--mjsf-primary)!important;background:var(--mjsf-primary)!important;color:#fff!important}
.mjsf-apply-all:hover{filter:brightness(1.08)}
.mjsf-clear-all{border:1px solid var(--mjsf-border)!important;background:#fff!important;color:var(--mjsf-muted)!important}
.mjsf-clear-all:hover{border-color:#f0a3a3!important;color:#b42318!important;background:#fff8f7!important}
.mjsf-dirty-dot{position:absolute;top:7px;left:7px;width:7px;height:7px;border-radius:50%;background:#fbbf24;box-shadow:0 0 0 3px rgba(251,191,36,.2)}
.mjsf-apply-instant .mjsf-apply-all{display:none!important}

/* Results */
.mjsf-initial-filters_only:not(.has-results-area) .mjsf-panel{margin-bottom:0}
.mjsf-content{position:relative;z-index:1;margin-top:18px}
.mjsf-toolbar{min-height:34px;display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:12px}
.mjsf-result-count{color:var(--mjsf-muted);font-size:12px;white-space:nowrap}
.mjsf-result-count strong{color:var(--mjsf-text);font-size:14px;font-weight:850}
.mjsf-active-filters{display:flex;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap;flex:1}
.mjsf-active-filters button{display:flex!important;align-items:center!important;gap:7px!important;min-height:32px!important;padding:0 10px!important;border:1px solid color-mix(in srgb,var(--mjsf-accent) 15%,var(--mjsf-border))!important;border-radius:999px!important;background:var(--mjsf-chip)!important;color:var(--mjsf-primary)!important;box-shadow:none!important;cursor:pointer!important;font-size:11px!important;font-weight:700!important}
.mjsf-active-filters button b{font-size:16px;line-height:1;color:var(--mjsf-muted)}
.mjsf-results-wrap{position:relative;min-height:180px}
.mjsf-loading{position:absolute;inset:0;z-index:20;display:flex;align-items:flex-start;justify-content:center;gap:10px;padding-top:65px;background:var(--mjsf-panel);color:var(--mjsf-muted);font-size:12px;border-radius:var(--mjsf-radius)}
.mjsf-spinner{width:22px;height:22px;border:2px solid var(--mjsf-border);border-top-color:var(--mjsf-accent);border-radius:50%;animation:mjsf-spin .65s linear infinite}
@keyframes mjsf-spin{to{transform:rotate(360deg)}}
.mjsf-root.is-loading .mjsf-products{visibility:hidden}
.mjsf-root.has-error .mjsf-results-wrap:after{content:"خطا در دریافت محصولات";position:absolute;inset:15px auto auto 50%;transform:translateX(-50%);z-index:30;padding:9px 13px;border-radius:9px;background:#b42318;color:#fff;font-size:12px;font-weight:700}

.mjsf-products .woocommerce{width:100%}
.mjsf-products .products,.mjsf-filtered-grid{display:grid!important;grid-template-columns:repeat(var(--mjsf-filter-columns,4),minmax(0,1fr))!important;gap:var(--mjsf-gap,16px)!important;align-items:start!important;margin:0!important;padding:0!important;list-style:none!important;width:100%!important}
.mjsf-products .products>*:is(.product,.product-grid-item),.mjsf-filtered-grid>*:is(.product,.product-grid-item,.mjsf-filtered-product){display:block!important;float:none!important;clear:none!important;width:auto!important;max-width:none!important;min-width:0!important;flex:none!important;margin:0!important;box-sizing:border-box!important}
.mjsf-no-results{border:1px dashed var(--mjsf-border);border-radius:var(--mjsf-radius);padding:45px 20px;text-align:center;color:var(--mjsf-muted);background:#fafafa}
.mjsf-pagination{margin-top:24px;text-align:center}
.mjsf-pages{display:flex;justify-content:center;gap:6px;direction:ltr}
.mjsf-pages button{display:grid!important;place-items:center!important;min-width:40px!important;height:40px!important;min-height:0!important;padding:0 9px!important;border:1px solid var(--mjsf-border)!important;background:#fff!important;color:var(--mjsf-text)!important;border-radius:10px!important;cursor:pointer!important;box-shadow:none!important}
.mjsf-pages button.is-active{background:var(--mjsf-primary)!important;color:#fff!important;border-color:var(--mjsf-primary)!important}
.mjsf-load-more{height:46px!important;min-height:0!important;min-width:240px!important;padding:0 20px!important;border:1px solid var(--mjsf-primary)!important;border-radius:12px!important;background:var(--mjsf-primary)!important;color:#fff!important;font-weight:800!important;cursor:pointer!important;box-shadow:none!important}

/* Optional sidebar legacy layout */
.mjsf-layout-sidebar{display:grid;grid-template-columns:minmax(250px,290px) minmax(0,1fr);gap:20px;align-items:start}
.mjsf-layout-sidebar .mjsf-panel{position:sticky;top:20px}
.mjsf-layout-sidebar .mjsf-filter-row{display:flex;flex-direction:column;align-items:stretch}
.mjsf-layout-sidebar .mjsf-filter-title,.mjsf-layout-sidebar .mjsf-group,.mjsf-layout-sidebar .mjsf-quick-filter,.mjsf-layout-sidebar .mjsf-actions{width:100%;max-width:none;flex:none}
.mjsf-layout-sidebar .mjsf-actions{margin:0;display:grid;grid-template-columns:1fr 1fr}
.mjsf-layout-sidebar .mjsf-content{margin-top:0}

/* Mobile drawer */
.mjsf-mobile-open{display:none!important}
.mjsf-mobile-close{display:none!important}
.mjsf-overlay{position:fixed;inset:0;background:rgba(15,23,42,.56);backdrop-filter:blur(2px);z-index:99997}
.mjsf-lock{overflow:hidden!important}
.mjsf-mobile-count{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:var(--mjsf-accent);color:#fff;font-size:11px;font-weight:850}

.mjsf-root.mjsf-mobile-mode{display:block}
.mjsf-root.mjsf-mobile-mode .mjsf-mobile-open{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;height:48px!important;min-height:0!important;padding:0 15px!important;border:1px solid var(--mjsf-border)!important;border-radius:var(--mjsf-radius)!important;background:var(--mjsf-panel)!important;color:var(--mjsf-primary)!important;box-shadow:0 8px 25px rgba(15,23,42,.05)!important;font-weight:800!important;cursor:pointer!important}
.mjsf-root.mjsf-mobile-mode .mjsf-panel{position:fixed!important;z-index:99998;top:0;bottom:0;right:0;width:min(90vw,390px);padding:0;background:var(--mjsf-panel);border:0;border-radius:0;box-shadow:-20px 0 55px rgba(15,23,42,.17);overflow:auto;transform:translateX(105%);transition:transform .24s ease}
.mjsf-root.mjsf-mobile-mode.is-panel-open .mjsf-panel{transform:translateX(0)}
.mjsf-root.mjsf-mobile-mode .mjsf-panel-head{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:16px 17px;border-bottom:1px solid var(--mjsf-border);background:rgba(255,255,255,.96);backdrop-filter:blur(8px)}
.mjsf-root.mjsf-mobile-mode .mjsf-panel-head strong{font-size:15px;font-weight:850}
.mjsf-root.mjsf-mobile-mode .mjsf-mobile-close{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:9px!important;background:#f1f5f9!important;color:var(--mjsf-text)!important;font-size:25px!important;line-height:1!important;cursor:pointer!important}
.mjsf-root.mjsf-mobile-mode .mjsf-filter-row{display:flex;flex-direction:column;align-items:stretch;gap:9px;padding:14px 14px 90px}
.mjsf-root.mjsf-mobile-mode .mjsf-filter-title{display:none}
.mjsf-root.mjsf-mobile-mode .mjsf-group,.mjsf-root.mjsf-mobile-mode .mjsf-quick-filter{width:100%;max-width:none;flex:none}
.mjsf-root.mjsf-mobile-mode .mjsf-dropdown-menu{position:static;width:100%;margin-top:7px;transform:none!important;box-shadow:none;border-radius:11px;background:#fafafa;animation:none}
.mjsf-root.mjsf-mobile-mode .mjsf-menu-body{max-height:270px}
.mjsf-root.mjsf-mobile-mode .mjsf-actions{position:fixed;right:0;bottom:0;z-index:12;width:min(90vw,390px);display:grid;grid-template-columns:1.4fr 1fr;gap:8px;margin:0;padding:12px 14px;background:rgba(255,255,255,.96);border-top:1px solid var(--mjsf-border);backdrop-filter:blur(8px)}
.mjsf-root.mjsf-mobile-mode .mjsf-apply-all,.mjsf-root.mjsf-mobile-mode .mjsf-clear-all{width:100%}
.mjsf-root.mjsf-mobile-mode .mjsf-content{margin-top:15px}

.mjsf-native-hidden{display:none!important}

@media(max-width:1100px) and (min-width:901px){
  .mjsf-group{min-width:138px;max-width:190px}
  .mjsf-filter-title{display:none}
}
@media(max-width:620px){
  .mjsf-toolbar{align-items:flex-start;flex-direction:column}
  .mjsf-active-filters{width:100%}
  .mjsf-price-row{grid-template-columns:1fr}
}
.products.mjsf-native-loading{opacity:.45;pointer-events:none;transition:opacity .18s ease}
.products>.mjsf-native-empty{grid-column:1/-1!important;width:100%!important;float:none!important;clear:both!important;margin:0!important;padding:38px 20px!important;border:1px dashed var(--mjsf-border,#e5e7eb)!important;border-radius:14px!important;text-align:center!important;list-style:none!important;color:var(--mjsf-muted,#6b7280)!important;background:#fafafa!important}
.mjsf-native-pagination{margin-top:24px;text-align:center}
.mjsf-native-pagination .mjsf-pages{display:flex;justify-content:center;gap:6px;direction:ltr}
.mjsf-native-pagination button{min-width:40px;height:40px;padding:0 10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer}
.mjsf-native-pagination button.is-active{background:var(--mjsf-primary,#172554);color:#fff;border-color:var(--mjsf-primary,#172554)}

/* Filtered grid only: the original shop grid remains completely untouched before filtering. */
@media(max-width:1024px){.mjsf-filtered-grid,.mjsf-products .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:767px){.mjsf-filtered-grid,.mjsf-products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}}
