@keyframes fade-in-soft{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-overlay{0%{opacity:0}to{opacity:1}}@keyframes slide-in-right-soft{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.animate-fade-in-soft{animation:fade-in-soft .25s ease-out forwards}.animate-fade-in-overlay{animation:fade-in-overlay .25s ease-out forwards}.animate-slide-in-right-soft{animation:slide-in-right-soft .3s ease-out forwards}@keyframes bento-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.animate-bento-in{animation:bento-in .4s cubic-bezier(.16,1,.3,1) both}@keyframes glass-shimmer{0%{background-position:-200% center}to{background-position:200% center}}html{color-scheme:light}html.dark{color-scheme:dark}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}body{position:relative;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(55% 45% at 8% -6%,rgba(79,102,255,.14),transparent 70%),radial-gradient(48% 42% at 100% 4%,rgba(124,92,255,.1),transparent 72%)}html.dark body:before{background:radial-gradient(55% 45% at 8% -6%,rgba(79,102,255,.2),transparent 70%),radial-gradient(48% 42% at 100% 4%,rgba(124,92,255,.16),transparent 72%)}:where(a,button,[role=button],input,select,textarea):focus-visible{outline:none;box-shadow:0 0 0 3px #4f66ff59}.tabular-nums,.font-mono{font-variant-numeric:tabular-nums}@keyframes blob{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.animate-blob{animation:blob 7s infinite}.animation-delay-2000{animation-delay:2s}.animation-delay-4000{animation-delay:4s}@keyframes fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fade-in .6s ease-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.animate-shake{animation:shake .3s ease-in-out}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.animate-float{animation:float 6s ease-in-out infinite}@keyframes slide-in-left{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slide-in-left .8s ease-out}@keyframes slide-in-right{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-right{animation:slide-in-right .8s ease-out}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fade-in-up .6s ease-out forwards;opacity:0}.animation-delay-300{animation-delay:.3s}.animation-delay-500{animation-delay:.5s}.animation-delay-700{animation-delay:.7s}
