.sisu-filter { margin: 0 0 1.5rem; font-size: 16px; }
.sisu-filter__bar { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }

.sisu-dropdown { position: relative; }
.sisu-dropdown__toggle {
	display: inline-flex; align-items: center; gap: .4rem;
	border: 1px solid #c7c9e6; background: #fff; color: #3730a3;
	padding: .6rem 1rem; border-radius: 8px; cursor: pointer;
	font-weight: 600; line-height: 1; transition: border-color .15s;
}
/* États survol / actif : forcer par-dessus le style Elementor */
.sisu-dropdown__toggle:hover,
.sisu-dropdown__toggle:focus {
	border-color: #3730a3 !important;
	color: #3730a3 !important;
	background: #f5f5ff !important;
}
.sisu-dropdown.is-open .sisu-dropdown__toggle {
	border-color: #3730a3 !important;
	color: #3730a3 !important;
	background: #eef0ff !important;
}
.sisu-dropdown.is-open .sisu-caret { transform: rotate(180deg); }
.sisu-caret { transition: transform .15s; font-size: .8em; }

.sisu-dropdown__panel {
	position: absolute; z-index: 50; top: calc(100% + .5rem); left: 0;
	min-width: 240px; background: #fff; border: 1px solid #e5e7f0;
	border-radius: 12px; box-shadow: 0 12px 30px rgba(17,17,40,.12);
	padding: 1rem; display: none;
}
.sisu-dropdown.is-open .sisu-dropdown__panel { display: block; }

/* Options (marque / attributs) */
.sisu-options { list-style: none; margin: 0; padding: 0; max-height: 280px; overflow: auto; }
.sisu-options__item { padding: .25rem 0; }
.sisu-options__item label { display: flex; align-items: center; gap: .5rem; cursor: pointer; }
.sisu-options__count { margin-left: auto; color: #9095b0; font-size: .85em; }
.sisu-options__item.is-disabled { opacity: .4; cursor: not-allowed; }
.sisu-options__item.is-disabled label { cursor: not-allowed; }

/* Tri */
.sisu-sort__option { display: flex; align-items: center; gap: .5rem; padding: .3rem 0; cursor: pointer; }

/* Prix */
.sisu-price { width: 260px; }
.sisu-price__bubbles { display: flex; justify-content: space-between; margin-bottom: .5rem; }
.sisu-price__bubble { background: #2c2c8c; color: #fff; border-radius: 6px; padding: .25rem .5rem; font-size: .85em; font-weight: 600; }
.sisu-price__slider { position: relative; height: 32px; }
.sisu-price__slider input[type="range"] {
	position: absolute; left: 0; top: 12px; width: 100%; margin: 0;
	-webkit-appearance: none; appearance: none; background: transparent; pointer-events: none;
}
.sisu-price__slider::before {
	content: ""; position: absolute; left: 0; right: 0; top: 16px; height: 4px;
	background: #d7d9ef; border-radius: 4px;
}
.sisu-price__slider input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none; appearance: none; pointer-events: auto;
	width: 20px; height: 20px; border-radius: 50%; background: #2c2c8c; border: 3px solid #fff;
	box-shadow: 0 1px 4px rgba(0,0,0,.3); cursor: pointer;
}
.sisu-price__slider input[type="range"]::-moz-range-thumb {
	pointer-events: auto; width: 20px; height: 20px; border-radius: 50%;
	background: #2c2c8c; border: 3px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.3); cursor: pointer;
}
.sisu-price__inputs { display: flex; align-items: center; gap: .5rem; margin-top: 1rem; }
.sisu-price__inputs input { width: 90px; padding: .5rem; border: 1px solid #c7c9e6; border-radius: 8px; }

/* État / chargement */
.sisu-filter__status { margin-top: .5rem; color: #6b6f8c; font-size: .9em; min-height: 1.2em; }
.sisu-filter.is-loading { opacity: .85; }
.sisu-filter.is-loading .sisu-filter__bar { pointer-events: none; }
