.smart-image{background:linear-gradient(110deg, color-mix(in srgb, var(--color-surface) 88%, var(--color-primary) 12%) 8%, color-mix(in srgb, var(--color-primary) 20%, var(--color-surface) 80%) 18%, color-mix(in srgb, var(--color-surface) 90%, var(--color-accent) 10%) 33%);isolation:isolate;background-size:220% 100%;animation:1.35s ease-in-out infinite smart-image-shimmer;display:block;position:relative;overflow:hidden;container-type:inline-size}.smart-image__loader{z-index:1;place-items:center;display:grid;position:absolute;inset:0}.smart-image__picture-mark{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--color-primary) 34%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--color-surface) 72%, white 28%), color-mix(in srgb, var(--color-primary) 16%, var(--color-surface) 84%));width:clamp(28px,min(30cqw,30cqh),92px);max-width:46%;max-height:46%;box-shadow:0 10px 26px color-mix(in srgb, var(--color-primary) 18%, transparent),inset 0 0 0 1px #ffffff8c;border-radius:min(18%,14px);display:block;position:relative;overflow:hidden}.smart-image__picture-sun{aspect-ratio:1;background:color-mix(in srgb, var(--color-accent) 72%, white 28%);width:18%;box-shadow:0 0 16px color-mix(in srgb, var(--color-accent) 34%, transparent);border-radius:999px;position:absolute;top:18%;right:18%}.smart-image__picture-mountain{background:color-mix(in srgb, var(--color-primary) 64%, var(--color-accent) 36%);clip-path:polygon(0 100%,48% 8%,100% 100%);opacity:.9;width:72%;height:42%;position:absolute;bottom:12%;right:8%}.smart-image__picture-mountain--back{background:color-mix(in srgb, var(--color-text) 28%, var(--color-primary) 72%);opacity:.45;width:54%;height:32%;bottom:12%;right:34%}.smart-image__img{object-fit:inherit;border-radius:inherit;opacity:0;width:100%;height:100%;transition:opacity .28s,transform .28s;display:block;transform:scale(1.015)}.smart-image--loaded{animation:none}.smart-image--loaded .smart-image__img{opacity:1;transform:scale(1)}.smart-image--error .smart-image__picture-mark{border-color:color-mix(in srgb, var(--color-text) 35%, transparent);box-shadow:none}@keyframes smart-image-shimmer{0%{background-position:180% 0}to{background-position:-60% 0}}@media (prefers-reduced-motion:reduce){.smart-image,.smart-image__img{transition:none;animation:none}}
.product-card{border:1px solid var(--product-card-border);border-radius:var(--product-card-radius);background:var(--product-card-background);box-shadow:var(--product-card-shadow);flex-direction:column;transition:box-shadow .2s;display:flex;overflow:hidden}.product-card:hover{box-shadow:var(--product-card-hover-shadow)}.product-card__image-link{background:var(--product-card-image-background);display:block;position:relative;overflow:hidden}.product-card__image{width:100%;aspect-ratio:var(--product-card-image-aspect-ratio,1);object-fit:cover;background:var(--product-card-image-background);border-radius:var(--product-card-image-radius);display:block}.product-card__body{padding:var(--product-card-padding);flex-direction:column;flex:1;display:flex}.product-card__name-link{color:inherit;text-decoration:none}.product-card__name-link:hover .product-card__name{text-decoration:underline}.product-card__name{font-size:var(--product-card-name-font-size,16px);font-weight:var(--product-card-name-font-weight,600);color:var(--color-heading);line-height:var(--product-card-name-line-height,1.25);margin:0 0 8px}.product-card__desc{font-size:var(--product-card-desc-font-size);color:var(--product-card-desc-color);margin:0 0 10px;line-height:1.5}.product-card__desc p{margin:0}.product-card__footer{align-items:center;gap:var(--product-card-footer-gap);flex-wrap:wrap;margin-top:auto;padding-top:12px;display:flex}.product-card__badge{font-size:var(--product-card-badge-font-size);font-weight:var(--button-font-weight);border-radius:var(--button-radius);padding:3px 8px}.product-card__badge--out{background:var(--product-card-badge-out-background);color:var(--product-card-badge-out-color)}.product-card__add-btn{font-size:var(--product-card-add-btn-font-size);padding:var(--product-card-add-btn-padding)}@media (max-width:560px){.product-card{border-radius:min(var(--product-card-radius),18px)}.product-card__body{padding:14px}.product-card__name{overflow-wrap:anywhere;font-size:1rem}.product-card__footer{flex-direction:column;align-items:stretch}.product-card__add-btn{width:100%;min-height:42px}}[data-theme=magicieuse-clair] .product-card{min-width:0;padding-top:10px;position:relative;overflow:visible}[data-theme=magicieuse-clair] .product-card__image-link{border:1px solid color-mix(in oklch, var(--color-primary), transparent 86%);border-radius:var(--product-card-image-radius);transition:transform .25s,box-shadow .25s;box-shadow:0 14px 28px #3b2c401a;box-shadow:0 14px 28px lab(20.5631% 10.3785 -9.82243/.1)}[data-theme=magicieuse-clair] .product-card__image-link:before{content:"";z-index:1;background:linear-gradient(90deg, color-mix(in oklch, var(--color-primary), white 78%), transparent);pointer-events:none;width:10px;position:absolute;inset:0}[data-theme=magicieuse-clair] .product-card:hover .product-card__image-link{transform:translateY(-8px)rotate(-1deg);box-shadow:0 18px 34px #3b2c4024;box-shadow:0 18px 34px lab(20.5631% 10.3785 -9.82243/.14)}[data-theme=magicieuse-clair] .product-card__image{--product-card-image-aspect-ratio:3 / 4}[data-theme=magicieuse-clair] .product-card__name{--product-card-name-font-size:1.02rem;--product-card-name-font-weight:800;margin-bottom:2px;line-height:1.18}[data-theme=magicieuse-clair] .product-card__desc{color:color-mix(in oklch, var(--color-text), white 18%);line-clamp:1;-webkit-line-clamp:1;-webkit-box-orient:vertical;margin-bottom:10px;font-size:.82rem;font-weight:300;display:-webkit-box;overflow:hidden}[data-theme=magicieuse-clair] .product-price{color:var(--color-primary);letter-spacing:0;font-size:.98rem;font-weight:900}[data-theme=magicieuse-clair] .product-card__footer{justify-content:space-between;align-items:center;padding-top:0}[data-theme=magicieuse-clair] .product-card__add-btn{border:1.5px solid var(--color-secondary);min-height:34px;box-shadow:none;color:var(--color-secondary);white-space:nowrap;background:0 0;border-radius:10px;font-weight:800;transition:transform .15s,background .15s,color .15s}[data-theme=magicieuse-clair] .product-card__add-btn:hover{opacity:1;background:var(--color-secondary);color:#fff;transform:translateY(-2px)}
.product-list{gap:var(--product-list-gap,24px);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin:0;padding:0;list-style:none;display:grid}@media (max-width:480px){.product-list{grid-template-columns:1fr;gap:16px}}
