/* DACC Free Shipping Progress Bar
   Lightweight, no framework, no external font/icon requests. */

.dacc-fsb-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	transform: translateY(-100%);
	opacity: 0;
	visibility: hidden;
	transition: transform 260ms ease, opacity 260ms ease;
	background: #ffffff;
	border-top: 4px solid #1a1a1a;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.dacc-fsb-wrapper.is-visible {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}

.dacc-fsb-inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 12px 24px;
	display: flex;
	align-items: center;
	gap: 32px;
}

/* --- Left: order summary --- */

.dacc-fsb-order {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 110px;
}

.dacc-fsb-label {
	font-size: 12px;
	color: #6b7280;
}

.dacc-fsb-order-line {
	font-size: 14px;
	color: #1a1a1a;
	display: flex;
	gap: 6px;
	align-items: baseline;
	white-space: nowrap;
}

.dacc-fsb-order-line strong {
	font-weight: 700;
}

/* --- Center: progress --- */

.dacc-fsb-progress {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 460px;
}

.dacc-fsb-scale {
	display: flex;
	justify-content: space-between;
	font-size: 13px;
	font-weight: 700;
	color: #1a1a1a;
	margin-bottom: 5px;
}

.dacc-fsb-scale-goal {
	color: #8a8f98;
	font-weight: 600;
}

.dacc-fsb-track {
	position: relative;
	height: 8px;
	width: 100%;
	background: #e9e9ec;
	border-radius: 999px;
	overflow: hidden;
}

.dacc-fsb-fill {
	height: 100%;
	border-radius: 999px;
	background: linear-gradient(90deg, #d9740a 0%, #f2a03c 100%);
	transition: width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.dacc-fsb-wrapper.is-complete .dacc-fsb-fill {
	background: linear-gradient(90deg, #2f6e4e 0%, #4c9c72 100%);
}

.dacc-fsb-message {
	margin: 6px 0 0;
	font-size: 13px;
	color: #3a3a3a;
}

.dacc-fsb-remaining {
	color: #1a1a1a;
	font-weight: 700;
}

.dacc-fsb-rate-name {
	color: #2f6ea8;
	font-weight: 600;
}

/* --- Right: shipping badge + cart button --- */

.dacc-fsb-side {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 12px;
}

.dacc-fsb-ship-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	background: #e6f4e8;
	color: #2f6e4e;
	font-size: 13px;
	font-weight: 700;
	border-radius: 999px;
	white-space: nowrap;
}

.dacc-fsb-ship-icon {
	color: #2f6e4e;
	flex: 0 0 auto;
}

.dacc-fsb-cart-btn {
	display: inline-block;
	padding: 10px 22px;
	background: #12524b;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	border-radius: 999px;
	white-space: nowrap;
	transition: background 160ms ease;
}

.dacc-fsb-cart-btn:hover,
.dacc-fsb-cart-btn:focus {
	background: #1b6f66;
	color: #fff;
}

/* Push page content down while the bar is showing, without JS having to measure anything. */
body.dacc-fsb-active {
	padding-top: 70px;
}

@media (max-width: 782px) {
	.dacc-fsb-inner {
		flex-wrap: wrap;
		padding: 12px 16px;
		row-gap: 10px;
	}

	.dacc-fsb-order {
		order: 1;
	}

	.dacc-fsb-side {
		order: 2;
		margin-left: auto;
	}

	.dacc-fsb-progress {
		order: 3;
		flex-basis: 100%;
		max-width: none;
	}

	body.dacc-fsb-active {
		padding-top: 108px;
	}
}
