.woocommerce-main { padding: 2rem 0 4rem; }
.shop-toolbar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; }
.shop-layout { display: grid; grid-template-columns: 260px 1fr; gap: 2rem; }
.shop-filters { background: var(--ice-gray); padding: 1rem; border-radius: var(--radius); height: fit-content; }
.product-filters label { display: block; margin-bottom: 1rem; font-weight: 600; font-size: .875rem; }
.product-filters select { width: 100%; margin-top: .35rem; padding: .55rem; border-radius: 8px; border: 1px solid #d7dee8; }

.products ul.products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; list-style: none; padding: 0; margin: 0; }
.products ul.products li.product { margin: 0; width: 100%; }

.product-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-bottom: 2rem; }
.product-gallery-thumbs { display: flex; gap: .5rem; margin-top: .75rem; }
.product-thumb { border-radius: 8px; cursor: pointer; border: 2px solid transparent; }
.product-category-badge { display: inline-block; background: var(--ice-gray); padding: .25rem .65rem; border-radius: 999px; font-size: .75rem; font-weight: 700; margin-bottom: .5rem; }
.product-price { font-size: 1.5rem; font-weight: 700; margin: .75rem 0; }
.shipping-note, .battery-notice { font-size: .9rem; color: var(--slate-gray); padding: .75rem; background: var(--ice-gray); border-radius: var(--radius); }
.trust-badges-inline { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 1rem; font-size: .85rem; font-weight: 600; }
.trust-badges-inline span { background: var(--ice-gray); padding: .35rem .65rem; border-radius: 999px; }

.product-tabs-wrapper { margin: 2rem 0; }
.product-tabs-nav { display: flex; gap: .5rem; margin-bottom: 1rem; }
.product-tabs-nav button { border: 0; background: var(--ice-gray); padding: .65rem 1rem; border-radius: 999px; cursor: pointer; font-weight: 600; }
.product-tabs-nav button.active { background: var(--deep-navy); color: #fff; }
.product-tab-panel { display: none; padding: 1rem; background: #fff; border: 1px solid var(--ice-gray); border-radius: var(--radius); }
.product-tab-panel.active { display: block; }
.best-for-tags { display: flex; flex-wrap: wrap; gap: .5rem; }
.best-for-tags span { background: var(--ice-gray); padding: .45rem .75rem; border-radius: 999px; font-size: .875rem; }

.cart-page-layout { display: grid; grid-template-columns: 1fr 340px; gap: 2rem; }
.cart-sidebar { background: var(--ice-gray); padding: 1rem; border-radius: var(--radius); height: fit-content; }
.secure-badge { font-weight: 700; margin: 1rem 0; }
.solar-performance-note { font-size: .875rem; color: var(--slate-gray); }

.checkout-compliance { margin: 1rem 0; padding: 1rem; background: var(--ice-gray); border-radius: var(--radius); }
.checkout-compliance label { display: flex; gap: .65rem; align-items: flex-start; font-size: .9rem; }

.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .button {
  background: var(--solar-yellow) !important; color: var(--solar-black) !important;
  border-radius: 999px !important; font-weight: 600 !important; border: 0 !important;
}
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-radius: var(--radius); }

.related.products { margin-top: 3rem; }
.related.products ul.products { grid-template-columns: repeat(4, 1fr); }

.cart-count {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 18px; height: 18px; padding: 0 4px; border-radius: 999px;
  background: var(--solar-yellow); color: var(--solar-black); font-size: .7rem; font-weight: 700;
}
