@keyframes floatBob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes thinkNod{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes excitedBounce{0%,to{transform:translateY(0) scaleY(1) scaleX(1)}30%{transform:translateY(-10px) scaleY(1.06) scaleX(.96)}60%{transform:translateY(0) scaleY(.94) scaleX(1.05)}}@keyframes sleepDrift{0%,to{transform:translateX(0) rotate(-2deg)}50%{transform:translateX(4px) rotate(2deg)}}@keyframes errorShake{0%,to{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}@keyframes armWave{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes zzz{0%{opacity:0;transform:translateY(0) scale(.7)}20%{opacity:1}to{opacity:0;transform:translateY(-22px) scale(1.1)}}@keyframes bubbleIn{0%{opacity:0;transform:scale(.8) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes ripple{0%{transform:scale(.7);opacity:.55}to{transform:scale(1.5);opacity:0}}@keyframes waveBar{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@keyframes recPulse{0%,to{box-shadow:0 0 0 0 rgba(223,91,64,.5)}50%{box-shadow:0 0 0 8px rgba(223,91,64,0)}}@keyframes dropIn{0%{opacity:0;transform:scale(.28) translateY(-70px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes helperDrop{0%{opacity:0;transform:scale(.22) translateY(-80px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes panelRise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes chipIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}@keyframes dp1{0%,to{opacity:.2}40%{opacity:1}}@keyframes dp2{0%,to{opacity:.2}60%{opacity:1}}@keyframes dp3{0%,to{opacity:.2}80%{opacity:1}}.arm-wave{transform-box:fill-box;transform-origin:center;animation:armWave .6s ease-in-out 3}.caira-static{transform-origin:50% 90%;will-change:transform}@keyframes cairaIdle{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-2px) scaleY(1.012)}}@keyframes cairaGreet{0%{transform:translateY(-8px) scale(.96) rotate(-3deg)}60%{transform:translateY(0) scale(1) rotate(2deg)}to{transform:translateY(0) scale(1) rotate(0deg)}}@keyframes cairaCheer{0%,to{transform:translateY(0) scaleY(1) scaleX(1)}30%{transform:translateY(-8px) scaleY(1.05) scaleX(.96)}60%{transform:translateY(0) scaleY(.95) scaleX(1.04)}}@keyframes cairaReassure{0%,to{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(2deg) translateY(1px)}}@keyframes cairaGoal{0%,to{transform:translateY(0) scale(1) rotate(0deg)}25%{transform:translateY(-12px) scale(1.06) rotate(-3deg)}55%{transform:translateY(0) scale(.96) rotate(3deg)}80%{transform:translateY(-4px) scale(1.02) rotate(0deg)}}.caira-anim-idle{animation:cairaIdle 3.4s ease-in-out infinite}.caira-anim-greet{animation:cairaGreet .7s cubic-bezier(.34,1.56,.64,1) 1 both,cairaIdle 3.4s ease-in-out .7s infinite}.caira-anim-cheer{animation:cairaCheer .5s ease-in-out infinite}.caira-anim-reassure{animation:cairaReassure 1.6s ease-in-out infinite}.caira-anim-goal{animation:cairaGoal .9s ease-in-out infinite}.caira-static.caira-quiet{animation:cairaIdle 4.6s ease-in-out infinite!important}@media (prefers-reduced-motion:reduce){.caira-static,.caira-static.caira-quiet{animation:none!important}}@keyframes breathe{0%,to{transform:translateY(0) scaleY(1) scaleX(1)}50%{transform:translateY(-1.5px) scaleY(1.025) scaleX(.99)}}@media (prefers-reduced-motion:reduce){img[data-breathe]{animation:none!important}}