/* Frames swap as authored pixels; only character gestures move, never the input. */
[data-reactive-pet]{position:relative;transform-origin:50% 90%}
.pet-expression-ready:not([data-pose=sleep]):not([data-pose=eat]):not([data-pose=happy]){background-image:var(--pet-emote-texture)!important;background-size:400% 400%!important;background-position:var(--pet-emote-position,66.6667% 66.6667%)!important}
body .pet-expression-ready[data-emote]:not([data-emote=rest]):not([data-pose=sleep]){animation:none!important}
body [data-reactive-pet].pet-offscreen,body [data-reactive-pet].pet-page-hidden{animation-play-state:paused!important}
.mascot-tile [data-reactive-pet][data-pose=idle]{animation:pet-rest-breathe 5.6s cubic-bezier(.77,0,.175,1) infinite}
.mascot-bubbles [data-reactive-pet][data-pose=idle]{animation:pet-float 5.4s cubic-bezier(.77,0,.175,1) infinite}
@keyframes pet-rest-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.005,1.014)}}
.mascot-room .donkey-emote{display:none}
.mascot-portrait[data-emote-glyph]::after{content:attr(data-emote-glyph);position:absolute;right:4%;top:12%;display:grid;place-items:center;min-width:31px;height:31px;padding:3px;background:#ffffffc9;border:1px solid #fff;border-radius:50% 50% 50% 3px;box-shadow:0 3px 12px #28394a18;font:19px/1 sans-serif;pointer-events:none}
.mascot-room .mascot-portrait[data-emote-glyph]::after{right:0;top:8%;height:39px;min-width:39px;font-size:24px}
.mascot-portrait.is-sleeping::after{display:none}
body .phone-shell .chat-title-pill>.pet-title-icon.pet-donkey{background-color:transparent;background-image:linear-gradient(165deg,#9db9dc,#d1dce5 45%,#f3d6b7)!important;overflow:hidden}
body .phone-shell .chat-title-pill>.pet-title-icon{position:relative;display:block;overflow:hidden;background-image:none}
.pet-title-icon>.donkey-care-sprite{width:100%;height:100%}
body .phone-shell .chat-widget-thumb[data-widget-icon=donkey]{background:linear-gradient(165deg,#9db9dc,#d1dce5 45%,#f3d6b7)}
.chat-widget-thumb>.donkey-care-sprite{width:100%;height:100%}
.mascot-room>[data-toggle-emotes]{position:absolute;z-index:2;right:0;top:0;display:flex;align-items:center;gap:5px;min-height:38px;padding:7px 12px;border-radius:99px;border:1px solid #ffffffa0;background:#ffffff72;box-shadow:inset 0 1px #fff9,0 3px 10px #2434440c;font:12px Selecta,sans-serif;color:#233744;cursor:pointer}
[data-toggle-emotes] svg{width:19px;height:19px}
.mascot-host[data-sleeping=true] [data-toggle-emotes]{background:#f8fcffca}
.mascot-scroll.emotes-open>.mascot-meters,.mascot-scroll.emotes-open>.mascot-actions,.mascot-scroll.emotes-open>.mascot-primary,.mascot-scroll.emotes-open>.mascot-latest{display:none}
.pet-emote-panel[hidden]{display:none!important}
.pet-emote-panel{position:relative;margin:10px 0 0}
.pet-emote-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 5px}
.pet-emote-grid>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;padding:4px 0 7px;border:1px solid #ffffffa6;border-radius:17px;background:#ffffff58;color:#25333d;font:10px/1.2 Selecta,sans-serif;cursor:pointer;box-shadow:inset 0 1px #fff8;transition:background-color 150ms linear}
.pet-emote-grid>button[aria-pressed=true]{background:#ffffffe8;border-color:#647c9080;box-shadow:inset 0 0 0 1px #6c849629,0 3px 9px #233c4a10}
.pet-emote-preview{display:grid;place-items:center;width:48px;height:48px;background-image:var(--pet-emote-texture);background-size:400% 400%;background-repeat:no-repeat;image-rendering:pixelated;font-size:24px}
.pet-test-message{display:flex;align-items:center;gap:8px;padding:6px 7px 6px 14px;margin-top:18px;border:1px solid #ffffffbb;background:#ffffffb5;box-shadow:inset 0 1px #fff,0 3px 10px #2543540a;border-radius:28px}
.pet-test-message input{width:0;min-width:0;flex:1;border:0;background:none;padding:7px 0!important;margin:0!important;outline:none;font:16px/1.3 Selecta,sans-serif;color:#26323b;box-shadow:none;border-radius:0}
.pet-test-message:focus-within{outline:2px solid #4b6c8666;outline-offset:2px}
.pet-test-message button,.pet-chat-send{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;min-height:36px;border:0;border-radius:50%;background:#17212a;color:#fff;font:24px/1 Selecta,sans-serif;cursor:pointer;touch-action:manipulation}
.pet-test-message button:disabled,.pet-chat-send:disabled{opacity:.3;cursor:default}
.widget-app .app-body .pet-emote-status{margin:10px 0 0;min-height:22px;text-align:center;font:12px/1.5 Selecta,sans-serif;color:inherit}
.pet-emote-grid button:focus-visible,[data-toggle-emotes]:focus-visible,.pet-test-message button:focus-visible,.pet-chat-send:focus-visible{outline:2px solid #3d657f;outline-offset:2px}
body .phone-shell .wabi-compose>[hidden]{display:none!important}
body .phone-shell .wabi-compose>.pet-chat-input{position:relative;z-index:2;flex:1;min-width:0;width:0;align-self:stretch;border:0;background:none;border-radius:0;outline:none;font:16px/1.3 Selecta,sans-serif;letter-spacing:0;padding:0;color:#20252a}
body .phone-shell .wabi-compose>.pet-chat-input::placeholder{color:#96999f}
body .phone-shell .wabi-compose>.pet-chat-send{position:relative;z-index:2;flex:0 0 36px;min-width:36px}
body .phone-shell .wabi-compose.pet-chat-compose:focus-within{outline:2px solid #61768a55;outline-offset:2px}
body .phone-shell .wabi-content>.pet-live-message{position:relative;z-index:1}
.night-crumb .pet-room{position:relative}
.night-crumb [data-toggle-emotes]{display:flex;align-items:center;gap:6px;margin:8px auto;min-height:44px;border-radius:24px;border:1px solid #fff;background:#ffffff9c;padding:9px 15px;font:13px Selecta,sans-serif;cursor:pointer}
.night-crumb.emotes-open>.pet-meters,.night-crumb.emotes-open>.pet-carers,.night-crumb.emotes-open>.pet-actions,.night-crumb.emotes-open>.pet-diary{display:none}
.crumb-art[data-reactive-pet]{animation:pet-rest-breathe 5.6s cubic-bezier(.77,0,.175,1) infinite;transform-origin:50% 88%}
@media(hover:hover) and (pointer:fine){.pet-emote-grid>button:hover{background:#ffffffad}}
@media(prefers-reduced-motion:reduce){body [data-reactive-pet]{animation:none!important}.pet-emote-grid>button{transition:none}}
@media(prefers-reduced-transparency:reduce){.pet-test-message,.pet-emote-grid>button,[data-toggle-emotes]{background:#f5f8fa!important}}
@media(forced-colors:active){.pet-emote-grid>button,.pet-test-message,[data-toggle-emotes]{background:Canvas;border:1px solid ButtonText;color:CanvasText}.pet-emote-grid>button[aria-pressed=true]{outline:2px solid Highlight}.pet-chat-send,.pet-test-message button{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}}

body .phone-shell .chat-title-pill>.pet-title-icon.pet-mochi{background-color:#ecdaec}
body .phone-shell .chat-title-pill>.pet-title-icon.pet-bubbles{background-color:#a8dedf}
body .phone-shell .chat-title-pill>.pet-title-icon.pet-pebble{background-color:#d7e8f2}
.pet-emote-preview>svg{width:100%;height:100%}

.mascot-scroll.emotes-open .mascot-room>p{visibility:hidden}
.pet-emote-grid>button:active,[data-toggle-emotes]:active{transform:scale(.97)}
@media(prefers-reduced-motion:reduce){.pet-emote-grid>button:active,[data-toggle-emotes]:active{transform:none}}

.mascot-host[data-sleeping=true] [data-toggle-emotes]{color:#f8fbff}
.mascot-host[data-sleeping=true] .mascot-meters span{opacity:.9}
