/*!
 * Repack much Core – Verkaufshilfen im Shop: Hinweis unter dem Preis, Staffel-Box auf der
 * Produktseite, Bestpreis in der Shop-Übersicht, Hinweise in Warenkorb und Seiten-Warenkorb,
 * Ersparnis-Zeile. Baut auf rmc-basis.css auf. Keine Schlagschatten.
 */

/* ---------------- Zeile unter dem Preis (schlicht, ohne Kasten) ---------------- */

.rmc.rmc-teaser {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 4px 0 16px;
  color: var(--rmc-gruen-text);
  font-size: 16px;
  line-height: 1.45;
}
.rmc.rmc-teaser .rmc-icon { flex: 0 0 auto; width: 20px; height: 20px; margin-top: 2px; color: var(--rmc-gruen-text); }
.rmc.rmc-teaser strong { color: var(--rmc-gruen-text); }

/* ---------------- Box „Preis nach Menge“ (große Schrift, ruhige Tabelle) ---------------- */

.rmc.rmc-staffelbox {
  margin: 8px 0 22px;
  padding: 18px;
  border: 1.5px solid var(--rmc-gruen-rand);
  border-radius: var(--rmc-radius);
  background: #fff;
  color: var(--rmc-text);
  font-size: 16px;
  scroll-margin-top: 120px;
}
.rmc .rmc-sb-titel { margin: 0 0 4px; font-size: 21px; line-height: 1.25; }
.rmc .rmc-sb-text { margin: 0 0 14px; font-size: 15px; line-height: 1.45; color: var(--rmc-text-2); }

.rmc .rmc-sb-liste {
  display: grid;
  margin: 0 0 16px;
  border: 1px solid var(--rmc-linie);
  border-radius: var(--rmc-radius-m);
  overflow: hidden;
}
.rmc .rmc-sb-zeile {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 2px 12px;
  width: 100%;
  min-height: 56px;
  margin: 0;
  padding: 10px 16px;
  border: 0;
  border-top: 1px solid var(--rmc-linie);
  border-radius: 0;
  background: #fff;
  color: var(--rmc-text);
  font: inherit;
  font-size: 17px;
  line-height: 1.3;
  text-align: left;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
.rmc .rmc-sb-zeile:first-child { border-top: 0; }
.rmc button.rmc-sb-zeile:hover { background: var(--rmc-beige-2); }
.rmc button.rmc-sb-zeile[disabled] { cursor: not-allowed; opacity: .45; }
.rmc button.rmc-sb-zeile[disabled]:hover { background: #fff; }
.rmc .rmc-sb-zeile:focus-visible { outline: 3px solid var(--rmc-text); outline-offset: -4px; }
/* Geltende Zeile: grün gefüllt mit weißer Schrift (Hausregel: keine dunkle Schrift auf Grün) */
.rmc .rmc-sb-zeile.is-aktiv,
.rmc button.rmc-sb-zeile.is-aktiv:hover { z-index: 1; background: #fff; color: var(--rmc-text); cursor: default; outline: 2px solid var(--rmc-gruen); outline-offset: -2px; }
/* geltende Zeile ruhig markiert: grüner Rahmen und Balken links, keine Fläche (Marcel 14.10.2026:
   „sticht zu sehr heraus“, der Warenkorb-Knopf soll das Auffälligste bleiben) */
.rmc .rmc-sb-zeile.is-aktiv::before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 6px; background: var(--rmc-gruen); }
.rmc .rmc-sb-zeile.is-aktiv:focus-visible { outline: 3px solid var(--rmc-text); outline-offset: -4px; }
.rmc .rmc-sb-menge { color: inherit; }
.rmc .rmc-sb-preis { font-family: var(--rmc-stark); font-size: 18px; white-space: nowrap; color: inherit; font-variant-numeric: tabular-nums; }
.rmc .rmc-sb-unter { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 2px 14px; font-size: 15px; line-height: 1.35; }
.rmc .rmc-sb-zeile--grund:not(.is-aktiv) .rmc-sb-unter { display: none; }
.rmc .rmc-sb-dein { display: none; align-items: center; gap: 4px; font-family: var(--rmc-stark); }
.rmc .rmc-sb-zeile.is-aktiv .rmc-sb-dein { display: inline-flex; }
.rmc .rmc-sb-dein .rmc-icon { width: 17px; height: 17px; }
.rmc .rmc-sb-spar { color: var(--rmc-gruen-text); }
.rmc .rmc-sb-spar strong,
.rmc .rmc-sb-zeile.is-aktiv strong { color: inherit; }
.rmc .rmc-sb-zeile.is-aktiv .rmc-sb-dein { color: var(--rmc-gruen-text); }

/* Box anfangs zugeklappt (Schalter „produkt_zu“): eine Zeile, damit „In den Warenkorb“ oben bleibt */
.rmc.rmc-staffelbox--zu { padding: 0; overflow: hidden; }
.rmc .rmc-sb-klapp > summary.rmc-sb-kopf {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 12px;
  min-height: 66px;
  padding: 12px 18px;
  color: var(--rmc-text);
  cursor: pointer;
  list-style: none;
  transition: background-color .15s ease;
}
.rmc .rmc-sb-klapp > summary::-webkit-details-marker { display: none; }
.rmc .rmc-sb-klapp > summary:hover { background: var(--rmc-beige-2); }
.rmc .rmc-sb-klapp > summary:focus-visible { outline-offset: -4px; }
.rmc .rmc-sb-kopf > .rmc-icon:first-child { width: 22px; height: 22px; color: var(--rmc-gruen-text); }
.rmc .rmc-sb-kopf > .rmc-icon:last-child { width: 22px; height: 22px; color: var(--rmc-text-2); transition: transform .15s ease; }
.rmc .rmc-sb-klapp[open] > .rmc-sb-kopf > .rmc-icon:last-child { transform: rotate(180deg); }
.rmc .rmc-sb-kopf .rmc-sb-titel { margin: 0; font-size: 19px; line-height: 1.25; }
.rmc .rmc-sb-kopf-unter { display: block; margin-top: 2px; font-size: 15px; line-height: 1.35; color: var(--rmc-text-2); }
.rmc .rmc-sb-klapp-inhalt { padding: 2px 18px 18px; }

.rmc .rmc-sb-ergebnis { display: grid; gap: 12px; }
/* „Im Warenkorb liegen schon 49 Stück …“ */
.rmc .rmc-sb-korb { margin: 0; font-size: 15px; line-height: 1.45; color: var(--rmc-text-2); }
.rmc .rmc-sb-korb strong { color: var(--rmc-text); }
.rmc .rmc-sb-korb.is-betont { color: var(--rmc-text); }
.rmc .rmc-sb-korb a { color: var(--rmc-text); text-decoration: underline; text-underline-offset: 3px; }
.rmc .rmc-sb-summe {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  color: var(--rmc-text);
  font-size: 17px;
  font-variant-numeric: tabular-nums;
}
.rmc .rmc-sb-summe strong { font-size: 24px; line-height: 1.15; white-space: nowrap; }
.rmc .rmc-sb-gespart { margin: -6px 0 0; font-size: 15px; color: var(--rmc-gruen-text); }
.rmc .rmc-sb-gespart strong { color: var(--rmc-gruen-text); }
.rmc .rmc-sb-beste { margin: 0; font-size: 15px; color: var(--rmc-gruen-text); }

/* Hinweis auf die nächste Stufe (Box, Warenkorb, Seiten-Warenkorb) */
.rmc .rmc-sb-naechste {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 4px 10px;
  margin: 0;
  padding: 11px 12px;
  border: 1px solid var(--rmc-linie);
  border-radius: var(--rmc-radius-m);
  background: var(--rmc-beige-2);
  color: var(--rmc-text);
  font-size: 14.5px;
  line-height: 1.5;
}
.rmc .rmc-sb-naechste .rmc-icon { width: 20px; height: 20px; margin-top: 2px; color: var(--rmc-gruen-text); }
.rmc .rmc-sb-naechste p { margin: 0; }
.rmc .rmc-sb-naechste .rmc-knopf { grid-column: 2; justify-self: start; margin-top: 6px; }
.rmc .rmc-sb-naechste--top { border-color: #f1dcc3; background: #fdf3e6; }
.rmc .rmc-sb-naechste--top .rmc-icon { color: var(--rmc-braun); }
.rmc.rmc-staffelbox .rmc-sb-naechste { padding: 12px 14px; font-size: 16px; }
.rmc.rmc-staffelbox .rmc-sb-naechste .rmc-knopf { margin-top: 8px; }

/* Versand: eine Zeile zum Aufklappen */
.rmc .rmc-sb-versand { margin: 0; padding-top: 2px; border-top: 1px solid var(--rmc-linie); font-size: 16px; line-height: 1.45; color: var(--rmc-text); }
.rmc .rmc-sb-versand > summary {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 8px 0;
  cursor: pointer;
  list-style: none;
}
.rmc .rmc-sb-versand > summary::-webkit-details-marker { display: none; }
.rmc .rmc-sb-versand > summary > .rmc-icon:first-child { width: 20px; height: 20px; color: var(--rmc-braun); }
.rmc .rmc-sb-versand > summary > .rmc-icon:last-child { width: 20px; height: 20px; color: var(--rmc-text-2); transition: transform .15s ease; }
.rmc .rmc-sb-versand[open] > summary > .rmc-icon:last-child { transform: rotate(180deg); }
.rmc .rmc-sb-versand small { font-size: 14px; color: var(--rmc-text-2); }
.rmc .rmc-sb-versand-mehr { padding: 0 0 4px 32px; font-size: 15px; color: var(--rmc-text-2); }
.rmc .rmc-sb-versand-mehr p { margin: 0 0 8px; }
.rmc .rmc-sb-versand-mehr a { color: var(--rmc-text); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.rmc .rmc-sb-versand--nur { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; padding-top: 12px; }
.rmc .rmc-sb-versand--nur .rmc-icon { width: 20px; height: 20px; color: var(--rmc-braun); }

/* ---------------- Produktseite: Zahlungsarten und Vorteile offen, mit klaren Überschriften ---------------- */

.rmc.rmc-teile { margin: 24px 0 0; border-top: 1px solid var(--rmc-linie); color: var(--rmc-text); }
.rmc.rmc-teile .rmc-teil { padding: 16px 0 18px; border-bottom: 1px solid var(--rmc-linie); }
.rmc.rmc-teile .rmc-teil-titel { margin: 0 0 12px; font-size: 18px; line-height: 1.3; }
.rmc.rmc-teile .pls-product-trust-badge legend,
.rmc.rmc-teile .pls-product-policy-label { display: none; }
.rmc.rmc-teile .pls-product-trust-badge,
.rmc.rmc-teile .pls-product-policy,
.rmc.rmc-teile .pls-product-trust-badge fieldset { margin: 0; padding: 0; border: 0; }
.rmc.rmc-teile .pls-product-trust-badge img { display: block; width: auto; max-width: 100%; }
.rmc.rmc-teile .pls-policy-item-name { font-size: 16px; color: var(--rmc-text); }
.rmc.rmc-teile .pls-policy-item-desc { font-size: 15px; line-height: 1.45; color: var(--rmc-text-2); }

/* Handy: „In den Warenkorb“ und „Jetzt kaufen“ unten in einer Zeile */
@media (max-width: 767px) {
  body.rmc-knopf-handy.single-product form.cart .single_add_to_cart_button,
  body.rmc-knopf-handy.single-product .pls-quick-buy,
  body.rmc-knopf-handy.single-product .pls-quick-buy .button,
  body.rmc-knopf-handy.single-product .pls-quick-buy button {
    font-size: 16px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
  }
}

/* Kleine Knöpfe in Box und Warenkorb etwas flacher als auf den Preisseiten */
.rmc .rmc-knopf--klein { min-height: 40px; padding: 7px 14px; border-radius: 12px; font-size: 14.5px; }
.rmc .rmc-knopf[disabled] { cursor: progress; opacity: .7; }

/* ---------------- Shop-Übersicht ---------------- */

.rmc.rmc-liste-hinweis {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 4px 0 8px;
  color: var(--rmc-gruen-text);
  font-size: 14px;
  line-height: 1.35;
}
.rmc.rmc-liste-hinweis .rmc-icon { flex: 0 0 auto; width: 16px; height: 16px; color: var(--rmc-gruen-text); }
.rmc.rmc-liste-hinweis strong { color: var(--rmc-gruen-text); }

/* ---------------- Warenkorb ---------------- */

.rmc.rmc-korb-zeile { display: grid; gap: 8px; margin: 8px 0 2px; font-size: 14px; line-height: 1.45; text-align: left; }
.rmc .rmc-kz-aktiv { display: flex; align-items: flex-start; gap: 6px; margin: 0; color: var(--rmc-gruen-text); }
.rmc .rmc-kz-aktiv .rmc-icon { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 1px; }
.rmc .rmc-kz-aktiv strong { color: var(--rmc-gruen-text); }
.rmc .rmc-kz-aktiv s { color: var(--rmc-text-2); }
.rmc.rmc-korb-zeile .rmc-sb-naechste { padding: 9px 10px; font-size: 13.5px; }

/* Desktop: Hinweis als eigene Zeile unter der Warenkorb-Zeile (rmc-korb.js), Handy: unter dem Namen.
   !important, weil die Handy-Tabelle des Themes jede Zeile auf display:block setzt. */
.woocommerce-cart-form tr.rmc-unterzeile { display: none !important; }
@media (min-width: 768px) {
  .woocommerce-cart-form tr.rmc-unterzeile { display: table-row !important; }
  .rmc.rmc-korb-zeile.rmc-hat-unterzeile > .rmc-sb-naechste { display: none; }
  .woocommerce-cart-form tr.rmc-mit-unterzeile,
  .woocommerce-cart-form tr.rmc-mit-unterzeile > td { border-bottom: 0; }
  .woocommerce-cart-form tr.rmc-mit-unterzeile > td { padding-bottom: 12px; }
  .woocommerce-cart-form tr.rmc-unterzeile > td { padding: 0 0 20px 104px; border-top: 0; text-align: left; vertical-align: top; }
  .rmc.rmc-korb-zeile--breit { margin: 0; }
  .rmc.rmc-korb-zeile--breit .rmc-sb-naechste { grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; gap: 6px 12px; padding: 10px 12px 10px 14px; font-size: 14px; }
  .rmc.rmc-korb-zeile--breit .rmc-sb-naechste .rmc-icon { margin-top: 0; }
  .rmc.rmc-korb-zeile--breit .rmc-sb-naechste .rmc-knopf { grid-column: 3; justify-self: end; margin-top: 0; white-space: nowrap; }
}

.rmc.rmc-korb-tipp {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 6px 10px;
  margin: 16px 0;
  padding: 13px 14px;
  border: 1px solid var(--rmc-linie);
  border-radius: var(--rmc-radius-m);
  background: var(--rmc-beige-2);
  color: var(--rmc-text);
  font-size: 15px;
  line-height: 1.5;
}
.rmc.rmc-korb-tipp .rmc-icon { width: 20px; height: 20px; margin-top: 2px; color: var(--rmc-braun); }
.rmc.rmc-korb-tipp p { margin: 0; }
.rmc.rmc-korb-tipp .rmc-korb-tipp-titel { font-family: var(--rmc-stark); font-size: 16.5px; line-height: 1.35; color: var(--rmc-text); }
.rmc.rmc-korb-tipp .rmc-knopf { grid-column: 2; justify-self: start; }
/* Seiten-Warenkorb: freier Platz direkt beim Produkt */
.rmc.rmc-mini-frei { display: flex; align-items: flex-start; gap: 6px; margin: 6px 0 0; padding: 7px 10px; border: 1px solid var(--rmc-linie); border-radius: 10px; background: var(--rmc-beige-2); color: var(--rmc-text); font-size: 13.5px; line-height: 1.4; text-align: left; }
.rmc.rmc-mini-frei .rmc-icon { flex: 0 0 auto; width: 15px; height: 15px; margin-top: 2px; color: var(--rmc-braun); }
.rmc.rmc-mini-frei strong { color: var(--rmc-text); }

/* Produktseite: Versand und freier Platz unter „In den Warenkorb“ */
.rmc.rmc-versand-hinweis {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 6px 12px;
  margin: 16px 0 4px;
  padding: 14px 16px;
  border: 1px solid var(--rmc-linie);
  border-radius: var(--rmc-radius-m);
  background: var(--rmc-beige-2);
  color: var(--rmc-text);
  font-size: 16px;
  line-height: 1.5;
}
.rmc.rmc-versand-hinweis[hidden] { display: none; }
.rmc.rmc-versand-hinweis > .rmc-icon { width: 22px; height: 22px; margin-top: 2px; color: var(--rmc-braun); }
.rmc.rmc-versand-hinweis p { margin: 0; }
.rmc.rmc-versand-hinweis .rmc-vh-titel { font-family: var(--rmc-stark); color: var(--rmc-text); }
.rmc.rmc-versand-hinweis strong { color: var(--rmc-text); }
.rmc.rmc-versand-hinweis .rmc-vh-knoepfe { grid-column: 2; display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.rmc.rmc-versand-hinweis .rmc-vh-knoepfe:empty { display: none; }
@media (max-width: 480px) {
  .rmc.rmc-versand-hinweis { grid-template-columns: 20px minmax(0, 1fr); padding: 12px 13px; font-size: 15.5px; }
  .rmc.rmc-versand-hinweis .rmc-vh-knoepfe { grid-column: 1 / -1; }
}

/* Zeile „Du sparst durch Mengenrabatt“ unter der Gesamtsumme (Tabelle des Themes): hell grün
   hinterlegt und größer, damit sie nicht übersehen wird (Walter, 14.10.2026) */
tr.rmc-ersparnis th,
tr.rmc-ersparnis td { background: #f2f7e4 !important; color: #4f6a08; font-size: 17px; }
tr.rmc-ersparnis th { padding-left: 12px !important; border-radius: 12px 0 0 12px; }
tr.rmc-ersparnis td { padding-right: 12px !important; border-radius: 0 12px 12px 0; text-align: right; }
tr.rmc-ersparnis td strong { color: #4f6a08; font-size: 19px; font-weight: 700; }

/* ---------------- Seiten-Warenkorb ---------------- */

.rmc.rmc-mini-zeile { margin: 8px 0 0; font-size: 13px; line-height: 1.4; text-align: left; }
.rmc.rmc-mini-zeile .rmc-sb-naechste { grid-template-columns: 16px minmax(0, 1fr); gap: 2px 8px; padding: 8px 10px; border-radius: 12px; font-size: 13px; line-height: 1.4; }
.rmc.rmc-mini-zeile .rmc-sb-naechste .rmc-icon { width: 16px; height: 16px; margin-top: 1px; }
.rmc.rmc-mini-zeile .rmc-knopf--klein { min-height: 32px; margin-top: 5px; padding: 4px 12px; border-radius: 10px; font-size: 13.5px; }

/* „Du sparst … durch Mengenrabatt“ als Zeile im Produkt (Seiten-Warenkorb), „Dann sparst du …“ in der Leiste */
.rmc.rmc-mini-spar { display: flex; align-items: center; justify-content: flex-end; gap: 6px; flex-basis: 100%; width: 100%; margin: 6px 0 0; color: var(--rmc-gruen-text); font-family: var(--rmc-stark); font-size: 14.5px; line-height: 1.3; text-align: left; }
.rmc.rmc-mini-spar .rmc-icon { flex: 0 0 auto; width: 17px; height: 17px; }
.rmc.rmc-mini-spar strong { color: var(--rmc-gruen-text); font-size: 15.5px; }

/* Gutscheinfeld im Seiten-Warenkorb (statt Knopf „Gutschein Code“ mit verstecktem Fenster) */
.widget_shopping_cart_footer:has(.rmc-mini-gutschein) .pls-minicart-action-btns { display: none !important; }
.rmc.rmc-mini-gutschein { margin: 0; padding: 10px 24px 2px; border-top: 1px solid var(--rmc-linie); }
.rmc.rmc-mini-gutschein .rmc-gutschein-kopf { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; }
.rmc.rmc-mini-gutschein .rmc-gutschein-auf { display: inline-flex; flex: 0 1 auto; align-items: center; justify-content: flex-start; gap: 6px; width: auto; min-width: 0; min-height: 32px; margin: 0; padding: 2px 0; text-align: left; white-space: nowrap; border: 0; background: none !important; color: var(--rmc-text) !important; font-family: var(--rmc-stark); font-size: 14.5px; line-height: 1.3; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; cursor: pointer; }
.rmc.rmc-mini-gutschein .rmc-gutschein-auf:hover { color: var(--rmc-gruen-text) !important; }
.rmc.rmc-mini-gutschein .rmc-gutschein-auf .rmc-icon { width: 17px; height: 17px; color: var(--rmc-braun); }
.rmc.rmc-mini-gutschein .rmc-gutschein-auf[aria-expanded="true"] { text-decoration: none; }
.rmc.rmc-mini-gutschein .rmc-gutschein-feld { margin: 6px 0 4px; }
.rmc.rmc-mini-gutschein .rmc-gutschein-notiz { min-height: 0; margin: 0; padding: 2px 0; border: 0; background: none; color: var(--rmc-text-2); font-size: 13px; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.rmc.rmc-mini-gutschein .rmc-gutschein-notiz:hover { color: var(--rmc-text); background: none; }
.rmc.rmc-mini-gutschein .rmc-gutschein-feld input { height: 42px; }
.rmc.rmc-mini-gutschein .rmc-gutschein-feld .rmc-knopf { min-height: 42px; }
.rmc.rmc-mini-gutschein .rmc-gutschein-notiz { flex: 0 0 auto; white-space: nowrap; }
@media (max-width: 480px) {
  .rmc.rmc-mini-gutschein { padding: 8px 16px 2px; }
}
.rmc .rmc-gutschein-feld { display: flex; gap: 8px; }
.rmc .rmc-gutschein-feld input {
  flex: 1 1 auto;
  min-width: 0;
  height: 46px;
  margin: 0;
  padding: 0 12px;
  border: 1.5px solid var(--rmc-feldrand);
  border-radius: 10px;
  background: #fff;
  color: var(--rmc-text);
  font-size: 16px;
}
.rmc .rmc-gutschein-feld input:focus { border-color: var(--rmc-gruen-knopf); outline: 2px solid var(--rmc-gruen-rand); outline-offset: 0; }
.rmc .rmc-gutschein-feld .rmc-knopf { flex: 0 0 auto; min-height: 46px; padding: 0 18px; border-radius: 10px; font-size: 15.5px; }
.rmc .rmc-gutschein-meldung { margin: 6px 0 0; font-size: 14px; line-height: 1.4; color: var(--rmc-gruen-text); }
.rmc .rmc-gutschein-meldung.is-fehler { color: #b32d2e; }

/* Gutschein im Warenkorb und an der Kasse: Feld offen, groß und beschriftet (60+ Kunden) */
body.rmc-gutschein-offen .woocommerce-form-coupon-toggle { display: none !important; }
body.rmc-gutschein-offen form.checkout_coupon {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px 12px;
  margin: 0 0 32px;
  padding: 18px 20px;
  border: 1.5px solid #ebe4dc;
  border-radius: 14px;
  background: #faf7f3;
}
body.rmc-gutschein-offen form.checkout_coupon > p:not(.form-row) { grid-column: 1 / -1; margin: 0; font-size: 17px !important; font-weight: 600; line-height: 1.4; color: #1f1f1f; }
body.rmc-gutschein-offen form.checkout_coupon .form-row { float: none; width: auto; margin: 0; padding: 0; }
body.rmc-gutschein-offen form.checkout_coupon .clear { display: none; }
body.rmc-gutschein-offen form.checkout_coupon input#coupon_code,
body.rmc-gutschein-offen .woocommerce-cart-form .coupon input#coupon_code {
  width: 100%;
  height: 52px;
  padding: 0 14px;
  border: 1.5px solid #8a8f94;
  border-radius: 10px;
  background: #fff;
  color: #1f1f1f;
  font-size: 17px;
}
body.rmc-gutschein-offen form.checkout_coupon button[name="apply_coupon"],
body.rmc-gutschein-offen .woocommerce-cart-form .coupon button[name="apply_coupon"] {
  height: 52px;
  padding: 0 26px;
  border: 0;
  border-radius: 10px;
  background: #5f7d0c;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  line-height: 52px;
}
body.rmc-gutschein-offen form.checkout_coupon button[name="apply_coupon"]:hover,
body.rmc-gutschein-offen .woocommerce-cart-form .coupon button[name="apply_coupon"]:hover { background: #4e690a; color: #fff; }
body.rmc-gutschein-offen .woocommerce-cart-form .coupon {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px 12px;
  width: 100%;
  max-width: 640px;
  float: none;
  padding: 16px 18px;
  border: 1.5px solid #ebe4dc;
  border-radius: 14px;
  background: #faf7f3;
  text-align: left;
}
/* Das Theme legt den Knopf absolut über das Feld: hier daneben */
body.rmc-gutschein-offen .woocommerce-cart-form .coupon button[name="apply_coupon"] { position: static !important; top: auto; right: auto; margin: 0; }
body.rmc-gutschein-offen .woocommerce-cart-form .coupon input#coupon_code { min-width: 0; margin: 0; }
body.rmc-gutschein-offen .woocommerce-cart-form .coupon label[for="coupon_code"] {
  position: static !important;
  grid-column: 1 / -1;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
  clip-path: none;
  color: #1f1f1f;
  font-size: 17px;
  font-weight: 600;
  white-space: normal;
}
@media (max-width: 600px) {
  body.rmc-gutschein-offen form.checkout_coupon,
  body.rmc-gutschein-offen .woocommerce-cart-form .coupon { grid-template-columns: 1fr; padding: 14px; }
  body.rmc-gutschein-offen form.checkout_coupon button[name="apply_coupon"],
  body.rmc-gutschein-offen .woocommerce-cart-form .coupon button[name="apply_coupon"] { width: 100%; }
}

/* Leiste „Noch 3 Stück bis zum Mengenrabatt“ oben im Seiten-Warenkorb */
.rmc.rmc-mini-leiste {
  display: grid;
  gap: 7px;
  margin: 0 0 14px;
  padding: 11px 14px;
  border: 1.5px solid var(--rmc-gruen-rand);
  border-radius: var(--rmc-radius-m);
  background: #fff;
  color: var(--rmc-text);
  font-size: 14.5px;
  line-height: 1.45;
  text-align: left;
}
.rmc .rmc-ml-titel { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 15.5px; line-height: 1.3; }
.rmc .rmc-ml-titel .rmc-icon { flex: 0 0 auto; width: 20px; height: 20px; color: var(--rmc-gruen-text); }
.rmc .rmc-ml-titel strong { color: var(--rmc-text); }
.rmc .rmc-ml-balken { display: block; height: 8px; overflow: hidden; border-radius: 999px; background: var(--rmc-linie); }
.rmc .rmc-ml-balken > span { display: block; height: 100%; border-radius: 999px; background: var(--rmc-gruen); }
.rmc .rmc-ml-text { margin: 0; color: var(--rmc-text-2); }
.rmc .rmc-ml-text strong { color: var(--rmc-text); }
.rmc .rmc-ml-unten { display: flex; align-items: center; gap: 12px; }
.rmc .rmc-ml-unten .rmc-ml-text { flex: 1 1 auto; min-width: 0; }
.rmc.rmc-mini-leiste .rmc-knopf--klein { flex: 0 0 auto; min-height: 40px; padding: 6px 14px; border-radius: 12px; font-size: 14.5px; white-space: nowrap; }
@media (max-width: 480px) {
  .rmc.rmc-mini-leiste { padding: 10px 12px; }
  .rmc .rmc-ml-titel { font-size: 15px; }
  .rmc .rmc-ml-unten { gap: 10px; }
  .rmc.rmc-mini-leiste .rmc-knopf--klein { min-height: 38px; padding: 5px 11px; font-size: 14px; }
  .rmc .rmc-ml-unten { flex-wrap: wrap; gap: 8px; }
  .rmc .rmc-ml-unten .rmc-ml-text { flex: 1 1 100%; }
  .rmc.rmc-mini-leiste .rmc-ml-unten .rmc-knopf--klein { flex: 1 1 100%; }
}
.rmc.rmc-mini-leiste--fertig .rmc-ml-titel strong { color: var(--rmc-gruen-text); }
li.rmc-mini-leiste-eintrag { margin: 0; padding: 0; border: 0; list-style: none; }
/* Anvogue: über der Liste, bündig mit den Produkten (die Liste hat 24 px Innenabstand) */
.widget_shopping_cart_content > .rmc.rmc-mini-leiste { margin: 4px 24px 14px; }

/* Seiten-Warenkorb über den Summen: Karton-Anzeige. Oben ein Satz, darunter links „7 Kartons“ mit
   Paket-Symbol, rechts der letzte Karton als Reihe von Feldern (Palette: Balken). Keine Einblend-
   Animation (der Warenkorb wird bei jeder Änderung neu geladen, das Einblenden sprang jedes Mal
   zurück); rmc-korb.js lässt die Felder von der alten zur neuen Füllung wechseln. */
.rmc.rmc-mini-platz {
  display: grid;
  gap: 8px;
  margin: 8px 24px 4px;
  padding: 10px 12px;
  border: 1px solid var(--rmc-linie);
  border-radius: 12px;
  background: var(--rmc-beige-2);
  color: var(--rmc-text);
  font-size: 14.5px;
  line-height: 1.3;
  text-align: left;
}
.rmc .rmc-mp-titel { margin: 0; font-family: var(--rmc-stark); color: var(--rmc-text); }
.rmc .rmc-mp-titel strong { color: var(--rmc-gruen-text); }
.rmc.rmc-mini-platz.is-voll .rmc-mp-titel { color: var(--rmc-text-2); }
.rmc .rmc-mp-zeile { display: flex; align-items: center; gap: 14px; padding-top: 8px; border-top: 1px solid var(--rmc-linie); }
.rmc .rmc-mp-links { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.rmc .rmc-mp-icon { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid var(--rmc-linie); border-radius: 10px; background: #fff; color: var(--rmc-braun); }
.rmc .rmc-mp-icon .rmc-icon { width: 22px; height: 22px; }
.rmc .rmc-mp-text { display: grid; gap: 1px; }
.rmc .rmc-mp-text strong { color: var(--rmc-text); font-size: 15.5px; line-height: 1.2; white-space: nowrap; }
.rmc .rmc-mp-text small { color: var(--rmc-text-2); font-size: 12.5px; line-height: 1.2; white-space: nowrap; }
.rmc .rmc-mp-rechts { display: grid; flex: 1 1 auto; gap: 4px; min-width: 0; }
.rmc .rmc-mp-label { color: var(--rmc-text-2); font-size: 12.5px; line-height: 1.2; }
.rmc .rmc-mp-stand { color: var(--rmc-text); font-size: 12.5px; line-height: 1.2; }
.rmc .rmc-mp-felder { display: flex; gap: 3px; min-width: 0; }
.rmc .rmc-mp-felder > span { flex: 1 1 0; height: 12px; border: 1.5px solid var(--rmc-gruen-knopf); border-radius: 3px; background: var(--rmc-gruen-hell); transition: background-color .35s ease, border-color .35s ease; }
.rmc .rmc-mp-felder > .is-voll { border-color: var(--rmc-braun); background: var(--rmc-braun); }
.rmc .rmc-mp-felder > .is-frei { border-style: dashed; }
.rmc .rmc-mp-balken { display: block; height: 12px; overflow: hidden; border: 1.5px dashed var(--rmc-gruen-knopf); border-radius: 999px; background: var(--rmc-gruen-hell); }
.rmc .rmc-mp-balken > span { display: block; height: 100%; background: var(--rmc-braun); transition: width .5s ease; }
.rmc .rmc-ml-balken > span { transition: width .5s ease; }
@media (prefers-reduced-motion: reduce) {
  .rmc .rmc-mp-felder > span,
  .rmc .rmc-mp-balken > span,
  .rmc .rmc-ml-balken > span { transition: none; }
}
@media (max-width: 480px) {
  .rmc.rmc-mini-platz { margin: 6px 16px 2px; padding: 9px 10px; font-size: 14px; }
  .rmc .rmc-mp-zeile { gap: 10px; }
  .rmc .rmc-mp-icon { width: 32px; height: 32px; }
}

/* Knopf der Leiste: Hauptzeile und darunter die Ersparnis */
.rmc.rmc-mini-leiste .rmc-knopf--klein { flex-direction: column; gap: 1px; }
.rmc .rmc-kn-haupt { display: block; line-height: 1.2; }
.rmc .rmc-kn-sub { display: block; font-family: inherit; font-size: 12.5px; line-height: 1.2; opacity: .92; }

/* Summen im Seiten-Warenkorb: „(•) Standard Österreich: 135,20 €“ bleibt in einer Zeile, egal wie lang
   der Preis ist (Marcel 15.10.: bei längeren Preisen brach der Preis um, dann sprang der Punkt über
   den Text und die Anzeige hüpfte). In der Tabelle des Themes ist die linke Spalte so breit wie
   „Zwischensumme“ und ließ rechts zu wenig Platz. Darum: jede Zeile eine Flex-Zeile, bei der
   Versandzeile steht das Wort „Versand“ nur für Screenreader da (die Optionen sagen es selbst),
   die Optionen bekommen die ganze Breite, Punkt und Text stehen immer nebeneinander. */
.pls-minicart-cart-totals table.minicart_table,
.pls-minicart-cart-totals table.minicart_table > tbody { display: block; width: 100%; }
.pls-minicart-cart-totals table.minicart_table tr { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; position: relative; width: 100%; }
.pls-minicart-cart-totals table.minicart_table tr > th { display: block; flex: 0 0 auto; width: auto; white-space: nowrap; }
.pls-minicart-cart-totals table.minicart_table tr > td { display: block; flex: 1 1 auto; min-width: 0; width: auto; }
.pls-minicart-cart-totals tr:has(ul.woocommerce-shipping-methods) > th { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.pls-minicart-cart-totals tr:has(ul.woocommerce-shipping-methods) > td { flex: 1 1 100%; padding-left: 0; }
.pls-minicart-cart-totals ul.woocommerce-shipping-methods li { display: flex; align-items: flex-start; justify-content: flex-end; gap: 8px; }
.pls-minicart-cart-totals ul.woocommerce-shipping-methods li > input { flex: 0 0 auto; margin: 3px 0 0; }
.pls-minicart-cart-totals ul.woocommerce-shipping-methods li > label { flex: 0 1 auto; margin: 0; text-align: right; white-space: nowrap; }

/* Produktseite: Link „Lieferpreise ansehen“ neben „Lieferung & Rückgabe“ und „Eine Frage stellen“ */
a.rmc.rmc-lieferpreise-link { display: inline-flex; align-items: center; gap: 8px; margin: 8px 0; color: #1f1f1f; font-size: 14px; line-height: 24.5px; text-decoration: none; cursor: pointer; }
a.rmc.rmc-lieferpreise-link .rmc-icon { width: 19px; height: 19px; color: #1f1f1f; }
a.rmc.rmc-lieferpreise-link:hover,
a.rmc.rmc-lieferpreise-link:hover .rmc-icon { color: var(--rmc-gruen-text); }
a.rmc.rmc-lieferpreise-link:hover span { text-decoration: underline; text-underline-offset: 3px; }
.pls-deliver-return-ask-questions:has(.rmc-lieferpreise-link) { flex-wrap: wrap; column-gap: .55em; row-gap: 6px; }
.pls-deliver-return-ask-questions:has(.rmc-lieferpreise-link) > * { flex-shrink: 0; margin-right: 0 !important; }
.pls-deliver-return-ask-questions > a.rmc.rmc-lieferpreise-link { gap: 7px; margin: 0; font-size: inherit; font-weight: inherit; line-height: inherit; white-space: nowrap; }
.pls-deliver-return-ask-questions > a.rmc.rmc-lieferpreise-link .rmc-icon { width: 1.05em; height: 1.05em; }

/* „8 Stück pro Karton“ je Produkt im Seiten-Warenkorb */
.rmc.rmc-mini-karton { display: flex; flex-basis: 100%; align-items: center; gap: 6px; width: 100%; margin: 6px 0 0; color: var(--rmc-text-2); font-size: 13.5px; line-height: 1.35; text-align: left; }
.rmc.rmc-mini-karton .rmc-icon { flex: 0 0 auto; width: 16px; height: 16px; color: var(--rmc-braun); }

/* Etikett „Bestseller“ des Themes (WooCommerce „Empfohlen“): dunkle Schrift auf Gelb, Weiß wäre kaum lesbar */
.pls-product-labels span.featured { color: #1f1f1f; }

/* Handy: zugeklappte Box „Preis nach Menge“ schmaler (Marcel 15.10.: oben und unten zu viel Abstand) */
@media (max-width: 600px) {
  .rmc .rmc-sb-klapp > summary.rmc-sb-kopf { grid-template-columns: 20px minmax(0, 1fr) 20px; gap: 8px; min-height: 0; padding: 9px 12px; }
  .rmc .rmc-sb-kopf > .rmc-icon:first-child,
  .rmc .rmc-sb-kopf > .rmc-icon:last-child { width: 20px; height: 20px; }
  .rmc .rmc-sb-kopf .rmc-sb-titel { font-size: 17px; line-height: 1.2; }
  .rmc .rmc-sb-kopf-unter { margin-top: 1px; font-size: 12.5px; line-height: 1.25; }
  .rmc .rmc-sb-klapp-inhalt { padding: 2px 14px 14px; }
}

@media (max-width: 420px) {
  .rmc.rmc-staffelbox { padding: 16px 14px; }
  .rmc .rmc-sb-zeile { padding: 10px 14px 10px 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .rmc .rmc-sb-zeile,
  .rmc .rmc-sb-versand > summary > .rmc-icon:last-child,
  .rmc .rmc-sb-kopf > .rmc-icon:last-child,
  .rmc .rmc-sb-klapp > summary { transition: none; }
}

/* Etikett „Bestseller“ über dem Produktnamen */
.rmc.rmc-marke { margin: 0 0 10px; line-height: 1; }

/* Lagerstand kompakt über dem Mengenfeld */
.rmc.rmc-lager { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; color: var(--rmc-gruen-text); font-size: 16px; line-height: 1.4; }
.rmc.rmc-lager .rmc-icon { flex: 0 0 auto; width: 20px; height: 20px; }
.rmc.rmc-lager strong { color: inherit; }
.rmc.rmc-lager--wenig { color: var(--rmc-braun); }

/* Seiten-Warenkorb „Passend dazu“: Knöpfe klein und hell, damit „Kasse“ der eine Hauptknopf bleibt */
.pls-minicart-cross-sells .pls-product-actions .button,
.pls-minicart-cross-sells .pls-product-actions a.button,
.pls-minicart-cross-sells .pls-product-actions button {
  width: auto !important;
  min-height: 40px !important;
  height: auto !important;
  padding: 7px 16px !important;
  border: 1.5px solid #5f7d0c !important;
  background: #fff !important;
  color: #4f6a08 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
}
.pls-minicart-cross-sells .pls-product-actions .button:hover,
.pls-minicart-cross-sells .pls-product-actions a.button:hover { background: #faf7f3 !important; color: #4f6a08 !important; }
