/* PawSpace Confetti Club — light restyle for native WooCommerce cart & checkout */
.woocommerce-cart, .woocommerce-checkout {
  --pcc-bg:#FFFFFF; --pcc-surface:#F7F7F5; --pcc-ink:#151515;
  --pcc-accent:#4E7FFF; --pcc-pink:#FF4F81; --pcc-yellow:#FFCF3F;
  font-family:'General Sans','Segoe UI',system-ui,sans-serif !important;
}
.woocommerce-cart h1.entry-title, .woocommerce-checkout h1.entry-title,
.woocommerce-cart .page-title, .woocommerce-checkout .page-title {
  font-family:'Space Grotesk',system-ui,sans-serif !important; letter-spacing:-.02em; font-weight:700 !important;
}

/* Cart table */
.woocommerce-cart table.shop_table, .woocommerce-checkout table.shop_table {
  border:none !important; border-radius:14px; overflow:hidden; background:var(--pcc-surface);
}
.woocommerce-cart table.shop_table th { background:var(--pcc-ink) !important; color:#fff !important; font-weight:700 !important; border:none !important; padding:14px !important; }
.woocommerce-cart table.shop_table td { border-color:#eceae5 !important; padding:16px 14px !important; }
.woocommerce-cart .product-name a, .woocommerce-checkout .product-name a { font-weight:600; color:var(--pcc-ink); }
.woocommerce-cart .product-price, .woocommerce-cart .product-subtotal,
.woocommerce-checkout .product-total { font-family:'Space Grotesk',sans-serif; font-weight:700; color:var(--pcc-accent) !important; }

/* Quantity input */
.woocommerce-cart .quantity input.qty, .woocommerce-checkout .quantity input.qty {
  border-radius:8px !important; border:2px solid #e5e3de !important; padding:10px !important;
}

/* Buttons */
.woocommerce-cart .button, .woocommerce-checkout .button,
.woocommerce-cart input.button, .woocommerce-checkout input.button {
  background:var(--pcc-accent) !important; color:#fff !important; border:none !important;
  border-radius:999px !important; font-weight:700 !important; padding:14px 28px !important;
  text-transform:none !important; letter-spacing:0 !important; transition:transform .15s ease !important;
}
.woocommerce-cart .button:hover, .woocommerce-checkout .button:hover,
.woocommerce-cart input.button:hover, .woocommerce-checkout input.button:hover { transform:translateY(-2px); opacity:1 !important; }
.woocommerce-cart .button.disabled, .woocommerce-checkout .button.disabled { opacity:.5 !important; transform:none !important; }

/* Coupon field */
.woocommerce-cart .coupon .input-text, .woocommerce-checkout .input-text {
  border-radius:999px !important; border:2px solid #e5e3de !important; padding:12px 18px !important;
}

/* Cart totals box */
.woocommerce-cart .cart_totals, .woocommerce-checkout #order_review {
  background:var(--pcc-ink) !important; color:#fff !important; border-radius:20px !important; padding:28px !important;
}
.woocommerce-cart .cart_totals h2, .woocommerce-checkout #order_review h3 {
  color:#fff !important; font-family:'Space Grotesk',sans-serif !important;
}
.woocommerce-cart .cart_totals table, .woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table {
  background:transparent !important;
}
.woocommerce-cart .cart_totals table th, .woocommerce-cart .cart_totals table td,
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table td {
  color:#fff !important; border-color:rgba(255,255,255,.15) !important; background:transparent !important;
}
.woocommerce-cart .cart_totals .order-total .amount, .woocommerce-checkout .order-total .amount {
  color:var(--pcc-yellow) !important; font-family:'Space Grotesk',sans-serif !important; font-weight:700 !important; font-size:20px !important;
}
.woocommerce-cart .fee, .woocommerce-checkout .fee { color:#3DB88A !important; }

/* Checkout form fields */
.woocommerce-checkout .woocommerce-billing-fields input, .woocommerce-checkout .woocommerce-shipping-fields input,
.woocommerce-checkout .woocommerce-billing-fields select, .woocommerce-checkout select {
  border-radius:10px !important; border:2px solid #e5e3de !important; padding:12px 14px !important;
}
.woocommerce-checkout .woocommerce-billing-fields h3, .woocommerce-checkout .woocommerce-additional-fields h3 {
  font-family:'Space Grotesk',sans-serif !important; font-weight:700 !important;
}

/* Place order button */
.woocommerce-checkout #place_order {
  background:var(--pcc-pink) !important; font-size:16px !important; padding:16px 0 !important; width:100%;
}

/* Notices */
.woocommerce-cart .woocommerce-message, .woocommerce-checkout .woocommerce-message,
.woocommerce-cart .woocommerce-info, .woocommerce-checkout .woocommerce-info {
  border-top-color:var(--pcc-accent) !important; border-radius:10px !important; background:var(--pcc-surface) !important;
}
/* ===== PawSpace Rebuild: page shell for cart & checkout ===== */
.psr-cartpage, .psr-checkoutpage { padding: 40px 0 90px; }
.psr-page-title {
  font-family: 'Space Grotesk', system-ui, sans-serif !important;
  font-size: clamp(30px, 3.6vw, 44px) !important;
  letter-spacing: -.02em; font-weight: 700 !important; margin: 0 0 28px !important;
}

/* Empty cart state */
.woocommerce-cart .cart-empty {
  background: var(--pcc-surface); border: none !important; border-radius: 20px;
  padding: 48px 32px !important; text-align: center; font-size: 16px; color: #42403c;
}
.woocommerce-cart a.button.wc-backward {
  display: inline-flex; margin-top: 18px;
}

/* Cart layout: table + totals side by side on desktop */
.woocommerce-cart .woocommerce {
  display: grid; grid-template-columns: 1.5fr 1fr; gap: 40px; align-items: start;
}
.woocommerce-cart .cart_totals { margin-top: 0 !important; }
.woocommerce-cart table.shop_table td.product-thumbnail img {
  border-radius: 10px; width: 72px; height: 72px; object-fit: cover;
}
.woocommerce-cart .product-remove a.remove {
  background: var(--pcc-surface) !important; color: var(--pcc-ink) !important;
  border-radius: 50%; width: 26px; height: 26px; display: inline-flex;
  align-items: center; justify-content: center; font-size: 16px !important;
}
.woocommerce-cart .product-remove a.remove:hover { background: var(--pcc-pink) !important; color: #fff !important; }
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button {
  display: block; text-align: center; font-size: 16px !important; padding: 16px 0 !important;
  background: var(--pcc-pink) !important;
}
.woocommerce-cart .coupon { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.woocommerce-cart .coupon .input-text { flex: 1 1 200px; }
@media (max-width: 900px) {
  .woocommerce-cart .woocommerce { grid-template-columns: 1fr; }
}

/* Checkout: 2-column with sticky order summary */
.woocommerce-checkout form.checkout {
  display: grid; grid-template-columns: 1.3fr 1fr; gap: 44px; align-items: start;
}
.woocommerce-checkout form.checkout #customer_details { grid-column: 1; grid-row: 1; }
.woocommerce-checkout form.checkout h3#order_review_heading {
  grid-column: 1; grid-row: 2; font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important; margin-top: 8px !important;
}
.woocommerce-checkout form.checkout #order_review {
  grid-column: 2; grid-row: 1 / span 2; position: sticky; top: 24px;
}
.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { width: 100%; float: none; }
.woocommerce-checkout .col2-set { display: flex; flex-direction: column; gap: 28px; }
.woocommerce-checkout .woocommerce-shipping-fields, .woocommerce-checkout .woocommerce-additional-fields {
  margin-top: 8px;
}
.woocommerce-checkout .form-row label { font-size: 13px; font-weight: 600; color: #6b6862; margin-bottom: 4px; display: block; }
.woocommerce-checkout .payment_methods { list-style: none; margin: 16px 0 !important; padding: 0 !important; }
.woocommerce-checkout .payment_methods > li {
  background: #232323 !important; border-radius: 12px !important; padding: 14px 16px !important; margin-bottom: 10px !important;
  border: none !important;
}
.woocommerce-checkout .payment_methods label { color: #fff !important; font-weight: 600 !important; }
.woocommerce-checkout .payment_box { background: #1c1c1c !important; color: #d8d6d1 !important; border-radius: 10px !important; margin-top: 10px !important; }
@media (max-width: 900px) {
  .woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
  .woocommerce-checkout form.checkout #customer_details,
  .woocommerce-checkout form.checkout h3#order_review_heading,
  .woocommerce-checkout form.checkout #order_review {
    grid-column: 1;
    grid-row: auto;
  }
  .woocommerce-checkout form.checkout #order_review { position: static; }
}

/* Trust strip below checkout */
.psr-checkout__trust {
  display: flex; gap: 14px; flex-wrap: wrap; margin-top: 32px;
}
.psr-checkout__trust-item {
  background: var(--pcc-surface); border-radius: 8px; padding: 10px 16px;
  font-size: 12.5px; font-weight: 600; color: var(--pcc-ink);
}