#bedroomPet{position:absolute;z-index:7;width:160px;height:104px;touch-action:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;isolation:isolate}#bedroomPet[hidden],.phone-preview:has(.chat-editor) #bedroomPet{display:none!important}
.pet-stage{position:relative;width:160px;height:104px;transform:scale(var(--pet-scale,1));transform-origin:top left}.pet-face{position:absolute;bottom:0;width:92px;height:92px;padding:0;border:0;background:none!important;box-shadow:none!important;border-radius:0;cursor:pointer;touch-action:none;animation:petBreathe 4.6s ease-in-out infinite;transform-origin:50% 85%}.pet-cat{left:0;z-index:2}.pet-panther{left:68px;z-index:1;animation-delay:-2s}.pet-motion{position:absolute;inset:0;display:block}.pet-face img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;opacity:0;transition:opacity .16s;filter:none}.pet-face img[data-face=closed]{opacity:1}
#bedroomPet[data-mode=waiting] .pet-panther img,#bedroomPet[data-mode=responding] .pet-panther img,#bedroomPet[data-mode=tool] .pet-panther img{opacity:0}#bedroomPet:is([data-mode=waiting],[data-mode=responding],[data-mode=tool]) .pet-panther img[data-face=smile]{opacity:1}
#bedroomPet:is([data-mode=awake],[data-mode=push]) .pet-cat img{opacity:0}#bedroomPet:is([data-mode=awake],[data-mode=push]) .pet-cat img[data-face=open]{opacity:1}
#bedroomPet[data-mode=blush] .pet-panther img{opacity:0}#bedroomPet[data-mode=blush] .pet-panther img[data-face=blush]{opacity:1}
#bedroomPet[data-mode=nuzzle] .pet-cat .pet-motion{animation:petNuzzle 1.8s ease-in-out}#bedroomPet[data-mode=push] .pet-cat .pet-motion{animation:petPush 1.4s ease-in-out}
.pet-symbol{position:absolute;pointer-events:none;object-fit:contain;opacity:0}.pet-heart{width:28px;height:28px;left:70px;top:6px}.pet-zzz{width:52px;height:52px;right:4px;top:-6px}#bedroomPet[data-mode=nuzzle] .pet-heart{animation:petHeart 1.8s ease-out}#bedroomPet[data-mode=sleep] .pet-zzz{opacity:.8;animation:petSleep 5s ease-in-out infinite}#bedroomPet[data-mode=sleep] .pet-face{animation-duration:7s}
.pet-restore{display:none}#bedroomPet[data-collapsed=true]{width:32px;height:32px}#bedroomPet[data-collapsed=true] .pet-stage{display:none}#bedroomPet[data-collapsed=true] .pet-restore{position:relative;display:grid;place-items:center;width:32px;height:32px;min-width:32px;padding:0;box-sizing:border-box;line-height:1;border-radius:50%;background:rgba(var(--theme),.6)}.pet-restore svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:20px;height:20px;pointer-events:none}.pet-paused *{animation-play-state:paused!important}#bedroomPet[data-dragging=true] .pet-face{animation-play-state:paused;cursor:grabbing}
@keyframes petBreathe{0%,100%{transform:translateY(0) scaleY(1)}50%{transform:translateY(-1.5px) scaleY(1.018)}}@keyframes petNuzzle{0%,100%{transform:translateX(0) rotate(0)}40%,65%{transform:translateX(5px) rotate(3deg)}}@keyframes petPush{0%,100%{transform:translateX(0)}45%,65%{transform:translateX(7px)}}@keyframes petHeart{0%{opacity:0;transform:translateY(5px) scale(.6)}30%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-16px) scale(1.1)}}@keyframes petSleep{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(-4px);opacity:.85}}
@media(prefers-reduced-motion:reduce){#bedroomPet *{animation:none!important;transition:none!important}#bedroomPet[data-mode=nuzzle] .pet-heart{opacity:.85}#bedroomPet[data-mode=push] .pet-cat .pet-motion{transform:translateX(3px)}}

/* Keep the base head behind the blush crossfade, so its silhouette stays solid. */
.pet-panther img[data-face=blush]{filter:saturate(1.85);transition:opacity .45s ease-in-out}
#bedroomPet[data-mode=blush] .pet-panther img[data-face=closed]{opacity:1}

/* Keep roughly the previous tap area when the art is reduced from 70% to 60%. */
.pet-face::before{content:'';position:absolute;inset:-7.7px}
