/* ==========================================================================
   Cart page bundle — restyles WooCommerce's cart form inside our chrome
   ========================================================================== */

.pc-cart-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 20px; flex-wrap: wrap; margin-bottom: 22px;
}
.pc-cart-head .pc-crumb { margin-bottom: 0; }

.pc-cart-body { margin-bottom: 40px; }

/* ---------- Woo cart table ---------- */
.pc-cart .woocommerce table.shop_table {
  border: 1px solid var(--pc-border); border-radius: var(--pc-radius);
  border-collapse: separate; border-spacing: 0; overflow: hidden; background: var(--pc-surface);
}
.pc-cart .woocommerce table.shop_table th {
  background: var(--pc-surface2); font-family: var(--pc-sans); font-weight: 800;
  font-size: 13px; text-transform: uppercase; letter-spacing: .05em; color: var(--pc-muted2); padding: 16px;
}
.pc-cart .woocommerce table.shop_table td { padding: 18px 16px; border-top: 1px solid var(--pc-border); vertical-align: middle; }
.pc-cart .woocommerce table.shop_table img { width: 68px; border-radius: 14px; }
.pc-cart .product-name a { font-weight: 700; color: var(--pc-ink); }
.pc-cart .product-name a:hover { color: var(--pc-teal); }
.pc-cart .woocommerce-Price-amount { font-family: var(--pc-serif); font-size: 18px; }

.pc-cart .quantity input.qty {
  width: 72px; text-align: center; padding: 10px; border: 1px solid var(--pc-border2);
  border-radius: 10px; font-family: var(--pc-sans); font-weight: 700;
}
.pc-cart a.remove {
  color: var(--pc-muted3) !important; font-size: 22px; line-height: 1;
}
.pc-cart a.remove:hover { color: var(--pc-ink) !important; background: none !important; }

.pc-cart .coupon input#coupon_code {
  padding: 12px 14px; border: 1px solid var(--pc-border2); border-radius: 11px; min-width: 180px;
}

/* ---------- Cart totals ---------- */
.pc-cart .cart-collaterals { margin-top: 34px; }
.pc-cart .cart_totals {
  border: 1px solid var(--pc-border); border-radius: var(--pc-radius);
  padding: 26px; background: var(--pc-surface2);
}
.pc-cart .cart_totals h2 { font-size: 24px; margin: 0 0 16px; }
.pc-cart .cart_totals table { width: 100%; }
.pc-cart .cart_totals th, .pc-cart .cart_totals td { padding: 12px 0; border-top: 1px solid var(--pc-border); font-size: 15px; }
.pc-cart .cart_totals .order-total .woocommerce-Price-amount { font-size: 24px; }
.pc-cart .wc-proceed-to-checkout a.checkout-button {
  display: block; width: 100%; text-align: center; background: var(--pc-yellow) !important;
  color: var(--pc-ink) !important; padding: 16px !important; border-radius: 13px !important; font-size: 16px !important;
}

/* ---------- Upsell ---------- */
.pc-cart-suggest { padding-top: 44px; border-top: 1px solid var(--pc-border); }

/* ---------- Empty basket ---------- */
.pc-cart .cart-empty { font-size: 20px; font-family: var(--pc-serif); }
.pc-cart .return-to-shop { margin-top: 16px; }

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
  .pc-cart .woocommerce table.shop_table td { padding: 12px 8px; }
}
@media (max-width: 620px) {
  .pc-cart-head { flex-direction: column; align-items: flex-start; }
  .pc-cart .woocommerce table.shop_table img { width: 52px; }
}
