.product-image-picker{display:grid;gap:8px;color:var(--muted);font-size:12px}
.product-image-picker__row{display:flex;align-items:center;gap:12px}
.product-image-picker input{max-width:220px}
.product-image-preview{width:56px;height:56px;border-radius:14px;object-fit:cover;background:var(--paper);display:none}
.product-image-preview.has-image{display:block}
/* The image is deliberately outside the text flow: enlarging it must not alter
   the existing title/model/date rhythm or the card's bottom padding. */
.item .candidate-summary.has-product-image,.item .purchase-summary.has-product-image{position:relative!important}
.product-thumb{position:absolute;left:0;top:0;width:130px;height:130px;border-radius:16px;object-fit:cover;background:var(--paper)}
.has-product-image .candidate-summary__top,.has-product-image .candidate-summary__model,.has-product-image .candidate-summary__meta,.has-product-image .purchase-summary__top,.has-product-image .purchase-summary__model,.has-product-image .purchase-summary__meta{margin-left:146px!important}
/* Keep the purchased label visible beside the image, on the same top edge. */
.purchase-summary.has-product-image .product-thumb{top:18px}
.purchase-summary.has-product-image::before{content:'已购产品'!important;display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:1!important;left:146px!important;margin-left:0!important}
/* Pending cards use the same image/status/text hierarchy as purchased cards. */
.item:not(.bought):has(.candidate-summary.has-product-image) .compare-title{padding-left:146px!important}
.candidate-summary.has-product-image .product-thumb{top:-34px}
.item.editing .purchase-summary,.item.editing .candidate-summary{display:none!important}
@media(max-width:700px){.product-image-picker__row{align-items:flex-start;flex-direction:column}.product-image-picker input{max-width:100%}}
