.plani{flex-shrink:0;overflow:visible}.plani-body{transform-origin:80px 155px}.plani-hand{transform-origin:105px 112px}.plani-crown{transform-origin:80px 45px}.plani-eye-left,.plani-eye-right{transform-box:fill-box;transform-origin:50%}.plani-animated .plani-eyes{transform-origin:80px 78px;animation:6.8s infinite plani-blink}.plani-animated.plani-wave .plani-hand{animation:1.1s ease-in-out 4 plani-wave}.plani-animated.plani-wink .plani-eye-right{animation:2s ease-in-out 2 plani-wink}.plani-animated.plani-crown .plani-crown{animation:3.8s ease-in-out plani-crown-fix}.plani-animated.plani-crown .plani-hand{animation:3.8s ease-in-out plani-reach}.plani-animated:is(.plani-walk,.plani-tiptoe) .plani-leg-left{transform-origin:67px 140px;animation:.6s 10 alternate plani-step}.plani-animated:is(.plani-walk,.plani-tiptoe) .plani-leg-right{transform-origin:95px 140px;animation:.6s 10 alternate-reverse plani-step}.plani-animated.plani-tiptoe .plani-body{animation:1s 6 plani-tiptoe}.plani-animated.plani-stumble .plani-body{animation:4.8s ease-in-out plani-stumble}.plani-animated.plani-stumble .plani-crown{animation:4.8s ease-in-out plani-crown-fix}.plani-animated.plani-peek .plani-body{animation:5s ease-in-out plani-peek}.plani-animated.plani-stretch .plani-body{animation:4.8s ease-in-out plani-stretch}.plani-animated.plani-yawn .plani-eyes{animation:5s ease-in-out plani-sleepy}.plani-animated.plani-yawn .plani-yawn-mouth{transform-origin:80px 103px;animation:5s ease-in-out both plani-yawn}.plani-animated.plani-heart .plani-float{transform-origin:80px 126px;animation:2s ease-in-out 3 plani-heart}.plani-animated.plani-bow .plani-body{animation:4.8s ease-in-out plani-bow}.plani-animated.plani-dance .plani-body{animation:1.2s ease-in-out 5 plani-dance}.plani-animated.plani-spin .plani-body{animation:3s ease-in-out 2 plani-spin}.plani-animated .plani-balloon{transform-origin:125px 111px;animation:3s ease-in-out 2 plani-balloon}.plani-animated .plani-present{transform-origin:80px 130px;animation:2s ease-in-out 3 plani-gift}.plani-animated .plani-steam{animation:2s ease-out 3 plani-steam}.plani-animated .plani-butterfly{transform-origin:125px 50px;animation:6s ease-in-out plani-butterfly}.plani-particle{opacity:0;transform-origin:80px 110px}.plani-animated .plani-particle{animation:2.5s ease-out 2 both plani-confetti}.plani-animated.plani-stars .plani-particle{animation-name:plani-stars}.plani-animated.plani-snow .plani-particle{animation-name:plani-snow}.plani-animated:is(.plani-confetti,.plani-stars) .plani-hand{animation:1.2s ease-in-out 4 plani-wave}.plani-animated.plani-book .plani-body{animation:5s ease-in-out plani-reading}.plani-animated .plani-flower{transform-origin:81px 142px;animation:3s ease-in-out 2 plani-flower}.plani-animated.plani-balance .plani-body{animation:6s ease-in-out plani-balance}.plani-animated.plani-shy .plani-body{animation:5s ease-in-out plani-shy}.plani-animated .plani-blush{animation:5s ease-in-out plani-blush}.plani-companion{max-width:640px;color:var(--text-secondary);margin:24px auto 8px}.plani-companion-toolbar{align-items:center;gap:8px;padding:0 12px;font-size:12px;display:flex}.plani-companion-toolbar strong{color:var(--text-primary);margin-right:auto}.plani-companion-toolbar button{border-radius:8px;min-height:44px;padding:8px}.plani-companion-toolbar button:hover{background:var(--brand-soft)}.plani-companion-toolbar button:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.plani-stage{background:radial-gradient(ellipse at 50% 100%, var(--brand-soft), transparent 70%);border-radius:24px;height:202px;position:relative;overflow:hidden}.plani-stage:after{content:"";background:linear-gradient(90deg, transparent, var(--border-strong), transparent);width:74%;height:1px;position:absolute;bottom:20px;left:13%}.plani-actor{z-index:1;--plani-roam:clamp(24px, 12vw, 110px);position:absolute;bottom:18px;left:calc(50% - 54px)}.plani-actor-walk{animation:7s ease-in-out plani-roam}.plani-actor-tiptoe{animation:7s ease-in-out plani-sneak}.plani-actor-peek{animation:7s ease-in-out plani-appear}.plani-speech{text-align:center;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:16px 16px 16px 4px;width:fit-content;max-width:340px;margin:0 auto;padding:10px 16px;font-size:13px;line-height:1.4;animation:.3s ease-out both plani-speech;position:absolute;top:10px;left:12px;right:12px}.plani-stage-paused *,.plani-stage-paused :before,.plani-stage-paused :after{animation-play-state:paused!important}@keyframes plani-blink{0%,91%,95%,to{transform:scaleY(1)}93%{transform:scaleY(.12)}}@keyframes plani-wave{0%,to{transform:rotate(0)}30%,70%{transform:rotate(-18deg)}50%{transform:rotate(12deg)}}@keyframes plani-wink{0%,20%,65%,to{transform:scaleY(1)}30%,50%{transform:scaleY(.1)}}@keyframes plani-crown-fix{0%,to{transform:rotate(0)}25%{transform:translate(5px,3px)rotate(19deg)}55%{transform:translateY(-7px)rotate(-8deg)}75%{transform:translateY(-2px)}}@keyframes plani-reach{0%,to{transform:rotate(0)}35%,65%{transform:translate(-11px,-9px)rotate(-42deg)}}@keyframes plani-step{0%{transform:rotate(-15deg)}to{transform:rotate(15deg)}}@keyframes plani-tiptoe{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)rotate(-3deg)}}@keyframes plani-stumble{0%,to{transform:none}25%{transform:translate(10px)rotate(6deg)}40%{transform:translate(17px,2px)rotate(19deg)}52%{transform:translateY(-9px)rotate(-10deg)}65%{transform:rotate(7deg)}80%{transform:rotate(-3deg)}}@keyframes plani-peek{0%,to{transform:none}25%,60%{transform:rotate(-14deg)translate(-8px,5px)}42%{transform:rotate(-8deg)translate(-8px,5px)}}@keyframes plani-stretch{0%,to{transform:none}35%,65%{transform:scale(.94,1.07)translateY(-2px)}}@keyframes plani-sleepy{0%,to{transform:scaleY(1)}30%,70%{transform:scaleY(.15)}}@keyframes plani-yawn{0%,to{opacity:0;transform:scale(.1)}30%,65%{opacity:1;transform:scale(1)}}@keyframes plani-heart{0%,to{transform:scale(.94)}35%{transform:scale(1.08)}55%{transform:scale(1)}70%{transform:scale(1.05)}}@keyframes plani-bow{0%,to{transform:none}35%,60%{transform:skew(-5deg)scaleY(.86)rotate(-8deg)}}@keyframes plani-dance{0%,to{transform:none}25%{transform:translateY(-5px)rotate(-7deg)}75%{transform:translateY(-5px)rotate(7deg)}}@keyframes plani-spin{0%,to{transform:none}30%{transform:translateY(-8px)scaleX(.15)rotate(-5deg)}55%{transform:translateY(-3px)scaleX(-1)}80%{transform:scaleX(.15)}}@keyframes plani-balloon{0%,to{transform:rotate(-5deg)}50%{transform:rotate(7deg)translateY(-4px)}}@keyframes plani-gift{0%,to{transform:none}20%,60%{transform:rotate(-4deg)translateY(-3px)}40%{transform:rotate(4deg)translateY(-3px)}}@keyframes plani-steam{0%{opacity:0;transform:translateY(3px)}25%{opacity:.65}to{opacity:0;transform:translateY(-8px)}}@keyframes plani-butterfly{0%,to{opacity:0;transform:translate(30px,-20px)scale(.5)}20%{opacity:1;transform:translateY(3px)rotate(-20deg)}45%{transform:translate(-70px,-25px)rotate(15deg)}65%{transform:translate(-68px,-24px)scaleX(.5)}80%{opacity:1;transform:translate(-20px,-40px)}}@keyframes plani-confetti{0%{opacity:0;transform:translate(0)scale(.4)}12%{opacity:1}45%{transform:translate(var(--particle-x),var(--particle-y)) rotate(100deg);opacity:1}to{transform:translate(var(--particle-x),40px) rotate(220deg);opacity:0}}@keyframes plani-stars{0%,to{opacity:0;transform:translate(var(--particle-x),var(--particle-y)) scale(.1)}45%{opacity:1;transform:translate(var(--particle-x),var(--particle-y)) scale(1)}}@keyframes plani-snow{0%{opacity:0;transform:translate(var(--particle-x),-70px)}20%{opacity:1}to{opacity:0;transform:translate(calc(var(--particle-x) + 9px),30px)}}@keyframes plani-reading{0%,to{transform:none}30%{transform:rotate(-3deg)}65%{transform:rotate(3deg)}}@keyframes plani-flower{0%,to{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}@keyframes plani-balance{0%,to{transform:none}20%{transform:rotate(-12deg)translateY(-3px)}45%{transform:rotate(10deg)translateY(-3px)}65%{transform:rotate(-7deg)}85%{transform:rotate(3deg)}}@keyframes plani-shy{0%,to{transform:none}35%,65%{transform:rotate(-5deg)scale(.96)}}@keyframes plani-blush{0%,to{opacity:0}30%,70%{opacity:.8}}@keyframes plani-roam{0%,to{transform:none}30%{transform:translateX(var(--plani-roam))}70%{transform:translateX(calc(-1 * var(--plani-roam)))}}@keyframes plani-sneak{0%,to{transform:none}40%,60%{transform:translateX(calc(-1 * var(--plani-roam)))}}@keyframes plani-appear{0%,to{transform:none}20%,28%{transform:translateX(var(--plani-edge))}42%,65%{transform:translateX(calc(var(--plani-edge) - 65px)) rotate(-16deg)}78%{transform:translateX(calc(var(--plani-edge) - 90px))}}@keyframes plani-speech{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.plani *,.plani-actor,.plani-speech{animation:none!important}}
