.btn-press{transition:transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}.btn-press:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-press:active{transform:translateY(0) scale(.98);box-shadow:0 1px 4px #0000001a}.ripple-container{position:relative;overflow:hidden}.ripple-container:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);transform:scale(0);opacity:0;transition:transform .4s ease-out,opacity .3s ease-out}.ripple-container:active:after{transform:scale(2.5);opacity:1;transition:transform 0ms,opacity 0ms}.card-lift{transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.card-lift:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px #00000026,0 4px 8px -4px #0000001a}.card-lift:active{transform:translateY(-2px)}.card-glow{transition:box-shadow .3s ease,border-color .3s ease}.card-glow:hover{box-shadow:0 0 0 1px color-mix(in oklch,var(--color-primary-500) 30%,transparent),0 8px 24px -8px color-mix(in oklch,var(--color-primary-500) 20%,transparent);border-color:var(--color-primary-400)}@keyframes heart-pop{0%{transform:scale(1)}15%{transform:scale(1.3)}30%{transform:scale(.95)}45%{transform:scale(1.1)}60%{transform:scale(1)}}.heart-animate{animation:heart-pop .4s cubic-bezier(.4,0,.2,1)}@keyframes heart-burst{0%{opacity:1;transform:scale(0) rotate(0)}50%{opacity:.8}to{opacity:0;transform:scale(1.5) rotate(45deg)}}.heart-burst:before{content:"❤";position:absolute;font-size:.5em;animation:heart-burst .4s ease-out forwards;pointer-events:none}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.5}}.pulse-glow{animation:pulse-glow 1.5s ease-in-out infinite}@keyframes skeleton-wave{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-wave{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:skeleton-wave 1.4s ease infinite}:global(.dark) .skeleton-wave,.dark .skeleton-wave{background:linear-gradient(90deg,#374151 25%,#4b5563 37%,#374151 63%);background-size:400% 100%}.input-glow{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.input-glow:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px color-mix(in oklch,var(--color-primary-500) 15%,transparent),0 1px 2px #0000000d}@keyframes input-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.input-shake{animation:input-shake .4s cubic-bezier(.4,0,.2,1)}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-enter{animation:toast-slide-in .3s cubic-bezier(.4,0,.2,1)}.toast-exit{animation:toast-slide-out .2s cubic-bezier(.4,0,.2,1)}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-progress{transform-origin:left;animation:toast-progress var(--toast-duration, 5s) linear forwards}@keyframes checkmark-draw{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}.checkmark-animate{stroke-dasharray:50;stroke-dashoffset:50;animation:checkmark-draw .3s ease-out forwards;animation-delay:.1s}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(100px) rotate(720deg)}}.confetti{position:absolute;width:8px;height:8px;animation:confetti-fall 1s ease-out forwards}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes drawer-slide-out{0%{transform:translate(0)}to{transform:translate(100%)}}.drawer-enter{animation:drawer-slide-in .25s cubic-bezier(.4,0,.2,1)}.drawer-exit{animation:drawer-slide-out .2s cubic-bezier(.4,0,.2,1)}@keyframes backdrop-fade-in{0%{opacity:0}to{opacity:1}}.backdrop-enter{animation:backdrop-fade-in .2s ease-out}@keyframes image-fade-in{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.image-loaded{animation:image-fade-in .3s ease-out}.image-zoom{transition:transform .3s cubic-bezier(.4,0,.2,1)}.image-zoom:hover{transform:scale(1.05)}@keyframes badge-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.badge-new{animation:badge-bounce .3s ease-out}@keyframes badge-pulse{0%,to{box-shadow:0 0 #ef4444b3}50%{box-shadow:0 0 0 6px #ef444400}}.badge-attention{animation:badge-pulse 2s ease-in-out infinite}.scroll-fade-up{opacity:0;transform:translateY(20px);transition:opacity .5s ease-out,transform .5s ease-out}.scroll-fade-up.visible{opacity:1;transform:translateY(0)}.scroll-scale-in{opacity:0;transform:scale(.95);transition:opacity .4s ease-out,transform .4s ease-out}.scroll-scale-in.visible{opacity:1;transform:scale(1)}.stagger-children>*{opacity:0;transform:translateY(10px);transition:opacity .3s ease-out,transform .3s ease-out}.stagger-children.visible>*:nth-child(1){transition-delay:0ms}.stagger-children.visible>*:nth-child(2){transition-delay:50ms}.stagger-children.visible>*:nth-child(3){transition-delay:.1s}.stagger-children.visible>*:nth-child(4){transition-delay:.15s}.stagger-children.visible>*:nth-child(5){transition-delay:.2s}.stagger-children.visible>*:nth-child(6){transition-delay:.25s}.stagger-children.visible>*{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.skeleton-wave,.skeleton-shimmer{animation:none;background:#e5e7eb}:global(.dark) .skeleton-wave,:global(.dark) .skeleton-shimmer,.dark .skeleton-wave,.dark .skeleton-shimmer{background:#374151}}
