/**
 * Alma checkout process bar — overrides parent alma.css
 */

body.woocommerce-cart .alm-woocommerce-buy-process,
body.woocommerce-checkout .alm-woocommerce-buy-process,
.woocommerce .alm-woocommerce-buy-process {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	align-items: start !important;
	justify-content: initial !important;
	flex-flow: initial !important;
	gap: 0 !important;
	margin: 0 0 40px !important;
	padding: 22px 18px 20px !important;
	border-radius: 24px !important;
	background: #f6f6f6 !important;
	position: relative !important;
	isolation: isolate !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process::before,
body.woocommerce-checkout .alm-woocommerce-buy-process::before,
.woocommerce .alm-woocommerce-buy-process::before {
	content: "" !important;
	width: auto !important;
	height: 3px !important;
	inset-inline: 16% !important;
	left: auto !important;
	right: auto !important;
	top: 46px !important;
	border-radius: 99px !important;
	background: var(--color-primary200, #c1b6de) !important;
	transform: none !important;
	z-index: 0 !important;
	opacity: 1 !important;
	position: absolute !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step {
	position: relative !important;
	z-index: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 12px !important;
	min-height: 0 !important;
	padding: 0 8px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--gray, #8d8d8d) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	letter-spacing: -0.04em !important;
	text-align: center !important;
	text-decoration: none !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step svg,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step svg,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step svg {
	width: 48px !important;
	height: 48px !important;
	padding: 12px !important;
	box-sizing: border-box !important;
	border-radius: 16px !important;
	border: 1.5px solid transparent !important;
	background: #fff !important;
	flex-shrink: 0 !important;
	color: inherit !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step svg path,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step svg path,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step svg path {
	stroke: currentColor !important;
}

/* Upcoming */
body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-upcoming,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-upcoming,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-upcoming {
	color: var(--gray, #8d8d8d) !important;
	pointer-events: none !important;
	opacity: 0.72 !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-upcoming svg,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-upcoming svg,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-upcoming svg {
	background: #fff !important;
	border-color: #e6e6e6 !important;
	color: var(--gray, #8d8d8d) !important;
}

/* Done */
body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done {
	color: var(--color-primary300, #373254) !important;
	opacity: 1 !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done svg,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done svg,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done svg {
	background: var(--color-secondary100, #fde1d8) !important;
	border-color: var(--color-secondary200, #f9a48a) !important;
	color: var(--color-secondary300, #f5683c) !important;
}

/* Current */
body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step {
	background: transparent !important;
	color: var(--color-primary300, #373254) !important;
	font-weight: 800 !important;
	opacity: 1 !important;
}

body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step svg,
body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step svg,
.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step svg {
	background: var(--color-secondary300, #f5683c) !important;
	border-color: var(--color-secondary300, #f5683c) !important;
	color: #fff !important;
	box-shadow: 0 10px 22px rgba(245, 104, 60, 0.28) !important;
	transform: translateY(-1px) !important;
}

@media (max-width: 767px) {
	body.woocommerce-cart .alm-woocommerce-buy-process,
	body.woocommerce-checkout .alm-woocommerce-buy-process,
	.woocommerce .alm-woocommerce-buy-process {
		grid-template-columns: 1fr !important;
		gap: 10px !important;
		padding: 14px !important;
		margin-bottom: 28px !important;
	}

	body.woocommerce-cart .alm-woocommerce-buy-process::before,
	body.woocommerce-checkout .alm-woocommerce-buy-process::before,
	.woocommerce .alm-woocommerce-buy-process::before {
		display: none !important;
	}

	body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step,
	body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step,
	.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step {
		flex-direction: row !important;
		justify-content: flex-start !important;
		gap: 12px !important;
		padding: 10px 12px !important;
		border-radius: 16px !important;
		background: #fff !important;
		text-align: right !important;
	}

	body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step,
	body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step,
	.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-woocommerce-current-step {
		background: #fff !important;
		box-shadow: inset 0 0 0 1.5px var(--color-secondary300, #f5683c) !important;
	}

	body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done,
	body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done,
	.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step.alm-step-done {
		background: var(--color-secondary100, #fde1d8) !important;
	}

	body.woocommerce-cart .alm-woocommerce-buy-process .alm-woocommerce-step svg,
	body.woocommerce-checkout .alm-woocommerce-buy-process .alm-woocommerce-step svg,
	.woocommerce .alm-woocommerce-buy-process .alm-woocommerce-step svg {
		width: 40px !important;
		height: 40px !important;
		padding: 9px !important;
		border-radius: 12px !important;
	}
}
