/* WooCommerce skinned into the Group Supermarket design system.
   Loaded only when WooCommerce is active. Covers shop grid, product page,
   cart, checkout — colours from tokens, shapes from the demo. */

/* Buttons */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt,
.woocommerce button.button.alt, .wc-block-components-button {
  background: var(--accent) !important;
  color: var(--on-accent) !important;
  border-radius: var(--radius) !important;
  font-family: var(--font-body) !important;
  font-weight: 600 !important;
  padding: 12px 24px !important;
  min-height: 48px;
  border: none !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover {
  background: var(--brand-green-deep) !important;
  color: var(--on-accent) !important;
}

/* Prices — Montserrat, no decimals shown (functions.php sets 0), sale in red */
.woocommerce .price, .woocommerce ul.products li.product .price {
  font-family: var(--font-mono) !important;
  font-weight: 600 !important;
  color: var(--fg) !important;
}
.woocommerce .price ins { color: var(--sale) !important; text-decoration: none; }
.woocommerce .price del { color: var(--fg-muted) !important; }

/* Sale / stock badges */
.woocommerce span.onsale {
  background: var(--sale) !important;
  color: #fff !important;
  border-radius: 0 !important;
  clip-path: var(--notch);
  min-height: 0 !important; min-width: 0 !important;
  padding: 4px 10px 4px 15px !important;
  font-family: var(--font-mono) !important;
  font-size: 0.75rem !important;
  letter-spacing: 0.08em; text-transform: uppercase;
}
.woocommerce p.stock.out-of-stock { color: var(--fg-muted) !important; }
.woocommerce p.stock.in-stock { color: var(--open) !important; }

/* Product cards */
.woocommerce ul.products li.product {
  border: 1px solid var(--rule);
  border-radius: var(--radius);
  background: var(--surface);
  padding: 16px !important;
}
@media (prefers-reduced-motion: no-preference) {
  .woocommerce ul.products li.product { transition: transform 180ms ease, border-color 180ms ease; }
  .woocommerce ul.products li.product:hover { transform: translateY(-4px); border-color: var(--accent); }
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--font-body) !important;
  font-weight: 500 !important;
  font-size: 1.0625rem !important;
  color: var(--fg);
}

/* Category headings on archive pages — Baloo, like the demo */
.woocommerce-products-header__title.page-title {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
}

/* Forms (checkout, account) */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  border: 1px solid var(--rule) !important;
  border-radius: var(--radius) !important;
  background: var(--surface) !important;
  color: var(--fg) !important;
  min-height: 44px;
  font-family: var(--font-body) !important;
}
.woocommerce form .form-row label { font-family: var(--font-mono); font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--fg-muted); }

/* Checkout: payment box, notices */
.woocommerce-checkout #payment { background: var(--surface) !important; border: 1px solid var(--rule); border-radius: var(--radius); }
.woocommerce-message, .woocommerce-info {
  border-top-color: var(--accent) !important;
  background: var(--surface) !important;
  color: var(--fg) !important;
}
.woocommerce-error { border-top-color: var(--sale) !important; }

/* Tables (cart, totals) */
.woocommerce table.shop_table { border: 1px solid var(--rule) !important; border-radius: var(--radius); }
.woocommerce table.shop_table td, .woocommerce table.shop_table th { border-color: var(--rule) !important; }
