@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-from-bottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 rgba(59,130,246,.4)}50%{box-shadow:0 0 0 10px rgba(59,130,246,0)}}.animate-fade-in{animation:fade-in .2s ease-out}.animate-fade-in-up{animation:fade-in-up .2s ease-out}.animate-slide-in-from-bottom{animation:slide-in-from-bottom .2s ease-out}.animate-scale-in{animation:scale-in .2s ease-out}.animate-bounce-in{animation:bounce-in .3s ease-out}.animate-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 2s infinite}.animate-pulse-glow{animation:pulse-glow 2s infinite}.animate-fade-in-up:first-child{animation-delay:.05s}.animate-fade-in-up:nth-child(2){animation-delay:.1s}.animate-fade-in-up:nth-child(3){animation-delay:.15s}.animate-fade-in-up:nth-child(4){animation-delay:.2s}.animate-fade-in-up:nth-child(5){animation-delay:.25s}.hover-lift{transition:transform .2s ease,box-shadow .2s ease;will-change:transform}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15)}@supports (padding:max(0px)){.safe-area-inset-bottom{padding-bottom:max(12px,env(safe-area-inset-bottom))}.safe-area-inset-top{padding-top:max(12px,env(safe-area-inset-top))}}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4) 50%,transparent);animation:shimmer-slide 1.5s infinite}@keyframes shimmer-slide{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.btn-micro-interaction{position:relative;overflow:hidden;transition:all .2s ease}.btn-micro-interaction:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transition:width .3s ease,height .3s ease;transform:translate(-50%,-50%)}.btn-micro-interaction:active:before{width:300px;height:300px}.accordion-item{opacity:0;transform:translateY(20px);transition:all .3s ease}.accordion-item.animate-in{opacity:1;transform:translateY(0)}.accordion-item.animate-out{opacity:0;transform:translateY(-10px)}.tab-content{animation:fade-in .3s ease}.product-card-hover{transition:all .3s ease}.product-card-hover:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.1)}.badge-pulse{animation:badge-pulse 2s infinite}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.mobile-header-slide{animation:slide-in-from-bottom .3s ease}.focus-ring{transition:all .2s ease}.focus-ring:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:.5rem}::selection{background-color:#3b82f6;color:white}::-moz-selection{background-color:#3b82f6;color:white}