/*
 * ═══════════════════════════════════════════════════════════
 *  PunjabiLibas — WooCommerce Product Page Redesign
 *  
 *  INSTALL: Upload to child theme folder via FTP/File Manager
 *  as "product-page.css", then it auto-loads via functions.php
 * ═══════════════════════════════════════════════════════════
 */

:root {
  --plm-deep: #1C0A00;
  --plm-maroon: #6B1E1E;
  --plm-gold: #C49A3C;
  --plm-gold-light: #E8C97A;
  --plm-cream: #FAF6F0;
  --plm-warm-white: #FFFDF9;
  --plm-warm-gray: #F0EBE3;
  --plm-text: #1C0A00;
  --plm-text-muted: #6B5E55;
  --plm-border: rgba(196,154,60,0.2);
  --plm-r: 6px;
  --plm-r-lg: 12px;
}

/* ── PRODUCT PAGE CONTAINER ───────────────────────────────── */
.single-product .site-content {
  background: var(--plm-cream);
}
.single-product .ast-container {
  max-width: 1280px;
}

/* ── GALLERY + INFO GRID ──────────────────────────────────── */
.single-product div.product {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  padding-top: 32px;
  align-items: start;
}

/* ── GALLERY ──────────────────────────────────────────────── */
.single-product .woocommerce-product-gallery {
  width: 100% !important;
  float: none !important;
}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery .flex-viewport {
  border-radius: var(--plm-r-lg);
  border: 1px solid var(--plm-border);
  background: var(--plm-warm-gray);
}
.single-product .woocommerce-product-gallery .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 12px;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li {
  width: 100% !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img {
  border-radius: var(--plm-r);
  border: 2px solid transparent;
  cursor: pointer;
  transition: border-color 0.15s;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover {
  border-color: var(--plm-maroon);
}

/* Sale badge on gallery */
.single-product .onsale {
  background: var(--plm-maroon) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 500;
  padding: 5px 14px !important;
  border-radius: 20px !important;
  min-width: auto !important;
  min-height: auto !important;
  line-height: 1.4 !important;
  top: 16px !important;
  left: 16px !important;
  right: auto !important;
}

/* ── PRODUCT INFO ─────────────────────────────────────────── */
.single-product .entry-summary,
.single-product .summary {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}

/* Breadcrumb */
.single-product .woocommerce-breadcrumb {
  font-size: 12px;
  color: var(--plm-text-muted);
  margin-bottom: 16px !important;
  padding: 0 !important;
}
.single-product .woocommerce-breadcrumb a {
  color: var(--plm-text-muted);
  text-decoration: none;
}
.single-product .woocommerce-breadcrumb a:hover {
  color: var(--plm-maroon);
}

/* Product Title */
.single-product .product_title {
  font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
  font-size: 30px !important;
  font-weight: 500;
  color: var(--plm-deep);
  line-height: 1.25;
  margin-bottom: 12px !important;
}

/* ── STAR RATING + SOLD COUNT ─────────────────────────────── */
.single-product .woocommerce-product-rating {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px !important;
}
.single-product .star-rating {
  color: var(--plm-gold) !important;
  font-size: 14px;
}
.single-product .woocommerce-review-link {
  font-size: 13px;
  color: var(--plm-text-muted);
  text-decoration: none;
}

/* ── PRICE BLOCK ──────────────────────────────────────────── */
.single-product p.price,
.single-product .woocommerce-variation-price .price {
  background: var(--plm-warm-gray) !important;
  border-radius: var(--plm-r-lg);
  padding: 20px !important;
  margin-bottom: 24px !important;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}
.single-product p.price ins,
.single-product .price ins {
  text-decoration: none !important;
  font-family: 'Cormorant Garamond', serif;
  font-size: 36px !important;
  font-weight: 600;
  color: var(--plm-maroon) !important;
  line-height: 1;
  order: 1;
}
.single-product p.price del,
.single-product .price del {
  font-size: 15px;
  color: var(--plm-text-muted) !important;
  order: 2;
}
.single-product p.price ins .woocommerce-Price-amount,
.single-product .price ins .woocommerce-Price-amount {
  font-family: 'Cormorant Garamond', serif;
  font-size: 36px;
  font-weight: 600;
  color: var(--plm-maroon);
}
.single-product p.price del .woocommerce-Price-amount {
  font-size: 15px;
  font-family: 'DM Sans', sans-serif;
}

/* ── FABRIC DETAILS GRID ──────────────────────────────────── */
.pl-fabric-details {
  margin-bottom: 24px;
}
.pl-fabric-title {
  font-size: 13px;
  font-weight: 500;
  color: var(--plm-text-muted);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 12px;
}
.pl-fabric-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.pl-fabric-item {
  background: var(--plm-warm-white);
  border: 1px solid var(--plm-border);
  border-radius: var(--plm-r);
  padding: 10px 14px;
}
.pl-fabric-item .fi-label {
  font-size: 11px;
  color: var(--plm-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 3px;
}
.pl-fabric-item .fi-val {
  font-size: 13.5px;
  color: var(--plm-deep);
  font-weight: 500;
}

/* ── SIZE SELECTION ───────────────────────────────────────── */
.single-product .variations td.value select,
.single-product table.variations select {
  border: 1.5px solid var(--plm-border);
  border-radius: var(--plm-r);
  padding: 10px 14px;
  font-size: 14px;
  background: var(--plm-warm-white);
  color: var(--plm-deep);
}

/* ── PINCODE CHECK ────────────────────────────────────────── */
.pl-pincode-check {
  background: var(--plm-warm-gray);
  border-radius: var(--plm-r);
  padding: 14px 16px;
  margin-bottom: 24px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.pl-pincode-check svg {
  width: 18px;
  height: 18px;
  color: var(--plm-maroon);
  flex-shrink: 0;
}
.pl-pincode-check input {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  font-size: 14px;
  color: var(--plm-deep);
  font-family: 'DM Sans', sans-serif;
}
.pl-pincode-check input::placeholder {
  color: var(--plm-text-muted);
}
.pl-pincode-check button {
  background: var(--plm-maroon);
  color: #fff;
  border: none;
  padding: 8px 16px;
  border-radius: var(--plm-r);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  font-family: 'DM Sans', sans-serif;
}

/* ── TRUST MICRO GRID ─────────────────────────────────────── */
.pl-trust-micro {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-bottom: 24px;
}
.pl-tm-item {
  background: var(--plm-warm-gray);
  border-radius: var(--plm-r);
  padding: 10px 8px;
  text-align: center;
}
.pl-tm-item svg {
  width: 18px;
  height: 18px;
  color: var(--plm-maroon);
  margin-bottom: 5px;
}
.pl-tm-item p {
  font-size: 11px;
  color: var(--plm-text-muted);
  line-height: 1.4;
  margin: 0;
}
.pl-tm-item strong {
  display: block;
  font-size: 12px;
  font-weight: 500;
  color: var(--plm-deep);
}

/* ── CTA BUTTONS STACK ────────────────────────────────────── */
.single-product .cart {
  display: flex;
  flex-direction: column;
  gap: 10px !important;
  margin-bottom: 20px !important;
}
.single-product .single_add_to_cart_button {
  background: var(--plm-cream) !important;
  border: 2px solid var(--plm-maroon) !important;
  color: var(--plm-maroon) !important;
  padding: 15px !important;
  border-radius: var(--plm-r) !important;
  font-size: 15px !important;
  font-weight: 500;
  width: 100%;
  letter-spacing: 0.3px;
  transition: all 0.2s;
  font-family: 'DM Sans', sans-serif;
}
.single-product .single_add_to_cart_button:hover {
  background: rgba(107,30,30,0.05) !important;
}

/* Buy Now button (added via PHP) */
.pl-btn-buy-now {
  background: var(--plm-maroon);
  color: #fff;
  padding: 15px;
  border-radius: var(--plm-r);
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  font-family: 'DM Sans', sans-serif;
  border: none;
  letter-spacing: 0.3px;
  transition: background 0.2s;
  text-align: center;
  display: block;
  width: 100%;
  text-decoration: none;
}
.pl-btn-buy-now:hover {
  background: #5a1818;
  color: #fff;
}

/* WhatsApp Order button */
.pl-btn-wa-order {
  background: #25D366;
  color: #fff;
  padding: 13px;
  border-radius: var(--plm-r);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  font-family: 'DM Sans', sans-serif;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  width: 100%;
  transition: background 0.2s;
}
.pl-btn-wa-order:hover {
  background: #1DA851;
  color: #fff;
}
.pl-btn-wa-order svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

/* ── RETURN POLICY ────────────────────────────────────────── */
.pl-return-policy {
  border: 1px solid var(--plm-border);
  border-radius: var(--plm-r-lg);
  padding: 16px 20px;
  margin-top: 20px;
}
.pl-rp-title {
  font-size: 13px;
  font-weight: 500;
  color: var(--plm-deep);
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.pl-rp-title svg {
  width: 16px;
  height: 16px;
  color: var(--plm-maroon);
}
.pl-rp-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  color: var(--plm-text-muted);
  margin-bottom: 6px;
  line-height: 1.4;
}
.pl-rp-item svg {
  width: 14px;
  height: 14px;
  color: #25a244;
  flex-shrink: 0;
  margin-top: 2px;
}

/* ── SAVING PILL (dynamically added) ──────────────────────── */
.pl-saving-pill {
  background: var(--plm-maroon);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  padding: 6px 16px;
  border-radius: 20px;
  white-space: nowrap;
}

/* ── SOLD COUNT BADGE ─────────────────────────────────────── */
.pl-sold-count {
  font-size: 13px;
  color: var(--plm-text-muted);
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.pl-sold-count::before {
  content: '';
  width: 1px;
  height: 14px;
  background: var(--plm-border);
  margin-right: 4px;
}

/* ── TABS REDESIGN ────────────────────────────────────────── */
.single-product .woocommerce-tabs {
  grid-column: 1 / -1;
  margin-top: 40px;
}
.single-product .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--plm-border) !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
  display: flex;
  gap: 0;
}
.single-product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.single-product .woocommerce-tabs ul.tabs li a {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--plm-text-muted);
  padding: 12px 20px;
  display: block;
}
.single-product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--plm-maroon) !important;
}
.single-product .woocommerce-tabs ul.tabs li.active a {
  color: var(--plm-maroon);
}

/* ── REVIEWS in tabs ──────────────────────────────────────── */
.single-product #reviews .comment-text {
  border: 1px solid var(--plm-border);
  border-radius: var(--plm-r-lg);
  padding: 20px;
  background: var(--plm-warm-white);
}
.single-product .woocommerce-Reviews-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 24px;
  color: var(--plm-deep);
}

/* ── RELATED PRODUCTS ─────────────────────────────────────── */
.single-product .related.products {
  grid-column: 1 / -1;
  margin-top: 48px;
  padding-top: 48px;
  border-top: 1px solid var(--plm-border);
}
.single-product .related.products > h2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: 28px;
  font-weight: 500;
  color: var(--plm-deep);
  margin-bottom: 24px;
}

/* ── QUANTITY INPUT ────────────────────────────────────────── */
.single-product .quantity {
  display: none !important; /* hide default qty for cleaner look */
}

/* ── RESPONSIVE ───────────────────────────────────────────── */
@media (max-width: 768px) {
  .single-product div.product {
    grid-template-columns: 1fr;
    gap: 24px;
    padding-top: 16px;
  }
  .single-product .product_title {
    font-size: 24px !important;
  }
  .single-product p.price ins .woocommerce-Price-amount,
  .single-product p.price ins {
    font-size: 28px !important;
  }
  .pl-fabric-grid {
    grid-template-columns: 1fr 1fr;
  }
  .pl-trust-micro {
    grid-template-columns: repeat(3, 1fr);
  }
}
