#cpf-filter-wrapper {
	margin-bottom: 20px;
	font-family: inherit;
}

.cpf-filter-bar {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 15px;
}

.cpf-dropdown {
	position: relative;
}

.cpf-trigger {
	padding: 8px 16px;
	border: 1px solid #ccc;
	border-radius: 20px;
	background: #fff;
	cursor: pointer;
	font-size: 14px;
}

.cpf-trigger.is-active,
.cpf-trigger:hover{
	border-color: #d70018;
	background: #fff5f5;
	color: #d70018;
}

.cpf-popup {
	display: none;
	position: absolute;
	top: 110%;
	left: 0;
	z-index: 999;
	width: 360px;
	padding: 20px;
	border: 1px solid #ddd;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.cpf-popup.cpf-popup-wide {
	width: 420px;
}

.cpf-popup-content h4 {
	margin: 0 0 15px;
	color: #222;
	font-size: 16px;
	font-weight: 600;
}

.cpf-price-inputs-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 20px;
}

.cpf-price-inputs-row input {
	width: 100%;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 8px;
	outline: none;
	background: #fff;
	color: #222;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}

.cpf-price-dash {
	color: #666;
	font-weight: 600;
}

.cpf-price-slider-wrapper {
	padding: 5px 10px 25px;
}

#cpf-price-slider {
	margin-bottom: 10px;
}

.noUi-connect {
	background: #d70018 !important;
}

.noUi-handle {
	border-radius: 50% !important;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2) !important;
	cursor: pointer;
}

.cpf-pill-list {
	display: flex;
	max-height: 220px;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 15px;
	overflow-y: auto;
}

.cpf-pill-item {
	padding: 8px 16px;
	border: 1px solid #e0e0e0;
	border-radius: 20px;
	outline: none;
	background: #f7f7f7;
	color: #333;
	cursor: pointer;
	font-size: 13px;
	transition: all 0.2s ease;
}

.cpf-pill-item:hover {
	border-color: #999;
	background: #f0f0f0;
}

.cpf-pill-item.active {
	border-color: #d70018;
	background: #fff5f5;
	color: #d70018;
	font-weight: 500;
}

.cpf-popup-actions {
	display: flex;
	gap: 10px;
	margin-top: 10px;
	padding-top: 15px;
	border-top: 1px solid #eee;
}

.cpf-close-popup,
.cpf-submit-filter {
	flex: 1;
	padding: 10px;
	border-radius: 8px;
	cursor: pointer;
	font-weight: 600;
}

.cpf-close-popup {
	border: 1px solid #ccc;
	background: #fff;
	color: #333;
}

.cpf-submit-filter {
	border: 0;
	background: #d70018;
	color: #fff;
}

#cpf-active-filters-area {
	display: none;
	margin-bottom: 20px;
	font-size: 14px;
}

.cpf-active-label {
	margin-bottom: 8px;
	color: #111;
	font-size: 16px;
	font-weight: 700;
}

.cpf-active-content-row,
#cpf-active-tags-container {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.cpf-active-content-row {
	gap: 15px;
}

#cpf-active-tags-container {
	gap: 10px;
}

#cpf-clear-all {
	color: #0056b3;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
}

.cpf-active-tag {
	display: inline-flex;
	align-items: center;
	padding: 8px 14px;
	border: 1px solid #ccc;
	border-radius: 8px;
	background: #fff;
	color: #222;
	font-size: 14px;
}

.cpf-active-tag .tag-highlight {
	margin-left: 4px;
	color: #0056b3;
}

.cpf-remove-tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	margin-left: 8px;
	border-radius: 50%;
	background: #e0e0e0;
	color: #444;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
}

.cpf-remove-tag:hover {
	background: #d70018;
	color: #fff;
}

.shop-container.cpf-is-loading {
	opacity: 0.5;
	pointer-events: none;
}

.cpf-no-products {
	padding: 40px 0;
	text-align: center;
}
.cpf-trigger.active {
	border-color: #d70018;
	background: #fff5f5;
	color: #d70018;
}
@media (max-width: 560px) {
	.cpf-dropdown {
		position: static;
	}

	.cpf-popup,
	.cpf-popup.cpf-popup-wide {
		left: 0;
		width: 100%;
		box-sizing: border-box;
	}
}

