/* V46 — luxury product detail page only.
   Scope: product.html / body.product-v46.
   Does not touch header, drawer, home page, store page, cart, dashboard, or Firestore logic. */

body.product-v46{
  background:
    radial-gradient(circle at 78% 8%, rgba(189,145,75,.14), transparent 34%),
    radial-gradient(circle at 10% 42%, rgba(56,39,18,.08), transparent 32%),
    #f5eee2!important;
}

body.product-v46 main{
  overflow:hidden;
}

/* Compact product breadcrumb hero */
body.product-v46 .page-hero{
  padding:34px 0 26px!important;
  background:
    linear-gradient(135deg, rgba(255,249,238,.88), rgba(235,221,197,.72))!important;
  border-bottom:1px solid rgba(55,42,20,.10)!important;
}

body.product-v46 .page-hero .container{
  width:min(1180px, calc(100% - 38px))!important;
  display:grid!important;
  gap:8px!important;
  text-align:right!important;
}

body.product-v46 .page-hero .kicker{
  display:inline-flex!important;
  width:max-content!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  padding:7px 13px!important;
  border-radius:999px!important;
  background:rgba(16,12,7,.92)!important;
  color:#d1a961!important;
  border:1px solid rgba(209,169,97,.24)!important;
  letter-spacing:.08em!important;
}

body.product-v46 .page-hero h1{
  margin:0!important;
  color:#15110a!important;
  font-size:clamp(26px,3.2vw,44px)!important;
  line-height:1.18!important;
  font-family:Georgia,"Times New Roman",serif!important;
  max-width:860px!important;
}

body.product-v46 .page-hero p{
  margin:0!important;
  max-width:720px!important;
  color:rgba(28,22,13,.64)!important;
  font-size:14.5px!important;
  line-height:1.85!important;
}

/* Main product stage */
body.product-v46 .section:first-of-type{
  padding-top:32px!important;
}

body.product-v46 .product-detail-layout{
  width:min(1180px, calc(100% - 38px))!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr)!important;
  gap:24px!important;
  align-items:start!important;
}

body.product-v46 .product-gallery-panel,
body.product-v46 .product-buy-panel,
body.product-v46 .product-info-panel{
  border-radius:34px!important;
  border:1px solid rgba(166,128,63,.18)!important;
  box-shadow:0 24px 60px rgba(35,25,12,.11)!important;
}

body.product-v46 .product-gallery-panel{
  padding:16px!important;
  background:
    radial-gradient(circle at 50% 0%, rgba(179,130,55,.14), transparent 38%),
    linear-gradient(180deg, #15110b 0%, #0c0905 100%)!important;
}

body.product-v46 .product-gallery-main{
  height:min(58vw,560px)!important;
  min-height:420px!important;
  border-radius:26px!important;
  border:1px solid rgba(221,185,103,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)!important;
  background-color:#120e08!important;
}

body.product-v46 .product-gallery-thumbs{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:12px!important;
}

body.product-v46 .product-gallery-thumbs button{
  height:92px!important;
  border-radius:18px!important;
  border:1px solid rgba(221,185,103,.22)!important;
  background-color:#17120a!important;
  opacity:.72!important;
  transition:opacity .18s ease, transform .18s ease, border-color .18s ease!important;
}

body.product-v46 .product-gallery-thumbs button.active,
body.product-v46 .product-gallery-thumbs button:hover{
  opacity:1!important;
  transform:translateY(-1px)!important;
  border-color:rgba(221,185,103,.68)!important;
}

body.product-v46 .product-gallery-hint{
  margin:12px 4px 2px!important;
  color:rgba(255,247,229,.66)!important;
  font-size:12.5px!important;
  line-height:1.7!important;
  text-align:center!important;
}

/* Buying panel */
body.product-v46 .product-buy-panel{
  padding:28px!important;
  background:
    linear-gradient(180deg, rgba(255,250,239,.96), rgba(239,228,207,.94))!important;
  position:sticky!important;
  top:108px!important;
}

body.product-v46 .product-label{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  padding:7px 14px!important;
  border-radius:999px!important;
  background:#11100d!important;
  color:#d6ad62!important;
  border:1px solid rgba(214,173,98,.24)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
}

body.product-v46 .product-buy-panel h1{
  margin:16px 0 8px!important;
  color:#12100b!important;
  font-size:clamp(30px,3.8vw,48px)!important;
  line-height:1.14!important;
  font-family:Georgia,"Times New Roman",serif!important;
}

body.product-v46 .product-lead{
  margin:0!important;
  color:rgba(34,27,16,.68)!important;
  font-size:15.5px!important;
  line-height:1.9!important;
}

body.product-v46 .product-buy-note{
  margin:14px 0 0!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  background:rgba(20,16,10,.055)!important;
  border:1px solid rgba(82,61,26,.10)!important;
  color:rgba(35,27,13,.66)!important;
  font-size:12.8px!important;
  line-height:1.7!important;
}

body.product-v46 .product-spec-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:14px!important;
}

body.product-v46 .product-spec-chips span{
  display:inline-flex!important;
  align-items:center!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(82,61,26,.12)!important;
  color:rgba(34,26,12,.72)!important;
  font-size:12px!important;
  font-weight:800!important;
}

body.product-v46 .product-price-line{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:10px 14px!important;
  margin-top:22px!important;
  padding-top:20px!important;
  border-top:1px solid rgba(71,52,22,.14)!important;
}

body.product-v46 .product-price-main{
  margin:0!important;
  color:#0c0a06!important;
  font-size:clamp(26px,3.2vw,38px)!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
}

body.product-v46 .product-price-compare{
  color:rgba(55,43,24,.46)!important;
  font-size:14px!important;
  text-decoration:line-through!important;
  text-decoration-thickness:1px!important;
}

body.product-v46 .product-sku{
  margin-top:8px!important;
  color:rgba(40,31,17,.48)!important;
  direction:ltr!important;
  text-align:right!important;
  font-size:13px!important;
  letter-spacing:.06em!important;
}

body.product-v46 .product-quick-facts{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:18px!important;
}

body.product-v46 .product-quick-facts span{
  min-height:54px!important;
  padding:10px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.54)!important;
  border:1px solid rgba(85,64,27,.12)!important;
  color:#19130a!important;
  font-size:12px!important;
  font-weight:900!important;
}

body.product-v46 .product-options{
  gap:18px!important;
  margin-top:24px!important;
}

body.product-v46 .option-group{
  gap:10px!important;
}

body.product-v46 .option-group strong{
  color:#15100a!important;
  font-size:14px!important;
}

body.product-v46 .quantity-selector{
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(85,64,27,.16)!important;
  border-radius:999px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52)!important;
}

body.product-v46 .quantity-selector button{
  color:#130f08!important;
  font-size:19px!important;
}

body.product-v46 .quantity-selector span{
  color:#130f08!important;
  font-size:15px!important;
}

body.product-v46 .packaging-options{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

body.product-v46 .packaging-options label{
  position:relative!important;
  min-height:66px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:13px 12px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.56)!important;
  border:1px solid rgba(82,61,26,.14)!important;
  color:#161109!important;
  font-size:13px!important;
  line-height:1.55!important;
  transition:border-color .18s ease, background .18s ease, transform .18s ease!important;
}

body.product-v46 .packaging-options label:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(190,143,62,.38)!important;
}

body.product-v46 .packaging-options label:has(input:checked){
  background:linear-gradient(180deg, #19140d, #0f0b06)!important;
  border-color:rgba(213,171,91,.54)!important;
  color:#fff7e8!important;
}

body.product-v46 .packaging-options input{
  accent-color:#c79542!important;
}

body.product-v46 .product-actions-main{
  display:grid!important;
  gap:10px!important;
  margin-top:24px!important;
}

body.product-v46 .product-actions-main .btn{
  min-height:52px!important;
  border-radius:999px!important;
  font-size:14px!important;
  font-weight:950!important;
}

body.product-v46 #addToCartButton{
  background:#050403!important;
  color:#fff7e8!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 18px 34px rgba(0,0,0,.20)!important;
}

body.product-v46 #addToCartButton.is-added{
  background:#1f6f49!important;
}

body.product-v46 .product-actions-main .btn-outline{
  background:rgba(255,255,255,.62)!important;
  color:#14100a!important;
  border:1px solid rgba(77,56,23,.15)!important;
}

body.product-v46 .added-message{
  border-radius:18px!important;
  background:rgba(31,139,85,.13)!important;
  border:1px solid rgba(31,139,85,.20)!important;
  color:#176944!important;
}

/* Information section */
body.product-v46 .section-soft{
  background:transparent!important;
  padding-top:30px!important;
}

body.product-v46 .product-info-panel{
  width:min(1180px, calc(100% - 38px))!important;
  padding:28px!important;
  background:rgba(255,249,238,.78)!important;
  backdrop-filter:blur(14px)!important;
}

body.product-v46 .product-info-panel .section-head{
  margin-bottom:20px!important;
}

body.product-v46 .product-info-panel .section-head h2,
body.product-v46 .section-head h2{
  color:#14100a!important;
  font-size:clamp(28px,3.2vw,44px)!important;
  line-height:1.18!important;
}

body.product-v46 .product-info-grid{
  display:grid!important;
  grid-template-columns:1.3fr .85fr .85fr!important;
  gap:14px!important;
}

body.product-v46 .info-card{
  border-radius:26px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.58), rgba(241,230,210,.58))!important;
  border:1px solid rgba(77,56,23,.12)!important;
  box-shadow:none!important;
  padding:22px!important;
}

body.product-v46 .info-card h3{
  margin:0 0 12px!important;
  color:#15100a!important;
  font-size:21px!important;
}

body.product-v46 .info-card p{
  color:rgba(34,26,12,.68)!important;
  line-height:1.9!important;
}

body.product-v46 .specs-table{
  display:grid!important;
  overflow:hidden!important;
  border-radius:20px!important;
  border:1px solid rgba(77,56,23,.10)!important;
}

body.product-v46 .specs-row{
  display:grid!important;
  grid-template-columns:minmax(120px,.62fr) 1fr!important;
  margin:0!important;
  border-bottom:1px solid rgba(77,56,23,.10)!important;
}

body.product-v46 .specs-row:last-child{
  border-bottom:0!important;
}

body.product-v46 .specs-row dt,
body.product-v46 .specs-row dd{
  margin:0!important;
  padding:12px 14px!important;
  font-size:13.5px!important;
  line-height:1.7!important;
}

body.product-v46 .specs-row dt{
  background:rgba(20,16,10,.045)!important;
  color:rgba(24,18,9,.62)!important;
  font-weight:900!important;
}

body.product-v46 .specs-row dd{
  color:#14100a!important;
  font-weight:800!important;
}

/* Similar products */
body.product-v46 .similar-products{
  width:min(1180px, calc(100% - 38px))!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}

body.product-v46 .similar-products .product-card{
  border-radius:26px!important;
  overflow:hidden!important;
  background:rgba(255,249,238,.88)!important;
  border:1px solid rgba(77,56,23,.12)!important;
  box-shadow:0 16px 36px rgba(35,25,12,.08)!important;
}

body.product-v46 .similar-products .product-media{
  height:220px!important;
  display:block!important;
}

body.product-v46 .similar-products .product-body{
  padding:16px!important;
}

body.product-v46 .similar-products .product-body h3{
  font-size:20px!important;
  line-height:1.35!important;
  color:#14100a!important;
}

body.product-v46 .similar-products .price-row{
  border-top:1px solid rgba(77,56,23,.10)!important;
  padding-top:10px!important;
}

@media(max-width:980px){
  body.product-v46 .product-detail-layout{
    grid-template-columns:1fr!important;
  }

  body.product-v46 .product-buy-panel{
    position:static!important;
  }

  body.product-v46 .product-info-grid{
    grid-template-columns:1fr!important;
  }

  body.product-v46 .similar-products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:680px){
  body.product-v46 .page-hero{
    padding:24px 0 20px!important;
  }

  body.product-v46 .page-hero .container,
  body.product-v46 .product-detail-layout,
  body.product-v46 .product-info-panel,
  body.product-v46 .similar-products{
    width:calc(100% - 24px)!important;
  }

  body.product-v46 .page-hero h1{
    font-size:27px!important;
  }

  body.product-v46 .product-detail-layout{
    gap:14px!important;
  }

  body.product-v46 .product-gallery-panel{
    padding:10px!important;
    border-radius:28px!important;
  }

  body.product-v46 .product-gallery-main{
    height:72vw!important;
    min-height:300px!important;
    border-radius:22px!important;
  }

  body.product-v46 .product-gallery-thumbs{
    display:flex!important;
    overflow-x:auto!important;
    gap:8px!important;
    padding-bottom:4px!important;
    scroll-snap-type:x mandatory!important;
  }

  body.product-v46 .product-gallery-thumbs button{
    min-width:82px!important;
    height:78px!important;
    border-radius:16px!important;
    scroll-snap-align:start!important;
  }

  body.product-v46 .product-buy-panel{
    padding:20px!important;
    border-radius:28px!important;
  }

  body.product-v46 .product-buy-panel h1{
    font-size:31px!important;
  }

  body.product-v46 .product-quick-facts{
    grid-template-columns:1fr!important;
  }

  body.product-v46 .packaging-options{
    grid-template-columns:1fr 1fr!important;
  }

  body.product-v46 .product-actions-main{
    position:sticky!important;
    bottom:0!important;
    z-index:30!important;
    margin:22px -20px -20px!important;
    padding:12px!important;
    background:rgba(249,241,225,.94)!important;
    backdrop-filter:blur(16px)!important;
    border-top:1px solid rgba(77,56,23,.13)!important;
    border-radius:0 0 28px 28px!important;
  }

  body.product-v46 .product-info-panel{
    padding:18px!important;
    border-radius:28px!important;
  }

  body.product-v46 .specs-row{
    grid-template-columns:1fr!important;
  }

  body.product-v46 .specs-row dt,
  body.product-v46 .specs-row dd{
    padding:10px 12px!important;
  }

  body.product-v46 .similar-products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  body.product-v46 .similar-products .product-media{
    height:150px!important;
  }

  body.product-v46 .similar-products .product-body{
    padding:12px!important;
  }

  body.product-v46 .similar-products .product-body h3{
    font-size:15.5px!important;
  }
}

@media(max-width:380px){
  body.product-v46 .packaging-options{
    grid-template-columns:1fr!important;
  }

  body.product-v46 .similar-products .product-media{
    height:132px!important;
  }
}
