/**
 * SuperSquare Storefront — Single Product Detail Page (PDP) Styles (NEEMROZ)
 *
 * Implements 2-column presentation, gallery thumbnail rail, buy box,
 * quantity selector, trust assurances, WooCommerce tabs, and mobile sticky cart.
 *
 * @package SuperSquare_Storefront
 */

.ssq-single-product-wrap{padding:1.25rem 0 3.5rem}

.ssq-single-breadcrumbs{margin-bottom:1.25rem;color:var(--ssq-text-muted);font-size:.8125rem}
.ssq-single-breadcrumbs a{color:var(--ssq-text-muted)}
.ssq-single-breadcrumbs a:hover{color:var(--ssq-terracotta)}

/* ==========================================================================
   Two-Column Product Grid
   ========================================================================== */
.ssq-product-main-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:flex-start;gap:3rem;margin-bottom:3rem}

/* ==========================================================================
   Left Column: Media & Gallery Area
   ========================================================================== */
.ssq-product-gallery-area{position:sticky;top:90px}

.ssq-main-image-frame{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;width:100%;margin-bottom:.85rem;overflow:hidden;background:var(--ssq-gradient-cream);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-xl)}
.ssq-gallery-main-img{width:100%;height:100%;object-fit:contain;transition:transform var(--ssq-transition-slow)}

.ssq-single-badge{position:absolute;top:1rem;left:1rem;z-index:2;padding:.25rem .625rem;border-radius:var(--ssq-radius-badge);font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.ssq-single-badge-sale{color:var(--ssq-ivory);background:var(--ssq-terracotta)}

/* Thumbnail Rail */
.ssq-thumbnails-rail{display:flex;align-items:center;gap:.65rem;padding-bottom:.5rem;overflow-x:auto}
.ssq-thumb-btn{flex-shrink:0;width:72px;height:72px;padding:4px;background:var(--ssq-surface);border:2px solid var(--ssq-border);border-radius:var(--ssq-radius-md);cursor:pointer;transition:border-color var(--ssq-transition-fast),box-shadow var(--ssq-transition-fast)}
.ssq-thumb-btn.is-active,.ssq-thumb-btn:hover{border-color:var(--ssq-gold);box-shadow:0 0 0 2px rgba(181,138,82,.22)}
.ssq-thumb-img{width:100%;height:100%;object-fit:contain}

/* ==========================================================================
   Right Column: Buy Box & Product Meta
   ========================================================================== */
.ssq-product-buybox-area{display:flex;flex-direction:column}

.ssq-product-eyebrow-row{display:flex;align-items:center;gap:.65rem;margin-bottom:.65rem}
.ssq-product-brand-chip{display:inline-flex;align-items:center;padding:.25rem .625rem;color:var(--ssq-terracotta-dark);background:var(--ssq-blush);border-radius:var(--ssq-radius-badge);font-size:.75rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}

.ssq-product-stock-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:var(--ssq-radius-badge);font-size:.75rem;font-weight:750}
.ssq-product-stock-badge.is-in-stock{color:var(--ssq-success);background:rgba(71,113,90,.1)}
.ssq-product-stock-badge.is-out-stock{color:var(--ssq-danger);background:rgba(166,62,70,.09)}

.ssq-single-title{margin-bottom:.65rem;color:var(--ssq-espresso);font-family:var(--ssq-font-heading);font-size:clamp(1.85rem,3.4vw,2.5rem);font-weight:600;line-height:1.12;letter-spacing:-.01em}

.ssq-single-rating-row{display:flex;align-items:center;gap:.5rem;margin-bottom:1.1rem;font-size:.875rem}
.ssq-rating-val{color:var(--ssq-espresso);font-weight:750}
.ssq-rating-count{color:var(--ssq-text-muted)}

/* Pricing Card */
.ssq-single-pricing-card{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.1rem;padding:.9rem 1.15rem;background:var(--ssq-cream);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-lg)}
.ssq-single-price-html{color:var(--ssq-espresso);font-size:1.55rem;font-weight:750}
.ssq-single-price-html del{margin-right:.375rem;color:var(--ssq-text-muted);font-size:1.05rem;font-weight:500}
.ssq-single-price-html ins{color:var(--ssq-terracotta-dark);text-decoration:none}
.ssq-single-savings-pill{padding:.25rem .625rem;color:var(--ssq-success);background:rgba(71,113,90,.1);border:1px solid rgba(71,113,90,.25);border-radius:var(--ssq-radius-full);font-size:.75rem;font-weight:750}

.ssq-single-short-desc{margin-bottom:1.35rem;color:var(--ssq-text-secondary);font-size:.9375rem;line-height:1.65}

/* Add to Cart / Buy Now Controls */
.ssq-single-add-to-cart-section{margin-bottom:1.5rem}
.ssq-qty-and-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}

.ssq-qty-selector{display:inline-flex;align-items:center;overflow:hidden;background:var(--ssq-surface);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-md)}
.ssq-qty-btn{display:flex;align-items:center;justify-content:center;width:38px;height:44px;color:var(--ssq-espresso);background:transparent;border:0;font-size:1.1rem;font-weight:650;cursor:pointer}
.ssq-qty-btn:hover{background:var(--ssq-cream)}
.ssq-qty-selector input.qty{width:44px;height:44px;padding:0!important;color:var(--ssq-espresso);text-align:center;border:none!important;outline:none!important;box-shadow:none!important;font-size:.9375rem;font-weight:750}

.ssq-purchase-actions-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;width:100%}
.ssq-purchase-actions-row--variable{margin-top:.85rem}

.ssq-btn-add-cart{flex:1;min-width:160px;min-height:46px;font-size:.9375rem}
.ssq-btn-add-cart svg{flex-shrink:0}

/* Buy Now: pill silhouette, trailing arrow — genuinely different shape from Add to Cart's sharp rectangle, not the same box recolored. */
.ssq-btn-buy-now{display:inline-flex;flex:1;align-items:center;justify-content:space-between;gap:.5rem;min-width:160px;min-height:46px;padding:.65rem .85rem .65rem 1.15rem;color:var(--ssq-terracotta-dark)!important;background:var(--ssq-blush);border:1px solid rgba(138,75,58,.3);border-radius:var(--ssq-radius-full);font-size:.9375rem;font-weight:750;letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:background var(--ssq-transition-fast),color var(--ssq-transition-fast),border-color var(--ssq-transition-fast),transform var(--ssq-transition-fast)}
.ssq-btn-buy-now svg{order:2;flex-shrink:0}
.ssq-btn-buy-now:hover{color:var(--ssq-ivory)!important;background:var(--ssq-terracotta);border-color:var(--ssq-terracotta);transform:translateY(-1px)}
.ssq-btn-buy-now[disabled],.ssq-btn-buy-now.is-disabled{color:var(--ssq-text-muted)!important;background:var(--ssq-cream);border-color:var(--ssq-border);cursor:not-allowed;transform:none}
.ssq-btn-buy-now.is-loading{opacity:.7;pointer-events:none}

.ssq-btn-single-wishlist{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:44px;height:44px;color:var(--ssq-text-muted);background:var(--ssq-surface);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-md);cursor:pointer;transition:color var(--ssq-transition-fast),background var(--ssq-transition-fast),border-color var(--ssq-transition-fast)}
.ssq-btn-single-wishlist:hover,.ssq-btn-single-wishlist.is-active{color:var(--ssq-danger);background:var(--ssq-blush);border-color:rgba(166,62,70,.25)}
.ssq-btn-single-wishlist.is-active svg path{fill:var(--ssq-danger)}

/* Metadata Rows */
.ssq-single-meta-list{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1.35rem;padding:.9rem 0;border-top:1px solid var(--ssq-border);border-bottom:1px solid var(--ssq-border);font-size:.8125rem}
.ssq-meta-row{display:flex;align-items:center;gap:.5rem}
.ssq-meta-label{color:var(--ssq-espresso);font-weight:750}
.ssq-meta-val{color:var(--ssq-text-secondary)}

/* Trust Assurances Card */
.ssq-single-assurance-card{display:flex;flex-direction:column;gap:.7rem;padding:1.15rem;background:var(--ssq-surface);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-lg)}
.ssq-assurance-item{display:flex;align-items:flex-start;gap:.7rem}
.ssq-assure-icon{flex-shrink:0;margin-top:2px;color:var(--ssq-terracotta)}
.ssq-assure-text{display:flex;flex-direction:column}
.ssq-assure-text strong{color:var(--ssq-espresso);font-size:.875rem}
.ssq-assure-text span{color:var(--ssq-text-secondary);font-size:.8125rem}

/* ==========================================================================
   Specifications & WooCommerce Tabs Area
   ========================================================================== */
.ssq-product-tabs-section{padding:1.85rem;background:var(--ssq-surface);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-xl);margin-bottom:3rem}
.ssq-product-tabs-section .woocommerce-tabs ul.tabs{display:flex;align-items:center;gap:1rem;margin:0 0 1.75rem;padding:0 0 .85rem;border-bottom:1px solid var(--ssq-border);list-style:none}
.ssq-product-tabs-section .woocommerce-tabs ul.tabs li a{position:relative;padding:.5rem .25rem;color:var(--ssq-text-muted);font-size:.95rem;font-weight:750;text-decoration:none}
.ssq-product-tabs-section .woocommerce-tabs ul.tabs li.active a{color:var(--ssq-terracotta-dark)}
.ssq-product-tabs-section .woocommerce-tabs ul.tabs li.active a::after{content:"";position:absolute;bottom:-.85rem;left:0;right:0;height:2px;background:var(--ssq-terracotta)}
.ssq-product-tabs-section .woocommerce-Tabs-panel{color:var(--ssq-text-secondary);line-height:1.7}

/* ==========================================================================
   Mobile Sticky Cart / Buy Now Floating Bar
   ========================================================================== */
.ssq-mobile-sticky-cart{display:none;position:fixed;left:0;right:0;bottom:0;z-index:990;padding:.6rem 1rem;background:var(--ssq-surface);border-top:1px solid var(--ssq-border);box-shadow:0 -4px 18px rgba(43,11,20,.1)}
.ssq-sticky-cart-inner{display:flex;align-items:center;justify-content:space-between;gap:.65rem}
.ssq-sticky-cart-media{flex-shrink:0;width:42px;height:42px;overflow:hidden;background:var(--ssq-gradient-cream);border:1px solid var(--ssq-border);border-radius:var(--ssq-radius-sm)}
.ssq-sticky-cart-thumb{width:100%;height:100%;object-fit:contain}
.ssq-sticky-cart-info{flex:1;min-width:0}
.ssq-sticky-cart-title{display:block;overflow:hidden;color:var(--ssq-espresso);font-size:.8125rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.ssq-sticky-cart-price{color:var(--ssq-terracotta-dark);font-size:.875rem;font-weight:800}
.ssq-sticky-cart-actions{display:flex;flex-shrink:0;align-items:center;gap:.4rem}
.ssq-sticky-cart-actions .ssq-btn-primary,.ssq-sticky-cart-actions .ssq-sticky-cart-btn{min-height:40px;padding:.5rem .8rem;font-size:.8rem}
.ssq-sticky-cart-actions .ssq-btn-buy-now{min-height:40px;min-width:0;padding:.5rem .8rem;font-size:.8rem}

@media(max-width:991px){
  .ssq-product-main-grid{grid-template-columns:1fr;gap:2rem}
  .ssq-product-gallery-area{position:static}
  .ssq-mobile-sticky-cart{display:block}
}

.ssq-product-gallery-area .woocommerce-product-gallery{width:100%;float:none;margin:0}
.ssq-product-gallery-area .woocommerce-product-gallery__wrapper{margin:0}
.ssq-product-gallery-area .woocommerce-product-gallery__image img{width:100%;height:auto;display:block;border-radius:var(--ssq-radius-lg)}
.ssq-product-gallery-area .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;margin:.75rem 0 0;padding:0;list-style:none}
.ssq-product-gallery-area .flex-control-thumbs img{border-radius:var(--ssq-radius-md);cursor:pointer}

@media(max-width:991px){
  body.ssq-has-mobile-bottom-nav .ssq-mobile-sticky-cart{bottom:calc(56px + env(safe-area-inset-bottom,0px))}
  .ssq-mobile-sticky-cart{padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px))}
}

@media(max-width:420px){
  .ssq-sticky-cart-info{display:none}
  .ssq-sticky-cart-actions{flex:1}
  .ssq-sticky-cart-actions .ssq-btn-primary,.ssq-sticky-cart-actions .ssq-sticky-cart-btn,.ssq-sticky-cart-actions .ssq-btn-buy-now{flex:1}
}

.ssq-sticky-cart-thumb-fallback{display:grid;place-items:center;color:var(--ssq-text-muted);background:var(--ssq-cream);font-family:var(--ssq-font-heading);font-weight:800}
