/* Son Epoxy – WooCommerce overrides */

/* ── CRITICAL: override WC plugin float-based grid ── */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after { display: none !important; }

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ── General WC resets ── */
.woocommerce-page .woocommerce,
.woocommerce { font-family: var(--se-font) !important; }

/* Remove WC default styles we replace */
.woocommerce .woocommerce-breadcrumb { display: none; }
.woocommerce-page #content div.product div.images { float: none !important; width: 100% !important; }
.woocommerce-page #content div.product div.summary { float: none !important; width: 100% !important; clear: none !important; }

/* Notices */
.woocommerce-message, .woocommerce-error, .woocommerce-info {
  border-top-color: var(--se-blue) !important;
  background: var(--se-light) !important;
  padding: 12px 20px !important;
  border-radius: var(--se-r-sm) !important;
  font-size: 0.9rem !important;
  margin-bottom: 24px !important;
}
.woocommerce-error { border-top-color: var(--se-red) !important; }
.woocommerce-message::before { color: var(--se-blue) !important; }

/* ── Cart Page ── */
.woocommerce-cart-form table.shop_table {
  border: 1px solid var(--se-border) !important;
  border-radius: var(--se-r) !important;
  overflow: hidden !important;
}
.woocommerce-cart-form table.shop_table th {
  background: var(--se-light) !important;
  color: var(--se-dark) !important;
  font-weight: 700 !important;
  font-size: 0.84rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 14px 16px !important;
}
.woocommerce-cart-form table.shop_table td { padding: 16px !important; vertical-align: middle !important; }
.woocommerce-cart-form .button {
  background: var(--se-blue) !important; color: #fff !important;
  border-radius: var(--se-r-sm) !important; font-weight: 700 !important;
  font-size: 0.86rem !important; padding: 10px 22px !important;
  transition: background 0.18s !important;
}
.woocommerce-cart-form .button:hover { background: var(--se-dark) !important; }
.woocommerce-cart .cart-collaterals .cart_totals {
  float: none !important; width: 100% !important; max-width: 420px !important; margin-left: auto !important;
}
.cart_totals table th { background: var(--se-light) !important; }
.wc-proceed-to-checkout .checkout-button {
  background: var(--se-blue) !important; color: #fff !important;
  border-radius: var(--se-r) !important; font-size: 1rem !important;
  font-weight: 800 !important; padding: 14px 28px !important;
  transition: background 0.18s !important;
}
.wc-proceed-to-checkout .checkout-button:hover { background: var(--se-dark) !important; }

/* ── Checkout ── */
.woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.woocommerce-checkout .form-row label { font-size: 0.84rem; font-weight: 700; color: var(--se-dark); margin-bottom: 5px; display: block; }
.woocommerce-checkout .form-row input, .woocommerce-checkout .form-row select, .woocommerce-checkout .form-row textarea {
  border: 1.5px solid var(--se-border) !important; border-radius: var(--se-r-sm) !important;
  padding: 10px 14px !important; font-size: 0.88rem !important;
  outline: none !important; transition: border-color 0.15s !important;
  width: 100% !important;
}
.woocommerce-checkout .form-row input:focus, .woocommerce-checkout .form-row select:focus { border-color: var(--se-blue) !important; }
#place_order {
  background: var(--se-blue) !important; color: #fff !important;
  border-radius: var(--se-r) !important; font-size: 1rem !important;
  font-weight: 800 !important; padding: 14px 28px !important; width: 100% !important;
}
#place_order:hover { background: var(--se-dark) !important; }

/* ── My Account ── */
.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 240px; float: left; margin-right: 40px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: flex; align-items: center; gap: 10px;
  padding: 11px 16px; border-radius: var(--se-r-sm);
  font-weight: 600; font-size: 0.88rem; color: var(--se-text);
  transition: all 0.15s; margin-bottom: 2px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--se-light); color: var(--se-blue);
}
.woocommerce-account .woocommerce-MyAccount-content { overflow: hidden; }

/* ── Product loop card tweaks ── */
.woocommerce ul.products li.product .woocommerce-loop-category__title {
  font-size: 0.92rem !important; font-weight: 700 !important; padding: 12px !important;
}

/* ── Single product default elements (when using our template these are hidden) ── */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom: 2px solid var(--se-border) !important; padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: none !important; border: none !important; border-radius: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  color: var(--se-muted) !important; font-weight: 700 !important; font-size: 0.88rem !important;
  padding: 10px 20px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--se-blue) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--se-border) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }

/* ── Widget: Price filter ── */
.widget_price_filter .price_slider_wrapper { padding: 8px 0; }
.widget_price_filter .ui-slider-horizontal { background: var(--se-border) !important; height: 4px !important; border-radius: 2px; }
.widget_price_filter .ui-slider .ui-slider-range { background: var(--se-blue) !important; }
.widget_price_filter .ui-slider .ui-slider-handle { background: var(--se-blue) !important; border-color: var(--se-blue) !important; width: 14px !important; height: 14px !important; top: -5px !important; border-radius: 50% !important; }

/* ── Stars global ── */
.star-rating { overflow: hidden !important; }
.star-rating::before { color: #E2E8F0 !important; }
.star-rating span::before { color: #FBBF24 !important; }
