/* ===============================
   Woo Cart Pro — Base Styles
   Scope: only cart/checkout pages
   =============================== */

:root {
  --wc-brand: #4f46e5;        /* indigo */
  --wc-brand-2: #22c55e;      /* green */
  --wc-text: #0f172a;
  --wc-muted: #64748b;
  --wc-line: #e5e7eb;
  --wc-bg: #ffffff;
  --wc-panel: #ffffff;
  --wc-shadow: 0 10px 25px rgba(2,6,23,0.08);
  --wc-radius: 14px;
}

/* container tidy-up */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  color: var(--wc-text);
  font-size: 16px;
  line-height: 1.5;
}

/* Notices */
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error {
  border: 1px solid var(--wc-line);
  border-left: 4px solid var(--wc-brand);
  background: linear-gradient(180deg, #f8fafc, #ffffff);
  border-radius: var(--wc-radius);
  padding: 14px 16px;
  box-shadow: var(--wc-shadow);
  margin-bottom: 18px;
}
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message a.button {
  background: var(--wc-brand);
  border-radius: 999px;
  color: #fff;
  padding: 8px 14px;
  font-weight: 600;
  border: 0;
}
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message a.button:hover {
  filter: brightness(0.95);
}

/* Cart table “card” look */
.woocommerce-cart table.shop_table {
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  background: var(--wc-panel);
  box-shadow: var(--wc-shadow);
  border-radius: var(--wc-radius);
  overflow: hidden;
}
.woocommerce-cart table.shop_table thead th {
  background: #f8fafc;
  color: var(--wc-muted);
  font-weight: 600;
  padding: 14px 16px;
  border-bottom: 1px solid var(--wc-line);
}
.woocommerce-cart table.shop_table td {
  padding: 16px;
  border-bottom: 1px solid var(--wc-line);
  vertical-align: middle;
}
.woocommerce-cart table.shop_table tr:last-child td {
  border-bottom: 0;
}

/* Remove link */
.woocommerce-cart a.remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #fee2e2;
  color: #b91c1c !important;
  font-size: 18px;
  line-height: 1;
}
.woocommerce-cart a.remove:hover {
  background: #fecaca;
}

/* Thumbnail */
.woocommerce-cart td.product-thumbnail img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 10px;
  box-shadow: var(--wc-shadow);
}

/* Product name + variation chips */
.woocommerce-cart td.product-name a {
  color: var(--wc-text);
  font-weight: 600;
  text-decoration: none;
}
.woocommerce-cart td.product-name a:hover {
  color: var(--wc-brand);
}

/* Variation meta as chips */
.woocommerce-cart .variation {
  margin: 8px 0 0;
}
.woocommerce-cart .variation dt,
.woocommerce-cart .variation dd {
  display: inline-block;
  margin: 0 8px 8px 0;
}
.woocommerce-cart .variation dt {
  display: none; /* hide “label:” text */
}
.woocommerce-cart .variation dd p {
  margin: 0;
}
.woocommerce-cart .variation dd,
.woocommerce-cart .variation dd p {
  background: #f1f5f9;
  color: #0f172a;
  border: 1px solid var(--wc-line);
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 13px;
}

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

/* Quantity input as pill */
.woocommerce-cart .quantity .qty {
  width: 88px;
  padding: 10px 12px;
  border: 1px solid var(--wc-line);
  border-radius: 999px;
  box-shadow: none;
  outline: none;
  background: #fff;
  font-weight: 600;
}
.woocommerce-cart .quantity .qty:focus {
  border-color: var(--wc-brand);
  box-shadow: 0 0 0 4px rgba(79,70,229,0.12);
}

/* Update cart button */
.woocommerce-cart button[name="update_cart"] {
  background: #111827;
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 10px 16px;
  font-weight: 600;
  transition: transform .06s ease, filter .2s ease;
}
.woocommerce-cart button[name="update_cart"][disabled] {
  opacity: .35;
  cursor: not-allowed;
}
.woocommerce-cart button[name="update_cart"]:not([disabled]):hover {
  filter: brightness(1.05);
}
.woocommerce-cart button[name="update_cart"]:not([disabled]):active {
  transform: translateY(1px);
}

/* Cart totals panel */
.woocommerce-cart .cart-collaterals .cart_totals {
  background: var(--wc-panel);
  box-shadow: var(--wc-shadow);
  border-radius: var(--wc-radius);
  padding: 18px;
  border: 1px solid var(--wc-line);
}
.woocommerce-cart .cart_totals h2 {
  font-size: 18px;
  margin: 0 0 12px;
}
.woocommerce-cart .cart_totals table {
  border: 0;
}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
  border: 0;
  padding: 10px 0;
}
.woocommerce-cart .cart-subtotal th,
.woocommerce-cart .cart-subtotal td {
  color: var(--wc-muted);
}
.woocommerce-cart .order-total td,
.woocommerce-cart .order-total th {
  border-top: 1px dashed var(--wc-line);
  padding-top: 14px;
  font-size: 18px;
  font-weight: 800;
}

/* Proceed to checkout button */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: block;
  width: 100%;
  border-radius: 12px;
  border: 0;
  color: #fff !important;
  background: linear-gradient(135deg, var(--wc-brand), #7c3aed);
  padding: 14px 16px;
  text-align: center;
  font-weight: 700;
  box-shadow: var(--wc-shadow);
  transition: transform .06s ease, box-shadow .2s ease, filter .2s ease;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  filter: brightness(1.05);
  box-shadow: 0 12px 30px rgba(124,58,237,0.25);
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active {
  transform: translateY(1px);
}

/* Links & buttons general polish */
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: var(--wc-brand);
  color: #fff;
  border-radius: 12px;
  border: 0;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  filter: brightness(0.95);
}

/* Make totals box “sticky” on tall pages (desktop) */
@media (min-width: 992px) {
  .woocommerce-cart .cart-collaterals .cart_totals {
    position: sticky;
    top: 24px;
  }
}

/* Misc */
.woocommerce-cart .shop_table th.product-remove,
.woocommerce-cart .shop_table td.product-remove {
  text-align: center;
  width: 54px;
}
.woocommerce {
    margin-top: 20px;
}
a.checkout-button.button.alt.wc-forward {
    background: #6d28d9 !important;
}
table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents button.button {
    width: 200px;
}
table.shop_table.shop_table_responsive td {
    padding: 10px;
}
.woocommerce-message {
    padding-left: 45px !important;
    padding-top: 16px !important;
}
.woocommerce-message a.button.wc-forward {
    display: none;
}
p.return-to-shop a.button.wc-backward {
    display: none;
}
.cart-empty.woocommerce-info {
    padding-left: 45px;
}