/* Purpose: Cart (WooCommerce Cart Block) — brand skin: theme typography, colours, buttons.
   Scoped under .wp-block-woocommerce-cart. Blocks ship heavy inline/util styles, so !important
   is used deliberately where the block would otherwise win the cascade. */

/* ---- headings / labels ---- */
.wp-block-woocommerce-cart .wc-block-cart__totals-title,
.wp-block-woocommerce-cart .wc-block-components-title {
  font-family: var(--font-body);
  font-weight: var(--weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 14px;
  color: var(--color-text);
}
.wp-block-woocommerce-cart table.wc-block-cart-items thead th {
  font-family: var(--font-body);
  font-weight: var(--weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 13px;
  color: var(--color-text);
}

/* ---- product name + prices ---- */
.wp-block-woocommerce-cart .wc-block-components-product-name {
  font-family: var(--font-body);
  font-weight: var(--weight-semibold);
  font-size: 15px !important;
  color: var(--color-primary) !important;
  text-decoration: none;
}
.wp-block-woocommerce-cart a.wc-block-components-product-name:hover { color: var(--color-gold) !important; }
.wp-block-woocommerce-cart .wc-block-components-product-metadata { color: var(--color-text-muted); font-size: 13px; }
.wp-block-woocommerce-cart .wc-block-components-product-price,
.wp-block-woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
  color: var(--color-primary);
  font-variant-numeric: lining-nums;
}
.wp-block-woocommerce-cart .wc-block-components-product-price__value { font-weight: var(--weight-medium); }

/* ---- quantity selector ---- */
.wp-block-woocommerce-cart .wc-block-components-quantity-selector {
  border: 1px solid var(--color-border) !important;
  border-radius: 0 !important;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__input {
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--color-primary);
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__button {
  color: var(--color-primary);
  transition: color var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out);
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:hover {
  color: var(--color-gold);
  background: var(--color-bg-alt);
}

/* ---- remove (trash) ---- */
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link {
  color: var(--color-text-muted) !important;
  text-transform: none;
  transition: color var(--duration-base) var(--ease-out);
}
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link:hover { color: var(--color-red) !important; }

/* ---- coupon input — single clean border, gold on focus (no offset outline) ---- */
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon input {
  border-radius: 0 !important;
  border: 1px solid var(--color-border) !important;
  background: #fafaf6;
  font-family: var(--font-body);
}
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input:focus,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input:focus-visible,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon input:focus,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border-color: var(--color-gold) !important;
}

/* ---- totals rows ---- */
.wp-block-woocommerce-cart .wc-block-components-totals-item__label {
  font-family: var(--font-body);
  color: var(--color-text);
}
.wp-block-woocommerce-cart .wc-block-components-totals-item__value { color: var(--color-primary); font-weight: var(--weight-medium); }
.wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 15px;
  color: var(--color-primary);
}
.wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-family: var(--font-body);
  font-size: 24px !important;
  font-weight: var(--weight-medium);
  color: var(--color-primary) !important;
}

/* ---- links (e.g. contact email/phone in shipping note) ---- */
.wp-block-woocommerce-cart .wc-block-components-totals-wrapper a,
.wp-block-woocommerce-cart .wc-block-cart__sidebar a { color: var(--color-primary); text-decoration: underline; text-underline-offset: 2px; }
.wp-block-woocommerce-cart .wc-block-components-totals-wrapper a:hover,
.wp-block-woocommerce-cart .wc-block-cart__sidebar a:hover { color: var(--color-gold); }

/* ===================================================== buttons (theme) */
.wp-block-woocommerce-cart .wc-block-components-button {
  border-radius: 0 !important;
  font-family: var(--font-body) !important;
  font-weight: var(--weight-medium) !important;
  text-transform: uppercase;
  letter-spacing: 0;
  text-decoration: none !important;
}
.wp-block-woocommerce-cart .wc-block-cart__sidebar a.wc-block-components-button:hover { text-decoration: none !important; }
/* primary CTA — Proceed to Checkout (gold) */
.wp-block-woocommerce-cart .wc-block-cart__submit-button {
  background: var(--color-gold) !important;
  color: var(--color-primary) !important;
  border: 1px solid var(--color-gold) !important;
  padding: 17px 28px !important;
  font-size: var(--text-sm) !important;
  transition: background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out) !important;
}
.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover {
  background: var(--color-gold-light) !important;
  border-color: var(--color-gold-light) !important;
  color: var(--color-primary) !important;
}
/* secondary — Apply coupon (navy) */
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__button {
  background: var(--color-primary) !important;
  color: #fff !important;
  border: 1px solid var(--color-primary) !important;
  font-size: var(--text-sm) !important;
}
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__button:hover {
  background: var(--color-gold) !important;
  border-color: var(--color-gold) !important;
  color: var(--color-primary) !important;
}

/* empty cart */
.wp-block-woocommerce-cart .wc-block-cart__empty-cart__title {
  font-family: var(--font-display);
  font-weight: var(--weight-regular);
  color: var(--color-primary);
}

/* ===== Empty cart =====
   Replaces the stock block state (sad-face icon + unstyled product blocks) with the
   theme's own eyebrow/serif-heading rhythm and the shared .pgrid card grid. */
.as-empty {
  text-align: center;
  max-width: 620px;
  margin: 0 auto;
  padding: var(--space-12) var(--space-4) var(--space-10);
}
.as-empty__eyebrow {
  font-family: var(--font-eyebrow);
  font-size: var(--text-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-gold);
  margin: 0 0 var(--space-3);
}
.as-empty__title {
  font-family: var(--font-display);
  font-weight: var(--weight-regular, 400);
  font-size: var(--text-3xl);
  line-height: 1.15;
  color: var(--color-primary);
  margin: 0 0 var(--space-3);
}
.as-empty__text {
  color: var(--color-text-muted);
  margin: 0 auto var(--space-6);
  max-width: 46ch;
}
.as-empty__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  justify-content: center;
}

/* "New in store" strip */
.as-empty-new { text-align: center; margin-top: var(--space-4); }
.as-empty-new__eyebrow {
  font-family: var(--font-eyebrow);
  font-size: var(--text-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-gold);
  margin: 0 0 var(--space-2);
}
.as-empty-new__title {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  color: var(--color-primary);
  margin: 0 0 var(--space-6);
}

/* The empty state has no sidebar, so it can breathe wider than the shop grid. */
.wp-block-woocommerce-empty-cart-block .pgrid { margin-bottom: var(--space-12); }
@media (min-width: 1200px) {
  .wp-block-woocommerce-empty-cart-block .pgrid { grid-template-columns: repeat(4, 1fr); }
}

/* Block defaults that fight the layout in this state. */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::before { display: none !important; }
.wp-block-woocommerce-empty-cart-block .wp-block-separator { display: none; }
