/*
 * Hex Cross-Sell Escalonado — storefront styles.
 *
 * The popup uses one blue accent and reserves its only gradient for the main
 * reward block. All selectors remain inside the plugin namespace.
 */

.hxcs-root,
.hxcs-root *,
.hxcs-root *::before,
.hxcs-root *::after,
.hxcs-mini-cart-progress,
.hxcs-mini-cart-progress *,
.hxcs-mini-cart-progress *::before,
.hxcs-mini-cart-progress *::after {
	box-sizing: border-box;
}

.hxcs-root,
.hxcs-mini-cart-progress {
	--hxcs-accent: #315bea;
	--hxcs-accent-deep: #1d3f9d;
	--hxcs-accent-soft: #eef2ff;
	--hxcs-dark: var(--gz-color-dark, #111318);
	--hxcs-light: var(--gz-color-light, #ffffff);
	--hxcs-text: var(--gz-color-base, #4f5561);
	--hxcs-muted: var(--gz-color-dark-grey, #737985);
	--hxcs-soft: var(--gz-color-light-grey, #f7f7f8);
	--hxcs-border: var(--gz-border-color, #e4e6eb);
	--hxcs-heading-font: var(--gz-heading-font, inherit);
	--hxcs-heading-color: var(--gz-heading-color, var(--hxcs-dark));
	--hxcs-heading-weight: var(--gz-heading-font-weight, 600);
	--hxcs-button-bg: var(--gz-button-bg-color, #111318);
	--hxcs-button-bg-hover: #252b36;
	--hxcs-button-color: var(--gz-button-color, #ffffff);
	--hxcs-button-border: var(--gz-button-border-color, #111318);
	--hxcs-input-bg: var(--gz-input-bg-color, #ffffff);
	--hxcs-input-border: var(--gz-input-border-color, var(--hxcs-border));
	--hxcs-input-placeholder: var(--gz-input-placeholder-color, #858b96);
	--hxcs-radius-xs: var(--gz-rounded-xs, 4px);
	--hxcs-radius-sm: var(--gz-rounded-sm, 7px);
	--hxcs-radius-md: var(--gz-rounded-md, 12px);
	--hxcs-button-radius: var(--gz-button-rounded, var(--hxcs-radius-xs));
	--hxcs-transition: var(--gz-transition, 0.24s ease);
	--hxcs-feature-gradient: linear-gradient(135deg, #142b68 0%, #315bea 58%, #5d7cff 100%);
	--hxcs-modal-max-height: min(820px, calc(100dvh - 48px));
	color: var(--hxcs-text);
	font-family: var(--gz-body-font, inherit);
	font-size: var(--gz-body-font-size, 15px);
	line-height: var(--gz-body-line-height, 1.5);
}

.hxcs-root button,
.hxcs-root select,
.hxcs-root a {
	box-sizing: border-box;
	font: inherit;
	-webkit-tap-highlight-color: transparent;
}

.hxcs-root button,
.hxcs-root a {
	letter-spacing: normal;
	text-transform: none;
}

.hxcs-root [hidden] {
	display: none !important;
}

html.hxcs-lock {
	overflow: hidden !important;
	overscroll-behavior: none;
}

body.hxcs-lock {
	position: fixed !important;
	top: var(--hxcs-scroll-offset, 0) !important;
	right: 0;
	left: 0;
	width: 100%;
	overflow: hidden !important;
	overscroll-behavior: none;
}

.hxcs-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.hxcs-launcher {
	position: fixed;
	right: 20px;
	bottom: calc(20px + env(safe-area-inset-bottom, 0px) + var(--gz-navigation-bar-height, 0px));
	z-index: 999997;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 48px;
	padding: 8px 9px 8px 13px;
	border: 1px solid #111318;
	border-radius: var(--hxcs-button-radius);
	background: #111318;
	color: #ffffff;
	box-shadow: 0 10px 28px rgba(17, 19, 24, 0.18);
	cursor: pointer;
	transition: background var(--hxcs-transition), border-color var(--hxcs-transition), transform var(--hxcs-transition), box-shadow var(--hxcs-transition);
}

.hxcs-launcher:hover {
	border-color: #252b36;
	background: #252b36;
	box-shadow: 0 13px 32px rgba(17, 19, 24, 0.23);
	transform: translateY(-1px);
}

.hxcs-launcher-icon {
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
}

.hxcs-launcher-icon svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.45;
}

.hxcs-launcher > span:not(.hxcs-launcher-icon) {
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}

.hxcs-launcher small {
	display: grid;
	place-items: center;
	min-width: 30px;
	height: 30px;
	padding: 0 6px;
	border-radius: var(--hxcs-radius-xs);
	background: #ffffff;
	color: var(--hxcs-configured-primary, var(--hxcs-accent));
	font-size: 10px;
	font-weight: 700;
}

.hxcs-launcher:focus-visible,
.hxcs-close:focus-visible,
.hxcs-add-product:focus-visible,
.hxcs-button:focus-visible,
.hxcs-product-name:focus-visible,
.hxcs-variation-select:focus-visible {
	outline: 3px solid rgba(49, 91, 234, 0.24);
	outline-offset: 2px;
}

.hxcs-overlay {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	padding: 20px;
	overflow: hidden;
	background: rgba(10, 13, 20, 0.52);
	opacity: 0;
	overscroll-behavior: contain;
	transition: opacity var(--hxcs-transition);
}

.hxcs-root.is-open .hxcs-overlay {
	opacity: 1;
}

.hxcs-dialog {
	position: relative;
	isolation: isolate;
	container-name: hxcs-modal;
	container-type: inline-size;
	display: flex;
	flex-direction: column;
	width: min(1040px, 100%);
	max-width: 100%;
	max-height: calc(100vh - 48px);
	max-height: var(--hxcs-modal-max-height);
	min-width: 0;
	border: 1px solid var(--hxcs-border);
	border-radius: var(--hxcs-radius-md);
	background: var(--hxcs-light);
	box-shadow: 0 26px 72px rgba(10, 13, 20, 0.24);
	overflow: hidden;
	transform: translateY(13px) scale(0.99);
	transition: transform var(--hxcs-transition);
}

.hxcs-root.is-open .hxcs-dialog {
	transform: translateY(0) scale(1);
}

.hxcs-dynamic {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 100%;
	max-height: calc(100vh - 48px);
	max-height: var(--hxcs-modal-max-height);
	min-width: 0;
	min-height: 0;
	overflow: hidden;
}

.hxcs-close {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 7;
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--hxcs-border);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.94);
	color: var(--hxcs-dark);
	box-shadow: 0 3px 10px rgba(17, 19, 24, 0.06);
	cursor: pointer;
	transition: background var(--hxcs-transition), border-color var(--hxcs-transition), color var(--hxcs-transition), transform var(--hxcs-transition);
}

.hxcs-close:hover {
	border-color: #cfd3da;
	background: var(--hxcs-soft);
	color: var(--hxcs-accent);
	transform: rotate(3deg);
}

.hxcs-close svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 1.8;
}

/*
 * Header and reward.
 * The reward callout below is intentionally the only gradient in the component.
 */
.hxcs-hero {
	display: grid;
	flex: 0 0 auto;
	grid-template-columns: minmax(0, 1fr) minmax(250px, 285px);
	gap: 32px;
	align-items: center;
	min-width: 0;
	padding: 25px 58px 24px 30px;
	border-bottom: 1px solid var(--hxcs-border);
	background: var(--hxcs-light);
}

.hxcs-hero-copy,
.hxcs-tier-summary {
	min-width: 0;
}

.hxcs-badge {
	display: block;
	max-width: 100%;
	margin: 0 0 7px;
	color: var(--hxcs-accent);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.095em;
	line-height: 1.25;
	text-transform: uppercase;
}

.hxcs-hero h2 {
	max-width: 680px;
	margin: 0;
	color: var(--hxcs-heading-color);
	font-family: var(--hxcs-heading-font);
	font-size: clamp(27px, 2.55vw, 34px);
	font-weight: var(--hxcs-heading-weight);
	letter-spacing: var(--gz-heading-letter-spacing, -0.025em);
	line-height: var(--gz-heading-line-height, 1.08);
	hyphens: none;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-reward-callout {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	max-width: 680px;
	min-width: 0;
	margin-top: 15px;
	padding: 15px 18px;
	border: 0;
	border-radius: var(--hxcs-radius-md);
	background: var(--hxcs-feature-gradient);
	color: #ffffff;
	box-shadow: 0 12px 30px rgba(49, 91, 234, 0.2);
	overflow: hidden;
}

.hxcs-reward-copy {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.hxcs-reward-kicker {
	margin-bottom: 3px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.085em;
	line-height: 1.2;
	text-transform: uppercase;
}

.hxcs-reward-amount {
	display: flex;
	flex-wrap: wrap;
	gap: 3px 8px;
	align-items: baseline;
	min-width: 0;
	color: #ffffff;
	font-family: var(--hxcs-heading-font);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.15;
}

.hxcs-reward-amount b {
	color: #ffffff;
	font-size: clamp(25px, 2.25vw, 31px);
	font-weight: 700;
	letter-spacing: -0.04em;
	white-space: nowrap;
}

.hxcs-reward-copy > small {
	margin-top: 3px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 10px;
	line-height: 1.35;
}

.hxcs-reward-prize {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: flex-end;
	justify-content: center;
	min-width: 118px;
	min-height: 60px;
	padding-left: 18px;
	border-left: 1px solid rgba(255, 255, 255, 0.28);
	color: #ffffff;
	text-align: right;
}

.hxcs-reward-prize > span,
.hxcs-reward-prize > small {
	color: rgba(255, 255, 255, 0.7);
	font-size: 8px;
	font-weight: 650;
	letter-spacing: 0.06em;
	line-height: 1.2;
	text-transform: uppercase;
}

.hxcs-reward-prize > strong {
	color: #ffffff;
	font-family: var(--hxcs-heading-font);
	font-size: 27px;
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1;
	white-space: nowrap;
}

.hxcs-reward-prize svg {
	width: 24px;
	height: 24px;
	margin-bottom: 3px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.hxcs-reward-callout.is-maximum .hxcs-reward-prize strong {
	font-size: 10px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

/*
 * One open summary panel replaces the previous stack of competing cards.
 */
.hxcs-tier-summary {
	padding-left: 26px;
	border-left: 1px solid var(--hxcs-border);
}

.hxcs-tier-summary__eyebrow {
	display: block;
	margin-bottom: 3px;
	color: var(--hxcs-muted);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.3;
	text-transform: uppercase;
}

.hxcs-tier-summary__items {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.hxcs-tier-summary__item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1px 12px;
	align-items: baseline;
	min-width: 0;
	padding: 8px 0;
	border-top: 1px solid var(--hxcs-border);
}

.hxcs-tier-summary__item:first-child {
	border-top: 0;
}

.hxcs-tier-summary__item > span {
	min-width: 0;
	color: var(--hxcs-text);
	font-size: 10px;
	font-weight: 600;
	line-height: 1.25;
}

.hxcs-tier-summary__item > strong {
	color: var(--hxcs-heading-color);
	font-family: var(--hxcs-heading-font);
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1;
	white-space: nowrap;
}

.hxcs-tier-summary__item > small {
	grid-column: 1 / -1;
	color: var(--hxcs-muted);
	font-size: 9px;
	line-height: 1.3;
}

.hxcs-tier-summary__item--remaining > strong {
	color: var(--hxcs-accent);
}

/*
 * Progress.
 */
.hxcs-progress-section {
	flex: 0 0 auto;
	min-width: 0;
	padding: 16px 30px 15px;
	border-bottom: 1px solid var(--hxcs-border);
	background: var(--hxcs-light);
}

.hxcs-progress-meta {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	min-width: 0;
	margin-bottom: 15px;
}

.hxcs-progress-meta > div {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}

.hxcs-progress-meta span {
	color: var(--hxcs-muted);
	font-size: 9px;
	font-weight: 650;
	letter-spacing: 0.045em;
	line-height: 1.3;
	text-transform: uppercase;
}

.hxcs-progress-meta strong {
	color: var(--hxcs-heading-color);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-progress-next {
	align-items: flex-end;
	flex: 0 0 auto;
	text-align: right;
}

.hxcs-progress-next > strong {
	display: flex;
	gap: 5px;
	align-items: baseline;
}

.hxcs-progress-next > strong b {
	color: var(--hxcs-accent);
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.03em;
	white-space: nowrap;
}

.hxcs-progress-next > strong small {
	color: var(--hxcs-heading-color);
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}

.hxcs-progress-component {
	width: 100%;
	min-width: 0;
}

.hxcs-progress-track {
	position: relative;
	height: 7px;
	border: 0;
	border-radius: 999px;
	background: #e7e9ee;
}

.hxcs-progress-fill {
	position: absolute;
	inset: 0 auto 0 0;
	z-index: 1;
	min-width: 0;
	border-radius: inherit;
	background: var(--hxcs-accent);
	transition: width 0.5s cubic-bezier(0.2, 0.75, 0.2, 1);
}

.hxcs-progress-current {
	position: absolute;
	top: 50%;
	left: var(--hxcs-current-position);
	z-index: 4;
	width: 15px;
	height: 15px;
	border: 3px solid #ffffff;
	border-radius: 50%;
	background: var(--hxcs-accent);
	box-shadow: 0 0 0 1px var(--hxcs-accent), 0 3px 8px rgba(49, 91, 234, 0.24);
	transform: translate(-50%, -50%);
}

.hxcs-progress-current.is-start {
	transform: translate(0, -50%);
}

.hxcs-progress-current.is-end {
	transform: translate(-100%, -50%);
}

.hxcs-milestone-dot {
	position: absolute;
	top: 50%;
	left: var(--hxcs-position);
	z-index: 3;
	width: 12px;
	height: 12px;
	border: 3px solid #ffffff;
	border-radius: 50%;
	background: #aeb4bf;
	box-shadow: 0 0 0 1px #c8ccd4;
	transform: translate(-50%, -50%);
	transition: background var(--hxcs-transition), box-shadow var(--hxcs-transition), transform var(--hxcs-transition);
}

.hxcs-milestone-dot.is-last {
	transform: translate(-100%, -50%);
}

.hxcs-milestone-dot.is-reached {
	background: var(--hxcs-accent);
	box-shadow: 0 0 0 1px var(--hxcs-accent);
}

.hxcs-milestone-dot.is-current {
	box-shadow: 0 0 0 2px var(--hxcs-accent);
}

.hxcs-milestone-dot.is-next {
	width: 16px;
	height: 16px;
	background: #ffffff;
	box-shadow: 0 0 0 2px var(--hxcs-accent);
}

.hxcs-milestones {
	position: relative;
	height: 35px;
	margin-top: 8px;
}

.hxcs-milestone-label {
	position: absolute;
	top: 0;
	left: var(--hxcs-position);
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 66px;
	color: var(--hxcs-muted);
	line-height: 1.2;
	text-align: center;
	transform: translateX(-50%);
}

.hxcs-milestone-label.is-last {
	align-items: flex-end;
	text-align: right;
	transform: translateX(-100%);
}

.hxcs-milestone-label strong {
	color: inherit;
	font-size: 11px;
	font-weight: 700;
	white-space: nowrap;
}

.hxcs-milestone-label span {
	margin-top: 1px;
	font-size: 9px;
	white-space: nowrap;
}

.hxcs-milestone-label.is-reached,
.hxcs-milestone-label.is-next {
	color: var(--hxcs-accent);
}

.hxcs-milestone-label.is-next strong {
	font-size: 12px;
}

.hxcs-progress-section.has-crowded-end:not(.is-dense) .hxcs-milestone-label.is-next:not(.is-last) {
	align-items: flex-end;
	text-align: right;
	transform: translateX(-100%);
}

.hxcs-progress-section.is-dense .hxcs-milestones {
	height: 58px;
}

.hxcs-progress-section.is-dense .hxcs-milestone-label {
	min-width: 50px;
	padding: 0 2px;
	background: var(--hxcs-light);
}

.hxcs-progress-section.is-dense .hxcs-milestone-label:nth-child(even) {
	top: 27px;
}

.hxcs-progress-section.is-dense .hxcs-milestone-label strong {
	font-size: 10px;
}

.hxcs-progress-section.is-dense .hxcs-milestone-label span {
	font-size: 8px;
}

/*
 * Product recommendations.
 */
.hxcs-products-section {
	display: flex;
	flex: 0 1 auto;
	flex-direction: column;
	min-width: 0;
	min-height: 0;
	padding: 18px 30px 20px;
	overflow: hidden;
	background: var(--hxcs-light);
}

.hxcs-section-heading {
	display: flex;
	flex: 0 0 auto;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	min-width: 0;
	margin-bottom: 13px;
}

.hxcs-section-heading > div {
	min-width: 0;
}

.hxcs-section-heading > div > span {
	display: block;
	margin-bottom: 2px;
	color: var(--hxcs-accent);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.3;
	text-transform: uppercase;
}

.hxcs-section-heading h3 {
	margin: 0;
	color: var(--hxcs-heading-color);
	font-family: var(--hxcs-heading-font);
	font-size: clamp(19px, 1.8vw, 22px);
	font-weight: var(--hxcs-heading-weight);
	letter-spacing: var(--gz-heading-letter-spacing, -0.015em);
	line-height: var(--gz-heading-line-height, 1.2);
	hyphens: none;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-section-heading > p {
	flex: 0 1 320px;
	max-width: 320px;
	margin: 0;
	color: var(--hxcs-muted);
	font-size: 10px;
	line-height: 1.4;
	text-align: right;
}

.hxcs-product-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-rows: max-content;
	gap: 12px;
	align-content: start;
	align-items: stretch;
	min-width: 0;
	min-height: 0;
	padding: 1px 5px 1px 1px;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-color: #cfd3da transparent;
	scrollbar-gutter: stable;
	scrollbar-width: thin;
}

.hxcs-product-grid::-webkit-scrollbar {
	width: 6px;
}

.hxcs-product-grid::-webkit-scrollbar-thumb {
	border-radius: 999px;
	background: #cfd3da;
}

.hxcs-product-card {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	align-self: stretch;
	align-items: stretch;
	max-width: 100%;
	min-width: 0;
	border: 1px solid var(--hxcs-border);
	border-radius: var(--hxcs-radius-sm);
	background: var(--hxcs-light);
	box-shadow: none;
	overflow: hidden;
	transition: border-color var(--hxcs-transition), box-shadow var(--hxcs-transition), transform var(--hxcs-transition);
}

.hxcs-product-card:hover {
	border-color: #c9ced8;
	box-shadow: 0 9px 22px rgba(17, 19, 24, 0.07);
	transform: translateY(-1px);
}

.hxcs-product-image {
	position: relative;
	display: grid;
	place-items: center;
	width: 96px;
	max-width: 100%;
	height: 100%;
	min-height: 158px;
	padding: 10px;
	overflow: hidden;
	background: var(--hxcs-soft);
	text-decoration: none;
}

.hxcs-product-image img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 78px;
	max-height: 124px;
	margin: 0;
	object-fit: contain;
	object-position: center;
	transition: transform var(--hxcs-transition);
}

.hxcs-product-card:hover .hxcs-product-image img {
	transform: scale(1.025);
}

.hxcs-unlock-badge {
	position: absolute;
	top: 7px;
	left: 7px;
	z-index: 2;
	max-width: calc(100% - 14px);
	padding: 4px 6px;
	border: 1px solid rgba(49, 91, 234, 0.3);
	border-radius: var(--hxcs-radius-xs);
	background: rgba(255, 255, 255, 0.94);
	color: var(--hxcs-accent-deep);
	font-size: 8px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.hxcs-product-body {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 10px;
}

.hxcs-product-name {
	display: block;
	max-width: 100%;
	min-width: 0;
	min-height: 2.7em;
	margin: 0;
	color: var(--hxcs-heading-color);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	hyphens: none;
	overflow-wrap: break-word;
	word-break: normal;
}

.hxcs-product-name:hover {
	color: var(--hxcs-accent);
}

.hxcs-product-price {
	max-width: 100%;
	min-width: 0;
	margin: 4px 0 8px;
	color: var(--hxcs-heading-color);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-product-price del {
	margin-right: 4px;
	color: var(--hxcs-muted);
	font-size: 0.83em;
	font-weight: 400;
}

.hxcs-product-price ins {
	color: inherit;
	text-decoration: none;
}

.hxcs-product-price .woocommerce-Price-amount,
.hxcs-product-price .woocommerce-Price-currencySymbol,
.hxcs-product-price bdi {
	color: inherit !important;
}

.hxcs-variation-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 5px;
	min-width: 0;
	margin: 0 0 7px;
}

.hxcs-variation-fields label:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.hxcs-variation-fields label {
	display: block;
	min-width: 0;
	margin: 0;
}

.hxcs-variation-select {
	display: block;
	width: 100%;
	max-width: 100%;
	min-height: 38px;
	margin: 0;
	padding: 8px 22px 8px 8px;
	border: 1px solid var(--hxcs-input-border);
	border-radius: var(--hxcs-radius-xs);
	background-color: var(--hxcs-input-bg);
	color: var(--hxcs-dark);
	font-size: var(--gz-input-font-size, 10px);
	line-height: 1.2;
	box-shadow: none;
	transition: border-color var(--hxcs-transition), box-shadow var(--hxcs-transition);
}

.hxcs-variation-select:hover {
	border-color: #bfc4ce;
}

.hxcs-variation-select:focus {
	border-color: var(--hxcs-accent);
	box-shadow: 0 0 0 3px rgba(49, 91, 234, 0.11);
	outline: 0;
}

.hxcs-variation-select option[value=""] {
	color: var(--hxcs-input-placeholder);
}

.hxcs-variation-select.is-invalid {
	border-color: #b42318;
	box-shadow: 0 0 0 2px rgba(180, 35, 24, 0.09);
}

.hxcs-card-error {
	max-width: 100%;
	margin: 0 0 7px;
	color: #b42318;
	font-size: 9px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.hxcs-add-product {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	min-height: max(42px, var(--gz-button-height, 42px));
	margin-top: auto;
	padding: var(--gz-button-padding, 9px 12px);
	border: 1px solid #111318;
	border-radius: var(--hxcs-button-radius);
	background: #111318;
	color: #ffffff;
	font-size: var(--gz-button-font-size, 11px);
	font-weight: var(--gz-button-font-weight, 600);
	line-height: var(--gz-button-line-height, 1.2);
	text-align: left;
	cursor: pointer;
	box-shadow: none;
	transition: background var(--hxcs-transition), border-color var(--hxcs-transition), color var(--hxcs-transition), opacity var(--hxcs-transition), transform var(--hxcs-transition), box-shadow var(--hxcs-transition);
}

.hxcs-add-product:hover {
	border-color: var(--hxcs-accent);
	background: var(--hxcs-accent);
	color: #ffffff;
	box-shadow: 0 7px 18px rgba(49, 91, 234, 0.17);
	transform: translateY(-1px);
}

.hxcs-add-product:active {
	transform: scale(0.99);
}

.hxcs-add-product[disabled] {
	cursor: wait;
	opacity: 0.7;
}

.hxcs-add-product span {
	min-width: 0;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-add-product svg {
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 1.7;
}

.hxcs-add-product.is-loading svg {
	border: 2px solid rgba(255, 255, 255, 0.38);
	border-top-color: #ffffff;
	border-radius: 50%;
	animation: hxcs-spin 0.7s linear infinite;
	stroke: none;
}

.hxcs-root.is-updating .hxcs-dialog {
	cursor: progress;
}

.hxcs-dynamic.is-refreshed .hxcs-reward-callout {
	animation: hxcs-reward-confirm 0.5s ease both;
}

.hxcs-dynamic.is-refreshed .hxcs-progress-fill {
	animation: hxcs-progress-confirm 0.6s ease both;
}

.hxcs-empty-products {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	padding: 16px 0;
	border-top: 1px solid var(--hxcs-border);
	border-bottom: 1px solid var(--hxcs-border);
	background: var(--hxcs-light);
}

.hxcs-empty-products svg {
	flex: 0 0 auto;
	width: 27px;
	height: 27px;
	fill: none;
	stroke: var(--hxcs-accent);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.4;
}

.hxcs-empty-products div {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.hxcs-empty-products strong {
	color: var(--hxcs-heading-color);
	font-size: 12px;
	overflow-wrap: anywhere;
}

.hxcs-empty-products span {
	color: var(--hxcs-muted);
	font-size: 10px;
	overflow-wrap: anywhere;
}

/*
 * Footer.
 */
.hxcs-modal-footer {
	position: relative;
	z-index: 3;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-width: 0;
	padding: 11px 30px;
	border-top: 1px solid var(--hxcs-border);
	background: var(--hxcs-light);
}

.hxcs-footer-assurance {
	display: flex;
	gap: 7px;
	align-items: center;
	min-width: 0;
	color: var(--hxcs-muted);
	font-size: 9px;
	line-height: 1.3;
}

.hxcs-footer-assurance svg {
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	padding: 2px;
	border: 1px solid rgba(49, 91, 234, 0.25);
	border-radius: 50%;
	fill: none;
	stroke: var(--hxcs-accent);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.9;
}

.hxcs-footer-actions {
	display: flex;
	flex: 0 0 auto;
	gap: 8px;
	align-items: center;
	justify-content: flex-end;
	min-width: 0;
}

.hxcs-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	max-width: 100%;
	min-height: max(43px, var(--gz-button-height, 43px));
	padding: var(--gz-button-padding, 9px 16px);
	border-radius: var(--hxcs-button-radius);
	font-size: var(--gz-button-font-size, 12px);
	font-weight: var(--gz-button-font-weight, 600);
	line-height: var(--gz-button-line-height, 1.2);
	text-align: center;
	text-decoration: none !important;
	white-space: normal;
	cursor: pointer;
	transition: background var(--hxcs-transition), border-color var(--hxcs-transition), color var(--hxcs-transition), transform var(--hxcs-transition), box-shadow var(--hxcs-transition);
}

.hxcs-button:hover {
	transform: translateY(-1px);
}

.hxcs-button--secondary {
	border: 1px solid var(--hxcs-border);
	background: transparent;
	color: var(--hxcs-muted);
}

.hxcs-button--secondary:hover {
	border-color: #bfc4ce;
	background: var(--hxcs-soft);
	color: var(--hxcs-dark);
}

.hxcs-button--primary {
	min-width: 205px;
	border: 1px solid #111318;
	background: #111318;
	color: #ffffff !important;
	box-shadow: 0 7px 18px rgba(17, 19, 24, 0.12);
}

.hxcs-button--primary:hover {
	border-color: var(--hxcs-accent);
	background: var(--hxcs-accent);
	color: #ffffff !important;
	box-shadow: 0 9px 22px rgba(49, 91, 234, 0.18);
}

.hxcs-button svg {
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.6;
}

.hxcs-sequential-coupon-note td {
	padding-top: 2px !important;
	border-top: 0 !important;
	color: var(--gz-color-dark-grey, #666666);
	font-family: inherit;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.4;
	text-align: right;
}

.hxcs-sequential-coupon-note small {
	font-size: inherit;
	line-height: inherit;
}

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

@keyframes hxcs-reward-confirm {
	0%,
	100% {
		box-shadow: 0 12px 30px rgba(49, 91, 234, 0.2);
	}
	50% {
		box-shadow: 0 15px 36px rgba(49, 91, 234, 0.32), 0 0 0 3px rgba(49, 91, 234, 0.09);
	}
}

@keyframes hxcs-progress-confirm {
	0%,
	100% {
		opacity: 1;
	}
	50% {
		opacity: 0.72;
	}
}

/*
 * Component-driven responsive fallbacks.
 */
@container hxcs-modal (max-width: 900px) {
	.hxcs-hero {
		grid-template-columns: minmax(0, 1fr);
		gap: 17px;
	}

	.hxcs-tier-summary {
		padding: 14px 0 0;
		border-top: 1px solid var(--hxcs-border);
		border-left: 0;
	}

	.hxcs-tier-summary__items {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0;
	}

	.hxcs-tier-summary__item {
		display: flex;
		flex-direction: column;
		gap: 2px;
		padding: 6px 14px;
		border-top: 0;
		border-left: 1px solid var(--hxcs-border);
	}

	.hxcs-tier-summary__item:first-child {
		padding-left: 0;
		border-left: 0;
	}

	.hxcs-tier-summary__item:last-child {
		padding-right: 0;
	}

	.hxcs-tier-summary__item > small {
		grid-column: auto;
	}

	.hxcs-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@container hxcs-modal (max-width: 620px) {
	.hxcs-section-heading {
		display: block;
	}

	.hxcs-section-heading > p {
		max-width: none;
		margin-top: 3px;
		text-align: left;
	}

	.hxcs-product-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hxcs-modal-footer {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}

	.hxcs-footer-actions,
	.hxcs-button {
		width: 100%;
	}

	.hxcs-footer-actions {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 1024px) {
	.hxcs-root {
		--hxcs-modal-max-height: min(820px, calc(100dvh - 32px));
	}

	.hxcs-overlay {
		padding: 16px;
	}

	.hxcs-dialog,
	.hxcs-dynamic {
		max-height: calc(100vh - 32px);
		max-height: var(--hxcs-modal-max-height);
	}

	.hxcs-hero {
		grid-template-columns: minmax(0, 1fr);
		gap: 17px;
		padding: 22px 54px 21px 24px;
	}

	.hxcs-tier-summary {
		padding: 14px 0 0;
		border-top: 1px solid var(--hxcs-border);
		border-left: 0;
	}

	.hxcs-tier-summary__items {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hxcs-tier-summary__item {
		display: flex;
		flex-direction: column;
		gap: 2px;
		padding: 6px 14px;
		border-top: 0;
		border-left: 1px solid var(--hxcs-border);
	}

	.hxcs-tier-summary__item:first-child {
		padding-left: 0;
		border-left: 0;
	}

	.hxcs-tier-summary__item:last-child {
		padding-right: 0;
	}

	.hxcs-tier-summary__item > small {
		grid-column: auto;
	}

	.hxcs-progress-section,
	.hxcs-products-section {
		padding-right: 24px;
		padding-left: 24px;
	}

	.hxcs-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hxcs-modal-footer {
		padding-right: 24px;
		padding-left: 24px;
	}
}

@media (max-width: 767px) {
	.hxcs-root {
		--hxcs-modal-max-height: calc(100dvh - env(safe-area-inset-top, 0px));
	}

	.hxcs-overlay {
		align-items: flex-end;
		padding: max(8px, env(safe-area-inset-top, 0px)) 0 0;
		background: rgba(10, 13, 20, 0.5);
	}

	.hxcs-dialog {
		width: 100%;
		max-height: calc(100vh - env(safe-area-inset-top, 0px));
		max-height: var(--hxcs-modal-max-height);
		border-right: 0;
		border-bottom: 0;
		border-left: 0;
		border-radius: var(--hxcs-radius-md) var(--hxcs-radius-md) 0 0;
		transform: translateY(100%);
	}

	.hxcs-root.is-open .hxcs-dialog {
		transform: translateY(0);
	}

	.hxcs-dynamic {
		max-height: calc(100vh - env(safe-area-inset-top, 0px));
		max-height: var(--hxcs-modal-max-height);
	}

	.hxcs-close {
		top: 9px;
		right: 10px;
		width: 34px;
		height: 34px;
	}

	.hxcs-hero {
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
		padding: 14px 50px 12px 15px;
	}

	.hxcs-badge {
		margin-bottom: 4px;
		font-size: 8px;
	}

	.hxcs-hero h2 {
		font-size: clamp(21px, 6vw, 25px);
		line-height: 1.08;
	}

	.hxcs-reward-callout {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 10px;
		margin-top: 9px;
		padding: 10px 12px;
	}

	.hxcs-reward-kicker {
		font-size: 7.5px;
	}

	.hxcs-reward-amount {
		display: block;
		font-size: 11px;
	}

	.hxcs-reward-amount span,
	.hxcs-reward-amount b {
		display: block;
	}

	.hxcs-reward-amount b {
		margin-top: 1px;
		font-size: clamp(22px, 6.7vw, 27px);
	}

	.hxcs-reward-copy > small {
		display: none;
	}

	.hxcs-reward-prize {
		min-width: 92px;
		min-height: 52px;
		padding-left: 11px;
	}

	.hxcs-reward-prize > strong {
		font-size: 22px;
	}

	.hxcs-tier-summary {
		padding: 8px 0 0;
		border-top: 1px solid var(--hxcs-border);
		border-left: 0;
	}

	.hxcs-tier-summary__eyebrow {
		margin-bottom: 2px;
		font-size: 7.5px;
	}

	.hxcs-tier-summary__items {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hxcs-tier-summary__item {
		display: flex;
		flex-direction: column;
		gap: 1px;
		padding: 5px 7px;
		border-top: 0;
		border-left: 1px solid var(--hxcs-border);
	}

	.hxcs-tier-summary__item:first-child {
		padding-left: 0;
		border-left: 0;
	}

	.hxcs-tier-summary__item:last-child {
		padding-right: 0;
	}

	.hxcs-tier-summary__item > span {
		font-size: 8px;
	}

	.hxcs-tier-summary__item > strong {
		font-size: 17px;
	}

	.hxcs-tier-summary__item > small {
		grid-column: auto;
		font-size: 7.5px;
	}

	.hxcs-progress-section {
		padding: 9px 15px 8px;
	}

	.hxcs-progress-meta {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 10px;
		margin-bottom: 10px;
	}

	.hxcs-progress-meta span {
		font-size: 7.5px;
	}

	.hxcs-progress-meta strong {
		font-size: 11px;
	}

	.hxcs-progress-next > strong b {
		font-size: 16px;
	}

	.hxcs-progress-next > strong small {
		font-size: 10px;
	}

	.hxcs-milestones {
		height: 31px;
		margin-top: 6px;
	}

	.hxcs-milestone-label {
		min-width: 50px;
	}

	.hxcs-milestone-label strong,
	.hxcs-milestone-label.is-next strong {
		font-size: 9px;
	}

	.hxcs-milestone-label span {
		font-size: 8px;
	}

	.hxcs-progress-section.is-dense .hxcs-milestones {
		height: 54px;
	}

	.hxcs-progress-section.is-dense .hxcs-milestone-label:nth-child(even) {
		top: 25px;
	}

	.hxcs-products-section {
		padding: 10px 15px;
	}

	.hxcs-section-heading {
		display: block;
		margin-bottom: 8px;
	}

	.hxcs-section-heading > div > span {
		font-size: 8px;
	}

	.hxcs-section-heading h3 {
		font-size: 17px;
	}

	.hxcs-section-heading > p {
		max-width: none;
		margin-top: 2px;
		font-size: 9px;
		text-align: left;
	}

	.hxcs-product-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 8px;
		padding-right: 4px;
	}

	.hxcs-product-card {
		grid-template-columns: 110px minmax(0, 1fr);
	}

	.hxcs-product-image {
		width: 110px;
		min-height: 150px;
	}

	.hxcs-product-image img {
		max-width: 88px;
		max-height: 116px;
	}

	.hxcs-unlock-badge {
		font-size: 8.5px;
	}

	.hxcs-product-body {
		padding: 9px;
	}

	.hxcs-product-name {
		font-size: 12px;
	}

	.hxcs-product-price {
		margin: 3px 0 6px;
		font-size: 14px;
	}

	.hxcs-variation-select {
		min-height: 42px;
		font-size: 10px;
	}

	.hxcs-add-product {
		min-height: 44px;
		font-size: 11px;
	}

	.hxcs-modal-footer {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 5px;
		padding: 7px 15px calc(7px + env(safe-area-inset-bottom, 0px));
	}

	.hxcs-footer-assurance {
		display: none;
	}

	.hxcs-footer-actions {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 5px;
		width: 100%;
	}

	.hxcs-button {
		width: 100%;
		min-height: 44px;
		padding: 8px 12px;
	}

	.hxcs-button--primary {
		min-width: 0;
	}

	.hxcs-launcher {
		right: 13px;
		bottom: calc(13px + env(safe-area-inset-bottom, 0px) + var(--gz-navigation-bar-height, 0px));
		min-height: 46px;
	}
}

@media (max-width: 390px) {
	.hxcs-hero {
		padding-right: 48px;
		padding-left: 13px;
	}

	.hxcs-progress-section,
	.hxcs-products-section,
	.hxcs-modal-footer {
		padding-right: 13px;
		padding-left: 13px;
	}

	.hxcs-tier-summary__item {
		padding-right: 5px;
		padding-left: 5px;
	}

	.hxcs-tier-summary__item > span {
		min-height: 20px;
	}

	.hxcs-tier-summary__item > small {
		display: none;
	}

	.hxcs-product-card {
		grid-template-columns: 104px minmax(0, 1fr);
	}

	.hxcs-product-image {
		width: 104px;
	}
}

@media (max-width: 360px) {
	.hxcs-reward-callout {
		gap: 8px;
		padding-right: 10px;
		padding-left: 10px;
	}

	.hxcs-reward-prize {
		min-width: 82px;
	}

	.hxcs-tier-summary__item > strong {
		font-size: 15px;
	}

	.hxcs-progress-meta {
		grid-template-columns: minmax(0, 1fr) minmax(120px, auto);
	}

	.hxcs-product-card {
		grid-template-columns: 98px minmax(0, 1fr);
	}

	.hxcs-product-image {
		width: 98px;
	}
}

@media (min-width: 768px) and (max-height: 820px) {
	.hxcs-hero {
		padding-top: 17px;
		padding-bottom: 16px;
	}

	.hxcs-reward-callout {
		margin-top: 10px;
		padding-top: 11px;
		padding-bottom: 11px;
	}

	.hxcs-tier-summary__item {
		padding-top: 6px;
		padding-bottom: 6px;
	}

	.hxcs-progress-section {
		padding-top: 11px;
		padding-bottom: 10px;
	}

	.hxcs-progress-meta {
		margin-bottom: 11px;
	}

	.hxcs-milestones {
		height: 31px;
		margin-top: 6px;
	}

	.hxcs-products-section {
		padding-top: 12px;
		padding-bottom: 13px;
	}

	.hxcs-section-heading {
		margin-bottom: 9px;
	}
}

@media (max-height: 700px) and (min-width: 768px) {
	.hxcs-hero {
		padding-top: 14px;
		padding-bottom: 13px;
	}

	.hxcs-products-section {
		padding-top: 10px;
		padding-bottom: 11px;
	}

	.hxcs-product-image {
		min-height: 142px;
	}
}

/*
 * Compact mini-cart progress. It reuses the same neutral/blue visual language
 * without introducing another gradient.
 */
.hxcs-mini-cart-progress {
	position: relative;
	display: block !important;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0 !important;
	padding: 14px clamp(16px, 5vw, 26px) 13px !important;
	border: 0 !important;
	border-top: 1px solid var(--hxcs-border) !important;
	border-bottom: 1px solid var(--hxcs-border) !important;
	border-radius: 0 !important;
	background: var(--hxcs-light) !important;
	color: var(--hxcs-text);
	box-shadow: none !important;
	font-family: var(--gz-body-font, inherit);
	font-size: var(--gz-body-font-size, 14px);
	line-height: 1.4;
	list-style: none !important;
	overflow: hidden;
	animation: hxcs-mini-cart-progress-in 0.24s ease both;
}

.hxcs-mini-cart-progress__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-width: 0;
	margin: 0 0 5px;
}

.hxcs-mini-cart-progress__eyebrow {
	min-width: 0;
	color: var(--hxcs-heading-color);
	font-family: var(--hxcs-heading-font);
	font-size: 11px;
	font-weight: 650;
	line-height: 1.25;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-mini-cart-progress__status {
	flex: 0 0 auto;
	color: var(--hxcs-accent);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 0.055em;
	line-height: 1.2;
	text-transform: uppercase;
	white-space: nowrap;
}

.hxcs-mini-cart-progress__message {
	max-width: 100%;
	min-width: 0;
	margin: 0 0 9px !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--hxcs-text);
	font-size: 11px;
	font-weight: 400;
	line-height: 1.45;
	hyphens: none;
	overflow-wrap: normal;
	word-break: normal;
}

.hxcs-mini-cart-progress__message strong {
	color: var(--hxcs-heading-color);
	font-weight: 700;
	white-space: nowrap;
}

.hxcs-mini-cart-progress__meta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 8px;
	min-width: 0;
	margin: 0 0 11px;
	padding: 8px 0;
	border-top: 1px solid var(--hxcs-border);
	border-bottom: 1px solid var(--hxcs-border);
}

.hxcs-mini-cart-progress__meta > span {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}

.hxcs-mini-cart-progress__meta > span + span {
	padding-left: 8px;
	border-left: 1px solid var(--hxcs-border);
}

.hxcs-mini-cart-progress__meta small {
	color: var(--hxcs-muted);
	font-size: 7.5px;
	font-weight: 650;
	letter-spacing: 0.035em;
	line-height: 1.25;
	text-transform: uppercase;
}

.hxcs-mini-cart-progress__meta strong {
	display: flex;
	flex-wrap: wrap;
	gap: 2px 4px;
	align-items: baseline;
	min-width: 0;
	color: var(--hxcs-heading-color);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.25;
}

.hxcs-mini-cart-progress__meta strong em {
	color: var(--hxcs-muted);
	font-size: 9px;
	font-style: normal;
	font-weight: 600;
	white-space: nowrap;
}

.hxcs-progress-component--mini-cart {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	padding: 1px 2px 0;
}

.hxcs-progress-component--mini-cart .hxcs-progress-track {
	height: 5px;
}

.hxcs-progress-component--mini-cart .hxcs-progress-current {
	width: 11px;
	height: 11px;
	border-width: 2px;
	box-shadow: 0 0 0 1px var(--hxcs-accent);
}

.hxcs-progress-component--mini-cart .hxcs-milestone-dot {
	width: 9px;
	height: 9px;
	border-width: 2px;
}

.hxcs-progress-component--mini-cart .hxcs-milestone-dot.is-next {
	width: 12px;
	height: 12px;
}

.hxcs-progress-component--mini-cart .hxcs-milestones {
	height: 19px;
	margin-top: 5px;
}

.hxcs-progress-component--mini-cart .hxcs-milestone-label,
.hxcs-progress-component--mini-cart .hxcs-milestone-label.is-next {
	top: 0;
	min-width: 30px;
	padding: 0 2px;
	background: transparent;
	font-size: 8px;
	line-height: 1.15;
}

.hxcs-progress-component--mini-cart .hxcs-milestone-label strong,
.hxcs-progress-component--mini-cart .hxcs-milestone-label.is-next strong {
	font-size: 8px;
}

@keyframes hxcs-mini-cart-progress-in {
	from {
		opacity: 0.4;
		transform: translateY(-2px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (max-width: 430px) {
	.hxcs-mini-cart-progress {
		padding: 12px 15px 11px !important;
	}

	.hxcs-mini-cart-progress__message {
		margin-bottom: 8px !important;
		font-size: 10px;
	}

	.hxcs-mini-cart-progress__meta {
		margin-bottom: 9px;
	}
}

@media (max-width: 360px) {
	.hxcs-mini-cart-progress__header {
		align-items: flex-start;
	}

	.hxcs-mini-cart-progress__eyebrow {
		font-size: 10px;
	}

	.hxcs-mini-cart-progress__status {
		font-size: 7px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hxcs-root *,
	.hxcs-root *::before,
	.hxcs-root *::after,
	.hxcs-mini-cart-progress,
	.hxcs-mini-cart-progress *,
	.hxcs-mini-cart-progress *::before,
	.hxcs-mini-cart-progress *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
