#catalog-products .annex-image-trigger{appearance:none;display:inline-flex;align-items:center;gap:4px;padding:4px 0;margin:0;border:0;background:transparent;color:var(--accent,#1565c0);font:inherit;line-height:1.5;text-decoration:underline;text-underline-offset:3px;cursor:pointer;border-radius:2px;min-height:28px}
#catalog-products .annex-image-trigger:focus-visible{outline:2px solid var(--accent,#1565c0);outline-offset:3px}
.annex-image-popup{position:fixed;z-index:10020;box-sizing:border-box;width:218px;padding:8px;background:var(--panel,var(--bg,#fff));color:var(--text,#17212b);border:1px solid var(--border,#98a4b2);border-radius:10px;box-shadow:0 8px 28px #0005}
.annex-image-popup[hidden]{display:none!important}.annex-image-popup img{display:block;width:200px;height:200px;object-fit:contain;background:#fff;border-radius:4px}.annex-image-popup-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:8px;margin-bottom:4px}.annex-image-popup button{border:0;background:transparent;color:inherit;font-size:22px;line-height:1;min-width:36px;min-height:36px;cursor:pointer;padding:4px}.annex-image-popup p{font-size:13px;margin:8px 0}
.annex-image-popup img[hidden],.annex-image-popup p[hidden]{display:none!important}

/* Use the shop's 200px source within the existing list-row height. */
.annex-catalog #catalog-products .product-cell.has-inline-image{position:relative;padding-left:48px!important;min-height:40px}
.annex-catalog #catalog-products .annex-inline-image{position:absolute;left:5px;top:50%;transform:translateY(-50%);width:36px;height:36px;min-width:0;min-height:0;padding:0;display:block;border:1px solid var(--border);border-radius:3px;overflow:hidden;background:var(--panel);line-height:0}
.annex-catalog #catalog-products .annex-inline-image img{display:block;width:100%;height:100%;object-fit:contain}
.annex-catalog #products.compact #catalog-products .product-cell.has-inline-image{padding-left:23px!important;min-height:0}
.annex-catalog #products.compact #catalog-products .annex-inline-image{left:4px;width:14px;height:14px;border-radius:2px}

/* Larger inline photos, without adding height to the product rows. */
.annex-catalog #catalog-products .product-cell.has-inline-image{padding-left:60px!important}
.annex-catalog #catalog-products .annex-inline-image{width:48px;height:90%;box-sizing:border-box;transition:transform .16s ease;transform-origin:center}
.annex-catalog #products.compact #catalog-products .annex-inline-image{width:16px;height:90%}
@media(hover:hover) and (pointer:fine){.annex-catalog #catalog-products .annex-inline-image:hover{transform:translateY(-50%) scale(1.2);z-index:3;box-shadow:0 2px 8px #0005}}
@media(prefers-reduced-motion:reduce){.annex-catalog #catalog-products .annex-inline-image{transition:none}}

/* Larger list thumbnail; the separate hover preview remains 200px. */
.annex-catalog #products:not(.compact) #catalog-products .product-cell.has-inline-image{padding-left:84px!important;height:72px;min-height:72px;box-sizing:border-box}
.annex-catalog #products:not(.compact) #catalog-products .annex-inline-image{width:72px;height:64px}
.annex-catalog #catalog-products .annex-inline-image:hover{transform:translateY(-50%)}
.annex-image-popup img{width:200px;height:200px}

/* Reset the former sticky-column offset when the photo cell becomes positioned. */
.annex-catalog #catalog-products .product-cell.has-inline-image{left:auto;right:auto;top:auto;bottom:auto}

/* Cart photos use the same shop image and 200px preview as the catalog. */
.annex-catalog :is(#cart-items, #review-items) td.has-inline-image{position:relative;padding-left:88px;min-height:80px;height:80px;box-sizing:border-box;overflow-wrap:anywhere}
.annex-catalog :is(#cart-items, #review-items) .annex-inline-image{position:absolute;left:8px;top:50%;transform:translateY(-50%);display:block;width:72px;height:64px;min-width:0;min-height:0;padding:0;border:1px solid var(--border);border-radius:3px;background:var(--panel);overflow:hidden;line-height:0}
.annex-catalog :is(#cart-items, #review-items) .annex-inline-image img{display:block;width:100%;height:100%;object-fit:contain}
.annex-catalog :is(#cart-items, #review-items) .annex-inline-image:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:900px){.annex-catalog :is(#cart-items, #review-items) td.has-inline-image{height:auto}}

/* Shared compact thumbnails in Japanese and English baskets. */
body.annex-catalog :is(#cart-items,#review-items) td.has-inline-image,
body.annex-catalog #international-items .international-cart-product.has-inline-image{
 position:relative;box-sizing:border-box;padding-left:88px!important;min-height:72px;
}
body.annex-catalog :is(#cart-items,#review-items,#international-items) .annex-inline-image{
 position:absolute;left:8px;top:50%;transform:translateY(-50%);display:block;
 width:64px;height:64px;min-width:0;min-height:0;margin:0;padding:0;
 border:1px solid var(--border);border-radius:4px;background:#fff;overflow:hidden;line-height:0;
}
body.annex-catalog :is(#cart-items,#review-items,#international-items) .annex-inline-image img{
 display:block;width:100%;height:100%;object-fit:contain;
}
@media(max-width:600px){
 body.annex-catalog :is(#cart-items,#review-items) td.has-inline-image,
 body.annex-catalog #international-items .international-cart-product.has-inline-image{padding-left:68px!important;min-height:56px}
 body.annex-catalog :is(#cart-items,#review-items,#international-items) .annex-inline-image{left:4px;width:56px;height:56px}
}
