/**
 * Promtovar catalog filter chips v2.
 * Visual layer only; Porto/WooCommerce own filtering behavior.
 */

.elementor-widget-porto_sb_filter.shop-loop-before {
	--pt-filter-accent:#466467;
	--pt-filter-accent-soft:#edf3f3;
	--pt-filter-text:#243033;
	--pt-filter-muted:#7a8588;
	--pt-filter-border:#d6dfe0;
	--pt-filter-border-hover:#9aabad;
	--pt-filter-line:#e8eded;
	--pt-filter-surface:#fff;
	--pt-filter-hover:#f8fafa;
	box-sizing:border-box;
	margin:0 0 20px;
	padding:0;
	background:transparent;
}

.elementor-widget-porto_sb_filter .porto-product-filters.style2 { margin:0; }
.elementor-widget-porto_sb_filter .porto-product-filters-body {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px;
}
.elementor-widget-porto_sb_filter .porto-product-filters .widget {
	position:relative;
	box-sizing:border-box;
	flex:0 0 auto;
	width:auto;
	margin:0;
	padding:0;
	border:1px solid var(--pt-filter-border);
	border-radius:7px;
	background:var(--pt-filter-surface);
	color:var(--pt-filter-text);
	font-size:13.5px;
	transition:border-color .16s ease,background-color .16s ease,color .16s ease;
}
.elementor-widget-porto_sb_filter .porto-product-filters .widget:hover {
	border-color:var(--pt-filter-border-hover);
	background:var(--pt-filter-hover);
}
.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened {
	border-color:var(--pt-filter-accent);
	background:var(--pt-filter-accent-soft);
	color:var(--pt-filter-accent);
}
.elementor-widget-porto_sb_filter .porto-product-filters .widget.pt-filter-active {
	border-color:var(--pt-filter-accent);
	background:var(--pt-filter-accent);
	color:#fff;
}
@media (min-width:992px) {
	.elementor-widget-porto_sb_filter .porto-product-filters .widget-title {
		position:relative;
		box-sizing:border-box;
		display:flex;
		align-items:center;
		gap:8px;
		width:auto;
		min-width:118px;
		height:38px;
		margin:0;
		padding:0 34px 0 38px;
		border:0;
		background:transparent;
		color:inherit!important;
		font-size:13.5px!important;
		font-weight:500;
		line-height:38px;
		letter-spacing:0;
		text-transform:none;
		white-space:nowrap;
		cursor:pointer;
		transition:none;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget-title::before {
		content:"";
		position:absolute;
		top:50%;
		left:13px;
		width:16px;
		height:16px;
		margin:0;
		border:0;
		background-position:center;
		background-repeat:no-repeat;
		background-size:16px 16px;
		transform:translateY(-50%);
	}
	.elementor-widget-porto_sb_filter #woocommerce_product_categories-2>.widget-title::before {
		background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2' y='2' width='4' height='4' rx='.7' stroke='%23466467' stroke-width='1.3'/%3E%3Crect x='10' y='2' width='4' height='4' rx='.7' stroke='%23466467' stroke-width='1.3'/%3E%3Crect x='2' y='10' width='4' height='4' rx='.7' stroke='%23466467' stroke-width='1.3'/%3E%3Crect x='10' y='10' width='4' height='4' rx='.7' stroke='%23466467' stroke-width='1.3'/%3E%3C/svg%3E");
	}
	.elementor-widget-porto_sb_filter #woocommerce_price_filter-2>.widget-title::before {
		background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 7.1V3.3c0-.44.36-.8.8-.8h3.8l6.4 6.4-4.6 4.6-6.4-6.4Z' stroke='%23466467' stroke-width='1.3' stroke-linejoin='round'/%3E%3Ccircle cx='5.25' cy='5.25' r='1' fill='%23466467'/%3E%3C/svg%3E");
	}
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3>.widget-title::before {
		background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 11.5 11.5 3 14 5.5 5.5 14 3 11.5Z' stroke='%23466467' stroke-width='1.3' stroke-linejoin='round'/%3E%3Cpath d='m9.5 5 1.5 1.5M7.5 7l1.5 1.5M5.5 9l1.5 1.5' stroke='%23466467' stroke-width='1.1'/%3E%3C/svg%3E");
	}
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2>.widget-title::before {
		border-radius:50%;
		background:var(--pt-filter-accent);
		box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.pt-filter-active>.widget-title::before {
		filter:brightness(0) invert(1);
	}
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2.pt-filter-active>.widget-title::before {
		background:#fff;
		box-shadow:none;
		filter:none;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget-title::after {
		content:"";
		position:absolute;
		top:50%;
		right:14px;
		width:6px;
		height:6px;
		border:solid currentColor;
		border-width:0 1.5px 1.5px 0;
		transform:translateY(-70%) rotate(45deg);
		transition:transform .16s ease;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>.widget-title::after {
		transform:translateY(-25%) rotate(225deg);
	}
	.elementor-widget-porto_sb_filter .pt-filter-chip-count {
		display:inline-flex;
		align-items:center;
		justify-content:center;
		min-width:20px;
		height:20px;
		margin-left:1px;
		padding:0 5px;
		border-radius:10px;
		background:rgba(255,255,255,.96);
		color:var(--pt-filter-accent);
		font-size:11px;
		font-weight:700;
		line-height:20px;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>.pwb-dropdown-widget,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>.pwb-filter-products,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>.tagcloud,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>div:not(.pwb-filter-products)>ul,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>form,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>ul {
		box-sizing:border-box;
		min-width:250px;
		max-width:min(360px,calc(100vw - 32px));
		max-height:360px;
		margin-top:8px;
		padding:12px 14px;
		border:1px solid var(--pt-filter-border);
		border-radius:8px;
		background:#fff;
		color:var(--pt-filter-text);
		box-shadow:0 8px 24px rgba(31,48,51,.08);
		overflow-x:hidden;
		overflow-y:auto;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget_product_categories>ul { min-width:310px; }
	.elementor-widget-porto_sb_filter .porto-product-filters .widget_price_filter>form {
		min-width:330px;
		overflow:visible;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .filter-item-list { min-width:290px; }
}

.elementor-widget-porto_sb_filter .porto-product-filters .widget>div>ul,
.elementor-widget-porto_sb_filter .porto-product-filters .widget>ul {
	font-size:13.5px;
	font-weight:400;
	letter-spacing:0;
	text-transform:none;
}
.elementor-widget-porto_sb_filter .porto-product-filters .widget li { border-top:0; }
.elementor-widget-porto_sb_filter .porto-product-filters .widget li>a {
	color:var(--pt-filter-text);
	line-height:1.4;
	transition:color .14s ease;
}
.elementor-widget-porto_sb_filter .porto-product-filters .widget li>a:hover,
.elementor-widget-porto_sb_filter .porto-product-filters .wc-layered-nav-term.chosen>a {
	color:var(--pt-filter-accent);
}
.elementor-widget-porto_sb_filter .porto-product-filters .wc-layered-nav-term.chosen>a { font-weight:600; }


/* Keep long filter values inside dropdown/off-canvas bounds. */
.elementor-widget-porto_sb_filter .porto-product-filters .widget li>a {
	max-width:100%;
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:normal;
}
.elementor-widget-porto_sb_filter .porto-product-filters .count {
	color:var(--pt-filter-muted);
	font-size:12px;
	font-weight:400;
}
.elementor-widget-porto_sb_filter .porto-product-filters .filter-color {
	width:18px;
	height:18px;
	border:1px solid rgba(36,48,51,.18);
	box-shadow:none;
}
.elementor-widget-porto_sb_filter .porto-product-filters .chosen .filter-color {
	outline:2px solid var(--pt-filter-accent);
	outline-offset:2px;
}
.elementor-widget-porto_sb_filter .widget_price_filter #min_price,
.elementor-widget-porto_sb_filter .widget_price_filter #max_price {
	box-sizing:border-box;
	min-width:88px;
	height:36px;
	padding:6px 10px;
	border:1px solid var(--pt-filter-border);
	border-radius:6px;
	background:#fff;
	color:var(--pt-filter-text);
	box-shadow:none;
	font-size:13px;
}
.elementor-widget-porto_sb_filter .widget_price_filter .price_slider {
	height:3px;
	margin-top:18px;
	background:#dfe5e5;
}
.elementor-widget-porto_sb_filter .widget_price_filter .ui-slider-range { background:var(--pt-filter-accent); }
.elementor-widget-porto_sb_filter .widget_price_filter .ui-slider-handle {
	width:14px;
	height:14px;
	top:-6px;
	border:2px solid #fff;
	background:var(--pt-filter-accent);
	box-shadow:0 0 0 1px var(--pt-filter-accent);
}
.elementor-widget-porto_sb_filter .widget_price_filter .button {
	min-height:34px;
	padding:7px 12px;
	border:1px solid var(--pt-filter-accent);
	border-radius:6px;
	background:var(--pt-filter-accent);
	color:#fff;
	font-size:12px;
	font-weight:600;
	letter-spacing:0;
	text-transform:none;
}


/* Size filter controls: category gate, search, clear and native Porto/WooCommerce reset. */
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-row {
	position:sticky;
	top:-12px;
	z-index:2;
	box-sizing:border-box;
	display:grid!important;
	float:none!important;
	clear:both;
	grid-template-columns:minmax(0,1fr) auto;
	gap:8px;
	width:100%!important;
	max-width:none!important;
	min-width:0;
	margin:0 0 10px!important;
	padding:12px 0 2px!important;
	border:0!important;
	background:#fff;
	list-style:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-field {
	position:relative;
	box-sizing:border-box;
	display:block;
	width:100%;
	min-width:0;
	height:38px;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input {
	box-sizing:border-box;
	display:block;
	width:100%;
	min-width:0;
	height:38px;
	margin:0;
	padding:0 42px 0 11px;
	border:1px solid var(--pt-filter-border);
	border-radius:6px;
	background:#fff;
	color:var(--pt-filter-text);
	box-shadow:none;
	font:inherit;
	font-size:13px;
	line-height:36px;
	letter-spacing:0;
	outline:none;
	appearance:none;
	-webkit-appearance:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input::placeholder {
	color:#8a9698;
	opacity:1;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input:hover {
	border-color:var(--pt-filter-border-hover);
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input:focus {
	border-color:var(--pt-filter-accent);
	box-shadow:0 0 0 1px var(--pt-filter-accent);
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input::-webkit-search-cancel-button {
	display:none;
	-webkit-appearance:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-clear {
	position:absolute;
	top:4px;
	right:4px;
	box-sizing:border-box;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px!important;
	min-width:0!important;
	max-width:30px!important;
	height:30px!important;
	min-height:0!important;
	max-height:30px!important;
	margin:0!important;
	padding:0 0 2px!important;
	border:0!important;
	border-radius:5px!important;
	background:#f1f5f5!important;
	color:#5f7476!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:21px!important;
	font-weight:400!important;
	line-height:1!important;
	text-transform:none!important;
	appearance:none;
	-webkit-appearance:none;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-clear:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-clear:focus-visible {
	background:#e8efef;
	color:var(--pt-filter-accent);
	outline:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-clear:active {
	background:#dfe9e9;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset {
	box-sizing:border-box;
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	min-width:auto!important;
	height:38px;
	margin:0!important;
	padding:0 11px!important;
	border:1px solid var(--pt-filter-border)!important;
	border-radius:6px!important;
	background:#fff!important;
	color:var(--pt-filter-accent)!important;
	font-size:12.5px!important;
	font-weight:600;
	line-height:36px!important;
	white-space:nowrap;
	text-decoration:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset:focus {
	border-color:var(--pt-filter-accent)!important;
	background:#fff!important;
	color:var(--pt-filter-accent)!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-empty,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-category-hint {
	box-sizing:border-box;
	float:none!important;
	clear:both;
	width:100%!important;
	margin:0!important;
	padding:10px 2px!important;
	border:0!important;
	color:var(--pt-filter-muted);
	font-size:12.5px;
	line-height:1.45;
	list-style:none;
	white-space:normal;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3.pt-size-awaiting-category .widget-title {
	color:var(--pt-filter-muted);
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-field[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-clear[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-empty[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .wc-layered-nav-term[hidden] {
	display:none!important;
}

@media (max-width:767px) {
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-row {
		grid-template-columns:minmax(0,1fr);
		gap:6px;
	}

	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset {
		width:100%!important;
	}
}



/* Size options: compact marketplace-style chips over native WooCommerce layered-nav links. */
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list {
	display:flex!important;
	flex-wrap:wrap;
	align-items:flex-start;
	align-content:flex-start;
	gap:6px;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term {
	box-sizing:border-box;
	float:none!important;
	flex:0 0 auto;
	max-width:100%;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a {
	box-sizing:border-box;
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	max-width:100%;
	min-width:36px!important;
	min-height:34px;
	margin:0!important;
	padding:6px 10px!important;
	border:1px solid var(--pt-filter-border)!important;
	border-radius:6px!important;
	background:#fff!important;
	color:var(--pt-filter-text)!important;
	box-shadow:none!important;
	font-size:13px!important;
	font-weight:500!important;
	line-height:1.25!important;
	text-align:center;
	text-decoration:none!important;
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:normal;
	transition:border-color .14s ease,background-color .14s ease,color .14s ease;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a:hover {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent-soft)!important;
	color:var(--pt-filter-accent)!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a:focus-visible {
	border-color:var(--pt-filter-accent)!important;
	background:#fff!important;
	color:var(--pt-filter-accent)!important;
	outline:2px solid rgba(70,100,103,.24);
	outline-offset:1px;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term.chosen > a {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent)!important;
	color:#fff!important;
	font-weight:600!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term.chosen > a:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term.chosen > a:focus-visible {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent)!important;
	color:#fff!important;
}

@media (max-width:767px) {
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list {
		gap:7px 6px;
	}

	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a {
		min-width:40px!important;
		min-height:38px;
		padding:8px 11px!important;
		font-size:13.5px!important;
	}
}



/* Color options: text chips over native WooCommerce/Porto layered-nav links. */
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list {
	display:flex!important;
	flex-wrap:wrap;
	align-items:flex-start;
	align-content:flex-start;
	gap:6px;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term {
	box-sizing:border-box;
	float:none!important;
	flex:0 0 auto;
	max-width:100%;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a {
	position:relative;
	box-sizing:border-box;
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	width:auto!important;
	max-width:100%;
	height:auto!important;
	min-width:36px!important;
	min-height:34px;
	margin:0!important;
	padding:6px 10px!important;
	border:1px solid var(--pt-filter-border)!important;
	border-radius:6px!important;
	outline:none!important;
	background:#fff!important;
	color:var(--pt-filter-text)!important;
	box-shadow:none!important;
	font-size:13px!important;
	font-weight:500!important;
	line-height:1.25!important;
	text-align:center;
	text-indent:0!important;
	text-decoration:none!important;
	white-space:normal!important;
	overflow-wrap:anywhere;
	word-break:normal;
	transition:border-color .14s ease,background-color .14s ease,color .14s ease;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a.filter-color::before {
	display:none!important;
	content:none!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a.filter-color > span {
	display:inline!important;
	min-width:0!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	color:inherit!important;
	font:inherit!important;
	line-height:inherit!important;
	text-align:inherit!important;
	text-indent:0!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a:hover {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent-soft)!important;
	color:var(--pt-filter-accent)!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a:focus-visible {
	border-color:var(--pt-filter-accent)!important;
	background:#fff!important;
	color:var(--pt-filter-accent)!important;
	outline:2px solid rgba(70,100,103,.24)!important;
	outline-offset:1px;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term.chosen > a {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent)!important;
	color:#fff!important;
	font-weight:600!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term.chosen > a:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term.chosen > a:focus-visible {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent)!important;
	color:#fff!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-row {
	position:sticky;
	top:-12px;
	z-index:2;
	box-sizing:border-box;
	display:grid!important;
	float:none!important;
	clear:both;
	flex:0 0 100%!important;
	grid-template-columns:minmax(0,1fr) auto;
	gap:8px;
	width:100%!important;
	max-width:none!important;
	min-width:0;
	margin:0 0 10px!important;
	padding:12px 0 2px!important;
	border:0!important;
	background:#fff!important;
	list-style:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-field {
	position:relative;
	box-sizing:border-box;
	display:block;
	width:100%;
	min-width:0;
	height:38px;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input {
	box-sizing:border-box;
	display:block;
	width:100%;
	min-width:0;
	height:38px;
	margin:0;
	padding:0 42px 0 11px;
	border:1px solid var(--pt-filter-border);
	border-radius:6px;
	background:#fff;
	color:var(--pt-filter-text);
	box-shadow:none;
	font:inherit;
	font-size:13px;
	line-height:36px;
	letter-spacing:0;
	outline:none;
	appearance:none;
	-webkit-appearance:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input::-webkit-search-cancel-button {
	display:none;
	-webkit-appearance:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-clear {
	position:absolute;
	top:4px;
	right:4px;
	box-sizing:border-box;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px!important;
	min-width:0!important;
	max-width:30px!important;
	height:30px!important;
	min-height:0!important;
	max-height:30px!important;
	margin:0!important;
	padding:0 0 2px!important;
	border:0!important;
	border-radius:5px!important;
	background:#f1f5f5!important;
	color:#5f7476!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:21px!important;
	font-weight:400!important;
	line-height:1!important;
	text-transform:none!important;
	appearance:none;
	-webkit-appearance:none;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-clear:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-clear:focus-visible {
	background:#e8efef!important;
	color:var(--pt-filter-accent)!important;
	outline:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-clear:active {
	background:#dfe9e9!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-empty {
	box-sizing:border-box;
	float:none!important;
	clear:both;
	flex:0 0 100%!important;
	width:100%!important;
	margin:0!important;
	padding:10px 2px!important;
	border:0!important;
	color:var(--pt-filter-muted);
	font-size:12.5px;
	line-height:1.45;
	list-style:none;
	white-space:normal;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-field[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-clear[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-reset[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-empty[hidden],
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .wc-layered-nav-term[hidden] {
	display:none!important;
}

@media (max-width:767px) {
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list {
		gap:7px 6px;
	}

	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 > ul.woocommerce-widget-layered-nav-list > li.wc-layered-nav-term > a {
		min-width:40px!important;
		min-height:38px;
		padding:8px 11px!important;
		font-size:13.5px!important;
	}

	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-row {
		grid-template-columns:minmax(0,1fr);
		gap:6px;
	}
}


/* Price filter: two direct-entry fields. Native slider/form controls remain transport-only. */
.elementor-widget-porto_sb_filter .widget_price_filter #porto_price_filter_chart,
.elementor-widget-porto_sb_filter .widget_price_filter .price_slider,
.elementor-widget-porto_sb_filter .widget_price_filter .price_slider_amount {
	display:none!important;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-controls {
	display:block;
	box-sizing:border-box;
	width:100%;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-fields {
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	gap:8px;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-field {
	display:block;
	min-width:0;
	margin:0;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input {
	box-sizing:border-box;
	display:block!important;
	width:100%;
	min-width:0;
	height:40px;
	margin:0;
	padding:0 11px;
	border:1px solid var(--pt-filter-border);
	border-radius:6px;
	background:#fff;
	color:var(--pt-filter-text);
	box-shadow:none;
	font:inherit;
	font-size:13.5px;
	line-height:38px;
	letter-spacing:0;
	text-align:left;
	outline:none;
	appearance:none;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input::placeholder {
	color:#8a9698;
	opacity:1;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input:hover {
	border-color:var(--pt-filter-border-hover);
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input:focus {
	border-color:var(--pt-filter-accent);
	box-shadow:0 0 0 1px var(--pt-filter-accent);
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-actions {
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:10px;
	min-height:18px;
	margin-top:9px;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-error {
	display:none;
	flex:1 1 auto;
	color:#a34747;
	font-size:11.5px;
	line-height:1.35;
}

.elementor-widget-porto_sb_filter .widget_price_filter.pt-price-invalid .pt-price-error {
	display:block;
}

.elementor-widget-porto_sb_filter .widget_price_filter.pt-price-invalid .pt-price-input {
	border-color:#b96868;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset {
	flex:0 0 auto;
	margin:0 0 0 auto;
	padding:0;
	border:0;
	background:transparent;
	color:var(--pt-filter-accent);
	box-shadow:none;
	font:inherit;
	font-size:12px;
	font-weight:500;
	line-height:1.35;
	text-decoration:none;
	cursor:pointer;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:hover {
	text-decoration:underline;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset[hidden] {
	display:none!important;
}

.elementor-widget-porto_sb_filter .porto-product-filters .widget-title:focus-visible,
.elementor-widget-porto_sb_filter>.porto-product-filters-toggle:focus-visible,
.elementor-widget-porto_sb_filter .porto-product-filters a:focus-visible,
.elementor-widget-porto_sb_filter .porto-product-filters input:focus-visible,
.elementor-widget-porto_sb_filter .porto-product-filters button:focus-visible,
.elementor-widget-porto_sb_filter .pt-mobile-filter-close:focus-visible {
	outline:2px solid var(--pt-filter-accent);
	outline-offset:2px;
}
@media (max-width:991px) {
	.elementor-widget-porto_sb_filter.shop-loop-before {
		margin-bottom:20px;
		padding:0;
	}
	.elementor-widget-porto_sb_filter>.porto-product-filters-toggle {
		box-sizing:border-box;
		display:inline-flex;
		align-items:center;
		justify-content:center;
		gap:8px;
		min-height:40px;
		margin:0;
		padding:0 14px;
		border:1px solid var(--pt-filter-accent)!important;
		border-radius:7px;
		background:#fff;
		color:var(--pt-filter-accent);
		box-shadow:none;
		font-size:13.5px;
		font-weight:600;
		line-height:1;
		text-transform:none;
	}
	.elementor-widget-porto_sb_filter>.porto-product-filters-toggle:hover,
	.elementor-widget-porto_sb_filter>.porto-product-filters-toggle:focus {
		background:var(--pt-filter-accent-soft);
		color:var(--pt-filter-accent);
	}
	.elementor-widget-porto_sb_filter>.porto-product-filters-toggle svg {
		width:18px;
		height:18px;
	}
	.elementor-widget-porto_sb_filter>.porto-product-filters-toggle svg line,
	.elementor-widget-porto_sb_filter>.porto-product-filters-toggle svg path { stroke:currentColor; }
	.elementor-widget-porto_sb_filter .pt-filter-total-count {
		display:inline-flex;
		align-items:center;
		justify-content:center;
		min-width:20px;
		height:20px;
		padding:0 5px;
		border-radius:10px;
		background:var(--pt-filter-accent);
		color:#fff;
		font-size:11px;
		font-weight:700;
		line-height:20px;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters.mobile-sidebar {
		width:min(90vw,380px);
		max-width:380px;
		margin:0;
		border-right:1px solid var(--pt-filter-border);
		background:#fff;
		box-shadow:8px 0 24px rgba(31,48,51,.08);
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .porto-product-filters-body {
		display:block!important;
		height:100%;
		padding:0 20px 28px;
		overflow-x:hidden;
		overflow-y:auto;
		background:#fff;
		font-size:13.5px;
	}
	.elementor-widget-porto_sb_filter .pt-mobile-filter-header {
		position:sticky;
		top:0;
		z-index:3;
		display:flex;
		align-items:center;
		justify-content:space-between;
		min-height:64px;
		margin:0 -20px;
		padding:0 20px;
		border-bottom:1px solid var(--pt-filter-line);
		background:#fff;
		color:var(--pt-filter-text);
	}
	.elementor-widget-porto_sb_filter .pt-mobile-filter-header strong {
		font-size:18px;
		font-weight:600;
	}
	.elementor-widget-porto_sb_filter .pt-mobile-filter-close {
		display:inline-flex;
		align-items:center;
		justify-content:center;
		width:36px;
		height:36px;
		padding:0;
		border:0;
		background:transparent;
		color:var(--pt-filter-text);
		font-size:28px;
		font-weight:300;
		line-height:1;
		cursor:pointer;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget {
		width:100%;
		margin:0;
		padding:0;
		border:0;
		border-bottom:1px solid var(--pt-filter-line);
		border-radius:0;
		background:transparent;
		color:var(--pt-filter-text);
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget:hover,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.pt-filter-active {
		border-color:var(--pt-filter-line);
		background:transparent;
		color:var(--pt-filter-text);
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget-title {
		position:relative;
		box-sizing:border-box;
		display:flex;
		align-items:center;
		width:100%;
		min-height:54px;
		margin:0;
		padding:0 34px 0 0;
		border:0;
		background:transparent;
		color:var(--pt-filter-text)!important;
		font-size:14.5px!important;
		font-weight:500;
		line-height:1.35;
		letter-spacing:0;
		text-transform:none;
		cursor:pointer;
		pointer-events:auto!important;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget-title::before { content:none!important; }
	.elementor-widget-porto_sb_filter .porto-product-filters .widget-title::after {
		content:"";
		position:absolute;
		top:50%;
		right:5px;
		width:7px;
		height:7px;
		border:solid var(--pt-filter-muted);
		border-width:0 1.5px 1.5px 0;
		transform:translateY(-65%) rotate(45deg);
		transition:transform .16s ease;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>.widget-title::after {
		transform:translateY(-30%) rotate(225deg);
	}
	.elementor-widget-porto_sb_filter .pt-filter-chip-count {
		display:inline-flex;
		align-items:center;
		justify-content:center;
		min-width:21px;
		height:21px;
		margin-left:9px;
		padding:0 5px;
		border-radius:11px;
		background:var(--pt-filter-accent);
		color:#fff;
		font-size:11px;
		font-weight:700;
		line-height:21px;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>.pwb-dropdown-widget,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>.pwb-filter-products,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>.tagcloud,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>div:not(.pwb-filter-products)>ul,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>form,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget>ul {
		display:none!important;
		box-sizing:border-box;
		width:100%;
		max-width:100%;
		max-height:none;
		margin:0;
		padding:2px 0 18px;
		border:0;
		background:transparent;
		box-shadow:none;
		overflow:visible;
	}
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>.pwb-dropdown-widget,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>.pwb-filter-products,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>.tagcloud,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>div:not(.pwb-filter-products)>ul,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>form,
	.elementor-widget-porto_sb_filter .porto-product-filters .widget.opened>ul {
		display:block!important;
	}


	/* The off-canvas body owns scrolling; individual filters must not become nested frames. */
	.elementor-widget-porto_sb_filter .widget_product_categories .product-categories,
	.elementor-widget-porto_sb_filter .widget_product_categories .product-categories ul,
	.elementor-widget-porto_sb_filter .widget_price_filter>form,
	.elementor-widget-porto_sb_filter .widget_price_filter .price_slider_wrapper {
		box-sizing:border-box;
		width:100%;
		max-width:100%;
		min-width:0;
	}

	.elementor-widget-porto_sb_filter .widget_product_categories .product-categories ul.children {
		padding-left:14px;
	}

	.elementor-widget-porto_sb_filter .widget_price_filter .porto_price_filter_chart,
	.elementor-widget-porto_sb_filter .widget_price_filter .apexcharts-canvas,
	.elementor-widget-porto_sb_filter .widget_price_filter svg {
		box-sizing:border-box;
		max-width:100%!important;
		overflow:hidden;
	}

	.elementor-widget-porto_sb_filter .widget_price_filter #min_price,
	.elementor-widget-porto_sb_filter .widget_price_filter #max_price {
		min-width:0;
		width:calc(50% - 7px);
	}
	.elementor-widget-porto_sb_filter .widget_price_filter .price_slider_amount {
		display:flex;
		flex-wrap:wrap;
		gap:10px 14px;
		align-items:center;
	}
	.elementor-widget-porto_sb_filter .widget_price_filter .button {
		width:100%;
		margin-top:4px;
	}
}

/* Shared control language for Price / Size / Color. */
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input {
	box-sizing:border-box;
	height:38px;
	border:1px solid var(--pt-filter-border);
	border-radius:6px;
	background:#fff;
	color:var(--pt-filter-text);
	box-shadow:none;
	font-family:inherit;
	font-size:13px;
	font-weight:400;
	line-height:36px;
	letter-spacing:0;
	outline:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input::placeholder,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input::placeholder,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input::placeholder {
	color:#8a9698;
	opacity:1;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input:hover,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input:hover {
	border-color:var(--pt-filter-border-hover);
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input:focus,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input:focus,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input:focus {
	border-color:var(--pt-filter-accent);
	box-shadow:0 0 0 1px var(--pt-filter-accent);
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-reset,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset {
	box-sizing:border-box;
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	width:auto;
	min-width:auto!important;
	height:38px;
	min-height:38px;
	margin:0!important;
	padding:0 11px!important;
	border:1px solid var(--pt-filter-border)!important;
	border-radius:6px!important;
	background:#fff!important;
	color:var(--pt-filter-accent)!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:12.5px!important;
	font-weight:600!important;
	line-height:36px!important;
	letter-spacing:0;
	text-align:center;
	text-decoration:none!important;
	text-transform:none!important;
	white-space:nowrap;
	cursor:pointer;
	appearance:none;
	-webkit-appearance:none;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset:focus,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-reset:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-reset:focus,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:hover,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:focus {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent-soft)!important;
	color:var(--pt-filter-accent)!important;
	text-decoration:none!important;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-actions {
	align-items:center;
	min-height:38px;
	margin-top:8px;
}

@media (max-width:767px) {
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-reset,
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-reset {
		width:100%!important;
	}
}


/* v2-16 final mobile consistency: Color gate, accordion specificity and exact input parity. */
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-category-hint {
	box-sizing:border-box;
	float:none!important;
	clear:both;
	flex:0 0 100%!important;
	width:100%!important;
	margin:0!important;
	padding:10px 2px!important;
	border:0!important;
	background:transparent!important;
	color:var(--pt-filter-muted);
	font-size:12.5px;
	line-height:1.45;
	list-style:none;
	white-space:normal;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2.pt-color-awaiting-category .widget-title {
	color:var(--pt-filter-muted);
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input {
	box-sizing:border-box!important;
	display:block!important;
	width:100%!important;
	min-width:0!important;
	height:38px!important;
	margin:0!important;
	border:1px solid var(--pt-filter-border)!important;
	border-radius:6px!important;
	background:#fff!important;
	color:var(--pt-filter-text)!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:13px!important;
	font-weight:400!important;
	line-height:36px!important;
	letter-spacing:0!important;
	text-align:left!important;
	vertical-align:middle!important;
	outline:none!important;
	appearance:none!important;
	-webkit-appearance:none!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input {
	padding:0 42px 0 11px!important;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input {
	padding:0 11px!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input::placeholder,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input::placeholder,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input::placeholder {
	color:#8a9698!important;
	opacity:1!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input:hover,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input:hover,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input:hover {
	border-color:var(--pt-filter-border-hover)!important;
}

.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3 .pt-size-search-input:focus,
.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2 .pt-color-search-input:focus,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-input:focus {
	border-color:var(--pt-filter-accent)!important;
	box-shadow:0 0 0 1px var(--pt-filter-accent)!important;
}

@media (max-width:991px) {
	/* Porto's native style2 handler owns .opened; these ID-scoped rules only fix specificity. */
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3:not(.opened) > ul.woocommerce-widget-layered-nav-list,
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2:not(.opened) > ul.woocommerce-widget-layered-nav-list {
		display:none!important;
	}

	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-3.opened > ul.woocommerce-widget-layered-nav-list,
	.elementor-widget-porto_sb_filter #woocommerce_layered_nav-2.opened > ul.woocommerce-widget-layered-nav-list {
		display:flex!important;
	}
}

/* v2-17 Price: visual-only dual slider + explicit Reset / Apply commit row. */
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider-wrap {
	box-sizing:border-box;
	width:100%;
	padding:18px 10px 12px;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider {
	position:relative;
	box-sizing:border-box;
	height:4px;
	margin:0;
	border:0;
	border-radius:999px;
	background:#dfe7e7;
	box-shadow:none;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider[hidden] {
	display:none!important;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider .ui-slider-range {
	position:absolute;
	top:0;
	height:100%;
	border:0;
	border-radius:999px;
	background:var(--pt-filter-accent);
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider .ui-slider-handle {
	position:absolute;
	top:50%;
	z-index:2;
	box-sizing:border-box;
	width:22px;
	height:22px;
	margin:0 0 0 -11px;
	padding:0;
	border:2px solid var(--pt-filter-accent);
	border-radius:50%;
	background:#fff;
	box-shadow:0 1px 4px rgba(31,48,51,.14);
	transform:translateY(-50%);
	cursor:grab;
	touch-action:none;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider .ui-slider-handle:active {
	cursor:grabbing;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider .ui-slider-handle:focus-visible {
	outline:2px solid rgba(70,100,103,.24)!important;
	outline-offset:2px;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-error {
	box-sizing:border-box;
	display:none;
	width:100%;
	margin:0 0 8px;
	color:#a34747;
	font-size:11.5px;
	line-height:1.35;
}

.elementor-widget-porto_sb_filter .widget_price_filter.pt-price-invalid .pt-price-error {
	display:block;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-actions {
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	gap:8px;
	width:100%;
	min-height:38px;
	margin-top:0;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-apply {
	box-sizing:border-box;
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	width:100%!important;
	min-width:0!important;
	height:38px!important;
	min-height:38px!important;
	margin:0!important;
	padding:0 11px!important;
	border-radius:6px!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:12.5px!important;
	font-weight:600!important;
	line-height:36px!important;
	letter-spacing:0;
	text-align:center;
	text-decoration:none!important;
	text-transform:none!important;
	white-space:nowrap;
	appearance:none;
	-webkit-appearance:none;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:not(:disabled) {
	border:1px solid var(--pt-filter-border)!important;
	background:#fff!important;
	color:var(--pt-filter-accent)!important;
	cursor:pointer;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:not(:disabled):hover,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:not(:disabled):focus {
	border-color:var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent-soft)!important;
	color:var(--pt-filter-accent)!important;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-reset:disabled {
	border:1px solid #e1e6e6!important;
	background:#f3f5f5!important;
	color:#9aa5a6!important;
	cursor:default;
	opacity:1!important;
}

.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-apply,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-apply:hover,
.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-apply:focus {
	border:1px solid var(--pt-filter-accent)!important;
	background:var(--pt-filter-accent)!important;
	color:#fff!important;
	cursor:pointer;
}

@media (max-width:767px) {
	.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider-wrap {
		padding-top:20px;
		padding-bottom:14px;
	}

	.elementor-widget-porto_sb_filter .widget_price_filter .pt-price-slider .ui-slider-handle {
		width:28px;
		height:28px;
		margin-left:-14px;
	}
}

/* v2-18 category tree search: presentation-only search with ancestor path preservation. */
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-row {
	box-sizing:border-box;
	display:block!important;
	float:none!important;
	clear:both;
	width:100%!important;
	max-width:none!important;
	margin:0 0 10px!important;
	padding:0!important;
	border:0!important;
	background:#fff!important;
	list-style:none!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-field {
	position:relative;
	box-sizing:border-box;
	display:block;
	width:100%;
	min-width:0;
	height:38px;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-input {
	box-sizing:border-box!important;
	display:block!important;
	width:100%!important;
	min-width:0!important;
	height:38px!important;
	margin:0!important;
	padding:0 42px 0 11px!important;
	border:1px solid var(--pt-filter-border)!important;
	border-radius:6px!important;
	background:#fff!important;
	color:var(--pt-filter-text)!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:13px!important;
	font-weight:400!important;
	line-height:36px!important;
	letter-spacing:0!important;
	text-align:left!important;
	outline:none!important;
	appearance:none!important;
	-webkit-appearance:none!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-input::-webkit-search-cancel-button {
	display:none;
	-webkit-appearance:none;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-input::placeholder {
	color:#8a9698!important;
	opacity:1!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-input:hover {
	border-color:var(--pt-filter-border-hover)!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-input:focus {
	border-color:var(--pt-filter-accent)!important;
	box-shadow:0 0 0 1px var(--pt-filter-accent)!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-clear {
	position:absolute;
	top:4px;
	right:4px;
	box-sizing:border-box;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px!important;
	min-width:0!important;
	max-width:30px!important;
	height:30px!important;
	min-height:0!important;
	max-height:30px!important;
	margin:0!important;
	padding:0 0 2px!important;
	border:0!important;
	border-radius:5px!important;
	background:#f1f5f5!important;
	color:#5f7476!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:21px!important;
	font-weight:400!important;
	line-height:1!important;
	text-transform:none!important;
	appearance:none;
	-webkit-appearance:none;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-clear:hover,
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-clear:focus-visible {
	background:#e8efef!important;
	color:var(--pt-filter-accent)!important;
	outline:none;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-clear:active {
	background:#dfe9e9!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-empty {
	box-sizing:border-box;
	display:block!important;
	float:none!important;
	clear:both;
	width:100%!important;
	margin:0!important;
	padding:10px 2px!important;
	border:0!important;
	background:transparent!important;
	color:var(--pt-filter-muted);
	font-size:12.5px;
	line-height:1.45;
	list-style:none!important;
	white-space:normal;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-clear[hidden],
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-empty[hidden],
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .product-categories li.cat-item[hidden] {
	display:none!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .product-categories.pt-category-searching ul.children {
	display:block!important;
}
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .product-categories.pt-category-searching li.cat-item > .toggle {
	display:none!important;
}
@media (min-width:992px) {
	.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 .pt-category-search-row {
		position:sticky;
		top:-12px;
		z-index:2;
		padding:12px 0 2px!important;
		margin:-12px 0 10px!important;
	}
}

/* Product category child-toggle direction: right when closed, down when open/current. */
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 li.open > .toggle::before,
.elementor-widget-porto_sb_filter #woocommerce_product_categories-2 li.current > .toggle::before {
    content: "\f107" !important;
}

/* Keep the mobile Filter toggle in its original document position; Porto may still add .sticky. */
@media (max-width: 991px) {
    .elementor-widget-porto_sb_filter.shop-loop-before.sticky {
        position: static !important;
        top: auto !important;
        left: auto !important;
        width: auto !important;
        z-index: auto !important;
        padding: 0 !important;
        border-bottom: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        transition: none !important;
    }

    .shop-wrap .filter-placeholder {
        display: none !important;
        height: 0 !important;
    }
}

/* v2-22 desktop-only: keep mobile header out of horizontal filters and restore Porto dropdown ownership. */
@media (min-width: 992px) {
    .elementor-widget-porto_sb_filter .pt-mobile-filter-header {
        display: none !important;
    }

    .elementor-widget-porto_sb_filter #woocommerce_layered_nav-3:not(.opened) > ul.woocommerce-widget-layered-nav-list,
    .elementor-widget-porto_sb_filter #woocommerce_layered_nav-2:not(.opened) > ul.woocommerce-widget-layered-nav-list {
        display: none !important;
    }

    .elementor-widget-porto_sb_filter #woocommerce_layered_nav-3.opened > ul.woocommerce-widget-layered-nav-list,
    .elementor-widget-porto_sb_filter #woocommerce_layered_nav-2.opened > ul.woocommerce-widget-layered-nav-list {
        display: flex !important;
    }
}

/* v2-23 desktop-only: keep the disclosure chevron anchored on the right when Porto adds .opened. */
@media (min-width: 992px) {
    .elementor-widget-porto_sb_filter .porto-product-filters .widget.opened > .widget-title::after {
        left: auto !important;
        right: 14px !important;
        margin-top: 0 !important;
        z-index: auto !important;
    }
}
