.widget{position:fixed;bottom:12px;z-index:9999;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transform-origin:bottom center;will-change:transform}
.widget svg{width:100%;height:100%;display:block;transform-origin:center center}
.bubble{position:fixed;bottom:220px;z-index:9998;max-width:140px;background:linear-gradient(180deg,#242830,#1e2127);border:1px solid rgba(255,122,0,.55);border-radius:8px;padding:7px 9px;font-size:7px;line-height:1.5;color:#e8eaed;opacity:0;transform:translateY(12px) scale(.95);transition:all .4s cubic-bezier(.34,1.56,.64,1);pointer-events:none;box-shadow:0 12px 40px rgba(0,0,0,.6),0 0 0 1px rgba(255,122,0,.08),inset 0 1px 0 rgba(255,255,255,.05)}
.bubble.show{opacity:1;transform:translateY(0) scale(1)}
.bubble::before{content:'';position:absolute;bottom:-9px;width:16px;height:16px;background:#1e2127;border-right:1px solid rgba(255,122,0,.55);border-bottom:1px solid rgba(255,122,0,.55);transform:rotate(45deg)}
.closeBtn{position:absolute;top:4px;width:24px;height:24px;background:rgba(46,50,59,.95);border:1px solid #4a4f5a;border-radius:50%;color:#8b919c;font-size:14px;font-weight:600;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:3;backdrop-filter:blur(6px)}
.closeBtn:hover{background:#ff4444;color:#fff;border-color:#ff4444;transform:scale(1.1)}
#bot{right:24px;width:32px;height:47px}#botBubble{right:24px}#botBubble::before{right:52px}#botClose{right:4px}
#mas{left:420px;right:auto;width:30px;height:47px}#masBubble{left:420px;right:auto}#masBubble::before{left:52px;right:auto}#masClose{left:4px;right:auto}
#bot.ready{animation:b-sway 6s ease-in-out infinite}#bot.walking{animation:b-walk 8s ease-in-out infinite}#bot.jumping{animation:b-jump .65s cubic-bezier(.4,0,.4,1)}
#mas.ready{animation:m-sway 5.5s ease-in-out infinite}#mas.walking{animation:m-walk 9s ease-in-out infinite}#mas.jumping{animation:m-jump .65s cubic-bezier(.4,0,.4,1)}
@keyframes b-sway{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}
@keyframes b-walk{0%,100%{transform:translateX(0)}20%{transform:translateX(-40px) rotate(-2deg)}40%{transform:translateX(-15px) rotate(1.5deg)}60%{transform:translateX(-55px) rotate(-2deg)}80%{transform:translateX(-25px) rotate(1deg)}}
@keyframes b-jump{0%,100%{transform:translateY(0) scale(1)}40%{transform:translateY(-42px) scale(1.04,1.06) rotate(-3deg)}70%{transform:translateY(-8px) scale(.98,1.02) rotate(1deg)}}
@keyframes m-sway{0%,100%{transform:translateY(0) rotate(1deg)}50%{transform:translateY(-4px) rotate(-1deg)}}
@keyframes m-walk{0%,100%{transform:translateX(0)}20%{transform:translateX(35px) rotate(2deg)}40%{transform:translateX(10px) rotate(-1.5deg)}60%{transform:translateX(50px) rotate(2deg)}80%{transform:translateX(20px) rotate(-1deg)}}
@keyframes m-jump{0%,100%{transform:translateY(0) scale(1)}40%{transform:translateY(-42px) scale(1.05,1.07) rotate(3deg)}70%{transform:translateY(-8px) scale(.98,1.02) rotate(-1deg)}}
@keyframes b-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
#bEyeL,#bEyeR{transform-box:fill-box;transform-origin:center;animation:b-blink 4.5s infinite}
#bEyeR{animation-delay:.15s}
@keyframes m-blink{0%,90%,100%{transform:scaleY(1)}94%{transform:scaleY(.1)}}
#mEyeL,#mEyeR{transform-box:fill-box;transform-origin:center;animation:m-blink 4.8s infinite}
#mEyeR{animation-delay:.2s}
@keyframes m-tool{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}
#mTool{transform-box:fill-box;transform-origin:top center;animation:m-tool 3.4s ease-in-out infinite}
@keyframes m-leg{0%,100%{transform:translateY(0)}50%{transform:translateY(-1px)}}
#mLegL,#mLegR{transform-box:fill-box;transform-origin:top center;animation:m-leg 1.6s ease-in-out infinite}
#mLegR{animation-delay:.8s}
@media(max-width:520px){#bot{width:25px;height:36px;right:8px}#mas{width:23px;height:36px;left:8px}.bubble{bottom:110px;max-width:100px;font-size:6px;padding:6px 8px}}
