/* nunshen-ui — side cart (Elementor Pro Menu Cart, header 7682465 / EN 7765569).
   Reference: Palais des Thés' "article ajouté" panel, in nunshen's language (CORE SANS, black hairlines, crème, 1 px radius).
   Elementor styles the panel per widget with 4-class selectors → !important where we override its settings. */

.elementor-location-header .elementor-menu-cart__main {
	width: min(440px, 100vw) !important;
	max-width: 100vw !important;
	padding: 24px 28px 28px !important;
	font-family: var(--nui-font, "CORE SANS", sans-serif);
	color: var(--nui-black, #000000);
}
@media (max-width: 767px) {
	.elementor-location-header .elementor-menu-cart__main {
		width: 100vw !important;
		padding: 18px 18px 24px !important;
	}
}

/* close (×) sits on the header row */
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__close-button {
	position: absolute !important;
	top: 22px;
	right: 24px;
	margin: 0 !important;
	z-index: 2;
}
@media (max-width: 767px) {
	.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__close-button {
		top: 16px;
		right: 16px;
	}
}

/* header row: "Votre panier" / "✓ Ajouté au panier — <tea>" (ajax-add-to-cart.js) */
.nui-cart-head {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 28px;
	margin: 0 0 20px;
	padding: 0 40px 16px 0;
	border-bottom: 1px solid var(--nui-black, #000000);
	font-size: 18px;
	font-weight: var(--nui-w-regular, 400);
	line-height: 1.25;
	text-transform: uppercase;
}
.nui-cart-head svg {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
}
.nui-cart-head small {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	font-weight: var(--nui-w-light, 200);
	text-transform: none;
}

/* free-delivery progress (side-cart.php) */
.elementor-location-header .nui-ship {
	margin: 0 0 6px;
	padding: 0 0 18px;
	border-bottom: 1px solid var(--nui-line, #E3DED8);
	text-align: center;
}
.elementor-location-header .nui-ship__msg {
	margin: 0 0 12px;
	font-size: 14px;
	font-weight: var(--nui-w-light, 200);
	line-height: 1.4;
}
.elementor-location-header .nui-ship__msg strong,
.elementor-location-header .nui-ship__msg .amount {
	font-weight: var(--nui-w-bold, 600);
}
.elementor-location-header .nui-ship__bar {
	height: 4px;
	background: var(--nui-line, #E3DED8);
	overflow: hidden;
}
.elementor-location-header .nui-ship__bar span {
	display: block;
	height: 100%;
	background: var(--nui-black, #000000);
	transition: width .5s ease;
}


/* line items */
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product {
	grid-template-columns: 76px 1fr !important;
	padding: 16px 28px 16px 0 !important;
	border-bottom: 1px solid var(--nui-line, #E3DED8) !important;
	border-top: 0 !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-image img {
	width: 76px !important;
	height: 76px !important;
	object-fit: cover;
	background: var(--nui-creme, #F4F0EC);
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-name,
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-price {
	padding-left: 16px !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-name,
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-name a {
	font-size: 14px !important;
	font-weight: var(--nui-w-regular, 400) !important;
	line-height: 1.3 !important;
	text-transform: uppercase;
	color: var(--nui-black, #000000) !important;
}
.elementor-location-header .elementor-menu-cart__main .nui-cart-format {
	display: block;
	margin-top: 4px;
	font-size: 13px;
	font-weight: var(--nui-w-light, 200);
	text-transform: none;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-price,
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-price .amount {
	font-size: 14px !important;
	font-weight: var(--nui-w-regular, 400) !important;
	color: var(--nui-black, #000000) !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-remove {
	top: 16px !important;
	bottom: auto !important;
	right: 0 !important;
	opacity: .55;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product-remove:hover {
	opacity: 1;
}

/* the subtotal's black rule already closes the list */
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__product:last-child {
	border-bottom: 0 !important;
}

/* subtotal: label left, amount right */
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__subtotal {
	display: flex !important;
	justify-content: space-between;
	align-items: baseline;
	margin-top: 6px;
	padding: 18px 0 !important;
	border: 0 !important;
	border-top: 1px solid var(--nui-black, #000000) !important;
	font-size: 15px !important;
	text-transform: uppercase;
	text-align: left !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__subtotal strong {
	font-weight: var(--nui-w-regular, 400) !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__subtotal .amount {
	font-size: 20px !important;
	font-weight: var(--nui-w-bold, 600) !important;
}

/* buttons: "Voir le panier" (outline) | "Commander" (black) */
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__footer-buttons {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 10px !important;
	padding: 0 !important;
	margin: 0 !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-menu-cart__footer-buttons .elementor-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 0 !important;
	padding: 12px 10px !important;
	border: 1px solid var(--nui-black, #000000) !important;
	border-radius: var(--nui-radius, 1px) !important;
	font-family: var(--nui-font, "CORE SANS", sans-serif) !important;
	font-size: 14px !important;
	font-weight: var(--nui-w-regular, 400) !important;
	text-transform: uppercase;
	letter-spacing: 0;
	transition: background-color .15s ease, color .15s ease;
}
.elementor-location-header .elementor-menu-cart__main .elementor-button--view-cart {
	background: var(--nui-white, #FFFFFF) !important;
	color: var(--nui-black, #000000) !important;
}
.elementor-location-header .elementor-menu-cart__main .elementor-button--checkout {
	background: var(--nui-black, #000000) !important;
	color: var(--nui-white, #FFFFFF) !important;
}
@media (hover: hover) {
	.elementor-location-header .elementor-menu-cart__main .elementor-button--view-cart:hover {
		background: var(--nui-creme, #F4F0EC) !important;
	}
	.elementor-location-header .elementor-menu-cart__main .elementor-button--checkout:hover {
		background: #222222 !important;
	}
}

/* empty cart */
.elementor-location-header .elementor-menu-cart__main .woocommerce-mini-cart__empty-message {
	padding: 32px 0;
	font-size: 15px;
	font-weight: var(--nui-w-light, 200);
	text-align: center;
}

.elementor-location-header .elementor-menu-cart__main .nui-cart-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	border: 1px solid var(--nui-black, #000000);
	background: var(--nui-black, #000000);
	color: var(--nui-white, #FFFFFF) !important;
	font-size: 14px;
	text-transform: uppercase;
	text-decoration: none;
}
