/* DPAU Variation Upgrade — Design 1: unlock progress bar (above cart items) */
.dpau-up {
	display: flex; align-items: center; gap: 11px;
	background: #f0fdf4; border: 1px solid #cfe3d8; border-radius: 12px;
	padding: 11px 13px; margin: 0 0 14px;
}
.dpau-up__gift { position: relative; flex-shrink: 0; display: inline-flex; }
.dpau-up__gimg { width: 44px; height: 44px; border-radius: 8px; object-fit: cover; background: #fff; border: 1px solid #e3ede7; display: block; position: relative; z-index: calc(3 - var(--gi, 0)); }
/* Multiple gifts fan out into an overlapping stack */
.dpau-up__gift--n2, .dpau-up__gift--n3 { padding-right: 2px; }
.dpau-up__gift--n2 .dpau-up__gimg + .dpau-up__gimg,
.dpau-up__gift--n3 .dpau-up__gimg + .dpau-up__gimg { margin-left: -26px; box-shadow: -3px 0 5px rgba(0,0,0,.08); }
.dpau-up__gift--n2 .dpau-up__gimg, .dpau-up__gift--n3 .dpau-up__gimg { width: 40px; height: 40px; }
.dpau-up__free { position: absolute; top: -6px; right: -6px; font-size: 8px; font-weight: 700; color: #fff; background: #3a6f5b; padding: 1px 5px; border-radius: 10px; white-space: nowrap; z-index: 4; }
.dpau-up__body { flex: 1; min-width: 0; }
.dpau-up__head { display: block; font-size: 13px; color: #1f1f1f; line-height: 1.35; }
.dpau-up__hl { color: #3a6f5b; font-weight: 700; }
.dpau-up__bar { display: block; height: 6px; border-radius: 6px; background: #dcebe2; overflow: hidden; margin-top: 7px; }
.dpau-up__fill { display: block; height: 100%; background: #3a6f5b; border-radius: 6px; transition: width .3s ease; }
.dpau-up__btn {
	flex-shrink: 0; display: inline-flex; flex-direction: column; align-items: center; gap: 1px;
	border: none; border-radius: 9px; background: #2a5298; color: #fff;
	font-size: 12.5px; font-weight: 600; line-height: 1.2; padding: 9px 13px; cursor: pointer;
	transition: background .15s, opacity .15s;
}
.dpau-up__btn:hover { background: #234780; }
.dpau-up__btn:disabled, .dpau-up__btn.is-loading { opacity: .6; cursor: default; }
.dpau-up__delta { font-size: 10px; font-weight: 400; }
/* The theme colors WC price amounts green — force white on the blue button */
.dpau-up__delta, .dpau-up__delta .woocommerce-Price-amount, .dpau-up__delta bdi { color: #fff !important; }

/* Inside the post-ATC modal — sits above the cross-sell cards */
.dpau-up--modal { margin: 0 0 14px; }

/* Checkout order summary */
.dpau-up--checkout { margin: 0 0 12px; }

/* Confirmed state after a successful swap */
.dpau-up--done { border-color: #3a6f5b; }
.dpau-up--done .dpau-up__btn { background: #3a6f5b; opacity: 1; cursor: default; }

/* Dismiss control */
.dpau-up { position: relative; }
.dpau-up__x {
	flex-shrink: 0; border: none; background: none; padding: 4px; cursor: pointer;
	color: #9aa7a0; line-height: 0; border-radius: 6px; align-self: flex-start;
}
.dpau-up__x:hover { color: #3a6f5b; background: #e4f6ec; }

/* Compact variant inside the mini-cart drawer */
.dpau-up--drawer { gap: 9px; padding: 9px 11px; margin: 0 0 10px; }
.dpau-up--drawer .dpau-up__gimg { width: 38px; height: 38px; }
.dpau-up--drawer .dpau-up__head { font-size: 12px; }
.dpau-up--drawer .dpau-up__btn { padding: 8px 11px; font-size: 11.5px; }
