@view-transition{navigation:auto}
::view-transition-group(product-image){animation-duration:.45s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
.detail-art img{view-transition-name:product-image}
.motion-notices{position:fixed;z-index:10000;top:12px;left:50%;width:min(480px,calc(100% - 28px));transform:translateX(-50%);display:grid;gap:8px;pointer-events:none}
.motion-notice{pointer-events:auto;margin:0;padding:14px 18px;background:#164c34;color:white;border:1px solid #408162;border-radius:12px;box-shadow:0 12px 32px rgba(20,53,35,.22);font-weight:700;overflow-wrap:anywhere;animation:notice-in .3s ease-out both}
.motion-notice.is-error{background:#8b3330;border-color:#b45a50}.motion-notice.is-leaving{animation:notice-out .3s ease-in forwards}
@keyframes notice-in{from{opacity:0;transform:translateY(-125%)}to{opacity:1;transform:translateY(0)}}@keyframes notice-out{to{opacity:0;transform:translateY(-125%)}}
.basket-badge[hidden]{display:none!important}.basket-flying-image{position:fixed;z-index:10001;pointer-events:none;object-fit:cover;border-radius:12px;box-shadow:0 6px 20px rgba(20,53,35,.25)}
.cart-inline-error{margin:8px 0 0;color:#a3342f;font-size:12px;font-weight:700}
.celebration-layer{position:fixed;z-index:9999;inset:0;pointer-events:none;overflow:hidden}.celebration-piece{position:absolute;top:-16px;width:8px;height:13px;border-radius:2px;animation:celebration-fall 2s ease-out forwards;animation-delay:var(--delay);left:var(--x);background:var(--color)}
@keyframes celebration-fall{0%{opacity:1;transform:translate(0,-10px) rotate(0)}85%{opacity:1}100%{opacity:0;transform:translate(var(--drift),var(--fall)) rotate(var(--spin))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{view-transition-name:none!important}.motion-notice,.motion-notice.is-leaving{animation:none}.celebration-layer,.basket-flying-image{display:none!important}}
