/* =============================================================
   PNIDESIGN PREMIUM — WOOCOMMERCE.CSS
   Overrides & custom WooCommerce styles
   ============================================================= */

/* ── GENERAL WOOCOMMERCE ─────────────────────────────────────── */
.woocommerce-page .woocommerce { width: 100%; }
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info { border-radius: var(--pni-radius-lg); margin-bottom: var(--pni-space-6); padding: var(--pni-space-4) var(--pni-space-6); }
.woocommerce-message { border-top-color: var(--pni-success) !important; background: #F0FFF4; }
.woocommerce-error   { border-top-color: var(--pni-error)   !important; background: #FFF5F5; }
.woocommerce-info    { border-top-color: var(--pni-gold)    !important; background: var(--pni-cream); }
.woocommerce-message .button { background: var(--pni-navy) !important; color: var(--pni-white) !important; border-radius: var(--pni-radius) !important; }

/* ── SHOP PAGE ───────────────────────────────────────────────── */
.pni-wc-wrapper { background: var(--pni-bg-secondary); padding: var(--pni-space-8) 0 var(--pni-space-16); }
.woocommerce ul.products { margin: 0 !important; padding: 0 !important; display: grid !important; grid-template-columns: repeat(auto-fill,minmax(240px,1fr)); gap: var(--pni-space-6) !important; list-style: none !important; }
.woocommerce ul.products.pni-list-view { grid-template-columns: 1fr !important; }
.woocommerce ul.products li.product { margin: 0 !important; padding: 0 !important; float: none !important; }
.woocommerce ul.products li.product a img { margin-bottom: 0 !important; }
/* Remove WC's default button */
.woocommerce ul.products li.product .button { display: none !important; }

/* ── PRODUCT PAGE ────────────────────────────────────────────── */
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: var(--pni-space-12); align-items: start; margin-top: var(--pni-space-4); }
.woocommerce div.product div.images { position: sticky; top: calc(var(--pni-header-h, 72px) + 2rem); }
.woocommerce div.product div.images img { border-radius: var(--pni-radius-lg); }
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image { border-radius: var(--pni-radius-lg); overflow: hidden; }
.woocommerce div.product .entry-summary h1.product_title { font-size: clamp(1.5rem,3vw,2.25rem); margin-bottom: var(--pni-space-3); }
.woocommerce div.product .entry-summary .woocommerce-product-rating { margin-bottom: var(--pni-space-4); }
.woocommerce div.product .entry-summary .price { font-size: var(--pni-text-3xl); font-weight: 800; color: var(--pni-navy); margin-bottom: var(--pni-space-6); }
.woocommerce div.product .entry-summary .price del { font-size: 0.7em; color: var(--pni-gray-400); font-weight: 400; }
.woocommerce div.product .entry-summary .price ins { color: #DC2626; text-decoration: none; }
.woocommerce div.product .woocommerce-tabs { margin-top: var(--pni-space-10); grid-column: 1 / -1; }
.woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom: 2px solid var(--pni-border); display: flex; gap: 0; padding: 0; margin: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: none !important; background: transparent !important; margin: 0 !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block; padding: var(--pni-space-3) var(--pni-space-6); font-size: var(--pni-text-sm); font-weight: 600; color: var(--pni-text-muted); border-bottom: 2px solid transparent; margin-bottom: -2px; transition: all var(--pni-transition); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--pni-navy); border-bottom-color: var(--pni-gold); }
.woocommerce div.product .woocommerce-tabs .panel { padding: var(--pni-space-8) 0; }

/* Star ratings */
.star-rating span::before, .woocommerce .star-rating span::before { color: var(--pni-gold); }
.woocommerce .star-rating { color: var(--pni-gray-300); }

/* ── RELATED PRODUCTS ────────────────────────────────────────── */
.woocommerce section.related { grid-column: 1 / -1; margin-top: var(--pni-space-12); }
.woocommerce section.related h2, .woocommerce section.upsells h2 { font-size: var(--pni-text-3xl); margin-bottom: var(--pni-space-8); }

/* ── CHECKOUT ────────────────────────────────────────────────── */
.woocommerce-checkout h3 { font-size: var(--pni-text-xl); color: var(--pni-navy); border-bottom: 2px solid var(--pni-gold); padding-bottom: var(--pni-space-3); margin-bottom: var(--pni-space-6); }
.woocommerce-checkout input, .woocommerce-checkout select, .woocommerce-checkout textarea { border-radius: var(--pni-radius) !important; border-color: var(--pni-border-dark) !important; padding: 0.75rem 1rem !important; font-size: var(--pni-text-base) !important; }
.woocommerce-checkout input:focus, .woocommerce-checkout select:focus { border-color: var(--pni-gold) !important; box-shadow: 0 0 0 3px rgba(194,87,143,0.15) !important; outline: none !important; }
#place_order { background: var(--pni-gold) !important; color: var(--pni-navy) !important; font-size: var(--pni-text-base) !important; font-weight: 700 !important; padding: 1rem 2.5rem !important; border-radius: var(--pni-radius) !important; border: none !important; transition: all var(--pni-transition-md) !important; }
#place_order:hover { background: var(--pni-gold-dark) !important; transform: translateY(-2px) !important; }
.woocommerce-checkout-review-order-table th { background: var(--pni-gray-50); padding: var(--pni-space-3) var(--pni-space-4); font-size: var(--pni-text-sm); font-weight: 700; color: var(--pni-navy); text-transform: uppercase; letter-spacing: 0.06em; }

/* ── ACCOUNT ─────────────────────────────────────────────────── */
.woocommerce-MyAccount-navigation { border-right: 1px solid var(--pni-border); padding-right: var(--pni-space-8); }
.woocommerce-MyAccount-navigation ul { list-style: none; display: flex; flex-direction: column; gap: var(--pni-space-1); }
.woocommerce-MyAccount-navigation ul a { display: block; padding: var(--pni-space-3) var(--pni-space-4); border-radius: var(--pni-radius); font-size: var(--pni-text-sm); font-weight: 600; color: var(--pni-text-secondary); transition: all var(--pni-transition); }
.woocommerce-MyAccount-navigation ul a:hover, .woocommerce-MyAccount-navigation ul .is-active a { background: var(--pni-cream); color: var(--pni-navy); }
.woocommerce table.shop_table { width: 100%; border-collapse: collapse; }
.woocommerce table.shop_table th { background: var(--pni-gray-50); padding: var(--pni-space-3) var(--pni-space-4); text-align: left; font-size: var(--pni-text-sm); font-weight: 700; color: var(--pni-navy); border-bottom: 2px solid var(--pni-border); }
.woocommerce table.shop_table td { padding: var(--pni-space-4); border-bottom: 1px solid var(--pni-border); font-size: var(--pni-text-sm); color: var(--pni-text-secondary); }

/* ── RESPONSIVE ──────────────────────────────────────────────── */
@media (max-width: 768px) {
  .woocommerce div.product { grid-template-columns: 1fr; gap: var(--pni-space-6); }
  .woocommerce div.product div.images { position: static; }
}
