/* LumaBeam — WooCommerce Cart UI (donker + tokens) */
/* Geen template overrides. Sluit aan op je bestaande btn/tokens. */

.luminia-cart-wrap{max-width:var(--container);margin:0 auto;padding:24px 20px}

/* Notificaties */
.woocommerce-error,.woocommerce-info,.woocommerce-message{
  border-radius:14px; border:1px solid var(--border);
  background:color-mix(in oklab,var(--surface) 85%,transparent);
  color:var(--text); padding:12px 14px;
}

/* Tabel → kaartachtige rijen */
.woocommerce-cart .shop_table{
  width:100%; border-collapse:separate; border-spacing:0 0.75rem;
}
.woocommerce-cart .shop_table thead{ display:none; }
.woocommerce-cart .shop_table tbody tr.cart_item{
  display:grid; grid-template-columns:72px 1fr auto; gap:12px;
  background:var(--surface); border:1px solid var(--border);
  border-radius:16px; padding:12px; align-items:center;
}
.woocommerce-cart .shop_table td{ border:0; padding:0; }

/* Thumb */
.woocommerce-cart .product-thumbnail img{
  width:72px; height:72px; object-fit:cover; border-radius:10px;
  box-shadow:var(--shadow-md);
}

/* Title + meta blok */
.woocommerce-cart .product-name a{ font-weight:800; text-decoration:none; }
.woocommerce-cart .product-name .variation,
.woocommerce-cart .product-name .wc-item-meta{ color:var(--muted); font-size:.92rem; }

/* Qty + remove */
.woocommerce-cart .product-quantity .qty{
  width:90px; background:var(--surface-2); border:1px solid var(--border);
  border-radius:12px; padding:8px 10px; color:var(--text);
}
.woocommerce a.remove{
  display:inline-flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:10px;
  background:var(--surface-2); border:1px solid var(--border);
  text-decoration:none; line-height:1; transition:background var(--speed), border var(--speed);
}
.woocommerce a.remove:hover{ background:color-mix(in oklab,var(--surface-2),var(--brand) 10%); }

/* Price & subtotal */
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal{ font-weight:900; }

/* Coupon + update row */
.woocommerce-cart .cart-collaterals,
.woocommerce-cart .actions{
  margin-top:10px;
}
.woocommerce-cart .coupon{
  display:flex; gap:10px; flex-wrap:wrap;
  border:1px dashed var(--border); border-radius:14px; padding:12px;
  background:color-mix(in oklab,var(--surface) 85%,transparent);
}
.woocommerce-cart .coupon input.input-text{
  flex:1; min-width:220px; padding:12px 14px;
  border-radius:12px; border:1px solid var(--border); background:var(--surface-2); color:var(--text);
}

/* Buttons → match .btn/.btn.primary */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  border:1px solid var(--border); background:var(--surface);
  color:var(--text); padding:10px 14px; border-radius:12px;
  transition:transform var(--speed), background var(--speed), border var(--speed), opacity var(--speed);
  font-weight:700;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{
  border-color:color-mix(in oklab,var(--border),var(--brand) 25%); background:var(--surface-2);
}

/* Primary variant (proceed to checkout) */
.woocommerce a.checkout-button{
  background:var(--brand); color:#0b0b0c; border-color:transparent;
}
.woocommerce a.checkout-button:hover{ filter:saturate(105%); transform:translateY(-1px); }

/* Cart totals paneel */
.woocommerce .cart-collaterals .cart_totals{
  background:var(--surface); border:1px solid var(--border); border-radius:18px;
  box-shadow:var(--shadow-md); padding:16px;
}
.woocommerce .cart_totals h2{
  margin:0 0 10px; font-family:var(--font-display); font-weight:700; font-style:italic;
}
.woocommerce .cart_totals table{
  width:100%; border-collapse:separate; border-spacing:0 8px;
}
.woocommerce .cart_totals table th{ color:var(--muted); font-weight:600; }
.woocommerce .cart_totals table tr{
  display:grid; grid-template-columns:1fr auto;
  border:1px solid var(--border); background:var(--surface-2);
  border-radius:12px; padding:8px 12px;
}

/* Continue shopping */
.woocommerce .return-to-shop .button{ margin-top:8px; }

/* Responsive */
@media (max-width: 880px){
  .woocommerce-cart .shop_table tbody tr.cart_item{
    grid-template-columns:60px 1fr; align-items:start;
  }
  .woocommerce-cart .product-subtotal,
  .woocommerce-cart td.product-remove{ justify-self:end; }
}
