/* Product cards, price, rating, swatches, size grid, category tiles, cart lines */
.lmn-media{position:relative;width:100%;aspect-ratio:3/4;background:var(--ink-100);overflow:hidden;border-radius:var(--radius-sm)}
.lmn-media img{width:100%;height:100%;object-fit:cover;display:block}
.lmn-media__ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:repeating-linear-gradient(135deg,var(--ink-100) 0 12px,var(--ink-50) 12px 24px);color:var(--ink-400);font:var(--text-label);letter-spacing:var(--tracking-widest);text-align:center;padding:8px}

.lmn-pcard{position:relative;display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-surface);text-align:left}
.lmn-pcard__mediawrap{position:relative}
.lmn-pcard__badges{position:absolute;top:var(--space-2);left:var(--space-2);display:flex;flex-direction:column;align-items:flex-start;gap:6px;z-index:2}
.lmn-pcard__wish{position:absolute;top:var(--space-2);right:var(--space-2);z-index:2}
.lmn-pcard__hover{position:absolute;inset:0;opacity:0;transition:opacity var(--duration-base) var(--ease-standard)}
.lmn-pcard:hover .lmn-pcard__hover{opacity:1}
.lmn-pcard__quick{position:absolute;left:var(--space-2);right:var(--space-2);bottom:var(--space-2);z-index:2;opacity:0;transform:translateY(6px);transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}
.lmn-pcard:hover .lmn-pcard__quick,.lmn-pcard:focus-within .lmn-pcard__quick{opacity:1;transform:none}
@media (hover:none){.lmn-pcard__quick{opacity:1;transform:none;position:static;margin-top:var(--space-2)}}
.lmn-pcard__body{display:flex;flex-direction:column;gap:6px}
.lmn-pcard__title{font:var(--text-product-title);color:var(--color-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lmn-pcard__sub{font:var(--text-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}
.lmn-pcard__sizes{display:flex;gap:6px;font:var(--fw-semibold) 11px/1 var(--font-display);color:var(--ink-500);letter-spacing:var(--tracking-wide)}
.lmn-pcard__sizes span[data-oos="true"]{color:var(--ink-300);text-decoration:line-through}
.lmn-pcard__sold{position:absolute;inset:0;background:rgba(255,255,255,.66);display:flex;align-items:center;justify-content:center;z-index:3}

.lmn-price{display:flex;align-items:baseline;gap:var(--space-2);font-variant-numeric:tabular-nums}
.lmn-price__now{font:var(--text-price);color:var(--color-price)}
.lmn-price--lg .lmn-price__now{font-size:var(--fs-price-lg)}
.lmn-price--sm .lmn-price__now{font-size:var(--fs-body-sm)}
.lmn-price__mrp{font:var(--fw-medium) var(--fs-body-sm)/1.2 var(--font-numeric);color:var(--color-price-compare);text-decoration:line-through}
.lmn-price__off{font:var(--fw-bold) var(--fs-body-sm)/1.2 var(--font-display);color:var(--color-discount)}
.lmn-price__tax{font:var(--text-caption);color:var(--color-text-muted)}

.lmn-rating{display:inline-flex;align-items:center;gap:6px;font:var(--fw-semibold) var(--fs-caption)/1 var(--font-body);color:var(--ink-700)}
.lmn-rating__stars{display:inline-flex;gap:1px;color:var(--color-rating)}
.lmn-rating__count{color:var(--ink-400);font-weight:var(--fw-regular)}
.lmn-rating--pill{background:var(--ink-100);padding:4px 8px;border-radius:var(--radius-xs)}

.lmn-swatches{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.lmn-swatch{width:24px;height:24px;border-radius:var(--radius-circle);padding:0;border:1px solid var(--color-border-strong);cursor:pointer;position:relative;background-clip:padding-box;transition:var(--transition-color),box-shadow var(--duration-fast) var(--ease-standard)}
.lmn-swatch--lg{width:32px;height:32px}
.lmn-swatch[aria-pressed="true"],.lmn-swatch[data-selected="true"]{box-shadow:0 0 0 2px var(--color-bg),0 0 0 3.5px var(--ink-1000)}
.lmn-swatch:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.lmn-swatch[disabled]{opacity:.35;cursor:not-allowed}
.lmn-swatch__more{width:auto;min-width:24px;padding:0 6px;border-radius:var(--radius-pill);font:var(--fw-semibold) 11px/1 var(--font-body);color:var(--ink-500);background:transparent;border:none}

.lmn-sizes{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.lmn-size{min-width:52px;height:44px;padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--white);font:var(--fw-bold) var(--fs-body-sm)/1 var(--font-display);letter-spacing:var(--tracking-wide);color:var(--ink-900);cursor:pointer;position:relative;transition:var(--transition-color)}
.lmn-size:hover{border-color:var(--ink-900)}
.lmn-size[aria-pressed="true"]{background:var(--ink-1000);border-color:var(--ink-1000);color:var(--white)}
.lmn-size:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.lmn-size--oos{color:var(--ink-300);border-color:var(--ink-200);cursor:not-allowed;overflow:hidden}
.lmn-size--oos::after{content:"";position:absolute;left:-10%;right:-10%;top:50%;height:1px;background:var(--ink-200);transform:rotate(-18deg)}
.lmn-size--low::before{content:"";position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--color-stock-warning)}
.lmn-sizes__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}

.lmn-wish{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-circle);border:none;background:rgba(255,255,255,.92);color:var(--ink-800);cursor:pointer;box-shadow:var(--shadow-subtle);transition:var(--transition-color)}
.lmn-wish:hover{color:var(--color-sale)}
.lmn-wish[aria-pressed="true"]{color:var(--color-sale)}
.lmn-wish[aria-pressed="true"] .lmn-icon{background-color:var(--color-sale)}
.lmn-wish--bare{background:transparent;box-shadow:none;border:1px solid var(--color-border)}

.lmn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--grid-gap-product-mobile) var(--grid-gap-product-mobile)}
@media(min-width:768px){.lmn-grid{grid-template-columns:repeat(3,1fr);gap:var(--grid-gap-product-desktop)}}
@media(min-width:1024px){.lmn-grid{grid-template-columns:repeat(4,1fr)}}
.lmn-grid--rail{display:flex;overflow-x:auto;gap:var(--space-3);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2)}
.lmn-grid--rail>*{flex:0 0 62%;scroll-snap-align:start}
@media(min-width:768px){.lmn-grid--rail>*{flex-basis:30%}}

.lmn-ccard{position:relative;display:block;overflow:hidden;border-radius:var(--radius-sm);background:var(--ink-100)}
.lmn-ccard__media{aspect-ratio:4/5}
.lmn-ccard--wide .lmn-ccard__media{aspect-ratio:16/9}
.lmn-ccard__label{position:absolute;left:0;right:0;bottom:0;padding:var(--space-6) var(--space-4) var(--space-4);background:linear-gradient(to top,rgba(11,11,12,.78),rgba(11,11,12,0));color:var(--white);font:var(--fw-bold) var(--fs-h4)/1.1 var(--font-display);text-transform:uppercase;letter-spacing:var(--tracking-tight);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2)}
.lmn-ccard__count{font:var(--text-caption);letter-spacing:var(--tracking-wide);opacity:.8;text-transform:none}
.lmn-ccard:hover .lmn-media img{transform:scale(1.03)}
.lmn-ccard .lmn-media img{transition:var(--transition-transform)}

.lmn-collcard{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border:var(--border-hairline);border-radius:var(--radius-sm);background:var(--color-surface);transition:var(--transition-color)}
.lmn-collcard:hover{border-color:var(--ink-1000)}
.lmn-collcard__icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary-active)}
.lmn-collcard__name{font:var(--text-h4);text-transform:uppercase;letter-spacing:var(--tracking-tight)}
.lmn-collcard__desc{font:var(--text-body-sm);color:var(--color-text-secondary)}

.lmn-cartitem{display:grid;grid-template-columns:88px 1fr;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:var(--border-hairline)}
.lmn-cartitem__media{width:88px;aspect-ratio:3/4}
.lmn-cartitem__top{display:flex;justify-content:space-between;gap:var(--space-3)}
.lmn-cartitem__meta{font:var(--text-caption);color:var(--color-text-secondary);display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:4px}
.lmn-cartitem__actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3)}
.lmn-cartitem__link{font:var(--fw-semibold) var(--fs-caption)/1 var(--font-body);color:var(--ink-500);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:6px 0}
.lmn-cartitem__link:hover{color:var(--ink-1000)}

.lmn-summary{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--ink-50);border-radius:var(--radius-sm)}
.lmn-summary__row{display:flex;justify-content:space-between;font:var(--text-body-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}
.lmn-summary__row b{color:var(--color-text);font-weight:var(--fw-semibold)}
.lmn-summary__row--save b,.lmn-summary__row--save{color:var(--color-discount)}
.lmn-summary__total{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--space-3);border-top:var(--border-hairline);font:var(--text-h4);text-transform:uppercase;font-variant-numeric:tabular-nums}
.lmn-summary__note{font:var(--text-caption);color:var(--color-text-muted)}

.lmn-gallery{display:grid;gap:var(--space-3);grid-template-columns:72px 1fr}
.lmn-gallery__thumbs{display:flex;flex-direction:column;gap:var(--space-2);max-height:640px;overflow:auto}
.lmn-gallery__thumb{width:72px;aspect-ratio:3/4;border:1.5px solid transparent;border-radius:var(--radius-sm);overflow:hidden;padding:0;background:var(--ink-100);cursor:pointer}
.lmn-gallery__thumb[aria-pressed="true"]{border-color:var(--ink-1000)}
.lmn-gallery__main{position:relative;aspect-ratio:3/4;background:var(--ink-100);border-radius:var(--radius-sm);overflow:hidden}
.lmn-gallery__zoom{position:absolute;right:var(--space-3);bottom:var(--space-3);background:rgba(255,255,255,.92);border-radius:var(--radius-sm);padding:6px 10px;font:var(--text-caption);color:var(--ink-700);display:flex;gap:6px;align-items:center}
@media(max-width:767px){.lmn-gallery{grid-template-columns:1fr}.lmn-gallery__thumbs{flex-direction:row;order:2}.lmn-gallery__thumb{width:56px}}
