/* ===========================
   ESAP Mini-Cart Styles (scoped)
   =========================== */
:root {
  --esap-green: #5b7f6b;
  --esap-green-strong: #4c6a59;
  --esap-border: rgba(0,0,0,.25);
}

/* ----- SCOPE ----- */
.esap-mini-cart-container {
  /* optional: generische Container-Anpassungen */
}

/* Zeilenlayout */
.esap-mini-cart-container .esap-mini-cart .esap-line {
  display: grid;
  grid-template-columns: 64px 1fr auto;
  grid-template-areas: "thumb body price";
  gap: 12px 14px;
  align-items: start;
  padding: 14px 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
  position: relative;
}

/* Bild */
.esap-mini-cart-container .esap-mini-cart .esap-thumb { grid-area: thumb; display:block; }
.esap-mini-cart-container .esap-mini-cart .esap-thumb img {
  width:64px; height:64px; object-fit:cover; border-radius:6px;
}

/* Body */
.esap-mini-cart-container .esap-mini-cart .esap-body { grid-area: body; display:grid; gap:6px; }
.esap-mini-cart-container .esap-mini-cart .esap-title { font-weight:700; line-height:1.25; color:inherit; text-decoration:none; }
.esap-mini-cart-container .esap-mini-cart .esap-title:hover { text-decoration:underline; }

.esap-mini-cart-container .esap-mini-cart .esap-meta { font-size:.94rem; color:rgba(0,0,0,.75); display:grid; gap:2px; }
.esap-mini-cart-container .esap-mini-cart .esap-meta .variations,
.esap-mini-cart-container .esap-mini-cart .esap-meta .variation,
.esap-mini-cart-container .esap-mini-cart .esap-meta dl { margin:0; }
.esap-mini-cart-container .esap-mini-cart .esap-meta dt,
.esap-mini-cart-container .esap-mini-cart .esap-meta dd { display:inline; margin:0; }
.esap-mini-cart-container .esap-mini-cart .esap-unit { color:rgba(0,0,0,.85); }
.esap-mini-cart-container .esap-mini-cart .esap-vat { color:rgba(0,0,0,.60); }

/* Stepper – Outline-Stil, gleich hoch */
.esap-mini-cart-container .esap-mini-cart .esap-qty { margin-top:10px; }
.esap-mini-cart-container .esap-mini-cart .esap-qty-controls {
  display:grid; grid-template-columns: 44px 1fr 44px; align-items:stretch; gap:8px;
}
.esap-mini-cart-container .esap-mini-cart .esap-qty-btn {
  border: 1px solid var(--esap-border); border-radius:10px; background:#fff; color:#222;
  font-size:20px; display:flex; align-items:center; justify-content:center; cursor:pointer;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.esap-mini-cart-container .esap-mini-cart .esap-qty-btn:hover,
.esap-mini-cart-container .esap-mini-cart .esap-qty-btn:focus {
  border-color: var(--esap-green); color: #fff; background: var(--esap-green); outline: none;
}
.esap-mini-cart-container .esap-mini-cart .esap-qty-input {
  width:100%; border:1px solid var(--esap-border); border-radius:10px; text-align:center; font-weight:600; background:#fff;
  height:44px; line-height:44px;
}

/* Preis rechts */
.esap-mini-cart-container .esap-mini-cart .esap-price {
  grid-area: price; min-width: 92px; text-align: right; font-weight: 700;
  align-self: start; justify-self: end;
}

/* Entfernen-Icon schwarz (übersteuert Theme) */
.esap-mini-cart-container .esap-mini-cart .esap-remove { position:absolute; top:6px; right:0; }
.esap-mini-cart-container .esap-mini-cart .esap-remove .remove { color:#000 !important; text-decoration:none; font-size:20px; }
.esap-mini-cart-container .esap-mini-cart .esap-remove .remove svg { stroke:#000 !important; fill:none !important; }

/* Subtotal & Buttons */
.esap-mini-cart-container .woocommerce-mini-cart__total {
  display:flex; justify-content:space-between; padding-top:12px; font-weight:600;
}
.esap-mini-cart-container .woocommerce-mini-cart__total .amount { font-weight:700; }
.esap-mini-cart-container .woocommerce-mini-cart__buttons .button.checkout {
  width:100%; border-radius:10px; padding:12px 16px;
}

/* Zahlungslogos */
.esap-mini-cart-container .esap-pay-logos {
  display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:center;
  opacity:.9; padding-top:10px;
}
.esap-mini-cart-container .esap-pay-logos img { height:20px; width:auto; display:block; }

/* Reihenfolge im Kadence-Wrapper (CSS-Fallback) */
.esap-mini-cart-container .kadence-mini-cart-refresh { display:flex; flex-direction:column; }
.esap-mini-cart-container .kadence-mini-cart-refresh .woocommerce-mini-cart { order: 1; }
.esap-mini-cart-container .kadence-mini-cart-refresh .woocommerce-mini-cart__total { order: 2; }
.esap-mini-cart-container .kadence-mini-cart-refresh .woocommerce-mini-cart__buttons { order: 3; }
.esap-mini-cart-container .esap-pay-logos { order: 4; }
.esap-mini-cart-container .kadence-mini-cart-shipping { order: 5; margin-top: 12px; } /* endgültig per JS ganz ans Ende verschoben */
