/**
 * Wishlist Pro — native C3A front experience.
 */

.c3ace-wishlist-shell {
	--c3ace-wl-hero-bg: linear-gradient(135deg, #2b78c5 0%, #1d5a9e 58%, #164a84 100%);
	--c3ace-wl-hero-text: #fff;
	--c3ace-wl-hero-muted: rgba(255, 255, 255, 0.88);
	--c3ace-wl-accent: #2b78c5;
	--c3ace-wl-accent-dark: #1d5a9e;
	--c3ace-wl-yellow: #f5c518;
	--c3ace-wl-surface: #fff;
	--c3ace-wl-border: rgba(43, 120, 197, 0.18);
	--c3ace-wl-hero-badge-bg: rgba(255, 255, 255, 0.22);
	--c3ace-wl-hero-badge-text: #fff;
	--c3ace-wl-ink: #0f172a;
	--c3ace-wl-muted: #334155;
	--c3ace-wl-rm-bg: rgba(255, 255, 255, 0.94);
	--c3ace-wl-rm-color: #334155;
	--c3ace-wl-rm-hover-bg: #fff1f2;
	--c3ace-wl-rm-hover-color: #e11d48;
	--c3ace-wl-rm-shadow: 0 8px 22px rgba(15, 23, 42, 0.18);
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 4px 32px;
	color: var(--c3ace-wl-ink, #0f172a);
	isolation: isolate;
}

.c3ace-wishlist-radius-soft { --c3ace-wl-radius: 14px; }
.c3ace-wishlist-radius-pill { --c3ace-wl-radius: 22px; }
.c3ace-wishlist-radius-sharp { --c3ace-wl-radius: 6px; }

/* Hero */
.c3ace-wishlist-hero {
	position: relative;
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 16px;
	align-items: center;
	margin: 0 0 22px;
	padding: 22px 24px;
	border-radius: calc(var(--c3ace-wl-radius, 14px) + 2px);
	background: var(--c3ace-wl-hero-bg) !important;
	color: var(--c3ace-wl-hero-text) !important;
	overflow: hidden;
	box-shadow: 0 18px 40px color-mix(in srgb, var(--c3ace-wl-accent) 28%, transparent);
	z-index: 0;
}

.c3ace-wishlist-hero__glow {
	position: absolute;
	right: -36px;
	top: -48px;
	width: 160px;
	height: 160px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--c3ace-wl-yellow) 42%, transparent);
	pointer-events: none;
	z-index: 0;
}

.c3ace-wishlist-hero__glow--alt {
	right: auto;
	left: -48px;
	top: auto;
	bottom: -60px;
	width: 180px;
	height: 180px;
	background: color-mix(in srgb, var(--c3ace-wl-accent) 28%, transparent);
	opacity: 0.7;
}

.c3ace-wishlist-hero__icon,
.c3ace-wishlist-hero__body,
.c3ace-wishlist-hero__badge {
	position: relative;
	z-index: 1;
}

.c3ace-wishlist-hero__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 16px;
	background: color-mix(in srgb, var(--c3ace-wl-hero-text) 14%, transparent);
	border: 1px solid color-mix(in srgb, var(--c3ace-wl-hero-text) 22%, transparent);
	color: var(--c3ace-wl-hero-text) !important;
}

.c3ace-wishlist-hero__icon .dashicons {
	font-size: 28px;
	width: 28px;
	height: 28px;
}

.c3ace-wishlist-hero__eyebrow {
	margin: 0 0 4px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--c3ace-wl-hero-muted) !important;
	opacity: 1;
}

.c3ace-wishlist-hero__title {
	margin: 0;
	font-size: clamp(22px, 3.2vw, 30px);
	line-height: 1.2;
	color: var(--c3ace-wl-hero-text) !important;
}

.c3ace-wishlist-hero__meta {
	margin: 6px 0 0;
	font-size: 14px;
	color: var(--c3ace-wl-hero-muted) !important;
	opacity: 1;
}

.c3ace-wishlist-hero__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	border-radius: 999px;
	font-size: 16px;
	font-weight: 800;
	background: var(--c3ace-wl-hero-badge-bg) !important;
	color: var(--c3ace-wl-hero-badge-text) !important;
	border: 0;
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12);
}

/* Hero styles */
.c3ace-wl-hero-spotlight .c3ace-wishlist-hero {
	padding: 26px 28px;
	box-shadow: 0 22px 50px color-mix(in srgb, var(--c3ace-wl-accent) 32%, transparent);
}
.c3ace-wl-hero-spotlight .c3ace-wishlist-hero::before {
	content: "";
	position: absolute;
	inset: -20%;
	background: radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--c3ace-wl-hero-text) 18%, transparent), transparent 42%),
		radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--c3ace-wl-yellow) 35%, transparent), transparent 36%);
	pointer-events: none;
}

.c3ace-wl-hero-mesh .c3ace-wishlist-hero__glow,
.c3ace-wl-hero-mesh .c3ace-wishlist-hero__glow--alt {
	filter: blur(8px);
	opacity: 0.95;
}

.c3ace-wl-hero-glass .c3ace-wishlist-hero {
	border: 1px solid color-mix(in srgb, var(--c3ace-wl-hero-text) 18%, transparent);
	backdrop-filter: blur(16px);
	box-shadow: inset 0 1px 0 color-mix(in srgb, var(--c3ace-wl-hero-text) 22%, transparent), 0 18px 40px rgba(15, 23, 42, 0.16);
}

.c3ace-wl-hero-aurora .c3ace-wishlist-hero {
	background-size: 180% 180% !important;
}

.c3ace-wl-hero-ribbon .c3ace-wishlist-hero {
	padding-left: 28px;
}
.c3ace-wl-hero-ribbon .c3ace-wishlist-hero::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 7px;
	background: var(--c3ace-wl-yellow);
	z-index: 2;
}

.c3ace-wl-hero-editorial .c3ace-wishlist-hero {
	padding: 28px 30px;
}
.c3ace-wl-hero-editorial .c3ace-wishlist-hero__title {
	letter-spacing: -0.03em;
	font-size: clamp(26px, 4vw, 36px);
}
.c3ace-wl-hero-editorial .c3ace-wishlist-hero__eyebrow {
	letter-spacing: 0.18em;
}

/* Hero motion */
.c3ace-wl-motion-orbit .c3ace-wishlist-hero__glow {
	animation: c3ace-wl-orbit 10s ease-in-out infinite;
}
.c3ace-wl-motion-orbit .c3ace-wishlist-hero__glow--alt {
	animation: c3ace-wl-orbit 12s ease-in-out infinite reverse;
}
.c3ace-wl-motion-shimmer .c3ace-wishlist-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(110deg, transparent 30%, color-mix(in srgb, var(--c3ace-wl-hero-text) 18%, transparent) 50%, transparent 70%);
	transform: translateX(-60%);
	animation: c3ace-wl-shimmer 3.6s ease-in-out infinite;
	pointer-events: none;
}
.c3ace-wl-motion-pulse .c3ace-wishlist-hero__badge {
	animation: c3ace-wl-pulse 2.2s ease-in-out infinite;
}
.c3ace-wl-motion-aurora .c3ace-wishlist-hero {
	background-size: 220% 220% !important;
	animation: c3ace-wl-aurora 8s ease infinite;
}

@media (prefers-reduced-motion: reduce) {
	.c3ace-wishlist-hero__glow,
	.c3ace-wishlist-hero__badge,
	.c3ace-wishlist-hero,
	.c3ace-wishlist-hero::before {
		animation: none !important;
	}
}

/* Dark mode — only when forced in Studio or JS detects a dark PAGE background */
.c3ace-wishlist-shell.is-dark,
.c3ace-wishlist-shell.c3ace-wl-mode-dark {
	--c3ace-wl-hero-bg: var(--c3ace-wl-dark-hero-bg);
	--c3ace-wl-hero-text: var(--c3ace-wl-dark-hero-text);
	--c3ace-wl-hero-muted: var(--c3ace-wl-dark-hero-muted);
	--c3ace-wl-hero-badge-bg: var(--c3ace-wl-dark-hero-badge-bg);
	--c3ace-wl-hero-badge-text: var(--c3ace-wl-dark-hero-badge-text);
	--c3ace-wl-surface: var(--c3ace-wl-dark-surface);
	--c3ace-wl-ink: var(--c3ace-wl-dark-ink);
	--c3ace-wl-muted: var(--c3ace-wl-dark-muted);
	--c3ace-wl-border: var(--c3ace-wl-dark-border);
	--c3ace-wl-accent: var(--c3ace-wl-dark-accent);
	color: var(--c3ace-wl-dark-ink);
}

/* Items — cards */
.c3ace-wishlist-items--cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 22px !important;
	row-gap: 22px !important;
}

.c3ace-wishlist-items--cards > .c3ace-wishlist-item {
	margin: 0 !important;
}

.c3ace-wishlist-items--cards .c3ace-wishlist-item {
	display: flex;
	flex-direction: column;
	background: var(--c3ace-wl-surface) !important;
	border: 1px solid var(--c3ace-wl-border);
	border-radius: var(--c3ace-wl-radius, 14px);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
	overflow: hidden;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	color: var(--c3ace-wl-ink) !important;
}

.c3ace-wishlist-items--cards .c3ace-wishlist-item:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 32px rgba(15, 23, 42, 0.1);
}

.c3ace-wishlist-items--cards .c3ace-wishlist-item__media {
	display: block;
}

.c3ace-wishlist-items--cards .c3ace-wishlist-item__thumb {
	display: block;
	aspect-ratio: 1;
	background: #f8fafc;
}

.c3ace-wishlist-items--cards .c3ace-wishlist-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.c3ace-wishlist-items--cards .c3ace-wishlist-item__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 14px;
	flex: 1;
}

/* Items — list */
.c3ace-wishlist-items--list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
	row-gap: 20px !important;
}

.c3ace-wishlist-items--list > .c3ace-wishlist-item {
	display: grid;
	grid-template-columns: 100px 1fr;
	gap: 16px;
	align-items: center;
	padding: 16px;
	margin: 0 0 20px !important;
	background: var(--c3ace-wl-surface) !important;
	border: 1px solid var(--c3ace-wl-border);
	border-radius: var(--c3ace-wl-radius, 14px);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
	color: var(--c3ace-wl-ink) !important;
}

.c3ace-wishlist-items--list > .c3ace-wishlist-item:last-child {
	margin-bottom: 0 !important;
}

.c3ace-wishlist-items--list .c3ace-wishlist-item__thumb img {
	border-radius: calc(var(--c3ace-wl-radius, 14px) * 0.6);
	width: 100%;
	height: auto;
}

/* Items — table */
.c3ace-wishlist-items--table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: var(--c3ace-wl-surface) !important;
	border-radius: var(--c3ace-wl-radius, 14px);
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
	border: 1px solid var(--c3ace-wl-border);
	color: var(--c3ace-wl-ink) !important;
}

.c3ace-wishlist-items--table th {
	background: color-mix(in srgb, var(--c3ace-wl-accent) 12%, #fff);
	color: var(--c3ace-wl-accent-dark);
	font-weight: 700;
	padding: 12px 16px;
	text-align: left;
	border-bottom: 1px solid var(--c3ace-wl-border);
}

.c3ace-wishlist-items--table td {
	padding: 14px 16px;
	border-bottom: 1px solid var(--c3ace-wl-border);
	vertical-align: middle;
}

.c3ace-wishlist-item__product a {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--c3ace-wl-ink) !important;
	text-decoration: none;
	font-weight: 600;
}

.c3ace-wishlist-item__product img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 8px;
}

.c3ace-wishlist-item__title {
	color: var(--c3ace-wl-ink) !important;
	text-decoration: none;
	font-weight: 700;
	font-size: 1rem;
}

.c3ace-wishlist-item__title:hover {
	color: var(--c3ace-wl-accent) !important;
}

.c3ace-wishlist-item__price {
	color: var(--c3ace-wl-accent) !important;
	font-weight: 700;
}

.c3ace-wishlist-item__stock {
	font-size: 0.85rem;
	color: var(--c3ace-wl-muted) !important;
}


.c3ace-wishlist-item__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: stretch;
	margin-top: auto;
	width: 100%;
}

.c3ace-wishlist-item__actions:empty {
	display: none;
}

.c3ace-wishlist-item__cart,
.c3ace-wishlist-item__cart.button,
button.c3ace-wishlist-item__cart,
a.c3ace-wishlist-item__cart {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	box-sizing: border-box !important;
	width: auto;
	min-width: 0 !important;
	max-width: 100% !important;
	min-height: 48px !important;
	height: auto !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	position: relative !important;
	overflow: visible !important;
	vertical-align: middle !important;
	background: var(--c3ace-wl-accent, #2b78c5) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 12px !important;
	padding: 0.75rem 1.25rem !important;
	font-family: inherit !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	line-height: 1 !important;
	letter-spacing: 0.01em !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	text-indent: 0 !important;
	white-space: nowrap !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	text-overflow: clip !important;
	cursor: pointer;
	transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, filter 0.22s ease, border-color 0.22s ease;
	box-shadow: none !important;
}

.c3ace-wishlist-item__cart-inner {
	position: relative;
	z-index: 2;
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
	text-align: center !important;
	white-space: nowrap !important;
	overflow: visible !important;
	pointer-events: none;
}

.c3ace-wishlist-item__cart-label {
	display: inline-block !important;
	flex: 0 1 auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	white-space: nowrap !important;
	overflow: visible !important;
	text-overflow: clip !important;
	vertical-align: middle !important;
}

.c3ace-wishlist-item__cart-icon,
.c3ace-wishlist-item__cart-icon.dashicons,
.c3ace-wishlist-item__cart .dashicons {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 18px !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	font-size: 18px !important;
	line-height: 1 !important;
	vertical-align: middle !important;
	speak: never;
	text-align: center !important;
	overflow: visible !important;
}

.c3ace-wishlist-item__cart-icon.dashicons::before,
.c3ace-wishlist-item__cart .dashicons::before {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	font-size: 18px !important;
	line-height: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	position: static !important;
	vertical-align: middle !important;
}

.c3ace-wl-cta-w-full .c3ace-wishlist-item__actions .c3ace-wishlist-item__cart,
.c3ace-wl-cta-w-full .c3ace-wishlist-item__cart,
.c3ace-wl-cta-w-full .c3ace-wishlist-item__cart.button {
	flex: 1 1 100% !important;
	width: 100% !important;
}

.c3ace-wl-cta-w-auto .c3ace-wishlist-item__cart,
.c3ace-wl-cta-w-auto .c3ace-wishlist-item__cart.button {
	flex: 0 1 auto !important;
	width: auto !important;
	max-width: 100% !important;
}

/* Glow / animations on shell (not only body) — Elementor-safe */
.c3ace-wishlist-shell.c3ace-wishlist-glow-cta .c3ace-wishlist-item__cart:hover {
	transform: translateY(-1px) scale(1.02);
	box-shadow: 0 6px 20px color-mix(in srgb, var(--c3ace-wl-accent) 35%, transparent);
}

.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item {
	animation: c3ace-wl-fade-in 0.5s ease backwards;
}

.c3ace-wishlist-item__media {
	position: relative;
	display: block;
}

.c3ace-wishlist-shell .c3ace-wishlist-item__remove {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	width: 40px;
	height: 40px;
	min-width: 40px;
	min-height: 40px;
	border: 0 !important;
	outline: none;
	border-radius: 999px;
	background: var(--c3ace-wl-rm-bg, rgba(255, 255, 255, 0.94)) !important;
	color: var(--c3ace-wl-rm-color, #334155) !important;
	box-shadow: var(--c3ace-wl-rm-shadow, 0 8px 22px rgba(15, 23, 42, 0.18));
	cursor: pointer;
	line-height: 1;
	text-decoration: none;
	text-transform: none;
	font: inherit;
	font-weight: 700;
	letter-spacing: 0;
	z-index: 2;
	transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.c3ace-wishlist-shell .c3ace-wishlist-item__remove .dashicons {
	width: 18px;
	height: 18px;
	font-size: 18px;
	line-height: 1;
	transition: transform 0.25s ease;
}

.c3ace-wishlist-shell .c3ace-wishlist-item__remove-label {
	font-size: 12px;
	line-height: 1;
}

.c3ace-wishlist-shell .c3ace-wishlist-item__remove:hover,
.c3ace-wishlist-shell .c3ace-wishlist-item__remove:focus-visible {
	background: var(--c3ace-wl-rm-hover-bg, #fff1f2) !important;
	color: var(--c3ace-wl-rm-hover-color, #e11d48) !important;
}

.c3ace-wishlist-shell .c3ace-wishlist-item__remove:focus-visible {
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--c3ace-wl-rm-hover-color, #e11d48) 35%, transparent), var(--c3ace-wl-rm-shadow, 0 8px 22px rgba(15, 23, 42, 0.18));
}

.c3ace-wishlist-shell .c3ace-wishlist-item__remove:disabled {
	opacity: 0.55;
	cursor: wait;
}

.c3ace-wishlist-shell.c3ace-wl-rm-size-sm .c3ace-wishlist-item__remove {
	width: 32px;
	height: 32px;
	min-width: 32px;
	min-height: 32px;
}
.c3ace-wishlist-shell.c3ace-wl-rm-size-sm .c3ace-wishlist-item__remove .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}
.c3ace-wishlist-shell.c3ace-wl-rm-size-lg .c3ace-wishlist-item__remove {
	width: 46px;
	height: 46px;
	min-width: 46px;
	min-height: 46px;
}
.c3ace-wishlist-shell.c3ace-wl-rm-size-lg .c3ace-wishlist-item__remove .dashicons {
	width: 22px;
	height: 22px;
	font-size: 22px;
}

.c3ace-wishlist-shell.c3ace-wl-rm-shape-rounded .c3ace-wishlist-item__remove {
	border-radius: 10px;
}
.c3ace-wishlist-shell.c3ace-wl-rm-shape-pill .c3ace-wishlist-item__remove,
.c3ace-wishlist-shell.c3ace-wl-rm-labeled .c3ace-wishlist-item__remove {
	width: auto;
	min-width: 40px;
	padding: 0 12px;
	border-radius: 999px;
}

.c3ace-wishlist-shell.c3ace-wl-rm-pos-overlay .c3ace-wishlist-item__media .c3ace-wishlist-item__remove {
	position: absolute;
	top: 10px;
	right: 10px;
}

.c3ace-wishlist-shell.c3ace-wl-rm-fx-lift .c3ace-wishlist-item__remove:hover {
	transform: translateY(-3px) scale(1.06);
}
.c3ace-wishlist-shell.c3ace-wl-rm-fx-glow .c3ace-wishlist-item__remove:hover {
	box-shadow: var(--c3ace-wl-rm-shadow), 0 0 0 6px color-mix(in srgb, var(--c3ace-wl-rm-hover-color, #e11d48) 18%, transparent);
}
.c3ace-wishlist-shell.c3ace-wl-rm-fx-shake .c3ace-wishlist-item__remove:hover {
	animation: c3ace-wl-rm-shake 0.4s ease;
}
.c3ace-wishlist-shell.c3ace-wl-rm-fx-spin .c3ace-wishlist-item__remove:hover .dashicons {
	transform: rotate(90deg);
}

.c3ace-wishlist-item.is-removing {
	animation: c3ace-wl-remove-out 0.28s ease forwards;
	pointer-events: none;
}

/* Empty */
.c3ace-wishlist-empty {
	text-align: center;
	padding: 48px 24px;
	background: var(--c3ace-wl-surface) !important;
	border-radius: var(--c3ace-wl-radius, 14px);
	border: 2px dashed var(--c3ace-wl-border);
	color: var(--c3ace-wl-ink) !important;
}

.c3ace-wishlist-empty__icon {
	display: block;
	font-size: 48px;
	width: 48px;
	height: 48px;
	margin: 0 auto 16px;
	color: var(--c3ace-wl-accent);
	opacity: 0.7;
}

.c3ace-wishlist-empty h2 {
	margin: 0 0 8px;
	font-size: 1.35rem;
	color: var(--c3ace-wl-ink) !important;
}

.c3ace-wishlist-empty p {
	margin: 0 0 16px;
	color: var(--c3ace-wl-muted) !important;
}

.c3ace-wishlist-empty .c3ace-btn--primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 22px;
	border-radius: 999px;
	background: var(--c3ace-wl-accent);
	color: #fff !important;
	text-decoration: none;
	font-weight: 700;
	transition: transform 0.2s, box-shadow 0.2s;
}

.c3ace-wishlist-empty .c3ace-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px color-mix(in srgb, var(--c3ace-wl-accent) 30%, transparent);
}

/* Header link */
.c3ace-wishlist-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	position: relative;
	color: inherit;
	text-decoration: none;
	transition: transform 0.2s;
}

.c3ace-wishlist-link:hover {
	transform: scale(1.05);
}

.c3ace-wishlist-link__icon .dashicons {
	font-size: 20px;
	width: 20px;
	height: 20px;
	color: var(--c3ace-wl-accent, currentColor);
}

.c3ace-wishlist-link__label {
	font-size: 13px;
	font-weight: 600;
}

.c3ace-wishlist-link__count {
	position: absolute;
	top: -8px;
	right: -10px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	background: var(--c3ace-wl-accent, #2b78c5);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.c3ace-wishlist-link__count.is-empty {
	display: none;
}

/* Add button */
.c3ace-wishlist-add {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 8px 0 0;
	padding: 10px 16px;
	border: 1px solid var(--c3ace-wl-border, #e2e8f0);
	border-radius: 999px;
	background: #fff;
	color: var(--c3ace-wl-accent, #2b78c5);
	font-weight: 700;
	cursor: pointer;
	transition: background 0.2s, color 0.2s, transform 0.2s;
}

.c3ace-wishlist-add:hover,
.c3ace-wishlist-add.is-active {
	background: var(--c3ace-wl-accent, #2b78c5);
	color: #fff;
	border-color: transparent;
}

.c3ace-wishlist-add--compact {
	padding: 8px;
	margin: 0;
}

.c3ace-wishlist-add--compact .c3ace-wishlist-add__label {
	display: none;
}

/* Animations */
body.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item {
	animation: c3ace-wl-fade-in 0.5s ease backwards;
}

body.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(1) { animation-delay: 0.05s; }
body.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(2) { animation-delay: 0.1s; }
body.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(3) { animation-delay: 0.15s; }
body.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(n+4) { animation-delay: 0.2s; }

body.c3ace-wishlist-animations .c3ace-wishlist-items--list .c3ace-wishlist-item {
	animation: c3ace-wl-slide-left 0.45s ease backwards;
}

@keyframes c3ace-wl-fade-in {
	from { opacity: 0; transform: translateY(12px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes c3ace-wl-slide-left {
	from { opacity: 0; transform: translateX(-16px); }
	to { opacity: 1; transform: translateX(0); }
}

@keyframes c3ace-wl-rm-shake {
	0%, 100% { transform: rotate(0); }
	25% { transform: rotate(-8deg) scale(1.04); }
	75% { transform: rotate(8deg) scale(1.04); }
}

@keyframes c3ace-wl-remove-out {
	from { opacity: 1; transform: scale(1); }
	to { opacity: 0; transform: scale(0.92) translateY(8px); }
}

@keyframes c3ace-wl-orbit {
	0%, 100% { transform: translate(0, 0) scale(1); }
	50% { transform: translate(-18px, 14px) scale(1.08); }
}

@keyframes c3ace-wl-shimmer {
	0% { transform: translateX(-70%); }
	100% { transform: translateX(70%); }
}

@keyframes c3ace-wl-pulse {
	0%, 100% { transform: scale(1); box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12); }
	50% { transform: scale(1.06); box-shadow: 0 10px 26px rgba(15, 23, 42, 0.2); }
}

@keyframes c3ace-wl-aurora {
	0% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
	100% { background-position: 0% 50%; }
}

/* Remove confirm */
.c3ace-wl-remove-confirm {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: rgba(15, 23, 42, 0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	animation: c3ace-wl-fade-in 0.2s ease;
}

.c3ace-wl-toast {
	position: fixed;
	left: 50%;
	bottom: 28px;
	z-index: 100000;
	transform: translate(-50%, 12px);
	max-width: min(420px, calc(100vw - 32px));
	padding: 12px 18px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	text-align: center;
	color: #fff;
	background: #0f172a;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.28);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.22s ease, transform 0.22s ease;
}
.c3ace-wl-toast.is-visible {
	opacity: 1;
	transform: translate(-50%, 0);
}
.c3ace-wl-toast.is-ok {
	background: #2b78c5;
}
.c3ace-wl-toast.is-error {
	background: #b42318;
}
.c3ace-wishlist-item__cart.is-loading {
	opacity: 0.72;
	cursor: wait;
}

.c3ace-wl-remove-confirm__box {
	background: var(--c3ace-wl-surface, #fff);
	border-radius: var(--c3ace-wl-radius, 14px);
	padding: 24px;
	max-width: 360px;
	width: 100%;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
	text-align: center;
}

.c3ace-wl-remove-confirm__actions {
	display: flex;
	gap: 10px;
	justify-content: center;
	margin-top: 18px;
}

.c3ace-wl-remove-confirm__btn {
	padding: 10px 18px;
	border-radius: 999px;
	border: none;
	font-weight: 700;
	cursor: pointer;
}

.c3ace-wl-remove-confirm__btn--cancel { background: #f1f5f9; color: #334155; }
.c3ace-wl-remove-confirm__btn--confirm { background: #ef4444; color: #fff; }

@media (max-width: 640px) {
	.c3ace-wishlist-items--list .c3ace-wishlist-item {
		grid-template-columns: 80px 1fr;
	}
	.c3ace-wishlist-items--cards {
		grid-template-columns: 1fr;
	}
	.c3ace-wishlist-hero {
		grid-template-columns: 1fr;
		text-align: center;
	}
	.c3ace-wishlist-hero__badge {
		justify-self: center;
	}
}

/* ==========================================================================
   Wishlist Visual Pro — atmosphere, cards, CTA, motion (3.14.38)
   Same language as Cart / Checkout / Thank You Visual Pro.
   ========================================================================== */

body.c3ace-surface-wishlist {
	position: relative;
	isolation: isolate;
}

body.c3ace-surface-wishlist.c3ace-wl-ambient-soft::before,
body.c3ace-surface-wishlist.c3ace-wl-ambient-mesh::before,
body.c3ace-surface-wishlist.c3ace-wl-ambient-aurora::before,
body.c3ace-surface-wishlist.c3ace-wl-ambient-lined::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
}
body.c3ace-wl-ambient-soft::before {
	background:
		radial-gradient(900px 420px at 12% -10%, color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 16%, transparent), transparent 70%),
		radial-gradient(700px 380px at 92% 8%, color-mix(in srgb, var(--c3ace-wl-yellow, #f5c518) 14%, transparent), transparent 65%),
		linear-gradient(180deg, #f4f8fc 0%, #eef3f9 48%, #f7fafc 100%);
}
body.c3ace-wl-ambient-mesh::before {
	background:
		radial-gradient(520px 520px at 8% 12%, color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 22%, transparent), transparent 60%),
		radial-gradient(460px 460px at 88% 18%, color-mix(in srgb, var(--c3ace-wl-yellow, #f5c518) 18%, transparent), transparent 62%),
		radial-gradient(580px 420px at 70% 88%, color-mix(in srgb, var(--c3ace-wl-accent-dark, #1d5a9e) 14%, transparent), transparent 68%),
		linear-gradient(165deg, #f3f7fb 0%, #e9f0f8 42%, #f6f8fb 100%);
}
body.c3ace-wl-ambient-mesh.c3ace-wl-motion-orbit::before,
body.c3ace-wl-ambient-mesh.c3ace-wl-motion-aurora::before {
	animation: c3ace-wl-ambient-drift 14s ease-in-out infinite alternate;
}
body.c3ace-wl-ambient-aurora::before {
	background: linear-gradient(
		125deg,
		color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 18%, #f8fbff),
		color-mix(in srgb, var(--c3ace-wl-yellow, #f5c518) 12%, #f4f7fb) 38%,
		color-mix(in srgb, var(--c3ace-wl-accent-dark, #1d5a9e) 16%, #eef4fb) 68%,
		#f7fafc
	);
	background-size: 180% 180%;
}
body.c3ace-wl-ambient-aurora.c3ace-wl-motion-aurora::before,
body.c3ace-wl-ambient-aurora.c3ace-wl-motion-orbit::before {
	animation: c3ace-wl-aurora-shift 10s ease infinite;
}
body.c3ace-wl-ambient-lined::before {
	background-color: #f3f6fa;
	background-image:
		repeating-linear-gradient(
			-18deg,
			transparent,
			transparent 11px,
			color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 5%, transparent) 11px,
			color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 5%, transparent) 12px
		),
		radial-gradient(800px 360px at 20% 0%, color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 10%, transparent), transparent 70%);
}
@keyframes c3ace-wl-ambient-drift {
	from { transform: translate3d(0, 0, 0) scale(1); }
	to { transform: translate3d(-18px, 12px, 0) scale(1.04); }
}
@keyframes c3ace-wl-aurora-shift {
	0%, 100% { background-position: 0% 40%; }
	50% { background-position: 100% 60%; }
}

/* Product cards + empty + table shell */
.c3ace-wishlist-shell .c3ace-wishlist-item,
.c3ace-wishlist-shell .c3ace-wishlist-empty,
.c3ace-wishlist-shell .c3ace-wishlist-items--table,
.c3ace-wishlist-preview-live .c3ace-wishlist-item {
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.c3ace-wl-cards-card .c3ace-wishlist-item,
.c3ace-wl-cards-card .c3ace-wishlist-empty,
.c3ace-wl-cards-card .c3ace-wishlist-items--table {
	border: 1px solid var(--c3ace-wl-border, #e2e8f0) !important;
	background: var(--c3ace-wl-surface, #fff) !important;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06) !important;
}

.c3ace-wl-cards-soft .c3ace-wishlist-item,
.c3ace-wl-cards-soft .c3ace-wishlist-empty {
	border: 0 !important;
	box-shadow: none !important;
	background: color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 7%, #fff) !important;
}

.c3ace-wl-cards-outline .c3ace-wishlist-item,
.c3ace-wl-cards-outline .c3ace-wishlist-empty {
	border: 1.5px solid var(--c3ace-wl-border, #e2e8f0) !important;
	background: var(--c3ace-wl-surface, #fff) !important;
	box-shadow: none !important;
}

.c3ace-wl-cards-elevated .c3ace-wishlist-item,
.c3ace-wl-cards-elevated .c3ace-wishlist-empty {
	border: 0 !important;
	background: var(--c3ace-wl-surface, #fff) !important;
	box-shadow: 0 22px 48px rgba(15, 23, 42, 0.12) !important;
}

.c3ace-wl-cards-brand .c3ace-wishlist-item {
	border: 1px solid color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 22%, transparent) !important;
	background: var(--c3ace-wl-surface, #fff) !important;
	box-shadow: 0 12px 30px color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 12%, transparent) !important;
	overflow: hidden;
}
.c3ace-wl-cards-brand .c3ace-wishlist-items--cards .c3ace-wishlist-item__media {
	background: color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 10%, #fff);
}

.c3ace-wl-cards-ribbon .c3ace-wishlist-item,
.c3ace-wl-cards-ribbon .c3ace-wishlist-empty,
.c3ace-wl-cards-ribbon .c3ace-wishlist-hero,
.c3ace-wl-cards-ribbon .c3ace-wishlist-items--table {
	position: relative;
	border: 1px solid var(--c3ace-wl-border, #e2e8f0) !important;
	background: var(--c3ace-wl-surface, #fff) !important;
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.07) !important;
	overflow: hidden;
}
.c3ace-wl-cards-ribbon .c3ace-wishlist-hero {
	/* keep palette hero bg; still get ribbon bar */
	background: var(--c3ace-wl-hero-bg) !important;
}
.c3ace-wl-cards-ribbon .c3ace-wishlist-item::before,
.c3ace-wl-cards-ribbon .c3ace-wishlist-empty::before,
.c3ace-wl-cards-ribbon .c3ace-wishlist-hero::before,
.c3ace-wl-cards-ribbon .c3ace-wishlist-items--table::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--c3ace-wl-accent, #2b78c5), var(--c3ace-wl-yellow, #f5c518));
	z-index: 3;
	pointer-events: none;
}

.c3ace-wl-cards-flat .c3ace-wishlist-item,
.c3ace-wl-cards-flat .c3ace-wishlist-empty {
	border: 1px solid var(--c3ace-wl-border, #e2e8f0) !important;
	background: var(--c3ace-wl-surface, #fff) !important;
	box-shadow: none !important;
}

.c3ace-wl-cards-minimal .c3ace-wishlist-item,
.c3ace-wl-cards-minimal .c3ace-wishlist-empty {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.c3ace-wl-cards-elevated .c3ace-wishlist-item:hover,
.c3ace-wl-cards-ribbon .c3ace-wishlist-item:hover {
	transform: translateY(-3px);
}

/* CTA themes on cart / empty buttons */
.c3ace-wl-cta-brand .c3ace-wishlist-item__cart,
.c3ace-wl-cta-brand .c3ace-wishlist-empty .button,
.c3ace-wl-cta-brand .c3ace-wishlist-empty a.button {
	background: linear-gradient(135deg, var(--c3ace-wl-accent, #2b78c5), var(--c3ace-wl-accent-dark, #1d5a9e)) !important;
	color: #fff !important;
	border: 0 !important;
}
.c3ace-wl-cta-gold .c3ace-wishlist-item__cart,
.c3ace-wl-cta-gold .c3ace-wishlist-empty .button,
.c3ace-wl-cta-gold .c3ace-wishlist-empty a.button {
	background: linear-gradient(135deg, var(--c3ace-wl-yellow, #f5c518), #e0a800) !important;
	color: #0f172a !important;
	border: 0 !important;
	box-shadow: 0 10px 24px color-mix(in srgb, var(--c3ace-wl-yellow, #f5c518) 40%, transparent);
}
.c3ace-wl-cta-glass .c3ace-wishlist-item__cart,
.c3ace-wl-cta-glass .c3ace-wishlist-empty .button,
.c3ace-wl-cta-glass .c3ace-wishlist-empty a.button {
	background: color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 18%, rgba(255, 255, 255, 0.72)) !important;
	color: var(--c3ace-wl-accent-dark, #1d5a9e) !important;
	border: 1px solid color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 35%, transparent) !important;
	backdrop-filter: blur(12px);
}
.c3ace-wl-cta-soft .c3ace-wishlist-item__cart,
.c3ace-wl-cta-soft .c3ace-wishlist-empty .button,
.c3ace-wl-cta-soft .c3ace-wishlist-empty a.button {
	background: color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 14%, #fff) !important;
	color: var(--c3ace-wl-accent-dark, #1d5a9e) !important;
	border: 1px solid color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 22%, transparent) !important;
}
.c3ace-wl-cta-outline .c3ace-wishlist-item__cart,
.c3ace-wl-cta-outline .c3ace-wishlist-empty .button,
.c3ace-wl-cta-outline .c3ace-wishlist-empty a.button {
	background: transparent !important;
	color: var(--c3ace-wl-accent, #2b78c5) !important;
	border: 2px solid var(--c3ace-wl-accent, #2b78c5) !important;
}
.c3ace-wl-cta-ink .c3ace-wishlist-item__cart,
.c3ace-wl-cta-ink .c3ace-wishlist-empty .button,
.c3ace-wl-cta-ink .c3ace-wishlist-empty a.button {
	background: linear-gradient(135deg, #0f172a, #1e293b) !important;
	color: #f8fafc !important;
	border: 0 !important;
}
.c3ace-wl-cta-neon .c3ace-wishlist-item__cart,
.c3ace-wl-cta-neon .c3ace-wishlist-empty .button,
.c3ace-wl-cta-neon .c3ace-wishlist-empty a.button {
	background: linear-gradient(135deg, var(--c3ace-wl-accent, #2b78c5), #7c3aed) !important;
	color: #fff !important;
	border: 0 !important;
	box-shadow: 0 0 0 1px color-mix(in srgb, #fff 20%, transparent), 0 12px 28px color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 45%, transparent);
}
.c3ace-wl-cta-spectrum .c3ace-wishlist-item__cart,
.c3ace-wl-cta-spectrum .c3ace-wishlist-empty .button,
.c3ace-wl-cta-spectrum .c3ace-wishlist-empty a.button {
	background: linear-gradient(90deg, #2b78c5 0%, #6cb43c 28%, #f5c518 55%, #a85478 78%, #2b78c5 100%) !important;
	background-size: 180% 100% !important;
	color: #0f172a !important;
	border: 0 !important;
}
.c3ace-wl-cta-lime .c3ace-wishlist-item__cart,
.c3ace-wl-cta-lime .c3ace-wishlist-empty .button,
.c3ace-wl-cta-lime .c3ace-wishlist-empty a.button {
	background: linear-gradient(135deg, #6cb43c, #4f8f2a) !important;
	color: #fff !important;
	border: 0 !important;
}
.c3ace-wl-cta-rose .c3ace-wishlist-item__cart,
.c3ace-wl-cta-rose .c3ace-wishlist-empty .button,
.c3ace-wl-cta-rose .c3ace-wishlist-empty a.button {
	background: linear-gradient(135deg, #a85478, #c04854) !important;
	color: #fff !important;
	border: 0 !important;
}
.c3ace-wl-cta-shape-rounded .c3ace-wishlist-item__cart,
.c3ace-wl-cta-shape-rounded .c3ace-wishlist-empty .button,
.c3ace-wl-cta-shape-rounded .c3ace-wishlist-empty a.button {
	border-radius: 12px !important;
}
.c3ace-wl-cta-shape-pill .c3ace-wishlist-item__cart,
.c3ace-wl-cta-shape-pill .c3ace-wishlist-empty .button,
.c3ace-wl-cta-shape-pill .c3ace-wishlist-empty a.button {
	border-radius: 999px !important;
}
.c3ace-wl-cta-shape-soft .c3ace-wishlist-item__cart,
.c3ace-wl-cta-shape-soft .c3ace-wishlist-empty .button,
.c3ace-wl-cta-shape-soft .c3ace-wishlist-empty a.button {
	border-radius: 16px !important;
}
.c3ace-wl-cta-shape-square .c3ace-wishlist-item__cart,
.c3ace-wl-cta-shape-square .c3ace-wishlist-empty .button,
.c3ace-wl-cta-shape-square .c3ace-wishlist-empty a.button {
	border-radius: 6px !important;
}

/* CTA motion */
.c3ace-wl-cta-fx-lift .c3ace-wishlist-item__cart:hover {
	transform: translateY(-3px) scale(1.01);
}
.c3ace-wl-cta-fx-shimmer .c3ace-wishlist-item__cart {
	position: relative;
	overflow: visible !important;
	isolation: isolate;
}
.c3ace-wl-cta-fx-shimmer .c3ace-wishlist-item__cart::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,.35) 45%, transparent 70%);
	transform: translateX(-120%);
	pointer-events: none;
	z-index: 1;
}
.c3ace-wl-cta-fx-shimmer .c3ace-wishlist-item__cart:hover::after {
	animation: c3ace-wl-cta-shimmer 0.9s ease;
}
.c3ace-wl-cta-fx-pulse .c3ace-wishlist-item__cart {
	animation: c3ace-wl-cta-pulse 2.4s ease-in-out infinite;
}
.c3ace-wl-cta-fx-bounce .c3ace-wishlist-item__cart:hover {
	animation: c3ace-wl-cta-bounce 0.55s ease;
}
.c3ace-wl-cta-fx-fill .c3ace-wishlist-item__cart {
	position: relative;
	overflow: visible !important;
	isolation: isolate;
	z-index: 0;
}
.c3ace-wl-cta-fx-fill .c3ace-wishlist-item__cart::before {
	content: "";
	position: absolute;
	inset: 0;
	background: color-mix(in srgb, #fff 18%, transparent);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.28s ease;
	z-index: -1;
}
.c3ace-wl-cta-fx-fill .c3ace-wishlist-item__cart:hover::before {
	transform: scaleX(1);
}
@keyframes c3ace-wl-cta-shimmer {
	to { transform: translateX(120%); }
}
@keyframes c3ace-wl-cta-pulse {
	0%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 35%, transparent); }
	50% { box-shadow: 0 0 0 8px color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 0%, transparent); }
}
@keyframes c3ace-wl-cta-bounce {
	0% { transform: translateY(0); }
	35% { transform: translateY(-5px); }
	55% { transform: translateY(0); }
	70% { transform: translateY(-2px); }
	100% { transform: translateY(0); }
}

.c3ace-wishlist-shell.c3ace-wishlist-glow-cta.c3ace-wl-cta-gold .c3ace-wishlist-item__cart {
	box-shadow: 0 10px 26px color-mix(in srgb, var(--c3ace-wl-yellow, #f5c518) 46%, transparent);
}
.c3ace-wishlist-shell.c3ace-wishlist-glow-cta.c3ace-wl-cta-glass .c3ace-wishlist-item__cart {
	box-shadow: 0 10px 26px color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 22%, transparent);
}
.c3ace-wishlist-shell.c3ace-wishlist-glow-cta.c3ace-wl-cta-neon .c3ace-wishlist-item__cart {
	box-shadow: 0 0 0 1px color-mix(in srgb, #fff 18%, transparent), 0 14px 32px color-mix(in srgb, #7c3aed 40%, transparent);
}

/* Hero icon frames */
.c3ace-wishlist-hero__icon .dashicons,
.c3ace-wishlist-hero__icon svg,
.c3ace-wishlist-empty__icon .dashicons,
.c3ace-wishlist-empty__icon svg {
	display: block;
	width: 28px;
	height: 28px;
	font-size: 28px;
	line-height: 1;
	fill: currentColor;
}
.c3ace-wishlist-hero__emoji,
.c3ace-wishlist-empty__icon .c3ace-wishlist-hero__emoji {
	font-size: 26px;
	line-height: 1;
}
.c3ace-wl-hero-icon-circle .c3ace-wishlist-hero__icon {
	border-radius: 999px;
}
.c3ace-wl-hero-icon-glow .c3ace-wishlist-hero__icon {
	border-radius: 18px;
	box-shadow: 0 0 0 6px color-mix(in srgb, var(--c3ace-wl-yellow, #f5c518) 28%, transparent), 0 10px 24px color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 25%, transparent);
}
.c3ace-wl-hero-icon-glass .c3ace-wishlist-hero__icon {
	border-radius: 16px;
	background: color-mix(in srgb, #fff 28%, transparent);
	backdrop-filter: blur(10px);
	border-color: color-mix(in srgb, var(--c3ace-wl-hero-text) 28%, transparent);
}
.c3ace-wl-hero-icon-none .c3ace-wishlist-hero__icon {
	background: transparent;
	border-color: transparent;
	box-shadow: none;
	width: auto;
	height: auto;
	min-width: 28px;
	padding: 0;
}

.c3ace-wishlist-empty__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 16px;
	margin-bottom: 8px;
	background: color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 12%, transparent);
	color: var(--c3ace-wl-accent, #2b78c5);
}

/* Stronger stagger for Visual Pro */
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-hero {
	animation: c3ace-wl-fade-in 0.45s ease both;
}
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(1) { animation-delay: 60ms; }
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(2) { animation-delay: 120ms; }
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(3) { animation-delay: 180ms; }
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(4) { animation-delay: 240ms; }
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(5) { animation-delay: 300ms; }
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--cards .c3ace-wishlist-item:nth-child(6) { animation-delay: 360ms; }
.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-items--list .c3ace-wishlist-item {
	animation: c3ace-wl-fade-in 0.45s ease both;
}

body.c3ace-wl-mode-dark.c3ace-wl-ambient-soft::before,
body.c3ace-wl-mode-dark.c3ace-wl-ambient-mesh::before,
body.c3ace-wl-mode-dark.c3ace-wl-ambient-aurora::before,
body.c3ace-wl-mode-dark.c3ace-wl-ambient-lined::before {
	background:
		radial-gradient(700px 420px at 10% 0%, color-mix(in srgb, var(--c3ace-wl-accent, #2b78c5) 28%, transparent), transparent 70%),
		linear-gradient(180deg, #0b1220 0%, #111827 55%, #0f172a 100%);
}

@media (prefers-reduced-motion: reduce) {
	body.c3ace-wl-ambient-mesh::before,
	body.c3ace-wl-ambient-aurora::before,
	.c3ace-wishlist-shell.c3ace-wishlist-animations .c3ace-wishlist-item,
	.c3ace-wl-cards-elevated .c3ace-wishlist-item:hover,
	.c3ace-wl-cards-ribbon .c3ace-wishlist-item:hover,
	.c3ace-wl-cta-fx-pulse .c3ace-wishlist-item__cart,
	.c3ace-wl-cta-fx-bounce .c3ace-wishlist-item__cart:hover,
	.c3ace-wl-cta-fx-shimmer .c3ace-wishlist-item__cart:hover::after {
		animation: none !important;
		transform: none !important;
	}
}
