/* ==========================================================================
   BRUHWERK - WooCommerce Premium Dark Theme
   Complete CSS v2.0 - Clean Rewrite

   Colors:   #0a0a0a (bg), #111 (surface-1), #1a1a1a (surface-2),
             #c8956c (kupfer), #e0e0e0 (text)
   Fonts:    Playfair Display (headlines), DM Sans (body), JetBrains Mono (labels)
   ========================================================================== */


/* ==========================================================================
   0. GLOBAL WOOCOMMERCE RESETS & BASE
   ========================================================================== */

.woocommerce,
.woocommerce-page {
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
}

.woocommerce a {
  color: #c8956c;
  text-decoration: none;
  transition: color 0.25s ease;
}

.woocommerce a:hover {
  color: #daa880;
}

/* WooCommerce notices */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info {
  background: #111 !important;
  border: 1px solid rgba(200, 149, 108, 0.3) !important;
  border-left: 4px solid #c8956c !important;
  color: #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 1rem 1.25rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  margin-bottom: 1.5rem !important;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before {
  color: #c8956c !important;
}

.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button {
  background: transparent !important;
  border: 1px solid rgba(200, 149, 108, 0.4) !important;
  color: #c8956c !important;
  border-radius: 8px !important;
  padding: 0.4rem 1rem !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  transition: all 0.25s ease !important;
}

.woocommerce .woocommerce-message .button:hover,
.woocommerce .woocommerce-info .button:hover {
  background: rgba(200, 149, 108, 0.1) !important;
  border-color: #c8956c !important;
}

.woocommerce .woocommerce-error {
  background: #111 !important;
  border: 1px solid rgba(220, 80, 80, 0.3) !important;
  border-left: 4px solid #dc5050 !important;
  color: #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 1rem 1.25rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
}

.woocommerce .woocommerce-error::before {
  color: #dc5050 !important;
}

/* Breadcrumbs */
.woocommerce .woocommerce-breadcrumb {
  color: #666 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  margin-bottom: 1.5rem !important;
}

.woocommerce .woocommerce-breadcrumb a {
  color: #888 !important;
}

.woocommerce .woocommerce-breadcrumb a:hover {
  color: #c8956c !important;
}


/* ==========================================================================
   1. SHOP PAGE / ARCHIVE
   ========================================================================== */

/* --- Shop Hero Banner --- */
body.post-type-archive-product .page-header,
body.tax-product_cat .page-header {
  text-align: center !important;
  padding: 3rem 2rem !important;
  background: linear-gradient(135deg, #111 0%, #0a0a0a 50%, #111 100%) !important;
  border-bottom: 1px solid rgba(200, 149, 108, 0.15) !important;
  margin-bottom: 2rem !important;
}

body.post-type-archive-product .page-title,
body.tax-product_cat .page-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 2.2rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 0.5rem !important;
}

/* --- Shop Layout: Sidebar + Grid --- */
body.post-type-archive-product .site-content .content-area,
body.tax-product_cat .site-content .content-area {
  max-width: 1400px !important;
  margin: 0 auto !important;
  padding: 0 2rem !important;
}

/* Sidebar */
.woocommerce-sidebar,
body.post-type-archive-product .widget-area,
body.tax-product_cat .widget-area {
  width: 280px !important;
  position: sticky !important;
  top: 120px !important;
  align-self: start !important;
}

.woocommerce-sidebar .widget,
body.post-type-archive-product .widget-area .widget,
body.tax-product_cat .widget-area .widget {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 12px !important;
  padding: 1.25rem !important;
  margin-bottom: 1rem !important;
}

.woocommerce-sidebar .widget-title,
body.post-type-archive-product .widget-area .widget-title,
body.tax-product_cat .widget-area .widget-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1rem !important;
  color: #c8956c !important;
  margin: 0 0 1rem !important;
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

/* --- Toolbar --- */
.woocommerce .woocommerce-result-count {
  color: #666 !important;
  font-size: 0.85rem !important;
}

.woocommerce .woocommerce-ordering select {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 0.5rem 0.75rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
}

/* Hide duplicate toolbar if present */
.woocommerce .woocommerce-products-header ~ .woocommerce-result-count,
.woocommerce .woocommerce-products-header ~ .woocommerce-ordering {
  display: none !important;
}

/* --- Product Grid --- */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1.5rem !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.woocommerce ul.products li.product {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(200, 149, 108, 0.25) !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4) !important;
}

/* Product Image */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
  width: 100% !important;
  height: 220px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  margin: 0 !important;
  display: block !important;
}

/* Product Info */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  color: #e0e0e0 !important;
  padding: 1rem 1rem 0.25rem !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Product Price */
.woocommerce ul.products li.product .price {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important;
  color: #c8956c !important;
  padding: 0.25rem 1rem 1rem !important;
  margin: 0 !important;
}

.woocommerce ul.products li.product .price del {
  color: #555 !important;
  font-size: 0.85rem !important;
  opacity: 0.7 !important;
}

.woocommerce ul.products li.product .price ins {
  text-decoration: none !important;
  color: #c8956c !important;
}

/* Add to Cart in Grid */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .ajax_add_to_cart {
  display: block !important;
  width: calc(100% - 2rem) !important;
  margin: 0 1rem 1rem !important;
  padding: 0.7rem 1rem !important;
  background: transparent !important;
  border: 1px solid rgba(200, 149, 108, 0.4) !important;
  color: #c8956c !important;
  border-radius: 10px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.woocommerce ul.products li.product .ajax_add_to_cart:hover {
  background: #c8956c !important;
  color: #111 !important;
  border-color: #c8956c !important;
}

/* Sale Badge */
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
  background: #c8956c !important;
  color: #111 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border-radius: 6px !important;
  padding: 0.3rem 0.6rem !important;
  min-width: auto !important;
  min-height: auto !important;
  line-height: 1 !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
}

/* Star Ratings */
.woocommerce .star-rating {
  color: #c8956c !important;
  font-size: 0.8rem !important;
}

.woocommerce .star-rating::before {
  color: #333 !important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul {
  display: flex !important;
  gap: 0.5rem !important;
  justify-content: center !important;
  margin-top: 2rem !important;
  border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  color: #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 0.5rem 0.85rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  transition: all 0.25s ease !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
  border-color: #c8956c !important;
  color: #c8956c !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background: #c8956c !important;
  color: #111 !important;
  border-color: #c8956c !important;
  font-weight: 600 !important;
}


/* ==========================================================================
   2. SINGLE PRODUCT PAGE
   ========================================================================== */

.woocommerce div.product {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 2rem !important;
}

/* --- Two-Column Layout --- */
.woocommerce div.product div.summary,
.woocommerce div.product div.images {
  float: none !important;
  width: 100% !important;
}

.woocommerce #content div.product,
.woocommerce div.product {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 3rem !important;
  align-items: start !important;
}

.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products {
  grid-column: 1 / -1 !important;
}

/* Product Gallery */
.woocommerce div.product div.images {
  background: #111 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.woocommerce div.product div.images img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

.woocommerce div.product div.images .flex-control-thumbs {
  display: flex !important;
  gap: 0.5rem !important;
  padding: 0.75rem !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 2px solid transparent !important;
  transition: border-color 0.25s ease !important;
  cursor: pointer !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
  border-color: #c8956c !important;
}

/* Product Title */
.woocommerce div.product .product_title {
  font-family: 'Playfair Display', serif !important;
  font-size: 2rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 0.75rem !important;
  line-height: 1.3 !important;
}

/* Product Price */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.6rem !important;
  color: #c8956c !important;
  margin-bottom: 1.25rem !important;
}

.woocommerce div.product p.price del {
  color: #555 !important;
  font-size: 1.1rem !important;
}

.woocommerce div.product p.price ins {
  text-decoration: none !important;
}

/* Short Description */
.woocommerce div.product .woocommerce-product-details__short-description {
  color: #aaa !important;
  font-size: 0.95rem !important;
  line-height: 1.7 !important;
  margin-bottom: 1.5rem !important;
  padding-bottom: 1.5rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

/* --- Quantity Input (Single Product) --- */
.woocommerce div.product form.cart {
  margin-bottom: 1.5rem !important;
}

.woocommerce div.product form.cart .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  margin-right: 1rem !important;
}

.woocommerce div.product form.cart .quantity .qty {
  width: 50px !important;
  background: transparent !important;
  border: none !important;
  color: #e0e0e0 !important;
  text-align: center !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  padding: 0.6rem 0 !important;
  -moz-appearance: textfield !important;
}

.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.woocommerce div.product form.cart .quantity .minus,
.woocommerce div.product form.cart .quantity .plus,
.woocommerce div.product form.cart .quantity button {
  width: 38px !important;
  height: 38px !important;
  background: transparent !important;
  border: none !important;
  color: #888 !important;
  font-size: 1.1rem !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: color 0.2s ease, background 0.2s ease !important;
}

.woocommerce div.product form.cart .quantity .minus:hover,
.woocommerce div.product form.cart .quantity .plus:hover,
.woocommerce div.product form.cart .quantity button:hover {
  color: #c8956c !important;
  background: rgba(200, 149, 108, 0.1) !important;
}

/* Single Add to Cart */
.woocommerce div.product form.cart .single_add_to_cart_button {
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 0.85rem 2.5rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: #daa880 !important;
  box-shadow: 0 4px 20px rgba(200, 149, 108, 0.35) !important;
  transform: translateY(-1px) !important;
}

/* Meta */
.woocommerce div.product .product_meta {
  margin-top: 1.5rem !important;
  padding-top: 1.5rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  font-size: 0.85rem !important;
  color: #666 !important;
}

.woocommerce div.product .product_meta > span {
  display: block !important;
  margin-bottom: 0.4rem !important;
}

.woocommerce div.product .product_meta a {
  color: #c8956c !important;
}

/* --- Product Tabs --- */
.woocommerce div.product .woocommerce-tabs {
  margin-top: 2rem !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 0 !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.5rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
  overflow: visible !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
  display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #666 !important;
  padding: 0.85rem 1.5rem !important;
  display: block !important;
  transition: color 0.25s ease !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  color: #e0e0e0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: #c8956c !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: #c8956c !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 12px !important;
  padding: 1.5rem !important;
  color: #ccc !important;
  font-size: 0.92rem !important;
  line-height: 1.7 !important;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.2rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 1rem !important;
}

/* Related / Upsell */
.woocommerce div.product .related.products h2,
.woocommerce div.product .upsells.products h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.4rem !important;
  color: #e0e0e0 !important;
  margin: 2rem 0 1.25rem !important;
}


/* ==========================================================================
   3. CART PAGE - PREMIUM LAYOUT
   ========================================================================== */

/* --- Page Title --- */
body.woocommerce-cart .entry-title,
body.woocommerce-cart .page-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 2rem !important;
  color: #e0e0e0 !important;
  text-align: center !important;
  margin-bottom: 2rem !important;
}

/* --- Two-Column Master Grid --- */
body.woocommerce-cart div.woocommerce {
  display: grid !important;
  grid-template-columns: 1fr 300px !important;
  gap: 1.75rem !important;
  align-items: start !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 1.5rem 3rem !important;
}

/* Messages span full width */
body.woocommerce-cart div.woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-cart div.woocommerce > .woocommerce-message,
body.woocommerce-cart div.woocommerce > .woocommerce-info,
body.woocommerce-cart div.woocommerce > .woocommerce-error {
  grid-column: 1 / -1 !important;
}

/* --- Cart Form (Left Column) as Card --- */
body.woocommerce-cart form.woocommerce-cart-form {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  padding: 1.5rem !important;
  min-width: 0 !important;
}

/* --- TABLE: Convert to Block Layout --- */
body.woocommerce-cart .shop_table {
  display: block !important;
  border: none !important;
  border-collapse: collapse !important;
  width: 100% !important;
  margin: 0 !important;
}

body.woocommerce-cart .shop_table thead {
  display: none !important;
}

body.woocommerce-cart .shop_table tbody {
  display: block !important;
}

body.woocommerce-cart .shop_table tbody tr {
  display: grid !important;
  grid-template-columns: 32px 80px minmax(100px, 1fr) 110px 120px !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 1rem 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

body.woocommerce-cart .shop_table tbody tr:last-child {
  border-bottom: none !important;
}

body.woocommerce-cart .shop_table td {
  display: block !important;
  padding: 0 !important;
  border: none !important;
  text-align: left !important;
}

/* --- Remove Button --- */
body.woocommerce-cart .shop_table td.product-remove {
  text-align: center !important;
}

body.woocommerce-cart .shop_table td.product-remove a.remove {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 1.2rem !important;
  color: #555 !important;
  background: transparent !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

body.woocommerce-cart .shop_table td.product-remove a.remove:hover {
  color: #dc5050 !important;
  background: rgba(220, 80, 80, 0.1) !important;
}

/* --- Product Thumbnail --- */
body.woocommerce-cart .shop_table td.product-thumbnail {
  width: 88px !important;
  flex: 0 0 88px !important;
  min-width: 88px !important;
}

body.woocommerce-cart .shop_table td.product-thumbnail a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 88px !important;
  height: 88px !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

body.woocommerce-cart .shop_table td.product-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  max-width: 88px !important;
  max-height: 88px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 6px !important;
  display: block !important;
}

/* --- Product Name --- */
body.woocommerce-cart .shop_table td.product-name {
  min-width: 0 !important;
}

body.woocommerce-cart .shop_table td.product-name a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  color: #e0e0e0 !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.4 !important;
}

body.woocommerce-cart .shop_table td.product-name a:hover {
  color: #c8956c !important;
}

/* Variation details */
body.woocommerce-cart .shop_table td.product-name .variation,
body.woocommerce-cart .shop_table td.product-name dl.variation {
  font-size: 0.8rem !important;
  color: #666 !important;
  margin-top: 0.25rem !important;
}

body.woocommerce-cart .shop_table td.product-name dl.variation dt,
body.woocommerce-cart .shop_table td.product-name dl.variation dd {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* --- Quantity (Cart) --- */
body.woocommerce-cart .shop_table td.product-quantity {
  justify-self: center !important;
}

body.woocommerce-cart .shop_table td.product-quantity .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

body.woocommerce-cart .shop_table td.product-quantity .quantity .qty {
  width: 40px !important;
  background: transparent !important;
  border: none !important;
  color: #e0e0e0 !important;
  text-align: center !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  padding: 0.45rem 0 !important;
  -moz-appearance: textfield !important;
}

body.woocommerce-cart .shop_table td.product-quantity .quantity .qty::-webkit-inner-spin-button,
body.woocommerce-cart .shop_table td.product-quantity .quantity .qty::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

body.woocommerce-cart .shop_table td.product-quantity .quantity .minus,
body.woocommerce-cart .shop_table td.product-quantity .quantity .plus,
body.woocommerce-cart .shop_table td.product-quantity .quantity button {
  width: 32px !important;
  height: 32px !important;
  background: transparent !important;
  border: none !important;
  color: #888 !important;
  font-size: 1rem !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: color 0.2s ease, background 0.2s ease !important;
  padding: 0 !important;
}

body.woocommerce-cart .shop_table td.product-quantity .quantity .minus:hover,
body.woocommerce-cart .shop_table td.product-quantity .quantity .plus:hover,
body.woocommerce-cart .shop_table td.product-quantity .quantity button:hover {
  color: #c8956c !important;
  background: rgba(200, 149, 108, 0.1) !important;
}

/* --- Subtotal (per product) --- */
body.woocommerce-cart .shop_table td.product-subtotal {
  text-align: right !important;
}

body.woocommerce-cart .shop_table td.product-subtotal,
body.woocommerce-cart .shop_table td.product-subtotal .woocommerce-Price-amount {
  font-family: 'Playfair Display', serif !important;
  font-size: 1rem !important;
  color: #c8956c !important;
  font-weight: 500 !important;
}

/* --- Actions Row (Coupon + Update) --- */
body.woocommerce-cart .shop_table td.actions {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  margin-top: 0.5rem !important;
}

/* Coupon */
body.woocommerce-cart .shop_table .coupon {
  display: flex !important;
  gap: 0.5rem !important;
  align-items: center !important;
}

body.woocommerce-cart .shop_table .coupon label {
  display: none !important;
}

body.woocommerce-cart .shop_table .coupon #coupon_code {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 0.6rem 0.85rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  width: 160px !important;
  transition: border-color 0.25s ease !important;
}

body.woocommerce-cart .shop_table .coupon #coupon_code:focus {
  border-color: #c8956c !important;
  outline: none !important;
}

body.woocommerce-cart .shop_table .coupon #coupon_code::placeholder {
  color: #555 !important;
}

body.woocommerce-cart .shop_table .coupon .button {
  background: transparent !important;
  border: 1px solid rgba(200, 149, 108, 0.4) !important;
  color: #c8956c !important;
  border-radius: 8px !important;
  padding: 0.6rem 1rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .shop_table .coupon .button:hover {
  background: rgba(200, 149, 108, 0.1) !important;
  border-color: #c8956c !important;
}

/* Update Cart (Ghost) */
body.woocommerce-cart .shop_table td.actions > button[name="update_cart"],
body.woocommerce-cart .shop_table td.actions > input[name="update_cart"] {
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #888 !important;
  border-radius: 8px !important;
  padding: 0.6rem 1.25rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  margin-left: auto !important;
}

body.woocommerce-cart .shop_table td.actions > button[name="update_cart"]:hover,
body.woocommerce-cart .shop_table td.actions > input[name="update_cart"]:hover {
  border-color: rgba(255, 255, 255, 0.2) !important;
  color: #e0e0e0 !important;
}

body.woocommerce-cart .shop_table td.actions > button[name="update_cart"]:disabled,
body.woocommerce-cart .shop_table td.actions > input[name="update_cart"]:disabled {
  opacity: 0.35 !important;
  cursor: default !important;
}

/* --- SIDEBAR: Cart Collaterals (Right Column) --- */
body.woocommerce-cart .cart-collaterals {
  position: sticky !important;
  top: 120px !important;
  align-self: start !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals {
  background: #111 !important;
  border: 1px solid rgba(200, 149, 108, 0.2) !important;
  border-radius: 14px !important;
  padding: 1.5rem !important;
  width: 100% !important;
  float: none !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals > h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.2rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 1.25rem !important;
  padding-bottom: 1rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* Cart Totals Table */
body.woocommerce-cart .cart_totals table {
  border: none !important;
  width: 100% !important;
  margin: 0 !important;
}

body.woocommerce-cart .cart_totals table tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

body.woocommerce-cart .cart_totals table tr:last-child {
  border-bottom: none !important;
}

body.woocommerce-cart .cart_totals table th {
  color: #888 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  padding: 0.85rem 0 !important;
  border: none !important;
  background: transparent !important;
  text-align: left !important;
  width: 40% !important;
  vertical-align: top !important;
}

body.woocommerce-cart .cart_totals table td {
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  padding: 0.85rem 0 !important;
  border: none !important;
  background: transparent !important;
  text-align: right !important;
  vertical-align: top !important;
}

/* Subtotal */
body.woocommerce-cart .cart_totals .cart-subtotal td .woocommerce-Price-amount {
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500 !important;
}

/* Shipping */
body.woocommerce-cart .cart_totals .shipping td {
  text-align: right !important;
}

body.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
}

body.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-methods li {
  margin-bottom: 0.3rem !important;
}

body.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-methods li label {
  color: #aaa !important;
  font-size: 0.85rem !important;
  cursor: pointer !important;
}

body.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-methods li input[type="radio"] {
  accent-color: #c8956c !important;
  margin-right: 0.4rem !important;
}

/* Free shipping green check */
body.woocommerce-cart .cart_totals .shipping .free_shipping label::before {
  content: "\2713" !important;
  display: inline-block !important;
  color: #4caf50 !important;
  font-weight: 700 !important;
  margin-right: 0.35rem !important;
}

/* Shipping calculator */
body.woocommerce-cart .cart_totals .shipping .shipping-calculator-form {
  margin-top: 0.75rem !important;
}

body.woocommerce-cart .cart_totals .shipping .shipping-calculator-form select,
body.woocommerce-cart .cart_totals .shipping .shipping-calculator-form input {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 0.5rem 0.75rem !important;
  font-size: 0.85rem !important;
  width: 100% !important;
  margin-bottom: 0.5rem !important;
}

body.woocommerce-cart .cart_totals .shipping .shipping-calculator-form button {
  background: transparent !important;
  border: 1px solid rgba(200, 149, 108, 0.3) !important;
  color: #c8956c !important;
  border-radius: 8px !important;
  padding: 0.5rem 1rem !important;
  font-size: 0.8rem !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

body.woocommerce-cart .cart_totals .shipping .shipping-calculator-form button:hover {
  background: rgba(200, 149, 108, 0.1) !important;
}

/* Total Row */
body.woocommerce-cart .cart_totals .order-total th {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #e0e0e0 !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body.woocommerce-cart .cart_totals .order-total td {
  padding-top: 1rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body.woocommerce-cart .cart_totals .order-total td .woocommerce-Price-amount {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.5rem !important;
  color: #c8956c !important;
  font-weight: 600 !important;
}

/* --- Checkout Button --- */
body.woocommerce-cart .cart_totals .wc-proceed-to-checkout {
  padding: 1.25rem 0 0 !important;
}

body.woocommerce-cart .cart_totals .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 1rem 1.5rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .cart_totals .wc-proceed-to-checkout a.checkout-button:hover {
  background: #daa880 !important;
  box-shadow: 0 6px 24px rgba(200, 149, 108, 0.35) !important;
  transform: translateY(-1px) !important;
}

/* --- Trust Badges below Checkout --- */
body.woocommerce-cart .cart-collaterals .cart_totals::after {
  content:
    "\1F512  Sichere Zahlung\A"
    "\1F69A  Schneller Versand\A"
    "\1F6E1  Qualitatsgarantie";
  white-space: pre-line !important;
  display: block !important;
  margin-top: 1.25rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.78rem !important;
  color: #666 !important;
  line-height: 2 !important;
  text-align: center !important;
  letter-spacing: 0.02em !important;
}


/* ==========================================================================
   4. CHECKOUT PAGE
   ========================================================================== */

/* --- Page Title --- */
body.woocommerce-checkout .entry-title,
body.woocommerce-checkout .page-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 2rem !important;
  color: #e0e0e0 !important;
  text-align: center !important;
  margin-bottom: 2rem !important;
}

/* --- Two-Column Layout --- */
body.woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: 1fr 400px !important;
  gap: 2rem !important;
  align-items: start !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 1.5rem 3rem !important;
}

/* Notices full width */
body.woocommerce-checkout form.checkout > .woocommerce-notices-wrapper {
  grid-column: 1 / -1 !important;
}

/* Customer Details (Left) */
body.woocommerce-checkout #customer_details {
  min-width: 0 !important;
}

body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin-bottom: 0.5rem !important;
}

/* Section Headings */
body.woocommerce-checkout h3,
body.woocommerce-checkout h3#ship-to-different-address {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 1.25rem !important;
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

/* --- Form Fields --- */
body.woocommerce-checkout .woocommerce-checkout .form-row {
  margin-bottom: 1rem !important;
}

body.woocommerce-checkout .woocommerce-checkout .form-row label {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #aaa !important;
  margin-bottom: 0.35rem !important;
  display: block !important;
}

body.woocommerce-checkout .woocommerce-checkout .form-row label .required {
  color: #c8956c !important;
}

body.woocommerce-checkout .woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .woocommerce-checkout .form-row select {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 0.75rem 1rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

body.woocommerce-checkout .woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .woocommerce-checkout .form-row textarea:focus,
body.woocommerce-checkout .woocommerce-checkout .form-row select:focus {
  border-color: #c8956c !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(200, 149, 108, 0.1) !important;
}

body.woocommerce-checkout .woocommerce-checkout .form-row input.input-text::placeholder,
body.woocommerce-checkout .woocommerce-checkout .form-row textarea::placeholder {
  color: #555 !important;
}

/* Select2 Dropdowns */
body.woocommerce-checkout .select2-container--default .select2-selection--single {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 10px !important;
  height: auto !important;
  padding: 0.65rem 1rem !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  line-height: 1.4 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50% !important;
  transform: translateY(-50%) !important;
  right: 10px !important;
}

.select2-dropdown {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

.select2-results__option {
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  padding: 0.5rem 1rem !important;
}

.select2-results__option--highlighted {
  background: rgba(200, 149, 108, 0.15) !important;
  color: #c8956c !important;
}

.select2-container--default .select2-results__option--selected {
  background: rgba(200, 149, 108, 0.08) !important;
}

.select2-search--dropdown .select2-search__field {
  background: #111 !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 6px !important;
  padding: 0.5rem !important;
}

/* Checkbox + Radio */
body.woocommerce-checkout input[type="checkbox"],
body.woocommerce-checkout input[type="radio"] {
  accent-color: #c8956c !important;
}

/* --- Order Review (Right Column) --- */
body.woocommerce-checkout #order_review_heading {
  display: none !important;
}

body.woocommerce-checkout #order_review {
  background: #111 !important;
  border: 1px solid rgba(200, 149, 108, 0.2) !important;
  border-radius: 14px !important;
  padding: 1.5rem !important;
  position: sticky !important;
  top: 120px !important;
  align-self: start !important;
}

/* Order Review Table */
body.woocommerce-checkout #order_review table.shop_table {
  border: none !important;
  width: 100% !important;
  margin: 0 0 1rem !important;
}

body.woocommerce-checkout #order_review table.shop_table thead {
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

body.woocommerce-checkout #order_review table.shop_table thead th {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #888 !important;
  padding: 0 0 0.75rem !important;
  border: none !important;
  background: transparent !important;
}

body.woocommerce-checkout #order_review table.shop_table td,
body.woocommerce-checkout #order_review table.shop_table th {
  border: none !important;
  background: transparent !important;
  padding: 0.65rem 0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.88rem !important;
  color: #ccc !important;
}

body.woocommerce-checkout #order_review table.shop_table tbody tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

body.woocommerce-checkout #order_review table.shop_table td.product-name {
  color: #e0e0e0 !important;
}

body.woocommerce-checkout #order_review table.shop_table td.product-name .product-quantity {
  color: #888 !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout #order_review table.shop_table td.product-total {
  text-align: right !important;
  color: #e0e0e0 !important;
}

/* Order Totals */
body.woocommerce-checkout #order_review table.shop_table tfoot tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

body.woocommerce-checkout #order_review table.shop_table tfoot tr:last-child {
  border-bottom: none !important;
}

body.woocommerce-checkout #order_review table.shop_table tfoot th {
  color: #888 !important;
  font-weight: 500 !important;
  text-align: left !important;
}

body.woocommerce-checkout #order_review table.shop_table tfoot td {
  text-align: right !important;
  color: #e0e0e0 !important;
}

body.woocommerce-checkout #order_review table.shop_table tfoot .order-total th {
  color: #e0e0e0 !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  padding-top: 1rem !important;
}

body.woocommerce-checkout #order_review table.shop_table tfoot .order-total td {
  padding-top: 1rem !important;
}

body.woocommerce-checkout #order_review table.shop_table tfoot .order-total td .woocommerce-Price-amount {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.4rem !important;
  color: #c8956c !important;
  font-weight: 600 !important;
}

/* --- Payment Methods --- */
body.woocommerce-checkout #payment {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-top: 1rem !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  background: transparent !important;
  padding: 0.75rem 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

body.woocommerce-checkout #payment ul.payment_methods li:last-child {
  border-bottom: none !important;
}

body.woocommerce-checkout #payment ul.payment_methods li label {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  color: #e0e0e0 !important;
  cursor: pointer !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods li .payment_box {
  background: rgba(200, 149, 108, 0.05) !important;
  border-radius: 8px !important;
  padding: 0.75rem !important;
  margin-top: 0.5rem !important;
  color: #aaa !important;
  font-size: 0.82rem !important;
}

body.woocommerce-checkout #payment ul.payment_methods li .payment_box::before {
  display: none !important;
}

/* Terms */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  margin: 0.75rem 0 !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text {
  color: #666 !important;
  font-size: 0.8rem !important;
}

/* --- Place Order Button --- */
body.woocommerce-checkout #payment #place_order {
  display: block !important;
  width: 100% !important;
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 1rem 1.5rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

body.woocommerce-checkout #payment #place_order:hover {
  background: #daa880 !important;
  box-shadow: 0 6px 24px rgba(200, 149, 108, 0.35) !important;
  transform: translateY(-1px) !important;
}

/* --- Login / Coupon Toggle --- */
body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
  grid-column: 1 / -1 !important;
}

body.woocommerce-checkout .woocommerce-form-login,
body.woocommerce-checkout .checkout_coupon {
  grid-column: 1 / -1 !important;
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 12px !important;
  padding: 1.25rem !important;
}

body.woocommerce-checkout .checkout_coupon .form-row {
  display: flex !important;
  gap: 0.5rem !important;
  align-items: flex-end !important;
}

body.woocommerce-checkout .checkout_coupon .form-row input.input-text {
  flex: 1 !important;
}

body.woocommerce-checkout .checkout_coupon .form-row .button {
  background: transparent !important;
  border: 1px solid rgba(200, 149, 108, 0.4) !important;
  color: #c8956c !important;
  border-radius: 10px !important;
  padding: 0.75rem 1.25rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout .checkout_coupon .form-row .button:hover {
  background: rgba(200, 149, 108, 0.1) !important;
  border-color: #c8956c !important;
}


/* ==========================================================================
   5. ORDER RECEIVED / THANK YOU PAGE
   ========================================================================== */

.woocommerce-order-received .woocommerce-thankyou-order-received {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.5rem !important;
  color: #c8956c !important;
  text-align: center !important;
  margin-bottom: 2rem !important;
}

.woocommerce-order-received .woocommerce-order-overview {
  list-style: none !important;
  padding: 1.5rem !important;
  margin: 0 0 2rem !important;
  background: #111 !important;
  border: 1px solid rgba(200, 149, 108, 0.2) !important;
  border-radius: 14px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1.5rem !important;
}

.woocommerce-order-received .woocommerce-order-overview li {
  flex: 1 !important;
  min-width: 120px !important;
  text-align: center !important;
  padding: 0.5rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  color: #888 !important;
  border-right: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.woocommerce-order-received .woocommerce-order-overview li:last-child {
  border-right: none !important;
}

.woocommerce-order-received .woocommerce-order-overview li strong {
  display: block !important;
  color: #e0e0e0 !important;
  font-size: 1rem !important;
  margin-top: 0.3rem !important;
}

.woocommerce-order-received .woocommerce-order-details,
.woocommerce-order-received .woocommerce-customer-details {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  padding: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.woocommerce-order-received .woocommerce-order-details h2,
.woocommerce-order-received .woocommerce-customer-details h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.2rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 1rem !important;
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.woocommerce-order-received table.shop_table {
  border: none !important;
  width: 100% !important;
}

.woocommerce-order-received table.shop_table th,
.woocommerce-order-received table.shop_table td {
  border: none !important;
  background: transparent !important;
  padding: 0.65rem 0 !important;
  color: #ccc !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.88rem !important;
}

.woocommerce-order-received table.shop_table thead th {
  color: #888 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-size: 0.8rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.woocommerce-order-received table.shop_table tbody tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.woocommerce-order-received table.shop_table tfoot .order-total .woocommerce-Price-amount {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important;
  color: #c8956c !important;
}


/* ==========================================================================
   6. MY ACCOUNT
   ========================================================================== */

.woocommerce-account .woocommerce-MyAccount-navigation {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  padding: 1rem !important;
  margin-bottom: 2rem !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
  border-bottom: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 0.75rem 1rem !important;
  color: #ccc !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  color: #c8956c !important;
  background: rgba(200, 149, 108, 0.05) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  color: #c8956c !important;
  background: rgba(200, 149, 108, 0.08) !important;
  font-weight: 600 !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  padding: 1.5rem !important;
  color: #ccc !important;
  font-size: 0.9rem !important;
}

/* Account Forms */
.woocommerce-account .woocommerce-MyAccount-content input,
.woocommerce-account .woocommerce-MyAccount-content select {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 0.75rem 1rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  transition: border-color 0.25s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-content input:focus,
.woocommerce-account .woocommerce-MyAccount-content select:focus {
  border-color: #c8956c !important;
  outline: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content .button {
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 0.75rem 1.5rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-content .button:hover {
  background: #daa880 !important;
}

/* Login / Register Forms */
.woocommerce-account .woocommerce form.login,
.woocommerce-account .woocommerce form.register {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  padding: 2rem !important;
  margin: 0 !important;
}

.woocommerce-account .woocommerce form.login h2,
.woocommerce-account .woocommerce form.register h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important;
  color: #e0e0e0 !important;
  margin: 0 0 1.25rem !important;
}

.woocommerce-account .woocommerce form.login input.input-text,
.woocommerce-account .woocommerce form.register input.input-text {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 0.75rem 1rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  width: 100% !important;
}

.woocommerce-account .woocommerce form.login input.input-text:focus,
.woocommerce-account .woocommerce form.register input.input-text:focus {
  border-color: #c8956c !important;
  outline: none !important;
}

.woocommerce-account .woocommerce form.login .button,
.woocommerce-account .woocommerce form.register .button {
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 0.75rem 2rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.woocommerce-account .woocommerce form.login .button:hover,
.woocommerce-account .woocommerce form.register .button:hover {
  background: #daa880 !important;
  box-shadow: 0 4px 16px rgba(200, 149, 108, 0.3) !important;
}


/* ==========================================================================
   7. MINI CART / CART WIDGET
   ========================================================================== */

.widget_shopping_cart {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  padding: 1.25rem !important;
}

.widget_shopping_cart .widget_shopping_cart_content {
  color: #e0e0e0 !important;
}

.widget_shopping_cart ul.cart_list,
.widget_shopping_cart ul.product_list_widget {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.widget_shopping_cart ul.cart_list li,
.widget_shopping_cart ul.product_list_widget li {
  padding: 0.75rem 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.widget_shopping_cart ul.cart_list li:last-child {
  border-bottom: none !important;
}

.widget_shopping_cart ul.cart_list li a {
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.88rem !important;
}

.widget_shopping_cart ul.cart_list li img {
  width: 48px !important;
  height: 48px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
  background: #1a1a1a !important;
}

.widget_shopping_cart .total {
  padding: 0.75rem 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  color: #e0e0e0 !important;
  font-family: 'DM Sans', sans-serif !important;
}

.widget_shopping_cart .total .woocommerce-Price-amount {
  font-family: 'Playfair Display', serif !important;
  color: #c8956c !important;
  font-weight: 600 !important;
}

.widget_shopping_cart .buttons {
  display: flex !important;
  gap: 0.5rem !important;
  margin-top: 0.75rem !important;
}

.widget_shopping_cart .buttons a {
  flex: 1 !important;
  text-align: center !important;
  padding: 0.6rem !important;
  border-radius: 8px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  transition: all 0.25s ease !important;
}

.widget_shopping_cart .buttons a:first-child {
  background: transparent !important;
  border: 1px solid rgba(200, 149, 108, 0.3) !important;
  color: #c8956c !important;
}

.widget_shopping_cart .buttons a:last-child {
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
}

.widget_shopping_cart .buttons a:first-child:hover {
  background: rgba(200, 149, 108, 0.1) !important;
}

.widget_shopping_cart .buttons a:last-child:hover {
  background: #daa880 !important;
}


/* ==========================================================================
   8. EMPTY STATES
   ========================================================================== */

.woocommerce .cart-empty,
.woocommerce .woocommerce-info.cart-empty {
  text-align: center !important;
  padding: 3rem !important;
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 1rem !important;
  color: #888 !important;
}

.woocommerce .return-to-shop {
  text-align: center !important;
  margin-top: 1.5rem !important;
}

.woocommerce .return-to-shop .button {
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 0.85rem 2rem !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.woocommerce .return-to-shop .button:hover {
  background: #daa880 !important;
  box-shadow: 0 4px 20px rgba(200, 149, 108, 0.35) !important;
}


/* ==========================================================================
   9. LOADING / OVERLAY
   ========================================================================== */

.woocommerce .blockUI.blockOverlay {
  background: rgba(10, 10, 10, 0.7) !important;
}

.woocommerce .loader,
.woocommerce .blockUI.blockOverlay::before {
  border-color: rgba(200, 149, 108, 0.2) !important;
  border-top-color: #c8956c !important;
}


/* ==========================================================================
   10. RESPONSIVE
   ========================================================================== */

/* --- Tablet / Medium (992px) --- */
@media screen and (max-width: 992px) {

  /* Cart: single column */
  body.woocommerce-cart div.woocommerce {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .cart-collaterals {
    position: static !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    max-width: 480px !important;
    margin: 0 auto !important;
  }

  /* Checkout: single column */
  body.woocommerce-checkout form.checkout {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout #order_review {
    position: static !important;
    max-width: 100% !important;
  }

  /* Single product: single column */
  .woocommerce #content div.product,
  .woocommerce div.product {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
}

/* --- Small Tablet (768px) --- */
@media screen and (max-width: 768px) {

  /* Shop: 2 columns */
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1rem !important;
  }

  /* Cart table grid adjustments */
  body.woocommerce-cart .shop_table tbody tr {
    grid-template-columns: 28px 64px 1fr !important;
    gap: 0.75rem !important;
  }

  body.woocommerce-cart .shop_table td.product-quantity,
  body.woocommerce-cart .shop_table td.product-subtotal {
    grid-column: 3 / 4 !important;
  }

  body.woocommerce-cart .shop_table td.product-quantity {
    justify-self: start !important;
  }

  /* Smaller product images */
  body.woocommerce-cart .shop_table td.product-thumbnail img {
    width: 56px !important;
    height: 56px !important;
  }
}

/* --- Mobile (640px) --- */
@media screen and (max-width: 640px) {

  /* Shop: 1 column */
  .woocommerce ul.products {
    grid-template-columns: 1fr !important;
  }

  .woocommerce ul.products li.product a img,
  .woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
    height: 180px !important;
  }

  /* Cart adjustments */
  body.woocommerce-cart div.woocommerce {
    padding: 0 1rem 2rem !important;
  }

  body.woocommerce-cart form.woocommerce-cart-form {
    padding: 1rem !important;
    border-radius: 12px !important;
  }

  body.woocommerce-cart .shop_table td.actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.woocommerce-cart .shop_table .coupon {
    flex-wrap: wrap !important;
  }

  body.woocommerce-cart .shop_table .coupon #coupon_code {
    width: 100% !important;
    flex: 1 !important;
  }

  body.woocommerce-cart .shop_table td.actions > button[name="update_cart"],
  body.woocommerce-cart .shop_table td.actions > input[name="update_cart"] {
    margin-left: 0 !important;
    text-align: center !important;
  }

  /* Checkout adjustments */
  body.woocommerce-checkout form.checkout {
    padding: 0 1rem 2rem !important;
  }

  body.woocommerce-checkout #order_review {
    border-radius: 12px !important;
  }

  /* Single product */
  .woocommerce div.product {
    padding: 1rem !important;
  }

  .woocommerce div.product .product_title {
    font-size: 1.5rem !important;
  }

  .woocommerce div.product p.price,
  .woocommerce div.product span.price {
    font-size: 1.3rem !important;
  }

  /* Tabs stack */
  .woocommerce div.product .woocommerce-tabs ul.tabs {
    flex-wrap: wrap !important;
  }

  .woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 0.6rem 1rem !important;
    font-size: 0.8rem !important;
  }
}

/* --- Extra Small (480px) --- */
@media screen and (max-width: 480px) {

  body.woocommerce-cart .entry-title,
  body.woocommerce-cart .page-title,
  body.woocommerce-checkout .entry-title,
  body.woocommerce-checkout .page-title {
    font-size: 1.5rem !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    padding: 1rem !important;
  }

  body.woocommerce-cart .cart_totals .order-total td .woocommerce-Price-amount {
    font-size: 1.3rem !important;
  }

  body.woocommerce-checkout #order_review table.shop_table tfoot .order-total td .woocommerce-Price-amount {
    font-size: 1.2rem !important;
  }
}


/* ==========================================================================
   11. UTILITY OVERRIDES & WOOCOMMERCE PLUGIN FIXES
   ========================================================================== */

/* Remove default WooCommerce borders */
.woocommerce table.shop_table,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  border-color: rgba(255, 255, 255, 0.06) !important;
}

/* Override WooCommerce default button styles */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  font-family: 'DM Sans', sans-serif !important;
  border-radius: 10px !important;
  transition: all 0.3s ease !important;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  background: #c8956c !important;
  color: #111 !important;
  border: none !important;
}

.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background: #daa880 !important;
  box-shadow: 0 4px 16px rgba(200, 149, 108, 0.3) !important;
}

/* Disabled button states */
.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce a.button.alt.disabled,
.woocommerce a.button.alt:disabled,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt:disabled,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt:disabled {
  background: #333 !important;
  color: #666 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

/* Fix stacking context */
.woocommerce .blockUI.blockOverlay {
  z-index: 99 !important;
}

/* Fix quantity button alignment */
.woocommerce .quantity {
  display: inline-flex !important;
  align-items: center !important;
}

/* Box-sizing */
.woocommerce *,
.woocommerce *::before,
.woocommerce *::after {
  box-sizing: border-box !important;
}

/* Smooth scroll */
.woocommerce {
  scroll-behavior: smooth;
}

/* Hide default table responsive labels on desktop */
body.woocommerce-cart .shop_table td::before {
  display: none !important;
}

/* ===== HOTFIX: Cart Issues v53 ===== */

/* 1. Produkt-Name wieder sichtbar */
body.woocommerce-cart .shop_table.cart td.product-name {
    display: block !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: #e0e0e0 !important;
    line-height: 1.35 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* 2. Produkt-Preis (Einzelpreis) verstecken - nur Subtotal zeigen */
body.woocommerce-cart .shop_table.cart td.product-price {
    display: none !important;
}
body.woocommerce-cart .shop_table.cart th.product-price {
    display: none !important;
}

/* 3. Sidebar - Tabelle Labels nicht überlappen */
body.woocommerce-cart .cart_totals table.shop_table {
    display: table !important;
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
}
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
    display: table-cell !important;
    width: 50% !important;
    padding: 0.75rem 0 !important;
    vertical-align: top !important;
    font-size: 0.85rem !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
body.woocommerce-cart .cart_totals table.shop_table th {
    text-align: left !important;
    color: #888 !important;
    font-weight: 400 !important;
    text-transform: none !important;
    font-family: 'DM Sans', sans-serif !important;
    letter-spacing: 0 !important;
}
body.woocommerce-cart .cart_totals table.shop_table td {
    text-align: right !important;
    color: #e0e0e0 !important;
    font-weight: 600 !important;
}
/* Gesamtsumme groesser */
body.woocommerce-cart .cart_totals .order-total th {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #e0e0e0 !important;
}
body.woocommerce-cart .cart_totals .order-total td {
    font-size: 1.4rem !important;
    color: #c8956c !important;
    font-family: 'Playfair Display', serif !important;
}

/* 4. Versandoptionen-Text verstecken */
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart .cart_totals .shipping-calculator-button,
body.woocommerce-cart .cart_totals .shipping-calculator-form {
    display: none !important;
}

/* 5. Versand-Zeile sauber */
body.woocommerce-cart .cart_totals .shipping td {
    color: #4caf50 !important;
    font-weight: 500 !important;
}

/* 6. WARENKORB-SUMME Heading */
body.woocommerce-cart .cart_totals > h2,
body.woocommerce-cart .cart_totals > .cart_totals_heading {
    font-family: 'Playfair Display', serif !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: #e0e0e0 !important;
    margin-bottom: 1rem !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 1px solid rgba(200,149,108,0.15) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* ===== CRITICAL FIX: Sidebar-Tabelle nicht blocken ===== */
/* Nur die CART-FORM Tabelle als Block, NICHT die Sidebar-Tabelle */
body.woocommerce-cart .cart_totals table.shop_table,
body.woocommerce-cart .cart_totals table.shop_table thead,
body.woocommerce-cart .cart_totals table.shop_table tbody,
body.woocommerce-cart .cart_totals table.shop_table tfoot,
body.woocommerce-cart .cart_totals table.shop_table tr {
    display: table !important;
    width: 100% !important;
}
body.woocommerce-cart .cart_totals table.shop_table thead {
    display: table-header-group !important;
}
body.woocommerce-cart .cart_totals table.shop_table tbody {
    display: table-row-group !important;
}
body.woocommerce-cart .cart_totals table.shop_table tr {
    display: table-row !important;
}
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
    display: table-cell !important;
    padding: 0.85rem 0 !important;
    vertical-align: top !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
body.woocommerce-cart .cart_totals table.shop_table th {
    text-align: left !important;
    color: #888 !important;
    font-weight: 400 !important;
    font-size: 0.85rem !important;
    font-family: 'DM Sans', sans-serif !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    width: 40% !important;
}
body.woocommerce-cart .cart_totals table.shop_table td {
    text-align: right !important;
    color: #e0e0e0 !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    width: 60% !important;
}
/* Gesamtsumme hervorheben */
body.woocommerce-cart .cart_totals .order-total th {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #e0e0e0 !important;
    border-bottom: none !important;
    padding-top: 1.2rem !important;
}
body.woocommerce-cart .cart_totals .order-total td {
    font-size: 1.5rem !important;
    color: #c8956c !important;
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
    border-bottom: none !important;
    padding-top: 1.2rem !important;
}
/* Versand gruen */
body.woocommerce-cart .cart_totals .shipping td {
    color: #4caf50 !important;
}
/* Versandoptionen-Text komplett weg */
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .shipping-calculator-form,
body.woocommerce-cart .woocommerce-shipping-methods + p {
    display: none !important;
}


/* ==========================================================================
   BRÜHWERK FIX-BLOCK v3.0 — Warenkorb + Checkout + Allgemein
   Appended 2026-03-21
   ========================================================================== */


/* --------------------------------------------------------------------------
   1. WARENKORB — Produktname sichtbar
   -------------------------------------------------------------------------- */
body.woocommerce-cart .woocommerce-cart-form table.cart td.product-name {
    display: block !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.9rem !important;
    color: #e0e0e0 !important;
    font-weight: 500 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    line-height: 1.4 !important;
    padding: 8px 0 !important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart td.product-name a {
    color: #e0e0e0 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart td.product-name a:hover {
    color: #c8956c !important;
}


/* --------------------------------------------------------------------------
   2. WARENKORB — × Remove-Button
   -------------------------------------------------------------------------- */
body.woocommerce-cart .woocommerce-cart-form table.cart td.product-remove a.remove {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    opacity: 0.4 !important;
    color: #e0e0e0 !important;
    font-size: 1.2rem !important;
    line-height: 1 !important;
    transition: opacity 0.25s ease, color 0.25s ease, background 0.25s ease !important;
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    margin: auto 0 !important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart td.product-remove a.remove:hover {
    opacity: 1 !important;
    color: #ff4444 !important;
    background: rgba(255, 68, 68, 0.1) !important;
    border-color: rgba(255, 68, 68, 0.3) !important;
}


/* --------------------------------------------------------------------------
   3. WARENKORB — Produktbild-Thumbnails vereinheitlichen
   -------------------------------------------------------------------------- */
body.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail img,
body.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail a img {
    background: #1a1a1a !important;
    border-radius: 10px !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
    object-fit: contain !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail {
    background: transparent !important;
    padding: 8px !important;
}


/* --------------------------------------------------------------------------
   4. WARENKORB — Gutschein-Bereich: Input + Button inline,
      "Warenkorb aktualisieren" als Ghost-Button
   -------------------------------------------------------------------------- */
body.woocommerce-cart .woocommerce-cart-form .coupon {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon label {
    display: none !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon #coupon_code {
    flex: 1 1 auto !important;
    min-width: 160px !important;
    max-width: 260px !important;
    background: #1a1a1a !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px !important;
    color: #e0e0e0 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.85rem !important;
    padding: 10px 14px !important;
    height: auto !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon #coupon_code:focus {
    border-color: #c8956c !important;
    box-shadow: 0 0 0 2px rgba(200,149,108,0.15) !important;
    outline: none !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon .button {
    flex: 0 0 auto !important;
    background: #c8956c !important;
    color: #0a0a0a !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    cursor: pointer !important;
    transition: background 0.25s ease, box-shadow 0.25s ease !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon .button:hover {
    background: #ddb08e !important;
    box-shadow: 0 4px 15px rgba(200,149,108,0.3) !important;
}

/* Warenkorb aktualisieren — Ghost-Button */
body.woocommerce-cart .woocommerce-cart-form .actions > .button:not(.coupon .button),
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
    background: transparent !important;
    color: #c8956c !important;
    border: 1.5px solid rgba(200,149,108,0.4) !important;
    border-radius: 8px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    padding: 10px 24px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    cursor: pointer !important;
    margin-top: 12px !important;
    transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease !important;
    width: auto !important;
    display: inline-block !important;
}

body.woocommerce-cart .woocommerce-cart-form .actions > .button:not(.coupon .button):hover,
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:hover {
    background: rgba(200,149,108,0.1) !important;
    color: #ddb08e !important;
    border-color: rgba(200,149,108,0.6) !important;
}

body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:disabled {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
}


/* --------------------------------------------------------------------------
   5. WARENKORB — Cart-Card Border, kein doppelter Border
   -------------------------------------------------------------------------- */
body.woocommerce-cart .cart_totals {
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 12px !important;
    background: #111111 !important;
    padding: 24px !important;
    box-shadow: none !important;
}

body.woocommerce-cart .cart_totals > * {
    border: none !important;
}

body.woocommerce-cart .cart_totals table {
    border: none !important;
    border-collapse: collapse !important;
}

body.woocommerce-cart .cart_totals table th,
body.woocommerce-cart .cart_totals table td {
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    padding: 12px 0 !important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart,
body.woocommerce-cart .woocommerce-cart-form {
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 12px !important;
    overflow: visible !important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart {
    border: none !important;
}


/* --------------------------------------------------------------------------
   6. WARENKORB — Trust-Badges: Emojis durch Unicode-Symbole in Kupfer
   -------------------------------------------------------------------------- */
body.woocommerce-cart .trust-badges .trust-badge-item::before,
body.woocommerce-cart .trust-badge::before,
body.woocommerce-cart [class*="trust"] [class*="badge"]::before {
    font-size: 1.2rem !important;
    color: #c8956c !important;
    margin-right: 8px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    font-style: normal !important;
}

/* Schloss-Icon (Sicherheit) */
body.woocommerce-cart .trust-badges .trust-badge-item:nth-child(1)::before,
body.woocommerce-cart .trust-badge:nth-child(1)::before {
    content: "\1F512" !important;
}

/* LKW-Icon (Versand) */
body.woocommerce-cart .trust-badges .trust-badge-item:nth-child(2)::before,
body.woocommerce-cart .trust-badge:nth-child(2)::before {
    content: "\1F69A" !important;
}

/* Schild-Icon (Garantie) */
body.woocommerce-cart .trust-badges .trust-badge-item:nth-child(3)::before,
body.woocommerce-cart .trust-badge:nth-child(3)::before {
    content: "\1F6E1" !important;
}

body.woocommerce-cart .trust-badges .trust-badge-item .badge-emoji,
body.woocommerce-cart .trust-badge .badge-emoji,
body.woocommerce-cart [class*="trust"] .emoji {
    display: none !important;
}


/* --------------------------------------------------------------------------
   7. WARENKORB — Sidebar Gesamtsumme: Versand grün, Borders, Gesamtsumme
   -------------------------------------------------------------------------- */
body.woocommerce-cart .cart_totals .shipping td,
body.woocommerce-cart .cart_totals .shipping td * {
    color: #4caf50 !important;
    font-weight: 600 !important;
}

body.woocommerce-cart .cart_totals .shipping th {
    color: #888888 !important;
}

body.woocommerce-cart .cart_totals table tr th,
body.woocommerce-cart .cart_totals table tr td {
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}

body.woocommerce-cart .cart_totals table tr.order-total th,
body.woocommerce-cart .cart_totals table tr.order-total td {
    border-top: 2px solid rgba(200,149,108,0.3) !important;
    border-bottom: none !important;
    padding-top: 16px !important;
}

body.woocommerce-cart .cart_totals table tr.order-total td {
    font-size: 1.5rem !important;
    color: #c8956c !important;
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
}

body.woocommerce-cart .cart_totals table tr.order-total th {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #e0e0e0 !important;
    vertical-align: bottom !important;
}


/* ==========================================================================
   CHECKOUT FIXES
   ========================================================================== */


/* --------------------------------------------------------------------------
   8. CHECKOUT — Gutschein-Box Overflow fixen
   -------------------------------------------------------------------------- */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    padding-left: 1.25rem !important;
    overflow: visible !important;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
    left: 0.75rem !important;
}


/* --------------------------------------------------------------------------
   9. CHECKOUT — Labels normalisieren: kein Uppercase, einheitlich
   -------------------------------------------------------------------------- */
body.woocommerce-checkout form .form-row label,
body.woocommerce-checkout .woocommerce-form label,
body.woocommerce-checkout label,
body.woocommerce-checkout .woocommerce-checkout label {
    text-transform: none !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    color: #aaaaaa !important;
    font-family: 'DM Sans', sans-serif !important;
    letter-spacing: 0 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

body.woocommerce-checkout form .form-row label .required {
    color: #c8956c !important;
}


/* --------------------------------------------------------------------------
   10. CHECKOUT — "Rechnungsdetails" Heading
   -------------------------------------------------------------------------- */
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout #customer_details h3 {
    font-family: 'Playfair Display', serif !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    color: #e0e0e0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    padding-bottom: 12px !important;
    margin-bottom: 24px !important;
    border-bottom: 2px solid rgba(200,149,108,0.3) !important;
}


/* --------------------------------------------------------------------------
   11. CHECKOUT — "DEINE BESTELLUNG" Heading
   -------------------------------------------------------------------------- */
body.woocommerce-checkout #order_review_heading {
    font-family: 'Playfair Display', serif !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    color: #e0e0e0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    padding-bottom: 12px !important;
    margin-bottom: 24px !important;
    border-bottom: 2px solid rgba(200,149,108,0.3) !important;
}


/* --------------------------------------------------------------------------
   12. CHECKOUT — Input-Felder sichtbar machen
   -------------------------------------------------------------------------- */
body.woocommerce-checkout form .form-row input.input-text,
body.woocommerce-checkout form .form-row textarea,
body.woocommerce-checkout form .form-row select,
body.woocommerce-checkout .woocommerce-input-wrapper input,
body.woocommerce-checkout .woocommerce-input-wrapper textarea,
body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout input[type="password"],
body.woocommerce-checkout input[type="number"],
body.woocommerce-checkout select,
body.woocommerce-checkout textarea {
    background: #1a1a1a !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px !important;
    color: #e0e0e0 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.9rem !important;
    padding: 12px 14px !important;
    transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
    width: 100% !important;
    -webkit-appearance: none !important;
}

body.woocommerce-checkout form .form-row input.input-text:focus,
body.woocommerce-checkout form .form-row textarea:focus,
body.woocommerce-checkout form .form-row select:focus,
body.woocommerce-checkout input[type="text"]:focus,
body.woocommerce-checkout input[type="email"]:focus,
body.woocommerce-checkout input[type="tel"]:focus,
body.woocommerce-checkout input[type="password"]:focus,
body.woocommerce-checkout input[type="number"]:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus {
    border-color: #c8956c !important;
    box-shadow: 0 0 0 2px rgba(200,149,108,0.15) !important;
    outline: none !important;
    background: #1a1a1a !important;
}

body.woocommerce-checkout form .form-row input.input-text::placeholder,
body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder {
    color: #555555 !important;
    opacity: 1 !important;
}


/* --------------------------------------------------------------------------
   13. CHECKOUT — Vorname/Nachname nebeneinander
   -------------------------------------------------------------------------- */
body.woocommerce-checkout #customer_details .form-row-first,
body.woocommerce-checkout #customer_details .col-1 .form-row-first,
body.woocommerce-checkout .woocommerce-billing-fields .form-row-first {
    width: 48% !important;
    display: inline-block !important;
    vertical-align: top !important;
    margin-right: 2% !important;
}

body.woocommerce-checkout #customer_details .form-row-last,
body.woocommerce-checkout #customer_details .col-1 .form-row-last,
body.woocommerce-checkout .woocommerce-billing-fields .form-row-last {
    width: 48% !important;
    display: inline-block !important;
    vertical-align: top !important;
    margin-right: 0 !important;
}


/* --------------------------------------------------------------------------
   14. CHECKOUT — Bestellübersicht bündig mit Formular
   -------------------------------------------------------------------------- */
body.woocommerce-checkout #order_review_heading {
    margin-top: 0 !important;
}

body.woocommerce-checkout #order_review {
    margin-top: 0 !important;
}


/* --------------------------------------------------------------------------
   15. CHECKOUT — Zahlungsmethoden-Box: Overflow + Padding
   -------------------------------------------------------------------------- */
body.woocommerce-checkout #payment {
    overflow: visible !important;
    border-radius: 12px !important;
    background: #111111 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    padding: 24px !important;
}

body.woocommerce-checkout #payment .payment_methods {
    overflow: visible !important;
    padding: 0 !important;
    border: none !important;
    margin-bottom: 16px !important;
}

body.woocommerce-checkout #payment .payment_methods li {
    padding: 12px 16px !important;
    padding-left: 16px !important;
    background: #1a1a1a !important;
    border-radius: 8px !important;
    margin-bottom: 8px !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    overflow: visible !important;
}

body.woocommerce-checkout #payment .payment_methods li label {
    color: #e0e0e0 !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
}

body.woocommerce-checkout #payment .payment_box {
    background: rgba(200,149,108,0.05) !important;
    color: #aaaaaa !important;
    font-size: 0.8rem !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin-top: 8px !important;
    overflow: visible !important;
}

body.woocommerce-checkout #payment .payment_box::before {
    border-bottom-color: rgba(200,149,108,0.05) !important;
}


/* --------------------------------------------------------------------------
   16. CHECKOUT — "ZAHLUNGSPFLICHTIG BESTELLEN" Button
   -------------------------------------------------------------------------- */
body.woocommerce-checkout #payment #place_order,
body.woocommerce-checkout #place_order {
    background: #c8956c !important;
    color: #0a0a0a !important;
    border: none !important;
    border-radius: 14px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    padding: 16px 32px !important;
    width: 100% !important;
    cursor: pointer !important;
    transition: background 0.3s ease, box-shadow 0.3s ease, transform 0.2s ease !important;
    box-shadow: 0 4px 20px rgba(200,149,108,0.25) !important;
}

body.woocommerce-checkout #payment #place_order:hover,
body.woocommerce-checkout #place_order:hover {
    background: #ddb08e !important;
    box-shadow: 0 6px 30px rgba(200,149,108,0.4) !important;
    transform: translateY(-1px) !important;
}

body.woocommerce-checkout #payment #place_order:active,
body.woocommerce-checkout #place_order:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 10px rgba(200,149,108,0.2) !important;
}


/* --------------------------------------------------------------------------
   17. CHECKOUT — Datenschutz-Text
   -------------------------------------------------------------------------- */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text {
    margin-top: 1rem !important;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text p,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p {
    font-size: 0.75rem !important;
    color: #666666 !important;
    line-height: 1.5 !important;
    font-family: 'DM Sans', sans-serif !important;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text a {
    color: #c8956c !important;
    font-size: 0.75rem !important;
}


/* ==========================================================================
   ALLGEMEIN
   ========================================================================== */


/* --------------------------------------------------------------------------
   18. WooCommerce Notices — Overflow visible, kein Clipping
   -------------------------------------------------------------------------- */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-checkout .woocommerce-notices-wrapper {
    overflow: visible !important;
}

.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
    padding: 1rem 1.5rem !important;
    overflow: visible !important;
}

.woocommerce .woocommerce-error {
    background: #111 !important;
    border: 1px solid rgba(255, 68, 68, 0.3) !important;
    border-left: 4px solid #ff4444 !important;
    color: #e0e0e0 !important;
    border-radius: 10px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.9rem !important;
}

.woocommerce .woocommerce-error li {
    color: #e0e0e0 !important;
}


/* --------------------------------------------------------------------------
   19. Select2 Dropdowns — Dark-Styled (Land/Region)
   -------------------------------------------------------------------------- */
body.woocommerce-checkout .select2-container--default .select2-selection--single,
body.woocommerce-cart .select2-container--default .select2-selection--single {
    background: #1a1a1a !important;
    border: 1px solid #333333 !important;
    border-radius: 8px !important;
    height: 44px !important;
    padding: 0 14px !important;
    color: #e0e0e0 !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
body.woocommerce-cart .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #e0e0e0 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.9rem !important;
    line-height: 44px !important;
    padding-left: 0 !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow,
body.woocommerce-cart .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 44px !important;
    right: 10px !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow b,
body.woocommerce-cart .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #888888 transparent transparent transparent !important;
}

.select2-container--default .select2-selection--single:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    border-color: #c8956c !important;
    box-shadow: 0 0 0 2px rgba(200,149,108,0.15) !important;
    outline: none !important;
}

/* Select2 Dropdown-Liste */
.select2-dropdown {
    background: #1a1a1a !important;
    border: 1px solid #333333 !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
    overflow: hidden !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    background: #111111 !important;
    border: 1px solid #333333 !important;
    border-radius: 6px !important;
    color: #e0e0e0 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.85rem !important;
    padding: 8px 12px !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
    border-color: #c8956c !important;
    outline: none !important;
}

.select2-container--default .select2-results__option {
    background: #1a1a1a !important;
    color: #e0e0e0 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.85rem !important;
    padding: 10px 14px !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option:hover {
    background: rgba(200,149,108,0.15) !important;
    color: #c8956c !important;
}

.select2-container--default .select2-results__option[aria-selected="true"] {
    background: rgba(200,149,108,0.1) !important;
    color: #c8956c !important;
}

/* ===== RUNDE 2 FIXES ===== */

/* Gutschein-Box: Text nicht abschneiden */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
body.woocommerce-checkout .checkout_coupon .woocommerce-info,
body.woocommerce .woocommerce-info {
    overflow: visible !important;
    padding: 1rem 1.5rem !important;
    text-overflow: unset !important;
    white-space: normal !important;
}

/* Labels: KEIN Uppercase - normal case */
body.woocommerce-checkout label,
body.woocommerce-checkout .form-row label {
    text-transform: none !important;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    color: #aaa !important;
    letter-spacing: 0.02em !important;
    margin-bottom: 0.35rem !important;
    display: block !important;
}

/* Zahlungsmethoden-Box: kein Clipping */
body.woocommerce-checkout #payment {
    overflow: visible !important;
}
body.woocommerce-checkout #payment div.payment_box {
    overflow: visible !important;
    padding: 1rem !important;
    background: #1a1a1a !important;
    border-radius: 8px !important;
    margin-top: 0.5rem !important;
    color: #ccc !important;
    font-size: 0.85rem !important;
    line-height: 1.6 !important;
}
body.woocommerce-checkout #payment .place-order .woocommerce-privacy-policy-text {
    color: #666 !important;
    font-size: 0.75rem !important;
    line-height: 1.6 !important;
    margin-bottom: 1rem !important;
}

/* Warenkorb: Gutschein Input + Button auf EINER Zeile */
body.woocommerce-cart .shop_table .actions .coupon {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.5rem !important;
}
body.woocommerce-cart .shop_table .actions .coupon .input-text {
    flex: 1 !important;
    min-width: 0 !important;
}
body.woocommerce-cart .shop_table .actions .coupon .button {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

/* Checkout: h3 Headings nicht uppercase */
body.woocommerce-checkout h3,
body.woocommerce-checkout #order_review_heading {
    text-transform: none !important;
    font-family: 'Playfair Display', serif !important;
    letter-spacing: 0 !important;
}

/* Checkout: Shipping label fix */
body.woocommerce-checkout .woocommerce-shipping-fields h3 label {
    display: inline !important;
    text-transform: none !important;
    font-size: inherit !important;
    color: inherit !important;
}

/* ===== RUNDE 3 - MAXIMALE SPEZIFITAET ===== */

/* Labels: KEIN Uppercase - ULTRA Spezifitaet */
body.woocommerce-checkout form.checkout label,
body.woocommerce-checkout form.checkout .form-row label,
body.woocommerce-checkout .woocommerce-billing-fields label,
body.woocommerce-checkout .woocommerce-shipping-fields label,
body.woocommerce-checkout .woocommerce-additional-fields label,
body.woocommerce-checkout #billing_first_name_field label,
body.woocommerce-checkout #billing_last_name_field label,
body.woocommerce-checkout #billing_country_field label,
body.woocommerce-checkout #billing_address_1_field label,
body.woocommerce-checkout #billing_postcode_field label,
body.woocommerce-checkout #billing_city_field label,
body.woocommerce-checkout #billing_state_field label,
body.woocommerce-checkout #billing_phone_field label,
body.woocommerce-checkout #billing_email_field label {
    text-transform: none !important;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    color: #aaa !important;
    letter-spacing: 0.02em !important;
}

/* Zahlungsmethoden-Text nicht abschneiden */
body.woocommerce-checkout #payment .payment_box p,
body.woocommerce-checkout #payment .woocommerce-notice,
body.woocommerce-checkout #payment .woocommerce-info,
body.woocommerce-checkout #payment .woocommerce-error {
    overflow: visible !important;
    text-overflow: unset !important;
    white-space: normal !important;
    padding-left: 0 !important;
}

/* Order Review als Card */
body.woocommerce-checkout #order_review {
    background: #111 !important;
    border: 1px solid rgba(200,149,108,0.12) !important;
    border-radius: 14px !important;
    padding: 1.5rem !important;
}

/* Checkout Tabelle Labels nicht uppercase */
body.woocommerce-checkout #order_review table th,
body.woocommerce-checkout #order_review table td {
    text-transform: none !important;
    letter-spacing: 0 !important;
}
body.woocommerce-checkout #order_review table thead th {
    font-family: 'JetBrains Mono', monospace !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: #888 !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 1px solid rgba(200,149,108,0.15) !important;
}

/* Shipping/Versand labels */
body.woocommerce-checkout .woocommerce-shipping-fields h3 {
    text-transform: none !important;
}

/* "DEINE BESTELLUNG" heading */  
body.woocommerce-checkout #order_review_heading {
    font-family: 'Playfair Display', serif !important;
    font-size: 1.15rem !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    margin-bottom: 0.75rem !important;
    color: #e0e0e0 !important;
}


/* ============================================
   WARENKORB KOMPLETT-FIX - FINALE VERSION
   ============================================ */

body.woocommerce-cart .shop_table.cart tbody tr:not(.actions) {
    display: grid !important;
    grid-template-columns: 28px 80px 1fr 110px 120px !important;
    align-items: center !important;
    gap: 0.75rem !important;
    padding: 1.25rem 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
body.woocommerce-cart .shop_table.cart td.product-name {
    display: block !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 500 !important;
    color: #e0e0e0 !important;
    line-height: 1.4 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
body.woocommerce-cart .shop_table.cart td.product-name a {
    color: #e0e0e0 !important;
    text-decoration: none !important;
}
body.woocommerce-cart .shop_table.cart td.product-name a:hover {
    color: #c8956c !important;
}
body.woocommerce-cart .shop_table.cart td.product-subtotal {
    display: block !important;
    grid-column: 5 !important;
    grid-row: 1 !important;
    text-align: right !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #c8956c !important;
    white-space: nowrap !important;
    overflow: visible !important;
    padding-right: 4px !important;
}
body.woocommerce-cart .shop_table.cart td.product-quantity {
    display: flex !important;
    grid-column: 4 !important;
    grid-row: 1 !important;
    justify-content: center !important;
    align-items: center !important;
}
body.woocommerce-cart .shop_table.cart td.product-remove {
    display: flex !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-content: center !important;
    align-items: center !important;
}
body.woocommerce-cart .shop_table.cart td.product-remove a {
    color: #555 !important;
    font-size: 1.1rem !important;
    opacity: 0.5 !important;
    transition: all 0.2s !important;
    text-decoration: none !important;
}
body.woocommerce-cart .shop_table.cart td.product-remove a:hover {
    color: #e53935 !important;
    opacity: 1 !important;
}
body.woocommerce-cart .shop_table.cart td.product-thumbnail {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
}
body.woocommerce-cart .shop_table.cart td.product-thumbnail img {
    width: 72px !important;
    height: 72px !important;
    object-fit: contain !important;
    border-radius: 10px !important;
    background: #1a1a1a !important;
}
body.woocommerce-cart .shop_table.cart td.product-price,
body.woocommerce-cart .shop_table.cart th.product-price {
    display: none !important;
}
body.woocommerce-cart .shop_table.cart thead {
    display: none !important;
}
body.woocommerce-cart .woocommerce-cart-form {
    background: #111 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 14px !important;
    padding: 1rem 1.5rem !important;
    overflow: visible !important;
}
body.woocommerce-cart .shop_table.cart {
    background: transparent !important;
    border: none !important;
}
body.woocommerce-cart .shop_table.cart .actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0.75rem !important;
    padding-top: 1rem !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
}
body.woocommerce-cart .shop_table.cart .actions .coupon {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.5rem !important;
    flex: 1 !important;
}
body.woocommerce-cart .shop_table.cart .actions .coupon .input-text {
    flex: 1 !important;
    max-width: 200px !important;
    background: #1a1a1a !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 8px !important;
    padding: 0.6rem 0.85rem !important;
    color: #e0e0e0 !important;
    font-size: 0.8rem !important;
}
body.woocommerce-cart .shop_table.cart .actions .coupon .button {
    background: transparent !important;
    border: 1px solid #c8956c !important;
    color: #c8956c !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.08em !important;
    padding: 0.6rem 1rem !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: all 0.3s !important;
}
body.woocommerce-cart .shop_table.cart .actions .coupon .button:hover {
    background: #c8956c !important;
    color: #0a0a0a !important;
}
body.woocommerce-cart .shop_table.cart .actions > .button {
    margin-left: auto !important;
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: #888 !important;
    font-size: 0.65rem !important;
    padding: 0.6rem 1rem !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: all 0.3s !important;
}
body.woocommerce-cart .shop_table.cart .actions > .button:hover {
    border-color: #c8956c !important;
    color: #c8956c !important;
}
body.woocommerce-cart div.woocommerce {
    display: grid !important;
    grid-template-columns: 1fr 300px !important;
    gap: 1.75rem !important;
    align-items: start !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 1.5rem !important;
}
body.woocommerce-cart div.woocommerce > .woocommerce-notices-wrapper {
    grid-column: 1 / -1 !important;
}
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error {
    overflow: visible !important;
    padding: 1rem 1.25rem 1rem 3rem !important;
    margin-bottom: 1rem !important;
    border-radius: 10px !important;
    background: #161616 !important;
    border: 1px solid rgba(200,149,108,0.2) !important;
    color: #e0e0e0 !important;
    font-size: 0.85rem !important;
    position: relative !important;
}
body.woocommerce-cart .cart-collaterals {
    grid-column: 2 !important;
    grid-row: 2 !important;
    position: sticky !important;
    top: 80px !important;
}
@media (max-width: 992px) {
    body.woocommerce-cart div.woocommerce {
        grid-template-columns: 1fr !important;
    }
    body.woocommerce-cart .cart-collaterals {
        grid-column: 1 !important;
        grid-row: auto !important;
        position: static !important;
    }
    body.woocommerce-cart .shop_table.cart tbody tr:not(.actions) {
        grid-template-columns: 24px 64px 1fr 90px 100px !important;
        gap: 0.5rem !important;
    }
}
@media (max-width: 640px) {
    body.woocommerce-cart .shop_table.cart tbody tr:not(.actions) {
        grid-template-columns: 24px 56px 1fr !important;
    }
    body.woocommerce-cart .shop_table.cart td.product-quantity {
        grid-column: 2 / 3 !important;
        grid-row: 2 !important;
    }
    body.woocommerce-cart .shop_table.cart td.product-subtotal {
        grid-column: 3 !important;
        grid-row: 2 !important;
    }
}


/* ===== DEFINITIVE CART FIX - overflow + product-name ===== */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .woocommerce-cart-form table.cart,
body.woocommerce-cart .woocommerce-cart-form table.cart tbody,
body.woocommerce-cart .woocommerce-cart-form table.cart tbody tr {
    overflow: visible !important;
}
body.woocommerce-cart .shop_table.cart td.product-name {
    overflow: visible !important;
    min-width: 0 !important;
    width: auto !important;
}
body.woocommerce-cart .shop_table.cart td.product-name a {
    display: inline !important;
    overflow: visible !important;
    width: auto !important;
    white-space: normal !important;
    word-break: break-word !important;
}
body.woocommerce-cart .shop_table.cart td.product-subtotal .woocommerce-Price-amount {
    white-space: nowrap !important;
}


/* ===== NUCLEAR FIX: Force product-name visible ===== */
/* Override WooCommerce flow-root and force flex layout */
body.woocommerce-cart .shop_table.cart tbody tr.cart_item,
body.woocommerce-cart .shop_table.cart tbody tr.woocommerce-cart-form__cart-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 1.25rem 0.5rem !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-remove {
    flex: 0 0 24px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    order: 1 !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail {
    flex: 0 0 72px !important;
    display: block !important;
    order: 2 !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    flex: 1 1 auto !important;
    min-width: 80px !important;
    display: block !important;
    order: 3 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: #e0e0e0 !important;
    line-height: 1.4 !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name > a {
    display: inline !important;
    color: #e0e0e0 !important;
    text-decoration: none !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name > a:hover {
    color: #c8956c !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-price {
    display: none !important;
    order: 99 !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-quantity {
    flex: 0 0 100px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    order: 4 !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-subtotal {
    flex: 0 0 110px !important;
    display: block !important;
    text-align: right !important;
    order: 5 !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #c8956c !important;
    white-space: nowrap !important;
    overflow: visible !important;
}


/* ===== FINAL POLISH: Fix Euro sign clipping ===== */
body.woocommerce-cart .woocommerce-cart-form {
    padding-right: 2rem !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-subtotal {
    padding-right: 0.5rem !important;
}


/* ============================================
   WARENKORB FEINSCHLIFF RUNDE 2
   ============================================ */

/* 1. Dunkle Box hinter Preis entfernen - alle Zellen transparent */
body.woocommerce-cart .shop_table.cart tbody td {
    background: transparent !important;
    background-color: transparent !important;
}

/* 2. Spalten-Verhaeltnis: 60/40 statt 45/55 */
body.woocommerce-cart div.woocommerce {
    grid-template-columns: 1fr 300px !important;
    gap: 1.75rem !important;
}

/* 3. Weniger Leerraum zwischen Titel und Produkten */
body.woocommerce-cart .bw-page-hero {
    padding-bottom: 1.5rem !important;
    margin-bottom: 0 !important;
}
body.woocommerce-cart .bw-page-content,
body.woocommerce-cart .entry-content,
body.woocommerce-cart article.page {
    padding-top: 1rem !important;
}
body.woocommerce-cart .woocommerce-notices-wrapper:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 4. Produktname - mehr Platz, weniger Umbruch */
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    min-width: 100px !important;
    font-size: 0.88rem !important;
    line-height: 1.35 !important;
}

/* 5. Cart-Form - kein doppelter Container-Look */
body.woocommerce-cart form.woocommerce-cart-form {
    background: rgba(255,255,255,0.025) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    padding: 1rem 1.25rem !important;
}

/* 6. Update Button - auf gleiche Zeile wie Gutschein, dezenter */
body.woocommerce-cart .shop_table.cart .actions {
    justify-content: space-between !important;
}
body.woocommerce-cart .shop_table.cart .actions > .button,
body.woocommerce-cart .shop_table.cart button[name="update_cart"] {
    font-size: 0.6rem !important;
    padding: 0.5rem 0.75rem !important;
    opacity: 0.5 !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    color: #888 !important;
    transition: opacity 0.3s !important;
}
body.woocommerce-cart .shop_table.cart .actions > .button:hover,
body.woocommerce-cart .shop_table.cart button[name="update_cart"]:hover {
    opacity: 1 !important;
    border-color: #c8956c !important;
    color: #c8956c !important;
}

/* Sidebar Card - etwas kompakter */
body.woocommerce-cart .cart_totals {
    padding: 1.25rem !important;
}
body.woocommerce-cart .cart_totals > h2 {
    font-size: 1rem !important;
    margin-bottom: 0.75rem !important;
    padding-bottom: 0.6rem !important;
}


/* ============================================
   RUNDE 3 - FINALE CART PRODUCT ROW FIX
   ============================================ */
/* Reduce fixed widths to fit in container */
body.woocommerce-cart .shop_table.cart tbody td.product-remove {
    flex: 0 0 20px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail {
    flex: 0 0 64px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail img {
    width: 64px !important;
    height: 64px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-quantity {
    flex: 0 0 90px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-subtotal {
    flex: 0 0 95px !important;
    font-size: 0.9rem !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    flex: 1 1 0% !important;
    min-width: 60px !important;
}
/* Tighter gap */
body.woocommerce-cart .shop_table.cart tbody tr.cart_item,
body.woocommerce-cart .shop_table.cart tbody tr.woocommerce-cart-form__cart-item {
    gap: 8px !important;
    padding: 1rem 0 !important;
}
/* Less padding on form to give more room */
body.woocommerce-cart form.woocommerce-cart-form {
    padding: 0.75rem 1rem !important;
}
/* Remove large empty space between header and cart */
body.woocommerce-cart .bw-page-hero + .bw-section,
body.woocommerce-cart .bw-page-hero + .bw-page-content,
body.woocommerce-cart .bw-page-hero + article,
body.woocommerce-cart .entry-content {
    padding-top: 0.5rem !important;
    margin-top: 0 !important;
}


/* ============================================
   RUNDE 3 FIX - Grid Row Placement
   ============================================ */
body.woocommerce-cart div.woocommerce > .woocommerce-notices-wrapper {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
}
body.woocommerce-cart div.woocommerce > .woocommerce-notices-wrapper:empty {
    display: none !important;
}
body.woocommerce-cart div.woocommerce > .woocommerce-cart-form {
    grid-column: 1 !important;
    grid-row: 2 !important;
}
body.woocommerce-cart div.woocommerce > .cart-collaterals {
    grid-column: 2 !important;
    grid-row: 2 !important;
    position: sticky !important;
    top: 80px !important;
    align-self: start !important;
}


/* ============================================
   SHOP PAGE FIXES — Filter Overlay, Toolbar,
   Sorting, Close Button, Grid Cards
   ============================================ */

/* ── a) Filter Sidebar - permanent visible on desktop ── */
.bw-shop-sidebar {
    position: sticky !important;
    top: 80px !important;
    background: transparent !important;
    overflow: visible !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    z-index: auto !important;
    left: auto !important;
}

/* Backdrop overlay */
.bw-filter-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 9998;
    display: none;
}

.bw-filter-backdrop.open {
    display: block;
}

/* Prevent body scroll when filter is open */
body.bw-filter-open {
    overflow: hidden;
}

/* Shop layout: sidebar + products grid */
.bw-shop-layout {
    display: grid !important;
    grid-template-columns: 260px 1fr !important;
    gap: 2rem !important;
    align-items: start !important;
}

.bw-shop-main {
    width: 100%;
}

/* ── b) Hide duplicate WooCommerce toolbar elements ── */
.bw-shop-main > .woocommerce-result-count,
.bw-shop-main > .woocommerce-ordering,
.bw-shop-main .woocommerce-result-count:not(.bw-shop-toolbar .woocommerce-result-count),
.bw-shop-main .woocommerce-ordering:not(.bw-shop-toolbar .woocommerce-ordering),
.woocommerce .bw-shop-main > .woocommerce-result-count,
.woocommerce .bw-shop-main > .woocommerce-ordering {
    display: none !important;
}

/* Also hide any result-count/ordering that woocommerce_before_shop_loop outputs */
.bw-products-grid > .woocommerce-result-count,
.bw-products-grid > .woocommerce-ordering,
.bw-shop-main > p.woocommerce-result-count,
.bw-shop-main > form.woocommerce-ordering {
    display: none !important;
}

/* ── c) Sorting Dropdown styling ── */
.bw-shop-toolbar__sort select,
.bw-shop-toolbar .woocommerce-ordering select,
.bw-shop-toolbar__sort .woocommerce-ordering select {
    max-width: 250px;
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 0.5rem 1rem;
    color: #e0e0e0;
    font-size: 0.85rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.3s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.bw-shop-toolbar__sort select:hover,
.bw-shop-toolbar .woocommerce-ordering select:hover {
    border-color: rgba(200, 149, 108, 0.4);
}

.bw-shop-toolbar__sort select:focus,
.bw-shop-toolbar .woocommerce-ordering select:focus {
    border-color: #c8956c;
}

/* ── d) Close Button styling ── */
.bw-filter-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    color: #e0e0e0;
    font-size: 1.2rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
    padding: 0;
    z-index: 10;
}

.bw-filter-close:hover {
    background: #c8956c;
    color: #0a0a0a;
    border-color: #c8956c;
}

/* ── e) Product Grid Cards equal height ── */
.products .product,
.bw-products-grid .product {
    display: flex;
    flex-direction: column;
}

.products .product .button,
.products .product .add_to_cart_button,
.bw-products-grid .product .button,
.bw-products-grid .product .add_to_cart_button {
    margin-top: auto;
}

/* ── f) Toolbar Layout — single row ── */
.bw-shop-toolbar .bw-container {
    width: 100%;
}

.bw-shop-toolbar__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.bw-shop-toolbar__count {
    flex-shrink: 0;
}

.bw-shop-toolbar__count .woocommerce-result-count {
    margin: 0;
    color: #888;
    font-size: 0.9rem;
}

.bw-shop-toolbar__filters {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.bw-shop-toolbar__actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
    margin-left: auto;
}

/* Filter toggle button */
.bw-filter-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    color: #e0e0e0;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.bw-filter-toggle:hover {
    background: rgba(200, 149, 108, 0.1);
    border-color: rgba(200, 149, 108, 0.3);
    color: #c8956c;
}

/* ── Responsive: Toolbar stacks on small screens ── */
@media (max-width: 768px) {
    .bw-shop-toolbar__inner {
        flex-wrap: wrap;
    }

    .bw-shop-toolbar__filters {
        order: 3;
        width: 100%;
    }
}


/* ============================================
   SHOP: Filter immer sichtbar als Sidebar
   ============================================ */

/* Sidebar immer sichtbar, nicht als Overlay */
.bw-shop-sidebar {
    position: static !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    z-index: auto !important;
    background: transparent !important;
    overflow: visible !important;
    transform: none !important;
    transition: none !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    display: block !important;
}

/* Shop-Layout: Sidebar links + Grid rechts */
.bw-shop-layout {
    display: grid !important;
    grid-template-columns: 260px 1fr !important;
    gap: 2rem !important;
    align-items: start !important;
}

/* Sidebar-Blöcke stylen */
.bw-shop-sidebar .bw-sidebar-block {
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 12px !important;
    padding: 1.25rem !important;
    margin-bottom: 1rem !important;
}
.bw-shop-sidebar .bw-sidebar-block h3,
.bw-shop-sidebar .bw-sidebar-block-title {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: #c8956c !important;
    margin-bottom: 1rem !important;
    padding-bottom: 0.6rem !important;
    border-bottom: 1px solid rgba(200,149,108,0.12) !important;
}

/* Filter-Button und Close-Button verstecken */
.bw-filter-toggle,
.bw-filter-close,
#bwFilterToggle {
    display: none !important;
}

/* Backdrop nicht noetig */
.bw-filter-backdrop {
    display: none !important;
}

/* Versand-Info Box unten in Sidebar */
.bw-sidebar-shipping {
    margin-top: auto !important;
}

/* Responsive: Unter 900px Filter als Overlay */
@media (max-width: 900px) {
    .bw-shop-layout {
        grid-template-columns: 1fr !important;
    }
    .bw-shop-sidebar {
        position: fixed !important;
        left: -320px !important;
        width: 320px !important;
        height: 100vh !important;
        top: 0 !important;
        z-index: 9999 !important;
        background: #111 !important;
        overflow-y: auto !important;
        padding: 2rem 1.5rem !important;
        transition: left 0.3s ease !important;
        border-right: 1px solid rgba(200,149,108,0.1) !important;
    }
    .bw-shop-sidebar.open {
        left: 0 !important;
    }
    .bw-filter-toggle,
    #bwFilterToggle {
        display: inline-flex !important;
    }
    .bw-filter-close {
        display: flex !important;
    }
    .bw-filter-backdrop.open {
        display: block !important;
    }
}


/* ============================================
   PERMANENT SIDEBAR - ULTRA SPECIFICITY
   ============================================ */
body.post-type-archive-product .bw-shop-layout,
body.tax-product_cat .bw-shop-layout {
    display: grid !important;
    grid-template-columns: 260px 1fr !important;
    gap: 2rem !important;
    align-items: start !important;
}
body.post-type-archive-product .bw-shop-layout > .bw-filter-backdrop,
body.tax-product_cat .bw-shop-layout > .bw-filter-backdrop {
    display: none !important;
}
body.post-type-archive-product .bw-shop-layout > .bw-shop-sidebar,
body.tax-product_cat .bw-shop-layout > .bw-shop-sidebar {
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    height: auto !important;
    z-index: auto !important;
    background: transparent !important;
    overflow: visible !important;
    transform: none !important;
    transition: none !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    display: block !important;
    position: sticky !important;
    top: 80px !important;
}
body.post-type-archive-product .bw-filter-toggle,
body.post-type-archive-product #bwFilterToggle,
body.post-type-archive-product .bw-filter-close,
body.tax-product_cat .bw-filter-toggle,
body.tax-product_cat #bwFilterToggle,
body.tax-product_cat .bw-filter-close {
    display: none !important;
}
/* Sidebar Blocks als Cards */
body.post-type-archive-product .bw-shop-sidebar .bw-sidebar-block,
body.tax-product_cat .bw-shop-sidebar .bw-sidebar-block {
    background: rgba(255,255,255,0.025) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 12px !important;
    padding: 1.25rem !important;
    margin-bottom: 1rem !important;
}
body.post-type-archive-product .bw-shop-sidebar .bw-sidebar-block h3,
body.tax-product_cat .bw-shop-sidebar .bw-sidebar-block h3 {
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: #c8956c !important;
    margin-bottom: 0.85rem !important;
    padding-bottom: 0.5rem !important;
    border-bottom: 1px solid rgba(200,149,108,0.12) !important;
}
/* Responsive: unter 900px wieder Overlay */
@media (max-width: 900px) {
    body.post-type-archive-product .bw-shop-layout,
    body.tax-product_cat .bw-shop-layout {
        grid-template-columns: 1fr !important;
    }
    body.post-type-archive-product .bw-shop-layout > .bw-shop-sidebar,
    body.tax-product_cat .bw-shop-layout > .bw-shop-sidebar {
        position: fixed !important;
        left: -320px !important;
        width: 320px !important;
        height: 100vh !important;
        top: 0 !important;
        z-index: 9999 !important;
        background: #111 !important;
        overflow-y: auto !important;
        padding: 2rem 1.5rem !important;
        transition: left 0.3s ease !important;
    }
    body.post-type-archive-product .bw-shop-sidebar.open,
    body.tax-product_cat .bw-shop-sidebar.open {
        left: 0 !important;
    }
    body.post-type-archive-product .bw-filter-toggle,
    body.post-type-archive-product #bwFilterToggle,
    body.tax-product_cat .bw-filter-toggle,
    body.tax-product_cat #bwFilterToggle {
        display: inline-flex !important;
    }
}


/* ===== FIX: Mehr Abstand zwischen Produktbild und Kategorie-Label ===== */
.products .product .posted_in,
.products .product .product-category,
.woocommerce ul.products li.product .posted_in,
ul.products li.product .posted_in,
.bw-products-grid .product .posted_in {
    margin-top: 1rem !important;
    padding-top: 0.25rem !important;
}
/* Auch fuer das Kategorie-Label ueber dem Titel */
.products .product .product_cat_label,
.products .product > a + .posted_in,
.products .product > a + span {
    margin-top: 0.85rem !important;
}


/* ============================================
   WARENKORB FINALE FIXES - v73
   ============================================ */

/* 1. Produktzeile: Mehr Gap, sauberes Layout */
body.woocommerce-cart .shop_table.cart tbody tr.cart_item,
body.woocommerce-cart .shop_table.cart tbody tr.woocommerce-cart-form__cart-item {
    gap: 14px !important;
}

/* Thumbnail: fest, kein shrink, overflow hidden */
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail {
    flex: 0 0 68px !important;
    overflow: hidden !important;
    border-radius: 10px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail a {
    display: block !important;
    width: 68px !important;
    height: 68px !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    background: #1a1a1a !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail img {
    width: 68px !important;
    height: 68px !important;
    object-fit: contain !important;
    display: block !important;
}

/* Name: flex-grow, kein Overlap, word-break */
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    flex: 1 1 0% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    word-break: break-word !important;
    hyphens: auto !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name > a {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    line-height: 1.35 !important;
}

/* 2. Spalten top-aligned */
body.woocommerce-cart div.woocommerce {
    align-items: start !important;
}
/* Cart-form und Collaterals auf gleicher Hoehe starten */
body.woocommerce-cart .woocommerce-cart-form {
    margin-top: 0 !important;
}
body.woocommerce-cart .cart-collaterals {
    margin-top: 0 !important;
}

/* 3. Weniger Leerraum zwischen Titel und Content */
body.woocommerce-cart .bw-page-hero {
    padding-bottom: 1rem !important;
    margin-bottom: 0 !important;
}
body.woocommerce-cart .bw-section.bw-page-content {
    padding-top: 0.5rem !important;
}
body.woocommerce-cart article.page,
body.woocommerce-cart .entry-content,
body.woocommerce-cart .page-content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
body.woocommerce-cart .woocommerce-notices-wrapper {
    margin-bottom: 0.5rem !important;
}
body.woocommerce-cart .woocommerce-notices-wrapper:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
}


/* ===== DEFINITIVE NAME/IMAGE OVERLAP FIX ===== */
/* Force the <a> inside product-name to block */
body.woocommerce-cart .shop_table.cart tbody td.product-name a[href] {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-height: 2.7em !important;
    line-height: 1.35 !important;
    color: #e0e0e0 !important;
    text-decoration: none !important;
    word-break: break-word !important;
}
/* Hide dl.variation inside name */
body.woocommerce-cart .shop_table.cart tbody td.product-name dl.variation {
    display: none !important;
}
/* Thumbnail: dark border so white images stand out */
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail a {
    border: 1px solid rgba(255,255,255,0.08) !important;
}
/* Force gap to 16px */
body.woocommerce-cart .shop_table.cart tbody tr.cart_item {
    column-gap: 16px !important;
}


/* ============================================
   WARENKORB v76 - Bilder contain + Name ungekürzt
   ============================================ */

/* 1. Produktbilder: contain statt cover */
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 72px !important;
    height: 72px !important;
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    padding: 4px !important;
    display: block !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail {
    flex: 0 0 72px !important;
}


/* ===== Name nicht abschneiden - kein max-height ===== */
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    overflow: visible !important;
    max-height: none !important;
    -webkit-line-clamp: unset !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name a,
body.woocommerce-cart .shop_table.cart tbody td.product-name > a {
    overflow: visible !important;
    max-height: none !important;
    -webkit-line-clamp: unset !important;
    text-overflow: clip !important;
    display: block !important;
}


/* ===== Checkout Button zentriert + volle Breite ===== */
body.woocommerce-cart .cart_totals .wc-proceed-to-checkout {
    padding: 0 !important;
    text-align: center !important;
}
body.woocommerce-cart .cart_totals .wc-proceed-to-checkout a.checkout-button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}


/* ===== Keine Silbentrennung im Produktnamen ===== */
body.woocommerce-cart .shop_table.cart tbody td.product-name,
body.woocommerce-cart .shop_table.cart tbody td.product-name a {
    hyphens: none !important;
    -webkit-hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* ===== Header Logo nicht abschneiden ===== */
.bw-header .bw-header-inner .bw-logo,
.bw-header .bw-logo,
.bw-header-inner .bw-logo {
    overflow: visible !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    min-width: auto !important;
}
.bw-header .bw-logo a {
    overflow: visible !important;
    white-space: nowrap !important;
}


/* ===== v80 FINAL: Mehr Platz fuer Produktname ===== */
body.woocommerce-cart .shop_table.cart tbody td.product-remove {
    flex: 0 0 20px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail {
    flex: 0 0 64px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    flex: 1 1 0% !important;
    min-width: 120px !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-quantity {
    flex: 0 0 80px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-subtotal {
    flex: 0 0 90px !important;
    font-size: 0.85rem !important;
}
body.woocommerce-cart .shop_table.cart tbody tr.cart_item,
body.woocommerce-cart .shop_table.cart tbody tr.woocommerce-cart-form__cart-item {
    gap: 8px !important;
}


/* ===== v82: Linke Spalte breiter, Name mehr Platz ===== */
/* Hauptcontainer: 65/35 Verhaeltnis */
body.woocommerce-cart div.woocommerce {
    grid-template-columns: 1fr 280px !important;
    max-width: 1200px !important;
}
/* Produktzeile: Qty und Preis kompakter */
body.woocommerce-cart .shop_table.cart tbody td.product-name {
    flex: 1 1 0% !important;
    min-width: 140px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-quantity {
    flex: 0 0 75px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-subtotal {
    flex: 0 0 85px !important;
    font-size: 0.82rem !important;
}
/* Bilder: sicherstellen contain + Hintergrund */
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail a {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 8px !important;
}
body.woocommerce-cart .shop_table.cart tbody td.product-thumbnail img {
    object-fit: contain !important;
    padding: 4px !important;
}


/* ============================================
   ABSOLUTE FINAL: Cart images contain + bigger
   ============================================ */
body.woocommerce-cart .shop_table.cart tbody tr td.product-thumbnail {
    flex: 0 0 88px !important;
    width: 88px !important;
    min-width: 88px !important;
}
body.woocommerce-cart .shop_table.cart tbody tr td.product-thumbnail a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
}
body.woocommerce-cart .shop_table.cart tbody tr td.product-thumbnail a img,
body.woocommerce-cart .shop_table.cart tbody tr td.product-thumbnail img,
body.woocommerce-cart table.cart img,
body.woocommerce-cart .cart_item img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
    padding: 6px !important;
    max-width: 88px !important;
    max-height: 88px !important;
}
