.ac-shop-wrapper .ac-shop-container {
	display: flex;
	align-items: flex-start;
	gap: 30px;
	max-width: 1300px;
	margin: 40px auto;
	padding: 0 20px;
}

.ac-shop-wrapper .ac-sidebar {
	width: 260px;
	flex-shrink: 0;
	border: 1px solid #eaeaea;
	border-radius: 6px;
	padding: 20px;
	position: sticky;
	top: 20px;
}

.ac-shop-wrapper .ac-sidebar-title {
	margin: 0 0 15px;
	font-size: 16px;
	text-transform: uppercase;
	letter-spacing: .5px;
}

.ac-shop-wrapper .ac-sidebar-title-odor {
	margin-top: 25px;
	padding-top: 20px;
	border-top: 1px solid #eaeaea;
}

.ac-shop-wrapper .ac-odor-list,
.ac-shop-wrapper .ac-mfr-list {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 320px;
	overflow-y: auto;
}

.ac-shop-wrapper .ac-odor-item,
.ac-shop-wrapper .ac-mfr-item {
	margin: 0 0 4px;
}

.ac-shop-wrapper .ac-facet-hidden {
	display: none;
}

.ac-shop-wrapper .ac-odor-label {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 10px;
	border-radius: 4px;
	font-size: 14px;
	cursor: pointer;
}

.ac-shop-wrapper .ac-odor-label:hover {
	background: #f5f5f5;
}

.ac-shop-wrapper .ac-odor-checkbox {
	margin: 0;
}

.ac-shop-wrapper .ac-odor-item:has( .ac-odor-checkbox:disabled ) .ac-odor-label,
.ac-shop-wrapper .ac-mfr-item:has( .ac-mfr-checkbox:disabled ) .ac-odor-label {
	opacity: .4;
	cursor: not-allowed;
}

.ac-shop-wrapper .ac-odor-checkbox:disabled,
.ac-shop-wrapper .ac-mfr-checkbox:disabled {
	cursor: not-allowed;
}

.ac-shop-wrapper .ac-category-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ac-shop-wrapper .ac-category-item {
	margin: 0 0 6px;
}

.ac-shop-wrapper .ac-category-link {
	display: flex;
	justify-content: space-between;
	gap: 8px;
	padding: 8px 10px;
	border-radius: 4px;
	color: #333;
	text-decoration: none;
	font-size: 14px;
}

.ac-shop-wrapper .ac-category-link:hover {
	background: #f5f5f5;
}

.ac-shop-wrapper .ac-category-item.active .ac-category-link {
	background: #222;
	color: #fff;
}

.ac-shop-wrapper .ac-cat-count {
	opacity: .6;
	font-size: 12px;
}

.ac-shop-wrapper .ac-product-area {
	flex: 1;
	min-width: 0;
	position: relative;
}

.ac-shop-wrapper .ac-product-grid {
	transition: opacity .25s ease, filter .25s ease, transform .25s ease;
}

.ac-shop-wrapper .ac-product-area.ac-loading .ac-product-grid {
	opacity: .35;
	filter: blur(1.5px);
	transform: scale(.995);
	pointer-events: none;
}

.ac-shop-wrapper .ac-loading-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s ease;
	z-index: 5;
	pointer-events: none;
}

.ac-shop-wrapper .ac-product-area.ac-loading .ac-loading-overlay {
	opacity: 1;
	visibility: visible;
}

.ac-shop-wrapper .ac-spinner {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	border: 3px solid rgba(75, 64, 54, .15);
	border-top-color: var( --wdtPrimaryColor, #4b4036 );
	animation: ac-spin .7s linear infinite;
}

.ac-shop-wrapper .ac-loading-text {
	font-size: 13px;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var( --wdtPrimaryColor, #4b4036 );
	opacity: .75;
}

@keyframes ac-spin {
	to {
		transform: rotate( 360deg );
	}
}

.ac-shop-wrapper .ac-product-grid.ac-just-loaded {
	opacity: 0;
	transform: translateY( 6px );
	transition: none;
}

@media ( prefers-reduced-motion: reduce ) {
	.ac-shop-wrapper .ac-spinner {
		animation-duration: 1.4s;
	}
}

.ac-shop-wrapper .ac-no-products {
	padding: 40px 0;
}

.ac-shop-wrapper .ac-pagination-wrap {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #eaeaea;
}

.ac-shop-wrapper .ac-pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.ac-shop-wrapper .ac-pagination .ac-page-status {
	font-size: 14px;
	color: #555;
}

.ac-shop-wrapper .ac-pagination .ac-page-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 10px 16px;
	border: 1px solid transparent;
	border-radius: 6px;
	text-align: center;
	text-decoration: none;
	color: var( --wdtPrimaryColor, #4b4036 );
	font-size: 14px;
	font-weight: 600;
	transition: background .15s ease, border-color .15s ease;
}

.ac-shop-wrapper .ac-pagination .ac-page-first,
.ac-shop-wrapper .ac-pagination .ac-page-prev {
	color: #555;
	font-weight: 500;
}

.ac-shop-wrapper .ac-pagination .ac-page-prev {
	border-color: #ddd;
}

.ac-shop-wrapper .ac-pagination .ac-page-next {
	border-color: var( --wdtPrimaryColor, #4b4036 );
}

.ac-shop-wrapper .ac-pagination a.ac-page-btn:hover {
	background: #f5f5f5;
}

.ac-shop-wrapper .ac-pagination .ac-page-disabled {
	color: #bbb;
	cursor: not-allowed;
}

@media (max-width: 782px) {
	.ac-shop-wrapper .ac-shop-container {
		flex-direction: column;
	}

	.ac-shop-wrapper .ac-sidebar {
		width: 100%;
		position: static;
	}
}
