.product-detail-media>.product-detail-img{display:block;width:100%;height:340px;object-fit:contain;touch-action:pan-y}
.product-gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:12px 0;font-size:13px}
.product-gallery-controls button{width:40px;height:40px;border:1px solid #d9dce1;background:#fff;border-radius:50%;font-size:26px;cursor:pointer;color:#202124}
.product-gallery-thumbnails{display:flex;justify-content:center;gap:10px;padding:0 12px 16px}
.product-gallery-thumbnails button{width:64px;height:64px;padding:5px;border:1px solid #d9dce1;border-radius:10px;background:#fff;cursor:pointer}
.product-gallery-thumbnails button[aria-pressed=true]{border:2px solid #e51a2d}
.product-detail-media .product-gallery-thumbnails img{width:100%;height:100%;object-fit:contain}
@media(max-width:700px){.product-detail-media>.product-detail-img{height:260px}}
.product-detail-modal #productDetailMedia{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow:hidden;box-sizing:border-box}
.product-detail-modal #productDetailMedia>.product-detail-img{flex:0 0 auto;width:100%;max-width:100%;height:300px;object-fit:contain}
.product-gallery-controls,.product-gallery-thumbnails{flex:0 0 auto;box-sizing:border-box;width:100%}
.product-gallery-controls button,.product-gallery-thumbnails button{flex-shrink:0}
@media(max-width:700px){.product-detail-modal #productDetailMedia>.product-detail-img{height:240px}}
.store-card.is-popular .store-card-img{padding:0;aspect-ratio:1/1;background:#fff}
.store-card.is-popular .store-card-img img{display:block;width:100%;height:100%;object-fit:cover}
.store-card .store-card-info>.badge-popular,#productDetailCategory .badge-popular{position:static;align-self:flex-start;display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:6px 10px;border-radius:7px;background:#20252e;color:#fff;font-size:10px;font-weight:700;letter-spacing:.03em;line-height:1.2;box-shadow:none;margin:0 0 5px}
.store-card .store-card-info>.badge-popular::before,#productDetailCategory .badge-popular::before{content:'★';color:#ffc857;font-size:12px}
.store-grid{align-items:start}
.store-grid .store-card{height:auto;min-height:0}
.store-grid .store-card .store-card-info{flex:0 0 auto;gap:8px}
.store-grid .store-card .product-name{min-height:0;margin-bottom:3px}
.store-grid .store-card .store-facts{min-height:0;margin:4px 0}
.store-grid .store-card .product-more{margin-top:6px}
.store-grid .store-card .store-card-img{aspect-ratio:1/1}
@media(max-width:480px){.store-grid{grid-template-columns:minmax(0,1fr)}}
/* Shared card tracks keep each row aligned without stretching content gaps. */
.store-grid{align-items:stretch;grid-auto-rows:1fr}
.store-grid .store-card{height:100%;display:flex;flex-direction:column;box-sizing:border-box}
.store-grid .store-card .store-card-img{flex:0 0 auto;aspect-ratio:1/1}
.store-grid .store-card .store-card-info{display:grid;flex:1;grid-template-rows:20px 18px 49px 38px 54px 24px 36px 54px;gap:8px;align-content:start}
.store-card .store-card-info>.badge-popular{grid-row:1;align-self:center;margin:0;padding:4px 8px}
.store-card .store-card-info>.category{grid-row:2;align-self:center}
.store-card .store-card-info>.store-stock{grid-row:1;align-self:center}
.store-card.is-popular .store-card-info>.store-stock{grid-row:2;justify-self:end;font-size:10px}
.store-grid .store-card .product-name{grid-row:3;align-self:start;margin:0;min-height:0}
.store-grid .store-card .product-desc{grid-row:4;align-self:start;min-height:0}
.store-grid .store-card .store-facts{grid-row:5;align-self:start;min-height:0;margin:0}
.store-grid .store-card .product-more{grid-row:6;align-self:center;margin:0}
.store-card .store-card-info>.store-compare-toggle{grid-row:7;align-self:center;margin:0}
.store-card .store-card-info>.price-row{grid-row:8;align-self:end;width:100%;box-sizing:border-box}
@media(max-width:700px){.store-grid .store-card .store-card-info{grid-template-rows:20px 18px 44px 38px 54px 24px 36px 54px}.store-card.is-popular .store-card-info>.store-stock{font-size:10px}}
@media(max-width:380px){.store-card .store-card-info>.price-row{flex-direction:row;align-items:center}.store-card .store-card-info>.price-row .product-buy{width:auto;flex:0 0 auto}}
.store-grid .store-card .store-card-info>*{grid-column:1;min-width:0}
