.product-item{text-align:center;border:1px solid #ddd;padding:10px;border-radius:12px;max-width:300px;width:100%;justify-self:center;background:#fff;position:relative}.product-item img{width:100%;height:auto;border-radius:8px;display:block}.badge{position:absolute;top:8px;left:8px;z-index:2;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,.15)}.tpl1 .badge{top:10px;left:10px}.tpl2 .badge{top:6px;left:6px}.tpl1 .product-item{border:none;padding:0;border-radius:12px;overflow:hidden;max-width:none;background:0 0}.tpl1 .product-item .img-wrap{position:relative}.tpl1 .product-item a{display:block}.tpl1 .product-item img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid #e7e7e7;box-shadow:0 8px 22px rgba(0,0,0,.12)}.tpl2 .product-item .img-wrap{overflow:hidden;border-radius:12px;margin:-10px -10px 10px;height:auto;aspect-ratio:1/1;position:relative}.tpl2 .product-item .img-wrap img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}.meta-line{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:6px}.meta-line img.store-logo{height:18px;width:auto;border-radius:4px;border:1px solid #eee}.stars{font-size:14px;letter-spacing:2px;color:#ffb400}.price-tag{font-weight:700;font-size:16px;margin-top:6px}.coupon-btn{display:inline-block;margin-top:8px;padding:6px 10px;border-radius:8px;border:1px dashed #999;background:#fafafa;cursor:pointer;font-size:13px}.coupon-btn.copied{border-color:#2d7;background:#eafff2}#pager button.active{background:#111;color:#fff;border-color:#111}#pager .dots{padding:6px 8px;color:#777}