/* ==========================================================================
   WooCommerce pages (cart, checkout, account basics). Single product gets its
   full treatment in Phase 3; this keeps everything legible and on-brand meanwhile.
   ========================================================================== */
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 var(--s-5); border: 1px solid var(--c-ink); border-radius: var(--r-1); background: var(--c-ink); color: var(--c-surface); font-size: var(--fs-sm); font-weight: var(--fw-medium); cursor: pointer; }
.woocommerce .button:hover { background: #2a2a2a; text-decoration: none; }
.woocommerce .button.alt { background: var(--c-ink); }
.woocommerce table.shop_table { width: 100%; border-collapse: collapse; border: 0; font-size: var(--fs-sm); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: var(--s-3) var(--s-2); border: 0; border-block-end: var(--hair); text-align: start; }
.woocommerce table.shop_table img { max-width: 72px; }
.woocommerce .quantity .qty { width: 64px; min-height: 44px; text-align: center; }
.woocommerce .cart-collaterals, .woocommerce-checkout .col2-set { display: grid; gap: var(--s-6); }
@media (min-width: 1024px) { .woocommerce-checkout .col2-set { grid-template-columns: 1fr 1fr; } }
.woocommerce form .form-row { margin-block-end: var(--s-4); }
.woocommerce form .form-row label { display: block; font-size: var(--fs-sm); color: var(--c-ink-2); margin-block-end: var(--s-1); }
.woocommerce form .form-row .input-text, .woocommerce form .form-row select { width: 100%; }
.woocommerce .woocommerce-breadcrumb { font-size: var(--fs-xs); color: var(--c-ink-2); margin-block-end: var(--s-4); }
.woocommerce .product .price { font-variant-numeric: tabular-nums; }
.woocommerce .product .price del { color: var(--c-ink-3); }
.woocommerce .product .price ins { text-decoration: none; }
.woocommerce span.onsale { display: none; }
.woocommerce #content div.product, .woocommerce div.product { padding-block-start: var(--s-5); }
.woocommerce div.product .product_title { font-size: var(--fs-xl); font-weight: var(--fw-light); }
.woocommerce div.product form.cart .button { min-width: 220px; }
.woocommerce-cart .cart_totals h2, .woocommerce-checkout h3 { font-size: var(--fs-md); }
.woocommerce .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; display: grid; gap: var(--s-2); }
.woocommerce .woocommerce-MyAccount-navigation a { color: var(--c-ink-2); }
.woocommerce .woocommerce-MyAccount-navigation .is-active a { color: var(--c-ink); border-block-end: 1px solid var(--c-ink); }
.woocommerce .woocommerce-MyAccount-content, .woocommerce-account .woocommerce { display: grid; gap: var(--s-6); }
@media (min-width: 1024px) { .woocommerce-account .woocommerce { grid-template-columns: 220px 1fr; } }
.woocommerce .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce .star-rating { display: none; }
