.config-overlay[data-v-2c6272e3]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;position:fixed;z-index:200}.config-panel[data-v-2c6272e3]{background:#fff;border-radius:16px;box-shadow:0 12px 32px #00000040;display:flex;flex-direction:column;max-width:560px;padding:24px;width:95%}.config-panel h3[data-v-2c6272e3]{font-size:1.2rem;margin:0 0 16px}.config-body[data-v-2c6272e3]{display:flex;gap:2rem;margin-bottom:1rem}.color-list[data-v-2c6272e3]{display:flex;flex:1;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto}.color-row[data-v-2c6272e3]{align-items:center;display:flex;gap:8px;justify-content:space-between}.color-row label[data-v-2c6272e3]{font-size:14px;font-weight:500;white-space:nowrap}.color-row input[type=color][data-v-2c6272e3]{border:none;border-radius:6px;cursor:pointer;height:30px;width:40px}.preview[data-v-2c6272e3]{align-items:center;background:#f9f9f9;border-radius:12px;display:flex;flex:1;justify-content:center;padding:16px}.preview-svg[data-v-2c6272e3]{filter:drop-shadow(0 4px 6px rgba(0,0,0,.1));height:auto;width:180px}.done-btn[data-v-2c6272e3]{background:#4a7c2e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px;transition:background .2s;width:100%}.done-btn[data-v-2c6272e3]:hover{background:#3b6624}.modal-enter-active[data-v-2c6272e3],.modal-leave-active[data-v-2c6272e3]{transition:opacity .3s ease}.modal-enter-from[data-v-2c6272e3],.modal-leave-to[data-v-2c6272e3]{opacity:0}.cat[data-v-45761c93]{cursor:grab;filter:drop-shadow(0 4px 6px rgba(0,0,0,.15));pointer-events:auto;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:60}.cat[data-v-45761c93]:active{cursor:grabbing}.cat-controls[data-v-45761c93]{display:flex;gap:4px;padding:4px;pointer-events:auto;position:absolute;right:0;top:0;z-index:70}.ctrl-btn[data-v-45761c93]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border:1px solid hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 2px 6px #00000026;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;line-height:1;transition:.2s;width:24px}.ctrl-btn[data-v-45761c93]:hover{background:#fff;transform:scale(1.1)}.cat-shadow[data-v-45761c93]{background:#0000001a;border-radius:50%;bottom:-10px;height:10px;left:50%;position:absolute;transition:all .3s ease;translate:-50%;width:80px}.cat-svg[data-v-45761c93]{height:100%;width:100%}.cat.sitting .cat-shadow[data-v-45761c93]{bottom:-5px;width:60px}.cat.sleeping .cat-shadow[data-v-45761c93]{width:100px}.cat.sleeping[data-v-45761c93] .body{animation:breathe-45761c93 4s ease-in-out infinite}@keyframes breathe-45761c93{0%,to{transform:scale(1)}50%{transform:scaleY(.95)}}.cat.sitting[data-v-45761c93] .tail-group{animation:slowWag-45761c93 3s ease-in-out infinite;transform-origin:155px 110px}.cat.idle[data-v-45761c93] .tail-group{animation:idleTail-45761c93 5s ease-in-out infinite;transform-origin:155px 110px}@keyframes slowWag-45761c93{0%,to{transform:rotate(0)}25%{transform:rotate(5deg)}75%{transform:rotate(-5deg)}}@keyframes idleTail-45761c93{0%,to{transform:rotate(0)}30%{transform:rotate(3deg)}70%{transform:rotate(-2deg)}}.cat.idle[data-v-45761c93] .head-group .left-ear{animation:earTwitch-45761c93 6s infinite}.cat.idle[data-v-45761c93] .head-group .right-ear{animation:earTwitch-45761c93 6s 3s infinite}@keyframes earTwitch-45761c93{0%,95%,to{transform:rotate(0)}96%{transform:rotate(-5deg)}97%{transform:rotate(3deg)}98%{transform:rotate(-2deg)}}.cat.grooming[data-v-45761c93] .head-group{animation:groom-45761c93 1.5s ease-in-out infinite}@keyframes groom-45761c93{0%,to{transform:rotate(0) translate(0)}25%{transform:rotate(5deg) translateY(-2px)}75%{transform:rotate(-3deg) translateY(-2px)}}.cat-svg.walking[data-v-45761c93]{animation:gentleBounce-45761c93 .8s ease-in-out infinite}@keyframes gentleBounce-45761c93{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}[data-v-45761c93] .eye-group{animation:eyeBlink-45761c93 7s infinite}@keyframes eyeBlink-45761c93{0%,90%,to{transform:scale(1)}95%{transform:scaleY(.1)}}[data-v-45761c93] .pupil{animation:pupilDilate-45761c93 10s infinite}@keyframes pupilDilate-45761c93{0%,to{rx:2px}50%{rx:4px}}[data-v-45761c93] .front-left-group{transform-origin:70px 106px}[data-v-45761c93] .front-right-group{transform-origin:45px 106px}[data-v-45761c93] .back-left-group{transform-origin:120px 108px}[data-v-45761c93] .back-right-group{transform-origin:145px 112px}.cat.walking[data-v-45761c93] .back-right-group,.cat.walking[data-v-45761c93] .front-left-group{animation:walkSwingA-45761c93 .8s ease-in-out infinite}.cat.walking[data-v-45761c93] .back-left-group,.cat.walking[data-v-45761c93] .front-right-group{animation:walkSwingB-45761c93 .8s ease-in-out infinite}@keyframes walkSwingA-45761c93{0%{transform:rotate(0)}25%{transform:rotate(12deg)}75%{transform:rotate(-12deg)}to{transform:rotate(0)}}@keyframes walkSwingB-45761c93{0%{transform:rotate(0)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}to{transform:rotate(0)}}.thought-bubble[data-v-45761c93]{animation:floatThought-45761c93 2s ease-in-out infinite;background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;font-size:20px;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}.thought-bubble[data-v-45761c93]:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #fff;bottom:-8px;content:"";height:0;left:20px;position:absolute;width:0}@keyframes floatThought-45761c93{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.thought-enter-active[data-v-45761c93]{animation:thoughtIn-45761c93 .3s ease-out}.thought-leave-active[data-v-45761c93]{animation:thoughtOut-45761c93 .2s ease-in}@keyframes thoughtIn-45761c93{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes thoughtOut-45761c93{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.dog[data-v-a6a680c5]{cursor:grab;filter:drop-shadow(0 4px 6px rgba(0,0,0,.15));pointer-events:auto;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:60}.dog[data-v-a6a680c5]:active{cursor:grabbing}.dog-controls[data-v-a6a680c5]{display:flex;gap:4px;padding:4px;pointer-events:auto;position:absolute;right:0;top:0;z-index:70}.ctrl-btn[data-v-a6a680c5]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border:1px solid hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 2px 6px #00000026;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;line-height:1;transition:.2s;width:24px}.ctrl-btn[data-v-a6a680c5]:hover{background:#fff;transform:scale(1.1)}.dog-shadow[data-v-a6a680c5]{background:#0000001a;border-radius:50%;bottom:-10px;height:10px;left:50%;position:absolute;transition:all .3s ease;translate:-50%;width:80px}.dog-svg[data-v-a6a680c5]{height:100%;width:100%}.dog.sitting .dog-shadow[data-v-a6a680c5]{bottom:-5px;width:60px}.dog.sleeping .dog-shadow[data-v-a6a680c5]{width:100px}.dog.sleeping[data-v-a6a680c5] .body{animation:breathe-a6a680c5 4s ease-in-out infinite}@keyframes breathe-a6a680c5{0%,to{transform:scale(1)}50%{transform:scaleY(.95)}}.dog.sitting[data-v-a6a680c5] .tail-group{animation:slowWag-a6a680c5 3s ease-in-out infinite;transform-origin:155px 110px}.dog.idle[data-v-a6a680c5] .tail-group{animation:idleTail-a6a680c5 5s ease-in-out infinite;transform-origin:155px 110px}@keyframes slowWag-a6a680c5{0%,to{transform:rotate(0)}25%{transform:rotate(5deg)}75%{transform:rotate(-5deg)}}@keyframes idleTail-a6a680c5{0%,to{transform:rotate(0)}30%{transform:rotate(3deg)}70%{transform:rotate(-2deg)}}.dog.idle[data-v-a6a680c5] .head-group .left-ear{animation:earTwitch-a6a680c5 6s infinite}.dog.idle[data-v-a6a680c5] .head-group .right-ear{animation:earTwitch-a6a680c5 6s 3s infinite}@keyframes earTwitch-a6a680c5{0%,95%,to{transform:rotate(0)}96%{transform:rotate(-5deg)}97%{transform:rotate(3deg)}98%{transform:rotate(-2deg)}}.dog.grooming[data-v-a6a680c5] .head-group{animation:groom-a6a680c5 1.5s ease-in-out infinite}@keyframes groom-a6a680c5{0%,to{transform:rotate(0) translate(0)}25%{transform:rotate(5deg) translateY(-2px)}75%{transform:rotate(-3deg) translateY(-2px)}}.dog-svg.walking[data-v-a6a680c5]{animation:gentleBounce-a6a680c5 .8s ease-in-out infinite}@keyframes gentleBounce-a6a680c5{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}[data-v-a6a680c5] .eye-group{animation:eyeBlink-a6a680c5 7s infinite}@keyframes eyeBlink-a6a680c5{0%,90%,to{transform:scale(1)}95%{transform:scaleY(.1)}}[data-v-a6a680c5] .pupil{animation:pupilDilate-a6a680c5 10s infinite}@keyframes pupilDilate-a6a680c5{0%,to{rx:2px}50%{rx:4px}}[data-v-a6a680c5] .front-left-group{transform-origin:70px 106px}[data-v-a6a680c5] .front-right-group{transform-origin:45px 106px}[data-v-a6a680c5] .back-left-group{transform-origin:120px 108px}[data-v-a6a680c5] .back-right-group{transform-origin:145px 112px}.dog.walking[data-v-a6a680c5] .back-right-group,.dog.walking[data-v-a6a680c5] .front-left-group{animation:walkSwingA-a6a680c5 .8s ease-in-out infinite}.dog.walking[data-v-a6a680c5] .back-left-group,.dog.walking[data-v-a6a680c5] .front-right-group{animation:walkSwingB-a6a680c5 .8s ease-in-out infinite}@keyframes walkSwingA-a6a680c5{0%{transform:rotate(0)}25%{transform:rotate(12deg)}75%{transform:rotate(-12deg)}to{transform:rotate(0)}}@keyframes walkSwingB-a6a680c5{0%{transform:rotate(0)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}to{transform:rotate(0)}}.thought-bubble[data-v-a6a680c5]{animation:floatThought-a6a680c5 2s ease-in-out infinite;background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;font-size:20px;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}.thought-bubble[data-v-a6a680c5]:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #fff;bottom:-8px;content:"";height:0;left:20px;position:absolute;width:0}@keyframes floatThought-a6a680c5{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.thought-enter-active[data-v-a6a680c5]{animation:thoughtIn-a6a680c5 .3s ease-out}.thought-leave-active[data-v-a6a680c5]{animation:thoughtOut-a6a680c5 .2s ease-in}@keyframes thoughtIn-a6a680c5{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes thoughtOut-a6a680c5{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.goldfish[data-v-9cf0ea9e]{cursor:grab;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));pointer-events:auto;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:60}.goldfish[data-v-9cf0ea9e]:active{cursor:grabbing}.goldfish-controls[data-v-9cf0ea9e]{display:flex;gap:4px;padding:4px;pointer-events:auto;position:absolute;right:0;top:0;z-index:70}.ctrl-btn[data-v-9cf0ea9e]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border:1px solid hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 2px 6px #00000026;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;line-height:1;transition:.2s;width:24px}.ctrl-btn[data-v-9cf0ea9e]:hover{background:#fff;transform:scale(1.1)}.goldfish-shadow[data-v-9cf0ea9e]{background:#0000001f;border-radius:50%;bottom:-8px;height:12px;left:50%;position:absolute;transition:all .3s ease;translate:-50%;width:100px}.goldfish-svg[data-v-9cf0ea9e]{height:100%;width:100%}.goldfish.resting .goldfish-shadow[data-v-9cf0ea9e]{bottom:-4px;width:80px}.goldfish.hiding .goldfish-shadow[data-v-9cf0ea9e]{opacity:.5;width:60px}.goldfish.swimming[data-v-9cf0ea9e] .swimming-skeleton{animation:bodyUndulate-9cf0ea9e 1.2s cubic-bezier(.45,.25,.55,.75) infinite}@keyframes bodyUndulate-9cf0ea9e{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-2px) rotate(1.5deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(2px) rotate(-1.5deg)}}.goldfish.swimming[data-v-9cf0ea9e] .tail-root{animation:swimTailPrimary-9cf0ea9e 1.2s cubic-bezier(.45,.25,.55,.75) infinite;transform-origin:175px 115px}@keyframes swimTailPrimary-9cf0ea9e{0%,to{transform:rotate(0) scaleY(1)}25%{transform:rotate(-12deg) scaleY(.96)}50%{transform:rotate(0) scaleY(1)}75%{transform:rotate(8deg) scaleY(1.02)}}.goldfish.swimming[data-v-9cf0ea9e] .tail-mid{animation:swimTailSecondary-9cf0ea9e 1.2s cubic-bezier(.45,.25,.55,.75) infinite;transform-origin:210px 120px}@keyframes swimTailSecondary-9cf0ea9e{0%,to{transform:rotate(0) skewY(0)}25%{transform:rotate(-6deg) skewY(-3deg)}50%{transform:rotate(0) skewY(0)}75%{transform:rotate(5deg) skewY(2deg)}}.goldfish.swimming[data-v-9cf0ea9e] .fin-front-pectoral{animation:pectoralStroke-9cf0ea9e 1.2s ease-in-out infinite;transform-origin:75px 122px}@keyframes pectoralStroke-9cf0ea9e{0%,to{transform:rotate(0) scaleX(1)}25%{transform:rotate(18deg) scaleX(.88)}50%{transform:rotate(-5deg) scaleX(1.02)}75%{transform:rotate(8deg) scaleX(.95)}}.goldfish.swimming[data-v-9cf0ea9e] .fin-far-pectoral{animation:pectoralStrokeFar-9cf0ea9e 1.2s ease-in-out infinite;transform-origin:68px 115px}@keyframes pectoralStrokeFar-9cf0ea9e{0%,to{transform:rotate(0) scaleX(1)}25%{transform:rotate(-8deg) scaleX(.95)}50%{transform:rotate(15deg) scaleX(.9)}75%{transform:rotate(-3deg) scaleX(1.02)}}.goldfish.swimming[data-v-9cf0ea9e] .dorsal-wrap{animation:dorsalUndulate-9cf0ea9e 1.2s ease-in-out infinite alternate;transform-origin:85px 75px}@keyframes dorsalUndulate-9cf0ea9e{0%{transform:rotate(0) skew(0)}to{transform:rotate(3deg) skew(4deg)}}.goldfish.swimming[data-v-9cf0ea9e] .ventral-fin{animation:ventralUndulate-9cf0ea9e 1.2s ease-in-out infinite alternate-reverse;transform-origin:115px 133px}@keyframes ventralUndulate-9cf0ea9e{0%{transform:rotate(0) skew(0)}to{transform:rotate(-3deg) skew(-4deg)}}.goldfish.idle[data-v-9cf0ea9e] .swimming-skeleton{animation:idleBodyRock-9cf0ea9e 4s ease-in-out infinite}@keyframes idleBodyRock-9cf0ea9e{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(1deg)}}.goldfish.idle[data-v-9cf0ea9e] .tail-root{animation:idleTailSway-9cf0ea9e 4s ease-in-out infinite;transform-origin:175px 115px}@keyframes idleTailSway-9cf0ea9e{0%,to{transform:rotate(0)}25%{transform:rotate(4deg)}75%{transform:rotate(-3deg)}}.goldfish.idle[data-v-9cf0ea9e] .fin-front-pectoral{animation:idleFinFlutter-9cf0ea9e 4s ease-in-out infinite}@keyframes idleFinFlutter-9cf0ea9e{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)}}.goldfish.resting[data-v-9cf0ea9e] .swimming-skeleton{animation:restingFloat-9cf0ea9e 5s ease-in-out infinite}@keyframes restingFloat-9cf0ea9e{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.goldfish.resting[data-v-9cf0ea9e] .tail-root{animation:restingTail-9cf0ea9e 5s ease-in-out infinite}@keyframes restingTail-9cf0ea9e{0%,to{transform:rotate(0)}50%{transform:rotate(2deg)}}.goldfish.resting[data-v-9cf0ea9e] .fin-front-pectoral{animation:restingFin-9cf0ea9e 5s ease-in-out infinite}@keyframes restingFin-9cf0ea9e{0%,to{transform:rotate(0)}50%{transform:rotate(3deg)}}.goldfish.eating[data-v-9cf0ea9e] .head-group{animation:nibble-9cf0ea9e .8s ease-in-out infinite}@keyframes nibble-9cf0ea9e{0%,to{transform:translate(0)}25%{transform:translate(3px)}75%{transform:translate(-2px)}}.goldfish.eating[data-v-9cf0ea9e] .fin-front-pectoral{animation:eatingFinFlutter-9cf0ea9e .8s ease-in-out infinite}@keyframes eatingFinFlutter-9cf0ea9e{0%,to{transform:rotate(0)}25%{transform:rotate(12deg)}75%{transform:rotate(-8deg)}}[data-v-9cf0ea9e] .eye-lens{animation:fishBlink-9cf0ea9e 6s infinite}@keyframes fishBlink-9cf0ea9e{0%,90%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}[data-v-9cf0ea9e] .bubble{animation:bubbleFloat-9cf0ea9e 6s linear infinite}@keyframes bubbleFloat-9cf0ea9e{0%{opacity:0;transform:translateY(80px)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(-120px)}}.thought-bubble[data-v-9cf0ea9e]{animation:floatThought-9cf0ea9e 2s ease-in-out infinite;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;border:1px solid rgba(255,200,100,.3);border-radius:20px;box-shadow:0 2px 12px #00000026;font-size:20px;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}.thought-bubble[data-v-9cf0ea9e]:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid hsla(0,0%,100%,.95);bottom:-8px;content:"";height:0;left:20px;position:absolute;width:0}@keyframes floatThought-9cf0ea9e{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.thought-enter-active[data-v-9cf0ea9e]{animation:thoughtIn-9cf0ea9e .3s ease-out}.thought-leave-active[data-v-9cf0ea9e]{animation:thoughtOut-9cf0ea9e .2s ease-in}@keyframes thoughtIn-9cf0ea9e{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes thoughtOut-9cf0ea9e{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.viy-companion[data-v-99d8e446]{cursor:grab;filter:drop-shadow(0 8px 12px rgba(0,0,0,.3));pointer-events:auto;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:60}.viy-companion[data-v-99d8e446]:active{cursor:grabbing}.viy-controls[data-v-99d8e446]{display:flex;gap:4px;padding:4px;pointer-events:auto;position:absolute;right:10px;top:10px;z-index:70}.ctrl-btn[data-v-99d8e446]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#140a0acc;border:1px solid rgba(0,255,255,.5);border-radius:50%;box-shadow:0 0 10px #0ff3;color:#0ff;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;line-height:1;transition:.2s;width:28px}.ctrl-btn[data-v-99d8e446]:hover{background:#00ffff1a;border-color:#0ff;box-shadow:0 0 15px #0ff6;transform:scale(1.1)}.viy-shadow[data-v-99d8e446]{background:#0003;border-radius:50%;bottom:15px;height:20px;left:50%;position:absolute;transition:all .3s ease;translate:-50%;width:120px}.viy-svg[data-v-99d8e446]{height:100%;width:100%}.viy-companion.sitting .viy-shadow[data-v-99d8e446]{bottom:20px;width:90px}.viy-companion.sleeping .viy-shadow[data-v-99d8e446]{width:140px}.viy-companion.sleeping[data-v-99d8e446] .viy-body{animation:earthBreathe-99d8e446 5s ease-in-out infinite}@keyframes earthBreathe-99d8e446{0%,to{transform:scale(1)}50%{transform:scale(1.02,.98)}}.viy-companion.idle[data-v-99d8e446] .viy-character{animation:idleSway-99d8e446 6s ease-in-out infinite}@keyframes idleSway-99d8e446{0%,to{transform:rotate(0)}25%{transform:rotate(1.5deg)}75%{transform:rotate(-1.5deg)}}[data-v-99d8e446] .eyelid{animation:viyEyelidBlink-99d8e446 12s ease-in-out infinite}[data-v-99d8e446] .left-eyelid{animation-delay:0s}[data-v-99d8e446] .right-eyelid{animation-delay:1s}@keyframes viyEyelidBlink-99d8e446{0%,75%,to{transform:scaleY(1)}90%{transform:scaleY(1.8)}95%{transform:scaleY(1.8)}}[data-v-99d8e446] .eye-glow{animation:eyePulse-99d8e446 3s ease-in-out infinite}@keyframes eyePulse-99d8e446{0%,to{opacity:.8;r:16}50%{opacity:1;r:18}}.viy-companion.idle[data-v-99d8e446] .left-leg,.viy-companion.idle[data-v-99d8e446] .right-leg{animation:rootTwitch-99d8e446 4s ease-in-out infinite}.viy-companion.idle[data-v-99d8e446] .right-leg{animation-delay:.4s}@keyframes rootTwitch-99d8e446{0%,45%,55%,to{transform:scaleX(1)}50%{transform:scaleX(1.03)}}.viy-companion.idle[data-v-99d8e446] .left-arm,.viy-companion.idle[data-v-99d8e446] .right-arm{animation:armTremor-99d8e446 7s ease-in-out infinite}.viy-companion.idle[data-v-99d8e446] .right-arm{animation-delay:.5s}@keyframes armTremor-99d8e446{0%,48%,52%,to{transform:rotate(0)}50%{transform:rotate(2deg)}}.viy-svg.lumbering[data-v-99d8e446]{animation:lumberWalk-99d8e446 .8s ease-in-out infinite}@keyframes lumberWalk-99d8e446{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}[data-v-99d8e446] .chalk-circle-group{animation:circleFlicker-99d8e446 4s ease-in-out infinite}@keyframes circleFlicker-99d8e446{0%,to{opacity:.7}50%{opacity:.9}}.thought-bubble[data-v-99d8e446]{animation:floatThought-99d8e446 2s ease-in-out infinite;background:#140a0ae6;border:1px solid rgba(255,51,0,.3);border-radius:20px;box-shadow:0 0 15px #f303;color:#f30;font-family:Georgia,serif;font-size:18px;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}.thought-bubble[data-v-99d8e446]:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid rgba(255,51,0,.3);bottom:-8px;content:"";height:0;left:20px;position:absolute;width:0}@keyframes floatThought-99d8e446{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.thought-enter-active[data-v-99d8e446]{animation:thoughtIn-99d8e446 .3s ease-out}.thought-leave-active[data-v-99d8e446]{animation:thoughtOut-99d8e446 .2s ease-in}@keyframes thoughtIn-99d8e446{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes thoughtOut-99d8e446{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.kolobok[data-v-97ceadf2]{cursor:grab;filter:drop-shadow(0 4px 6px rgba(0,0,0,.15));pointer-events:auto;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:60}.kolobok[data-v-97ceadf2]:active{cursor:grabbing}.kolobok-controls[data-v-97ceadf2]{display:flex;gap:4px;padding:4px;pointer-events:auto;position:absolute;right:0;top:0;z-index:70}.ctrl-btn[data-v-97ceadf2]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border:1px solid hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 2px 6px #00000026;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;line-height:1;transition:.2s;width:24px}.ctrl-btn[data-v-97ceadf2]:hover{background:#fff;transform:scale(1.1)}.kolobok-shadow[data-v-97ceadf2]{background:#0000001a;border-radius:50%;bottom:0;height:12px;left:50%;position:absolute;transition:all .3s ease;translate:-50%;width:90px}.kolobok-svg[data-v-97ceadf2]{height:100%;width:100%}.kolobok.sitting .kolobok-shadow[data-v-97ceadf2]{bottom:5px;width:70px}.kolobok.sleeping .kolobok-shadow[data-v-97ceadf2]{bottom:-5px;width:120px}.kolobok-rotate-group[data-v-97ceadf2]{transition:transform .3s ease-out}.kolobok.sleeping .kolobok-rotate-group[data-v-97ceadf2]{animation:sleepRock-97ceadf2 4s ease-in-out infinite}@keyframes sleepRock-97ceadf2{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.kolobok.sitting .kolobok-rotate-group[data-v-97ceadf2]{animation:sittingBob-97ceadf2 3s ease-in-out infinite}@keyframes sittingBob-97ceadf2{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.kolobok-svg.bouncing .kolobok-rotate-group[data-v-97ceadf2]{animation:kolobokBounce-97ceadf2 5s ease-in-out infinite}@keyframes kolobokBounce-97ceadf2{0%,to{transform:translateY(0) rotate(0)}15%{transform:translateY(-15px) rotate(-5deg)}30%{transform:translateY(0) rotate(0)}45%{transform:translateY(-10px) rotate(5deg)}60%{transform:translateY(0) rotate(0)}75%{transform:translateY(-5px) rotate(-3deg)}to{transform:translateY(0) rotate(0)}}.kolobok-svg.rolling .kolobok-rotate-group[data-v-97ceadf2]{animation:kolobokRollAndBounce-97ceadf2 .8s ease-in-out infinite}@keyframes kolobokRollAndBounce-97ceadf2{0%{transform:rotate(1turn) translateY(0)}25%{transform:rotate(270deg) translateY(-10px)}50%{transform:rotate(180deg) translateY(0)}75%{transform:rotate(90deg) translateY(-10px)}to{transform:rotate(0) translateY(0)}}[data-v-97ceadf2] .eye-group{animation:eyeBlinkRealistic-97ceadf2 8s infinite}@keyframes eyeBlinkRealistic-97ceadf2{0%,90%,to{transform:scale(1)}95%{transform:scaleY(.1)}}[data-v-97ceadf2] .pupil{animation:pupilDilate-97ceadf2 10s infinite}@keyframes pupilDilate-97ceadf2{0%,to{rx:2px}50%{rx:4px}}[data-v-97ceadf2] .iris{animation:irisShine-97ceadf2 8s infinite}@keyframes irisShine-97ceadf2{0%,to{fill:#4a3728;rx:5px;ry:8px}50%{fill:#5a4738;rx:4.5px;ry:7.5px}}.kolobok.idle[data-v-97ceadf2] .mouth{animation:smileShift-97ceadf2 6s ease-in-out infinite}@keyframes smileShift-97ceadf2{0%,to{d:path("M 90 138 Q 100 148 110 138")}25%{d:path("M 88 137 Q 100 150 112 137")}50%{d:path("M 92 138 Q 100 145 108 138")}75%{d:path("M 89 138 Q 100 148 111 138")}}.kolobok.idle[data-v-97ceadf2] ellipse[fill*=blushColor]{animation:blushPulse-97ceadf2 4s ease-in-out infinite}@keyframes blushPulse-97ceadf2{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}@keyframes armSwingLeft-97ceadf2{0%,to{transform:rotate(30deg) translateY(0)}50%{transform:rotate(15deg) translateY(-5px)}}@keyframes armSwingRight-97ceadf2{0%,to{transform:rotate(-30deg) translateY(0)}50%{transform:rotate(-15deg) translateY(-5px)}}.kolobok.walking[data-v-97ceadf2] .left-leg-group{animation:legWiggle-97ceadf2 .8s ease-in-out infinite}.kolobok.walking[data-v-97ceadf2] .right-leg-group{animation:legWiggle-97ceadf2 .8s ease-in-out .4s infinite}@keyframes legWiggle-97ceadf2{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-3px) scaleY(.8)}}.thought-bubble[data-v-97ceadf2]{animation:floatThought-97ceadf2 2s ease-in-out infinite;background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;font-size:20px;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}.thought-bubble[data-v-97ceadf2]:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #fff;bottom:-8px;content:"";height:0;left:20px;position:absolute;width:0}@keyframes floatThought-97ceadf2{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.thought-enter-active[data-v-97ceadf2]{animation:thoughtIn-97ceadf2 .3s ease-out}.thought-leave-active[data-v-97ceadf2]{animation:thoughtOut-97ceadf2 .2s ease-in}@keyframes thoughtIn-97ceadf2{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes thoughtOut-97ceadf2{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.star[data-v-cc982e76]{cursor:grab;filter:drop-shadow(0 6px 12px rgba(0,0,0,.2));pointer-events:auto;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:60}.star[data-v-cc982e76]:active{cursor:grabbing}.star-controls[data-v-cc982e76]{display:flex;gap:4px;padding:4px;pointer-events:auto;position:absolute;right:0;top:0;z-index:70}.ctrl-btn[data-v-cc982e76]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffe6;border:1px solid hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 2px 6px #00000026;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;line-height:1;transition:.2s;width:24px}.ctrl-btn[data-v-cc982e76]:hover{background:#fff;transform:scale(1.1)}.star-shadow[data-v-cc982e76]{background:#00000026;border-radius:50%;bottom:-8px;filter:blur(2px);height:12px;left:50%;position:absolute;transition:all .3s ease;translate:-50%;width:70px}.star-svg[data-v-cc982e76]{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));height:100%;width:100%}.star.sitting .star-shadow[data-v-cc982e76]{bottom:-5px;width:50px}.star.sleeping .star-shadow[data-v-cc982e76]{filter:blur(3px);width:90px}.star.floating .star-shadow[data-v-cc982e76]{opacity:.5;width:55px}.star.sleeping[data-v-cc982e76] .star-body{animation:softPulse-cc982e76 4s ease-in-out infinite}@keyframes softPulse-cc982e76{0%,to{opacity:1;transform:scale(1)}50%{opacity:.95;transform:scale(.97)}}.star.sleeping[data-v-cc982e76] .star-glow{animation:glowPulse-cc982e76 4s ease-in-out infinite}@keyframes glowPulse-cc982e76{0%,to{opacity:.3;r:70px}50%{opacity:.5;r:80px}}.star.floating[data-v-cc982e76] .star-avatar{animation:floatStar-cc982e76 3s ease-in-out infinite}@keyframes floatStar-cc982e76{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-6px) rotate(2deg)}75%{transform:translateY(4px) rotate(-2deg)}}.star.idle[data-v-cc982e76] .star-body{animation:idleGlow-cc982e76 6s ease-in-out infinite}@keyframes idleGlow-cc982e76{0%,to{filter:drop-shadow(0 0 5px rgba(255,223,0,.3))}50%{filter:drop-shadow(0 0 15px rgba(255,223,0,.6))}}.star.idle[data-v-cc982e76] .sparkles{animation:sparkleRotate-cc982e76 8s linear infinite}@keyframes sparkleRotate-cc982e76{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.star.happy[data-v-cc982e76] .star-mouth{animation:bigSmile-cc982e76 2s ease-in-out infinite}@keyframes bigSmile-cc982e76{0%,to{d:path("M 94 108 Q 100 114 106 108");stroke-width:3}50%{d:path("M 92 106 Q 100 118 108 106");stroke-width:3.5}}[data-v-cc982e76] .eye-left,[data-v-cc982e76] .eye-right{animation:eyeBlink-cc982e76 6s infinite}@keyframes eyeBlink-cc982e76{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}.star.happy[data-v-cc982e76] .eye-left,.star.happy[data-v-cc982e76] .eye-right{animation:happyEyes-cc982e76 4s infinite}@keyframes happyEyes-cc982e76{0%,to{transform:scaleY(1)}50%{transform:scaleY(.8) scaleX(1.1)}}.star.excited[data-v-cc982e76] .eye-left,.star.excited[data-v-cc982e76] .eye-right{animation:excitedEyes-cc982e76 .8s ease-in-out infinite}@keyframes excitedEyes-cc982e76{0%,to{transform:scale(1)}50%{transform:scale(1.3,.7)}}.star.happy[data-v-cc982e76] .blush{animation:blushPulse-cc982e76 3s ease-in-out infinite}@keyframes blushPulse-cc982e76{0%,to{opacity:.6;r:10px}50%{opacity:.9;r:12px}}.star-svg.floating[data-v-cc982e76]{animation:gentleFloat-cc982e76 3s ease-in-out infinite}.star-svg.pulsing[data-v-cc982e76]{animation:gentlePulse-cc982e76 2s ease-in-out infinite}@keyframes gentleFloat-cc982e76{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes gentlePulse-cc982e76{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.thought-bubble[data-v-cc982e76]{animation:floatThought-cc982e76 2s ease-in-out infinite;background:#fff;background:linear-gradient(135deg,#fff,#fff9e6);border:1px solid rgba(255,223,0,.3);border-radius:20px;box-shadow:0 4px 12px #00000026;font-size:20px;font-weight:500;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}.thought-bubble[data-v-cc982e76]:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #fff9e6;bottom:-8px;content:"";height:0;left:20px;position:absolute;width:0}@keyframes floatThought-cc982e76{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.thought-enter-active[data-v-cc982e76]{animation:thoughtIn-cc982e76 .3s ease-out}.thought-leave-active[data-v-cc982e76]{animation:thoughtOut-cc982e76 .2s ease-in}@keyframes thoughtIn-cc982e76{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes thoughtOut-cc982e76{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}
