/**
 * Single Product Page — Additional Styles
 * v1.0.3: Wider gallery, condition badges, back link, better related products
 *
 * @package ReQuip
 */

/* Back to listings link */
.rq-back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--requip-rust);
  margin-bottom: 1.5rem;
  transition: color 0.2s ease;
}

.rq-back-link:hover {
  color: var(--requip-navy);
}

/* Two-column product layout — 50/50 split */
.requip-product-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding: 1rem 0 2rem;
}

@media (min-width: 768px) {
  .requip-product-layout {
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
  }
}

@media (min-width: 1024px) {
  .requip-product-layout {
    grid-template-columns: 55fr 45fr;
    gap: 3rem;
  }
}

/* Gallery */
.requip-product-gallery {
  border-radius: var(--radius);
  overflow: hidden;
}

.requip-product-gallery .woocommerce-product-gallery {
  margin-bottom: 0 !important;
}

.requip-product-gallery .woocommerce-product-gallery__image img {
  border-radius: var(--radius);
}

/* Placeholder image styling */
.requip-product-gallery .woocommerce-product-gallery .wp-post-image[src*="placeholder"],
.requip-product-gallery .woocommerce-product-gallery img[src*="woocommerce-placeholder"] {
  background: var(--requip-tan);
  padding: 2rem;
  object-fit: contain;
}

/* Summary */
.requip-product-summary .product_title {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 700;
  color: var(--requip-navy);
  margin-bottom: 0.5rem;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .requip-product-summary .product_title {
    font-size: 2rem;
  }
}

/* Condition Badge */
.rq-condition-wrap {
  margin: 0.5rem 0 0.75rem;
}

.rq-condition-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.3rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  border-radius: 4px;
  text-transform: uppercase;
}

.rq-condition-new {
  background: rgba(34, 139, 34, 0.12);
  color: #1a7a1a;
  border: 1px solid rgba(34, 139, 34, 0.25);
}

.rq-condition-like-new {
  background: rgba(46, 125, 50, 0.1);
  color: #2e7d32;
  border: 1px solid rgba(46, 125, 50, 0.2);
}

.rq-condition-great {
  background: rgba(56, 142, 60, 0.1);
  color: #388e3c;
  border: 1px solid rgba(56, 142, 60, 0.2);
}

.rq-condition-good {
  background: rgba(184, 149, 106, 0.15);
  color: #8d6e3f;
  border: 1px solid rgba(184, 149, 106, 0.3);
}

.rq-condition-fair {
  background: rgba(255, 152, 0, 0.1);
  color: #e65100;
  border: 1px solid rgba(255, 152, 0, 0.2);
}

.rq-condition-parts {
  background: rgba(155, 74, 59, 0.1);
  color: var(--requip-rust);
  border: 1px solid rgba(155, 74, 59, 0.2);
}

/* Price */
.requip-product-summary .price {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--requip-navy);
  margin-bottom: 1rem;
}

.requip-product-summary .price .make-offer-text {
  color: var(--requip-rust);
  font-size: 1.25rem;
}

/* Short description */
.requip-product-summary .woocommerce-product-details__short-description {
  font-size: 0.9375rem;
  color: var(--requip-slate);
  line-height: 1.7;
  margin-bottom: 1.5rem;
}

/* Product meta (SKU, Category, Brand) */
.requip-product-summary .product_meta {
  font-size: 0.875rem;
  color: var(--requip-slate);
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--requip-tan);
}

.requip-product-summary .product_meta > span {
  display: block;
  margin-bottom: 0.5rem;
}

.requip-product-summary .product_meta a {
  color: var(--requip-rust);
}

.requip-product-summary .product_meta a:hover {
  color: var(--requip-navy);
}

/* Hide quantity field (backup CSS in case filter doesn't catch it) */
.woocommerce div.product form.cart .quantity {
  display: none !important;
}

/* Related products */
.woocommerce section.related {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--requip-tan);
}

.woocommerce section.related h2 {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  color: var(--requip-navy);
  margin-bottom: 1.5rem;
}

/* Force related products into a clean 4-column grid */
.woocommerce section.related ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

@media (min-width: 640px) {
  .woocommerce section.related ul.products {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 900px) {
  .woocommerce section.related ul.products {
    grid-template-columns: repeat(4, 1fr);
  }
}

.woocommerce section.related ul.products li.product {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Tabs — tighter on mobile */
@media (max-width: 640px) {
  .woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
  }
}
