/*
 * likoer24 — modernes Warenkorb-CSS (site-weit)
 * --------------------------------------------------------------------------
 * Stylet (1) das Elementor-Pro „Menu Cart"-Popup und (2) die WooCommerce
 * Warenkorb-Seite im Berry-Brand-Look. Checkout bleibt bewusst unangetastet.
 *
 * Override-Strategie wie extras.css: jede Regel STRENG unter den Cart-Containern
 * gescoped + !important — damit nichts auf andere Elementor-/Divi-Buttons leakt
 * und der Cascade gegen Elementors später geladenes Widget-CSS sicher gewinnt.
 * Marken-Tokens siehe src/colors_and_type.css.
 */

:root {
	--lk24-berry: #962550;
	--lk24-berry-dark: #781D40;
	--lk24-ink: #101927;
	--lk24-muted: #6E7A88;
	--lk24-stone: #8695A7;
	--lk24-hairline: #EFE7EC;
	--lk24-berry-50: #F6EAF0;
	--lk24-ghost-border: #E2C9D5;
}

/* ==========================================================================
   1) MINI-CART POPUP  (Elementor Pro „Menu Cart")
   ========================================================================== */

/* Overlay-Dim weicher + markentauglicher */
.elementor-menu-cart__container {
	background-color: rgba( 16, 25, 39, .45 ) !important;
}

/* Slide-out-Panel */
.elementor-menu-cart__main {
	background: #fff !important;
	border-radius: 18px 0 0 18px !important;
	box-shadow: -8px 0 40px rgba( 16, 25, 39, .18 ) !important;
	padding: 22px 22px 20px !important;
}

/* Produktliste */
.elementor-menu-cart__products {
	padding-right: 4px !important;
}
.elementor-menu-cart__products::-webkit-scrollbar { width: 6px; }
.elementor-menu-cart__products::-webkit-scrollbar-thumb {
	background: #DFD6DC;
	border-radius: 999px;
}

/* Produkt-Zeile */
.elementor-menu-cart__product {
	border-bottom: 1px solid var( --lk24-hairline ) !important;
	padding: 14px 0 !important;
	align-items: flex-start !important;
	column-gap: 14px !important;
}
.elementor-menu-cart__product:last-child {
	border-bottom: none !important;
}

/* Thumbnail-Spalte + echte Etikett-Vorschau */
.elementor-menu-cart__product-image,
.elementor-menu-cart__product .product-thumbnail {
	width: 64px !important;
	flex: 0 0 64px !important;
}
.elementor-menu-cart__product-image img,
.elementor-menu-cart__product .lk24-cart-preview {
	width: 64px !important;
	height: 70px !important;
	object-fit: cover !important;
	border-radius: 10px !important;
	border: 1px solid var( --lk24-hairline ) !important;
	box-shadow: 0 1px 5px rgba( 16, 25, 39, .12 ) !important;
	background: #fff !important;
}

/* Fallback-Icon (kein Snapshot vorhanden) */
.lk24-cart-fallback {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 70px;
	border-radius: 10px;
	background: var( --lk24-berry-50 );
	color: var( --lk24-berry );
	border: 1px solid var( --lk24-hairline );
}
.lk24-cart-fallback svg { width: 26px; height: 26px; }

/* Produktname + Meta-Daten (Etikett-Stil, Zusammensetzung, Text …) */
.elementor-menu-cart__product-name,
.elementor-menu-cart__product-name a {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var( --lk24-ink ) !important;
	line-height: 1.3 !important;
}
.elementor-menu-cart__product-name dl.variation {
	margin-top: 6px !important;
	font-size: 12.5px !important;
	line-height: 1.5 !important;
	color: var( --lk24-muted ) !important;
}
.elementor-menu-cart__product-name dl.variation dt {
	float: none !important;
	clear: none !important;
	font-weight: 600 !important;
	color: var( --lk24-stone ) !important;
	margin: 0 !important;
}
.elementor-menu-cart__product-name dl.variation dd {
	margin: 0 0 4px !important;
}
.elementor-menu-cart__product-name dl.variation dd p {
	margin: 0 !important;
}

/* Stückpreis */
.elementor-menu-cart__product-price,
.elementor-menu-cart__product-price .quantity {
	font-size: 13px !important;
	color: var( --lk24-muted ) !important;
}

/* Entfernen-× — rund + dezent */
.elementor-menu-cart__product-remove a,
.elementor-menu-cart__product a.elementor_remove_from_cart_button {
	width: 22px !important;
	height: 22px !important;
	line-height: 20px !important;
	text-align: center !important;
	border-radius: 50% !important;
	color: #B4B2A9 !important;
	font-size: 14px !important;
	transition: background-color .15s, color .15s !important;
}
.elementor-menu-cart__product-remove a:hover,
.elementor-menu-cart__product a.elementor_remove_from_cart_button:hover {
	background: #FBECEC !important;
	color: #A32D2D !important;
}

/* Zwischensumme: Label links, Betrag rechts (statt Elementors zentrierter Optik) */
.elementor-menu-cart__subtotal {
	display: flex !important;
	align-items: baseline !important;
	text-align: left !important;
	margin-top: 4px !important;
	padding: 16px 0 4px !important;
	border-top: 1px solid var( --lk24-hairline ) !important;
	font-size: 14px !important;
	color: var( --lk24-muted ) !important;
}
.elementor-menu-cart__subtotal strong {
	font-weight: 400 !important;
	color: var( --lk24-muted ) !important;
}
.elementor-menu-cart__subtotal .woocommerce-Price-amount {
	margin-left: auto !important;
	font-size: 20px !important;
	font-weight: 600 !important;
	color: var( --lk24-ink ) !important;
}

/* Footer-Buttons — gestapelt, Kasse primär oben */
.elementor-menu-cart__footer-buttons {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 9px !important;
	margin-top: 14px !important;
}
.elementor-menu-cart__footer-buttons .elementor-button {
	border: 1px solid transparent !important;
	border-radius: 11px !important;
	padding: 13px 16px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	transition: background-color .15s, transform .15s, box-shadow .15s !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout {
	order: 1 !important;
	background-color: var( --lk24-berry ) !important;
	color: #fff !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover {
	background-color: var( --lk24-berry-dark ) !important;
	transform: translateY( -1px ) !important;
	box-shadow: 0 6px 16px rgba( 150, 37, 80, .25 ) !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart {
	order: 2 !important;
	background-color: #fff !important;
	color: var( --lk24-berry ) !important;
	border-color: var( --lk24-ghost-border ) !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover {
	background-color: var( --lk24-berry-50 ) !important;
}

@media ( max-width: 480px ) {
	.elementor-menu-cart__main {
		border-radius: 16px 0 0 16px !important;
		padding: 18px 16px !important;
	}
}

/* ==========================================================================
   2) WARENKORB-SEITE  (WooCommerce [woocommerce_cart])
   ========================================================================== */

/* Etikett-Vorschau in der Cart-Tabelle */
.woocommerce-cart .product-thumbnail img,
.woocommerce-cart .product-thumbnail .lk24-cart-preview {
	width: 84px !important;
	height: 92px !important;
	object-fit: cover !important;
	border-radius: 12px !important;
	border: 1px solid var( --lk24-hairline ) !important;
	box-shadow: 0 1px 6px rgba( 16, 25, 39, .10 ) !important;
}
.woocommerce-cart .product-thumbnail .lk24-cart-fallback {
	width: 84px;
	height: 92px;
	border-radius: 12px;
}

/* Meta-Daten in der Cart-Tabelle — gestapelt + muted (wie im Popup) */
.woocommerce-cart .product-name dl.variation dt {
	float: none !important;
	clear: none !important;
	margin: 6px 0 0 !important;
	font-weight: 600 !important;
	color: var( --lk24-stone ) !important;
}
.woocommerce-cart .product-name dl.variation dd,
.woocommerce-cart .product-name dl.variation dd p {
	margin: 0 !important;
	color: var( --lk24-muted ) !important;
}

/* Gesperrte Konfig-Menge (lock_cart_item_quantity) als saubere Pill */
.woocommerce-cart .lk24-qty-readonly {
	display: inline-block;
	padding: 6px 12px;
	border-radius: 999px;
	background: var( --lk24-berry-50 );
	color: var( --lk24-berry-dark );
	font-weight: 600;
	font-size: 14px;
}

/* Summen-Box als Karte */
.woocommerce-cart .cart_totals {
	background: #fff !important;
	border: 1px solid var( --lk24-hairline ) !important;
	border-radius: 14px !important;
	padding: 18px 20px !important;
	box-shadow: 0 1px 8px rgba( 16, 25, 39, .05 ) !important;
}
.woocommerce-cart .cart_totals h2 {
	font-size: 18px !important;
	color: var( --lk24-ink ) !important;
}

/* Weiter zur Kasse = solid Berry */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background-color: var( --lk24-berry ) !important;
	color: #fff !important;
	border-radius: 11px !important;
	padding: 14px 18px !important;
	font-weight: 600 !important;
	text-transform: none !important;
	transition: background-color .15s, transform .15s !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background-color: var( --lk24-berry-dark ) !important;
	transform: translateY( -1px ) !important;
}

/* Sekundäre Cart-Buttons (Aktualisieren, Gutschein) = Ghost */
.woocommerce-cart .actions .button,
.woocommerce-cart .coupon .button {
	background-color: #fff !important;
	color: var( --lk24-berry ) !important;
	border: 1px solid var( --lk24-ghost-border ) !important;
	border-radius: 10px !important;
	font-weight: 600 !important;
	text-transform: none !important;
}
.woocommerce-cart .actions .button:hover,
.woocommerce-cart .coupon .button:hover {
	background-color: var( --lk24-berry-50 ) !important;
}
