/* Source-derived card tokens: square pale-grey image, compact detail row. */
.product-small:has(.buff-card)>.col-inner{position:relative}
.buff-card{color:var(--buff-card-fg,#111);font-family:inherit;min-width:0}
.buff-card__media{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--buff-card-bg,#f2f2f2)}
.buff-card__image-link{display:block;width:100%;height:100%;position:relative}
.buff-card__img,.buff-card__image-link>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .2s ease}
.buff-card__img--hover{opacity:0}.buff-card__image-link:hover .buff-card__img--hover,.buff-card__image-link:focus-visible .buff-card__img--hover{opacity:1}
.buff-card__info{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 0 0;line-height:1.3}
.buff-card__title{font-size:var(--buff-card-size,16px);line-height:1.3;font-weight:600;margin:0;min-width:0;overflow-wrap:anywhere}
.buff-card__title a{color:var(--buff-card-fg,#111);text-decoration:none}.buff-card__title a:hover{text-decoration:underline}
.buff-card__price{font-size:var(--buff-card-size,16px);line-height:1.3;font-weight:600;text-align:right;flex:none;color:var(--buff-card-fg,#111)}
.buff-card__price del{font-size:14px;opacity:.7}.buff-card__price ins{text-decoration:none}
.buff-card__stock,.buff-card-sale{display:inline-block;background:var(--buff-badge-bg,#007653);color:var(--buff-badge-fg,#fff);font-size:14px;line-height:1.2;font-weight:700;padding:5px 8px;white-space:normal}
.product-small:has(.buff-card)>.col-inner>.badge-container{position:absolute;left:10px;top:calc(100cqw - 42px);bottom:auto;z-index:3;max-width:calc(100% - 20px);pointer-events:none}
.product-small:has(.buff-card)>.col-inner{container-type:inline-size}.product-small:has(.buff-card) .badge-container .badge{display:block}
.buff-card--simulated .buff-card-sale{position:absolute;bottom:10px;left:10px;max-width:calc(100% - 20px)}
.buff-card__stock{position:absolute;left:10px;top:10px;bottom:auto;background:#333;color:#fff;z-index:2}
.buff-card__actions{position:absolute;right:10px;bottom:10px;z-index:3;display:flex;align-items:center;gap:6px}
.buff-card__actions a,.buff-card__actions button{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;margin:0;padding:7px 10px;background:#fff;color:#111!important;border:1px solid #111;border-radius:0;font-size:14px;line-height:1.2;text-decoration:none}
.buff-card__actions a:hover,.buff-card__actions a:focus-visible,.buff-card__actions button:hover,.buff-card__actions button:focus-visible{background:#111;color:#fff!important;outline:2px solid #111;outline-offset:2px}
@media(max-width:767px){.buff-card__info{display:flex;flex-direction:column;gap:5px;padding-top:10px}.buff-card__price{order:-1;text-align:left}.buff-card__actions{right:6px;bottom:6px}.buff-card__actions a,.buff-card__actions button{min-width:38px;min-height:38px;padding:6px}}
@media(prefers-reduced-motion:reduce){.buff-card__img{transition:none}}

.buff-card__media > .buff-card-sale{position:absolute;left:10px;bottom:10px;z-index:3;max-width:calc(100% - 20px)}
/* Suppress only the duplicated loop sale flash when this card rendered its own. */
.product-small > .col-inner:has(> .buff-card .buff-card__media > .buff-card-sale) > .badge-container > .buff-card-sale{display:none!important}
.buff-card__media > .buff-card-sale{top:10px;bottom:auto;left:10px;z-index:3;max-width:calc(100% - 20px)}
