/*
 * AURA Woo Shop — filter panel: header, search, groups, the display types
 * (checkbox, radio, dropdown, swatches, buttons, images, range) and the
 * sticky desktop sidebar. The mobile sheet and drawer live in
 * aura-shop-responsive.css.
 */

.aura-shop-filters {
	min-inline-size: 0;
}

.aura-shop-filters__panel {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: var(--aura-shop-space-sm);
	padding: var(--aura-shop-filters-padding, 0);
	border-radius: var(--aura-shop-panel-radius);
	background: var(--aura-shop-filters-surface);
	box-shadow: var(--aura-shop-filters-shadow);
}

.aura-shop-filters--framed .aura-shop-filters__panel {
	padding: var(--aura-shop-space-md);
	border: 1px solid var(--aura-shop-border);
}

.aura-shop-filters__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--aura-shop-space-md);
}

.aura-shop-filters__title {
	margin: 0;
	font-family: var(--aura-shop-font-heading);
	font-size: var(--aura-shop-filters-heading);
	font-weight: var(--aura-shop-heading-weight);
}

.aura-shop-filters__clear {
	color: var(--aura-shop-muted);
	font-size: 0.8125rem;
}

.aura-shop-filters__close {
	display: none;
	place-items: center;
	inline-size: 2.75rem;
	block-size: 2.75rem;
	color: inherit;
}

.aura-shop-filters__grab {
	display: none;
	inline-size: 2.5rem;
	block-size: 4px;
	margin: 0 auto var(--aura-shop-space-sm);
	border-radius: 999px;
	background: var(--aura-shop-border);
}

.aura-shop-filters__search {
	margin-block-end: var(--aura-shop-space-sm);
}

.aura-shop-filters__groups {
	display: flex;
	flex-direction: column;
}

.aura-shop-filters--plain .aura-shop-filter {
	border-block-end: 0;
}

.aura-shop-filter__fieldset {
	margin: 0;
	padding: 0 0 var(--aura-shop-space-md);
	border: 0;
	min-inline-size: 0;
	font-size: var(--aura-shop-filters-item);
}

.aura-shop-filter__options {
	display: grid;
	gap: 2px;
	max-block-size: 18rem;
	margin: 0;
	padding: 0;
	overflow-y: auto;
	list-style: none;
}

.aura-shop-filter__option {
	display: flex;
	align-items: center;
	gap: var(--aura-shop-space-sm);
	min-block-size: 2.75rem;
	cursor: pointer;
}

.aura-shop-filter__option input[type="checkbox"],
.aura-shop-filter__option input[type="radio"] {
	inline-size: 1.125rem;
	block-size: 1.125rem;
	margin: 0;
	accent-color: var(--aura-shop-accent);
}

.aura-shop-filters--checkbox-minimal .aura-shop-filter__option input {
	inline-size: 1rem;
	block-size: 1rem;
}

.aura-shop-filter__count {
	color: var(--aura-shop-muted);
	font-size: 0.8125rem;
}

.aura-shop-filter__select {
	inline-size: 100%;
	min-block-size: 2.75rem;
	padding-inline: 0.5rem;
	border: 1px solid var(--aura-shop-border);
	border-radius: var(--aura-shop-input-radius);
	background: var(--aura-shop-surface);
	color: var(--aura-shop-text);
	font: inherit;
	font-size: var(--aura-shop-filters-item);
}

.aura-shop-filter--price .aura-shop-range__inputs input {
	inline-size: 100%;
	min-block-size: 2.75rem;
	padding-inline: 0.5rem;
	border: 1px solid var(--aura-shop-border);
	border-radius: var(--aura-shop-input-radius);
	background: var(--aura-shop-surface);
	color: var(--aura-shop-text);
	font: inherit;
	box-sizing: border-box;
}

.aura-shop-filters__actions {
	display: flex;
	gap: var(--aura-shop-space-sm);
	padding-block: var(--aura-shop-space-md);
}

.aura-shop-filters__actions > * {
	flex: 1 1 0;
}

/* Desktop sidebar: sticky inside its own column, never over the footer. */
@media (min-width: 1024px) {
	.aura-shop-filters--sidebar {
		align-self: stretch;
	}

	.aura-shop-filters--sidebar.aura-shop-filters--sticky > .aura-shop-filters__panel {
		position: sticky;
		inset-block-start: calc(var(--wp-admin--admin-bar--height, 0px) + var(--aura-shop-filters-offset));
		max-block-size: calc(100vh - var(--wp-admin--admin-bar--height, 0px) - var(--aura-shop-filters-offset) * 2);
		overflow-y: auto;
	}

	.aura-shop-filters--sidebar.aura-shop-filters--free > .aura-shop-filters__panel {
		max-block-size: none;
	}

	/* The visitor sees the panel already: no toggle, no duplicate control. */
	.aura-shop-archive--sidebar .aura-shop-filter-toggle {
		display: none;
	}

	.aura-shop-filters--sidebar .aura-shop-filters__close,
	.aura-shop-filters--sidebar .aura-shop-filters__grab {
		display: none;
	}

	.aura-shop-filters--sidebar[data-apply="instant"] .aura-shop-filters__actions {
		display: none;
	}

	html:not(.aura-shop-js) .aura-shop-filters--sidebar[data-apply="instant"] .aura-shop-filters__actions {
		display: flex;
	}
}
