.actor.sprite-actor.reacting{z-index:12!important;transition:left .9s ease-out!important}
.sprite-actor.reacting .activity-tag{opacity:0!important}
.sprite-actor.reacting.shout .sprite-art{opacity:0}
.shout-art{display:none;position:absolute;inset:0;background-image:url('shout-sprites.png');background-repeat:no-repeat;background-size:300% 300%;background-position-x:var(--shout-x,0%);background-position-y:var(--shout-y,0%);filter:drop-shadow(1px 3px 2px #1f1717aa)}
.sprite-actor.reacting.shout .shout-art{display:block;animation:comic-shout .48s ease-in-out infinite alternate}
.sprite-actor.reacting.shout:before{content:'💢';position:absolute;top:-8px;right:-8px;font-size:26px;z-index:15;animation:comic-pulse .3s infinite alternate}
.sprite-actor.reacting.wave .sprite-art,.sprite-actor.reacting.laugh .sprite-art{animation:comic-bounce .42s ease-in-out infinite alternate}
.sprite-actor .speech-pop.complaint{background:#fff4da;color:#5e211a;border:3px solid #aa4e31;box-shadow:3px 4px 0 #6e332b52;font-size:12px;max-width:210px;min-width:135px}
.sprite-actor .speech-pop.complaint:after{border-top-color:#aa4e31}
.testing-banner{font:800 10px 'DM Sans',sans-serif;letter-spacing:.5px;color:#231b0d;background:#edba69;border-radius:5px;padding:3px 6px;margin-left:8px}
@keyframes comic-shout{from{transform:translateY(0) rotate(-1deg) scale(1.01)}to{transform:translateY(-2px) rotate(1deg) scale(1.055)}}
@keyframes comic-pulse{to{transform:scale(1.2) rotate(10deg)}}
@keyframes comic-bounce{to{transform:scaleX(var(--face,1)) translateY(-7px)}}
@media(max-width:850px){.sprite-actor .speech-pop.complaint{max-width:145px;font-size:11px;min-width:95px}.testing-banner{font-size:9px;margin-left:0}}
