:root{--pet-size-desktop:130px;--pet-size-mobile:85px;--pet-theme-blue:#00f0ff;--pet-theme-purple:#7000ff;--pet-bg-glass:rgba(15,12,41,.94)}
.emoveo-pet-container{position:fixed;right:calc(20px + env(safe-area-inset-right));bottom:calc(92px + env(safe-area-inset-bottom));z-index:9999;display:flex;flex-direction:column;align-items:flex-end;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;pointer-events:none;--eye-x:0px;--eye-y:0px}.emoveo-pet-container.is-drag-positioned{right:auto;bottom:auto}.emoveo-pet-wrapper,.emoveo-pet-chat,.emoveo-pet-minimize{pointer-events:auto}.emoveo-pet-wrapper{position:relative;width:var(--pet-size-desktop);aspect-ratio:1;cursor:grab;user-select:none;touch-action:none;outline:none}.emoveo-pet-wrapper:active{cursor:grabbing}.emoveo-pet-wrapper:focus-visible{border-radius:30%;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--pet-theme-blue)}
.emoveo-pet-motion{position:relative;width:100%;height:100%;animation:petFloat 4.2s ease-in-out infinite;transform-origin:center bottom;will-change:transform}.emoveo-pet-avatar{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;filter:drop-shadow(0 8px 16px rgba(112,0,255,.48));animation:petBreathe 5.8s ease-in-out infinite;transform-origin:center bottom;transition:filter .25s ease}.emoveo-pet-wrapper:hover .emoveo-pet-avatar,.emoveo-pet-wrapper:focus-visible .emoveo-pet-avatar,.emoveo-pet-container.is-thinking .emoveo-pet-avatar{filter:drop-shadow(0 10px 24px rgba(0,240,255,.78)) brightness(1.08)}.emoveo-pet-wrapper.jump-once .emoveo-pet-motion{animation:petJumpOnce .68s cubic-bezier(.2,.85,.32,1.25) 1}.emoveo-pet-wrapper.random-gesture .emoveo-pet-motion{animation:petGesture .9s ease-in-out 1}
.emoveo-pet-eyes{position:absolute;inset:0;pointer-events:none;transform:translate(var(--eye-x),var(--eye-y));transition:transform 100ms ease-out}.emoveo-pet-eye{position:absolute;top:42.3%;width:12.5%;height:6.5%;border-top:3px solid rgba(83,250,255,.92);border-radius:50%;filter:drop-shadow(0 0 5px #00f0ff);transform-origin:center;animation:petBlink 7s infinite}.emoveo-pet-eye:first-child{left:39.5%;transform:rotate(7deg)}.emoveo-pet-eye:last-child{left:61%;transform:rotate(-7deg);animation-delay:.04s}.emoveo-pet-wrapper.blink-now .emoveo-pet-eye{animation:petBlinkNow .25s ease-in-out 1}
.emoveo-pet-chat{width:min(290px,calc(100vw - 28px));max-height:min(440px,calc(100vh - 180px));overflow:auto;margin-bottom:10px;padding:14px;color:#fff;background:var(--pet-bg-glass);border:1px solid rgba(0,240,255,.34);border-radius:18px;box-shadow:0 14px 38px rgba(0,0,0,.52),0 0 18px rgba(112,0,255,.22);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:10px;opacity:1;transform:translateY(0) scale(1);transform-origin:right bottom;transition:opacity .22s ease,transform .22s ease,visibility .22s}.emoveo-pet-chat.hidden{visibility:hidden;opacity:0;transform:translateY(12px) scale(.94);pointer-events:none}.emoveo-pet-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.emoveo-pet-title{font-size:15px;font-weight:800;background:linear-gradient(135deg,#51f7ff,#9c63ff);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.emoveo-pet-close{width:30px;height:30px;border:0;border-radius:9px;background:rgba(255,255,255,.08);color:#d9e1ef;cursor:pointer;font-size:20px;line-height:1}.emoveo-pet-close:hover{background:rgba(255,255,255,.16)}.emoveo-pet-status{min-height:38px;font-size:13px;line-height:1.45;color:#e5ebf5}.emoveo-pet-actions{display:grid;gap:7px}.emoveo-pet-btn{width:100%;padding:9px 12px;border:1px solid rgba(0,240,255,.3);border-radius:10px;background:linear-gradient(135deg,rgba(112,0,255,.4),rgba(0,240,255,.16));color:#fff;font-size:12px;text-align:left;cursor:pointer;transition:transform .14s ease,background .2s ease}.emoveo-pet-btn:hover,.emoveo-pet-btn:focus-visible{transform:translateX(3px);background:linear-gradient(135deg,rgba(112,0,255,.68),rgba(0,240,255,.32));outline:none}.emoveo-pet-minimize{position:absolute;right:-2px;bottom:4px;width:28px;height:28px;border:1px solid rgba(0,240,255,.45);border-radius:50%;background:#10172d;color:#bdfcff;cursor:pointer;display:none}.emoveo-pet-container.pet-hidden .emoveo-pet-wrapper,.emoveo-pet-container.pet-hidden .emoveo-pet-chat{display:none}.emoveo-pet-container.pet-hidden .emoveo-pet-minimize{display:block;position:static}.dots-loader span{color:var(--pet-theme-blue);font-weight:900;animation:petDot 1.25s infinite both}.dots-loader span:nth-child(2){animation-delay:.18s}.dots-loader span:nth-child(3){animation-delay:.36s}
@keyframes petFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes petBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}@keyframes petJumpOnce{0%{transform:translateY(0) rotate(0)}38%{transform:translateY(-19px) rotate(-5deg) scale(1.05,.96)}68%{transform:translateY(-5px) rotate(3deg)}100%{transform:translateY(0) rotate(0)}}@keyframes petGesture{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-5px) rotate(-5deg)}70%{transform:translateY(-2px) rotate(4deg)}}@keyframes petBlink{0%,45%,49%,100%{scale:1 1}47%{scale:1 .08}}@keyframes petBlinkNow{0%,100%{scale:1 1}50%{scale:1 .06}}@keyframes petDot{0%,80%,100%{opacity:.2}35%{opacity:1}}
@media(max-width:768px){.emoveo-pet-container{right:calc(12px + env(safe-area-inset-right));bottom:calc(82px + env(safe-area-inset-bottom))}.emoveo-pet-wrapper{width:var(--pet-size-mobile)}.emoveo-pet-chat{width:min(270px,calc(100vw - 24px));max-height:calc(100vh - 150px)}.emoveo-pet-eye{border-top-width:2px}}
@media(prefers-reduced-motion:reduce){.emoveo-pet-motion,.emoveo-pet-avatar,.emoveo-pet-eye,.dots-loader span{animation:none!important}.emoveo-pet-chat,.emoveo-pet-eyes,.emoveo-pet-btn{transition:none!important}}
.emoveo-pet-chat{position:absolute;right:0;bottom:calc(100% + 10px);margin-bottom:0}.emoveo-pet-chat.chat-align-left{right:auto;left:0;transform-origin:left bottom}.emoveo-pet-chat.chat-below{top:calc(100% + 10px);bottom:auto;transform-origin:right top}.emoveo-pet-chat.chat-align-left.chat-below{transform-origin:left top}
