	/**
	* The Vioiv — Shop archive (mobile-first card grid)
	* 搜索+排序通栏 + 手机端两列紧凑卡片
	*/

	/* 商店列表内容区整体收窄约 10%（桌面） */
	@media (min-width: 769px) {
		body.post-type-archive-product #main > .ct-container,
		body.tax-product_cat #main > .ct-container,
		body.tax-product_tag #main > .ct-container,
		body.woocommerce-shop #main > .ct-container,
		body.woocommerce.archive #main > .ct-container,
		body.post-type-archive-product .ct-container[data-vertical-spacing],
		body.tax-product_cat .ct-container[data-vertical-spacing],
		body.tax-product_tag .ct-container[data-vertical-spacing],
		body.woocommerce-shop .ct-container[data-vertical-spacing] {
			max-width: min(1220px, 92vw) !important;
			width: 100% !important;
			margin-left: auto !important;
			margin-right: auto !important;
		}
	}

	/* 只藏顶栏重复排序/结果数；搜索可能在 .woo-listing-top 内，不能整块 display:none */
	.woo-listing-top > .woocommerce-ordering,
	.woo-listing-top > .woocommerce-result-count,
	.woo-listing-top .woocommerce-result-count {
		display: none !important;
	}

	.woocommerce-pagination,
	nav.woocommerce-pagination,
	.ct-pagination {
		display: none !important;
	}

	.woo-listing-top {
		display: block !important;
		margin: 0 0 14px !important;
		padding: 0 !important;
		min-height: 0 !important;
	}

	/* —— 商店页头部介绍（对标正规商店标题区） —— */
	.vv-shop-intro {
		width: 100%;
		max-width: 720px;
		margin: 8px auto 28px;
		padding: 0 12px;
		text-align: center;
		box-sizing: border-box;
	}

	.vv-shop-intro__title {
		margin: 0 0 12px !important;
		padding: 0 !important;
		color: #1a1a1a !important;
		font-size: clamp(1.75rem, 3.2vw, 2.35rem) !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
		letter-spacing: -0.02em !important;
	}

	.vv-shop-intro__text {
		margin: 0 auto !important;
		max-width: 540px;
		color: #6b635c !important;
		font-size: 1.02rem !important;
		font-weight: 400 !important;
		line-height: 1.55 !important;
	}

	/* —— 商店即时搜索 + 排序通栏 —— */
	.vioiv-shop-search {
		width: 100%;
		max-width: none;
		margin: 0 0 14px;
		padding: 0;
		text-align: left;
		box-sizing: border-box;
	}

	.vioiv-shop-search__label {
		display: none !important;
	}

	.vioiv-shop-search__form {
		position: relative !important;
		display: flex !important;
		align-items: center !important;
		gap: 0 !important;
		width: 100% !important;
		min-height: 56px !important;
		margin: 0 !important;
		padding: 6px 8px !important;
		overflow: visible !important;
		background: #ffffff !important;
		border: 1px solid #d6d0c8 !important;
		border-radius: 999px !important;
		box-shadow: 0 1px 2px rgba(26, 26, 26, 0.04) !important;
		box-sizing: border-box !important;
		transition: border-color 0.18s ease, box-shadow 0.18s ease;
	}

	.vioiv-shop-search__form:focus-within {
		border-color: #1a1a1a !important;
		box-shadow: 0 0 0 1px #1a1a1a !important;
	}

	.vioiv-shop-search__form.is-loading {
		opacity: 0.72;
	}

	/* Sort / refresh: instant feedback on the product grid */
	ul.products.is-refreshing,
	[data-products].is-refreshing {
		opacity: 0.42 !important;
		pointer-events: none !important;
		transition: opacity 0.16s ease !important;
		filter: saturate(0.92);
	}

	ul.products.is-refreshed,
	[data-products].is-refreshed {
		animation: vv-shop-grid-in 0.34s ease both;
	}

	@keyframes vv-shop-grid-in {
		from {
			opacity: 0.28;
			transform: translateY(8px);
		}
		to {
			opacity: 1;
			transform: none;
		}
	}

	/* Sort pill: caret → spinner while fetching */
	.vioiv-shop-search__sort.is-busy .woocommerce-ordering select,
	.vioiv-shop-search__sort.is-busy select.orderby {
		background-color: #e8e8e8 !important;
		cursor: wait !important;
	}

	.vioiv-shop-search__sort.is-busy .woocommerce-ordering::after {
		width: 12px !important;
		height: 12px !important;
		margin-top: -6px !important;
		border: 2px solid rgba(26, 26, 26, 0.22) !important;
		border-top-color: #1a1a1a !important;
		border-radius: 50% !important;
		background: transparent !important;
		animation: vv-shop-sort-spin 0.55s linear infinite;
	}

	@keyframes vv-shop-sort-spin {
		to {
			transform: rotate(360deg);
		}
	}

@media (prefers-reduced-motion: reduce) {
	ul.products.is-refreshing,
	[data-products].is-refreshing,
	ul.products.is-refreshed,
	[data-products].is-refreshed {
		animation: none !important;
		transition: opacity 0.01s linear !important;
		transform: none !important;
		filter: none !important;
	}

	.vioiv-shop-search__sort.is-busy .woocommerce-ordering::after {
		animation: none !important;
	}
}

/* Infinite scroll footer */
.vioiv-shop-infinite {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 8px;
	margin: 8px 0 28px;
	padding: 0;
	box-sizing: border-box;
}

.vioiv-shop-infinite.is-done {
	min-height: 0;
	margin: 0;
}

.vioiv-shop-infinite-sentinel {
	width: 100%;
	height: 1px;
	margin: 0;
	padding: 0;
	pointer-events: none;
}

.vioiv-shop-infinite-status {
	margin: 16px 0 0;
	padding: 0;
	color: #8a7d74;
	font-size: 0.82rem;
	line-height: 1.4;
	text-align: center;
}

.vioiv-shop-infinite.is-loading-more .vioiv-shop-infinite-status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.vioiv-shop-infinite.is-loading-more .vioiv-shop-infinite-status::before {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	border: 2px solid rgba(26, 26, 26, 0.18);
	border-top-color: #1a1a1a;
	border-radius: 50%;
	animation: vv-shop-sort-spin 0.55s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
	.vioiv-shop-infinite.is-loading-more .vioiv-shop-infinite-status::before {
		animation: none;
	}
}

	.vioiv-shop-search__icon {
		display: flex;
		flex: 0 0 44px;
		align-items: center;
		justify-content: center;
		color: #1a1a1a;
		pointer-events: none;
	}

	.vioiv-shop-search__icon svg {
		display: block;
		width: 20px;
		height: 20px;
	}

	.vioiv-shop-search__input,
	.vioiv-shop-search input.vioiv-shop-search__input,
	.woocommerce .vioiv-shop-search input[type="search"] {
		flex: 1 1 auto !important;
		width: auto !important;
		min-width: 0 !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 8px 0 4px !important;
		color: #2a2320 !important;
		font: inherit !important;
		font-size: 1rem !important;
		line-height: 1.4 !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 0 !important;
		outline: 0 !important;
		box-shadow: none !important;
		-webkit-appearance: none !important;
		appearance: none !important;
	}

	.vioiv-shop-search__input::placeholder {
		color: #9a9a9a !important;
		opacity: 1;
	}

	.vioiv-shop-search__clear {
		position: static !important;
		display: inline-flex !important;
		flex: 0 0 34px;
		align-items: center;
		justify-content: center;
		width: 34px !important;
		height: 34px !important;
		margin-right: 4px !important;
		padding: 0 !important;
		transform: none !important;
		color: #1a1a1a !important;
		font-size: 22px !important;
		line-height: 1 !important;
		background: #f3f3f3 !important;
		border: 0 !important;
		border-radius: 999px !important;
		cursor: pointer;
	}

	.vioiv-shop-search__clear[hidden] {
		display: none !important;
	}

	.vioiv-shop-search__clear:hover {
		color: #000 !important;
		background: #eaeaea !important;
	}

	.vioiv-shop-search__divider {
		flex: 0 0 1px;
		align-self: stretch;
		width: 1px;
		margin: 8px 10px;
		background: #e2e2e2;
	}

	.vioiv-shop-search__sort {
		display: flex;
		flex: 0 1 auto;
		align-items: center;
		max-width: 46%;
		min-width: 140px;
	}

	.vioiv-shop-search__sort .woocommerce-ordering {
		width: 100%;
		margin: 0 !important;
		position: relative;
	}

	/* Blocksy 自带的上下箭头图标，必须关掉 */
	.vioiv-shop-search .ct-sort-icon,
	.vioiv-shop-search__sort .ct-sort-icon {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

	.vioiv-shop-search__sort .woocommerce-ordering::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 12px;
		width: 0;
		height: 0;
		margin-top: -2px;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
		border-top: 6px solid #1a1a1a;
		pointer-events: none;
	}

	.vioiv-shop-search__sort .woocommerce-ordering select,
	.vioiv-shop-search__sort select.orderby,
	.woocommerce .vioiv-shop-search__sort select {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		height: 40px !important;
		margin: 0 !important;
		padding: 0 30px 0 14px !important;
		color: #1a1a1a !important;
		font: inherit !important;
		font-size: 0.84rem !important;
		font-weight: 600 !important;
		line-height: 1.2 !important;
		background-color: #f5f5f5 !important;
		background-image: none !important;
		border: 0 !important;
		border-radius: 999px !important;
		outline: 0 !important;
		box-shadow: none !important;
		cursor: pointer;
		-webkit-appearance: none !important;
		-moz-appearance: none !important;
		appearance: none !important;
	}

	/* 清掉系统/主题自带的上下箭头 */
	.vioiv-shop-search__sort .woocommerce-ordering select::-ms-expand,
	.vioiv-shop-search__sort select.orderby::-ms-expand {
		display: none !important;
	}

	.vioiv-shop-search__sort .woocommerce-ordering select::-webkit-inner-spin-button,
	.vioiv-shop-search__sort .woocommerce-ordering select::-webkit-outer-spin-button {
		-webkit-appearance: none !important;
		margin: 0 !important;
	}

	.vioiv-shop-search__sort .woocommerce-ordering select:hover,
	.vioiv-shop-search__sort select.orderby:hover {
		background-color: #ececec !important;
		background-image: none !important;
	}

	.vioiv-shop-search__sort .woocommerce-ordering select:focus,
	.vioiv-shop-search__sort select.orderby:focus {
		border: 0 !important;
		outline: 0 !important;
		box-shadow: none !important;
		background-color: #e8e8e8 !important;
		background-image: none !important;
	}

	.vioiv-shop-search__meta {
		min-height: 0;
		margin: 8px 0 0;
		color: #8a7d74;
		font-size: 0.8rem;
		font-style: italic;
		text-align: center;
	}

	.vioiv-shop-search__empty {
		margin: 8px 0 28px;
		padding: 28px 16px;
		color: #7a746c;
		font-size: 0.92rem;
		line-height: 1.7;
		text-align: center;
	}

	.vioiv-shop-search__empty span {
		display: inline-block;
		margin-top: 4px;
		font-size: 0.82rem;
		opacity: 0.85;
	}

	ul.products.vioiv-shop-search--empty,
	[data-products].vioiv-shop-search--empty {
		display: none !important;
	}

	@media (max-width: 768px) {
		.vv-shop-intro {
			margin: 4px auto 20px;
			padding: 0 8px;
		}

		.vv-shop-intro__title {
			font-size: 1.55rem !important;
			margin-bottom: 10px !important;
		}

		.vv-shop-intro__text {
			font-size: 0.95rem !important;
			margin-bottom: 12px !important;
		}

		.vioiv-shop-search {
			margin: 0 0 10px;
		}

		.vioiv-shop-search__form {
			min-height: 48px !important;
			padding: 4px 4px 4px 2px !important;
			border-radius: 18px !important;
		}

		.vioiv-shop-search__icon {
			flex-basis: 36px;
		}

		.vioiv-shop-search__icon svg {
			width: 18px;
			height: 18px;
		}

		.vioiv-shop-search__input,
		.woocommerce .vioiv-shop-search input[type="search"] {
			flex: 1 1 auto !important;
			min-width: 0 !important;
			height: 40px !important;
			padding-right: 4px !important;
			font-size: 16px !important;
		}

		.vioiv-shop-search__divider {
			margin: 10px 6px;
		}

		.vioiv-shop-search__sort {
			flex: 0 0 auto;
			max-width: 34%;
			min-width: 0;
		}

		.vioiv-shop-search__sort .woocommerce-ordering select,
		.vioiv-shop-search__sort select.orderby,
		.woocommerce .vioiv-shop-search__sort select {
			width: 100% !important;
			height: 34px !important;
			padding: 0 24px 0 10px !important;
			color: #1a1a1a !important;
			font-size: 0.72rem !important;
			font-weight: 600 !important;
			background-color: #f5f5f5 !important;
			background-image: none !important;
		}

		.vioiv-shop-search__sort .woocommerce-ordering::after {
			right: 8px;
			border-left-width: 4px;
			border-right-width: 4px;
			border-top-width: 5px;
		}
	}

	/* 全端隐藏商品卡片上的分类（Uncategorized / 未分类） */
	ul.products .product .entry-meta,
	ul.products .product .meta-categories,
	ul.products .product .ct-woo-card-categories,
	[data-products] .product .entry-meta,
	[data-products] .product .meta-categories,
	[data-products] .product .ct-woo-card-categories {
		display: none !important;
	}

	/* —— 商店卡片（对标 Woobles：方图 + 左对齐标题/星/价，无蓝按钮框） —— */
	/* 只用 ul.products / [data-products]：Woo 的 section.related.products 也带 .products，
	若对 .products 设 grid，标题会跟商品列表并排挤到半屏。 */
	ul.products,
	[data-products] {
		gap: 34px 28px !important;
		column-gap: 28px !important;
		row-gap: 42px !important;
	}

	/* 全端卡片对标截图2：图 → 标题|销量 → 星 → 价|+ */
	ul.products .product,
	[data-products] .product,
	.products .product {
		position: relative !important;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: start !important;
		column-gap: 10px !important;
		row-gap: 0 !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		text-align: left !important;
		transition: none;
		/* Blocksy 默认给每个子元素加 --product-element-spacing，会把图和标题撑开 */
		--product-element-spacing: 0px !important;
		gap: 0 !important;
	}

	/* 清掉 Blocksy：.product > * { margin-bottom: var(--product-element-spacing) } */
	ul.products .product > *,
	[data-products] .product > *,
	.products .product > * {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	ul.products .product > figure,
	[data-products] .product > figure,
	.products .product > figure,
	ul.products .product figure,
	[data-products] .product figure {
		display: block !important;
		position: relative !important;
		grid-column: 1 / -1 !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 0 !important;
	}

	ul.products .product .ct-media-container,
	[data-products] .product .ct-media-container,
	.products .product .ct-media-container {
		position: relative !important;
		width: 100% !important;
		aspect-ratio: 1 / 1 !important;
		margin: 0 0 0 !important;
		overflow: hidden !important;
		border-radius: 10px !important;
		background: #f3f1ec !important;
	}

	ul.products .product > a,
	[data-products] .product > a,
	ul.products .product .woocommerce-LoopProduct-link,
	[data-products] .product .woocommerce-LoopProduct-link {
		margin: 0 !important;
		padding: 0 !important;
	}

	ul.products .product .ct-media-container img,
	[data-products] .product .ct-media-container img,
	.products .product .ct-media-container img,
	ul.products .product img.attachment-woocommerce_thumbnail,
	[data-products] .product img.attachment-woocommerce_thumbnail,
	ul.products .product img.wp-post-image,
	[data-products] .product img.wp-post-image {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		border-radius: 10px !important;
		transform: scale(1);
		transform-origin: center center;
		transition: transform 0.45s ease;
		will-change: transform;
	}

	ul.products .product:hover .ct-media-container img,
	[data-products] .product:hover .ct-media-container img,
	.products .product:hover .ct-media-container img,
	ul.products .product:hover img.attachment-woocommerce_thumbnail,
	[data-products] .product:hover img.attachment-woocommerce_thumbnail,
	ul.products .product:hover img.wp-post-image,
	[data-products] .product:hover img.wp-post-image {
		transform: scale(1.06);
	}

	ul.products .product .woocommerce-loop-product__title,
	[data-products] .product .woocommerce-loop-product__title,
	.products .product .woocommerce-loop-product__title,
	ul.products .product h2.woocommerce-loop-product__title,
	ul.products .product h2,
	ul.products .product h3,
	[data-products] .product h2,
	[data-products] .product h3 {
		grid-column: 1 !important;
		grid-row: 2 !important;
		align-self: baseline !important;
		min-width: 0 !important;
		margin: 10px 0 4px !important;
		padding: 0 4px 0 0 !important;
		color: #1a1a1a !important;
		font-size: 17px !important;
		font-weight: 700 !important;
		line-height: 1.3 !important;
		letter-spacing: -0.01em !important;
		text-align: left !important;
	}

	ul.products .product .star-rating,
	[data-products] .product .star-rating,
	.products .product .star-rating,
	ul.products .product .ct-woo-card-rating,
	[data-products] .product .ct-woo-card-rating,
	.products .product .ct-woo-card-rating,
	.related .product .star-rating,
	.related .product .ct-woo-card-rating,
	.upsells .product .star-rating,
	.upsells .product .ct-woo-card-rating {
		display: none !important;
	}

	/* 星级在标题下；销量改到标题同行，meta 内销量隐藏 */
	.vv-shop-card-meta {
		position: static !important;
		display: flex !important;
		grid-column: 1 / -1 !important;
		grid-row: 3 !important;
		align-items: center;
		justify-content: flex-start;
		flex-wrap: wrap;
		gap: 4px 6px;
		width: auto !important;
		max-width: none;
		margin: 0 0 6px !important;
		padding: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
		box-shadow: none;
		color: #666;
		font-size: 15px;
		font-weight: 500;
		line-height: 1.2;
		text-align: left;
		pointer-events: auto;
		/* Keep price/ATC aligned when a card has no stars. */
		min-height: 17px;
	}

	.vv-shop-card-meta .vv-shop-card-sold-meta,
	.vv-shop-card-meta .vv-shop-card-dot.vv-shop-card-sold-meta {
		display: none !important;
	}

	.vv-shop-card-stars {
		position: relative;
		display: inline-block;
		height: 1em;
		font-size: 17px;
		letter-spacing: 0.02em;
		line-height: 1;
		vertical-align: middle;
	}

	.vv-shop-card-rating-slot {
		display: block;
		width: 0;
		height: 1em;
		font-size: 17px;
		line-height: 1;
		overflow: hidden;
		visibility: hidden;
		pointer-events: none;
	}

	.vv-shop-card-ways {
		display: inline-block;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.25;
		letter-spacing: 0.01em;
		color: #8a847c;
		vertical-align: middle;
	}

	.vv-shop-card-stars__base,
	.vv-shop-card-stars__fill {
		display: block;
		white-space: nowrap;
	}

	.vv-shop-card-stars__base {
		color: #e8e0d6;
	}

	.vv-shop-card-stars__fill {
		position: absolute;
		top: 0;
		left: 0;
		overflow: hidden;
		color: #f5b400;
		width: 100%;
	}

	.vv-shop-card-reviews {
		color: #666 !important;
		font-size: 16px !important;
		font-weight: 500 !important;
	}

	.vv-shop-card-sold,
	.vv-shop-card-dot {
		color: #888 !important;
		font-size: 14px !important;
		font-weight: 500 !important;
	}

	.vv-shop-card-dot {
		opacity: 0.5;
	}

	/* 标题旁销量 · 价格旁圆形 +（全端；库存 / 大胶囊 ATC 不用） */
	.vv-shop-card-sold-title {
		display: inline-block !important;
		grid-column: 2 !important;
		grid-row: 2 !important;
		align-self: baseline !important;
		margin: 10px 0 4px !important;
		padding: 0 !important;
		color: #888 !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		line-height: 1.3 !important;
		white-space: nowrap !important;
		text-align: right !important;
	}

	.vv-shop-card-price-row .vv-shop-card-sold-price,
	.vv-shop-card-price-row .vv-shop-card-stock {
		display: none !important;
	}

	.vv-shop-card-price-row {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		gap: 8px 10px !important;
		grid-column: 1 / -1 !important;
		grid-row: 4 !important;
		width: 100%;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		box-sizing: border-box !important;
	}

	.vv-shop-card-price-row .price {
		flex: 9999 0 auto !important;
		min-width: min-content !important;
		max-width: 100%;
	}

	.vv-shop-card-stock__dot {
		display: none !important;
	}

	ul.products .product .price,
	[data-products] .product .price,
	.products .product .price {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: baseline !important;
		gap: 6px !important;
		margin: 0 !important;
		padding: 0 !important;
		color: #1a1a1a !important;
		font-size: 17px !important;
		font-weight: 600 !important;
		line-height: 1.4 !important;
		text-align: left !important;
	}

	ul.products .product .price ins,
	[data-products] .product .price ins,
	ul.products .product .price del,
	[data-products] .product .price del {
		display: inline-block !important;
		float: none !important;
		white-space: nowrap !important;
	}

	ul.products .product .price ins,
	[data-products] .product .price ins {
		color: #d62828 !important;
		font-weight: 700 !important;
		text-decoration: none !important;
		background: none !important;
	}

	ul.products .product .price del,
	[data-products] .product .price del,
	ul.products .product .price del .woocommerce-Price-amount,
	[data-products] .product .price del .woocommerce-Price-amount,
	ul.products .product .price del bdi,
	[data-products] .product .price del bdi {
		margin: 0 !important;
		color: #999 !important;
		font-size: 16px !important;
		font-weight: 500 !important;
		opacity: 1;
		text-decoration: line-through !important;
	}

	/* 全端：藏大胶囊 ATC；价格旁「Add to cart」，加购后同形变绿+角标 */
	.vv-shop-card-atc:not(.vv-shop-card-atc-plus) {
		display: none !important;
	}

	.vv-shop-card-price-row .vv-shop-card-atc-plus {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: relative !important;
		flex: 1 0 auto !important;
		box-sizing: border-box !important;
		width: auto !important;
		min-width: max-content !important;
		max-width: 100% !important;
		height: 34px !important;
		min-height: 34px !important;
		margin: 0 !important;
		padding: 0 12px !important;
		border: 1px solid #c8c4be !important;
		border-radius: 999px !important;
		background: #fff !important;
		color: #4a4a4a !important;
		font-size: 12px !important;
		font-weight: 700 !important;
		letter-spacing: 0 !important;
		line-height: 1 !important;
		text-align: center !important;
		text-transform: none !important;
		text-decoration: none !important;
		box-shadow: none !important;
		white-space: nowrap !important;
		overflow: visible !important;
		cursor: pointer;
		appearance: none;
		-webkit-appearance: none;
	}

	/* Cart icon is inline SVG in HTML; kill leftover ::before/::after icon hacks. */
	.vv-shop-card-price-row .vv-shop-card-atc-plus {
		color: #1a1a1a !important;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus .vv-atc-label {
		display: block !important;
		margin: 0 !important;
		padding: 0 !important;
		font-size: inherit !important;
		font-weight: inherit !important;
		line-height: 1 !important;
		color: inherit !important;
		text-align: center !important;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus .vv-atc-cart-icon {
		display: none !important;
		position: absolute !important;
		width: 0 !important;
		height: 0 !important;
		overflow: hidden !important;
		pointer-events: none !important;
	}
	html body .vv-shop-card-price-row .vv-shop-card-atc-plus::before,
	html body .vv-shop-card-price-row .vv-shop-card-atc-plus::after,
	html body .vv-shop-card-atc-plus::before,
	html body .vv-shop-card-atc-plus::after {
		content: none !important;
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		background: none !important;
		background-image: none !important;
		-webkit-mask: none !important;
		mask: none !important;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-loading {
		pointer-events: none !important;
		opacity: 0.85 !important;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus:hover:not(.is-disabled):not(.is-added),
	.vv-shop-card-price-row .vv-shop-card-atc-plus:focus-visible:not(.is-added) {
		border-color: #c8c4be !important;
		background: #fff !important;
		color: #4a4a4a !important;
		outline: none;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-disabled {
		opacity: 0.4 !important;
		cursor: not-allowed !important;
		pointer-events: none !important;
		border-color: #ddd !important;
		background: #fff !important;
		color: #999 !important;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added,
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added:hover,
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added:focus-visible {
		pointer-events: auto !important;
		cursor: pointer !important;
		width: auto !important;
		height: 34px !important;
		min-height: 34px !important;
		max-width: 100% !important;
		padding: 0 12px !important;
		border-color: #245c48 !important;
		background: #245c48 !important;
		color: #fff !important;
		animation: vv-atc-cart-pop 0.34s ease;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added .vv-atc-label {
		display: block !important;
		color: #fff !important;
		line-height: 1 !important;
	}
	.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added .vv-atc-cart-icon {
		display: none !important;
	}

	/* Temu-style qty badge — sits outside the green circle (must beat overflow clips) */
	.vv-shop-card-price-row .vv-shop-card-atc-plus .vv-atc-qty-badge,
	.vv-shop-card-atc-plus .vv-atc-qty-badge,
	html body .vv-shop-card-atc-plus .vv-atc-qty-badge {
		position: absolute !important;
		top: -7px !important;
		right: -7px !important;
		left: auto !important;
		bottom: auto !important;
		z-index: 5 !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-width: 18px !important;
		height: 18px !important;
		padding: 0 4px !important;
		border: 2px solid #fff !important;
		border-radius: 999px !important;
		background: #ff6a00 !important;
		color: #fff !important;
		font-size: 11px !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		letter-spacing: 0 !important;
		box-sizing: border-box !important;
		pointer-events: none !important;
		box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18) !important;
	}

	.vv-shop-card-atc-plus .vv-atc-qty-badge[hidden],
	.vv-shop-card-atc-plus .vv-atc-qty-badge[data-count="0"],
	.vv-shop-card-atc-plus .vv-atc-qty-badge:empty {
		display: none !important;
	}

	@keyframes vv-atc-cart-pop {
		0% { transform: scale(0.88); }
		55% { transform: scale(1.07); }
		100% { transform: scale(1); }
	}
	/* legacy hook kept for specificity; full ATC no longer shown */
	.vv-shop-card-atc:not(.vv-shop-card-atc-plus).is-added {
		pointer-events: auto;
		cursor: pointer;
		border-color: #245c48 !important;
		background: #245c48 !important;
		color: #fff !important;
		animation: vv-atc-pop 0.4s ease;
	}

	.vv-shop-card-atc:not(.vv-shop-card-atc-plus).is-added:hover {
		background: #1f4f3d !important;
		border-color: #1f4f3d !important;
		color: #fff !important;
	}

	@keyframes vv-atc-pop {
		0% {
			transform: scale(0.96);
		}
		55% {
			transform: scale(1.04);
		}
		100% {
			transform: scale(1);
		}
	}

	/* 顶栏购物车数量轻弹一下 */
	.vv-cd-cart-pulse {
		animation: vv-cart-badge-pop 0.55s ease;
	}

	@keyframes vv-cart-badge-pop {
		0% {
			transform: scale(1);
		}
		40% {
			transform: scale(1.22);
		}
		100% {
			transform: scale(1);
		}
	}

	/* 有自研 ATC 时藏 Woo 原生加购 */
	ul.products .product:has(.vv-shop-card-atc) .button,
	ul.products .product:has(.vv-shop-card-atc) a.button,
	ul.products .product:has(.vv-shop-card-atc) .added_to_cart,
	[data-products] .product:has(.vv-shop-card-atc) .button,
	[data-products] .product:has(.vv-shop-card-atc) a.button,
	[data-products] .product:has(.vv-shop-card-atc) .added_to_cart,
	.products .product:has(.vv-shop-card-atc) .button,
	.products .product:has(.vv-shop-card-atc) a.button,
	.products .product:has(.vv-shop-card-atc) .added_to_cart,
	.related .products .product:has(.vv-shop-card-atc) .button,
	.related .products .product:has(.vv-shop-card-atc) a.button,
	.related .products .product:has(.vv-shop-card-atc) .added_to_cart,
	.upsells .products .product:has(.vv-shop-card-atc) .button,
	.upsells .products .product:has(.vv-shop-card-atc) a.button,
	.upsells .products .product:has(.vv-shop-card-atc) .added_to_cart {
		display: none !important;
	}

	@media (min-width: 769px) {
		ul.products .product .button,
		ul.products .product a.button,
		ul.products .product .added_to_cart,
		ul.products .product .add_to_cart_button,
		ul.products .product .product_type_variable,
		ul.products .product .product_type_simple,
		[data-products] .product .button,
		[data-products] .product a.button,
		[data-products] .product .added_to_cart,
		[data-products] .product .add_to_cart_button,
		[data-products] .product .product_type_variable,
		[data-products] .product .product_type_simple,
		.products .product .button,
		.products .product a.button,
		.products .product .added_to_cart {
			display: none !important;
		}
	}

	ul.products .product .onsale,
	[data-products] .product .onsale {
		top: 10px !important;
		inset-inline-start: 10px !important;
		padding: 4px 10px !important;
		font-size: 10px !important;
		font-weight: 600 !important;
		letter-spacing: 0.06em !important;
		border-radius: 999px !important;
		background: rgba(168, 62, 74, 0.92) !important;
		color: #fff !important;
		text-transform: uppercase !important;
		line-height: 1.2 !important;
		box-shadow: 0 2px 8px rgba(80, 24, 32, 0.18) !important;
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
	}

	/* 手机 / 窄屏：两列 + 更紧字号（卡片结构与桌面同为截图2） */
	@media (max-width: 768px) {
		/* 仅商品列表网格；勿选 section.related.products */
		[data-products],
		ul.products {
			--shop-columns: repeat(2, minmax(0, 1fr)) !important;
			display: grid !important;
			grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
			gap: 18px 14px !important;
			column-gap: 14px !important;
			row-gap: 18px !important;
		}

		/* Related / upsells：标题独占一行，下方两列两排；左右留白避免贴边拥挤 */
		.single-product section.related.products,
		.single-product section.up-sells.products,
		.single-product section.upsells.products,
		.single-product .related.products,
		.single-product .up-sells {
			display: block !important;
			width: 100% !important;
			max-width: 100% !important;
			box-sizing: border-box !important;
			grid-template-columns: none !important;
			gap: 0 !important;
			padding-inline: 18px !important;
		}

		.single-product .related > .ct-module-title,
		.single-product .related > h2,
		.single-product .up-sells > .ct-module-title,
		.single-product .up-sells > h2 {
			display: block !important;
			width: 100% !important;
			max-width: 100% !important;
			margin: 0 0 1.1rem !important;
			float: none !important;
			box-sizing: border-box !important;
		}

		.single-product .related ul.products,
		.single-product .up-sells ul.products {
			display: grid !important;
			grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
			width: 100% !important;
			max-width: 100% !important;
			float: none !important;
			clear: both !important;
			box-sizing: border-box !important;
			column-gap: 16px !important;
			row-gap: 18px !important;
			gap: 18px 16px !important;
		}

		[data-products] .product,
		ul.products .product,
		.products .product {
			position: relative !important;
			display: grid !important;
			grid-template-columns: minmax(0, 1fr) auto !important;
			align-items: start !important;
			column-gap: 8px !important;
			row-gap: 0 !important;
			width: 100% !important;
			max-width: none !important;
			margin: 0 !important;
			padding: 0 !important;
			background: transparent !important;
			border: 0 !important;
			border-radius: 0 !important;
			box-shadow: none !important;
			text-align: left !important;
			overflow: visible !important;
			--product-element-spacing: 0px !important;
			gap: 0 !important;
		}

		[data-products] .product > *,
		ul.products .product > *,
		.products .product > * {
			margin-top: 0 !important;
			margin-bottom: 0 !important;
		}

		[data-products] .product > figure,
		ul.products .product > figure,
		.products .product > figure,
		[data-products] .product figure,
		ul.products .product figure {
			position: relative !important;
			grid-column: 1 / -1 !important;
			margin: 0 !important;
			padding: 0 !important;
			line-height: 0 !important;
		}

		[data-products] .product .ct-media-container,
		ul.products .product .ct-media-container,
		.products .product .ct-media-container {
			width: 100% !important;
			aspect-ratio: 1 / 1 !important;
			border-radius: 14px !important;
			overflow: hidden !important;
			margin: 0 !important;
			background: #f0eeea !important;
		}

		[data-products] .product .ct-media-container img,
		ul.products .product .ct-media-container img,
		.products .product .ct-media-container img,
		[data-products] .product img.attachment-woocommerce_thumbnail,
		ul.products .product img {
			width: 100% !important;
			height: 100% !important;
			object-fit: cover !important;
			border-radius: 14px !important;
		}

		/* 手机：标题旁销量；星+评论在价格上；价格旁 + */
		.vv-shop-card-meta {
			display: flex !important;
			grid-column: 1 / -1 !important;
			grid-row: 3 !important;
			align-items: center !important;
			flex-wrap: wrap !important;
			gap: 2px 4px !important;
			width: auto !important;
			max-width: 100%;
			margin: 0 0 4px !important;
			padding: 0 !important;
			border-radius: 0 !important;
			background: transparent !important;
			box-shadow: none !important;
			pointer-events: auto;
			min-height: 12px;
		}

		.vv-shop-card-stars {
			font-size: 12px !important;
			height: 1em;
		}

		.vv-shop-card-rating-slot {
			font-size: 12px !important;
			height: 1em;
		}

		.vv-shop-card-ways {
			font-size: 11px !important;
		}

		.vv-shop-card-stars__base {
			color: #e8e0d6 !important;
		}

		.vv-shop-card-stars__fill {
			color: #f0b400 !important;
		}

		.vv-shop-card-reviews {
			color: #666 !important;
			font-size: 11px !important;
			font-weight: 500 !important;
			line-height: 1 !important;
		}

		.vv-shop-card-meta .vv-shop-card-sold-meta,
		.vv-shop-card-meta .vv-shop-card-dot.vv-shop-card-sold-meta {
			display: none !important;
		}

		.vv-shop-card-price-row .vv-shop-card-stock,
		.vv-shop-card-price-row .vv-shop-card-sold-price {
			display: none !important;
		}

		[data-products] .product .woocommerce-loop-product__title,
		[data-products] .product h2.woocommerce-loop-product__title,
		[data-products] .product h3.woocommerce-loop-product__title,
		ul.products .product .woocommerce-loop-product__title,
		ul.products .product h2.woocommerce-loop-product__title,
		ul.products .product h3.woocommerce-loop-product__title,
		.products .product .woocommerce-loop-product__title {
			grid-column: 1 !important;
			grid-row: 2 !important;
			align-self: baseline !important;
			min-width: 0 !important;
			margin: 8px 0 2px !important;
			padding: 0 2px 0 0 !important;
			color: #1a1a1a !important;
			font-size: 14px !important;
			font-weight: 600 !important;
			line-height: 1.3 !important;
			letter-spacing: -0.01em !important;
			text-align: left !important;
		}

		.vv-shop-card-sold-title {
			display: inline-block !important;
			grid-column: 2 !important;
			grid-row: 2 !important;
			align-self: baseline !important;
			margin: 8px 0 2px !important;
			padding: 0 !important;
			color: #888 !important;
			font-size: 11px !important;
			font-weight: 500 !important;
			line-height: 1.3 !important;
			white-space: nowrap !important;
			text-align: right !important;
		}

		.vv-shop-card-price-row {
			display: grid !important;
			grid-template-columns: minmax(0, 1fr) auto !important;
			grid-column: 1 / -1 !important;
			grid-row: 4 !important;
			align-items: center !important;
			column-gap: 4px !important;
			width: 100% !important;
			margin: 0 !important;
			padding: 0 !important;
		}

		.vv-shop-card-price-row .price {
			min-width: 0 !important;
			width: auto !important;
			max-width: 100% !important;
		}

		[data-products] .product .price,
		ul.products .product .price,
		.products .product .price {
			display: flex !important;
			flex-direction: row !important;
			flex-wrap: nowrap !important;
			align-items: baseline !important;
			gap: 2px !important;
			margin: 0 !important;
			color: #1a1a1a !important;
			font-size: 14px !important;
			font-weight: 600 !important;
			line-height: 1.25 !important;
			text-align: left !important;
		}

		[data-products] .product .price ins,
		ul.products .product .price ins,
		[data-products] .product .price del,
		ul.products .product .price del,
		[data-products] .product .price .woocommerce-Price-amount,
		ul.products .product .price .woocommerce-Price-amount,
		[data-products] .product .price bdi,
		ul.products .product .price bdi {
			display: inline-block !important;
			float: none !important;
			margin: 0 !important;
			padding: 0 !important;
			white-space: nowrap !important;
		}

		[data-products] .product .price del,
		ul.products .product .price del,
		[data-products] .product .price del .woocommerce-Price-amount,
		ul.products .product .price del .woocommerce-Price-amount,
		[data-products] .product .price del bdi,
		ul.products .product .price del bdi {
			margin: 0 !important;
			color: #999 !important;
			font-size: 11px !important;
			font-weight: 500 !important;
			opacity: 1;
			text-decoration: line-through !important;
		}

		[data-products] .product .price ins,
		ul.products .product .price ins {
			color: #c62828 !important;
			font-size: 14px !important;
			font-weight: 700 !important;
		}

		[data-products] .product .ct-woo-card-categories,
		[data-products] .product .ct-woo-card-category,
		[data-products] .product .posted_in,
		[data-products] .product .star-rating,
		[data-products] .product .ct-woo-card-rating,
		ul.products .product .ct-woo-card-categories,
		ul.products .product .star-rating,
		ul.products .product .ct-woo-card-rating,
		.products .product .ct-woo-card-categories,
		.products .product .star-rating,
		.products .product .ct-woo-card-rating,
		.related .product .star-rating,
		.related .product .ct-woo-card-rating,
		.upsells .product .star-rating,
		.upsells .product .ct-woo-card-rating {
			display: none !important;
		}

		/* 手机：藏大胶囊 ATC；价格旁圆形购物车图标 */
		.vv-shop-card-atc:not(.vv-shop-card-atc-plus),
		[data-products] .product .button,
		[data-products] .product a.button,
		[data-products] .product .add_to_cart_button,
		[data-products] .product .product_type_variable,
		[data-products] .product .product_type_simple,
		ul.products .product .button,
		ul.products .product a.button,
		ul.products .product .add_to_cart_button,
		ul.products .product .product_type_variable,
		ul.products .product .product_type_simple,
		.products .product .button,
		.products .product a.button {
			display: none !important;
		}

		.vv-shop-card-price-row .vv-shop-card-atc-plus,
		.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added {
			position: relative !important;
			width: 28px !important;
			min-width: 28px !important;
			max-width: 28px !important;
			height: 28px !important;
			min-height: 28px !important;
			flex-shrink: 0 !important;
			margin: 0 !important;
			justify-self: end;
			align-self: center;
			padding: 0 !important;
			font-size: 0 !important;
			line-height: 0 !important;
			border-width: 1px !important;
			border-radius: 50% !important;
		}
		.vv-shop-card-price-row .vv-shop-card-atc-plus:not(.is-added) {
			border-color: #c8c4be !important;
			color: #1a1a1a !important;
		}
		.vv-shop-card-price-row .vv-shop-card-atc-plus .vv-atc-label,
		.vv-shop-card-price-row .vv-shop-card-atc-plus.is-added .vv-atc-label {
			position: absolute !important;
			width: 1px !important;
			height: 1px !important;
			overflow: hidden !important;
			clip: rect(0, 0, 0, 0) !important;
		}
		html body .vv-shop-card-price-row .vv-shop-card-atc-plus::after,
		html body .vv-shop-card-price-row .vv-shop-card-atc-plus.is-added::after {
			content: none !important;
			display: none !important;
		}
		html body .vv-shop-card-price-row .vv-shop-card-atc-plus svg,
		html body .vv-shop-card-price-row .vv-shop-card-atc-plus .vv-atc-cart-icon,
		html body .vv-shop-card-price-row .vv-shop-card-atc-plus.is-added svg,
		html body .vv-shop-card-price-row .vv-shop-card-atc-plus.is-added .vv-atc-cart-icon {
			display: block !important;
			position: static !important;
			width: 15px !important;
			height: 15px !important;
			overflow: visible !important;
			opacity: 1 !important;
			pointer-events: none !important;
			flex: 0 0 auto !important;
			color: inherit !important;
		}



		/* 有自研 ATC 时，藏掉 Woo 原生按钮，避免双按钮 */
		[data-products] .product:has(.vv-shop-card-atc) .button,
		[data-products] .product:has(.vv-shop-card-atc) a.button,
		ul.products .product:has(.vv-shop-card-atc) .button,
		ul.products .product:has(.vv-shop-card-atc) a.button,
		.products .product:has(.vv-shop-card-atc) .button,
		.products .product:has(.vv-shop-card-atc) a.button {
			display: none !important;
		}

		[data-products] .product .added_to_cart,
		ul.products .product .added_to_cart,
		.products .product .added_to_cart {
			display: none !important;
		}

		/* 手机 SALE：左上角软胶囊，降低突兀感 */
		[data-products] .product .ct-media-container,
		ul.products .product .ct-media-container {
			position: relative !important;
		}

		[data-products] .product .onsale,
		ul.products .product .onsale {
			top: 8px !important;
			bottom: auto !important;
			left: 8px !important;
			right: auto !important;
			inset-inline-start: 8px !important;
			inset-inline-end: auto !important;
			width: auto !important;
			min-width: 0 !important;
			margin: 0 !important;
			padding: 3px 8px !important;
			border-radius: 999px !important;
			background: rgba(168, 62, 74, 0.9) !important;
			color: #fff !important;
			font-size: 9px !important;
			font-weight: 600 !important;
			letter-spacing: 0.06em !important;
			text-align: center !important;
			text-transform: uppercase !important;
			line-height: 1.25 !important;
			z-index: 5 !important;
			box-shadow: 0 2px 8px rgba(80, 24, 32, 0.2) !important;
			backdrop-filter: blur(2px);
			-webkit-backdrop-filter: blur(2px);
		}
	}

	@media (max-width: 380px) {
		[data-products],
		ul.products {
			gap: 18px 10px !important;
			column-gap: 10px !important;
			row-gap: 20px !important;
		}

		[data-products] .product .woocommerce-loop-product__title,
		ul.products .product .woocommerce-loop-product__title,
		.products .product .woocommerce-loop-product__title {
			font-size: 13px !important;
		}

		[data-products] .product .button,
		ul.products .product .button,
		ul.products .product a.button {
			font-size: 10px !important;
			min-height: 36px !important;
			padding: 8px 8px !important;
		}
	}

	/* 全量产品列表：隐藏无限滚动分页 / 底部加载圈 */
	body.woocommerce-shop .ct-pagination,
	body.tax-product_cat .ct-pagination,
	body.tax-product_tag .ct-pagination,
	body.post-type-archive-product .ct-pagination {
		display: none !important;
	}
