@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.5)}70%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{transform:translate(-150%) skew(-15deg)}to{transform:translate(150%) skew(-15deg)}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes softSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes gentleBlur{0%{opacity:0;filter:blur(4px);transform:scale(.98)}to{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes dreamyFade{0%{opacity:0}to{opacity:1}}@keyframes floatGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .5s ease-out forwards}.animate-pop-in{animation:popIn .8s cubic-bezier(.34,1.56,.64,1) forwards}.animate-shimmer{animation:shimmer 2.5s infinite linear}.animate-wiggle{animation:wiggle .8s ease-in-out infinite}.animate-slide-up-fade{animation:slideUpFade .4s ease-out forwards}.animate-soft-slide-up{animation:softSlideUp 1.2s cubic-bezier(.2,.8,.2,1) forwards}.animate-gentle-blur{animation:gentleBlur 1.5s ease-out forwards}.animate-dreamy-fade{animation:dreamyFade 1.5s ease-in-out forwards}.animate-float-gentle{animation:floatGentle 3s ease-in-out infinite}body{font-family:Inter,sans-serif;background-color:#fffef7;color:#4a4a4a}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffb6d9;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#e092b0}
