@keyframes shake{0%{transform:translate(0)}20%{transform:translate(-6px,4px)}40%{transform:translate(5px,-3px)}60%{transform:translate(-4px,2px)}80%{transform:translate(3px,-1px)}to{transform:translate(0)}}@keyframes idle-jiggle{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.02)}}@keyframes pulse-text{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes crowd-pulse{0%,to{opacity:.32}50%{opacity:.5}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px currentColor;transform:scale(1)}50%{box-shadow:0 0 40px currentColor;transform:scale(1.04)}}@keyframes urgent-pulse{0%,to{transform:scale(1);color:#dc2626}50%{transform:scale(1.06);color:#fbbf24}}@keyframes fadeOut{0%{opacity:1;transform:scale(.95)}20%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(1.2)}}@keyframes slam-in{0%{transform:translate(-50%,-50%) scale(2.5) rotate(-3deg);opacity:0}60%{transform:translate(-50%,-50%) scale(.95) rotate(1deg);opacity:1}to{transform:translate(-50%,-50%) scale(1) rotate(0deg);opacity:1}}@keyframes beast-burn{0%,to{box-shadow:inset 0 0 80px rgba(220,38,38,.5)}50%{box-shadow:inset 0 0 120px rgba(251,191,36,.6)}}@keyframes finisher-flash{0%{opacity:0;transform:scale(.5)}30%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(2)}}@keyframes confetti-drop{0%{transform:translateY(-100%);opacity:0}20%{opacity:1}to{transform:translateY(100%);opacity:0}}*{box-sizing:border-box}body,html{margin:0;padding:0;background:#0a0a0a}input[type=range]{cursor:pointer}.fighter g{transform-box:view-box;transform-origin:center}@keyframes idle-head{0%,to{transform:rotate(0deg)}50%{transform:rotate(3deg)}}@keyframes idle-neck{0%,to{transform:rotate(0deg)}50%{transform:rotate(2deg)}}@keyframes idle-torso{0%,to{transform:rotate(0deg)}50%{transform:rotate(4deg)}}@keyframes idle-shoulderL{0%,to{transform:rotate(0deg)}50%{transform:rotate(15deg)}}@keyframes idle-upperArmL{0%,to{transform:rotate(0deg)}50%{transform:rotate(-25deg)}}@keyframes idle-elbowL{0%,to{transform:rotate(0deg)}50%{transform:rotate(35deg)}}@keyframes idle-shoulderR{0%,to{transform:rotate(0deg)}50%{transform:rotate(-12deg)}}@keyframes idle-upperArmR{0%,to{transform:rotate(0deg)}50%{transform:rotate(20deg)}}@keyframes idle-elbowR{0%,to{transform:rotate(0deg)}50%{transform:rotate(-30deg)}}.fighter.anim-idle .head{animation:idle-head 2.4s ease-in-out infinite}.fighter.anim-idle .neck{animation:idle-neck 2.4s ease-in-out infinite}.fighter.anim-idle .torso{animation:idle-torso 2.4s ease-in-out infinite}.fighter.anim-idle .shoulderL{animation:idle-shoulderL 2.4s ease-in-out infinite}.fighter.anim-idle .upperArmL{animation:idle-upperArmL 2.4s ease-in-out infinite}.fighter.anim-idle .elbowL{animation:idle-elbowL 2.4s ease-in-out infinite}.fighter.anim-idle .shoulderR{animation:idle-shoulderR 2.4s ease-in-out infinite}.fighter.anim-idle .upperArmR{animation:idle-upperArmR 2.4s ease-in-out infinite}.fighter.anim-idle .elbowR{animation:idle-elbowR 2.4s ease-in-out infinite}@keyframes jab-shoulderL{0%{transform:rotate(0deg)}40%{transform:rotate(20deg)}60%{transform:rotate(5deg)}to{transform:rotate(0deg)}}@keyframes jab-upperArmL{0%{transform:rotate(0deg)}40%{transform:rotate(-35deg)}60%{transform:rotate(55deg)}to{transform:rotate(0deg)}}@keyframes jab-elbowL{0%{transform:rotate(0deg)}40%{transform:rotate(25deg)}60%{transform:rotate(-15deg)}to{transform:rotate(0deg)}}@keyframes jab-forearmL{0%,40%{transform:rotate(0deg)}60%{transform:rotate(-40deg)}to{transform:rotate(0deg)}}.fighter.anim-jab_throw .shoulderL{animation:jab-shoulderL .5s ease-in-out forwards}.fighter.anim-jab_throw .upperArmL{animation:jab-upperArmL .5s ease-in-out forwards}.fighter.anim-jab_throw .elbowL{animation:jab-elbowL .5s ease-in-out forwards}.fighter.anim-jab_throw .forearmL{animation:jab-forearmL .5s ease-in-out forwards}@keyframes hook-w-torso{0%{transform:rotate(0deg)}to{transform:rotate(25deg)}}@keyframes hook-w-shoulderR{0%{transform:rotate(0deg)}to{transform:rotate(-35deg)}}@keyframes hook-w-upperArmR{0%{transform:rotate(0deg)}to{transform:rotate(-55deg)}}@keyframes hook-w-elbowR{0%{transform:rotate(0deg)}to{transform:rotate(40deg)}}.fighter.anim-hook_windup .torso{animation:hook-w-torso .5s ease-out forwards}.fighter.anim-hook_windup .shoulderR{animation:hook-w-shoulderR .5s ease-out forwards}.fighter.anim-hook_windup .upperArmR{animation:hook-w-upperArmR .5s ease-out forwards}.fighter.anim-hook_windup .elbowR{animation:hook-w-elbowR .5s ease-out forwards}@keyframes hook-e-torso{0%{transform:rotate(25deg)}to{transform:rotate(15deg)}}@keyframes hook-e-shoulderR{0%{transform:rotate(-35deg)}to{transform:rotate(-10deg)}}@keyframes hook-e-upperArmR{0%{transform:rotate(-55deg)}to{transform:rotate(70deg)}}@keyframes hook-e-elbowR{0%{transform:rotate(40deg)}to{transform:rotate(-50deg)}}@keyframes hook-e-forearmR{0%{transform:rotate(0deg)}to{transform:rotate(-60deg)}}.fighter.anim-hook_extend .torso{animation:hook-e-torso .15s ease-in forwards}.fighter.anim-hook_extend .shoulderR{animation:hook-e-shoulderR .15s ease-in forwards}.fighter.anim-hook_extend .upperArmR{animation:hook-e-upperArmR .15s ease-in forwards}.fighter.anim-hook_extend .elbowR{animation:hook-e-elbowR .15s ease-in forwards}.fighter.anim-hook_extend .forearmR{animation:hook-e-forearmR .15s ease-in forwards}@keyframes parry-shoulderL{0%{transform:rotate(0deg)}to{transform:rotate(65deg)}}@keyframes parry-upperArmL{0%{transform:rotate(0deg)}to{transform:rotate(25deg)}}@keyframes parry-elbowL{0%{transform:rotate(0deg)}to{transform:rotate(75deg)}}.fighter.anim-parry_raise .shoulderL{animation:parry-shoulderL .15s ease-out forwards}.fighter.anim-parry_raise .upperArmL{animation:parry-upperArmL .15s ease-out forwards}.fighter.anim-parry_raise .elbowL{animation:parry-elbowL .15s ease-out forwards}@keyframes dodge-torso{0%{transform:rotate(0deg)}to{transform:rotate(-28deg)}}@keyframes dodge-hips{0%{transform:rotate(0deg)}to{transform:rotate(-10deg)}}@keyframes dodge-head{0%{transform:rotate(0deg)}to{transform:rotate(-12deg)}}.fighter.anim-dodge_lean .torso{animation:dodge-torso .18s ease-out forwards}.fighter.anim-dodge_lean .hips{animation:dodge-hips .18s ease-out forwards}.fighter.anim-dodge_lean .head{animation:dodge-head .18s ease-out forwards}@keyframes hit-l-head{0%{transform:rotate(0deg)}to{transform:rotate(22deg)}}@keyframes hit-l-neck{0%{transform:rotate(0deg)}to{transform:rotate(12deg)}}@keyframes hit-l-torso{0%{transform:rotate(0deg)}to{transform:rotate(10deg)}}.fighter.anim-hit_recoil_light .head{animation:hit-l-head .2s ease-out forwards}.fighter.anim-hit_recoil_light .neck{animation:hit-l-neck .2s ease-out forwards}.fighter.anim-hit_recoil_light .torso{animation:hit-l-torso .2s ease-out forwards}@keyframes hit-h-head{0%{transform:rotate(0deg)}to{transform:rotate(38deg)}}@keyframes hit-h-torso{0%{transform:rotate(0deg)}to{transform:rotate(28deg)}}@keyframes hit-h-hips{0%{transform:rotate(0deg)}to{transform:rotate(-12deg)}}@keyframes hit-h-thighL{0%{transform:rotate(0deg)}to{transform:rotate(-15deg)}}.fighter.anim-hit_recoil_heavy .head{animation:hit-h-head .35s ease-out forwards}.fighter.anim-hit_recoil_heavy .torso{animation:hit-h-torso .35s ease-out forwards}.fighter.anim-hit_recoil_heavy .hips{animation:hit-h-hips .35s ease-out forwards}.fighter.anim-hit_recoil_heavy .thighL{animation:hit-h-thighL .35s ease-out forwards}@keyframes ko-kneeL{0%{transform:rotate(0deg)}37.5%{transform:rotate(55deg)}to{transform:rotate(55deg)}}@keyframes ko-kneeR{0%{transform:rotate(0deg)}37.5%{transform:rotate(65deg)}to{transform:rotate(65deg)}}@keyframes ko-torso{0%{transform:rotate(0deg)}37.5%{transform:rotate(35deg)}to{transform:rotate(85deg)}}@keyframes ko-head{0%{transform:rotate(0deg)}37.5%{transform:rotate(28deg)}to{transform:rotate(65deg)}}@keyframes ko-hips{0%{transform:translateY(0)}to{transform:translateY(40px)}}.fighter.anim-ko_fall .kneeL{animation:ko-kneeL .8s ease-in forwards}.fighter.anim-ko_fall .kneeR{animation:ko-kneeR .8s ease-in forwards}.fighter.anim-ko_fall .torso{animation:ko-torso .8s ease-in forwards}.fighter.anim-ko_fall .head{animation:ko-head .8s ease-in forwards}.fighter.anim-ko_fall .hips{animation:ko-hips .8s ease-in forwards}@keyframes beast-c-torso{0%,to{transform:rotate(0deg) scale(1)}50%{transform:rotate(8deg) scale(1.06)}}@keyframes beast-c-shoulderL{0%,to{transform:rotate(0deg)}50%{transform:rotate(-25deg)}}@keyframes beast-c-shoulderR{0%,to{transform:rotate(0deg)}50%{transform:rotate(25deg)}}@keyframes beast-c-upperArmL{0%,to{transform:rotate(0deg)}50%{transform:rotate(-10deg)}}@keyframes beast-c-upperArmR{0%,to{transform:rotate(0deg)}50%{transform:rotate(10deg)}}.fighter.anim-beast_mode_charge .torso{animation:beast-c-torso .8s ease-in-out infinite}.fighter.anim-beast_mode_charge .shoulderL{animation:beast-c-shoulderL .8s ease-in-out infinite}.fighter.anim-beast_mode_charge .shoulderR{animation:beast-c-shoulderR .8s ease-in-out infinite}.fighter.anim-beast_mode_charge .upperArmL{animation:beast-c-upperArmL .8s ease-in-out infinite}.fighter.anim-beast_mode_charge .upperArmR{animation:beast-c-upperArmR .8s ease-in-out infinite}@keyframes beast-f-torso{0%{transform:rotate(0deg)}20%{transform:rotate(-25deg)}60%{transform:rotate(20deg)}to{transform:rotate(15deg)}}@keyframes beast-f-upperArmR{0%{transform:rotate(0deg)}20%{transform:rotate(-70deg)}60%{transform:rotate(110deg)}to{transform:rotate(60deg)}}@keyframes beast-f-elbowR{0%{transform:rotate(0deg)}20%{transform:rotate(60deg)}60%{transform:rotate(-30deg)}to{transform:rotate(0deg)}}@keyframes beast-f-shoulderR{0%{transform:rotate(0deg)}20%{transform:rotate(-40deg)}60%{transform:rotate(30deg)}to{transform:rotate(10deg)}}@keyframes beast-f-hips{0%{transform:rotate(0deg)}20%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}to{transform:rotate(0deg)}}.fighter.anim-beast_mode_finisher .torso{animation:beast-f-torso 1.5s ease-out forwards}.fighter.anim-beast_mode_finisher .upperArmR{animation:beast-f-upperArmR 1.5s ease-out forwards}.fighter.anim-beast_mode_finisher .elbowR{animation:beast-f-elbowR 1.5s ease-out forwards}.fighter.anim-beast_mode_finisher .shoulderR{animation:beast-f-shoulderR 1.5s ease-out forwards}.fighter.anim-beast_mode_finisher .hips{animation:beast-f-hips 1.5s ease-out forwards}@keyframes taunt-shoulderL{0%{transform:rotate(0deg)}35%{transform:rotate(85deg)}70%{transform:rotate(85deg)}to{transform:rotate(0deg)}}@keyframes taunt-shoulderR{0%{transform:rotate(0deg)}35%{transform:rotate(-85deg)}70%{transform:rotate(-85deg)}to{transform:rotate(0deg)}}@keyframes taunt-upperArmL{0%{transform:rotate(0deg)}35%{transform:rotate(-60deg)}70%{transform:rotate(-60deg)}to{transform:rotate(0deg)}}@keyframes taunt-upperArmR{0%{transform:rotate(0deg)}35%{transform:rotate(60deg)}70%{transform:rotate(60deg)}to{transform:rotate(0deg)}}@keyframes taunt-torso{0%,to{transform:rotate(0deg)}35%,70%{transform:rotate(12deg)}}.fighter.anim-taunt_win .shoulderL{animation:taunt-shoulderL 1.2s ease-in-out forwards}.fighter.anim-taunt_win .shoulderR{animation:taunt-shoulderR 1.2s ease-in-out forwards}.fighter.anim-taunt_win .upperArmL{animation:taunt-upperArmL 1.2s ease-in-out forwards}.fighter.anim-taunt_win .upperArmR{animation:taunt-upperArmR 1.2s ease-in-out forwards}.fighter.anim-taunt_win .torso{animation:taunt-torso 1.2s ease-in-out forwards}@keyframes gassed-torso{0%,to{transform:rotate(30deg)}50%{transform:rotate(35deg)}}@keyframes gassed-head{0%,to{transform:rotate(18deg)}50%{transform:rotate(22deg)}}@keyframes gassed-shoulderL{0%,to{transform:rotate(55deg)}}@keyframes gassed-shoulderR{0%,to{transform:rotate(-55deg)}}@keyframes gassed-upperArmL{0%,to{transform:rotate(-20deg)}}@keyframes gassed-upperArmR{0%,to{transform:rotate(20deg)}}.fighter.anim-gassed .torso{animation:gassed-torso 2s ease-in-out infinite}.fighter.anim-gassed .head{animation:gassed-head 2s ease-in-out infinite}.fighter.anim-gassed .shoulderL{animation:gassed-shoulderL 2s ease-in-out infinite}.fighter.anim-gassed .shoulderR{animation:gassed-shoulderR 2s ease-in-out infinite}.fighter.anim-gassed .upperArmL{animation:gassed-upperArmL 2s ease-in-out infinite}.fighter.anim-gassed .upperArmR{animation:gassed-upperArmR 2s ease-in-out infinite}