/* =========================================================================
   Dreamz TCG — WooCommerce Overrides
   ========================================================================= */

/* =========================================================================
   Card v1.5.12 — GO WITH THE GRID
   Storefront erzwingt display:grid mit 2 Spalten auf .product mit !important
   (nicht schlagbar). Wir akzeptieren das und lassen unsere Kinder
   BEIDE Spalten überspannen via grid-column: 1 / -1.
   ========================================================================= */
html body.dreamz-theme .dreamz-card,
html body.dreamz-theme .dreamz-card.product,
html body.dreamz-theme li.product.dreamz-card,
html body.dreamz-theme div.dreamz-card,
html body.dreamz-theme .woocommerce ul.products li.product.dreamz-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  padding: 0 !important;
  margin: 0 !important;
  /* Falls doch nicht grid: schadet nicht */
  gap: 0 !important;
  /* Kein Auf-Höhe-Strecken innerhalb der Grid-Zeile: */
  align-self: start !important;
  /* v1.5.32: Grid komplett auflösen — Card wird flex-column.
     Kein explizites grid-template-rows mehr → keine reservierte Höhe. */
  grid-template-rows: none !important;
  grid-template-columns: none !important;
  grid-auto-rows: max-content !important;
  height: auto !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}
/* JEDES direkte Kind der Card auf beide Spalten strecken */
html body.dreamz-theme .dreamz-card > *,
html body.dreamz-theme div.dreamz-card > *,
html body.dreamz-theme li.product.dreamz-card > * {
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
/* Link-Wrapper: klickbare Fläche über Media + Body */
html body.dreamz-theme .dreamz-card .dreamz-card__link,
html body.dreamz-theme div.dreamz-card > a.dreamz-card__link {
  display: block !important;
  width: 100% !important;
  color: var(--fg-1) !important;
  text-decoration: none !important;
}
/* Media = Block, volle Card-Breite, quadratisch */
html body.dreamz-theme .dreamz-card .dreamz-card__media {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  position: relative !important;
  overflow: hidden !important;
  background: var(--ink-800) !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* Bild deckt Media komplett ab */
html body.dreamz-theme .dreamz-card .dreamz-card__media img,
html body.dreamz-theme .dreamz-card img.dreamz-card__img,
html body.dreamz-theme .dreamz-card img.wp-post-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  aspect-ratio: auto !important;
}
/* Body = Block, unter Media (Padding: kompakt für Home-Cards, Button-Platz reserviert) */
html body.dreamz-theme .dreamz-card .dreamz-card__body {
  display: block !important;
  width: 100% !important;
  padding: 12px 14px 8px !important;
  margin: 0 !important;
  position: relative !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__title {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 0 4px !important;
  min-height: 0 !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__price {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  gap: 6px !important;
  margin: 0 !important;
}
/* -------------------------------------------------------------------------
   v1.5.13 — Neues Card-Action-Layout:
   Wishlist = Heart oben rechts überm Bild (Overlay).
   Add-to-Cart = großer Türkis-Button unter dem Body, volle Breite.
   ------------------------------------------------------------------------- */

/* WISHLIST — schwebt oben rechts überm Bild */
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 4 !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(15, 15, 20, 0.72) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 999px !important;
  color: #f7f7f7 !important;
  cursor: pointer !important;
  font-size: 0 !important;
  line-height: 1 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35) !important;
  transition: all 180ms ease-out !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist svg,
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist .dreamz-svg {
  width: 16px !important;
  height: 16px !important;
  display: block !important;
  stroke: currentColor !important;
  fill: none !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist:hover,
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist:focus-visible {
  background: var(--brand-turquoise) !important;
  color: #0d0d10 !important;
  border-color: var(--brand-turquoise) !important;
  transform: scale(1.06) !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist.is-active,
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist.added {
  background: var(--brand-turquoise) !important;
  color: #0d0d10 !important;
  border-color: var(--brand-turquoise) !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist.is-active svg,
html body.dreamz-theme .dreamz-card .dreamz-card__wishlist.added svg {
  fill: currentColor !important;
}

/* ADD-TO-CART Button — volle Breite unter dem Body */
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn {
  grid-column: 1 / -1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: calc(100% - 28px) !important;
  margin: 4px 14px 12px !important;
  padding: 10px 14px !important;
  min-height: 40px !important;
  background: var(--brand-turquoise) !important;
  color: #0d0d10 !important;
  border: 1px solid var(--brand-turquoise) !important;
  border-radius: 8px !important;
  font-family: var(--font-body, system-ui) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: 0 2px 10px rgba(20, 196, 182, 0.22) !important;
  transition: all 180ms ease-out !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn:hover,
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn:focus-visible {
  background: #17d8c8 !important;
  border-color: #17d8c8 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 16px rgba(20, 196, 182, 0.35) !important;
  color: #0d0d10 !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn:active {
  transform: translateY(0) !important;
  box-shadow: 0 1px 4px rgba(20, 196, 182, 0.25) !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn svg,
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn .dreamz-svg {
  width: 16px !important;
  height: 16px !important;
  display: block !important;
  stroke: currentColor !important;
  fill: none !important;
  flex-shrink: 0 !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn.loading {
  opacity: 0.7 !important;
  pointer-events: none !important;
}
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn.added {
  background: transparent !important;
  color: var(--brand-turquoise) !important;
  border-color: var(--brand-turquoise) !important;
  box-shadow: none !important;
}
/* WooCommerce zeigt nach add_to_cart ein "Anzeigen"-Link — verstecken */
html body.dreamz-theme .dreamz-card .added_to_cart {
  display: none !important;
}

/* (Card-Layout siehe Card-Block oben. Kompakter Button-Margin ist bereits in der Haupt-Regel oben.) */

/* Page container — kill Storefront's woo layout constraints */
body.dreamz-theme.woocommerce,
body.dreamz-theme.woocommerce-page,
body.dreamz-theme.woocommerce-account,
body.dreamz-theme.woocommerce-cart,
body.dreamz-theme.woocommerce-checkout {
  background: var(--bg-canvas) !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.dreamz-theme.woocommerce .site,
body.dreamz-theme.woocommerce-page .site,
body.dreamz-theme.woocommerce .site-content,
body.dreamz-theme.woocommerce-page .site-content,
body.dreamz-theme.woocommerce #content,
body.dreamz-theme.woocommerce-page #content {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.dreamz-theme .woocommerce-breadcrumb {
  color: var(--fg-3);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin: 24px 0;
}
body.dreamz-theme .woocommerce-breadcrumb a { color: var(--brand-turquoise); }
body.dreamz-theme .woocommerce-breadcrumb .breadcrumb-separator { color: var(--brand-turquoise); margin: 0 8px; }

/* Category header — Farbe & Beschreibung
   (Layout des Headers steht weiter unten mit flex-Zeile) */
body.dreamz-theme .term-description { color: var(--fg-2); }

/* Shop-Toolbar (Sortierung + Ergebnisanzahl)
   v1.5.40: "Einzelnes Ergebnis wird angezeigt" / "12 Ergebnisse..." komplett aus. */
body.dreamz-theme .woocommerce-notices-wrapper + .woocommerce-result-count,
body.dreamz-theme .woocommerce-result-count,
body.dreamz-theme p.woocommerce-result-count {
  display: none !important;
}
body.dreamz-theme .woocommerce-ordering {
  float: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
}
body.dreamz-theme .woocommerce-ordering select,
body.dreamz-theme .orderby {
  height: 40px !important;
  padding: 0 32px 0 16px !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a8' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  transition: border-color var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .woocommerce-ordering select:hover,
body.dreamz-theme .woocommerce-ordering select:focus {
  border-color: var(--brand-turquoise) !important;
  outline: none !important;
}
/* Kategorie-Header: Titel + Toolbar in gemeinsamer Zeile */
body.dreamz-theme .woocommerce-products-header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: 40px 0 20px !important;
  margin-bottom: 20px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  flex-wrap: wrap !important;
}
body.dreamz-theme .woocommerce-products-header__title {
  font-family: var(--font-display) !important;
  font-size: clamp(28px, 3.5vw, 44px) !important;
  font-weight: 800 !important;
  color: var(--fg-1) !important;
  margin: 0 !important;
  letter-spacing: -0.02em !important;
}
/* Toolbar-Zeile über der Grid */
body.dreamz-theme .woocommerce-notices-wrapper + p.woocommerce-result-count,
body.dreamz-theme .woocommerce > .woocommerce-result-count {
  display: none !important;   /* falls doppelt gerendert */
}
/* v1.5.42 — Storefront wrappt Sortierung in .storefront-sorting.
   Die Klasse gibt es OBEN (vor Grid) UND UNTEN (nach Grid).
   Wir geben beiden Wrapper-Instanzen sauberen Abstand zur Grid. */
body.dreamz-theme .storefront-sorting {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 0 40px !important;   /* Abstand nach unten zur Grid */
}
/* Zweite (untere) Instanz — Abstand nach oben zur Grid */
body.dreamz-theme ul.products + .storefront-sorting,
body.dreamz-theme .storefront-sorting + .storefront-sorting {
  margin: 40px 0 0 !important;
}
/* Falls die alte Direct-Child-Variante doch mal auftritt (fallback) */
body.dreamz-theme.woocommerce-shop main .woocommerce > form.woocommerce-ordering,
body.dreamz-theme.tax-product_cat main .woocommerce > form.woocommerce-ordering,
body.dreamz-theme.archive main .woocommerce > form.woocommerce-ordering {
  display: flex !important;
  justify-content: flex-end !important;
  margin-bottom: 40px !important;
}
/* Grid bekommt zusätzlichen Top-Abstand als Sicherheit */
body.dreamz-theme main .woocommerce ul.products {
  margin-top: 8px !important;
}
/* Sortier-Form innerhalb .storefront-sorting nimmt volle Breite ein */
body.dreamz-theme .storefront-sorting form.woocommerce-ordering {
  margin: 0 !important;
}

/* Product grid — Standard bis zu 4 Spalten (Homepage-Bestseller etc.)
   auto-fill + minmax: bei WENIGEN Items entstehen KEINE aufgeblasenen leeren Zellen.
   Karten behalten ihre natürliche Breite, überschüssige Zeilen-Fläche bleibt frei rechts. */
body.dreamz-theme ul.products,
body.dreamz-theme .woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 24px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 48px !important;
  width: 100% !important;
  justify-content: start !important;
}
/* KATEGORIE-Seiten (Shop, Produktkategorien) — kompakter, 5 Spalten */
body.dreamz-theme.woocommerce-shop ul.products,
body.dreamz-theme.tax-product_cat ul.products,
body.dreamz-theme.archive.woocommerce ul.products {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
/* Kompakte Cards auf Kategorie-Seiten */
body.dreamz-theme.woocommerce-shop .dreamz-card,
body.dreamz-theme.tax-product_cat .dreamz-card,
body.dreamz-theme.archive.woocommerce .dreamz-card {
  border-radius: var(--radius-md) !important;
}
body.dreamz-theme.woocommerce-shop .dreamz-card__media,
body.dreamz-theme.tax-product_cat .dreamz-card__media,
body.dreamz-theme.archive.woocommerce .dreamz-card__media {
  padding: 12px !important;
  aspect-ratio: 1 !important;
}
body.dreamz-theme.woocommerce-shop .dreamz-card__body,
body.dreamz-theme.tax-product_cat .dreamz-card__body,
body.dreamz-theme.archive.woocommerce .dreamz-card__body {
  padding: 12px !important;
}
body.dreamz-theme.woocommerce-shop .dreamz-card__title,
body.dreamz-theme.tax-product_cat .dreamz-card__title,
body.dreamz-theme.archive.woocommerce .dreamz-card__title {
  font-size: 13px !important;
  line-height: 1.25 !important;
  min-height: 32px !important;
}
body.dreamz-theme.woocommerce-shop .dreamz-card__price,
body.dreamz-theme.woocommerce-shop .dreamz-card .price,
body.dreamz-theme.tax-product_cat .dreamz-card__price,
body.dreamz-theme.tax-product_cat .dreamz-card .price,
body.dreamz-theme.archive.woocommerce .dreamz-card__price,
body.dreamz-theme.archive.woocommerce .dreamz-card .price {
  font-size: 15px !important;
}

/* Responsive für alle Produkt-Grids */
/* Kategorie-/Shop-Seiten: enger, mehr Spalten (viele Produkte da → volles Grid ok) */
@media (max-width: 1399px) {
  body.dreamz-theme.woocommerce-shop ul.products,
  body.dreamz-theme.tax-product_cat ul.products,
  body.dreamz-theme.archive.woocommerce ul.products {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  body.dreamz-theme ul.products {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
    gap: 12px !important;
  }
}
@media (max-width: 400px) {
  body.dreamz-theme ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
body.dreamz-theme ul.products li.product,
body.dreamz-theme .woocommerce ul.products li.product {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  float: none !important;
  clear: none !important;
  padding: 0 !important;
  list-style: none !important;
}
/* Kill Storefronts wpc-x column classes (falls die reinschmuggeln) */
body.dreamz-theme ul.products li.product.first,
body.dreamz-theme ul.products li.product.last {
  clear: none !important;
}

/* =========================================================================
   Product Card — Ergänzungen (Hover, Badges, Preise, Placeholder)
   Layout-Regeln liegen im v1.5.13-Block ganz oben.
   ========================================================================= */

/* Card visuell (Border + Hover-Effekt) */
.dreamz-card {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
.dreamz-card:hover {
  border-color: var(--border-accent-dim) !important;
  box-shadow: var(--shadow-glow) !important;
  transform: translateY(-2px) !important;
}
.dreamz-card:hover .dreamz-card__img,
.dreamz-card:hover .dreamz-card__media img {
  transform: scale(1.05) !important;
}

/* Placeholder wenn kein Produktbild */
.dreamz-card__placeholder {
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  opacity: 0.15;
}
.dreamz-card__placeholder img { width: 40%; height: auto; }

/* Preis-Formatierung (Sale-Sonderpreis / Streichpreis) */
.dreamz-card__price {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: 18px !important;
  color: var(--brand-turquoise) !important;
  line-height: 1.2 !important;
}
.dreamz-card__price .woocommerce-Price-amount { color: var(--brand-turquoise) !important; }
.dreamz-card__price ins {
  background: transparent !important;
  text-decoration: none !important;
  color: var(--brand-turquoise) !important;
}
.dreamz-card__price del {
  color: var(--fg-3) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  font-family: var(--font-body) !important;
  text-decoration: line-through !important;
  opacity: 1 !important;
}
.dreamz-card__price del .amount { color: var(--fg-3) !important; }

/* Titel: Größe + Zeilen-Clamp */
.dreamz-card__title {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--fg-1) !important;
  line-height: 1.35 !important;
}

/* Badges (Sale, Low-Stock, Rarity) — oben links im Bild */
.dreamz-badge {
  display: inline-flex; align-items: center;
  height: 22px; padding: 0 10px;
  border-radius: var(--radius-pill);
  font-family: var(--font-body);
  font-size: 10px; font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  position: absolute;
  top: 10px; left: 10px;
  z-index: 3;
}
.dreamz-badge--sale { background: var(--semantic-danger); color: white; }
.dreamz-badge--low  { background: var(--semantic-warning); color: var(--ink-void); }

/* Rarity-Badges (Common → Secret Rare) */
.dreamz-rarity--common   { background: rgba(184,184,184,0.16); color: var(--rarity-common); border: 1px solid rgba(184,184,184,0.3); }
.dreamz-rarity--uncommon { background: rgba(88,184,255,0.16); color: var(--rarity-uncommon); border: 1px solid rgba(88,184,255,0.3); }
.dreamz-rarity--rare     { background: rgba(165,102,255,0.16); color: var(--rarity-rare); border: 1px solid rgba(165,102,255,0.3); }
.dreamz-rarity--mythic   { background: rgba(255,138,61,0.16); color: var(--rarity-mythic); border: 1px solid rgba(255,138,61,0.3); }
.dreamz-rarity--secret   { background: rgba(0,209,194,0.16); color: var(--rarity-secret); border: 1px solid rgba(0,209,194,0.3); box-shadow: var(--shadow-glow); }

/* WooCommerce's automatischer "Anzeigen"-Link nach add_to_cart ausblenden */
body.dreamz-theme .woocommerce a.added_to_cart { display: none !important; }

/* =========================================================================
   Single Product Page — 2-Spalten Layout (Gallery links, Summary rechts)
   ========================================================================= */

/* Kompletter Wrapper der Single-Product-Seite */
body.dreamz-theme.single-product #primary,
body.dreamz-theme.single-product #main,
body.dreamz-theme.single-product .site-main,
body.dreamz-theme.single-product .content-area {
  max-width: var(--container-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 24px var(--gutter) 80px !important;
  box-sizing: border-box !important;
}

/* Product-Container: Grid */
body.dreamz-theme.single-product div.product,
body.dreamz-theme.single-product .product.type-product,
body.dreamz-theme .woocommerce div.product {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) !important;
  gap: 56px !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: start !important;
  position: relative !important;
}
@media (max-width: 991px) {
  body.dreamz-theme.single-product div.product,
  body.dreamz-theme.single-product .product.type-product {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
}

/* Gallery (linke Spalte) — statisch (nicht sticky), Bild bleibt fest */
body.dreamz-theme div.product .woocommerce-product-gallery {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  opacity: 1 !important;
  position: static !important;   /* NICHT sticky — Bild bleibt fest */
  top: auto !important;
  align-self: start !important;
}
/* Kill den WooCommerce-Zoom-Highlight-Kasten der beim Hover erscheint */
body.dreamz-theme .zoomImg,
body.dreamz-theme .zoomWindow,
body.dreamz-theme .zoomWindowContainer,
body.dreamz-theme .zoomContainer,
body.dreamz-theme .zoomLens {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
/* Bilder sollen sich beim Hover NICHT bewegen */
body.dreamz-theme div.product .woocommerce-product-gallery__image img,
body.dreamz-theme div.product .woocommerce-product-gallery img {
  transform: none !important;
  transition: none !important;
  cursor: default !important;
}

/* KRITISCH: Flexslider setzt Inline-Style position:absolute + top/left beim Scrollen — überschreiben */
body.dreamz-theme div.product .woocommerce-product-gallery__wrapper,
body.dreamz-theme div.product .flex-viewport,
body.dreamz-theme div.product .flexslider {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  height: auto !important;
  overflow: visible !important;
}
body.dreamz-theme div.product .woocommerce-product-gallery__image,
body.dreamz-theme div.product .woocommerce-product-gallery__image--placeholder,
body.dreamz-theme div.product .woocommerce-product-gallery__image a {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  float: none !important;
  width: 100% !important;
}
/* Flexslider-Kontrollen (Nav-Dots/Pfeile) ausblenden — nicht relevant bei 1 Bild */
body.dreamz-theme .flex-control-nav,
body.dreamz-theme .flex-direction-nav {
  display: none !important;
}
/* Nur der Zoom-Trigger (Lupe) darf clickbar sein */
body.dreamz-theme div.product .woocommerce-product-gallery__trigger {
  cursor: pointer !important;
}
body.dreamz-theme div.product .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
  padding: 0 !important;
}
body.dreamz-theme div.product .woocommerce-product-gallery__image {
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  background: var(--ink-800) !important;
  border: 1px solid var(--border-default) !important;
  aspect-ratio: 1 / 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.dreamz-theme div.product .woocommerce-product-gallery__image a,
body.dreamz-theme div.product .woocommerce-product-gallery__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 12px 24px 24px !important;   /* weniger oben — Bild rückt hoch */
  box-sizing: border-box !important;
}
/* Zoom-Trigger (Lupe) unten rechts AUF dem Bild positionieren */
body.dreamz-theme div.product .woocommerce-product-gallery,
body.dreamz-theme div.product .woocommerce-product-gallery__wrapper,
body.dreamz-theme div.product .woocommerce-product-gallery__image {
  position: relative !important;   /* Anker für absoluten Trigger */
}
body.dreamz-theme div.product .woocommerce-product-gallery__trigger {
  position: absolute !important;
  top: auto !important;
  bottom: 16px !important;
  right: 16px !important;
  left: auto !important;
  background: rgba(11,11,13,0.7) !important;
  color: var(--fg-1) !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 1px solid var(--border-default) !important;
  z-index: 10 !important;
  cursor: pointer !important;
  text-indent: -9999px !important;   /* "🔍" Text-Emoji verstecken, nur Icon */
  overflow: hidden !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
/* SVG-Lupe als Background rendern (WooCommerce hat keinen eigenen Icon) */
body.dreamz-theme div.product .woocommerce-product-gallery__trigger::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23f7f7f7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 18px 18px !important;
  pointer-events: none !important;
}
body.dreamz-theme div.product .woocommerce-product-gallery__trigger:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%230d0d10' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") !important;
}
body.dreamz-theme div.product .woocommerce-product-gallery__trigger:hover {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border-color: var(--brand-turquoise) !important;
}

/* Summary (rechte Spalte) */
body.dreamz-theme div.product .entry-summary,
body.dreamz-theme div.product .summary {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

/* "Angebot"-Badge (Sale) — oben-links auf Gallery statt frei rumfliegen */
body.dreamz-theme div.product span.onsale {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  z-index: 5 !important;
  background: var(--semantic-danger) !important;
  color: white !important;
  min-height: 0 !important;
  min-width: 0 !important;
  padding: 4px 12px !important;
  border-radius: var(--radius-pill) !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

/* Rarity-Badge (unser Custom-Badge) über dem Titel platzieren */
body.dreamz-theme div.product .dreamz-badge--rarity {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  margin-bottom: 12px !important;
}

/* Titel */
body.dreamz-theme div.product .product_title {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: clamp(24px, 3vw, 32px) !important;
  color: var(--fg-1) !important;
  letter-spacing: -0.015em !important;
  line-height: 1.15 !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
}

/* Preis */
body.dreamz-theme div.product p.price,
body.dreamz-theme div.product span.price,
body.dreamz-theme div.product .price {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: 36px !important;
  color: var(--brand-turquoise) !important;
  line-height: 1.1 !important;
  margin: 0 0 16px !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
body.dreamz-theme div.product p.price del,
body.dreamz-theme div.product span.price del {
  color: var(--fg-3) !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  text-decoration: line-through !important;
  opacity: 1 !important;
  order: 2 !important;
}
body.dreamz-theme div.product p.price ins,
body.dreamz-theme div.product span.price ins {
  background: transparent !important;
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
  order: 1 !important;
}
body.dreamz-theme div.product p.price small,
body.dreamz-theme div.product span.price small {
  color: var(--fg-3) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  order: 3 !important;
  flex-basis: 100% !important;
}

/* Stock-Indikator (unser custom .dreamz-stock) */
body.dreamz-theme div.product .dreamz-stock {
  margin: 0 0 24px !important;
}

/* Standard-Woo Stock-Message */
body.dreamz-theme div.product .stock {
  color: var(--fg-2) !important;
  font-size: 13px !important;
  margin: 0 0 16px !important;
}
body.dreamz-theme div.product .stock.in-stock { color: var(--semantic-success) !important; }
body.dreamz-theme div.product .stock.out-of-stock { color: var(--semantic-danger) !important; }

/* Short description */
body.dreamz-theme div.product .woocommerce-product-details__short-description {
  color: var(--fg-2) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  margin: 0 0 24px !important;
  padding: 0 0 24px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme div.product .woocommerce-product-details__short-description p:last-child {
  margin-bottom: 0 !important;
}

/* Add-to-Cart Formular */
body.dreamz-theme div.product form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  flex-wrap: wrap !important;
}
body.dreamz-theme div.product form.cart .quantity {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  overflow: hidden !important;
  background: var(--ink-800) !important;
  margin: 0 !important;
  height: 52px !important;
}
body.dreamz-theme div.product form.cart .quantity input {
  width: 64px !important;
  height: 52px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-1) !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
  padding: 0 !important;
  -moz-appearance: textfield;
}
body.dreamz-theme div.product form.cart .quantity input::-webkit-outer-spin-button,
body.dreamz-theme div.product form.cart .quantity input::-webkit-inner-spin-button {
  -webkit-appearance: none; margin: 0;
}
body.dreamz-theme div.product form.cart button.single_add_to_cart_button {
  flex: 1 !important;
  min-width: 220px !important;
  height: 52px !important;
  padding: 0 32px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  text-shadow: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.dreamz-theme div.product form.cart button.single_add_to_cart_button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Meta (SKU, Kategorien, Tags) */
body.dreamz-theme div.product .product_meta {
  padding: 20px 0 0 !important;
  border-top: 1px solid var(--border-hairline) !important;
  font-size: 12px !important;
  color: var(--fg-3) !important;
  line-height: 1.9 !important;
}
body.dreamz-theme div.product .product_meta > span {
  display: block !important;
  margin: 0 !important;
  color: var(--fg-3) !important;
}
body.dreamz-theme div.product .product_meta a {
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
}
body.dreamz-theme div.product .product_meta a:hover {
  text-decoration: underline !important;
}
body.dreamz-theme div.product .sku_wrapper,
body.dreamz-theme div.product .posted_in,
body.dreamz-theme div.product .tagged_as {
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  font-weight: 600 !important;
}
body.dreamz-theme div.product .sku,
body.dreamz-theme div.product .posted_in a,
body.dreamz-theme div.product .tagged_as a {
  text-transform: none !important;
  letter-spacing: normal !important;
  font-weight: 400 !important;
}

/* Tabs (Beschreibung, Bewertungen) — jetzt komplett unter beiden Spalten */
body.dreamz-theme .woocommerce-tabs,
body.dreamz-theme div.product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  margin-top: 64px !important;
  padding-top: 48px !important;
  border-top: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme .woocommerce-tabs .panel {
  padding: 32px 0 0 !important;
  margin: 0 !important;
  color: var(--fg-2) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  max-width: 800px !important;
}
body.dreamz-theme .woocommerce-tabs .panel h2 {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 24px !important;
  color: var(--fg-1) !important;
  margin: 0 0 20px !important;
}

/* Related Products unter Tabs */
body.dreamz-theme .related.products,
body.dreamz-theme .upsells.products {
  grid-column: 1 / -1 !important;
  margin-top: 80px !important;
  padding-top: 48px !important;
  border-top: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme .related.products > h2,
body.dreamz-theme .upsells.products > h2 {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: 28px !important;
  color: var(--fg-1) !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 32px !important;
}

body.dreamz-theme .woocommerce-product-gallery {
  width: 100% !important; float: none !important;
}
body.dreamz-theme .woocommerce-product-gallery__image {
  border-radius: var(--radius-lg); overflow: hidden;
  background: var(--ink-800);
}
body.dreamz-theme .flex-control-thumbs { margin-top: 12px !important; display: flex !important; gap: 8px !important; }
body.dreamz-theme .flex-control-thumbs li {
  width: calc(25% - 6px) !important;
  margin: 0 !important;
}
body.dreamz-theme .flex-control-thumbs img {
  border-radius: var(--radius-md);
  border: 2px solid transparent;
  transition: border-color var(--dur-base) var(--ease-out);
}
body.dreamz-theme .flex-control-thumbs img.flex-active { border-color: var(--brand-turquoise); }

body.dreamz-theme div.product .entry-summary {
  width: 100% !important; float: none !important;
  padding: 0;
}
body.dreamz-theme div.product .product_title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 32px;
  color: var(--fg-1);
  letter-spacing: -0.01em;
  margin: 12px 0 16px;
}
body.dreamz-theme div.product p.price,
body.dreamz-theme div.product span.price {
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 40px;
  color: var(--brand-turquoise);
  margin-bottom: 12px;
}
body.dreamz-theme div.product p.price del { color: var(--fg-3); font-size: 20px; font-weight: 500; margin-right: 12px; }

.dreamz-stock {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 13px;
  padding: 8px 14px;
  border-radius: var(--radius-pill);
  background: var(--ink-800);
  border: 1px solid var(--border-default);
  margin: 8px 0 24px;
  font-weight: 500;
}
.dreamz-stock .dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 8px currentColor;
}
.dreamz-stock.is-ok  { color: var(--semantic-success); }
.dreamz-stock.is-low { color: var(--semantic-warning); }
.dreamz-stock.is-out { color: var(--semantic-danger); }

body.dreamz-theme .quantity {
  display: inline-flex !important; align-items: center;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-right: 12px !important;
}
body.dreamz-theme .quantity input {
  width: 60px !important; height: 48px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-1) !important;
  text-align: center !important;
  font-size: 16px !important;
  font-family: inherit !important;
}
body.dreamz-theme .single_add_to_cart_button {
  height: 48px !important;
  padding: 0 32px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .single_add_to_cart_button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow);
}

/* Tabs (Description / Reviews) */
body.dreamz-theme .woocommerce-tabs {
  padding: 48px 0;
  border-top: 1px solid var(--border-hairline);
  margin-top: 48px;
}
body.dreamz-theme .woocommerce-tabs ul.tabs {
  display: flex; gap: 32px;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 0 32px !important;
  background: transparent !important;
}
body.dreamz-theme .woocommerce-tabs ul.tabs::before { display: none; }
body.dreamz-theme .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.dreamz-theme .woocommerce-tabs ul.tabs li a {
  padding: 12px 0 !important;
  color: var(--fg-2) !important;
  font-size: 13px !important;
  font-weight: 600;
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  display: block;
}
body.dreamz-theme .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--brand-turquoise) !important;
}
body.dreamz-theme .woocommerce-tabs ul.tabs li.active a { color: var(--brand-turquoise) !important; }

/* =========================================================================
   Cart Page (classic) — 2-Spalten-Layout: Zeilen links, Totals rechts
   ========================================================================= */

body.dreamz-theme.woocommerce-cart .woocommerce,
body.dreamz-theme.woocommerce-checkout .woocommerce,
body.dreamz-theme .woocommerce-cart .woocommerce,
body.dreamz-theme .woocommerce-checkout .woocommerce {
  max-width: var(--container-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 64px var(--gutter) 96px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 380px !important;
  gap: 40px !important;
  align-items: start !important;
  box-sizing: border-box !important;
}
@media (max-width: 991px) {
  body.dreamz-theme.woocommerce-cart .woocommerce,
  body.dreamz-theme.woocommerce-checkout .woocommerce {
    grid-template-columns: 1fr !important;
  }
}
/* Cart-Formular (links) */
body.dreamz-theme .woocommerce-cart-form,
body.dreamz-theme form.woocommerce-cart-form {
  width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
}
/* Cart-Zeilen als Card-Liste */
body.dreamz-theme table.shop_table.cart {
  width: 100% !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  background: var(--bg-card) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme table.shop_table.cart th,
body.dreamz-theme table.shop_table.cart td {
  padding: 16px !important;
  border-color: var(--border-hairline) !important;
  vertical-align: middle !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme table.shop_table.cart th {
  background: var(--ink-800) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  color: var(--fg-2) !important;
}
body.dreamz-theme table.shop_table.cart td.product-thumbnail img,
body.dreamz-theme table.shop_table.cart .product-thumbnail img {
  width: 64px !important;
  height: 64px !important;
  object-fit: cover !important;
  border-radius: var(--radius-sm) !important;
}
body.dreamz-theme table.shop_table.cart .product-name a {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
body.dreamz-theme table.shop_table.cart .product-name a:hover { color: var(--brand-turquoise) !important; }
body.dreamz-theme table.shop_table.cart .product-price,
body.dreamz-theme table.shop_table.cart .product-subtotal {
  font-weight: 600 !important;
}
body.dreamz-theme table.shop_table.cart .product-remove a {
  width: 32px; height: 32px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: var(--radius-pill);
  background: transparent !important;
  color: var(--fg-3) !important;
  font-size: 18px !important;
  border: 1px solid var(--border-default) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme table.shop_table.cart .product-remove a:hover {
  background: var(--semantic-danger) !important;
  color: white !important;
  border-color: var(--semantic-danger) !important;
}
/* Coupon + Update-Cart Toolbar */
body.dreamz-theme table.shop_table.cart .actions {
  background: var(--ink-800) !important;
  padding: 16px !important;
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}
body.dreamz-theme .coupon {
  display: flex !important;
  gap: 8px !important;
  flex: 1;
  min-width: 260px !important;
}
body.dreamz-theme .coupon input[type="text"] { flex: 1; }

/* Cart Totals (rechts) */
body.dreamz-theme .cart-collaterals,
body.dreamz-theme .cart-collaterals .cart_totals {
  width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.dreamz-theme .cart-collaterals .cart_totals {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
  position: sticky !important;
  top: calc(var(--header-h) + 24px) !important;
}
body.dreamz-theme .cart-collaterals .cart_totals h2 {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wider) !important;
  margin: 0 0 16px !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme .cart-collaterals table.shop_table {
  border: 0 !important;
  background: transparent !important;
}
body.dreamz-theme .cart-collaterals table.shop_table th,
body.dreamz-theme .cart-collaterals table.shop_table td {
  padding: 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  color: var(--fg-1) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-size: 14px !important;
}
body.dreamz-theme .cart-collaterals .order-total th,
body.dreamz-theme .cart-collaterals .order-total td {
  border-bottom: 0 !important;
  padding-top: 16px !important;
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: 20px !important;
}
body.dreamz-theme .cart-collaterals .order-total .amount {
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme .wc-proceed-to-checkout {
  padding: 16px 0 0 !important;
}
body.dreamz-theme .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 16px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Order confirmation */
body.dreamz-theme .woocommerce-order .woocommerce-order-details {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
}

/* Cart-Page title (Warenkorb) — centered feels weird, force left align */
body.dreamz-theme.woocommerce-cart .entry-header,
body.dreamz-theme.woocommerce-cart .page-title-wrapper,
body.dreamz-theme.woocommerce-cart h1.entry-title,
body.dreamz-theme.woocommerce-cart h1.page-title {
  max-width: var(--container-max) !important;
  margin: 0 auto !important;
  padding: 64px var(--gutter) 0 !important;
  text-align: left !important;
}
body.dreamz-theme.woocommerce-cart h1.entry-title,
body.dreamz-theme.woocommerce-cart h1.page-title {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: clamp(40px, 5vw, 56px) !important;
  letter-spacing: -0.015em !important;
  color: var(--fg-1) !important;
  margin: 0 0 8px !important;
}
body.dreamz-theme.woocommerce-cart h1.entry-title::before,
body.dreamz-theme.woocommerce-cart h1.page-title::before {
  content: '/ Warenkorb';
  display: block;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-widest) !important;
  text-transform: uppercase;
  color: var(--brand-turquoise) !important;
  margin-bottom: 12px;
}

/* =========================================================================
   Block-Cart + Block-Checkout (WooCommerce Gutenberg-Blocks, WC 8.3+)
   ========================================================================= */

/* Block-Cart Container — muss die volle Spaltenbreite füllen */
body.dreamz-theme .wc-block-cart-items,
body.dreamz-theme .wc-block-cart__main,
body.dreamz-theme table.wc-block-cart-items,
body.dreamz-theme .wp-block-woocommerce-cart-line-items-block {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 8px 24px !important;
  color: var(--fg-1) !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  table-layout: fixed !important;
  display: block !important;
}

/* Header row hidden (kein "Product/Total"-Header oben) */
body.dreamz-theme table.wc-block-cart-items thead { display: none !important; }
body.dreamz-theme .wc-block-cart-items__header { display: none !important; }

/* Wenn's als tbody rendert */
body.dreamz-theme table.wc-block-cart-items tbody,
body.dreamz-theme .wc-block-cart-items tbody {
  display: block !important;
  width: 100% !important;
}

/* Jede Cart-Zeile — komplettes Grid-Reset, egal ob <tr> oder <div> */
/* Cart-Row Grid: Bild | Info | Menge | Preis + X — mit vernünftigen Breiten */
html body.dreamz-theme .wc-block-cart-items__row,
html body.dreamz-theme tr.wc-block-cart-items__row {
  display: grid !important;
  grid-template-columns: 88px minmax(0, 1fr) auto auto 32px !important;
  gap: 20px !important;
  align-items: start !important;
  padding: 20px !important;
  position: relative !important;
}
/* Bild-Zelle — Box */
html body.dreamz-theme .wc-block-cart-item__image,
html body.dreamz-theme td.wc-block-cart-item__image {
  grid-column: 1 !important;
  width: 88px !important;
  min-width: 88px !important;
  max-width: 88px !important;
  height: 88px !important;
  flex-shrink: 0 !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  overflow: hidden !important;
  padding: 0 !important;
  vertical-align: top !important;
  position: relative !important;
}
/* Der <a>-Wrapper innerhalb der Bild-Zelle */
html body.dreamz-theme .wc-block-cart-item__image a,
html body.dreamz-theme td.wc-block-cart-item__image a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  line-height: 0 !important;
}
/* Das Bild selbst — überschreibe die HTML-Attribute width=80 height=80 */
html body.dreamz-theme .wc-block-cart-item__image img,
html body.dreamz-theme td.wc-block-cart-item__image img,
html body.dreamz-theme .wc-block-cart-item__image a img,
html body.dreamz-theme td.wc-block-cart-item__image a img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  padding: 6px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-sizing: border-box !important;
}
html body.dreamz-theme .wc-block-cart-item__product {
  grid-column: 2 !important;
  min-width: 0 !important;
  width: 100% !important;
  padding-right: 0 !important;
}
html body.dreamz-theme .wc-block-cart-item__quantity {
  grid-column: 3 !important;
  width: auto !important;
  min-width: 120px !important;
}
html body.dreamz-theme .wc-block-cart-item__total {
  grid-column: 4 !important;
  width: auto !important;
  min-width: 80px !important;
  text-align: right !important;
}
/* Entfernen-Button: rundes X in eigener Spalte */
html body.dreamz-theme .wc-block-cart-item__remove-link,
html body.dreamz-theme button.wc-block-cart-item__remove-link {
  grid-column: 5 !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: 50% !important;
  color: var(--fg-3) !important;
  font-size: 0 !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  align-self: start !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  position: relative !important;
}
html body.dreamz-theme .wc-block-cart-item__remove-link::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 12px !important;
  height: 12px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a8' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  transform: translate(-50%, -50%) !important;
  text-indent: 0 !important;
}
html body.dreamz-theme .wc-block-cart-item__remove-link:hover {
  border-color: var(--semantic-danger) !important;
  background: rgba(239, 68, 68, 0.1) !important;
}
html body.dreamz-theme .wc-block-cart-item__remove-link:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
}
html body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-name,
html body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-metadata {
  white-space: normal !important;
  word-break: normal !important;
  overflow: visible !important;
  max-width: 100% !important;
}

body.dreamz-theme .wc-block-cart-items__row,
body.dreamz-theme tr.wc-block-cart-items__row,
body.dreamz-theme .wc-block-cart-items .wc-block-cart-items__row {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) auto !important;
  gap: 20px !important;
  padding: 20px 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  border-top: 0 !important;
  align-items: start !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.dreamz-theme .wc-block-cart-items__row:last-child { border-bottom: 0 !important; }

/* Kill table-cell display auf allen td */
body.dreamz-theme .wc-block-cart-items__row > td,
body.dreamz-theme .wc-block-cart-items__row > th {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: top !important;
  width: auto !important;
}

/* (Alte doppelte Bild-Regel entfernt — die neue mit maximaler Spezifität oben ist die einzige Wahrheit) */

/* Produkt-Info (Spalte 2) — DAS ist wo der Textumbruch passiert ist */
body.dreamz-theme .wc-block-cart-item__product,
body.dreamz-theme td.wc-block-cart-item__product {
  min-width: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
  word-wrap: break-word !important;
}
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-name,
body.dreamz-theme .wc-block-cart-item__product a.wc-block-components-product-name,
body.dreamz-theme .wc-block-cart-item__product a {
  color: var(--fg-1) !important;
  font-family: var(--font-body) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  display: block !important;
  margin-bottom: 6px !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  max-width: 100% !important;
}
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-name:hover {
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme .wc-block-cart-item__prices,
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-price {
  color: var(--brand-turquoise) !important;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  margin: 4px 0 8px !important;
}
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-price del,
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-price__regular {
  color: var(--fg-3) !important;
  text-decoration: line-through !important;
  font-weight: 500 !important;
  margin-right: 8px !important;
}
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-metadata,
body.dreamz-theme .wc-block-cart-item__product .wc-block-components-product-details {
  color: var(--fg-3) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  margin: 4px 0 0 !important;
}

/* Quantity stepper + Remove (Spalte 3) */
body.dreamz-theme .wc-block-cart-item__quantity,
body.dreamz-theme td.wc-block-cart-item__quantity {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  min-width: 130px !important;
  width: auto !important;
  padding: 0 !important;
  text-align: right !important;
}
/* Total-Spalte (falls WooCommerce eine 4. Spalte für Zeilen-Total hat) */
body.dreamz-theme .wc-block-cart-item__total,
body.dreamz-theme td.wc-block-cart-item__total {
  display: none !important;   /* Preis steht schon oben im Produkt-Block */
}
body.dreamz-theme .wc-block-components-quantity-selector {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  overflow: hidden !important;
  background: var(--ink-800) !important;
  height: 40px !important;
  width: auto !important;
  min-width: 0 !important;
}
body.dreamz-theme .wc-block-components-quantity-selector input {
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-1) !important;
  width: 44px !important;
  height: 40px !important;
  text-align: center !important;
  font-family: inherit !important;
  font-size: 14px !important;
  padding: 0 !important;
  -moz-appearance: textfield;
}
body.dreamz-theme .wc-block-components-quantity-selector input::-webkit-outer-spin-button,
body.dreamz-theme .wc-block-components-quantity-selector input::-webkit-inner-spin-button {
  -webkit-appearance: none; margin: 0;
}
body.dreamz-theme .wc-block-components-quantity-selector button {
  width: 36px !important;
  height: 40px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-2) !important;
  font-size: 16px !important;
  cursor: pointer !important;
  transition: color var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .wc-block-components-quantity-selector button:hover { color: var(--brand-turquoise) !important; }

/* (Alte Text-Version des Remove-Links deaktiviert — X-Icon oben ersetzt sie) */

/* Responsive: mobile Cart-Rows stacken */
@media (max-width: 767px) {
  body.dreamz-theme .wc-block-cart-items__row {
    grid-template-columns: 72px 1fr !important;
    gap: 12px !important;
  }
  body.dreamz-theme .wc-block-cart-item__image { width: 72px !important; height: 72px !important; }
  body.dreamz-theme .wc-block-cart-item__quantity {
    grid-column: 1 / -1 !important;
    align-items: flex-start !important;
  }
}


/* Wenn WC-Page: kein extra padding (page.php macht das schon) */
body.dreamz-theme .dreamz-page--wc {
  padding: 32px 0 96px !important;
}
body.dreamz-theme .dreamz-page__header {
  margin-bottom: 32px !important;
}
body.dreamz-theme .dreamz-page__title {
  font-family: var(--font-display) !important;
  font-size: clamp(32px, 4vw, 48px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  color: var(--fg-1) !important;
  margin: 4px 0 0 !important;
}
body.dreamz-theme .dreamz-page__content {
  width: 100% !important;
}
body.dreamz-theme .wp-block-woocommerce-cart,
body.dreamz-theme .wp-block-woocommerce-checkout,
body.dreamz-theme .wc-block-checkout,
body.dreamz-theme .wc-block-cart {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--fg-1) !important;
  position: relative !important;
}
/* Skeleton-Loader (der beim ersten Render kurz erscheint und Position:absolute setzt) — verstecken */
body.dreamz-theme .wc-block-components-skeleton,
body.dreamz-theme .wc-block-components-loading-mask,
body.dreamz-theme .wc-block-components-sidebar-layout--is-large .wc-block-components-sidebar-layout__container[aria-hidden="true"] {
  display: none !important;
}
/* Der aria-hidden="true" Container mit position:absolute — komplett aus dem Layout raushalten */
body.dreamz-theme .wc-block-components-sidebar-layout[aria-hidden="true"],
body.dreamz-theme .wp-block-woocommerce-cart [aria-hidden="true"] {
  position: absolute !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* =========================================================================
   Cart & Checkout 2-Spalten-Layout — FORCE über alles
   Selektoren mit hoher Spezifität: html body.dreamz-theme … !important
   Um WooCommerce's eigene Media-Queries zu schlagen
   ========================================================================= */
@media (min-width: 768px) {
  html body.dreamz-theme .wp-block-woocommerce-cart .wc-block-components-sidebar-layout,
  html body.dreamz-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
  html body.dreamz-theme .wc-block-cart .wc-block-components-sidebar-layout,
  html body.dreamz-theme .wc-block-checkout .wc-block-components-sidebar-layout,
  html body.dreamz-theme .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 420px) !important;
    gap: 40px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Linke Spalte (Cart-Items / Checkout-Formular) */
  html body.dreamz-theme .wc-block-components-sidebar-layout .wc-block-components-main,
  html body.dreamz-theme .wp-block-woocommerce-cart-line-items-block,
  html body.dreamz-theme .wp-block-woocommerce-checkout-fields-block {
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  /* Rechte Spalte (Zwischensumme / Sidebar) */
  html body.dreamz-theme .wc-block-components-sidebar-layout .wc-block-components-sidebar,
  html body.dreamz-theme .wp-block-woocommerce-cart-order-summary-block,
  html body.dreamz-theme .wp-block-woocommerce-checkout-order-summary-block {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 24px !important;
    margin: 0 !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-lg) !important;
    position: sticky !important;
    top: calc(var(--header-h) + 24px) !important;
    align-self: start !important;
  }
}
/* Mobile/Tablet — 1 Spalte, Sidebar UNTER dem Cart */
@media (max-width: 767px) {
  html body.dreamz-theme .wc-block-components-sidebar-layout,
  html body.dreamz-theme .wp-block-woocommerce-cart .wc-block-components-sidebar-layout,
  html body.dreamz-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout {
    display: block !important;
    grid-template-columns: none !important;
  }
  html body.dreamz-theme .wc-block-components-sidebar-layout .wc-block-components-sidebar {
    position: static !important;
    margin-top: 24px !important;
    padding: 20px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-default) !important;
    border-radius: var(--radius-lg) !important;
  }
  /* Cart-Row auf Mobile: kompakt */
  html body.dreamz-theme .wc-block-cart-items__row,
  html body.dreamz-theme tr.wc-block-cart-items__row {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 12px 16px !important;
    padding: 16px !important;
  }
  html body.dreamz-theme .wc-block-cart-item__image {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    width: 72px !important;
    height: 72px !important;
  }
  html body.dreamz-theme .wc-block-cart-item__product {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  html body.dreamz-theme .wc-block-cart-item__quantity {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: start !important;
  }
  html body.dreamz-theme .wc-block-cart-item__total {
    display: none !important;   /* Preis steht schon im Produkt */
  }
}

/* Section titles (Kontaktinformationen, Rechnungsadresse, …) */
body.dreamz-theme .wc-block-components-title,
body.dreamz-theme .wc-block-checkout__actions h2,
body.dreamz-theme .wp-block-woocommerce-checkout-contact-information-block h2,
body.dreamz-theme .wp-block-woocommerce-checkout-billing-address-block h2,
body.dreamz-theme .wp-block-woocommerce-checkout-shipping-address-block h2,
body.dreamz-theme .wp-block-woocommerce-checkout-payment-block h2,
body.dreamz-theme .wp-block-woocommerce-checkout-shipping-methods-block h2,
body.dreamz-theme .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title,
body.dreamz-theme .wc-block-checkout__contact-fields h2 {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 20px !important;
  color: var(--fg-1) !important;
  margin: 32px 0 16px !important;
  letter-spacing: -0.01em !important;
}

/* Inputs in Block-Checkout */
body.dreamz-theme .wc-block-components-text-input input,
body.dreamz-theme .wc-block-components-select select,
body.dreamz-theme .wc-block-components-country-input .components-combobox-control__input,
body.dreamz-theme .wc-block-components-address-form input,
body.dreamz-theme .wc-block-components-form input[type="text"],
body.dreamz-theme .wc-block-components-form input[type="email"],
body.dreamz-theme .wc-block-components-form input[type="tel"] {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  height: 56px !important;
  padding: 18px 16px 6px !important;
  font-family: var(--font-body) !important;
  font-size: 15px !important;
}
body.dreamz-theme .wc-block-components-text-input input:focus,
body.dreamz-theme .wc-block-components-select select:focus {
  border-color: var(--brand-turquoise) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px var(--brand-turquoise-glow) !important;
}
body.dreamz-theme .wc-block-components-text-input label,
body.dreamz-theme .wc-block-components-select label {
  color: var(--fg-3) !important;
  font-size: 12px !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

/* Radio + Checkbox */
body.dreamz-theme .wc-block-components-checkbox input,
body.dreamz-theme .wc-block-components-radio-control__option input {
  accent-color: var(--brand-turquoise) !important;
}
body.dreamz-theme .wc-block-components-checkbox__label,
body.dreamz-theme .wc-block-components-radio-control__label {
  color: var(--fg-2) !important;
  font-size: 14px !important;
}

/* Order Summary — this is the KEY fix for the squeezed column! */
body.dreamz-theme .wc-block-components-order-summary,
body.dreamz-theme .wp-block-woocommerce-checkout-order-summary-block {
  width: 100% !important;
  min-width: 0 !important;
}
body.dreamz-theme .wc-block-components-order-summary-item {
  display: grid !important;
  grid-template-columns: 56px 1fr auto !important;
  gap: 12px !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  align-items: start !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}
body.dreamz-theme .wc-block-components-order-summary-item__image {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  border-radius: var(--radius-sm) !important;
  overflow: hidden !important;
  background: var(--ink-800) !important;
}
body.dreamz-theme .wc-block-components-order-summary-item__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
body.dreamz-theme .wc-block-components-order-summary-item__description,
body.dreamz-theme .wc-block-components-product-name {
  min-width: 0 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  color: var(--fg-1) !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
  text-align: left !important;
}
body.dreamz-theme .wc-block-components-order-summary-item__total-price,
body.dreamz-theme .wc-block-components-product-price {
  color: var(--fg-1) !important;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-align: right !important;
  white-space: nowrap !important;
}
body.dreamz-theme .wc-block-components-product-price__value {
  color: var(--fg-1) !important;
}
body.dreamz-theme .wc-block-components-product-metadata,
body.dreamz-theme .wc-block-components-order-summary-item__quantity {
  color: var(--fg-3) !important;
  font-size: 12px !important;
}
body.dreamz-theme .wc-block-components-product-badge,
body.dreamz-theme .wc-block-components-sale-badge {
  background: var(--semantic-danger) !important;
  color: white !important;
  border-radius: var(--radius-pill) !important;
  padding: 2px 8px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Order totals rows */
body.dreamz-theme .wc-block-components-totals-item {
  display: flex !important;
  justify-content: space-between !important;
  padding: 8px 0 !important;
  color: var(--fg-2) !important;
  font-size: 14px !important;
}
body.dreamz-theme .wc-block-components-totals-footer-item {
  padding: 16px 0 8px !important;
  border-top: 1px solid var(--border-default) !important;
  margin-top: 8px !important;
  color: var(--fg-1) !important;
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: 20px !important;
}
body.dreamz-theme .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
  color: var(--brand-turquoise) !important;
}

/* Place Order button */
body.dreamz-theme .wc-block-components-checkout-place-order-button,
body.dreamz-theme .wc-block-cart__submit-button,
body.dreamz-theme .wp-block-woocommerce-proceed-to-checkout-block a {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  height: 56px !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  width: 100% !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .wc-block-components-checkout-place-order-button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Notices in Block-Checkout */
body.dreamz-theme .wc-block-components-notice-banner,
body.dreamz-theme .wc-block-components-validation-error {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-left: 3px solid var(--semantic-danger) !important;
  color: var(--fg-1) !important;
  border-radius: var(--radius-md) !important;
  padding: 16px !important;
}
body.dreamz-theme .wc-block-components-notice-banner.is-warning { border-left-color: var(--semantic-warning) !important; }
body.dreamz-theme .wc-block-components-notice-banner.is-success { border-left-color: var(--semantic-success) !important; }
body.dreamz-theme .wc-block-components-notice-banner.is-info    { border-left-color: var(--brand-turquoise) !important; }

/* Coupon */
body.dreamz-theme .wc-block-components-totals-coupon input,
body.dreamz-theme .wc-block-components-totals-coupon .wc-block-components-text-input {
  background: var(--bg-canvas) !important;
}

/* =========================================================================
   UNIVERSAL WOOCOMMERCE / PLUGIN-OVERRIDE SWEEP
   Alle Third-Party-Plugins in Dreamz-Farben zwingen
   ========================================================================= */

/* ─── Alle Tabellen im Konto/Woo/Plugin-Kontext ──────────────────────── */
body.dreamz-theme .woocommerce-MyAccount-content table,
body.dreamz-theme .woocommerce-MyAccount-content .shop_table,
body.dreamz-theme .woocommerce table.wishlist_table,
body.dreamz-theme .woocommerce-account table,
body.dreamz-theme .yith-wcwl-wishlist-container table,
body.dreamz-theme .tinvwl-table-manage-list,
body.dreamz-theme table.tinvwl-table-manage-list {
  width: 100% !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  color: var(--fg-1) !important;
  margin: 0 0 24px !important;
}
body.dreamz-theme .woocommerce-MyAccount-content table thead,
body.dreamz-theme .woocommerce-MyAccount-content .shop_table thead,
body.dreamz-theme .woocommerce table.wishlist_table thead,
body.dreamz-theme table.tinvwl-table-manage-list thead {
  background: var(--ink-800) !important;
}
body.dreamz-theme .woocommerce-MyAccount-content table th,
body.dreamz-theme .woocommerce-MyAccount-content .shop_table th,
body.dreamz-theme .woocommerce table.wishlist_table th,
body.dreamz-theme table.tinvwl-table-manage-list th {
  background: var(--ink-800) !important;
  color: var(--fg-2) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-default) !important;
  text-align: left !important;
}
body.dreamz-theme .woocommerce-MyAccount-content table td,
body.dreamz-theme .woocommerce-MyAccount-content .shop_table td,
body.dreamz-theme .woocommerce table.wishlist_table td,
body.dreamz-theme table.tinvwl-table-manage-list td {
  background: transparent !important;
  color: var(--fg-1) !important;
  padding: 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  vertical-align: middle !important;
  font-size: 14px !important;
}
body.dreamz-theme .woocommerce-MyAccount-content table tr:last-child td,
body.dreamz-theme table.wishlist_table tr:last-child td,
body.dreamz-theme table.tinvwl-table-manage-list tr:last-child td {
  border-bottom: 0 !important;
}
body.dreamz-theme .woocommerce-MyAccount-content table a,
body.dreamz-theme table.wishlist_table a,
body.dreamz-theme table.tinvwl-table-manage-list a {
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
}
body.dreamz-theme .woocommerce-MyAccount-content table a:hover,
body.dreamz-theme table.wishlist_table a:hover {
  color: var(--brand-turquoise-hover) !important;
  text-decoration: underline !important;
}

/* Produkt-Thumbnail in Tabelle */
body.dreamz-theme table.wishlist_table td.product-thumbnail img,
body.dreamz-theme table.tinvwl-table-manage-list img {
  width: 56px !important;
  height: 56px !important;
  object-fit: cover !important;
  border-radius: var(--radius-sm) !important;
  border: 1px solid var(--border-hairline) !important;
  background: var(--ink-800) !important;
  padding: 4px !important;
  box-sizing: border-box !important;
  display: block !important;
}

/* Produktname in Wishlist */
body.dreamz-theme table.wishlist_table .product-name a,
body.dreamz-theme table.tinvwl-table-manage-list .product-name a {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}
body.dreamz-theme table.wishlist_table .product-name a:hover,
body.dreamz-theme table.tinvwl-table-manage-list .product-name a:hover {
  color: var(--brand-turquoise) !important;
}

/* Preise + Datum in Wishlist */
body.dreamz-theme table.wishlist_table .product-price,
body.dreamz-theme table.tinvwl-table-manage-list .product-price {
  color: var(--brand-turquoise) !important;
  font-weight: 700 !important;
  font-family: var(--font-display) !important;
}
body.dreamz-theme table.wishlist_table .product-price del,
body.dreamz-theme table.tinvwl-table-manage-list .product-price del {
  color: var(--fg-3) !important;
  font-weight: 500 !important;
  font-family: var(--font-body) !important;
}
body.dreamz-theme table.wishlist_table .product-date-added,
body.dreamz-theme table.tinvwl-table-manage-list .product-date {
  color: var(--fg-2) !important;
}
body.dreamz-theme table.wishlist_table .product-stock-status,
body.dreamz-theme table.tinvwl-table-manage-list .product-stock {
  color: var(--semantic-success) !important;
  font-size: 13px !important;
}

/* Remove-X-Button in Wishlist */
body.dreamz-theme table.wishlist_table .product-remove a,
body.dreamz-theme table.wishlist_table .product-remove button,
body.dreamz-theme table.tinvwl-table-manage-list .product-remove a,
body.dreamz-theme table.tinvwl-table-manage-list .product-remove button,
body.dreamz-theme .tinvwl-remove {
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  color: var(--fg-3) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-pill) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  text-align: center !important;
  padding: 0 !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme table.wishlist_table .product-remove a:hover,
body.dreamz-theme table.wishlist_table .product-remove button:hover,
body.dreamz-theme .tinvwl-remove:hover {
  background: var(--semantic-danger) !important;
  color: white !important;
  border-color: var(--semantic-danger) !important;
}

/* Add-to-Cart Button in Wishlist-Zeile */
body.dreamz-theme table.wishlist_table .product-add-to-cart a,
body.dreamz-theme table.wishlist_table .product-add-to-cart button,
body.dreamz-theme table.tinvwl-table-manage-list .product-action a,
body.dreamz-theme table.tinvwl-table-manage-list .product-action button {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  padding: 10px 16px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  height: auto !important;
  min-height: 0 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-shadow: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme table.wishlist_table .product-add-to-cart a:hover,
body.dreamz-theme table.wishlist_table .product-add-to-cart button:hover {
  background: var(--brand-turquoise-hover) !important;
  color: var(--ink-void) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* ─── Wishlist-Header ("Wunschliste"-Titel) ──────────────────────────── */
body.dreamz-theme .tinvwl-header,
body.dreamz-theme .tinvwl-list-name,
body.dreamz-theme .yith-wcwl-wishlist-name,
body.dreamz-theme .wishlist_view h2 {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 24px !important;
  color: var(--fg-1) !important;
  text-align: left !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  letter-spacing: -0.01em !important;
}

/* Toolbar unter Wishlist (Aktion anwenden / Add all to cart / Add selected) */
body.dreamz-theme .tinvwl-buttons-action,
body.dreamz-theme .tinvwl-header .social-buttons,
body.dreamz-theme .yith-wcwl-share {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin: 16px 0 0 !important;
  padding: 16px 0 0 !important;
}
body.dreamz-theme .tinvwl-buttons-action select,
body.dreamz-theme select#bulk_actions_wishlist {
  height: 44px !important;
  padding: 0 32px 0 12px !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  min-width: 120px !important;
  cursor: pointer !important;
}

/* ─── ALLE Buttons in Konto/Woo/Wishlist → Türkis konsistent ───────── */
body.dreamz-theme .woocommerce-MyAccount-content button,
body.dreamz-theme .woocommerce-MyAccount-content input[type="submit"],
body.dreamz-theme .woocommerce-MyAccount-content .button,
body.dreamz-theme .tinvwl-buttons-action button,
body.dreamz-theme .tinvwl-buttons-action .button,
body.dreamz-theme .tinvwl-btn,
body.dreamz-theme .yith-wcwl-add-to-cart .button,
body.dreamz-theme .woocommerce-wishlist button.button,
body.dreamz-theme button.button-primary:not(.wp-core-ui *) {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  height: 44px !important;
  padding: 0 20px !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-shadow: none !important;
  box-shadow: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  white-space: nowrap !important;
}
body.dreamz-theme .woocommerce-MyAccount-content button:hover,
body.dreamz-theme .woocommerce-MyAccount-content input[type="submit"]:hover,
body.dreamz-theme .woocommerce-MyAccount-content .button:hover,
body.dreamz-theme .tinvwl-buttons-action button:hover,
body.dreamz-theme .tinvwl-btn:hover,
body.dreamz-theme .yith-wcwl-add-to-cart .button:hover {
  background: var(--brand-turquoise-hover) !important;
  color: var(--ink-void) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Sekundäre Buttons (falls Plugin welche hat) — Ghost/Outline-Style */
body.dreamz-theme .tinvwl-btn.white,
body.dreamz-theme .tinvwl-btn.secondary {
  background: transparent !important;
  color: var(--fg-1) !important;
  border: 1px solid var(--border-default) !important;
}
body.dreamz-theme .tinvwl-btn.white:hover,
body.dreamz-theme .tinvwl-btn.secondary:hover {
  border-color: var(--brand-turquoise) !important;
  color: var(--brand-turquoise) !important;
}

/* ─── Checkboxes + Radios global auf Türkis-Accent ─────────────────── */
body.dreamz-theme input[type="checkbox"],
body.dreamz-theme input[type="radio"] {
  accent-color: var(--brand-turquoise) !important;
  width: 18px !important;
  height: 18px !important;
  cursor: pointer !important;
  vertical-align: middle !important;
}

/* ─── Wishlist-Heart-Button auf Product-Cards ─────────────────────── */
body.dreamz-theme .yith-wcwl-add-to-wishlist a,
body.dreamz-theme .tinvwl_add_to_wishlist_button,
body.dreamz-theme a.tinvwl_add_to_wishlist_button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: transparent !important;
  color: var(--fg-2) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-pill) !important;
  padding: 8px 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .yith-wcwl-add-to-wishlist a:hover,
body.dreamz-theme .tinvwl_add_to_wishlist_button:hover {
  border-color: var(--brand-turquoise) !important;
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme .yith-wcwl-add-to-wishlist a.exists,
body.dreamz-theme .tinvwl_add_to_wishlist_button.tinv-wishlist-existsproduct {
  border-color: var(--brand-turquoise) !important;
  color: var(--brand-turquoise) !important;
  background: rgba(0,209,194,0.08) !important;
}

/* Wishlist-Heart-Icon */
body.dreamz-theme .tinvwl_add_to_wishlist_button i,
body.dreamz-theme .yith-wcwl-add-to-wishlist i {
  color: currentColor !important;
}

/* ─── Woo-Message-Balloons + Toast-Nachrichten ─────────────────────── */
body.dreamz-theme .woocommerce-message,
body.dreamz-theme .woocommerce-info,
body.dreamz-theme .woocommerce-error,
body.dreamz-theme .tinv-modal,
body.dreamz-theme .tinvwl-notice,
body.dreamz-theme .yith-wcwl-message {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-left: 3px solid var(--brand-turquoise) !important;
  color: var(--fg-1) !important;
  padding: 16px 20px 16px 52px !important;
  border-radius: var(--radius-md) !important;
  margin: 0 0 24px 0 !important;
}
body.dreamz-theme .tinv-modal .tinv-modal-inner {
  background: var(--bg-card) !important;
  color: var(--fg-1) !important;
  border-radius: var(--radius-lg) !important;
  border: 1px solid var(--border-default) !important;
}
body.dreamz-theme .tinv-modal-btn-close {
  color: var(--fg-2) !important;
}

/* (Sortier-Toolbar liegt im Category-Header-Block weiter oben) */

/* ─── Login/Register-Formulare — konsistent ────────────────────────── */
body.dreamz-theme .woocommerce form.login,
body.dreamz-theme .woocommerce form.register,
body.dreamz-theme .woocommerce form.lost_reset_password,
body.dreamz-theme .woocommerce form.checkout_coupon {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 32px !important;
  color: var(--fg-1) !important;
  margin: 0 0 24px !important;
}
body.dreamz-theme .woocommerce form.login label,
body.dreamz-theme .woocommerce form.register label {
  color: var(--fg-2) !important;
  font-size: 11px !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
}
body.dreamz-theme .woocommerce form .form-row-first,
body.dreamz-theme .woocommerce form .form-row-last {
  width: 48% !important;
}

/* ─── Bewertungen / Reviews ────────────────────────────────────────── */
body.dreamz-theme #reviews,
body.dreamz-theme .woocommerce-Reviews,
body.dreamz-theme .commentlist,
body.dreamz-theme #comments {
  color: var(--fg-1) !important;
}
body.dreamz-theme .commentlist li,
body.dreamz-theme #reviews .comment {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 20px !important;
  margin: 0 0 16px !important;
  list-style: none !important;
}
body.dreamz-theme .commentlist li .comment-text,
body.dreamz-theme #reviews .comment-text {
  background: transparent !important;
  border: 0 !important;
  padding: 0 0 0 68px !important;
  margin: 0 !important;
}
body.dreamz-theme .commentlist .avatar,
body.dreamz-theme #reviews .avatar {
  border-radius: var(--radius-pill) !important;
  width: 52px !important;
  height: 52px !important;
  border: 1px solid var(--border-default) !important;
}
body.dreamz-theme .star-rating span::before,
body.dreamz-theme .star-rating::before {
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme p.stars a,
body.dreamz-theme p.stars a::before {
  color: var(--brand-turquoise) !important;
}

/* ─── Empty States (Warenkorb leer, Wishlist leer etc.) ───────────── */
body.dreamz-theme .cart-empty,
body.dreamz-theme .wishlist-empty,
body.dreamz-theme .wc-empty-cart-message,
body.dreamz-theme .tinvwl-empty,
body.dreamz-theme .yith-wcwl-empty {
  background: var(--bg-card) !important;
  border: 1px dashed var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 48px 32px !important;
  text-align: center !important;
  color: var(--fg-2) !important;
  font-size: 15px !important;
  margin: 32px 0 !important;
}

/* ─── Filter-Sidebar (falls WooCommerce-Widget aktiviert) ─────────── */
body.dreamz-theme .widget_price_filter,
body.dreamz-theme .widget_product_categories,
body.dreamz-theme .widget_layered_nav,
body.dreamz-theme .widget_product_search {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 20px !important;
  margin-bottom: 16px !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme .widget h2,
body.dreamz-theme .widget .widget-title {
  color: var(--fg-1) !important;
  font-family: var(--font-display) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  margin: 0 0 16px !important;
}
body.dreamz-theme .widget ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.dreamz-theme .widget ul li {
  padding: 8px 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  color: var(--fg-2) !important;
}
body.dreamz-theme .widget ul li:last-child { border-bottom: 0 !important; }
body.dreamz-theme .widget ul li a { color: var(--fg-1) !important; text-decoration: none !important; }
body.dreamz-theme .widget ul li a:hover { color: var(--brand-turquoise) !important; }

/* ─── Preisfilter-Slider (WooCommerce Standard) ──────────────────── */
body.dreamz-theme .widget_price_filter .ui-slider {
  background: var(--ink-800) !important;
  height: 4px !important;
  border-radius: 2px !important;
  border: 0 !important;
}
body.dreamz-theme .widget_price_filter .ui-slider .ui-slider-range {
  background: var(--brand-turquoise) !important;
}
body.dreamz-theme .widget_price_filter .ui-slider .ui-slider-handle {
  background: var(--brand-turquoise) !important;
  border: 0 !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  top: -6px !important;
}

/* ─── Mini-Cart-Widget im Header (falls von Storefront übernommen) ── */
body.dreamz-theme .widget_shopping_cart_content,
body.dreamz-theme .cart_list {
  background: var(--bg-card) !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme .cart_list li {
  color: var(--fg-1) !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}

/* ─── Coupon-Formular ────────────────────────────────────────────── */
body.dreamz-theme .checkout_coupon input.input-text,
body.dreamz-theme .coupon input.input-text {
  background: var(--ink-800) !important;
  border: 1px solid var(--border-default) !important;
  color: var(--fg-1) !important;
  border-radius: var(--radius-md) !important;
  padding: 0 14px !important;
  height: 44px !important;
}

/* ─── Alle Woo-Buttons im Frontend die noch weiß rutschen ─────────── */
body.dreamz-theme .woocommerce a.button,
body.dreamz-theme .woocommerce button.button,
body.dreamz-theme .woocommerce input.button,
body.dreamz-theme .woocommerce #respond input#submit,
body.dreamz-theme .woocommerce .button.wc-forward,
body.dreamz-theme .woocommerce-page a.button,
body.dreamz-theme .woocommerce-page button.button {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  padding: 12px 20px !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-shadow: none !important;
  cursor: pointer !important;
  height: auto !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .woocommerce a.button:hover,
body.dreamz-theme .woocommerce button.button:hover,
body.dreamz-theme .woocommerce input.button:hover,
body.dreamz-theme .woocommerce #respond input#submit:hover {
  background: var(--brand-turquoise-hover) !important;
  color: var(--ink-void) !important;
  box-shadow: var(--shadow-glow) !important;
}
/* Alt-button ("View cart" oder "See details" — Secondary) */
body.dreamz-theme .woocommerce a.button.alt,
body.dreamz-theme .woocommerce button.button.alt {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
}
body.dreamz-theme .shop_table {
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--bg-card);
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
body.dreamz-theme .shop_table th,
body.dreamz-theme .shop_table td {
  border-color: var(--border-hairline) !important;
  color: var(--fg-1) !important;
}

/* Inputs (Checkout, Account) */
body.dreamz-theme .woocommerce input[type="text"],
body.dreamz-theme .woocommerce input[type="email"],
body.dreamz-theme .woocommerce input[type="password"],
body.dreamz-theme .woocommerce input[type="tel"],
body.dreamz-theme .woocommerce input[type="number"],
body.dreamz-theme .woocommerce select,
body.dreamz-theme .woocommerce textarea {
  height: 48px;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  padding: 0 16px !important;
  font-family: var(--font-body) !important;
  font-size: 15px !important;
}
body.dreamz-theme .woocommerce textarea { height: auto; padding: 12px 16px !important; }
body.dreamz-theme .woocommerce input:focus,
body.dreamz-theme .woocommerce select:focus,
body.dreamz-theme .woocommerce textarea:focus {
  outline: none !important;
  border-color: var(--brand-turquoise) !important;
  box-shadow: 0 0 0 2px var(--brand-turquoise-glow) !important;
}
body.dreamz-theme .woocommerce form .form-row label {
  font-size: 12px !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase;
  color: var(--fg-2) !important;
  font-weight: 600;
}

/* Cart drawer */
.dreamz-cart-drawer {
  position: fixed;
  top: 0; right: 0; bottom: 0;
  width: 100%; max-width: 420px;
  background: var(--bg-surface);
  border-left: 1px solid var(--border-hairline);
  z-index: 200;
  transform: translateX(100%);
  transition: transform var(--dur-slow) var(--ease-out);
  display: flex; flex-direction: column;
}
.dreamz-cart-drawer.is-open { transform: translateX(0); }
.dreamz-cart-drawer__head {
  padding: 24px;
  display: flex; justify-content: space-between; align-items: center;
  border-bottom: 1px solid var(--border-hairline);
  font-size: 13px; font-weight: 700;
  letter-spacing: var(--tracking-widest);
  text-transform: uppercase;
}
.dreamz-cart-drawer__body { flex: 1; overflow-y: auto; padding: 16px 24px; }
.dreamz-cart-drawer__foot {
  padding: 24px;
  border-top: 1px solid var(--border-hairline);
  background: var(--bg-card);
}
.dreamz-cart-overlay {
  position: fixed; inset: 0;
  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(4px);
  opacity: 0; pointer-events: none;
  transition: opacity var(--dur-slow) var(--ease-out);
  z-index: 199;
}
.dreamz-cart-overlay.is-open { opacity: 1; pointer-events: auto; }

/* Mobile nav drawer */
.dreamz-mobile-nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: 320px !important;
  background: var(--bg-surface) !important;
  border-right: 1px solid var(--border-hairline) !important;
  z-index: 200 !important;
  transform: translateX(-100%) !important;
  transition: transform var(--dur-slow) var(--ease-out) !important;
  padding: 80px 32px 32px !important;
  overflow: hidden !important;     /* KRITISCH: Inhalte innerhalb halten */
  visibility: hidden !important;   /* komplett unsichtbar wenn geschlossen */
  pointer-events: none !important;
}
.dreamz-mobile-nav.is-open {
  transform: translateX(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.dreamz-mobile-nav ul { list-style: none; margin: 0; padding: 0; }
.dreamz-mobile-nav li { margin-bottom: 24px; }
.dreamz-mobile-nav a {
  color: var(--fg-1) !important;
  font-size: 18px; font-weight: 700;
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
}

/* =========================================================================
   My Account Page — Grid Layout (kein Float mehr)
   ========================================================================= */

html body.dreamz-theme.woocommerce-account .woocommerce,
html body.dreamz-theme .woocommerce-account .woocommerce {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) !important;
  gap: 32px !important;
  align-items: start !important;
  float: none !important;
  box-sizing: border-box !important;
}
/* Force: Navigation ist Grid-Kind 1, Content ist Grid-Kind 2 */
html body.dreamz-theme.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
html body.dreamz-theme .woocommerce-account .woocommerce > nav.woocommerce-MyAccount-navigation {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
html body.dreamz-theme.woocommerce-account .woocommerce > .woocommerce-MyAccount-content,
html body.dreamz-theme .woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media (max-width: 767px) {
  body.dreamz-theme.woocommerce-account .woocommerce,
  body.dreamz-theme .woocommerce-account .woocommerce {
    grid-template-columns: 1fr !important;
  }
}

/* Nav Sidebar */
body.dreamz-theme.woocommerce-account .woocommerce-MyAccount-navigation,
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation {
  width: 260px !important;
  max-width: 260px !important;
  min-width: 260px !important;
  float: none !important;
  margin: 0 !important;
  padding: 12px !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  align-self: start;
  box-sizing: border-box !important;
}
@media (max-width: 767px) {
  body.dreamz-theme.woocommerce-account .woocommerce-MyAccount-navigation,
  body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation ul,
body.dreamz-theme .woocommerce-MyAccount-navigation ul,
body.dreamz-theme .woocommerce-MyAccount-navigation nav ul {
  list-style: none !important;
  list-style-type: none !important;
  list-style-image: none !important;
  list-style-position: outside !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation ul li,
body.dreamz-theme .woocommerce-MyAccount-navigation ul li,
body.dreamz-theme .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  list-style-type: none !important;
  list-style-image: none !important;
  border: 0 !important;
  background: transparent !important;
  display: block !important;
}
/* Kill ALL pseudo-element markers */
body.dreamz-theme .woocommerce-MyAccount-navigation ul::before,
body.dreamz-theme .woocommerce-MyAccount-navigation ul::marker,
body.dreamz-theme .woocommerce-MyAccount-navigation li::before,
body.dreamz-theme .woocommerce-MyAccount-navigation li::marker,
body.dreamz-theme .woocommerce-MyAccount-navigation li a::before {
  display: none !important;
  content: none !important;
}
/* Dashicon-Icons rendert Storefront/Woo als ::after auf <a> — die dürfen bleiben (Info-Icon rechts) */
body.dreamz-theme.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation ul li a,
body.dreamz-theme .woocommerce-MyAccount-navigation li a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  color: var(--fg-2) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: var(--radius-sm) !important;
  border: 0 !important;
  background: transparent !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  transition: background var(--dur-base) var(--ease-out),
              color var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: rgba(0,209,194,0.06) !important;
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a,
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active > a {
  background: rgba(0,209,194,0.12) !important;
  color: var(--brand-turquoise) !important;
}

/* Content Area */
body.dreamz-theme .woocommerce-account .woocommerce-MyAccount-content {
  width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  color: var(--fg-1) !important;
}

/* Account-Detail-Formular Fixes */
body.dreamz-theme .woocommerce-EditAccountForm,
body.dreamz-theme .woocommerce-EditAccountForm fieldset,
body.dreamz-theme .woocommerce form fieldset,
body.dreamz-theme .woocommerce-address-fields fieldset {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 24px 0 0 !important;
  color: var(--fg-1) !important;
}

/* Passwort ändern Fieldset — als Card umgestaltet */
body.dreamz-theme .woocommerce-EditAccountForm fieldset {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 20px 24px 24px !important;
  margin-top: 32px !important;
}
body.dreamz-theme .woocommerce-EditAccountForm fieldset legend {
  color: var(--fg-1) !important;
  background: transparent !important;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  padding: 0 8px !important;
  margin-left: -8px !important;
  width: auto !important;
}

/* Labels + Beschreibungstexte */
body.dreamz-theme .woocommerce form .form-row,
body.dreamz-theme .woocommerce-EditAccountForm .form-row,
body.dreamz-theme .woocommerce-address-fields .form-row {
  margin-bottom: 16px !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme .woocommerce form .form-row label,
body.dreamz-theme .woocommerce-EditAccountForm label {
  display: block !important;
  font-size: 11px !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  color: var(--fg-3) !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
}
body.dreamz-theme .woocommerce form .form-row .description,
body.dreamz-theme .woocommerce-EditAccountForm .description,
body.dreamz-theme .woocommerce em {
  display: block !important;
  color: var(--fg-3) !important;
  font-size: 12px !important;
  font-style: normal !important;
  margin-top: 6px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-weight: 400 !important;
}

/* Speichern-Button + alle .button in Account/Adress-Formularen → Türkis */
body.dreamz-theme .woocommerce-EditAccountForm button.button,
body.dreamz-theme .woocommerce-address-fields button.button,
body.dreamz-theme .woocommerce-MyAccount-content button.button,
body.dreamz-theme .woocommerce-MyAccount-content input[type="submit"].button,
body.dreamz-theme .woocommerce form button[type="submit"],
body.dreamz-theme .woocommerce form input[type="submit"],
body.dreamz-theme .woocommerce-Address .edit,
body.dreamz-theme .woocommerce-MyAccount-content .button {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  height: 48px !important;
  padding: 0 24px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-shadow: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  margin-top: 8px !important;
}
body.dreamz-theme .woocommerce-EditAccountForm button.button:hover,
body.dreamz-theme .woocommerce-address-fields button.button:hover,
body.dreamz-theme .woocommerce-MyAccount-content button.button:hover,
body.dreamz-theme .woocommerce form button[type="submit"]:hover,
body.dreamz-theme .woocommerce form input[type="submit"]:hover,
body.dreamz-theme .woocommerce-MyAccount-content .button:hover {
  background: var(--brand-turquoise-hover) !important;
  color: var(--ink-void) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Inputs innerhalb des Konto-Details / Adress-Formulars — sichtbare Umrisse */
body.dreamz-theme .woocommerce-EditAccountForm input[type="text"],
body.dreamz-theme .woocommerce-EditAccountForm input[type="email"],
body.dreamz-theme .woocommerce-EditAccountForm input[type="password"],
body.dreamz-theme .woocommerce-EditAccountForm input[type="tel"],
body.dreamz-theme .woocommerce-address-fields input[type="text"],
body.dreamz-theme .woocommerce-address-fields input[type="email"],
body.dreamz-theme .woocommerce-address-fields input[type="password"],
body.dreamz-theme .woocommerce-address-fields input[type="tel"],
body.dreamz-theme .woocommerce-address-fields select {
  width: 100% !important;
  height: 48px !important;
  background: var(--ink-800) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  padding: 0 16px !important;
  font-family: var(--font-body) !important;
  font-size: 15px !important;
  box-shadow: none !important;
}
body.dreamz-theme .woocommerce-EditAccountForm input:focus,
body.dreamz-theme .woocommerce-address-fields input:focus,
body.dreamz-theme .woocommerce-address-fields select:focus {
  outline: none !important;
  border-color: var(--brand-turquoise) !important;
  box-shadow: 0 0 0 2px var(--brand-turquoise-glow) !important;
  background: var(--ink-800) !important;
}
body.dreamz-theme .woocommerce-EditAccountForm input::placeholder,
body.dreamz-theme .woocommerce-address-fields input::placeholder {
  color: var(--fg-4) !important;
}

/* Account title */
body.dreamz-theme.woocommerce-account .entry-header,
body.dreamz-theme.woocommerce-account .page-title {
  max-width: var(--container-max);
  margin: 0 auto !important;
  padding: 64px var(--gutter) 0;
}
body.dreamz-theme.woocommerce-account .entry-title,
body.dreamz-theme.woocommerce-account h1.page-title {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: clamp(40px, 5vw, 56px) !important;
  letter-spacing: -0.015em !important;
  color: var(--fg-1) !important;
  margin: 12px 0 32px !important;
}
body.dreamz-theme.woocommerce-account .entry-title::before,
body.dreamz-theme.woocommerce-account h1.page-title::before {
  content: '/ Mein Konto';
  display: block;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-widest) !important;
  text-transform: uppercase;
  color: var(--brand-turquoise) !important;
  margin-bottom: 12px;
}
body.dreamz-theme .woocommerce-account .woocommerce::after {
  content: '';
  display: table;
  clear: both;
}

/* Login / Register forms */
body.dreamz-theme .woocommerce-account:not(.logged-in) .woocommerce {
  max-width: 480px !important;
}
body.dreamz-theme .u-columns > .u-column1,
body.dreamz-theme .u-columns > .u-column2 {
  width: 100% !important;
  float: none !important;
  margin-bottom: 32px;
}
body.dreamz-theme .woocommerce form.login,
body.dreamz-theme .woocommerce form.register,
body.dreamz-theme .woocommerce form.checkout_coupon,
body.dreamz-theme .woocommerce form.lost_reset_password {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 32px !important;
  margin: 0 !important;
}

/* =========================================================================
   Notices (Success / Info / Error)
   ========================================================================= */

body.dreamz-theme .woocommerce-message,
body.dreamz-theme .woocommerce-info,
body.dreamz-theme .woocommerce-error,
body.dreamz-theme .woocommerce-notice,
body.dreamz-theme ul.woocommerce-error {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-left: 3px solid var(--brand-turquoise) !important;
  color: var(--fg-1) !important;
  padding: 16px 20px 16px 52px !important;   /* extra left padding for icon */
  border-radius: var(--radius-md) !important;
  margin: 0 0 24px 0 !important;
  position: relative !important;
  list-style: none !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  min-height: 0 !important;
  display: block !important;
}
body.dreamz-theme .woocommerce-message li,
body.dreamz-theme .woocommerce-info li,
body.dreamz-theme .woocommerce-error li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.dreamz-theme .woocommerce-error { border-left-color: var(--semantic-danger) !important; }
body.dreamz-theme .woocommerce-info  { border-left-color: var(--brand-turquoise) !important; }

/* Reset WooCommerce's absolute pseudo-icon */
body.dreamz-theme .woocommerce-message::before,
body.dreamz-theme .woocommerce-info::before,
body.dreamz-theme .woocommerce-error::before {
  position: absolute !important;
  top: 50% !important;
  left: 20px !important;
  transform: translateY(-50%) !important;
  color: var(--brand-turquoise) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.dreamz-theme .woocommerce-error::before {
  color: var(--semantic-danger) !important;
}

/* Buttons INSIDE notices — Türkis-Style konsistent */
body.dreamz-theme .woocommerce-message .button,
body.dreamz-theme .woocommerce-info .button,
body.dreamz-theme .woocommerce-error .button,
body.dreamz-theme .woocommerce-notice .button {
  float: right !important;
  margin: -4px 0 0 12px !important;
  padding: 10px 18px !important;
  height: auto !important;
  min-height: 0 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-wider) !important;
  text-transform: uppercase !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  text-shadow: none !important;
}
body.dreamz-theme .woocommerce-message .button:hover,
body.dreamz-theme .woocommerce-info .button:hover,
body.dreamz-theme .woocommerce-error .button:hover,
body.dreamz-theme .woocommerce-notice .button:hover {
  background: var(--brand-turquoise-hover) !important;
  color: var(--ink-void) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Pagination */
body.dreamz-theme .woocommerce-pagination ul.page-numbers {
  display: flex; gap: 8px; list-style: none; padding: 0; border: 0 !important;
  justify-content: center; margin: 32px 0 !important;
}
body.dreamz-theme .woocommerce-pagination ul.page-numbers li { border: 0 !important; }
body.dreamz-theme .woocommerce-pagination .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px;
  border-radius: var(--radius-md);
  border: 1px solid var(--border-default) !important;
  color: var(--fg-2) !important;
  background: transparent !important;
  font-weight: 600;
}
body.dreamz-theme .woocommerce-pagination .page-numbers.current {
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border-color: var(--brand-turquoise) !important;
}


/* =========================================================================
   CLASSIC WOOCOMMERCE TEMPLATES — Cart & Checkout Shortcode-Versionen
   [woocommerce_cart], [woocommerce_checkout], [woocommerce_my_account]
   ========================================================================= */

/* Full-width container for shortcode Cart/Checkout */
body.dreamz-theme.woocommerce-cart .woocommerce,
body.dreamz-theme.woocommerce-checkout .woocommerce,
body.dreamz-theme.woocommerce-account .woocommerce {
  color: var(--fg-1) !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* --- CART TABLE (shop_table.cart) --- */
body.dreamz-theme .woocommerce-cart-form,
body.dreamz-theme .woocommerce-cart form.woocommerce-cart-form {
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.dreamz-theme table.shop_table.cart,
body.dreamz-theme .woocommerce-cart table.cart,
body.dreamz-theme .woocommerce table.shop_table_responsive.cart {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  color: var(--fg-1) !important;
  margin: 0 0 32px !important;
}

/* Table Header */
body.dreamz-theme table.shop_table.cart thead,
body.dreamz-theme table.shop_table.cart thead tr,
body.dreamz-theme .woocommerce-cart table.cart thead {
  background: rgba(255,255,255,0.03) !important;
}
body.dreamz-theme table.shop_table.cart thead th {
  color: var(--fg-3) !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  padding: 16px 20px !important;
  border: 0 !important;
  background: transparent !important;
  text-align: left !important;
}

/* Table Body rows */
body.dreamz-theme table.shop_table.cart tbody tr,
body.dreamz-theme table.shop_table.cart tr.cart_item,
body.dreamz-theme .woocommerce-cart table.cart tr.cart_item {
  background: transparent !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme table.shop_table.cart tbody tr:last-child,
body.dreamz-theme table.shop_table.cart tr.cart_item:last-child {
  border-bottom: 0 !important;
}
body.dreamz-theme table.shop_table.cart tbody td,
body.dreamz-theme table.shop_table.cart tr.cart_item td,
body.dreamz-theme .woocommerce-cart table.cart td {
  padding: 20px !important;
  border: 0 !important;
  background: transparent !important;
  vertical-align: middle !important;
  color: var(--fg-1) !important;
}

/* Remove-button (X) — column .product-remove */
body.dreamz-theme table.shop_table.cart td.product-remove,
body.dreamz-theme .woocommerce-cart td.product-remove {
  width: 48px !important;
  padding-left: 20px !important;
  padding-right: 8px !important;
}
body.dreamz-theme td.product-remove a.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: 1px solid var(--border-hairline) !important;
  color: var(--fg-3) !important;
  font-size: 0 !important;
  text-decoration: none !important;
  position: relative !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme td.product-remove a.remove::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 12px !important;
  height: 12px !important;
  transform: translate(-50%, -50%) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a8' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
body.dreamz-theme td.product-remove a.remove:hover {
  border-color: var(--semantic-danger) !important;
  background: rgba(239, 68, 68, 0.1) !important;
}
body.dreamz-theme td.product-remove a.remove:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
}

/* Product Thumbnail column */
body.dreamz-theme table.shop_table.cart td.product-thumbnail,
body.dreamz-theme .woocommerce-cart td.product-thumbnail {
  width: 96px !important;
  padding: 12px !important;
}
body.dreamz-theme td.product-thumbnail img,
body.dreamz-theme td.product-thumbnail a img {
  display: block !important;
  width: 72px !important;
  height: 72px !important;
  object-fit: contain !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  padding: 4px !important;
  box-shadow: none !important;
}

/* Product Name column */
body.dreamz-theme table.shop_table.cart td.product-name,
body.dreamz-theme .woocommerce-cart td.product-name {
  padding: 20px 16px !important;
  color: var(--fg-1) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}
body.dreamz-theme td.product-name a {
  color: var(--fg-1) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
body.dreamz-theme td.product-name a:hover {
  color: var(--brand-turquoise) !important;
}

/* Price */
body.dreamz-theme td.product-price,
body.dreamz-theme .woocommerce-cart td.product-price {
  color: var(--fg-2) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}
body.dreamz-theme td.product-price del {
  color: var(--fg-4) !important;
  font-weight: 400 !important;
  margin-right: 6px !important;
}
body.dreamz-theme td.product-price ins {
  background: transparent !important;
  color: var(--fg-1) !important;
  text-decoration: none !important;
}

/* Quantity input */
body.dreamz-theme td.product-quantity {
  width: 140px !important;
}
/* Kontextualisiert auf Warenkorb-Toolbar / Checkout (nicht Produkt-Detail-Seite) */
body.dreamz-theme.woocommerce-cart .quantity,
body.dreamz-theme.woocommerce-checkout .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-pill) !important;
  overflow: hidden !important;
  height: 40px !important;
}
body.dreamz-theme.woocommerce-cart .quantity input.qty,
body.dreamz-theme.woocommerce-checkout .quantity input.qty {
  width: 44px !important;
  height: 38px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-1) !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 0 !important;
  -moz-appearance: textfield !important;
}
body.dreamz-theme .quantity input.qty::-webkit-outer-spin-button,
body.dreamz-theme .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* Subtotal (right column) */
body.dreamz-theme td.product-subtotal {
  text-align: right !important;
  color: var(--fg-1) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

/* Actions row — Gutschein + Update */
body.dreamz-theme td.actions,
body.dreamz-theme table.shop_table td.actions {
  padding: 20px !important;
  background: rgba(255,255,255,0.02) !important;
  border-top: 1px solid var(--border-hairline) !important;
}
/* Coupon-Box im Warenkorb (kontextualisiert um Product-Page nicht zu treffen) */
body.dreamz-theme.woocommerce-cart .coupon,
body.dreamz-theme.woocommerce-checkout .coupon {
  display: inline-flex !important;
  gap: 8px !important;
  align-items: center !important;
  margin-right: 12px !important;
}
body.dreamz-theme.woocommerce-cart .coupon label,
body.dreamz-theme.woocommerce-checkout .coupon label { display: none !important; }
body.dreamz-theme .coupon input#coupon_code,
body.dreamz-theme input[name="coupon_code"] {
  height: 42px !important;
  padding: 0 16px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  font-size: 13px !important;
  min-width: 200px !important;
}
body.dreamz-theme .coupon input#coupon_code::placeholder {
  color: var(--fg-4) !important;
}
body.dreamz-theme .coupon button,
body.dreamz-theme td.actions button[name="apply_coupon"],
body.dreamz-theme td.actions button[name="update_cart"] {
  height: 42px !important;
  padding: 0 18px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme td.actions button[name="update_cart"] {
  background: transparent !important;
  color: var(--fg-2) !important;
  border: 1px solid var(--border-default) !important;
}
body.dreamz-theme td.actions button[name="update_cart"]:hover {
  border-color: var(--brand-turquoise) !important;
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme td.actions button[name="update_cart"]:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}
body.dreamz-theme .coupon button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* --- CART COLLATERALS (LEGACY — jetzt versteckt, weil eigenes cart.php Template) --- */
body.dreamz-theme .cart-collaterals,
body.dreamz-theme .woocommerce-cart .cart-collaterals {
  display: none !important;
}
body.dreamz-theme .cart-collaterals .cart_totals,
body.dreamz-theme .cart_totals {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 28px !important;
  width: 100% !important;
  float: none !important;
}
body.dreamz-theme .cart_totals h2 {
  color: var(--fg-1) !important;
  font-family: var(--font-display) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  margin: 0 0 20px !important;
  letter-spacing: -0.01em !important;
}
body.dreamz-theme .cart_totals table {
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  border-collapse: collapse !important;
}
body.dreamz-theme .cart_totals table th,
body.dreamz-theme .cart_totals table td {
  padding: 12px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--fg-2) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme .cart_totals table th {
  color: var(--fg-3) !important;
  text-align: left !important;
  font-weight: 500 !important;
}
body.dreamz-theme .cart_totals table td {
  text-align: right !important;
  color: var(--fg-1) !important;
  font-weight: 600 !important;
}
body.dreamz-theme .cart_totals .order-total th,
body.dreamz-theme .cart_totals tr.order-total td {
  color: var(--fg-1) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  padding-top: 18px !important;
  border-bottom: 0 !important;
}
body.dreamz-theme .cart_totals tr.order-total td {
  color: var(--brand-turquoise) !important;
  font-size: 22px !important;
}
body.dreamz-theme .cart_totals .wc-proceed-to-checkout {
  padding: 20px 0 0 !important;
  margin: 0 !important;
}
body.dreamz-theme .cart_totals .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 !important;
  text-align: center !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .cart_totals .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* --- CHECKOUT (Kasse) --- */
body.dreamz-theme.woocommerce-checkout h3,
body.dreamz-theme.woocommerce-checkout h3.wc-block-components-title,
body.dreamz-theme .woocommerce-checkout h3,
body.dreamz-theme #customer_details h3,
body.dreamz-theme #order_review_heading {
  color: var(--fg-1) !important;
  font-family: var(--font-display) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 0 20px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  letter-spacing: -0.01em !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Checkout 2-Column Layout */
body.dreamz-theme .woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 400px) !important;
  gap: 40px !important;
  align-items: start !important;
}
body.dreamz-theme .woocommerce-checkout #customer_details {
  grid-column: 1 !important;
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}
body.dreamz-theme .woocommerce-checkout #customer_details .col-1,
body.dreamz-theme .woocommerce-checkout #customer_details .col-2 {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin-bottom: 32px !important;
}
body.dreamz-theme .woocommerce-checkout #order_review_heading,
body.dreamz-theme .woocommerce-checkout #order_review {
  grid-column: 2 !important;
  width: 100% !important;
  float: none !important;
}
body.dreamz-theme .woocommerce-checkout #order_review {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
  position: sticky !important;
  top: calc(var(--header-h) + 24px) !important;
}
body.dreamz-theme .woocommerce-checkout #order_review_heading {
  grid-column: 2 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
}
@media (max-width: 991px) {
  body.dreamz-theme .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr !important;
  }
  body.dreamz-theme .woocommerce-checkout #customer_details,
  body.dreamz-theme .woocommerce-checkout #order_review,
  body.dreamz-theme .woocommerce-checkout #order_review_heading {
    grid-column: 1 !important;
  }
  body.dreamz-theme .woocommerce-checkout #order_review {
    position: static !important;
  }
}

/* Checkout Form Fields */
body.dreamz-theme .woocommerce-checkout .form-row label,
body.dreamz-theme .woocommerce form .form-row label {
  color: var(--fg-2) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body.dreamz-theme .woocommerce-checkout .form-row input,
body.dreamz-theme .woocommerce-checkout .form-row select,
body.dreamz-theme .woocommerce-checkout .form-row textarea,
body.dreamz-theme .woocommerce form .form-row input,
body.dreamz-theme .woocommerce form .form-row select,
body.dreamz-theme .woocommerce form .form-row textarea {
  width: 100% !important;
  height: 46px !important;
  padding: 0 16px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  transition: border-color var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .woocommerce-checkout .form-row textarea,
body.dreamz-theme .woocommerce form .form-row textarea {
  height: auto !important;
  min-height: 88px !important;
  padding: 12px 16px !important;
  resize: vertical !important;
}
body.dreamz-theme .woocommerce-checkout .form-row input:focus,
body.dreamz-theme .woocommerce-checkout .form-row select:focus,
body.dreamz-theme .woocommerce-checkout .form-row textarea:focus {
  outline: none !important;
  border-color: var(--brand-turquoise) !important;
  box-shadow: 0 0 0 3px var(--brand-turquoise-glow) !important;
}
body.dreamz-theme .woocommerce-checkout .form-row input::placeholder,
body.dreamz-theme .woocommerce-checkout .form-row textarea::placeholder {
  color: var(--fg-4) !important;
}
body.dreamz-theme .woocommerce-checkout .form-row {
  margin-bottom: 16px !important;
  padding: 0 !important;
}

/* Order Review Table */
body.dreamz-theme .woocommerce-checkout table.shop_table {
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  border-collapse: collapse !important;
  color: var(--fg-1) !important;
}
body.dreamz-theme .woocommerce-checkout table.shop_table thead th {
  background: transparent !important;
  color: var(--fg-3) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme .woocommerce-checkout table.shop_table tbody td,
body.dreamz-theme .woocommerce-checkout table.shop_table tfoot th,
body.dreamz-theme .woocommerce-checkout table.shop_table tfoot td {
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  color: var(--fg-1) !important;
  font-size: 14px !important;
  background: transparent !important;
}
body.dreamz-theme .woocommerce-checkout table.shop_table tfoot th {
  color: var(--fg-3) !important;
  font-weight: 500 !important;
  text-align: left !important;
}
body.dreamz-theme .woocommerce-checkout table.shop_table tfoot .order-total th,
body.dreamz-theme .woocommerce-checkout table.shop_table tfoot .order-total td {
  color: var(--fg-1) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  border-bottom: 0 !important;
  padding-top: 18px !important;
}
body.dreamz-theme .woocommerce-checkout table.shop_table tfoot .order-total td {
  color: var(--brand-turquoise) !important;
}

/* Payment Methods */
body.dreamz-theme .woocommerce-checkout #payment,
body.dreamz-theme .woocommerce-checkout ul.payment_methods {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 20px 0 !important;
}
body.dreamz-theme .woocommerce-checkout ul.payment_methods li {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  padding: 14px 16px !important;
  margin-bottom: 10px !important;
  list-style: none !important;
}
body.dreamz-theme .woocommerce-checkout ul.payment_methods li label {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-size: 14px !important;
}
body.dreamz-theme .woocommerce-checkout .payment_box {
  background: rgba(255,255,255,0.02) !important;
  border: 0 !important;
  border-radius: var(--radius-sm) !important;
  padding: 12px 16px !important;
  margin-top: 12px !important;
  color: var(--fg-2) !important;
  font-size: 13px !important;
}
body.dreamz-theme .woocommerce-checkout .payment_box::before {
  display: none !important;
}

/* Place Order Button */
body.dreamz-theme #place_order,
body.dreamz-theme button#place_order,
body.dreamz-theme .woocommerce-checkout #place_order {
  display: block !important;
  width: 100% !important;
  height: 56px !important;
  padding: 0 !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  margin-top: 20px !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme #place_order:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* --- Checkout Coupon Info Bar --- */
body.dreamz-theme .woocommerce-form-coupon-toggle {
  margin-bottom: 24px !important;
}
body.dreamz-theme .woocommerce-info,
body.dreamz-theme .woocommerce-form-coupon-toggle .woocommerce-info {
  background: rgba(45, 212, 191, 0.05) !important;
  border: 1px solid rgba(45, 212, 191, 0.3) !important;
  border-left: 3px solid var(--brand-turquoise) !important;
  border-radius: var(--radius-md) !important;
  padding: 16px 20px !important;
  color: var(--fg-2) !important;
  font-size: 14px !important;
}
body.dreamz-theme .woocommerce-info a {
  color: var(--brand-turquoise) !important;
  font-weight: 600 !important;
}
body.dreamz-theme .woocommerce-info::before {
  color: var(--brand-turquoise) !important;
}

/* Empty Cart Message */
body.dreamz-theme .cart-empty {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 60px 40px !important;
  text-align: center !important;
  color: var(--fg-2) !important;
  font-size: 16px !important;
  margin-bottom: 24px !important;
}
body.dreamz-theme .return-to-shop {
  text-align: center !important;
}
body.dreamz-theme .return-to-shop a.wc-backward,
body.dreamz-theme a.button.wc-backward {
  display: inline-block !important;
  padding: 14px 32px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme a.button.wc-backward:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Responsive Cart Table */
@media (max-width: 767px) {
  body.dreamz-theme table.shop_table.cart {
    display: block !important;
  }
  body.dreamz-theme table.shop_table.cart thead {
    display: none !important;
  }
  body.dreamz-theme table.shop_table.cart tbody {
    display: block !important;
  }
  body.dreamz-theme table.shop_table.cart tr.cart_item {
    display: grid !important;
    grid-template-columns: 72px 1fr 32px !important;
    grid-template-rows: auto auto auto !important;
    gap: 8px 12px !important;
    padding: 16px !important;
    border-bottom: 1px solid var(--border-hairline) !important;
  }
  body.dreamz-theme table.shop_table.cart td {
    padding: 0 !important;
    display: block !important;
  }
  body.dreamz-theme td.product-remove {
    grid-column: 3 !important;
    grid-row: 1 !important;
    width: auto !important;
  }
  body.dreamz-theme td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
  }
  body.dreamz-theme td.product-thumbnail img {
    width: 72px !important;
    height: 72px !important;
  }
  body.dreamz-theme td.product-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  body.dreamz-theme td.product-price {
    grid-column: 2 !important;
    grid-row: 2 !important;
  }
  body.dreamz-theme td.product-quantity {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    margin-top: 8px !important;
  }
  body.dreamz-theme td.product-subtotal {
    display: none !important;
  }
  body.dreamz-theme td.actions {
    display: block !important;
  }
  body.dreamz-theme .cart-collaterals {
    max-width: 100% !important;
  }
}


/* =========================================================================
   DREAMZ CART TEMPLATE — matches live-preview.html exactly
   ========================================================================= */
body.dreamz-theme.woocommerce-cart .dreamz-page__content {
  padding-top: 24px !important;
}
body.dreamz-theme .cart-page__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 380px !important;
  gap: 32px !important;
  align-items: start !important;
  width: 100% !important;
}
@media (max-width: 991px) {
  body.dreamz-theme .cart-page__grid {
    grid-template-columns: 1fr !important;
  }
}

/* Left: cart-items container */
body.dreamz-theme .cart-items {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 8px 24px !important;
  min-width: 0 !important;
}

/* Cart row: [img 88] [info 1fr] [actions auto] */
body.dreamz-theme .cart-row {
  display: grid !important;
  grid-template-columns: 88px minmax(0, 1fr) auto !important;
  gap: 20px !important;
  align-items: center !important;
  padding: 20px 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
body.dreamz-theme .cart-row:last-of-type {
  border-bottom: 0 !important;
}

/* Image */
body.dreamz-theme .cart-row__img {
  width: 88px !important;
  height: 88px !important;
  border-radius: var(--radius-md) !important;
  overflow: hidden !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-hairline) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}
body.dreamz-theme .cart-row__img a,
body.dreamz-theme .cart-row__img img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 6px !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
}
body.dreamz-theme .cart-row__img a {
  padding: 0 !important;
}
body.dreamz-theme .cart-row__img a img {
  padding: 6px !important;
}

/* Info */
body.dreamz-theme .cart-row__info {
  min-width: 0 !important;
  padding: 0 !important;
}
body.dreamz-theme .cart-row__title {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--fg-1) !important;
  margin-bottom: 6px !important;
  line-height: 1.35 !important;
}
body.dreamz-theme .cart-row__title a {
  color: var(--fg-1) !important;
  text-decoration: none !important;
}
body.dreamz-theme .cart-row__title a:hover {
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme .cart-row__price {
  color: var(--brand-turquoise) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  margin-bottom: 6px !important;
}
body.dreamz-theme .cart-row__price del {
  color: var(--fg-3) !important;
  text-decoration: line-through !important;
  font-weight: 500 !important;
  margin-right: 8px !important;
}
body.dreamz-theme .cart-row__price ins {
  background: transparent !important;
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
}
body.dreamz-theme .cart-row__meta {
  color: var(--fg-3) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* Actions: qty + remove */
body.dreamz-theme .cart-row__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 10px !important;
}
body.dreamz-theme .cart-row__qty .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-pill) !important;
  overflow: hidden !important;
  height: 40px !important;
  margin: 0 !important;
}
body.dreamz-theme .cart-row__qty input.qty,
body.dreamz-theme .cart-row__qty .quantity input.qty {
  width: 56px !important;
  height: 38px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-1) !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 0 !important;
  -moz-appearance: textfield !important;
  margin: 0 !important;
}
body.dreamz-theme .cart-row__qty input.qty::-webkit-outer-spin-button,
body.dreamz-theme .cart-row__qty input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}
body.dreamz-theme .cart-row__remove {
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-3) !important;
  font-size: 13px !important;
  padding: 4px 0 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-family: var(--font-body) !important;
  transition: color var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .cart-row__remove:hover {
  color: var(--semantic-danger) !important;
}

/* Cart-actions (Coupon + Update) */
body.dreamz-theme .cart-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 20px 0 12px !important;
  border-top: 1px solid var(--border-hairline) !important;
  margin-top: 8px !important;
  flex-wrap: wrap !important;
}
body.dreamz-theme .cart-coupon {
  display: inline-flex !important;
  gap: 8px !important;
  align-items: center !important;
  flex: 1 !important;
  min-width: 240px !important;
}
body.dreamz-theme .cart-coupon input#coupon_code {
  height: 40px !important;
  padding: 0 14px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  font-size: 13px !important;
  flex: 1 !important;
  min-width: 0 !important;
}
body.dreamz-theme .cart-coupon input#coupon_code::placeholder {
  color: var(--fg-4) !important;
}
body.dreamz-theme .cart-coupon button {
  height: 40px !important;
  padding: 0 16px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  white-space: nowrap !important;
}
body.dreamz-theme .cart-coupon button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}
body.dreamz-theme .cart-actions__update {
  height: 40px !important;
  padding: 0 16px !important;
  background: transparent !important;
  color: var(--fg-2) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .cart-actions__update:hover:not(:disabled) {
  border-color: var(--brand-turquoise) !important;
  color: var(--brand-turquoise) !important;
}
body.dreamz-theme .cart-actions__update:disabled {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
}

/* Right: cart-summary */
body.dreamz-theme aside.cart-summary,
body.dreamz-theme .cart-summary {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 28px !important;
  position: sticky !important;
  top: calc(var(--header-h) + 24px) !important;
  align-self: start !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.dreamz-theme .cart-summary__title {
  font-family: var(--font-display) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--fg-1) !important;
  margin: 0 0 20px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}
body.dreamz-theme .cart-summary__coupon {
  display: none !important;
}

/* Row-Grundlayout: Label links, Betrag rechts */
body.dreamz-theme .cart-summary__row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  padding: 10px 0 !important;
  color: var(--fg-2) !important;
  font-size: 14px !important;
  border-bottom: 0 !important;
  gap: 16px !important;
}
body.dreamz-theme .cart-summary__row > span:first-child {
  color: var(--fg-3) !important;
  font-weight: 400 !important;
  flex-shrink: 0 !important;
}
body.dreamz-theme .cart-summary__row > span:last-child {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}

/* =========================================================================
   VERSAND-ZEILE: Restrukturierung
   Rechts nur der Preis. Der WooCommerce-Content (ul mit Methode + Adresse)
   wird per JS in eine eigene Adress-Box UNTER der Versand-Zeile geschoben.
   ========================================================================= */
body.dreamz-theme .cart-summary__row.cart-shipping {
  align-items: baseline !important;
}

/* Der WC-Content-Container mit den Methoden — Standard versteckt,
   nur der Preis wird per JS in die rechte Zelle projiziert. */
body.dreamz-theme .cart-summary__row.cart-shipping .cart-summary__value {
  display: block !important;
  text-align: right !important;
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}

/* Fallback: Falls JS-Extraktion nicht greift, wenigstens
   die "Sendung"-Überschrift + Bullet-Point verstecken */
body.dreamz-theme .cart-summary__row.cart-shipping ul.woocommerce-shipping-methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.dreamz-theme .cart-summary__row.cart-shipping ul.woocommerce-shipping-methods li {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}
body.dreamz-theme .cart-summary__row.cart-shipping ul li input {
  display: none !important;
}
body.dreamz-theme .cart-summary__row.cart-shipping ul li label {
  color: var(--fg-1) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: default !important;
  display: inline !important;
}

/* Adress-Box UNTER der Versand-Zeile — linksbündig, mit Straße + Name */
body.dreamz-theme .cart-summary__shipping-info {
  padding: 4px 0 12px !important;
  color: var(--fg-3) !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}
body.dreamz-theme .cart-summary__shipping-info .cart-summary__shipping-name {
  color: var(--fg-2) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  display: block !important;
  margin-bottom: 2px !important;
}
body.dreamz-theme .cart-summary__shipping-info .cart-summary__shipping-address {
  color: var(--fg-4) !important;
  font-size: 12px !important;
  display: block !important;
}
body.dreamz-theme .cart-summary__shipping-info .cart-summary__shipping-edit {
  display: inline-block !important;
  color: var(--brand-turquoise) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  margin-top: 6px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  cursor: pointer !important;
  transition: color var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .cart-summary__shipping-info .cart-summary__shipping-edit:hover {
  color: var(--brand-turquoise-hover) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

/* Wenn der Kalkulator geöffnet ist */
body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator {
  padding: 16px 0 8px !important;
}
body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator .form-row {
  margin-bottom: 10px !important;
}
body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator button {
  height: 38px !important;
  padding: 0 16px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

/* Steuer-Zeile: dezenter dargestellt (Meta-Info) */
body.dreamz-theme .cart-summary__row.tax-total,
body.dreamz-theme .cart-summary__row.tax-rate {
  padding: 8px 0 !important;
  font-size: 12px !important;
}
body.dreamz-theme .cart-summary__row.tax-total > span:first-child,
body.dreamz-theme .cart-summary__row.tax-rate > span:first-child {
  color: var(--fg-4) !important;
  font-size: 12px !important;
}
body.dreamz-theme .cart-summary__row.tax-total > span:last-child,
body.dreamz-theme .cart-summary__row.tax-rate > span:last-child {
  color: var(--fg-3) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

/* Gesamtsumme-Zeile: eigene Card unten, deutlich */
body.dreamz-theme .cart-summary__row--total {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  padding: 20px 0 8px !important;
  border-top: 1px solid var(--border-hairline) !important;
  border-bottom: 0 !important;
  margin-top: 12px !important;
}
body.dreamz-theme .cart-summary__row--total > span:first-child {
  color: var(--fg-1) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}
body.dreamz-theme .cart-summary__total,
body.dreamz-theme .cart-summary__row--total > span:last-child {
  color: var(--brand-turquoise) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: -0.01em !important;
}
/* "inkl. XX MwSt."-Text hinter dem Total — kleiner unter dem Betrag */
body.dreamz-theme .cart-summary__row--total .includes_tax,
body.dreamz-theme .cart-summary__row--total small,
body.dreamz-theme .cart-summary__row--total small.includes_tax {
  display: block !important;
  color: var(--fg-4) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  margin-top: 4px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
body.dreamz-theme .cart-summary .wc-proceed-to-checkout {
  padding: 20px 0 0 !important;
  margin: 0 !important;
}
body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 !important;
  text-align: center !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Responsive */
@media (max-width: 767px) {
  body.dreamz-theme .cart-row {
    grid-template-columns: 72px 1fr !important;
    grid-template-rows: auto auto !important;
    gap: 12px !important;
  }
  body.dreamz-theme .cart-row__img {
    width: 72px !important;
    height: 72px !important;
    grid-row: 1 / 3 !important;
    grid-column: 1 !important;
  }
  body.dreamz-theme .cart-row__info {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  body.dreamz-theme .cart-row__actions {
    grid-column: 2 !important;
    grid-row: 2 !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
}


/* =========================================================================
   FINAL CART FIX — Preview-1:1 endgültig
   Verstecke die alte shop_table + zwing das eigene Grid.
   ========================================================================= */

/* Verstecke die ALTE WooCommerce shop_table Struktur (wenn sie noch rendert) */
html body.dreamz-theme.woocommerce-cart .woocommerce > form.woocommerce-cart-form > table.shop_table.cart,
html body.dreamz-theme.woocommerce-cart .woocommerce > form.woocommerce-cart-form > table.cart,
html body.dreamz-theme.woocommerce-cart form.woocommerce-cart-form > table.shop_table {
  display: none !important;
}

/* Falls unser cart.php nicht greift und Original-shop_table zurückkommt: mach sie zumindest lesbar */
html body.dreamz-theme.woocommerce-cart table.shop_table.cart {
  width: 100% !important;
  table-layout: auto !important;
  max-width: 100% !important;
}

/* Force das cart-page__grid — 1fr 1fr wie in der Preview */
html body.dreamz-theme.woocommerce-cart .cart-page__grid,
html body.dreamz-theme.woocommerce-cart form.dreamz-cart-form .cart-page__grid,
html body.dreamz-theme.woocommerce-cart form.woocommerce-cart-form .cart-page__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 40px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
}
@media (max-width: 991px) {
  html body.dreamz-theme.woocommerce-cart .cart-page__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Force cart-items als volle Card */
html body.dreamz-theme.woocommerce-cart .cart-page__grid > .cart-items {
  grid-column: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
/* Force cart-summary rechts */
html body.dreamz-theme.woocommerce-cart .cart-page__grid > .cart-summary,
html body.dreamz-theme.woocommerce-cart .cart-page__grid > aside.cart-summary {
  grid-column: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
}
@media (max-width: 991px) {
  html body.dreamz-theme.woocommerce-cart .cart-page__grid > .cart-items,
  html body.dreamz-theme.woocommerce-cart .cart-page__grid > .cart-summary {
    grid-column: 1 !important;
  }
}

/* Verhindere dass der Titel einer cart-row-Row-Buchstabe-für-Buchstabe umbricht */
html body.dreamz-theme .cart-row {
  min-width: 0 !important;
}
html body.dreamz-theme .cart-row * {
  min-width: 0 !important;
}
html body.dreamz-theme .cart-row__info {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
}
html body.dreamz-theme .cart-row__title,
html body.dreamz-theme .cart-row__title a {
  word-break: normal !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
  hyphens: none !important;
  max-width: 100% !important;
  display: block !important;
}

/* =========================================================================
   CHECKOUT FIX — 2-Spalten mit maximaler Spezifität
   ========================================================================= */
html body.dreamz-theme.woocommerce-checkout form.checkout,
html body.dreamz-theme.woocommerce-checkout form.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 400px !important;
  gap: 40px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
}
@media (max-width: 991px) {
  html body.dreamz-theme.woocommerce-checkout form.checkout {
    grid-template-columns: 1fr !important;
  }
}

/* Linke Spalte */
html body.dreamz-theme.woocommerce-checkout #customer_details,
html body.dreamz-theme.woocommerce-checkout form.checkout > #customer_details {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* col-1 und col-2 innerhalb #customer_details untereinander */
html body.dreamz-theme.woocommerce-checkout #customer_details .col2-set,
html body.dreamz-theme.woocommerce-checkout #customer_details .col2-set > .col-1,
html body.dreamz-theme.woocommerce-checkout #customer_details .col2-set > .col-2 {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 0 32px !important;
}

/* Rechte Spalte: Bestellübersicht-Sidebar (per JS gebauter Wrapper) */
html body.dreamz-theme.woocommerce-checkout .dreamz-checkout-sidebar {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  position: sticky !important;
  top: calc(var(--header-h) + 24px) !important;
  width: 100% !important;
  min-width: 0 !important;
}
html body.dreamz-theme.woocommerce-checkout .dreamz-checkout-sidebar #order_review_heading {
  position: static !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
  top: auto !important;
}
html body.dreamz-theme.woocommerce-checkout .dreamz-checkout-sidebar #order_review {
  position: static !important;
  margin: 0 !important;
  top: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  float: none !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
}

/* Fallback: falls JS nicht greift, Heading + Review nebeneinander in Row 1 */
html body.dreamz-theme.woocommerce-checkout form.checkout > #order_review_heading {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
}
html body.dreamz-theme.woocommerce-checkout form.checkout > #order_review {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  margin-top: 56px !important;
  position: sticky !important;
  top: calc(var(--header-h) + 80px) !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  float: none !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
}

/* customer_details spannt eine Row */
html body.dreamz-theme.woocommerce-checkout #customer_details,
html body.dreamz-theme.woocommerce-checkout form.checkout > #customer_details {
  grid-row: 1 !important;
}

@media (max-width: 991px) {
  html body.dreamz-theme.woocommerce-checkout #customer_details,
  html body.dreamz-theme.woocommerce-checkout .dreamz-checkout-sidebar,
  html body.dreamz-theme.woocommerce-checkout #order_review_heading,
  html body.dreamz-theme.woocommerce-checkout #order_review {
    grid-column: 1 !important;
    grid-row: auto !important;
    position: static !important;
    margin-top: 0 !important;
    top: auto !important;
  }
  html body.dreamz-theme.woocommerce-checkout .dreamz-checkout-sidebar {
    margin-top: 32px !important;
  }
}

/* Coupon-Info oben soll volle Breite haben */
html body.dreamz-theme.woocommerce-checkout .woocommerce-form-coupon-toggle {
  grid-column: 1 / -1 !important;
  margin-bottom: 24px !important;
}

/* =========================================================================
   NUCLEAR OPTION — Storefront-Wrapper platt machen
   Kill Storefront container floats/widths that collapse our grid
   ========================================================================= */
html body.dreamz-theme.woocommerce-cart #primary,
html body.dreamz-theme.woocommerce-cart #main,
html body.dreamz-theme.woocommerce-cart .site-main,
html body.dreamz-theme.woocommerce-cart .content-area,
html body.dreamz-theme.woocommerce-cart article,
html body.dreamz-theme.woocommerce-cart .type-page,
html body.dreamz-theme.woocommerce-cart .entry-content,
html body.dreamz-theme.woocommerce-cart .woocommerce,
html body.dreamz-theme.woocommerce-checkout #primary,
html body.dreamz-theme.woocommerce-checkout #main,
html body.dreamz-theme.woocommerce-checkout .site-main,
html body.dreamz-theme.woocommerce-checkout .content-area,
html body.dreamz-theme.woocommerce-checkout article,
html body.dreamz-theme.woocommerce-checkout .type-page,
html body.dreamz-theme.woocommerce-checkout .entry-content,
html body.dreamz-theme.woocommerce-checkout .woocommerce {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}
/* Sidebar (secondary) auf Cart/Checkout komplett ausblenden */
html body.dreamz-theme.woocommerce-cart #secondary,
html body.dreamz-theme.woocommerce-cart aside.widget-area,
html body.dreamz-theme.woocommerce-checkout #secondary,
html body.dreamz-theme.woocommerce-checkout aside.widget-area {
  display: none !important;
}
/* Storefront-eigene Cart-Wrapper Layout-Krücken killen */
html body.dreamz-theme.woocommerce-cart .storefront-sticky-add-to-cart,
html body.dreamz-theme.woocommerce-cart div.summary,
html body.dreamz-theme.woocommerce-cart .storefront-full-width-content {
  float: none !important;
  width: 100% !important;
}

/* min-width: 0 auf ALLES innerhalb des Cart/Checkout-Content-Bereichs */
html body.dreamz-theme.woocommerce-cart .dreamz-page__content *,
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content * {
  min-width: 0 !important;
}
/* Zurück-Setzen für einige Formular-Elemente die volle Breite brauchen */
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content input[type="text"],
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content input[type="email"],
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content input[type="tel"],
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content input[type="password"],
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content textarea,
html body.dreamz-theme.woocommerce-checkout .dreamz-page__content select {
  min-width: 100px !important;
  width: 100% !important;
}

/* Definitiv verhindern dass irgendein Element sich vertikal Buchstabe-für-Buchstabe umbricht */
html body.dreamz-theme.woocommerce-cart .cart-row,
html body.dreamz-theme.woocommerce-cart .cart-row *,
html body.dreamz-theme.woocommerce-cart .cart-items,
html body.dreamz-theme.woocommerce-cart .cart-summary,
html body.dreamz-theme.woocommerce-cart .cart-summary *,
html body.dreamz-theme.woocommerce-checkout #customer_details,
html body.dreamz-theme.woocommerce-checkout #customer_details *,
html body.dreamz-theme.woocommerce-checkout #order_review,
html body.dreamz-theme.woocommerce-checkout #order_review * {
  writing-mode: horizontal-tb !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
  hyphens: manual !important;
}
/* Ausnahmen: Buttons und Placeholder sollen nowrap sein */
html body.dreamz-theme .cart-row__remove,
html body.dreamz-theme .cart-summary a.checkout-button,
html body.dreamz-theme #place_order,
html body.dreamz-theme button[name="apply_coupon"],
html body.dreamz-theme button[name="update_cart"] {
  white-space: nowrap !important;
}

/* Widget-Area / Secondary auch bei allgemeinen Seiten für WooCommerce-Content weg */
html body.dreamz-theme .dreamz-page--wc + aside,
html body.dreamz-theme .dreamz-page--wc ~ #secondary {
  display: none !important;
}

/* Grid der Cart-Row falls doch versagt: als Flex-Fallback */
@supports not (display: grid) {
  html body.dreamz-theme .cart-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
  }
}


/* =========================================================================
   YITH WOOCOMMERCE WISHLIST — Dark-Theme + Layout-Fix
   ========================================================================= */

/* "My wishlist"-Title (h2 vom Shortcode) verstecken — Titel steht schon oben */
html body.dreamz-theme .wishlist-title,
html body.dreamz-theme h2.wishlist-title,
html body.dreamz-theme .yith-wcwl-wishlist-heading {
  display: none !important;
}

/* Konto-Content-Bereich: volle Breite bei Wunschliste (YITH begrenzt sonst) */
html body.dreamz-theme .woocommerce-MyAccount-content,
html body.dreamz-theme .woocommerce-MyAccount-content > *,
html body.dreamz-theme .woocommerce-MyAccount-content > .yith-wcwl-wishlist-container,
html body.dreamz-theme .woocommerce-MyAccount-content > .yith-wcwl-form,
html body.dreamz-theme .woocommerce-MyAccount-content #yith-wcwl-form,
html body.dreamz-theme .woocommerce-MyAccount-content .wishlist_table_container,
html body.dreamz-theme .woocommerce-MyAccount-content .hidden-title-form,
html body.dreamz-theme .woocommerce-MyAccount-content .yith-wcwl-wishlist-new,
html body.dreamz-theme .woocommerce-MyAccount-content .wishlist-title-container,
html body.dreamz-theme .woocommerce-MyAccount-content .wishlist-title,
html body.dreamz-theme .woocommerce-MyAccount-content .yith-wcwl-wishlist-search-form,
html body.dreamz-theme .woocommerce-MyAccount-content .wishlist_manage_table,
html body.dreamz-theme .woocommerce-MyAccount-content .wishlist_manage_table_container,
html body.dreamz-theme .woocommerce-MyAccount-content .yith-wcwl-share {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* YITH Wishlist Table + alle Container am linken Rand */
html body.dreamz-theme .yith-wcwl-form,
html body.dreamz-theme #yith-wcwl-form,
html body.dreamz-theme .yith-wcwl-wishlist-container,
html body.dreamz-theme .wishlist_table_container,
html body.dreamz-theme table.wishlist_table,
html body.dreamz-theme .wishlist-table {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  transform: none !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  float: none !important;
  display: block !important;
}
html body.dreamz-theme table.wishlist_table {
  display: table !important;
}

/* YITH Responsive-Breakpoints deaktivieren — sie setzen fixed width */
html body.dreamz-theme .wishlist-table.is-medium,
html body.dreamz-theme .wishlist-table.is-small,
html body.dreamz-theme table.wishlist_table.mobile,
html body.dreamz-theme table.wishlist_table.is-medium,
html body.dreamz-theme table.wishlist_table.is-small {
  width: 100% !important;
  max-width: 100% !important;
  display: table !important;
}

/* Container zwingen: keine schmale Spalte */
html body.dreamz-theme .woocommerce-MyAccount-content .yith-wcwl-wishlist-search-form,
html body.dreamz-theme .yith-wcwl-wishlist-search-form {
  margin-bottom: 20px !important;
}

/* Der Wishlist-Wrapper — volle Breite */
html body.dreamz-theme .yith-wcwl-form,
html body.dreamz-theme #yith-wcwl-form,
html body.dreamz-theme .yith-wcwl-wishlist-container,
html body.dreamz-theme .wishlist_table,
html body.dreamz-theme table.wishlist_table {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  color: var(--fg-1) !important;
}

/* Wishlist Table */
html body.dreamz-theme table.wishlist_table {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  table-layout: auto !important;
}
html body.dreamz-theme table.wishlist_table thead {
  background: rgba(255,255,255,0.03) !important;
}
html body.dreamz-theme table.wishlist_table thead th {
  background: transparent !important;
  color: var(--fg-3) !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  padding: 14px 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  text-align: left !important;
  white-space: nowrap !important;
}
html body.dreamz-theme table.wishlist_table tbody tr {
  background: transparent !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme table.wishlist_table tbody tr:last-child {
  border-bottom: 0 !important;
}
html body.dreamz-theme table.wishlist_table td {
  padding: 20px 16px !important;
  border: 0 !important;
  color: var(--fg-1) !important;
  vertical-align: middle !important;
  background: transparent !important;
  min-width: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* Product Remove (X) — 1. Spalte */
html body.dreamz-theme table.wishlist_table td.product-remove,
html body.dreamz-theme table.wishlist_table td.product-checkbox {
  width: 44px !important;
  padding: 20px 8px !important;
  text-align: center !important;
}
html body.dreamz-theme table.wishlist_table td.product-remove a,
html body.dreamz-theme table.wishlist_table .remove_from_wishlist {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: 1px solid var(--border-hairline) !important;
  color: var(--fg-3) !important;
  font-size: 0 !important;
  text-decoration: none !important;
  position: relative !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme table.wishlist_table td.product-remove a::before,
html body.dreamz-theme table.wishlist_table .remove_from_wishlist::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 10px !important;
  height: 10px !important;
  transform: translate(-50%, -50%) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a8' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
html body.dreamz-theme table.wishlist_table td.product-remove a:hover,
html body.dreamz-theme table.wishlist_table .remove_from_wishlist:hover {
  border-color: var(--semantic-danger) !important;
  background: rgba(239, 68, 68, 0.1) !important;
}

/* Product Thumbnail — größer */
html body.dreamz-theme table.wishlist_table td.product-thumbnail {
  width: 104px !important;
  min-width: 104px !important;
  max-width: 104px !important;
  padding: 12px !important;
}
html body.dreamz-theme table.wishlist_table td.product-thumbnail a,
html body.dreamz-theme table.wishlist_table td.product-thumbnail img {
  display: block !important;
  width: 80px !important;
  height: 80px !important;
  object-fit: contain !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  padding: 6px !important;
  box-shadow: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
html body.dreamz-theme table.wishlist_table td.product-thumbnail a img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

/* Product Name */
html body.dreamz-theme table.wishlist_table td.product-name {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--fg-1) !important;
  line-height: 1.4 !important;
  min-width: 200px !important;
}
html body.dreamz-theme table.wishlist_table td.product-name a {
  color: var(--fg-1) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
html body.dreamz-theme table.wishlist_table td.product-name a:hover {
  color: var(--brand-turquoise) !important;
}

/* Price */
html body.dreamz-theme table.wishlist_table td.product-price {
  color: var(--fg-1) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}
html body.dreamz-theme table.wishlist_table td.product-price del {
  color: var(--fg-4) !important;
  font-weight: 500 !important;
  margin-right: 6px !important;
}
html body.dreamz-theme table.wishlist_table td.product-price ins {
  background: transparent !important;
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
}

/* Stock status */
html body.dreamz-theme table.wishlist_table td.product-stock-status {
  white-space: nowrap !important;
  font-size: 13px !important;
}
html body.dreamz-theme table.wishlist_table td.product-stock-status .wishlist-in-stock,
html body.dreamz-theme table.wishlist_table .yith-wcwl-stock-status.wishlist-in-stock {
  color: var(--semantic-success, #22c55e) !important;
  font-weight: 600 !important;
}
html body.dreamz-theme table.wishlist_table td.product-stock-status .wishlist-out-of-stock {
  color: var(--semantic-danger) !important;
  font-weight: 600 !important;
}

/* Add-to-Cart / Buttons in der Wishlist */
html body.dreamz-theme table.wishlist_table td.product-add-to-cart {
  text-align: right !important;
  white-space: nowrap !important;
  min-width: 140px !important;
}
html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button,
html body.dreamz-theme table.wishlist_table .add_to_cart.button,
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block a.button {
  display: inline-block !important;
  height: 40px !important;
  line-height: 40px !important;
  padding: 0 20px !important;
  background: var(--brand-turquoise) !important;
  color: var(--ink-void) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button:hover {
  background: var(--brand-turquoise-hover) !important;
  box-shadow: var(--shadow-glow) !important;
}

/* Kein-Content-State (leere Wishlist) */
html body.dreamz-theme .wishlist-empty,
html body.dreamz-theme .yith-wcwl-empty-wishlist {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 40px 24px !important;
  text-align: center !important;
  color: var(--fg-2) !important;
  font-size: 15px !important;
}

/* "Teile auf:"-Section (Social Sharing) — versteckt */
html body.dreamz-theme .yith-wcwl-share,
html body.dreamz-theme .wishlist-title-container + .yith-wcwl-share,
html body.dreamz-theme #yith-wcwl-share {
  display: none !important;
}

/* Falls doch angezeigt: Social-Buttons dezenter */
html body.dreamz-theme .yith-wcwl-share ul {
  display: flex !important;
  gap: 8px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 20px 0 0 !important;
}
html body.dreamz-theme .yith-wcwl-share ul li {
  margin: 0 !important;
}
html body.dreamz-theme .yith-wcwl-share ul li a {
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: 50% !important;
  color: var(--fg-2) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme .yith-wcwl-share ul li a:hover {
  color: var(--brand-turquoise) !important;
  border-color: var(--brand-turquoise) !important;
}

/* Table Actions (Bottom Bar mit Buttons wie "Update wishlist") */
html body.dreamz-theme table.wishlist_table tfoot td {
  padding: 16px !important;
  background: rgba(255,255,255,0.02) !important;
  border-top: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme table.wishlist_table tfoot .yith-wcwl-button-row {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}
html body.dreamz-theme table.wishlist_table tfoot button,
html body.dreamz-theme table.wishlist_table tfoot .button {
  height: 38px !important;
  padding: 0 16px !important;
  background: transparent !important;
  color: var(--fg-2) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme table.wishlist_table tfoot button:hover {
  border-color: var(--brand-turquoise) !important;
  color: var(--brand-turquoise) !important;
}

/* Responsive — Mobile Wishlist */
@media (max-width: 767px) {
  html body.dreamz-theme table.wishlist_table {
    display: block !important;
  }
  html body.dreamz-theme table.wishlist_table thead {
    display: none !important;
  }
  html body.dreamz-theme table.wishlist_table tbody,
  html body.dreamz-theme table.wishlist_table tr {
    display: block !important;
    width: 100% !important;
  }
  html body.dreamz-theme table.wishlist_table tr {
    display: grid !important;
    grid-template-columns: 72px 1fr auto !important;
    grid-template-rows: auto auto auto !important;
    gap: 8px 12px !important;
    padding: 16px !important;
    border-bottom: 1px solid var(--border-hairline) !important;
  }
  html body.dreamz-theme table.wishlist_table td {
    display: block !important;
    padding: 0 !important;
    width: auto !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-price {
    grid-column: 2 !important;
    grid-row: 2 !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-remove {
    grid-column: 3 !important;
    grid-row: 1 !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-stock-status {
    display: none !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-add-to-cart {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    margin-top: 8px !important;
    text-align: left !important;
  }
  html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button {
    width: 100% !important;
    text-align: center !important;
  }
}


/* =========================================================================
   BUTTON GRADIENT — dunkel → hell, edler statt grell
   Gilt für ALLE Buttons mit Türkis-Hintergrund
   ========================================================================= */

/* Sammel-Regel: Alle bekannten Primär-Button-Klassen */
html body.dreamz-theme .dreamz-btn--primary,
html body.dreamz-theme a.dreamz-btn--primary,
html body.dreamz-theme .dreamz-btn.dreamz-btn--primary,
html body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button,
html body.dreamz-theme a.checkout-button,
html body.dreamz-theme .checkout-button,
html body.dreamz-theme #place_order,
html body.dreamz-theme button#place_order,
html body.dreamz-theme .woocommerce-checkout #place_order,
html body.dreamz-theme .single_add_to_cart_button,
html body.dreamz-theme button.single_add_to_cart_button,
html body.dreamz-theme .cart-coupon button,
html body.dreamz-theme .coupon button,
html body.dreamz-theme td.actions button[name="apply_coupon"],
html body.dreamz-theme .dreamz-search-form__submit,
html body.dreamz-theme .dreamz-newsletter-btn,
html body.dreamz-theme .dreamz-footer__newsletter button,
html body.dreamz-theme .dreamz-newsletter-form button,
html body.dreamz-theme .return-to-shop a.wc-backward,
html body.dreamz-theme a.button.wc-backward,
html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button,
html body.dreamz-theme table.wishlist_table .add_to_cart.button,
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block a.button,
html body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator button,
html body.dreamz-theme .dreamz-card__addbtn,
html body.dreamz-theme button[name="apply_coupon"],
html body.dreamz-theme .yith-wcwl-add-to-wishlist-button,
html body.dreamz-theme .cart-actions .cart-coupon button,
/* WooCommerce-generische Buttons */
html body.dreamz-theme .woocommerce a.button.alt,
html body.dreamz-theme .woocommerce button.button.alt,
html body.dreamz-theme .woocommerce input.button.alt,
html body.dreamz-theme .woocommerce-page a.button.alt,
html body.dreamz-theme .woocommerce-page button.button.alt,
html body.dreamz-theme .woocommerce-page input.button.alt,
/* Konto-Bereich Buttons */
html body.dreamz-theme .woocommerce-MyAccount-content .button,
html body.dreamz-theme .woocommerce-MyAccount-content button[type="submit"],
html body.dreamz-theme .woocommerce-MyAccount-content input[type="submit"],
html body.dreamz-theme .woocommerce-MyAccount-content input[type="submit"].button,
html body.dreamz-theme .woocommerce-EditAccountForm button,
html body.dreamz-theme .woocommerce-EditAccountForm input[type="submit"],
html body.dreamz-theme .woocommerce-address-fields button,
html body.dreamz-theme .woocommerce-address-fields input[type="submit"],
/* YITH Wishlist */
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block .button,
html body.dreamz-theme .yith-wcwl-button-row a.button,
html body.dreamz-theme .yith-wcwl-button-row button,
html body.dreamz-theme .browse-wishlist,
html body.dreamz-theme a.browse-wishlist,
html body.dreamz-theme .yith-wcwl-add-button a,
/* Cart-Empty-Buttons */
html body.dreamz-theme .cart-empty ~ .return-to-shop a,
/* Newsletter */
html body.dreamz-theme button.dreamz-newsletter-submit,
html body.dreamz-theme input.dreamz-newsletter-submit {
  background: var(--btn-gradient) !important;
  background-color: transparent !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: var(--btn-gradient-shadow) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.15) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme .dreamz-btn--primary:hover,
html body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button:hover,
html body.dreamz-theme a.checkout-button:hover,
html body.dreamz-theme #place_order:hover,
html body.dreamz-theme .single_add_to_cart_button:hover,
html body.dreamz-theme .cart-coupon button:hover,
html body.dreamz-theme .coupon button:hover,
html body.dreamz-theme td.actions button[name="apply_coupon"]:hover,
html body.dreamz-theme .dreamz-search-form__submit:hover,
html body.dreamz-theme .dreamz-footer__newsletter button:hover,
html body.dreamz-theme .dreamz-newsletter-form button:hover,
html body.dreamz-theme a.button.wc-backward:hover,
html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button:hover,
html body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator button:hover,
html body.dreamz-theme .dreamz-card__addbtn:hover,
html body.dreamz-theme button[name="apply_coupon"]:hover,
html body.dreamz-theme .woocommerce a.button.alt:hover,
html body.dreamz-theme .woocommerce button.button.alt:hover,
html body.dreamz-theme .woocommerce input.button.alt:hover,
html body.dreamz-theme .woocommerce-MyAccount-content .button:hover,
html body.dreamz-theme .woocommerce-MyAccount-content button[type="submit"]:hover,
html body.dreamz-theme .woocommerce-MyAccount-content input[type="submit"]:hover,
html body.dreamz-theme .yith-wcwl-button-row a.button:hover,
html body.dreamz-theme .browse-wishlist:hover {
  background: var(--btn-gradient-hover) !important;
  box-shadow: var(--btn-gradient-shadow-hover) !important;
  transform: translateY(-1px) !important;
  color: #ffffff !important;
}
html body.dreamz-theme .dreamz-btn--primary:active,
html body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button:active,
html body.dreamz-theme #place_order:active,
html body.dreamz-theme .single_add_to_cart_button:active,
html body.dreamz-theme .woocommerce-MyAccount-content .button:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 6px rgba(0, 168, 156, 0.2), inset 0 1px 2px rgba(0,0,0,0.15) !important;
}

/* =========================================================================
   ADRESS-BEARBEITEN-ICON: leere Türkis-Quadrate mit Icon + Text ergänzen
   ========================================================================= */
html body.dreamz-theme .woocommerce-Address-title a,
html body.dreamz-theme .woocommerce-Address-title .edit {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--btn-gradient) !important;
  color: #ffffff !important;
  padding: 8px 16px !important;
  height: 36px !important;
  border-radius: var(--radius-md) !important;
  border: 0 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: var(--btn-gradient-shadow) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.15) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  white-space: nowrap !important;
  width: auto !important;
  min-width: 100px !important;
}
/* v1.5.36: Echten Text zeigen (nicht mehr via ::after — Weglot übersetzt sonst nicht).
   SVG-Icon nur als ::before, Text bleibt der echte WooCommerce-Text. */
html body.dreamz-theme .woocommerce-Address-title a::before,
html body.dreamz-theme .woocommerce-Address-title .edit::before {
  content: '' !important;
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  flex-shrink: 0 !important;
}
/* Text wird nicht mehr versteckt — bleibt sichtbar in DE + EN (Weglot) */
html body.dreamz-theme .woocommerce-Address-title a:hover,
html body.dreamz-theme .woocommerce-Address-title .edit:hover {
  background: var(--btn-gradient-hover) !important;
  box-shadow: var(--btn-gradient-shadow-hover) !important;
  transform: translateY(-1px) !important;
}

/* Adress-Titel-Wrapper — Titel und Button nebeneinander */
html body.dreamz-theme .woocommerce-Address-title,
html body.dreamz-theme header.woocommerce-Address-title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 12px !important;
}
html body.dreamz-theme .woocommerce-Address-title h2,
html body.dreamz-theme .woocommerce-Address-title h3 {
  margin: 0 !important;
  color: var(--fg-1) !important;
  opacity: 1 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

/* Adresse selbst — richtige Farbe */
html body.dreamz-theme .woocommerce-Address address,
html body.dreamz-theme .woocommerce-address address {
  color: var(--fg-2) !important;
  font-style: normal !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  padding: 16px 20px !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  margin-top: 8px !important;
}

/* =========================================================================
   PASSWORT-SHOW-BUTTONS: WooCommerce injiziert kleine Toggle-Buttons
   für Password-Sichtbarkeit. Icon + Position richten.
   ========================================================================= */
html body.dreamz-theme .show-password-input,
html body.dreamz-theme .woocommerce-form-row .show-password-input,
html body.dreamz-theme span.show-password-input {
  position: absolute !important;
  top: 50% !important;
  right: 12px !important;
  transform: translateY(-50%) !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  color: transparent !important;
  font-size: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.dreamz-theme .show-password-input::before,
html body.dreamz-theme .woocommerce-form-row .show-password-input::before {
  content: '' !important;
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314C4B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
html body.dreamz-theme .show-password-input.display-password::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314C4B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-10-7-10-7a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 10 7 10 7a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='2' y1='2' x2='22' y2='22'/%3E%3C/svg%3E") !important;
}
html body.dreamz-theme .show-password-input:hover::before {
  opacity: 0.8 !important;
}
/* Position: password-input-Wrapper braucht relative */
html body.dreamz-theme .password-input,
html body.dreamz-theme .woocommerce-form-row .password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

/* =========================================================================
   YITH "Browse wishlist" Button → Deutsche Beschriftung + Icon
   ========================================================================= */
html body.dreamz-theme .yith-wcwl-add-to-wishlist a.feedback,
html body.dreamz-theme .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse,
html body.dreamz-theme a.browse-wishlist,
html body.dreamz-theme .browse-wishlist {
  font-size: 0 !important;
  color: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 14px !important;
  height: 36px !important;
  border-radius: var(--radius-md) !important;
}
html body.dreamz-theme a.browse-wishlist::before,
html body.dreamz-theme .browse-wishlist::before,
html body.dreamz-theme .yith-wcwl-wishlistexistsbrowse a::before {
  content: '' !important;
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff' stroke='%23ffffff' stroke-width='1.5'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  flex-shrink: 0 !important;
}
html body.dreamz-theme a.browse-wishlist::after,
html body.dreamz-theme .browse-wishlist::after,
html body.dreamz-theme .yith-wcwl-wishlistexistsbrowse a::after {
  content: 'Wunschliste anzeigen' !important;
  font-size: 12px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* YITH "Add to Cart" auf Wunschliste — deutsche Beschriftung */
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block a.button,
html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button {
  font-size: 0 !important;
  color: transparent !important;
}
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block a.button::before,
html body.dreamz-theme table.wishlist_table td.product-add-to-cart a.button::before {
  content: 'In den Warenkorb' !important;
  font-size: 12px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Türkis-Preise & Türkis-Text (nicht Buttons) BLEIBEN einfarbig — Farbe leicht abgedunkelt */
html body.dreamz-theme .cart-row__price,
html body.dreamz-theme .cart-row__price ins,
html body.dreamz-theme .cart-summary__total,
html body.dreamz-theme .cart-summary__row--total > span:last-child,
html body.dreamz-theme .price ins,
html body.dreamz-theme .product-detail__price ins,
html body.dreamz-theme .woocommerce-Price-amount.amount {
  color: #14C4B6 !important;
}

/* Türkis-Links (Adresse ändern etc.) — mittleres Türkis für Kontrast */
html body.dreamz-theme .cart-summary__shipping-edit,
html body.dreamz-theme .woocommerce-info a,
html body.dreamz-theme .showcoupon,
html body.dreamz-theme .shipping-calculator-button {
  color: #14C4B6 !important;
}
html body.dreamz-theme .cart-summary__shipping-edit:hover,
html body.dreamz-theme .woocommerce-info a:hover {
  color: #29D9CB !important;
}

/* Sekundäre Icon-Buttons (Wishlist-Herz in Product-Cards etc.) leicht abgedunkelt */
html body.dreamz-theme .dreamz-card__wishlist:hover {
  color: #14C4B6 !important;
}


/* =========================================================================
   ORDER RECEIVED / THANKYOU PAGE — Danke-Seite nach Bestellung
   ========================================================================= */

/* Body-Class ist "woocommerce-order-received" */
html body.dreamz-theme.woocommerce-order-received .dreamz-page__content,
html body.dreamz-theme.woocommerce-checkout .woocommerce-order {
  color: var(--fg-1) !important;
}

/* "Vielen Dank"-Info-Bar */
html body.dreamz-theme.woocommerce-order-received .woocommerce-notice,
html body.dreamz-theme.woocommerce-order-received .woocommerce-thankyou-order-received {
  background: rgba(45, 212, 191, 0.05) !important;
  border: 1px solid rgba(45, 212, 191, 0.3) !important;
  border-left: 3px solid var(--brand-turquoise) !important;
  border-radius: var(--radius-md) !important;
  padding: 16px 20px !important;
  color: var(--fg-1) !important;
  font-size: 15px !important;
  margin-bottom: 32px !important;
}

/* Bestellinfo-Liste (Bestellnummer, Datum, E-Mail, Gesamt, Zahlung) */
html body.dreamz-theme.woocommerce-order-received ul.woocommerce-order-overview,
html body.dreamz-theme.woocommerce-order-received ul.order_details {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  list-style: none !important;
  padding: 24px !important;
  margin: 0 0 40px !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
}
html body.dreamz-theme.woocommerce-order-received ul.woocommerce-order-overview li,
html body.dreamz-theme.woocommerce-order-received ul.order_details li {
  flex: 1 1 auto !important;
  min-width: 180px !important;
  padding: 8px 16px !important;
  margin: 0 !important;
  border: 0 !important;
  border-right: 1px solid var(--border-hairline) !important;
  list-style: none !important;
  color: var(--fg-3) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}
html body.dreamz-theme.woocommerce-order-received ul.woocommerce-order-overview li:last-child,
html body.dreamz-theme.woocommerce-order-received ul.order_details li:last-child {
  border-right: 0 !important;
}
html body.dreamz-theme.woocommerce-order-received ul.woocommerce-order-overview li strong,
html body.dreamz-theme.woocommerce-order-received ul.order_details li strong {
  color: var(--fg-1) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  display: block !important;
}
/* Gesamtsumme in Türkis hervorgehoben */
html body.dreamz-theme.woocommerce-order-received ul.order_details li.total strong,
html body.dreamz-theme.woocommerce-order-received ul.order_details li.woocommerce-order-overview__total strong {
  color: var(--brand-turquoise) !important;
  font-size: 18px !important;
}

/* Section-Überschriften (Bankverbindung, Bestelldetails, Rechnungsadresse, Lieferadresse) */
html body.dreamz-theme.woocommerce-order-received h2,
html body.dreamz-theme.woocommerce-order-received h3,
html body.dreamz-theme.woocommerce-order-received .woocommerce-column__title,
html body.dreamz-theme.woocommerce-order-received .woocommerce-order-details__title,
html body.dreamz-theme.woocommerce-order-received .woocommerce-bacs-bank-details-heading {
  color: var(--fg-1) !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-family: var(--font-display) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  margin: 32px 0 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}

/* Bankverbindungs-Bereich (BACS) */
html body.dreamz-theme.woocommerce-order-received .woocommerce-bacs-bank-details,
html body.dreamz-theme.woocommerce-order-received .wc-bacs-bank-details {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 20px 24px !important;
  margin-bottom: 32px !important;
}
html body.dreamz-theme.woocommerce-order-received .wc-bacs-bank-details-account-name,
html body.dreamz-theme.woocommerce-order-received h3.wc-bacs-bank-details-account-name {
  color: var(--fg-1) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme.woocommerce-order-received .wc-bacs-bank-details-heading {
  margin-top: 0 !important;
}
html body.dreamz-theme.woocommerce-order-received .wc-bacs-bank-details-account,
html body.dreamz-theme.woocommerce-order-received ul.wc-bacs-bank-details {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.dreamz-theme.woocommerce-order-received .wc-bacs-bank-details-account li,
html body.dreamz-theme.woocommerce-order-received ul.wc-bacs-bank-details li {
  padding: 6px 0 !important;
  list-style: none !important;
  color: var(--fg-2) !important;
  font-size: 14px !important;
  border: 0 !important;
}
html body.dreamz-theme.woocommerce-order-received .wc-bacs-bank-details-account li strong,
html body.dreamz-theme.woocommerce-order-received ul.wc-bacs-bank-details li strong {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  margin-left: 6px !important;
}

/* Bestelldetails-Tabelle — das ist die weiße Fläche im Screenshot! */
html body.dreamz-theme.woocommerce-order-received .woocommerce-order-details,
html body.dreamz-theme.woocommerce-order-received section.woocommerce-order-details {
  margin-bottom: 40px !important;
}
html body.dreamz-theme.woocommerce-order-received table.shop_table.order_details,
html body.dreamz-theme.woocommerce-order-received .woocommerce-order-details table.shop_table {
  width: 100% !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  color: var(--fg-1) !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details thead {
  background: rgba(255,255,255,0.03) !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details thead th {
  background: transparent !important;
  color: var(--fg-3) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 14px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  text-align: left !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tbody tr {
  background: transparent !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td {
  background: transparent !important;
  color: var(--fg-1) !important;
  padding: 14px 20px !important;
  border: 0 !important;
  font-size: 14px !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td.product-name,
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td .wc-item-meta {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td a {
  color: var(--fg-1) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td a:hover {
  color: var(--brand-turquoise) !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td.product-total,
html body.dreamz-theme.woocommerce-order-received table.order_details tbody td.product-subtotal {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}

/* Footer der Order-Details-Tabelle (Zwischensumme / Versand / MwSt. / Gesamt / Zahlungsart) */
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr {
  background: transparent !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr:last-child {
  border-bottom: 0 !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot th,
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot td {
  background: transparent !important;
  padding: 12px 20px !important;
  border: 0 !important;
  font-size: 14px !important;
  vertical-align: top !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot th {
  color: var(--fg-3) !important;
  font-weight: 500 !important;
  text-align: left !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot td {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}
/* Gesamtsumme fett in Türkis */
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr.order-total th,
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr:has(.order-total) th {
  color: var(--fg-1) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr.order-total td,
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr:has(.order-total) td {
  color: #14C4B6 !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--border-hairline) !important;
}

/* Zahlungsart-Zeile: dezenter Türkis-Ton statt grelles Neon */
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr.payment-method td,
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot .method,
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot tr.payment-method td,
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot .method,
html body.dreamz-theme .woocommerce-MyAccount-content table.order_details tfoot tr.payment-method td,
html body.dreamz-theme .woocommerce-MyAccount-content table.order_details tfoot .method {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot small.includes_tax {
  color: var(--fg-4) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  display: block !important;
  margin-top: 4px !important;
}

/* Adress-Bereich (Rechnungs- / Lieferadresse) */
html body.dreamz-theme.woocommerce-order-received .woocommerce-customer-details {
  margin-top: 40px !important;
}
html body.dreamz-theme.woocommerce-order-received .woocommerce-customer-details .col2-set {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 32px !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media (max-width: 767px) {
  html body.dreamz-theme.woocommerce-order-received .woocommerce-customer-details .col2-set {
    grid-template-columns: 1fr !important;
  }
}
html body.dreamz-theme.woocommerce-order-received .woocommerce-customer-details .col-1,
html body.dreamz-theme.woocommerce-order-received .woocommerce-customer-details .col-2,
html body.dreamz-theme.woocommerce-order-received .woocommerce-columns .col-1,
html body.dreamz-theme.woocommerce-order-received .woocommerce-columns .col-2 {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
}
html body.dreamz-theme.woocommerce-order-received address,
html body.dreamz-theme.woocommerce-order-received .woocommerce-customer-details address {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 20px 24px !important;
  color: var(--fg-2) !important;
  font-style: normal !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin: 0 !important;
}
html body.dreamz-theme.woocommerce-order-received address p {
  margin: 4px 0 !important;
}
html body.dreamz-theme.woocommerce-order-received address .woocommerce-customer-details--phone,
html body.dreamz-theme.woocommerce-order-received address .woocommerce-customer-details--email {
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  display: block !important;
  margin-top: 6px !important;
}

/* Responsive Bestellinfo-Liste auf Mobile */
@media (max-width: 767px) {
  html body.dreamz-theme.woocommerce-order-received ul.order_details {
    flex-direction: column !important;
    padding: 8px !important;
  }
  html body.dreamz-theme.woocommerce-order-received ul.order_details li {
    border-right: 0 !important;
    border-bottom: 1px solid var(--border-hairline) !important;
    padding: 12px !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
  }
  html body.dreamz-theme.woocommerce-order-received ul.order_details li:last-child {
    border-bottom: 0 !important;
  }
}

/* "via Versand"-Suffix in Order-Details-Tabelle verstecken */
html body.dreamz-theme.woocommerce-order-received table.order_details tfoot tr.shipping td small.shipped_via,
html body.dreamz-theme.woocommerce-order-received table.order_details .shipped_via,
html body.dreamz-theme.woocommerce-view-order .shipped_via,
html body.dreamz-theme.woocommerce-account .shipped_via {
  display: none !important;
}

/* =========================================================================
   MY ACCOUNT → BESTELLUNGEN — Tabelle im Dark-Look
   ========================================================================= */
html body.dreamz-theme.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table,
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table,
html body.dreamz-theme .woocommerce-MyAccount-content table.shop_table {
  width: 100% !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  color: var(--fg-1) !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders thead,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table thead {
  background: rgba(255,255,255,0.03) !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders thead th,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table thead th {
  background: transparent !important;
  color: var(--fg-3) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  text-align: left !important;
  white-space: nowrap !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders tbody tr,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table tbody tr {
  background: transparent !important;
  border-bottom: 1px solid var(--border-hairline) !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders tbody tr:last-child,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table tbody tr:last-child {
  border-bottom: 0 !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders tbody td,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table tbody td {
  background: transparent !important;
  color: var(--fg-1) !important;
  padding: 16px !important;
  border: 0 !important;
  font-size: 14px !important;
  vertical-align: middle !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders tbody td a,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table tbody td a {
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders tbody td a:hover,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table tbody td a:hover {
  color: var(--brand-turquoise-hover) !important;
  text-decoration: underline !important;
}
/* Bestellnummer */
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders td.order-number,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-number {
  font-weight: 700 !important;
}
/* Status als Pill/Chip */
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders td.order-status,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-status {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
}
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders td.order-status mark,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-status mark {
  display: inline-block !important;
  padding: 4px 12px !important;
  border-radius: var(--radius-pill) !important;
  background: rgba(45, 212, 191, 0.15) !important;
  color: var(--brand-turquoise) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}
/* Total-Spalte tabular */
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders td.order-total,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-total {
  font-weight: 600 !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}
/* "Anzeigen"/"Ansehen"-Button in Actions-Spalte */
html body.dreamz-theme .woocommerce-MyAccount-content table.my_account_orders td.order-actions .button,
html body.dreamz-theme .woocommerce-MyAccount-content table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button {
  display: inline-block !important;
  padding: 6px 14px !important;
  height: auto !important;
  min-height: 32px !important;
  background: var(--btn-gradient) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: var(--btn-gradient-shadow) !important;
}

/* Bestellungen-Übersicht Detail-View — ähnlich Danke-Seite */
html body.dreamz-theme.woocommerce-view-order .woocommerce-order,
html body.dreamz-theme .woocommerce-MyAccount-content .woocommerce-order {
  color: var(--fg-1) !important;
}

/* Status-Zeile "Bestellung #... vom... ist aktuell in Wartestellung." */
html body.dreamz-theme.woocommerce-view-order .woocommerce-order p:first-of-type,
html body.dreamz-theme .woocommerce-MyAccount-content .woocommerce-order > p:first-of-type,
html body.dreamz-theme.woocommerce-view-order p.order-again + p,
html body.dreamz-theme.woocommerce-view-order .woocommerce-order p.order-info,
html body.dreamz-theme.woocommerce-view-order .woocommerce-order-details__title + p,
html body.dreamz-theme.woocommerce-view-order p:has(mark) {
  background: rgba(45, 212, 191, 0.05) !important;
  border: 1px solid rgba(45, 212, 191, 0.3) !important;
  border-left: 3px solid var(--brand-turquoise) !important;
  border-radius: var(--radius-md) !important;
  padding: 16px 20px !important;
  color: var(--fg-1) !important;
  font-size: 15px !important;
  margin: 0 0 32px !important;
  line-height: 1.5 !important;
}
html body.dreamz-theme.woocommerce-view-order .woocommerce-order p:first-of-type mark,
html body.dreamz-theme.woocommerce-view-order p mark {
  background: transparent !important;
  color: var(--brand-turquoise) !important;
  font-weight: 700 !important;
  padding: 0 !important;
}
html body.dreamz-theme.woocommerce-view-order table.shop_table.order_details,
html body.dreamz-theme .woocommerce-MyAccount-content .woocommerce-order-details table.shop_table {
  width: 100% !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  color: var(--fg-1) !important;
}
html body.dreamz-theme.woocommerce-view-order table.order_details thead th,
html body.dreamz-theme .woocommerce-MyAccount-content .woocommerce-order-details table.shop_table thead th {
  background: rgba(255,255,255,0.03) !important;
  color: var(--fg-3) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 14px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  text-align: left !important;
}
html body.dreamz-theme.woocommerce-view-order table.order_details tbody td,
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot th,
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot td,
html body.dreamz-theme .woocommerce-MyAccount-content .woocommerce-order-details table.shop_table td,
html body.dreamz-theme .woocommerce-MyAccount-content .woocommerce-order-details table.shop_table th {
  background: transparent !important;
  color: var(--fg-1) !important;
  padding: 12px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  font-size: 14px !important;
}
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot th {
  color: var(--fg-3) !important;
  font-weight: 500 !important;
  text-align: left !important;
}
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot td {
  text-align: right !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}
/* NICHT alle letzten Zellen türkis machen — nur die echte order-total-Zeile */
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot tr.order-total td,
html body.dreamz-theme .woocommerce-MyAccount-content table.order_details tfoot tr.order-total td {
  color: #14C4B6 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}
/* Zahlungsart in Detail-View: normal weiß, nicht türkis */
html body.dreamz-theme.woocommerce-view-order table.order_details tfoot tr.payment-method td,
html body.dreamz-theme .woocommerce-MyAccount-content table.order_details tfoot tr.payment-method td {
  color: var(--fg-1) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}

/* Section-Überschriften in Konto-Bereich */
html body.dreamz-theme .woocommerce-MyAccount-content h2,
html body.dreamz-theme .woocommerce-MyAccount-content h3,
html body.dreamz-theme.woocommerce-view-order .woocommerce-column__title,
html body.dreamz-theme .woocommerce-order-details h2 {
  color: var(--fg-1) !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-family: var(--font-display) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  margin: 24px 0 16px !important;
  letter-spacing: -0.01em !important;
}

/* "Keine Bestellungen"-Notice */
html body.dreamz-theme .woocommerce-MyAccount-orders + .woocommerce-Message,
html body.dreamz-theme .woocommerce-info.woocommerce-no-orders {
  background: rgba(45, 212, 191, 0.05) !important;
  border: 1px solid rgba(45, 212, 191, 0.3) !important;
  border-left: 3px solid var(--brand-turquoise) !important;
  border-radius: var(--radius-md) !important;
  padding: 16px 20px !important;
  color: var(--fg-1) !important;
}


/* =========================================================================
   LOGIN / REGISTER FORMULARE — Mein Konto
   ========================================================================= */

/* Section-Überschriften "Anmelden" / "Registrieren" — waren viel zu blass */
html body.dreamz-theme .u-column1 > h2,
html body.dreamz-theme .u-column2 > h2,
html body.dreamz-theme .woocommerce-form-login + p,
html body.dreamz-theme form.woocommerce-form-login-heading,
html body.dreamz-theme .woocommerce-columns--login h2,
html body.dreamz-theme .woocommerce-columns--register h2,
html body.dreamz-theme .woocommerce-account-fields h2,
html body.dreamz-theme .woocommerce h2.woocommerce-register-heading {
  color: var(--fg-1) !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-family: var(--font-display) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 20px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--border-hairline) !important;
  text-shadow: none !important;
}

/* Login/Register Layout — auf Konto-Seite 2 Spalten */
html body.dreamz-theme.woocommerce-account:not(.logged-in) .woocommerce {
  display: grid !important;
  grid-template-columns: 1fr !important;
  max-width: 480px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  gap: 32px !important;
}
html body.dreamz-theme.woocommerce-account:not(.logged-in) .u-columns {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 32px !important;
  width: 100% !important;
  max-width: 480px !important;
  margin: 0 auto !important;
}
html body.dreamz-theme.woocommerce-account:not(.logged-in) .u-column1,
html body.dreamz-theme.woocommerce-account:not(.logged-in) .u-column2 {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Form-Wrapper — als Card */
html body.dreamz-theme form.woocommerce-form-login,
html body.dreamz-theme form.woocommerce-form-register,
html body.dreamz-theme form.woocommerce-ResetPassword,
html body.dreamz-theme form.lost_reset_password {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-lg) !important;
  padding: 32px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Form-Rows */
html body.dreamz-theme .woocommerce-form-login .form-row,
html body.dreamz-theme .woocommerce-form-register .form-row {
  margin-bottom: 16px !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}

/* Input-Felder */
html body.dreamz-theme .woocommerce-form-login input[type="text"],
html body.dreamz-theme .woocommerce-form-login input[type="email"],
html body.dreamz-theme .woocommerce-form-login input[type="password"],
html body.dreamz-theme .woocommerce-form-register input[type="text"],
html body.dreamz-theme .woocommerce-form-register input[type="email"],
html body.dreamz-theme .woocommerce-form-register input[type="password"],
html body.dreamz-theme .woocommerce-ResetPassword input[type="text"] {
  width: 100% !important;
  height: 46px !important;
  padding: 0 16px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: var(--radius-md) !important;
  color: var(--fg-1) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  transition: border-color var(--dur-base) var(--ease-out) !important;
  box-sizing: border-box !important;
}
html body.dreamz-theme .woocommerce-form-login input:focus,
html body.dreamz-theme .woocommerce-form-register input:focus {
  outline: none !important;
  border-color: var(--brand-turquoise) !important;
  box-shadow: 0 0 0 3px var(--brand-turquoise-glow) !important;
}

/* Labels */
html body.dreamz-theme .woocommerce-form-login label:not(.woocommerce-form-login__rememberme):not(.woocommerce-form__label-for-checkbox),
html body.dreamz-theme .woocommerce-form-register label:not(.woocommerce-form__label-for-checkbox) {
  display: block !important;
  color: var(--fg-2) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Info-Text nach dem E-Mail-Feld */
html body.dreamz-theme .woocommerce-form-register em,
html body.dreamz-theme .woocommerce-form-register .woocommerce-privacy-policy-text,
html body.dreamz-theme .woocommerce-form-register p:not(.form-row):not(.woocommerce-form-row) {
  color: var(--fg-3) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  margin: 12px 0 !important;
  font-style: normal !important;
}
html body.dreamz-theme .woocommerce-form-register a,
html body.dreamz-theme .woocommerce-form-login a {
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}
html body.dreamz-theme .woocommerce-form-register a:hover,
html body.dreamz-theme .woocommerce-form-login a:hover {
  color: var(--brand-turquoise-hover) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* Checkbox "Angemeldet bleiben" — Custom-Styled */
html body.dreamz-theme .woocommerce-form-login__rememberme,
html body.dreamz-theme label.woocommerce-form-login__rememberme,
html body.dreamz-theme label.woocommerce-form__label-for-checkbox,
html body.dreamz-theme .woocommerce-form__label-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
  color: var(--fg-2) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  margin: 8px 0 20px !important;
  padding: 0 !important;
  line-height: 1.4 !important;
}
html body.dreamz-theme .woocommerce-form-login__rememberme input[type="checkbox"],
html body.dreamz-theme .woocommerce-form__input-checkbox,
html body.dreamz-theme input.woocommerce-form__input-checkbox,
html body.dreamz-theme input[type="checkbox"].input-checkbox {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 18px !important;
  height: 18px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-default) !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  position: relative !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme input[type="checkbox"]:checked,
html body.dreamz-theme input.woocommerce-form__input-checkbox:checked,
html body.dreamz-theme input.input-checkbox:checked {
  background: var(--btn-gradient) !important;
  border-color: var(--brand-turquoise) !important;
}
html body.dreamz-theme input[type="checkbox"]:checked::after,
html body.dreamz-theme input.woocommerce-form__input-checkbox:checked::after,
html body.dreamz-theme input.input-checkbox:checked::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) rotate(0deg) !important;
  width: 10px !important;
  height: 10px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
html body.dreamz-theme input[type="checkbox"]:focus,
html body.dreamz-theme input.woocommerce-form__input-checkbox:focus {
  outline: none !important;
  box-shadow: 0 0 0 3px var(--brand-turquoise-glow) !important;
}

/* Buttons in Login/Register */
html body.dreamz-theme .woocommerce-form-login button[type="submit"],
html body.dreamz-theme .woocommerce-form-register button[type="submit"],
html body.dreamz-theme .woocommerce-ResetPassword button[type="submit"],
html body.dreamz-theme button.woocommerce-form-login__submit,
html body.dreamz-theme button.woocommerce-form-register__submit,
html body.dreamz-theme button.woocommerce-Button.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 46px !important;
  padding: 0 32px !important;
  background: var(--btn-gradient) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: var(--btn-gradient-shadow) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.15) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  margin-top: 8px !important;
  width: auto !important;
  min-width: 160px !important;
}
html body.dreamz-theme .woocommerce-form-login button[type="submit"]:hover,
html body.dreamz-theme .woocommerce-form-register button[type="submit"]:hover {
  background: var(--btn-gradient-hover) !important;
  box-shadow: var(--btn-gradient-shadow-hover) !important;
  transform: translateY(-1px) !important;
}

/* "Passwort vergessen"-Link */
html body.dreamz-theme .woocommerce-LostPassword,
html body.dreamz-theme p.woocommerce-LostPassword,
html body.dreamz-theme .lost_password {
  margin-top: 16px !important;
  font-size: 13px !important;
}
html body.dreamz-theme .woocommerce-LostPassword a {
  color: var(--brand-turquoise) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

/* Passwort-Show-Auge — genauer positioniert */
html body.dreamz-theme .woocommerce-form-login .password-input,
html body.dreamz-theme .woocommerce-form-register .password-input,
html body.dreamz-theme .password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}
html body.dreamz-theme .password-input .show-password-input,
html body.dreamz-theme .show-password-input {
  position: absolute !important;
  top: 50% !important;
  right: 14px !important;
  transform: translateY(-50%) !important;
  width: 24px !important;
  height: 24px !important;
  z-index: 2 !important;
}


/* =========================================================================
   KATEGORIE / SHOP-SEITEN: Container-Padding erzwingen
   Storefront-Templates rendern .woocommerce direkt am body,
   ohne unser .dreamz-container. Wir wickeln nachträglich per CSS.
   ========================================================================= */
html body.dreamz-theme.woocommerce-shop .site-main,
html body.dreamz-theme.woocommerce-shop main,
html body.dreamz-theme.woocommerce-shop #main,
html body.dreamz-theme.woocommerce-shop #primary,
html body.dreamz-theme.tax-product_cat .site-main,
html body.dreamz-theme.tax-product_cat main,
html body.dreamz-theme.tax-product_cat #main,
html body.dreamz-theme.tax-product_cat #primary,
html body.dreamz-theme.tax-product_tag .site-main,
html body.dreamz-theme.tax-product_tag main,
html body.dreamz-theme.tax-product_tag #main,
html body.dreamz-theme.tax-product_tag #primary,
html body.dreamz-theme.post-type-archive-product .site-main,
html body.dreamz-theme.post-type-archive-product main,
html body.dreamz-theme.post-type-archive-product #main,
html body.dreamz-theme.post-type-archive-product #primary {
  max-width: var(--container-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 48px var(--gutter) 96px !important;
  box-sizing: border-box !important;
}

/* Der äußere Wrapper darf keine Extra-Padding haben */
html body.dreamz-theme.woocommerce-shop .content-area,
html body.dreamz-theme.tax-product_cat .content-area,
html body.dreamz-theme.post-type-archive-product .content-area {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

/* Kategorie-Titel + Toolbar linksbündig zum Container */
html body.dreamz-theme.woocommerce-shop .woocommerce-products-header,
html body.dreamz-theme.tax-product_cat .woocommerce-products-header {
  margin: 0 0 24px !important;
  padding: 0 0 20px !important;
  width: 100% !important;
}

/* Sekundär-Sidebar bei Kategorie-Seiten aus */
html body.dreamz-theme.woocommerce-shop #secondary,
html body.dreamz-theme.tax-product_cat #secondary,
html body.dreamz-theme.post-type-archive-product #secondary {
  display: none !important;
}

/* "Es wurden keine Produkte gefunden..."-Info-Banner in Container */
html body.dreamz-theme.woocommerce-shop .woocommerce-info,
html body.dreamz-theme.tax-product_cat .woocommerce-info {
  margin: 20px 0 !important;
}


/* =========================================================================
   CART-DROPDOWN: Grid fixen (X-Button überlappt Preis)
   ========================================================================= */

/* Erhöhe rechten Spalten-Bereich für X-Button */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li {
  grid-template-columns: 56px minmax(0, 1fr) 32px !important;
  gap: 12px !important;
  padding: 14px 0 !important;
  align-items: center !important;
}

/* Der <a> Wrapper aussen: display: contents lässt Grid direkt auf Kinder wirken */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li > a:not(.remove) {
  display: contents !important;
}

/* Bild-Zelle größer und sichtbarer */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li img {
  width: 56px !important;
  height: 56px !important;
  padding: 4px !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  object-fit: contain !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-md) !important;
  margin: 0 !important;
  float: none !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* Titel + Menge/Preis in mittlerer Spalte */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li > a:not(.remove) {
  color: var(--fg-1) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  grid-column: 2 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Menge/Preis-Zeile */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li .quantity {
  display: block !important;
  color: var(--fg-3) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  margin-top: 4px !important;
  grid-column: 2 !important;
  grid-row: auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li .quantity .amount,
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li .quantity .woocommerce-Price-amount {
  color: var(--brand-turquoise) !important;
  font-weight: 700 !important;
}

/* X-Button — klar in eigener 3. Spalte, mit Platz. Mit Text-Content "×" */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove,
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li .remove_from_cart_button,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove {
  position: static !important;
  transform: none !important;
  grid-column: 3 !important;
  grid-row: 1 / -1 !important;
  order: 3 !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  aspect-ratio: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,0.03) !important;
  color: transparent !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: 50% !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  z-index: 3 !important;
  align-self: center !important;
  justify-self: end !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: all var(--dur-base) var(--ease-out) !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}
/* Remove-Icon (::before) siehe konsolidierten Block weiter unten */

/* Dropdown etwas breiter für mehr Platz */
html body.dreamz-theme .dreamz-cart__dropdown {
  width: 400px !important;
  padding: 16px !important;
}


/* =========================================================================
   FINAL FIX: Cart-Dropdown X-Button rund + Cart-Row Grid + Menge-Buttons
   ========================================================================= */

/* X-Button im Cart-Dropdown — garantiert rund */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove,
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li .remove_from_cart_button,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove,
html body.dreamz-theme .woocommerce-mini-cart li a.remove {
  position: static !important;
  transform: none !important;
  top: auto !important;
  right: auto !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;
  aspect-ratio: 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,0.03) !important;
  color: var(--fg-3) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: 50% !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  z-index: 3 !important;
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: end !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove::before,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove::before {
  content: '' !important;
  display: block !important;
  width: 11px !important;
  height: 11px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a8' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
}
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove:hover {
  border-color: var(--semantic-danger) !important;
  background: rgba(239, 68, 68, 0.12) !important;
}
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
}

/* =========================================================================
   WARENKORB — Menge mit +/- Buttons statt nur Zahleneingabe
   ========================================================================= */

/* Der WC-Quantity-Wrapper: Grid mit [-] [Input] [+] */
html body.dreamz-theme .cart-row__qty .quantity,
html body.dreamz-theme .cart-row .quantity,
html body.dreamz-theme .woocommerce-cart .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-hairline) !important;
  border-radius: var(--radius-pill) !important;
  overflow: hidden !important;
  height: 40px !important;
  padding: 0 !important;
  position: relative !important;
}

/* Die Menge-Buttons werden per JS ergänzt — hier die Styles dafür */
html body.dreamz-theme .cart-row__qty .quantity .qty-minus,
html body.dreamz-theme .cart-row__qty .quantity .qty-plus,
html body.dreamz-theme .quantity .qty-minus,
html body.dreamz-theme .quantity .qty-plus {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 38px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--fg-2) !important;
  cursor: pointer !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  padding: 0 !important;
  transition: color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out) !important;
  user-select: none !important;
  flex-shrink: 0 !important;
}
html body.dreamz-theme .quantity .qty-minus:hover,
html body.dreamz-theme .quantity .qty-plus:hover {
  color: var(--brand-turquoise) !important;
  background: rgba(0, 209, 194, 0.08) !important;
}
html body.dreamz-theme .quantity .qty-minus:disabled,
html body.dreamz-theme .quantity .qty-plus:disabled {
  opacity: 0.3 !important;
  cursor: not-allowed !important;
}
html body.dreamz-theme .cart-row__qty .quantity input.qty,
html body.dreamz-theme .cart-row .quantity input.qty,
html body.dreamz-theme .woocommerce-cart .quantity input.qty {
  width: 44px !important;
  height: 38px !important;
  background: transparent !important;
  border: 0 !important;
  border-left: 1px solid var(--border-hairline) !important;
  border-right: 1px solid var(--border-hairline) !important;
  color: var(--fg-1) !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 0 !important;
  -moz-appearance: textfield !important;
  border-radius: 0 !important;
}
html body.dreamz-theme .quantity input.qty::-webkit-outer-spin-button,
html body.dreamz-theme .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}


/* =========================================================================
   ULTRA-FALLBACK: Cart-Dropdown X — funktioniert immer
   Nutzt statt SVG-Background den nativen "×" Text
   ========================================================================= */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove {
  /* Text-Content zurücksetzen — WooCommerce macht "×" rein */
  font-size: 0 !important;
  color: transparent !important;
  text-indent: 0 !important;
  overflow: visible !important;
  position: relative !important;
}
/* Wir überlagern den Text mit einem eigenen ::after als "×" */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove::after,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove::after {
  content: '×' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  color: var(--fg-3) !important;
  font-family: system-ui, -apple-system, sans-serif !important;
  pointer-events: none !important;
}
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove:hover::after,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove:hover::after {
  color: var(--semantic-danger) !important;
}
/* Das SVG-::before (aus dem alten Fix) doch besser verstecken — wir nutzen ::after */
html body.dreamz-theme .dreamz-cart__dropdown ul.cart_list li a.remove::before,
html body.dreamz-theme .widget_shopping_cart ul.cart_list li a.remove::before {
  display: none !important;
}

/* Das Storefront-Standard-X (Zeichen "×" im Text) ist im font-size:0 unsichtbar */


/* =========================================================================
   SALE-PREISE — Durchgestrichener Originalpreis IMMER grau,
   Aktueller Sale-Preis in Türkis. Gilt überall.
   ========================================================================= */

/* Durchgestrichener Original-Preis: grau + kleiner */
html body.dreamz-theme del,
html body.dreamz-theme del .amount,
html body.dreamz-theme del bdi,
html body.dreamz-theme del,
html body.dreamz-theme del bdi,
html body.dreamz-theme del .amount,
html body.dreamz-theme .price del,
html body.dreamz-theme .price del .amount,
html body.dreamz-theme .price del bdi,
html body.dreamz-theme .price del .woocommerce-Price-amount,
html body.dreamz-theme .woocommerce-Price-amount del,
html body.dreamz-theme .dreamz-card__price del,
html body.dreamz-theme .cart-row__price del,
html body.dreamz-theme .product-detail__price del,
html body.dreamz-theme .wc-block-cart-item__product del,
html body.dreamz-theme .wc-block-components-product-price del,
html body.dreamz-theme table.wishlist_table td.product-price del {
  color: #b8b8c0 !important;
  text-decoration: line-through !important;
  text-decoration-color: #b8b8c0 !important;
  text-decoration-thickness: 2px !important;
  font-weight: 500 !important;
  font-size: 0.92em !important;
  opacity: 1 !important;
  margin-right: 10px !important;
  vertical-align: baseline !important;
  display: inline-block !important;
  background: transparent !important;
}

/* Aktueller Preis (ins) in Tuerkis */
html body.dreamz-theme ins,
html body.dreamz-theme ins .amount,
html body.dreamz-theme ins bdi,
html body.dreamz-theme .price ins,
html body.dreamz-theme .price ins .amount,
html body.dreamz-theme .price ins bdi,
html body.dreamz-theme .price ins .woocommerce-Price-amount,
html body.dreamz-theme .dreamz-card__price ins,
html body.dreamz-theme .cart-row__price ins,
html body.dreamz-theme .product-detail__price ins,
html body.dreamz-theme .wc-block-cart-item__product ins,
html body.dreamz-theme .wc-block-components-product-price ins,
html body.dreamz-theme table.wishlist_table td.product-price ins {
  color: #14C4B6 !important;
  background: transparent !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 1em !important;
}

/* ============================================================
   Sale-Preise im WARENKORB & KASSE (groesser + heller)
   ============================================================ */
html body .woocommerce-cart del,
html body .woocommerce-cart .cart_item del,
html body .woocommerce-cart .product-price del,
html body .woocommerce-cart .product-subtotal del,
html body .woocommerce-checkout del,
html body .woocommerce-checkout .cart_item del,
html body .woocommerce-checkout .product-total del,
html body .cart_item del bdi,
html body .product-price del bdi,
html body .product-subtotal del bdi,
html body .product-total del bdi {
  color: #c8c8d0 !important;
  text-decoration: line-through !important;
  text-decoration-color: #c8c8d0 !important;
  text-decoration-thickness: 2px !important;
  font-weight: 500 !important;
  font-size: 0.95em !important;
  opacity: 1 !important;
  margin-right: 8px !important;
  display: inline-block !important;
  vertical-align: baseline !important;
}
html body .woocommerce-cart ins,
html body .woocommerce-cart .cart_item ins,
html body .woocommerce-cart .product-price ins,
html body .woocommerce-cart .product-subtotal ins,
html body .woocommerce-checkout ins,
html body .woocommerce-checkout .cart_item ins,
html body .woocommerce-checkout .product-total ins,
html body .cart_item ins bdi,
html body .product-price ins bdi,
html body .product-subtotal ins bdi,
html body .product-total ins bdi {
  color: #14C4B6 !important;
  background: transparent !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 1.05em !important;
  display: inline-block !important;
  vertical-align: baseline !important;
}

/* Mini-Cart Widget im Header-Dropdown */
html body .widget_shopping_cart del,
html body .widget_shopping_cart_content del,
html body .widget_shopping_cart_content .mini_cart_item del,
html body .widget_shopping_cart_content del bdi,
html body ul.cart_list del,
html body ul.cart_list del bdi {
  color: #c8c8d0 !important;
  text-decoration: line-through !important;
  text-decoration-color: #c8c8d0 !important;
  text-decoration-thickness: 2px !important;
  font-size: 0.92em !important;
  font-weight: 500 !important;
  opacity: 1 !important;
  margin-right: 6px !important;
  display: inline-block !important;
  vertical-align: baseline !important;
}
html body .widget_shopping_cart ins,
html body .widget_shopping_cart_content ins,
html body .widget_shopping_cart_content .mini_cart_item ins,
html body .widget_shopping_cart_content ins bdi,
html body ul.cart_list ins,
html body ul.cart_list ins bdi {
  color: #14C4B6 !important;
  background: transparent !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 1em !important;
  display: inline-block !important;
  vertical-align: baseline !important;
}

/* ============================================================
   WEGLOT 6.2 LANGUAGE SWITCHER — Dreamz Dark Theme
   ============================================================ */
html body aside.country-selector.weglot-dropdown,
html body .country-selector.weglot-dropdown {
  background: transparent !important;
}
html body .country-selector.weglot-dropdown .wgcurrent,
html body aside.weglot-dropdown label.wgcurrent {
  background: #1a1a20 !important;
  background-color: #1a1a20 !important;
  border: 1px solid #2a2a32 !important;
  border-radius: 8px !important;
  padding: 8px 32px 8px 12px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}
html body .country-selector.weglot-dropdown .wgcurrent:hover,
html body aside.weglot-dropdown label.wgcurrent:hover {
  background: #22222a !important;
  background-color: #22222a !important;
  border-color: #14C4B6 !important;
}
html body .country-selector.weglot-dropdown .wgcurrent span.wglanguage-name,
html body aside.weglot-dropdown label.wgcurrent span.wglanguage-name {
  color: #ffffff !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}
html body .country-selector.weglot-dropdown .wgcurrent:hover span.wglanguage-name {
  color: #14C4B6 !important;
}
html body .country-selector.weglot-dropdown .wgcurrent::after,
html body aside.weglot-dropdown label.wgcurrent::after {
  border-top-color: #14C4B6 !important;
  border-color: #14C4B6 transparent transparent transparent !important;
  opacity: 0.9 !important;
}
html body .country-selector.weglot-dropdown ul,
html body aside.weglot-dropdown ul {
  background: #1a1a20 !important;
  background-color: #1a1a20 !important;
  border: 1px solid #2a2a32 !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.5) !important;
  padding: 6px !important;
  margin-top: 6px !important;
  overflow: hidden !important;
  list-style: none !important;
}
html body .country-selector.weglot-dropdown ul li,
html body aside.weglot-dropdown ul li {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  margin: 2px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body .country-selector.weglot-dropdown ul li label,
html body .country-selector.weglot-dropdown ul li .wg-li,
html body aside.weglot-dropdown ul li label {
  background: transparent !important;
  background-color: transparent !important;
  color: #d0d0d8 !important;
  padding: 8px 12px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: all 0.15s ease !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
html body .country-selector.weglot-dropdown ul li label:hover,
html body .country-selector.weglot-dropdown ul li:hover label,
html body aside.weglot-dropdown ul li label:hover {
  background: rgba(20, 196, 182, 0.15) !important;
  background-color: rgba(20, 196, 182, 0.15) !important;
  color: #14C4B6 !important;
}
html body .country-selector.weglot-dropdown ul li label span.wglanguage-name,
html body aside.weglot-dropdown ul li label span.wglanguage-name {
  color: inherit !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}
html body .country-selector.weglot-dropdown ul li label:hover span.wglanguage-name {
  color: #14C4B6 !important;
}
html body .country-selector.weglot-dropdown img.weglot-flag,
html body .country-selector.weglot-dropdown img[class*="flag"],
html body aside.weglot-dropdown img[class*="flag"] {
  border-radius: 3px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.4) !important;
  width: 20px !important;
  height: auto !important;
  border: none !important;
  outline: none !important;
}



/* =========================================================================
   v1.5.34 — Einheitlicher Button-Gradient auf ALLEN Primary-Buttons
   Überschreibt alle solidfarbenen Türkis-Buttons mit dem Dreamz-Gradient
   (dunkel → hell Türkis, mit Hover-Version + Shadow).
   NICHT betroffen: Wishlist-Herz-Icon, Zoom-Trigger, Price-Slider,
                     Pagination-Zahlen (das bleibt solid — Icons/kleine UI).
   ========================================================================= */
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn,
html body.dreamz-theme .single_add_to_cart_button,
html body.dreamz-theme div.product form.cart button.single_add_to_cart_button,
html body.dreamz-theme .wc-proceed-to-checkout a.checkout-button,
html body.dreamz-theme .cart_totals .wc-proceed-to-checkout a.checkout-button,
html body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button,
html body.dreamz-theme .wp-block-woocommerce-proceed-to-checkout-block a,
html body.dreamz-theme .woocommerce-checkout #place_order,
html body.dreamz-theme td.actions button[name="update_cart"],
html body.dreamz-theme .cart-coupon button,
html body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator button,
html body.dreamz-theme a.button.wc-backward,
html body.dreamz-theme .woocommerce button.button.alt,
html body.dreamz-theme .woocommerce-page button.button,
html body.dreamz-theme button.button-primary:not(.wp-core-ui *),
html body.dreamz-theme .woocommerce-MyAccount-content .button,
html body.dreamz-theme .woocommerce-notice .button,
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block a.button,
html body.dreamz-theme table.tinvwl-table-manage-list .product-action button {
  background: var(--btn-gradient) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  box-shadow: var(--btn-gradient-shadow) !important;
  transition: all var(--dur-base) var(--ease-out) !important;
}

html body.dreamz-theme .dreamz-card .dreamz-card__addbtn:hover,
html body.dreamz-theme .dreamz-card .dreamz-card__addbtn:focus-visible,
html body.dreamz-theme .single_add_to_cart_button:hover,
html body.dreamz-theme div.product form.cart button.single_add_to_cart_button:hover,
html body.dreamz-theme .wc-proceed-to-checkout a.checkout-button:hover,
html body.dreamz-theme .cart_totals .wc-proceed-to-checkout a.checkout-button:hover,
html body.dreamz-theme .cart-summary .wc-proceed-to-checkout a.checkout-button:hover,
html body.dreamz-theme .wp-block-woocommerce-proceed-to-checkout-block a:hover,
html body.dreamz-theme .woocommerce-checkout #place_order:hover,
html body.dreamz-theme td.actions button[name="update_cart"]:hover,
html body.dreamz-theme .cart-coupon button:hover,
html body.dreamz-theme .cart-summary form.woocommerce-shipping-calculator button:hover,
html body.dreamz-theme a.button.wc-backward:hover,
html body.dreamz-theme .woocommerce button.button.alt:hover,
html body.dreamz-theme .woocommerce-page button.button:hover,
html body.dreamz-theme button.button-primary:not(.wp-core-ui *):hover,
html body.dreamz-theme .woocommerce-MyAccount-content .button:hover,
html body.dreamz-theme .woocommerce-notice .button:hover,
html body.dreamz-theme .yith-wcwl-add-to-cart-button-block a.button:hover,
html body.dreamz-theme table.tinvwl-table-manage-list .product-action button:hover {
  background: var(--btn-gradient-hover) !important;
  color: #ffffff !important;
  box-shadow: var(--btn-gradient-shadow-hover) !important;
  transform: translateY(-1px) !important;
}


/* =========================================================================
   v1.5.38 — Bewertungssterne (rating stars)
   WooCommerce nutzt eine "star"-Font die wir per dequeue rausgeschmissen haben.
   Wir bauen die Sterne stattdessen mit SVG-Backgrounds — keine Font-Abhängigkeit,
   schärfer, Dreamz-Türkis.
   Betroffen:
     .stars a               → interaktives Rating-Formular ("Deine Bewertung")
     .star-rating           → Sterne-Anzeige unter Produkt/Reviews
   ========================================================================= */

/* ---- Rating-Formular (klickbare Sterne) ---- */
html body.dreamz-theme p.stars {
  display: inline-flex !important;
  gap: 4px !important;
  margin: 8px 0 !important;
  font-size: 0 !important;  /* Fallback-Text ("1 von 5 Sternen") verstecken */
  line-height: 1 !important;
}
html body.dreamz-theme p.stars a {
  display: inline-block !important;
  width: 24px !important;
  height: 24px !important;
  color: transparent !important;
  font-size: 0 !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236a6a72' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 22px 22px !important;
  cursor: pointer !important;
  transition: all 150ms ease-out !important;
  position: relative !important;
  padding: 0 !important;
  border: 0 !important;
  text-decoration: none !important;
}
/* Hover-State: alle Sterne bis zum Cursor türkis */
html body.dreamz-theme p.stars:hover a {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2314C4B6' stroke='%2314C4B6' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26'/%3E%3C/svg%3E") !important;
}
html body.dreamz-theme p.stars:hover a:hover ~ a {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236a6a72' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26'/%3E%3C/svg%3E") !important;
}
/* Ausgewählter State: alle Sterne bis .active türkis-gefüllt */
html body.dreamz-theme p.stars a.active,
html body.dreamz-theme p.stars a.active ~ a.active {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2314C4B6' stroke='%2314C4B6' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26'/%3E%3C/svg%3E") !important;
}

/* ---- Rating-Anzeige (statische Sterne bei Reviews) ---- */
html body.dreamz-theme .star-rating {
  position: relative !important;
  display: inline-block !important;
  width: 5.4em !important;
  height: 1.2em !important;
  line-height: 1.2em !important;
  font-size: 16px !important;
  overflow: hidden !important;
  color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236a6a72' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26'/%3E%3C/svg%3E") !important;
  background-repeat: repeat-x !important;
  background-position: left center !important;
  background-size: 1.08em 1.08em !important;
}
html body.dreamz-theme .star-rating::before {
  content: '' !important;
  display: none !important;
}
html body.dreamz-theme .star-rating span {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2314C4B6' stroke='%2314C4B6' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26'/%3E%3C/svg%3E") !important;
  background-repeat: repeat-x !important;
  background-position: left center !important;
  background-size: 1.08em 1.08em !important;
}
html body.dreamz-theme .star-rating span::before {
  content: '' !important;
  display: none !important;
}

/* Rezensions-Titel-Zeile ("Deine Bewertung *") */
html body.dreamz-theme .comment-form-rating label {
  display: block !important;
  color: var(--fg-2) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
}


/* =========================================================================
   v1.5.41 — Address-Edit-Button: sauberer Standard-Style
   Button-Row (h2 + Button) ist flex, Button selbst zeigt "Bearbeiten" + Stift
   rechts via ::after. Der Original-Text "Rechnungsadresse bearbeiten" wird
   via JS in "Bearbeiten" umgewandelt (siehe functions.php v1.5.41).
   ========================================================================= */
html body.dreamz-theme .woocommerce-Address-title a.edit,
html body.dreamz-theme .woocommerce-Address-title .edit,
html body.dreamz-theme header.woocommerce-Address-title a.edit,
html body.dreamz-theme header.woocommerce-Address-title .edit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;                       /* Abstand Text ↔ Stift */
  background: var(--btn-gradient, linear-gradient(135deg, #00a89c 0%, #007a72 100%)) !important;
  color: #ffffff !important;
  padding: 0 16px !important;                /* 16px links + rechts */
  height: 36px !important;
  line-height: 1 !important;
  border-radius: 8px !important;
  border: 0 !important;
  font-family: var(--font-body, Montserrat, sans-serif) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: var(--btn-gradient-shadow, 0 4px 12px rgba(0,168,156,0.25)) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.15) !important;
  transition: all 0.2s ease-out !important;
  white-space: nowrap !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  vertical-align: middle !important;
  overflow: visible !important;
  text-indent: 0 !important;
}
/* KEIN ::before — der echte a-Text wird angezeigt (Weglot-freundlich).
   functions.php kürzt "Rechnungsadresse bearbeiten" → "Bearbeiten". */
html body.dreamz-theme .woocommerce-Address-title a.edit::before,
html body.dreamz-theme .woocommerce-Address-title .edit::before,
html body.dreamz-theme header.woocommerce-Address-title a.edit::before,
html body.dreamz-theme header.woocommerce-Address-title .edit::before {
  content: none !important;
  display: none !important;
}
/* Stift-Icon RECHTS (via ::after) — sitzt automatisch mittig durch flex */
html body.dreamz-theme .woocommerce-Address-title a.edit::after,
html body.dreamz-theme .woocommerce-Address-title .edit::after,
html body.dreamz-theme header.woocommerce-Address-title a.edit::after,
html body.dreamz-theme header.woocommerce-Address-title .edit::after {
  content: '' !important;
  display: inline-block !important;
  width: 13px !important;
  height: 13px !important;
  margin: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
  background-color: transparent !important;
  border: 0 !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
}
html body.dreamz-theme .woocommerce-Address-title a.edit:hover,
html body.dreamz-theme .woocommerce-Address-title .edit:hover,
html body.dreamz-theme header.woocommerce-Address-title a.edit:hover,
html body.dreamz-theme header.woocommerce-Address-title .edit:hover {
  background: var(--btn-gradient-hover, linear-gradient(135deg, #00c2b4 0%, #009086 100%)) !important;
  box-shadow: var(--btn-gradient-shadow-hover, 0 6px 16px rgba(0,168,156,0.35)) !important;
  transform: translateY(-1px) !important;
  color: #ffffff !important;
}
