.luna-container{position:relative;transform-origin:center bottom}.luna-svg{width:100%;height:100%}.luna-anim-idle{animation:luna-idle 3s ease-in-out infinite}@keyframes luna-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.luna-anim-float{animation:luna-float 3s ease-in-out infinite}@keyframes luna-float{0%,to{transform:translateY(0) rotate(-1deg)}25%{transform:translateY(-6px) rotate(0deg)}50%{transform:translateY(-3px) rotate(1deg)}75%{transform:translateY(-8px) rotate(0deg)}}.luna-anim-blink .luna-eyelid-left,.luna-anim-blink .luna-eyelid-right{animation:luna-blink 3s ease-in-out infinite}@keyframes luna-blink{0%,45%,55%,to{ry:0}50%{ry:5px}}.luna-anim-idle .luna-eyelid-left,.luna-anim-idle .luna-eyelid-right{animation:luna-blink 4s ease-in-out infinite}.luna-anim-wiggle{animation:luna-wiggle .5s ease-in-out infinite}@keyframes luna-wiggle{0%,to{transform:rotate(-3deg)}25%{transform:rotate(3deg)}50%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.luna-anim-wiggle .luna-tail{animation:luna-tail-wag .3s ease-in-out infinite;transform-origin:right center}@keyframes luna-tail-wag{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.luna-anim-bounce{animation:luna-bounce .6s ease-out}@keyframes luna-bounce{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-20px) scale(1.1)}50%{transform:translateY(-25px) scale(1.05)}70%{transform:translateY(-5px) scale(.95)}85%{transform:translateY(-8px) scale(1.02)}to{transform:translateY(0) scale(1)}}.luna-anim-sad{animation:luna-sad .5s ease-out forwards}@keyframes luna-sad{0%{transform:translateY(0)}to{transform:translateY(3px) rotate(-2deg)}}.luna-anim-sad .luna-ear-left{animation:luna-ear-droop-left .5s ease-out forwards}.luna-anim-sad .luna-ear-right{animation:luna-ear-droop-right .5s ease-out forwards}@keyframes luna-ear-droop-left{to{transform:rotate(-15deg);transform-origin:bottom right}}@keyframes luna-ear-droop-right{to{transform:rotate(15deg);transform-origin:bottom left}}.luna-anim-sad .luna-eyelid-left,.luna-anim-sad .luna-eyelid-right{ry:3px}.luna-anim-celebrate{animation:luna-celebrate 1s ease-out}@keyframes luna-celebrate{0%{transform:translateY(0) scale(1) rotate(0deg)}15%{transform:translateY(-15px) scale(1.1) rotate(-5deg)}30%{transform:translateY(-25px) scale(1.15) rotate(5deg)}45%{transform:translateY(-20px) scale(1.1) rotate(-3deg)}60%{transform:translateY(-10px) scale(1.05) rotate(3deg)}75%{transform:translateY(-5px) scale(1.02) rotate(-1deg)}to{transform:translateY(0) scale(1) rotate(0deg)}}.luna-anim-celebrate .luna-lantern-glow{animation:luna-lantern-pulse-fast .3s ease-in-out infinite}.luna-anim-sleep{animation:luna-sleep 4s ease-in-out infinite}@keyframes luna-sleep{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(2px) rotate(-2deg)}}.luna-anim-sleep .luna-eyelid-left,.luna-anim-sleep .luna-eyelid-right{ry:5px}.luna-anim-sleep .luna-lantern-light{opacity:.3}.luna-anim-sleep .luna-lantern-glow,.luna-anim-sleep .luna-lantern-glow-inner{opacity:.1}.luna-anim-thinking{animation:luna-thinking 2s ease-in-out infinite}@keyframes luna-thinking{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-2px) rotate(2deg)}50%{transform:translateY(0) rotate(0deg)}75%{transform:translateY(-2px) rotate(-2deg)}}.luna-anim-thinking .luna-eye-pupil{animation:luna-eyes-think 2s ease-in-out infinite}@keyframes luna-eyes-think{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}.luna-anim-thinking .luna-lantern-glow{animation:luna-lantern-pulse 1.5s ease-in-out infinite}.luna-anim-nod{animation:luna-nod .6s ease-in-out}@keyframes luna-nod{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(5px) rotate(5deg)}50%{transform:translateY(2px) rotate(2deg)}75%{transform:translateY(4px) rotate(4deg)}}.luna-anim-shake{animation:luna-shake .4s ease-in-out}@keyframes luna-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-6px)}80%{transform:translateX(6px)}}.luna-anim-alert{animation:luna-alert 1s ease-in-out infinite}@keyframes luna-alert{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.luna-anim-alert .luna-eye-base{animation:luna-eyes-wide 1s ease-in-out infinite}@keyframes luna-eyes-wide{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.luna-anim-alert .luna-lantern-glow,.luna-anim-alert .luna-lantern-glow-inner{animation:luna-lantern-flash .5s ease-in-out infinite}@keyframes luna-lantern-flash{0%,to{opacity:.5}50%{opacity:1}}.luna-anim-working{animation:luna-working 2s linear infinite}@keyframes luna-working{0%{transform:rotate(0deg)}25%{transform:rotate(2deg)}50%{transform:rotate(0deg)}75%{transform:rotate(-2deg)}to{transform:rotate(0deg)}}.luna-anim-working .luna-lantern{animation:luna-lantern-swing 1s ease-in-out infinite;transform-origin:top center}@keyframes luna-lantern-swing{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.luna-anim-appear{animation:luna-appear .5s ease-out forwards}@keyframes luna-appear{0%{opacity:0;transform:scale(.5) translateY(20px)}60%{opacity:1;transform:scale(1.1) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.luna-anim-disappear{animation:luna-disappear .4s ease-in forwards}@keyframes luna-disappear{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.5) translateY(20px)}}.luna-anim-lantern-glow .luna-lantern-glow,.luna-anim-lantern-glow .luna-lantern-glow-inner{animation:luna-lantern-pulse 2s ease-in-out infinite}@keyframes luna-lantern-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@keyframes luna-lantern-pulse-fast{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.luna-anim-speaking{animation:luna-speaking .5s ease-in-out infinite}@keyframes luna-speaking{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.luna-anim-speaking .luna-mouth{animation:luna-mouth-move .3s ease-in-out infinite}@keyframes luna-mouth-move{0%,to{d:path("M47 52 Q50 54 53 52")}50%{d:path("M47 52 Q50 56 53 52")}}@media (prefers-reduced-motion:reduce){.luna-container,.luna-container *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.luna-container:hover .luna-lantern-glow,.luna-container:hover .luna-lantern-glow-inner{opacity:.6}.luna-container:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:4px;border-radius:50%}.luna-highlight{position:relative;animation:luna-highlight-pulse 1s ease-in-out 3;box-shadow:0 0 0 4px hsl(var(--primary)/.5)!important;border-radius:4px}@keyframes luna-highlight-pulse{0%,to{box-shadow:0 0 0 4px hsl(var(--primary)/.3)}50%{box-shadow:0 0 0 8px hsl(var(--primary)/.6)}}