.pet-chat-scroll::-webkit-scrollbar{width:6px}.pet-chat-scroll::-webkit-scrollbar-thumb{border-radius:9999px;background:hsl(var(--muted-foreground) / .35)}.pet-bubble{position:relative;display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;gap:.5rem;padding:.5rem 2rem .5rem .75rem;max-width:min(44vw,320px);min-width:min(190px,calc(100vw - 120px));width:auto;border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));font-size:.75rem;line-height:1.4;box-shadow:0 2px 8px hsl(var(--foreground) / .08);animation:pet-bubble-slide-in .3s cubic-bezier(.34,1.56,.64,1);transition:all .2s ease}.pet-bubble:hover{box-shadow:0 4px 12px hsl(var(--foreground) / .12);transform:translateY(-1px)}.pet-bubble--paused{animation-play-state:paused}.pet-bubble-icon{flex-shrink:0;font-size:1rem;filter:drop-shadow(0 1px 2px hsl(var(--foreground) / .1))}.pet-bubble-text{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pet-bubble-close{position:absolute;right:.25rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;border:none;border-radius:.25rem;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;opacity:0;transition:all .15s ease}.pet-bubble:hover .pet-bubble-close{opacity:1}.pet-bubble-close:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.pet-bubble--cute{background:linear-gradient(135deg,#fff0f7,#ffe0f0);border-color:#f4bed9;color:#981b59}.pet-bubble--success{background:linear-gradient(135deg,#edfdf3,#dbfae6);border-color:#9ce2b6;color:#227741}.pet-bubble--info{background:linear-gradient(135deg,#ecf8fe,#d8f1fd);border-color:#93d0ec;color:#176082}.pet-bubble--warning{background:linear-gradient(135deg,#fffbeb,#fef4cd);border-color:#f0d775;color:#816a0e}.pet-bubble--think{background:linear-gradient(135deg,#f7f3fc,#f0e7f9);border-color:#ccb5e3;color:#593181}.pet-bubble--default{background:linear-gradient(135deg,hsl(var(--card)),hsl(var(--muted) / .3))}.pet-bubble:after{content:"";position:absolute;right:14px;bottom:-6px;width:10px;height:10px;transform:rotate(45deg);border-right:1px solid hsl(var(--border));border-bottom:1px solid hsl(var(--border));background:hsl(var(--card))}.pet-bubble--anchor{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);z-index:6;pointer-events:none}.pet-bubble-stack{display:flex;flex-direction:column;flex-wrap:nowrap;gap:6px;justify-content:flex-start;align-items:flex-end}.pet-bubble--anchor:after{right:-6px;top:50%;bottom:auto;transform:translateY(-50%) rotate(45deg);border-right:1px solid hsl(var(--border));border-bottom:1px solid hsl(var(--border))}.pet-cat{width:84px;height:72px;position:relative;isolation:isolate;border-radius:48% 48% 44% 44%;border:1px solid hsl(var(--border));background:radial-gradient(circle at 36% 24%,#c9eeff,#a8deff 30%,#7dc5ff 72%,#61b5ff);box-shadow:0 10px 22px hsl(var(--foreground) / .12);animation:pet-idle-float 2.8s ease-in-out infinite;transition:transform .18s ease,box-shadow .18s ease}.pet-cat:hover{box-shadow:0 14px 24px hsl(var(--foreground) / .16)}.pet-cat--image{background:transparent!important;border:none!important;box-shadow:none!important}.pet-cat--image:hover{box-shadow:none!important}.pet-cat--mood-happy .pet-sticker{filter:saturate(1.15) brightness(1.06) drop-shadow(0 8px 14px hsl(var(--foreground) / .24))}.pet-cat--mood-shy .pet-sticker{filter:saturate(.9) brightness(.93) drop-shadow(0 6px 10px hsl(var(--foreground) / .18))}.pet-sticker{width:84px;height:72px;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 7px 12px hsl(var(--foreground) / .22))}.pet-sticker-wrap{width:84px;height:72px;display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.pet-sticker-wrap--left{transform:scaleX(-1)}.pet-sticker-wrap--right{transform:scaleX(1)}.pet-sticker--none{transform:none}.pet-sticker--mirror{transform:scaleX(-1)}.pet-sticker--tilt-left{transform:rotate(-8deg)}.pet-sticker--tilt-right{transform:rotate(8deg)}.pet-sticker--glow{filter:drop-shadow(0 0 10px rgba(93,197,255,.55)) drop-shadow(0 6px 12px hsl(var(--foreground) / .22))}.pet-sticker--dim{filter:grayscale(.18) brightness(.9) drop-shadow(0 6px 10px hsl(var(--foreground) / .2))}.pet-sticker--bounce{animation:pet-sticker-bounce .85s ease-in-out infinite}.pet-sticker--breath{animation:pet-sticker-breath 1.2s ease-in-out infinite}.pet-sticker--blink{animation:pet-sticker-blink 1.8s steps(1,end) infinite}.pet-sticker--sleepy{animation:pet-sticker-sleepy 2.2s ease-in-out infinite}.pet-sticker--wiggle{animation:pet-sticker-wiggle .75s ease-in-out infinite}.pet-sticker--stretch{animation:pet-sticker-stretch .9s ease-in-out infinite}.pet-sticker--speak{animation:pet-sticker-speak .6s ease-in-out infinite}.pet-shadow{position:absolute;z-index:-2;width:72%;height:11px;left:14%;bottom:-10px;border-radius:999px;background:hsl(var(--foreground) / .2);filter:blur(6px);opacity:.22;animation:pet-shadow-breath 2.8s ease-in-out infinite}.pet-ear{position:absolute;top:-13px;width:24px;height:24px;background:linear-gradient(180deg,#b7e6ff,#79c5ff);border:1px solid hsl(var(--border));border-radius:5px 14px;z-index:-1}.pet-ear--left{left:9px;transform:rotate(-32deg)}.pet-ear--right{right:9px;transform:rotate(32deg) scaleX(-1)}.pet-ear:after{content:"";position:absolute;inset:5px;border-radius:4px 11px;background:#ffd4ea}.pet-tail{position:absolute;right:-20px;bottom:16px;width:23px;height:14px;border:1px solid hsl(var(--border));border-left:none;border-radius:0 9999px 9999px 0;background:linear-gradient(180deg,#9fd8ff,#5eb7ff);transform-origin:left center;animation:pet-tail-wag 1.15s ease-in-out infinite}.pet-paw{position:absolute;bottom:-3px;width:16px;height:11px;border:1px solid hsl(var(--border));border-radius:999px;background:#d9eeff}.pet-paw--left{left:20px}.pet-paw--right{right:20px}.pet-stripe{position:absolute;top:18px;width:14px;height:5px;border-radius:999px;background:#3389d9;opacity:.72}.pet-stripe--1{left:26px;transform:rotate(8deg)}.pet-stripe--2{right:26px;transform:rotate(-8deg)}.pet-face{position:absolute;left:50%;top:18px;width:50px;height:36px;transform:translate(-50%)}.pet-eye{position:absolute;top:5px;width:10px;height:11px;border-radius:999px;background:#2c2c33;display:inline-flex;justify-content:center;animation:pet-blink 4.2s ease-in-out infinite}.pet-cat--mood-shy .pet-eye{transform:scaleY(.58);animation:none}.pet-eye--left{left:10px}.pet-eye--right{right:10px}.pet-eye-dot{margin-top:2px;width:3px;height:3px;border-radius:50%;background:#fff}.pet-nose{position:absolute;left:50%;top:17px;width:9px;height:7px;background:#ff8eb2;transform:translate(-50%);border-radius:999px}.pet-mouth{position:absolute;left:50%;top:24px;width:16px;height:8px;transform:translate(-50%);border-bottom:2px solid #3f4f6b;border-radius:0 0 12px 12px}.pet-cat--mood-happy .pet-mouth{width:18px;top:23px}.pet-cat--mood-shy .pet-mouth{width:14px;top:25px;border-bottom-width:1px;border-radius:0}.pet-cheek{position:absolute;top:18px;width:10px;height:7px;border-radius:999px;background:#ffb3d4;opacity:.75;animation:pet-cheek-blush 2.2s ease-in-out infinite}.pet-cat--mood-happy .pet-cheek{opacity:.95;transform:scale(1.12)}.pet-cat--mood-shy .pet-cheek{opacity:.52}.pet-cheek--left{left:2px}.pet-cheek--right{right:2px}.pet-whisker{position:absolute;width:10px;height:1px;background:#4b5f7b;opacity:.7}.pet-whisker--left-1{left:-5px;top:19px;transform:rotate(-10deg)}.pet-whisker--left-2{left:-5px;top:23px;transform:rotate(9deg)}.pet-whisker--right-1{right:-5px;top:19px;transform:rotate(10deg)}.pet-whisker--right-2{right:-5px;top:23px;transform:rotate(-9deg)}.pet-chat-btn{position:absolute;right:-10px;top:6px;width:28px;height:28px;border-radius:9999px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));display:inline-flex;align-items:center;justify-content:center;box-shadow:0 3px 9px hsl(var(--foreground) / .12);transition:transform .16s ease,box-shadow .18s ease}.pet-chat-btn:hover{transform:scale(1.08);box-shadow:0 6px 14px hsl(var(--foreground) / .18)}.pet-feed-btn{position:absolute;right:-10px;top:-34px;width:28px;height:28px;border-radius:9999px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--destructive));display:inline-flex;align-items:center;justify-content:center;box-shadow:0 3px 9px hsl(var(--foreground) / .12);transition:transform .16s ease,box-shadow .18s ease}.pet-feed-btn:hover{transform:scale(1.08);box-shadow:0 6px 14px hsl(var(--foreground) / .18)}.pet-feed-btn--active{animation:pet-feed-pop .52s cubic-bezier(.22,1,.36,1);box-shadow:0 0 0 7px hsl(var(--destructive) / .12),0 8px 18px hsl(var(--foreground) / .2)}.pet-feed-fx{position:absolute;inset:-26px -22px auto;height:92px;pointer-events:none;overflow:visible}.pet-feed-fx__heart{position:absolute;bottom:0;font-size:.95rem;filter:drop-shadow(0 3px 4px hsl(var(--foreground) / .14));animation:pet-feed-float 1.7s ease-out forwards}.pet-settings-btn{position:absolute;right:-10px;top:46px;width:28px;height:28px;border-radius:9999px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));display:inline-flex;align-items:center;justify-content:center;box-shadow:0 3px 9px hsl(var(--foreground) / .12);transition:transform .16s ease,box-shadow .18s ease}.pet-settings-btn:hover{transform:scale(1.08);box-shadow:0 6px 14px hsl(var(--foreground) / .18)}.pet-status{position:absolute;left:50%;top:calc(100% + 6px);transform:translate(-50%);z-index:4;display:inline-flex;gap:6px;pointer-events:none;white-space:nowrap;font-size:10px;line-height:1;color:hsl(var(--muted-foreground))}.pet-status span{border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--card) / .92);padding:3px 6px}.pet-badge{position:absolute;top:-4px;right:-4px;min-width:15px;height:15px;padding:0 3px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;background:hsl(var(--destructive));color:hsl(var(--destructive-foreground));font-size:10px;line-height:1;animation:pet-badge-pop 1.2s ease-in-out infinite}.pet-cat--jump{animation:pet-jump .7s cubic-bezier(.2,.9,.2,1) 1}.pet-cat--stretch{animation:pet-stretch .9s ease-in-out 1}.pet-cat--sleep{animation:pet-sleep 1.6s ease-in-out 1}.pet-cat--roll{animation:pet-roll 1s ease-in-out 1}.pet-cat--chat{animation:pet-chat 1s ease-in-out 1}.pet-cat--walk,.pet-cat--drag{animation:pet-drag .76s cubic-bezier(.2,.9,.2,1) 1}@keyframes pet-idle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes pet-tail-wag{0%,to{transform:rotate(10deg)}50%{transform:rotate(-24deg)}}@keyframes pet-shadow-breath{0%,to{transform:scaleX(1);opacity:.22}50%{transform:scaleX(.92);opacity:.16}}@keyframes pet-blink{0%,44%,48%,to{transform:scaleY(1)}46%{transform:scaleY(.16)}}@keyframes pet-jump{0%{transform:translateY(0)}35%{transform:translateY(-22px)}to{transform:translateY(0)}}@keyframes pet-stretch{0%{transform:scaleX(1)}40%{transform:scaleX(1.14) translate(2px)}to{transform:scaleX(1)}}@keyframes pet-sleep{0%{transform:rotate(0) scale(1)}40%{transform:rotate(4deg) scale(.95)}to{transform:rotate(0) scale(1)}}@keyframes pet-roll{0%{transform:rotate(0)}40%{transform:rotate(14deg)}70%{transform:rotate(-10deg)}to{transform:rotate(0)}}@keyframes pet-bubble-slide-in{0%{opacity:0;transform:translate(20px) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes pet-bubble-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes pet-chat{0%,to{transform:translateY(0)}35%{transform:translateY(-5px) rotate(-2deg)}70%{transform:translateY(-2px) rotate(2deg)}}@keyframes pet-drag{0%{transform:translateY(0) rotate(0)}25%{transform:translateY(-6px) rotate(-6deg)}55%{transform:translateY(-2px) rotate(6deg)}to{transform:translateY(0) rotate(0)}}@keyframes pet-cheek-blush{0%,to{opacity:.7;transform:scale(1)}50%{opacity:.95;transform:scale(1.08)}}@keyframes pet-badge-pop{0%,to{transform:scale(1)}35%{transform:scale(1.13)}70%{transform:scale(.96)}}@keyframes pet-feed-pop{0%{transform:scale(1)}35%{transform:scale(1.2)}60%{transform:scale(.92)}to{transform:scale(1)}}@keyframes pet-feed-float{0%{opacity:0;transform:translate3d(0,8px,0) scale(.7)}20%{opacity:1}to{opacity:0;transform:translate3d(var(--pet-feed-drift, 0px),-48px,0) scale(1.12)}}@keyframes pet-sticker-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pet-sticker-breath{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes pet-sticker-blink{0%,85%,to{opacity:1}88%{opacity:.7}90%{opacity:1}}@keyframes pet-sticker-sleepy{0%,to{transform:translateY(0) rotate(0);filter:grayscale(.18) brightness(.9) drop-shadow(0 6px 10px hsl(var(--foreground) / .2))}50%{transform:translateY(2px) rotate(-3deg);filter:grayscale(.24) brightness(.82) drop-shadow(0 5px 8px hsl(var(--foreground) / .16))}}@keyframes pet-sticker-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}@keyframes pet-sticker-stretch{0%,to{transform:scaleX(1)}50%{transform:scaleX(1.12)}}@keyframes pet-sticker-speak{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.04)}}
