.product-top{max-width:880px;margin:auto}
.product-top .logo{width:80px;height:31px;border-radius:6px;font-size:15px}
.product-top .logo-img{width:80px;height:31px;border-radius:6px;object-fit:contain;flex:none}
.product-top .search input{color:#999}
.gallery{position:relative;padding:0}
.gallery-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-track img{flex:0 0 100%;scroll-snap-align:center;width:100%;height:100%;object-fit:contain}
.count{position:absolute;right:18px;bottom:18px;background:#555b;color:#fff;border-radius:30px;padding:8px 11px;font-size:13px}

.price-row{display:flex;align-items:baseline;gap:10px;margin-top:18px}
.discount-pill{background:var(--accent);color:#fff;font-size:14px;padding:5px 9px;border-radius:8px}
.price-now{font-size:28px;font-weight:900;color:var(--accent)}
.price-now.small{font-size:16px;display:block;margin-top:6px}
.price-old{color:var(--muted);font-size:15px}
.price-old.small{font-size:13px;margin-left:6px}

.product-info h1{font-size:20px;line-height:1.35;margin:12px 0}

.seller-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;padding:14px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.seller-row b{color:var(--ink)}
.rating-inline{color:var(--amber);font-weight:700}
.rating-inline i{color:var(--muted);font-style:normal;font-weight:400}

.option-line{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid var(--line);color:var(--ink)}
.option-line small{display:block;color:var(--muted);font-weight:400;margin-top:3px}
.option-line i{font-size:22px;color:#999}

.reviews{border-top:10px solid var(--soft);margin:18px -20px 0;padding:22px 20px}
.reviews h2{font-size:18px;margin:0 0 16px}
.review-summary{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.review-score{text-align:center}
.review-score strong{display:block;font-size:32px}
.review-score b{color:var(--amber);display:block;font-size:14px}
.review-score span{color:var(--muted);font-size:12px}
.rating-bars{flex:1;min-width:180px;display:grid;gap:6px}
.rating-bars label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.rating-bars i{flex:1;height:6px;border-radius:99px;background:#e7e7ec;overflow:hidden}
.rating-bars u{display:block;height:100%;background:var(--amber)}
.rating-bars span{width:26px;text-align:right}

.review-block-title{font-weight:700;margin:22px 0 10px}
.review-photos{display:flex;gap:8px;overflow:auto}
.review-photos img{width:78px;height:78px;object-fit:cover;border-radius:10px;background:#f1f1f3;flex:none}

.review-filters{display:flex;gap:8px;overflow:auto;margin:16px 0}
.chip{white-space:nowrap;border:1px solid var(--line);border-radius:99px;padding:8px 14px;font-size:13px;color:var(--muted)}
.chip.active{border-color:var(--ink);color:var(--ink);font-weight:700}

.review-card{padding:16px 0;border-top:1px solid var(--line)}
.review-card header{display:flex;align-items:center;gap:10px}
.review-card .avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ffd9df;color:#c0154a;font-weight:800}
.review-card .avatar.purple{background:#e6def9;color:#6a3fd1}
.review-card .avatar.blue{background:#dcefff;color:#1a72c9}
.review-card header small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.review-card .stars{display:block;color:var(--amber);margin:8px 0 6px;font-size:14px}
.review-card p{margin:0 0 10px;line-height:1.55}
.review-thumbs{display:flex;gap:8px;margin-bottom:10px}
.review-thumbs img{width:64px;height:64px;object-fit:cover;border-radius:8px;background:#f1f1f3}
.review-thumbs .more{display:grid;place-items:center;width:64px;height:64px;border-radius:8px;background:#0007;color:#fff;font-weight:700;margin-left:-72px}
.review-card footer{color:var(--muted);font-size:12px}

.description-block{border-top:10px solid var(--soft);margin:18px -20px 0;padding:22px 20px}
.description-block summary{font-size:18px;font-weight:800;cursor:pointer;list-style:none}
.description-block summary::-webkit-details-marker{display:none}
.description-body{margin-top:16px;text-align:center;color:#333;line-height:1.9}
.description-title{font-weight:800;font-size:16px}

.related{border-top:10px solid var(--soft);margin:18px -20px 0;padding:22px 20px}
.related h2{font-size:18px;margin:0 0 16px}
.related-row{display:flex;gap:14px;overflow:auto}
.related-card{flex:none;width:150px;color:inherit}
.related-img{position:relative;border-radius:12px;overflow:hidden;background:#f5f5f7}
.related-img img{width:100%;height:150px;object-fit:contain;display:block}
.ship-badge{position:absolute;left:8px;top:8px;background:#079b7a;color:#fff;font-size:10px;padding:3px 7px;border-radius:6px}
.related-card b{display:block;margin-top:8px;font-size:13px;font-weight:600;line-height:1.35;max-height:2.7em;overflow:hidden}

.buybar.single{justify-content:center}
.buybar.single .primary{width:100%}

@media(max-width:480px){
    .product-top{gap:8px}
    .gallery{height:420px}
    .product-info{padding:16px}
    .review-thumbs .more{margin-left:-72px}
}
