/* ===== ULTRA CART – GRID LAYOUT ===== */
.woocommerce-cart .woocommerce{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 360px !important; /* links Tabelle, rechts Totals */
  gap:28px !important;
  align-items:start !important;
}

/* Spaltenzuordnung */
.woocommerce-cart .woocommerce .woocommerce-cart-form{ grid-column:1 / 2 !important; }
.woocommerce-cart .woocommerce .cart-collaterals{     grid-column:2 / 3 !important; }

/* Volle Breite für Zusatzblöcke */
.woocommerce-cart .woocommerce .ultra-cart-progress,
.woocommerce-cart .woocommerce .ultra-cart-upsell{
  grid-column:1 / -1 !important;
}

/* Mobile einspaltig */
@media (max-width:980px){
  .woocommerce-cart .woocommerce{
    grid-template-columns:1fr !important;
  }
  .woocommerce-cart .woocommerce .woocommerce-cart-form,
  .woocommerce-cart .woocommerce .cart-collaterals,
  .woocommerce-cart .woocommerce .ultra-cart-progress,
  .woocommerce-cart .woocommerce .ultra-cart-upsell{
    grid-column:1 / 2 !important;
  }
}

/* Floats/Breiten neutralisieren (falls vorhanden) */
.woocommerce .cart-collaterals,
.woocommerce-cart .cart-collaterals{ float:none !important; width:auto !important; }
.woocommerce-cart .woocommerce:before,
.woocommerce-cart .woocommerce:after{ display:none !important; }

/* ===== Größere Produktbilder in der Tabelle ===== */
.woocommerce-cart .shop_table.cart td.product-thumbnail,
.woocommerce-cart .shop_table.cart th.product-thumbnail{ width:140px !important; }

.woocommerce-cart .shop_table.cart td.product-thumbnail a,
.woocommerce-cart .shop_table.cart td.product-thumbnail img{
  display:block !important;
  width:120px !important;
  height:120px !important;
  max-width:none !important;
  object-fit:cover !important;
  border-radius:10px !important;
  box-shadow:0 2px 10px rgba(0,0,0,.06) !important;
}

.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals {
    float: right;
    width: 100%;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
    background-color: #000;
    color: #fff;
    -webkit-font-smoothing: antialiased;
}

.woocommerce #content table.cart td.actions .input-text, .woocommerce table.cart td.actions .input-text, .woocommerce-page #content table.cart td.actions .input-text, .woocommerce-page table.cart td.actions .input-text {
    width: 200px;
    padding: 10px;
    border-radius: 20px;
}

/* Warenkorb aktualisieren Button fixen */
.woocommerce-cart .actions .button[name="update_cart"],
.woocommerce-cart .actions button[name="update_cart"] {
  background: #111 !important;   /* dunkler Hintergrund */
  color: #fff !important;        /* weiße Schrift */
  border: none;
  padding: 0.75em 1.5em;
  font-weight: 600;
  cursor: pointer;
  transition: background .2s ease;
}

.woocommerce-cart .actions .button[name="update_cart"]:hover,
.woocommerce-cart .actions button[name="update_cart"]:hover {
  background: #333 !important;   /* etwas heller beim Hover */
  color: #fff !important;
}
@media (max-width:768px){
  .woocommerce-cart .shop_table.cart td.product-thumbnail,
  .woocommerce-cart .shop_table.cart th.product-thumbnail{ width:96px !important; }
  .woocommerce-cart .shop_table.cart td.product-thumbnail a,
  .woocommerce-cart .shop_table.cart td.product-thumbnail img{
    width:90px !important; height:90px !important;
  }
}

/* ===== Progress-Bar (dezent, kein Grün, Icon passend) ===== */
.woocommerce-cart .ultra-cart-progress{ margin:8px 0 18px; }
.ultra-cart-progress .ucp__bar{
  height:10px; background:#e9e9e9; border-radius:999px; overflow:hidden;
}
.ultra-cart-progress .ucp__fill{
  height:100%; background:linear-gradient(90deg,#111,#444);
  width:0%; transition:width .25s ease;
}
.ultra-cart-progress .ucp__msg{
  margin-top:8px; font-size:.95rem; color:#222;
  display:inline-flex; align-items:center; gap:8px;
}
.ultra-cart-progress .ucp__msg--ok{ color:#222; }
.ultra-cart-progress .ucp__icon{ width:18px; height:18px; display:inline-flex; color:#222; }

/* ===== Upsell ===== */
.ultra-cart-upsell{ margin-top:36px; padding:20px 0; border-top:1px solid #eee; }
.ultra-cart-upsell__title{ font-size:1.25rem; margin:0 0 14px; }

/* Woo Cross-Sell Cards etwas luftiger */
.woocommerce .cross-sells ul.products{ gap:16px; }
.woocommerce .cross-sells ul.products li.product{
  padding:12px; border:1px solid #eee; border-radius:10px;
}

/* Make sure hidden really hides, shown really shows */
.uc-coupon__wrap[hidden]{ display:none !important; }
.uc-coupon__wrap{ display:block; }

