.flip-card-container{perspective:1000px;position:relative}.flip-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.flip-card-inner.rotate-y-180{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{backface-visibility:hidden;width:100%;height:100%;position:absolute}.flip-card-front{z-index:2;transform:rotateY(0)}.flip-card-back,.flip-card-hover:hover .flip-card-inner{transform:rotateY(180deg)}@media (hover:none) and (pointer:coarse){.flip-card-inner{transition:transform .4s cubic-bezier(.4,0,.2,1)}}@media (prefers-reduced-motion:reduce){.flip-card-inner{transition:transform .3s}}.color-swatch{transition:all .2s}.color-swatch:hover:not(.selected){transform:scale(1.1);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.color-swatch.selected{border-width:3px;box-shadow:0 0 0 4px #3b82f633}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.image-loading{background:linear-gradient(90deg,#f6f7f8 0%,#edeef1 20%,#f6f7f8 40% 100%) 0 0/800px 104px;animation:1.2s ease-in-out infinite shimmer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:.3s ease-in fadeIn}.product-card-wrapper{transition:transform .2s,box-shadow .2s}.product-card-wrapper:hover{transform:translateY(-4px);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.color-picker-enter{animation:.2s ease-out slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.badge-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.variation-option{transition:all .15s}.variation-option:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.variation-option:active:not(:disabled){transform:translateY(0)}.stock-indicator{animation:.3s ease-out slideInRight}@keyframes slideInRight{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.price-update{animation:.3s ease-in-out priceChange}@keyframes priceChange{0%{transform:scale(1)}50%{color:#3b82f6;transform:scale(1.05)}to{transform:scale(1)}}
