/* ==========================================================================
   Healthcare DME — Archive filter panel
   Built from live taxonomy and price data, not a widget area: none is
   registered on this site, which is why the column previously rendered empty
   and squeezed the product grid into 262px.
   ========================================================================== */

.hdme-filters {
	display: grid;
	gap: var(--hdme-space-3);
	background: transparent;
	border: 0;
	padding: 0;
}

.hdme-filters__group,
.hdme-filters__actions {
	min-width: 0;
	padding: var(--hdme-space-4);
	border: 1px solid var(--hdme-blue-100);
	border-radius: var(--hdme-radius-lg);
	background: var(--hdme-surface);
	box-shadow: var(--hdme-shadow-sm);
}

.hdme-scope .hdme-filters__title {
	margin: 0 0 var(--hdme-space-3);
	font-size: 1rem !important;
	line-height: 1.3 !important;
	font-weight: var(--hdme-weight-bold);
	letter-spacing: 0.02em;
	text-transform: none;
	color: var(--hdme-grey-900);
}

/* ---- Category list ------------------------------------------------------ */

.hdme-filters__list {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 320px;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-color: var(--hdme-blue-200) transparent;
	scrollbar-width: thin;
}
.hdme-filters__list a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	justify-content: space-between;
	gap: var(--hdme-space-2);
	min-height: var(--hdme-tap-min);
	padding: var(--hdme-space-2) var(--hdme-space-2);
	border-radius: var(--hdme-radius);
	font-size: var(--hdme-text-sm);
	color: var(--hdme-grey-700);
	text-decoration: none;
	line-height: var(--hdme-leading-snug);
}
.hdme-filters__list a > span:first-child {
	min-width: 0;
	overflow-wrap: anywhere;
}
.hdme-filters__list a:hover {
	background: var(--hdme-blue-50);
	color: var(--hdme-blue-800);
}
.hdme-filters__count {
	flex: 0 0 auto;
	padding: 1px var(--hdme-space-2);
	border-radius: var(--hdme-radius-pill);
	background: var(--hdme-grey-100);
	color: var(--hdme-grey-600);
	font-size: var(--hdme-text-xs);
	font-weight: var(--hdme-weight-semi);
}

/* ---- Price -------------------------------------------------------------- */

.hdme-filters__price {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: var(--hdme-space-2);
}
.hdme-filters__price-field {
	position: relative;
	display: block;
	min-width: 0;
}
.hdme-filters__price input {
	display: block;
	width: 100%;
	min-width: 0;
	min-height: 40px;
	padding: 0 var(--hdme-space-2) 0 1.65rem;
	border: 1px solid var(--hdme-blue-200);
	border-radius: var(--hdme-radius);
	background: #fff;
	font-size: max(16px, var(--hdme-text-sm));
	text-align: left;
}
.hdme-filters__price input:focus {
	border-color: var(--hdme-blue-500);
	box-shadow: 0 0 0 3px rgba(66, 126, 209, 0.15);
	outline: 0;
}
.hdme-filters__currency {
	position: absolute;
	top: 50%;
	left: var(--hdme-space-2);
	z-index: 1;
	transform: translateY(-50%);
	color: var(--hdme-blue-700);
	font-size: var(--hdme-text-sm);
	font-weight: var(--hdme-weight-bold);
	pointer-events: none;
}
.hdme-filters__price-separator { color: var(--hdme-text-muted); }

/* ---- Checkbox ----------------------------------------------------------- */

.hdme-filters__check {
	display: flex;
	align-items: center;
	gap: var(--hdme-space-3);
	min-height: var(--hdme-tap-min);
	font-size: var(--hdme-text-sm);
	color: var(--hdme-grey-700);
	cursor: pointer;
}
.hdme-filters__check input {
	width: 20px;
	height: 20px;
	accent-color: var(--hdme-blue-600);
	cursor: pointer;
}

/* ---- Actions ------------------------------------------------------------ */

.hdme-filters__actions {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--hdme-space-2);
}
.hdme-filters__actions .hdme-btn--block {
	width: auto;
	min-height: 40px;
	padding: 0.45rem 1rem;
	font-size: var(--hdme-text-sm);
}

/* ---- Sticky on desktop -------------------------------------------------- */

@media (min-width: 768px) {
	.hdme-archive__aside { position:sticky;top:64px;max-height:calc(100dvh - 80px);overflow:auto;padding:2px;scrollbar-width:thin; }
}

/* The Avada number-input reset must not put the text over the currency icon. */
body.hdme-scope .hdme-filters__price input { padding-left:28px!important;background:#fff;min-height:44px; }
body.hdme-scope .hdme-filters__actions .hdme-btn--block { min-height:44px; }

@media (max-width: 767px) {
	.hdme-filters__price input,
	.hdme-filters__actions .hdme-btn--block { min-height: var(--hdme-tap-min); }
}
