.cn-char{transform-origin:50% 92%;overflow:visible}.cn-animate.cn-neutral{animation:4.2s ease-in-out infinite cn-bob}.cn-animate.cn-happy{animation:2.8s ease-in-out infinite cn-hop}.cn-animate.cn-curious{animation:3.4s ease-in-out infinite cn-pop}.cn-animate.cn-sleepy,.cn-animate.cn-sad{animation:5.2s ease-in-out infinite cn-breathe}.cn-mp{transform-box:fill-box;transform-origin:50%}.cn-m-smile{opacity:0}.cn-z{transform-box:fill-box;transform-origin:50%}.cn-animate.cn-neutral .cn-blink{animation:4.4s ease-in-out infinite cn-blink}.cn-animate.cn-neutral .cn-m-flat{animation:7s ease-in-out infinite cn-mflat}.cn-animate.cn-neutral .cn-m-smile{animation:7s ease-in-out infinite cn-msmile}.cn-animate.cn-happy .cn-h-eyes{animation:2.8s ease-in-out infinite cn-squish}.cn-animate.cn-happy .cn-h-grin{animation:2.8s ease-in-out infinite cn-grin}.cn-animate.cn-curious .cn-c-dart{animation:5s ease-in-out infinite cn-dart}.cn-animate.cn-curious .cn-blink{animation:4.4s ease-in-out infinite cn-blink}.cn-animate.cn-curious .cn-c-o{animation:3.4s ease-in-out infinite cn-opulse}.cn-animate.cn-sad .cn-blink{animation:4.4s ease-in-out infinite cn-blink}.cn-animate.cn-sleepy .cn-s-o{animation:5.2s ease-in-out infinite cn-sbreath}.cn-animate.cn-sleepy .cn-z{animation:3s ease-in-out infinite cn-zfloat}.cn-animate.cn-sleepy .cn-z2{animation-delay:1.3s}.cn-body,.cn-frame{transform-box:fill-box;transform-origin:50% 95%}.cn-foot{transform-box:fill-box;transform-origin:50% 0}.cn-animate.cn-neutral .cn-body,.cn-animate.cn-curious .cn-body{animation:6s ease-in-out infinite cn-body-breath}.cn-animate.cn-neutral .cn-frame,.cn-animate.cn-curious .cn-frame{animation:6s ease-in-out infinite cn-frame-breath}.cn-animate.cn-neutral .cn-foot-l,.cn-animate.cn-curious .cn-foot-l{animation:9s ease-in-out infinite cn-foot-l}.cn-animate.cn-neutral .cn-foot-r,.cn-animate.cn-curious .cn-foot-r{animation:9s ease-in-out 4.5s infinite cn-foot-r}@keyframes cn-bob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-6px)rotate(-1.2deg)}}@keyframes cn-hop{0%,52%,to{transform:translateY(0)}68%{transform:translateY(-12px)}84%{transform:translateY(0)}}@keyframes cn-pop{0%,70%,to{transform:translateY(0)scale(1)}82%{transform:translateY(-3px)scale(1.05)}91%{transform:translateY(0)scale(1)}}@keyframes cn-breathe{0%,to{transform:translateY(1px)scale(1)}50%{transform:translateY(-2px)scale(1.012)}}@keyframes cn-blink{0%,90%,97%,to{transform:scaleY(1)}93.5%{transform:scaleY(.12)}}@keyframes cn-mflat{0%,60%,to{opacity:1}70%,88%{opacity:0}}@keyframes cn-msmile{0%,60%,to{opacity:0}70%,88%{opacity:1}}@keyframes cn-squish{0%,52%,to{transform:scaleY(1)}70%{transform:scaleY(.62)}84%{transform:scaleY(1)}}@keyframes cn-grin{0%,52%,to{transform:scaleY(1)}70%{transform:scaleY(1.18)}84%{transform:scaleY(1)}}@keyframes cn-dart{0%,40%,to{transform:translate(0)}55%{transform:translate(-2.4px)}80%{transform:translate(2.4px)}}@keyframes cn-opulse{0%,72%,to{transform:scale(1)}84%{transform:scale(1.28)}}@keyframes cn-sbreath{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes cn-zfloat{0%{opacity:0;transform:translate(0)}25%{opacity:.9}to{opacity:0;transform:translate(3px,-12px)}}@keyframes cn-body-breath{0%,to{transform:scale(1)}50%{transform:scale(.99,1.014)}}@keyframes cn-frame-breath{0%,to{transform:scale(1)}50%{transform:scale(.992,1.018)}}@keyframes cn-foot-l{0%,75%,to{transform:translateY(0)rotate(0)}82%{transform:translateY(-2.5px)rotate(-5deg)}90%{transform:translateY(0)rotate(0)}}@keyframes cn-foot-r{0%,75%,to{transform:translateY(0)rotate(0)}82%{transform:translateY(-2.5px)rotate(5deg)}90%{transform:translateY(0)rotate(0)}}@media (prefers-reduced-motion:reduce){.cn-char,.cn-char *{animation:none!important}.cn-m-smile{opacity:0}}.cn-loading{flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:52vh;padding:24px 0;display:flex}.cn-loading-fs{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;display:flex}.cn-loading-label{color:var(--muted);font-family:var(--font);letter-spacing:.18em;margin:0;font-size:13px}
