.detail-page{padding-bottom:20px}
.product-hero{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:start}
.gallery{min-width:0}
.gallery-main{display:block;width:100%;height:350px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:12px}
.gallery-thumbs{display:flex;gap:7px;margin-top:9px;overflow:auto}
.gallery-thumbs button{flex:0 0 62px;width:62px;height:62px;padding:3px;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer}
.gallery-thumbs img{width:100%;height:100%;object-fit:contain}
.product-info h1{margin:0 0 6px;font-size:28px}
.product-subtitle{margin:0 0 12px;color:var(--muted)}
.compare-toggle--hero{display:inline-flex;padding:8px 12px;border:1px solid var(--brand);border-radius:8px;background:#fff;color:var(--brand);font-weight:750}
.current-price{margin:14px 0;padding:13px;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--brand);font-size:21px;font-weight:850}
.quick-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.quick-specs div{padding:11px;background:#fff;border:1px solid var(--line);border-radius:9px}
.quick-specs strong{display:block;color:var(--muted);font-size:12px}
.quick-specs span{display:block;margin-top:3px;color:var(--brand);font-weight:800}

.content-card{padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px}
.content-card h2{margin-top:0;font-size:19px}
.detail-price-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,2fr);gap:18px;margin-top:24px}
.detail-price-grid--bottom{align-items:stretch}
.history-table{width:100%;border-collapse:collapse}
.history-table th,.history-table td{padding:7px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}
.offer-section{padding:0;overflow:hidden}
.offer-section h2{margin:0;padding:14px 16px;background:#f8f4e0}
.offer-card{display:grid;grid-template-columns:minmax(0,1fr) 145px 90px;gap:10px;align-items:center;padding:12px 16px;border-top:1px solid var(--line)}
.offer-card.is-hidden{display:none}
.offer-card span{display:block;color:var(--muted);font-size:12px}
.offer-price{color:var(--brand);font-size:17px;font-weight:850;text-align:right}
.offer-cta{padding:7px 9px!important;border-radius:7px;background:var(--brand);color:#fff!important;text-align:center;font-weight:700}
.show-more-offers{display:block;margin:12px auto;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}
.price-summary-grid{display:grid;grid-template-columns:1fr;gap:9px}
.price-summary-grid>div{padding:11px;border:1px solid var(--line);border-radius:9px}
.price-summary-grid strong{display:block;color:var(--muted);font-size:12px}
.price-summary-grid span{display:block;margin-top:3px;color:var(--brand);font-weight:800}
.price-chart-card canvas{width:100%!important;max-height:280px}
.detail-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.detail-review-grid h3{font-size:15px}
.spec-section{margin-top:32px}
.spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.spec-card{padding:14px;background:#fff;border:1px solid var(--line);border-radius:11px}
.spec-card h3{margin:0 0 9px;font-size:16px}
.spec-card table{width:100%;border-collapse:collapse}
.spec-card td{padding:7px;border-bottom:1px solid #f0f0f0;font-size:13px}
.spec-card td:first-child{width:43%;color:var(--muted)}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.related-card{display:grid;grid-template-columns:70px minmax(0,1fr);gap:9px;align-items:center;padding:11px;background:#fff;border:1px solid var(--line);border-radius:10px}
.related-card img{width:70px;height:80px;object-fit:contain;grid-row:1/3}
.related-card strong{line-height:1.3}
.related-card span{color:var(--brand);font-weight:750}

@media(max-width:850px){
  .product-hero{grid-template-columns:1fr}
  .gallery{max-width:430px;margin:auto}
  .detail-price-grid,.detail-review-grid{grid-template-columns:1fr}
  .price-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .spec-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .quick-specs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .related-grid{grid-template-columns:1fr}
  .offer-card{grid-template-columns:1fr}
  .offer-price{text-align:left}
}
