/* rmd-kadence-child/assets/css/cart.css
   Warenkorb-Seite (Vorlage warenkorb-neu.html). NUR Tokens aus tokens.css. Laedt nur im Warenkorb.
   Eigenes Markup aus woocommerce/cart/cart.php - KEINE Woo-Standardtabelle, keine data-title-
   Labels. Weisse Panels auf --color-page: links Positionen (+ bedingt "Passendes Zubehoer"),
   rechts Zusammenfassung. Gelb NUR am "Weiter zur Kasse"-CTA (+ Hover-Detail am Zubehoer-Plus). */

/* ===== Kadence/Fremd-Styles neutralisieren ===== */
.woocommerce-cart .entry-hero.page-hero-section{display:none}
.woocommerce-cart .content-bg,
.woocommerce-cart .entry-content-wrap,
.woocommerce-cart .single-entry{box-shadow:none!important;background:transparent!important}
.woocommerce-cart .entry-content-wrap{padding-top:var(--space-6)!important}
/* Kadence-Content-Wrap gibt dem Cart auf Mobil zu viel Seiten-Padding (Karte nur ~326px).
   Innere Ebenen seitlich auf 0, aeussere Kante schmal -> die Artikel-Karte bekommt die
   volle Breite; die Panels haben ihr eigenes Innen-Padding. */
@media(max-width:767px){
  .woocommerce-cart .content-container.site-container{padding-left:var(--space-3)!important;padding-right:var(--space-3)!important}
  .woocommerce-cart .single-entry,
  .woocommerce-cart .content-bg,
  .woocommerce-cart .entry-content-wrap,
  .woocommerce-cart .entry-content{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
}
.woocommerce-cart .woocommerce-message{border-top-color:var(--color-signal)}
/* Fremde Ueberschrift "Warenkorb-Uebersicht" (B2B-Plugin) + fremde Buttons raus */
.rmd-cart-form .cart-summary{display:none!important}
/* Germanized haengt "Lieferzeit: ..." grau unter den Namen - wir zeigen dieselbe Info bereits
   als gruene Status-Zeile in der Meta-Zeile (rmd_cart_item_stock_html) */
.rmd-cart-item__body .wc-gzd-cart-info.delivery-time-info{display:none!important}
.woocommerce-cart button[name="update_cart"],
.woocommerce-cart .rmd-cart__update,
.woocommerce-cart button[name="wcb2b_cart_empty"],
.woocommerce-cart input[name="empty_cart"],
.woocommerce-cart button[name="empty_cart"],
.woocommerce-cart a.wc-empty-cart-button{display:none!important}

/* ===== Kopf: Zurueck-Link ===== */
.rmd-cart__back{display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-sm);color:var(--color-text-muted);text-decoration:none;margin-bottom:var(--space-3)}
.rmd-cart__back:hover{color:var(--color-headline)}
.rmd-cart__back .rmd-icon{width:15px;height:15px}

/* ===== 2-Spalten-Grid ===== */
.rmd-cart__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,380px);gap:var(--space-6);align-items:start}
.rmd-cart__col{min-width:0}
.rmd-cart__aside{position:sticky;top:116px;min-width:0}
.rmd-cart__aside .cart-collaterals{width:100%!important;float:none!important;margin:0}
.woocommerce-cart .woocommerce{display:block}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals{width:100%!important;float:none!important}

/* ===== Positionen-Panel (weiss) ===== */
.rmd-cart__items{background:var(--color-bg);border-radius:var(--radius-panel);padding:var(--space-8)}
.rmd-cart__head{display:flex;align-items:baseline;gap:var(--space-3)}
.rmd-cart__title{font-family:var(--font-head);font-weight:var(--fw-head);font-size:var(--fs-2xl);color:var(--color-headline);margin:0;letter-spacing:-.02em;line-height:var(--lh-tight)}
.rmd-cart__count{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--fs-sm);color:var(--color-text-muted)}

/* ===== Position: Bild | Body ===== (Positionspreis bewusst NICHT - Preise stehen nur in der
   Zusammenfassung, sonst tauchen sie doppelt auf) */
.rmd-cart-item{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"media body";column-gap:var(--space-5);padding:var(--space-6) 0;border-bottom:1px solid var(--color-hairline);align-items:start}
.rmd-cart__list .rmd-cart-item:last-of-type{border-bottom:0;padding-bottom:var(--space-2)}
.rmd-cart-item.is-loading{opacity:.5;pointer-events:none;transition:opacity .12s}

/* Bild in Surface-Box */
.rmd-cart-item__media{grid-area:media;width:96px;height:96px;background:var(--color-surface);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;padding:var(--space-2)}
.rmd-cart-item__media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}

/* Body: Name, Varianten-Liste, Meta, Steuerung */
.rmd-cart-item__body{grid-area:body;min-width:0}
.rmd-cart-item__name{margin:0 0 var(--space-2)}
.rmd-cart-item__name a,
.rmd-cart-item__name span{font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-md);color:var(--color-headline);text-decoration:none;line-height:var(--lh-snug);letter-spacing:-.01em;overflow-wrap:break-word}
.rmd-cart-item__name a:hover{text-decoration:underline;text-decoration-color:var(--color-signal);text-decoration-thickness:2px;text-underline-offset:2px}

/* Varianten als Bezeichnung/Wert-Liste (WC dl.variation) */
.rmd-cart-item__body dl.variation{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-2);row-gap:2px;margin:0 0 var(--space-2);font-size:var(--fs-sm)}
.rmd-cart-item__body dl.variation dt{grid-column:1;margin:0;padding:0;min-width:82px;font-weight:var(--fw-regular);color:var(--color-text-muted);line-height:var(--lh-snug)}
.rmd-cart-item__body dl.variation dd{grid-column:2;margin:0;padding:0;font-weight:var(--fw-medium);color:var(--color-text);line-height:var(--lh-snug);overflow-wrap:break-word}
.rmd-cart-item__body dl.variation dd p{display:inline;margin:0}

/* Meta: Art.-Nr. + Lieferstatus (gruen) */
.rmd-cart-item__meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);font-size:var(--fs-xs);color:var(--color-text-muted);margin:0 0 var(--space-4)}
.rmd-cart-item__stock{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-success);font-weight:var(--fw-medium)}
.rmd-cart-item__stock .rmd-icon{width:13px;height:13px;flex:0 0 13px}
.rmd-cart-item__body .backorder_notification{margin:0 0 var(--space-2);font-size:var(--fs-xs);color:var(--color-error)}

/* Steuerung: Stepper + Entfernen */
.rmd-cart-item__ctl{display:flex;align-items:center;gap:var(--space-4)}
.rmd-cart-form .quantity{display:inline-flex;align-items:center;border-radius:var(--radius-pill);background:var(--color-surface);overflow:hidden;margin:0}
.rmd-cart-form .rmd-step{width:42px;height:44px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--color-headline);font-family:var(--font-head);font-size:var(--fs-lg);line-height:1;cursor:pointer;transition:background .15s}
.rmd-cart-form .rmd-step:hover{background:var(--btn-neutral-bg-hover)}
.rmd-cart-form .quantity input.qty{width:36px;height:44px;padding:0;border:0!important;border-radius:0!important;background:transparent;text-align:center;font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-sm);color:var(--color-headline);-moz-appearance:textfield;box-shadow:none!important}
.rmd-cart-form .quantity input.qty:focus{outline:none;box-shadow:none!important}
.rmd-cart-form input.qty::-webkit-outer-spin-button,
.rmd-cart-form input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Entfernen: dezenter Link (Kadence-Rundkreis-Reset) */
.rmd-cart-form a.remove.rmd-cart-item__rm{display:inline-flex;align-items:center;gap:var(--space-1);width:auto;height:auto;min-height:44px;border-radius:0;background:transparent!important;font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--fs-sm);color:var(--color-text-muted)!important;text-decoration:none;line-height:1}
.rmd-cart-form a.remove.rmd-cart-item__rm:hover{color:var(--color-headline)!important;background:transparent!important}
.rmd-cart-form a.remove.rmd-cart-item__rm .rmd-icon{width:14px;height:14px}

/* ===== "Passendes Zubehoer" (bedingtes Panel) ===== */
.rmd-cart-xs{background:var(--color-bg);border-radius:var(--radius-panel);padding:var(--space-6) var(--space-8);margin-top:var(--space-5)}
.rmd-cart-xs__title{font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-sm);color:var(--color-headline);margin-bottom:var(--space-4)}
/* auto-fit statt fixe 3 Spalten: bei realen Produktnamen lieber 2 breite Kacheln als 3 gequetschte */
.rmd-cart-xs__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-3)}
.rmd-cart-xs__item{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius);padding:var(--space-3) var(--space-4)}
.rmd-cart-xs__media{flex:0 0 40px}
.rmd-cart-xs__media img{width:40px;height:40px;object-fit:contain;display:block}
.rmd-cart-xs__name{flex:1;min-width:0;font-size:var(--fs-xs);line-height:1.35;color:var(--color-text);text-decoration:none;overflow-wrap:break-word}
.rmd-cart-xs__name:hover{color:var(--color-headline);text-decoration:underline}
.rmd-cart-xs__price{font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-xs);color:var(--color-headline);white-space:nowrap}
.rmd-cart-xs__add{flex:0 0 40px;width:40px;height:40px;border-radius:var(--radius-pill);background:var(--color-bg);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:background .15s}
.rmd-cart-xs__add:hover{background:var(--color-signal)}
.rmd-cart-xs__add .rmd-icon{width:14px;height:14px;color:var(--color-headline)}

/* ===== Zusammenfassung (weisses Panel) ===== */
.rmd-cart-totals{background:var(--color-bg);border-radius:var(--radius-panel);padding:var(--space-6);width:100%!important;float:none!important}
.rmd-cart__title--sum{font-size:var(--fs-lg);margin-bottom:var(--space-4)}

/* Gutschein-Komponente oben, mit Haarlinie abgesetzt (Styling der Komponente in blocks.css) */
.rmd-cart-totals .rmd-coupon-wrap{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-hairline);margin-bottom:var(--space-2)}

/* Summen-Zeilen */
.rmd-cart-totals table.rmd-sum{width:100%;margin:0;border-collapse:collapse}
.rmd-cart-totals table.rmd-sum tr,
.rmd-cart-totals table.rmd-sum th,
.rmd-cart-totals table.rmd-sum td{border:0!important;background:transparent!important}
.rmd-cart-totals table.rmd-sum th{text-align:left;font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--fs-sm);color:var(--color-text-muted);padding:var(--space-2) 0;vertical-align:baseline}
.rmd-cart-totals table.rmd-sum td{text-align:right!important;font-family:var(--font-body);font-weight:var(--fw-medium);font-size:var(--fs-sm);color:var(--color-text);padding:var(--space-2) 0;vertical-align:baseline;white-space:nowrap}
.rmd-cart-totals table.rmd-sum th small{font-size:var(--fs-xs);color:var(--color-text-muted)}
/* Versand: rechtsbuendig (Kadence-Flex-Fix); Wert neutral wie andere Zeilen -
   GRUEN nur .rmd-ship-free (setzt der PHP-Filter ausschliesslich bei 0-Kosten-Methoden) */
.rmd-cart-totals .woocommerce-shipping-methods{list-style:none!important;margin:0!important;padding:0!important;text-align:right!important}
.rmd-cart-totals .woocommerce-shipping-methods li{display:block!important;list-style:none!important;margin:0!important;padding:0!important;text-align:right!important}
.rmd-cart-totals .rmd-ship-free{color:var(--color-success);font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-sm)}
/* Gesamtsumme betont, Trennlinie davor */
.rmd-cart-totals table.rmd-sum tr.order-total th,
.rmd-cart-totals table.rmd-sum tr.order-total td{border-top:1px solid var(--color-hairline)!important;padding-top:var(--space-4)}
.rmd-cart-totals table.rmd-sum tr.order-total th{font-family:var(--font-head);color:var(--color-headline);font-weight:var(--fw-bold);font-size:var(--fs-base)}
.rmd-cart-totals table.rmd-sum tr.order-total .amount,
.rmd-cart-totals table.rmd-sum tr.order-total strong{font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-2xl);color:var(--color-headline);letter-spacing:-.02em}
.rmd-cart-net{text-align:right;font-size:var(--fs-xs);color:var(--color-text-muted);margin:var(--space-1) 0 0}

/* ===== "Weiter zur Kasse" = der EINE gelbe CTA ===== */
.rmd-cart-totals .wc-proceed-to-checkout{padding:var(--space-5) 0 0;margin:0}
.rmd-cart-totals .wc-proceed-to-checkout a.checkout-button{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:54px;padding:0 var(--space-6);font-family:var(--font-head);font-weight:var(--fw-bold);font-size:var(--fs-md);text-decoration:none;background:var(--color-signal)!important;color:var(--color-on-signal)!important;border:1.5px solid transparent!important;border-radius:var(--radius-pill)!important;box-shadow:var(--shadow-cta);transition:background .15s}
.rmd-cart-totals .wc-proceed-to-checkout a.checkout-button:hover{background:var(--color-signal-hover)!important}
.rmd-cart-totals .wc-proceed-to-checkout a.checkout-button:focus-visible{outline:2px solid var(--color-headline);outline-offset:2px}

/* ===== Leerer Warenkorb ===== */
.woocommerce-cart .cart-empty.woocommerce-info{background:var(--color-bg);border:0;border-radius:var(--radius-card);padding:var(--space-8);text-align:center;color:var(--color-text)}
.woocommerce-cart .return-to-shop{margin-top:var(--space-4);text-align:center}

/* ===== Tablet: eine Spalte ===== */
@media(max-width:900px){
  .rmd-cart__grid{grid-template-columns:1fr;gap:var(--space-4)}
  .rmd-cart__aside{position:static}
}

/* ===== Mobil: Bild + Textblock (Name, Varianten, Meta, Stepper/Entfernen) nebeneinander ===== */
@media(max-width:767px){
  /* Weniger Seiten-Padding -> Inhalt sitzt weiter links und hat mehr Breite */
  .rmd-cart__items{padding:var(--space-5) var(--space-4);border-radius:var(--radius-card)}
  .rmd-cart-xs{padding:var(--space-5) var(--space-4);border-radius:var(--radius-card);margin-top:var(--space-4)}
  .rmd-cart-xs__row{grid-template-columns:1fr}
  .rmd-cart-totals{padding:var(--space-5) var(--space-4);border-radius:var(--radius-card)}
  .rmd-cart__title{font-size:var(--fs-xl)}

  .rmd-cart-item{grid-template-columns:64px minmax(0,1fr);grid-template-areas:"media body";column-gap:var(--space-3);padding:var(--space-5) 0}
  .rmd-cart-item__media{width:64px;height:64px}
  .rmd-cart-item__name a,
  .rmd-cart-item__name span{font-size:var(--fs-base)}
  /* Varianten NICHT mehr zweispaltig: das lange Label wuerde den Wert in eine winzige
     Restspalte quetschen (bricht dann Zeichen fuer Zeichen um). Label ueber Wert stapeln,
     Wert bekommt die volle Body-Breite. */
  .rmd-cart-item__body dl.variation{display:block;margin:0 0 var(--space-2)}
  .rmd-cart-item__body dl.variation dt{display:block;min-width:0;margin:var(--space-2) 0 0}
  .rmd-cart-item__body dl.variation dt:first-child{margin-top:0}
  .rmd-cart-item__body dl.variation dd{display:block;margin:0}
  .rmd-cart-item__meta{margin-bottom:var(--space-3)}
  /* Stepper links, Entfernen rechts - EINE Zeile (nowrap + space-between). Dank breiterem
     Container passt beides nebeneinander; Entfernen bricht nie mitten im Wort (nowrap). */
  .rmd-cart-item__ctl{flex-wrap:nowrap;justify-content:space-between;gap:var(--space-3)}
  .rmd-cart-form a.remove.rmd-cart-item__rm{white-space:nowrap;flex:0 0 auto}
  /* iOS-Zoom vermeiden: Mengenfeld mind. 16px */
  .rmd-cart-form .quantity input.qty{font-size:var(--fs-base)}
}

/* Sehr schmal (kleine Phones / Zoom): Padding + Bild minimal kompakter, Stepper bleibt
   voll bedienbar (44px). Entfernen etwas kleiner, damit die Zeile sicher passt. */
@media(max-width:400px){
  .rmd-cart__items{padding:var(--space-4) var(--space-3)}
  .rmd-cart-item__media{width:56px;height:56px}
  .rmd-cart-form a.remove.rmd-cart-item__rm{font-size:var(--fs-xs)}
}
