/* Product Filters Widget */
.aura-pf-wrapper {
	width: 100%;
}

.aura-pf-body {
	width: 100%;
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 72px;
	align-items: start;
}

.aura-pf-sidebar {
	position: sticky;
	top: 50px;
	align-self: start;
	padding: 0;
	background: transparent;
}

.aura-pf-filter-group + .aura-pf-filter-group {
	margin-top: 40px;
}

.aura-pf-filter-group h4 {
	margin: 0 0 20px;
	font-size: 15px;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: -0.375px;
	color: #000;
}

.aura-pf-filter-list {
	display: grid;
	gap: 6px;
	overflow: auto;
}

.aura-pf-check {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 14px;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	cursor: pointer;
}

.aura-pf-filter-group:last-child .aura-pf-check {
	font-weight: 500;
}

.aura-pf-check input[type='checkbox'] {
	width: 16px;
	height: 16px;
	margin: 0;
	border: 1px solid #cbd5e1;
	border-radius: 4px;
	accent-color: #0067b2;
}

.aura-pf-price-range {
	position: relative;
	height: 4px;
	margin-bottom: 20px;
	--aura-pf-min-pct: 0%;
	--aura-pf-max-pct: 100%;
}

.aura-pf-price-range::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 4px;
	transform: translateY(-50%);
	background: #e2e8f0;
	border-radius: 20px;
}

.aura-pf-price-range::after {
	content: '';
	position: absolute;
	left: var(--aura-pf-min-pct);
	width: calc(var(--aura-pf-max-pct) - var(--aura-pf-min-pct));
	top: 50%;
	height: 4px;
	transform: translateY(-50%);
	background: #0067b2;
	border-radius: 20px;
}

.aura-pf-price-range input[type='range'] {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 4px;
	margin: 0;
	background: transparent;
	accent-color: #0067b2;
	pointer-events: none;
}

.aura-pf-price-range input[type='range']::-webkit-slider-runnable-track {
	height: 6px;
	background: transparent;
}

.aura-pf-price-range input[type='range']::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 14px;
	height: 14px;
	margin-top: -4px;
	border: 0;
	border-radius: 50%;
	background: #0067b2;
	cursor: pointer;
	pointer-events: auto;
}

.aura-pf-price-range input[type='range']::-moz-range-track {
	height: 6px;
	background: transparent;
	border: 0;
	border-radius: 20px;
}

.aura-pf-price-range input[type='range']::-moz-range-thumb {
	width: 14px;
	height: 14px;
	border: 0;
	border-radius: 50%;
	background: #0067b2;
	cursor: pointer;
	pointer-events: auto;
}

.aura-pf-price-inputs {
	display: flex;
	gap: 12px;
}

.aura-pf-price-inputs input {
	height: 32px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	padding: 4px 13px;
	font-size: 14px;
	font-weight: 500;
	color: #000;
}

.aura-pf-price-current {
	margin-top: 15px;
	font-size: 14px;
	font-weight: 500;
	color: #334155;
}

.aura-pf-main {
	min-width: 0;
	position: relative;
}

.aura-pf-active-filters {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.aura-pf-filter-chip {
	appearance: none;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 0!important;
    background: transparent!important;
    border: 0;
	color: #555555!important;
	font-size: 13px;
	line-height: 1;
	font-weight: 500;
	cursor: pointer;
	transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.aura-pf-filter-chip--clear {
	border-style: dashed;
	color: #475569;
	background: #f8fafc;
}

.aura-pf-chip-x {
	font-size: 16px;
	line-height: 1;
	font-weight: 400;
}

.aura-pf-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 18px;
	margin-bottom: 30px;
}

.aura-pf-left,
.aura-pf-right {
	display: flex;
	align-items: center;
	gap: 6px;
    color: #64748b;
    font-size: 12px;
    
}

.aura-pf-left {
	min-width: 0;
	justify-content: flex-start;
}

.aura-pf-right {
	justify-content: flex-end;
}
.aura-pf-results {
	font-size: 12px;
	line-height: 1.4;
	color: #64748b;
	white-space: nowrap;
}

.aura-pf-open-filters {
	display: none;
	height: 34px;
	padding: 0 14px;
	border: 1px solid #d3d3d3;
	border-radius: 8px;
	background: #fff!important;
	color: #242424!important;
	font-size: 13px!important;
	line-height: 1;
	font-weight: 500;
	cursor: pointer;
    gap: 6px;
}

.aura-pf-open-filters svg{
    width: 17px;
}

.aura-pf-sidebar-mobile-head,
.aura-pf-sidebar-close,
.aura-pf-sidebar-overlay {
	display: none;
}

.aura-pf-orderby,
.aura-pf-per-page {
	height: 34px;
	padding: 0 32px 0 5px;
	border: 1px solid #d3d3d3;
	border-radius: 8px;
	background-color: #fff;
	color: #242424;
	font-size: 13px;
	line-height: 1;
    field-sizing: content;
    width: auto;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-chevron-down'><path d='m6 9 6 6 6-6'/></svg>");
    background-repeat: no-repeat;
    background-position: right 8px center;
    cursor: pointer;
}

.aura-pf-wrapper.is-loading {
	opacity: 0.7;
	pointer-events: none;
}

.aura-pf-wrapper.is-loading .aura-pf-main::before {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.7);
	z-index: 5;
}

.aura-pf-wrapper.is-loading .aura-pf-main::after {
	content: '';
	position: absolute;
	top: 12px;
	left: 50%;
	width: 36px;
	height: 36px;
	margin-left: -18px;
	border: 3px solid #d1dce7;
	border-top-color: #0067b2;
	border-radius: 50%;
	animation: aura-pf-spin 0.8s linear infinite;
	z-index: 6;
}

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

.aura-pf-layout-toggle {
	display: inline-flex;
	align-items: center;
	border-radius: 6px;
	overflow: hidden;
    gap: 4px;
}

.aura-pf-layout-btn {
	appearance: none;
	border: 1px solid #cbd5e1!important;
	background: #fff!important;
	height: 32px;
    width: 32px;
    padding: 0!important;
    display: flex;
    align-items: center;
    justify-content: center;
	font-weight: 500;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.aura-pf-layout-btn svg{
    width: 18px;
}

.aura-pf-layout-btn svg path{
    stroke: #64748b;
}

.aura-pf-layout-btn + .aura-pf-layout-btn {
	border-left: 1px solid #d3d3d3;
}

.aura-pf-layout-btn.is-active {
	background: #0067b20d!important;
}
.aura-pf-layout-btn.is-active svg path {
	stroke: #0067b2;
}

/* Widget products area */
.aura-pf-products {
	width: 100%;
	--aura-pf-grid-columns: 4;
	--aura-pf-grid-columns-tablet: var(--aura-pf-grid-columns);
	--aura-pf-grid-columns-mobile: var(--aura-pf-grid-columns-tablet);
}

.aura-pf-products ul.products {
	margin-top: 8px;
}

.aura-pf-products .yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--anchor svg.yith-wcwl-icon-svg{
    width: 21px;
}

.aura-pf-products .aura-pf-products-loop {
	display: grid !important;
	gap: 30px !important;
	list-style: none;
	padding: 0;
	margin-left: 0 !important;
}

.aura-pf-products .aura-pf-products-loop::before,
.aura-pf-products .aura-pf-products-loop::after {
	content: none !important;
	display: none !important;
}

/* Reset WooCommerce/theme floats and fixed widths inside this widget */
.aura-pf-products .aura-pf-products-loop li.product {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	clear: none !important;
	max-width: 100% !important;
	display: block;
}

.aura-pf-products .aura-pf-products-loop.aura-pf-layout-grid {
	grid-template-columns: repeat(var(--aura-pf-grid-columns), minmax(0, 1fr)) !important;
}

.aura-pf-products .products.aura-pf-layout-list {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 18px !important;
}

.aura-pf-products .products.aura-pf-layout-list > * {
	width: 100% !important;
	max-width: none !important;
}

.aura-pf-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	gap: 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	overflow: visible;
}

.aura-pf-card__media {
	position: relative;
}

.aura-pf-card__thumb {
	display: block;
	background: #f8fafc;
	aspect-ratio: 1 / 1;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 0;
}

.aura-pf-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.aura-pf-card__content {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
	min-height: 0;
	padding: 0;
}

.aura-pf-card__body,
.aura-pf-card__meta {
	display: grid;
	gap: 10px;
}

.aura-pf-products .products.aura-pf-layout-grid .aura-pf-card__meta {
	margin-top: auto;
}

.aura-pf-card__title {
	margin: 0;
	font-size: 14px!important;
	line-height: 1.45;
	font-weight: 400;
}

.aura-pf-card__title a {
	color: #111827;
	text-decoration: none;
}

.aura-pf-card__description {
	display: none;
	font-size: 12px;
	line-height: 1.55;
	font-weight: 400;
	color: #475569;
}

.aura-pf-card__price {
	font-family: 'Poppins', sans-serif;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.2;
	color: #0f172a;
    white-space: nowrap;
}

.aura-pf-card__actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.aura-pf-card__actions .button {
	margin: 0 !important;
	padding: 10px 12px !important;
	border-radius: 8px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	width: 100%;
	background: #7faf6b !important;
	border-color: #7faf6b !important;
	color: #fff !important;
    text-align: center;
}

.aura-pf-card__wishlist {
	position: absolute;
	top: 0px;
	right: 10px;
	z-index: 3;
	min-height: 24px;
}

.aura-pf-card__wishlist .yith-wcwl-add-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.aura-pf-card__wishlist .yith-wcwl-add-button a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.aura-pf-card__wishlist .yith-wcwl-add-button a svg,
.aura-pf-card__wishlist .yith-wcwl-add-button a img,
.aura-pf-card__wishlist .yith-wcwl-add-button a i,
.aura-pf-card__wishlist .yith-wcwl-add-button a .yith-wcwl-icon,
.aura-pf-card__wishlist .yith-wcwl-add-button a .yith-wcwl-icon-svg {
	font-size: 18px !important;
	width: 18px !important;
	height: 18px !important;
	color: #0067b2 !important;
	fill: currentColor !important;
	stroke: currentColor !important;
	flex: 0 0 auto;
}

.aura-pf-card__wishlist--placeholder {
	width: 84px;
	height: 18px;
	border-radius: 999px;
	background: linear-gradient(90deg, #eef2f7 0%, #e2e8f0 50%, #eef2f7 100%);
	background-size: 200% 100%;
	animation: aura-pf-wishlist-pulse 1s linear infinite;
}

@keyframes aura-pf-wishlist-pulse {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -200% 0;
	}
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr) minmax(180px, 220px);
	gap: 24px;
	align-items: flex-start;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__media {
	grid-column: 1;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__thumb {
	aspect-ratio: auto;
	height: 100%;
	margin-bottom: 0;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__content {
	display: contents;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__body {
	grid-column: 2;
	align-content: start;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__description {
	display: block;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__title {
	font-size: 15px;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__meta {
	grid-column: 3;
	justify-self: end;
	width: 100%;
	max-width: 220px;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__price {
	font-size: 26px;
}

.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__actions .button {
	font-size: 14px !important;
	width: 100%;
}

.aura-pf-pagination {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 30px;
}

.aura-pf-pagination .page-numbers {
	min-width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 12px;
	border: 1px solid #d3d3d3;
	border-radius: 8px;
	text-decoration: none;
	font-size: 14px;
	line-height: 1;
	color: #333;
	background: #fff;
	transition: all 0.2s ease;
}

.aura-pf-pagination .page-numbers.current {
	background: #7a9b67;
	color: #fff;
	border-color: #7a9b67;
}

.aura-pf-pagination .page-numbers:hover {
	border-color: #7a9b67;
	color: #7a9b67;
}

.aura-pf-pagination .page-numbers.current:hover {
	color: #fff;
}

@media (max-width: 1024px) {
	.aura-pf-products {
		--aura-pf-grid-columns: var(--aura-pf-grid-columns-tablet);
	}

	.aura-pf-body {
		grid-template-columns: 1fr;
	}

	.aura-pf-toolbar {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		flex-wrap: nowrap;
	}

	.aura-pf-open-filters {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

    .aura-pf-card__title{
        font-size: 13px!important;
    }

    .aura-pf-card__price{
        font-size: 20px;
    }

	.aura-pf-sidebar {
		position: fixed;
		top: 0;
		left: 0;
		width: min(380px, calc(100vw - 24px));
		max-width: 380px;
		height: 100vh;
		background: #fff;
		padding: 20px;
		padding-top: 100px;
		overflow-y: auto;
		z-index: 101;
		transform: translateX(-110%);
		transition: transform 0.28s ease;
		box-shadow: 16px 0 36px rgba(15, 23, 42, 0.18);
		box-sizing: border-box;
	}

	.aura-pf-sidebar-mobile-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 18px;
	}

	.aura-pf-sidebar-mobile-head strong {
		font-size: 16px;
		line-height: 1.2;
		color: #0f172a;
	}

	.aura-pf-sidebar-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: #fff!important;
		color: #0f172a;
		font-size: 20px;
        width: 30px;
        height: 30px;
		line-height: 1;
        border: 0!important;
		cursor: pointer;
        padding: 0!important;
	}

    .aura-pf-sidebar-close svg{
        width: 30px;
    }

    .aura-pf-sidebar-close svg path{
        stroke: #0f172a;
    }

	.aura-pf-sidebar-overlay {
		display: block;
        background: transparent!important;
		position: fixed;
		inset: 0;
		z-index: 100;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.28s ease;
		border: 0;
		padding: 0;
	}

	.aura-pf-wrapper.aura-pf-filters-open .aura-pf-sidebar {
		transform: translateX(0);
	}

	.aura-pf-wrapper.aura-pf-filters-open .aura-pf-sidebar-overlay {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.aura-pf-left,
	.aura-pf-right {
		justify-content: flex-start;
		flex-wrap: nowrap;
	}

	.aura-pf-left {
		gap: 10px;
		flex: 1 1 auto;
		min-width: 0;
	}

	.aura-pf-right {
		margin-left: auto;
		flex: 0 0 auto;
		justify-content: flex-end;
	}

	.aura-pf-active-filters {
		margin-bottom: 10px;
	}

	.aura-pf-results {
		white-space: normal;
	}
}

@media (max-width: 767px) {
	.aura-pf-products {
		--aura-pf-grid-columns: var(--aura-pf-grid-columns-mobile);
	}

	.aura-pf-price-inputs {
		grid-template-columns: 1fr;
	}

	.aura-pf-filter-chip {
		height: 32px;
		font-size: 12px;
		padding: 0 10px;
	}

	.aura-pf-products .products.aura-pf-layout-list .aura-pf-card {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__content {
		display: grid;
		gap: 10px;
	}

	.aura-pf-products .products.aura-pf-layout-list .aura-pf-card__meta {
		grid-column: auto;
		justify-self: stretch;
		max-width: none;
	}
}
