@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #6366f14d}50%{box-shadow:0 0 40px #6366f199}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes gradient-flow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);background-size:200% 100%;animation:shimmer 2s infinite}.animate-fade-in-up{animation:fade-in-up .6s ease-out forwards}.animate-scale-in{animation:scale-in .4s ease-out forwards}.animate-slide-in-right{animation:slide-in-right .5s ease-out forwards}.animate-bounce-subtle{animation:bounce-subtle 2s ease-in-out infinite}.animate-gradient{background-size:200% 200%;animation:gradient-flow 3s ease infinite}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.glass-effect{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.4)}.glass-dark{background:#0f172ae6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)}.gradient-hero{background:linear-gradient(135deg,#667eea,#764ba2)}.gradient-warm{background:linear-gradient(135deg,#f093fb,#f5576c)}.gradient-fresh{background:linear-gradient(135deg,#4facfe,#00f2fe)}.gradient-sunset{background:linear-gradient(135deg,#fa709a,#fee140)}.text-gradient{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-hover-lift{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.btn-hover-lift:hover{transform:translateY(-3px);box-shadow:0 20px 40px -10px #6366f166}.btn-hover-lift:active{transform:translateY(-1px)}.card-hover{transition:all .4s cubic-bezier(.34,1.56,.64,1)}.card-hover:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 50px -12px #00000026}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.product-glow{position:relative}.product-glow:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background:inherit;filter:blur(40px);opacity:.3;z-index:-1;transition:opacity .5s ease}.product-glow:hover:before{opacity:.5}.badge-new{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:9999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.badge-sale{background:linear-gradient(135deg,#f5576c,#f093fb);color:#fff;padding:4px 12px;border-radius:9999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}input:focus,button:focus{outline:none}input:focus-visible,button:focus-visible{outline:2px solid #6366f1;outline-offset:2px}#root{animation:fade-in-up .4s ease-out}.spinner{border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.swatch-hover{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.swatch-hover:hover{transform:scale(1.15) rotate(5deg)}.price-update{animation:scale-in .3s ease-out}.hero-pattern{background-image:radial-gradient(circle at 20% 50%,rgba(99,102,241,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(168,85,247,.1) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(59,130,246,.1) 0%,transparent 50%)}@media(max-width:640px){.hero-title{font-size:2.5rem}}::selection{background:#6366f1;color:#fff}
