/* Expression swaps and decorative motion only. Recorded price geometry never moves. */
.boss-pointer-face{transform-origin:600px 128px;transform:translate(var(--boss-gaze-x,0px),var(--boss-gaze-y,0px)) rotate(var(--boss-gaze-turn,0deg));transition:transform .18s ease-out;pointer-events:none}
.boss-pointer-eyes{transform:translate(var(--boss-eye-x,0px),var(--boss-eye-y,0px));transition:transform .12s ease-out;pointer-events:none}
.chart-boss-art[data-gaze="follow"] .boss-pupils{animation:none!important;transform:none!important}
:is(.boss-arena,.defeat-vignette) .boss-face{transform-origin:600px 128px;animation:boss-face-breathe 6.6s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette) .boss-eyes{animation:none}
:is(.boss-arena,.defeat-vignette) .boss-eye-open{transform-origin:600px 100px;animation:boss-slow-blink 8.7s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette) .boss-pupils{animation:boss-evil-glance 10s ease-in-out infinite}
.boss-lids,.boss-mouth-laugh,.boss-taunting-brows,.boss-chuckle-marks,.boss-glove-point{display:none}
:is(.boss-arena,.defeat-vignette) .boss-mouth-grin{transform-origin:600px 177px}
:is(.boss-arena,.defeat-vignette) .boss-smoke{animation:boss-wicked-smoke 9s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette) .boss-glove-point{transform-origin:1140px 317px}
:is(.boss-arena,.defeat-vignette)[data-taunt="smirk"] .boss-lids,
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-lids,
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-lids{display:inline}
:is(.boss-arena,.defeat-vignette)[data-taunt="smirk"] .boss-brows,
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-brows,
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-brows{display:none}
:is(.boss-arena,.defeat-vignette)[data-taunt="smirk"] .boss-taunting-brows,
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-taunting-brows,
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-taunting-brows{display:inline}
:is(.boss-arena,.defeat-vignette)[data-taunt="smirk"] .boss-mouth-grin{transform:rotate(-7deg) translateY(-2px)}
:is(.boss-arena,.defeat-vignette)[data-taunt="smirk"] .boss-pupils{animation:none;transform:translateX(6px)}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-mouth-grin,
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-mouth-grin{display:none}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-mouth-laugh,
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-chuckle-marks,
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-mouth-laugh,
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-chuckle-marks{display:inline}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-face{animation:boss-villain-chuckle 1.2s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-eye-open{animation:none;transform:scaleY(.8)}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-glove-left{animation:boss-laugh-hand 1.2s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-glove-right{animation:boss-laugh-hand 1.2s ease-in-out infinite;animation-delay:-.6s}
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-glove-rest-right{display:none}
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-glove-point{display:inline;opacity:1;animation:boss-accusing-finger 1.8s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-pupils{animation:none;transform:translate(5px,4px)}
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-mouth-grin{transform:rotate(4deg)}
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-face{animation:boss-victory-gloat 2.4s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-glove-left{animation:boss-laugh-hand 2.4s ease-in-out infinite}
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-glove-right{animation:boss-laugh-hand 2.4s ease-in-out infinite;animation-delay:-1.2s}

.boss-taunt{position:absolute;z-index:3;top:16%;left:65%;width:max-content;max-width:min(240px,27vw);padding:10px 15px;border:2px solid #182b2c;border-radius:15px 15px 15px 3px;background:#fff0d2;color:#382128;font:italic 700 clamp(12px,1.1vw,17px)/1.35 Georgia,serif;box-shadow:3px 4px 0 #182b2c66;pointer-events:none;transform:rotate(-3deg);text-wrap:balance}
.boss-taunt::before{content:"";position:absolute;left:-8px;bottom:4px;width:14px;height:14px;background:#fff0d2;border-left:2px solid #182b2c;border-bottom:2px solid #182b2c;transform:skewY(-30deg);z-index:-1}
.boss-taunt:empty{display:none}
:is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] .boss-taunt{transform:rotate(3deg)}
:is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-taunt{transform:rotate(-1deg)}
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-taunt{background:#e7baa3;color:#411c22}
:is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] .boss-taunt::before{background:#e7baa3}

@keyframes boss-face-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes boss-slow-blink{0%,39%,43%,100%{transform:scaleY(1)}40.5%,41.5%{transform:scaleY(.07)}}
@keyframes boss-evil-glance{0%,24%,64%,100%{transform:translate(0,0)}30%,42%{transform:translate(5px,2px)}72%,82%{transform:translate(-4px,1px)}}
@keyframes boss-villain-chuckle{0%,100%{transform:translateY(0) rotate(-1deg)}33%{transform:translateY(-5px) rotate(1deg)}66%{transform:translateY(-1px) rotate(-1deg)}}
@keyframes boss-laugh-hand{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(4deg)}}
@keyframes boss-accusing-finger{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-9px,4px) rotate(-3deg)}}
@keyframes boss-victory-gloat{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-7px) rotate(3deg)}}
@keyframes boss-wicked-smoke{0%,100%{opacity:.1}50%{opacity:.22}}

@media(max-width:600px){.boss-taunt{font-size:11px;max-width:33vw;padding:7px 9px;top:12%;left:63%;border-radius:11px 11px 11px 2px}:is(.boss-arena,.defeat-vignette) .boss-glove-point{opacity:.8}}

/* Fast mode shortens action feedback, not the creature's ambient loops. */
body[data-speed="fast"] .chart-boss-art .boss-eyes{animation-duration:5.8s!important}
body[data-speed="fast"] .chart-boss-art .boss-pupils{animation-duration:8s!important}
body[data-speed="fast"] .chart-boss-art :is(.boss-glove-left,.boss-glove-right){animation-duration:4.2s!important}
body[data-speed="fast"] .chart-boss-art .boss-smoke{animation-duration:7s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette) .boss-face{animation-duration:6.6s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette) .boss-eye-open{animation-duration:8.7s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette) .boss-pupils{animation-duration:10s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette) .boss-smoke{animation-duration:9s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette)[data-taunt="laugh"] :is(.boss-face,.boss-glove-left,.boss-glove-right){animation-duration:1.2s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette)[data-taunt="point"] .boss-glove-point{animation-duration:1.8s!important}
body[data-speed="fast"] :is(.boss-arena,.defeat-vignette)[data-taunt="gloat"] :is(.boss-face,.boss-glove-left,.boss-glove-right){animation-duration:2.4s!important}
body[data-speed="fast"][data-feedback="order-filled"] .boss-arena:not([data-taunt="laugh"]):not([data-taunt="gloat"]) .boss-glove-left,
body[data-speed="fast"] .boss-arena[data-feedback="order-filled"]:not([data-taunt="laugh"]):not([data-taunt="gloat"]) .boss-glove-left{animation-duration:.2s!important}

/* Expressions remain legible without movement, including the raised accusing finger. */
.motion-off .chart-boss-art *,body[data-speed="instant"] .chart-boss-art *,
.motion-off .boss-taunt,body[data-speed="instant"] .boss-taunt{animation:none!important;transition:none!important}
.motion-off :is(.boss-pointer-face,.boss-pointer-eyes),body[data-speed="instant"] :is(.boss-pointer-face,.boss-pointer-eyes){transform:none!important}
@media(prefers-reduced-motion:reduce){.chart-boss-art *,.boss-taunt{animation:none!important;transition:none!important}.boss-pointer-face,.boss-pointer-eyes{transform:none!important}}
