.woocommerce .products ul, .woocommerce ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; margin: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { float: none; width: auto; margin: 0; padding: 0; }
.luc-product-card-inner { position: relative; height: 100%; overflow: hidden; padding: 1rem; border: 1px solid var(--luc-border); border-radius: 30px; background: #fff; box-shadow: 0 12px 32px rgba(15,23,42,.05); transition: .25s transform, .25s box-shadow; }
.luc-product-card-inner:hover { transform: translateY(-4px); box-shadow: 0 20px 50px rgba(15,23,42,.12); }
.woocommerce ul.products li.product a img { margin: 0 0 1rem; border-radius: 22px; aspect-ratio: 1/1; object-fit: cover; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; margin: .5rem 0; font-size: 1.15rem; line-height: 1.3; }
.woocommerce ul.products li.product .price { color: var(--luc-brand); font-size: 1.1rem; font-weight: 900; }
.woocommerce ul.products li.product .button { margin-top: 1rem; width: 100%; min-height: 48px; }
.luc-product-mini-meta { display: flex; gap: .45rem; flex-wrap: wrap; margin: .55rem 0; }
.luc-product-mini-meta span { padding: .28rem .58rem; border-radius: 999px; background: var(--luc-soft); color: var(--luc-muted); font-size: .78rem; font-weight: 800; }
.woocommerce span.onsale.luc-sale-badge { top: 1.2rem; left: 1.2rem; min-height: auto; min-width: auto; margin: 0; padding: .55rem .72rem; border-radius: 999px; line-height: 1; background: var(--luc-accent); }
.woocommerce .woocommerce-ordering, .woocommerce .woocommerce-result-count { margin-bottom: 1.5rem; }
.luc-view-switch { display: inline-flex; gap: .5rem; margin-left: .75rem; vertical-align: top; }
.luc-view-toggle { min-height: 42px; padding-inline: 1rem; border: 1px solid var(--luc-border); background: #fff; color: var(--luc-text); }
.luc-view-toggle.active { background: var(--luc-brand); color: #fff; }
.luc-shop-list-view .woocommerce ul.products { grid-template-columns: 1fr; }
.luc-shop-list-view .luc-product-card-inner { display: grid; grid-template-columns: 220px 1fr; gap: 1.2rem; align-items: center; }
.luc-shop-list-view .woocommerce ul.products li.product a img { margin: 0; }
.luc-store-main .woocommerce-products-header { margin-bottom: 2rem; }
.luc-store-main .woocommerce-products-header__title { font-size: clamp(2.2rem,4vw,4rem); letter-spacing: -.05em; margin-bottom: .7rem; }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; gap: .5rem; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { display: grid; place-items: center; min-width: 44px; min-height: 44px; border: 1px solid var(--luc-border); border-radius: 999px; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr); gap: 2.5rem; }
.woocommerce div.product div.images, .woocommerce div.product div.summary { width: auto; float: none; }
.woocommerce div.product .product_title { font-size: clamp(2.2rem,4vw,4rem); line-height: 1.08; letter-spacing: -.05em; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--luc-brand); font-size: 1.8rem; font-weight: 900; }
.woocommerce div.product form.cart .button { min-height: 56px; padding-inline: 1.5rem; }
.woocommerce .quantity .qty { min-height: 56px; border: 1px solid var(--luc-border); border-radius: 999px; }
.luc-trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; margin-top: 1.6rem; }
.woocommerce-tabs.wc-tabs-wrapper, .related.products, .upsells.products { grid-column: 1 / -1; margin-top: 2rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding-left: 0; border: 0; display: flex; flex-wrap: wrap; gap: .6rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: 1px solid var(--luc-border); border-radius: 999px; background: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs .panel { padding: 1.4rem; border: 1px solid var(--luc-border); border-radius: 28px; }
.woocommerce-cart .cart-collaterals .cart_totals, .woocommerce-checkout .col2-set, .woocommerce-checkout-review-order, .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { border: 1px solid var(--luc-border); border-radius: 28px; padding: 1.3rem; background: #fff; }
.woocommerce table.shop_table { border-radius: 24px; overflow: hidden; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .select2-container--default .select2-selection--single { min-height: 52px; border: 1px solid var(--luc-border); border-radius: 16px; padding-inline: 1rem; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-radius: 18px; border-top: 0; }
.luc-dark .luc-product-card-inner, .luc-dark .luc-view-toggle, .luc-dark .woocommerce div.product .woocommerce-tabs ul.tabs li, .luc-dark .woocommerce-cart .cart-collaterals .cart_totals, .luc-dark .woocommerce-checkout .col2-set, .luc-dark .woocommerce-checkout-review-order, .luc-dark .woocommerce-account .woocommerce-MyAccount-navigation, .luc-dark .woocommerce-account .woocommerce-MyAccount-content { background: #0f172a; border-color: rgba(255,255,255,.12); color: #e5e7eb; }
@media (max-width: 1100px) { .woocommerce .products ul, .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0,1fr)); } .woocommerce div.product { grid-template-columns: 1fr; } }
@media (max-width: 860px) { .woocommerce .products ul, .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); } .luc-trust-grid { grid-template-columns: 1fr; } .luc-shop-list-view .luc-product-card-inner { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .woocommerce .products ul, .woocommerce ul.products { grid-template-columns: 1fr; } .luc-view-switch { display: flex; margin: 0 0 1rem; } }
.luc-product-actions { position: absolute; top: 1.1rem; right: 1.1rem; z-index: 3; display: grid; gap: .48rem; opacity: 0; transform: translateX(8px); transition: .22s; }
.luc-product-card-inner:hover .luc-product-actions { opacity: 1; transform: translateX(0); }
.luc-product-action { display: inline-grid; place-items: center; width: 42px; min-height: 42px; padding: 0; border: 1px solid var(--luc-border); border-radius: 999px; background: #fff; color: var(--luc-text); font-size: 1rem; box-shadow: 0 12px 30px rgba(15,23,42,.10); }
.luc-product-action.is-active { background: var(--luc-brand); color: #fff; border-color: var(--luc-brand); }
.luc-sale-countdown, .luc-stock-meter { margin: 1rem 0; padding: 1rem; border: 1px solid var(--luc-border); border-radius: 22px; background: var(--luc-soft); }
.luc-sale-countdown { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.luc-countdown-value { font-weight: 900; color: var(--luc-brand); }
.luc-stock-meter-head { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: .75rem; }
.luc-stock-meter-track { height: 12px; border-radius: 999px; overflow: hidden; background: rgba(37,99,235,.12); }
.luc-stock-meter-track span { display: block; height: 100%; border-radius: inherit; background: var(--luc-brand); }
.luc-dark .luc-product-action, .luc-dark .luc-sale-countdown, .luc-dark .luc-stock-meter { background: #111827; color: #e5e7eb; border-color: rgba(255,255,255,.12); }
@media (max-width: 860px) {
  .luc-product-actions { opacity: 1; transform: none; }
  .luc-sale-countdown, .luc-stock-meter-head { align-items: flex-start; flex-direction: column; }
}

/* Premium v3 cart shipping progress and mobile filter drawer */
.luc-shipping-progress { display: grid; gap: .8rem; margin: 0 0 1.15rem; padding: 1rem; border: 1px solid var(--luc-border); border-radius: 22px; background: var(--luc-soft); }
.luc-shipping-progress strong { line-height: 1.3; }
.luc-shipping-progress-track { height: 10px; overflow: hidden; border-radius: 999px; background: rgba(148,163,184,.28); }
.luc-shipping-progress-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--luc-brand), var(--luc-accent)); }
.luc-shop-filter-trigger { display: none; margin: 0 0 1rem; }
.luc-shop-filter-overlay { display: none; }
@media (max-width: 960px) {
  .luc-shop-filter-trigger { display: inline-flex; }
  .luc-shop-filter-overlay { position: fixed; inset: 0; z-index: 108; display: block; background: rgba(2,6,23,.58); opacity: 0; visibility: hidden; transition: .2s; }
  .luc-shop-filter-overlay.is-open { opacity: 1; visibility: visible; }
  .luc-shop-sidebar { position: fixed; top: 0; left: 0; bottom: 0; z-index: 109; width: min(360px, calc(100% - 36px)); overflow-y: auto; padding: 1rem; background: #fff; transform: translateX(-105%); transition: .25s; box-shadow: 18px 0 50px rgba(15,23,42,.22); }
  .luc-shop-sidebar.is-open { transform: translateX(0); }
  .luc-dark .luc-shop-sidebar { background: #0f172a; }
}
