.blocker .body{width:84%;height:84%}.blocker.is-sleeping .body{animation:2.4s ease-in-out infinite breathe}.blocker svg{width:100%;height:100%}.blocker.is-sleeping .awake,.blocker.is-idle .sleep,.blocker.is-awake .sleep{display:none}.blocker.is-awake .awake{display:inline}.blocker .shout,.blocker.is-awake .calm{display:none}.blocker.is-awake .shout{display:inline}@keyframes breathe{50%{transform:scale(1.04,.97)translateY(2%)}}.blocker.is-idle[data-kind=ghost] .body{animation:4s ease-in-out infinite ghost-float}@keyframes ghost-float{0%,to{opacity:1;transform:translateY(0)}25%{transform:translateY(-10%)}50%{opacity:1;transform:translateY(0)}62%{opacity:.3;transform:translateY(-6%)}75%{opacity:1;transform:translateY(-10%)}}.blocker.is-idle[data-kind=crab] .body{animation:2.6s ease-in-out infinite crab-walk}@keyframes crab-walk{0%,to{transform:translate(0)}25%{transform:translate(-12%)rotate(-4deg)}50%{transform:translate(0)}75%{transform:translate(12%)rotate(4deg)}}.blocker.is-idle[data-kind=crab] .claw{transform-box:fill-box;transform-origin:30% 90%;animation:.65s ease-in-out infinite snip}@keyframes snip{50%{transform:rotate(-22deg)}}.blocker.is-idle[data-kind=hedgehog] .body{animation:3.2s ease-in-out infinite look-around}@keyframes look-around{0%,38%{transform:scaleX(1)}44%,88%{transform:scaleX(-1)}94%,to{transform:scaleX(1)}}.blocker.is-awake[data-kind] .body{animation:.5s ease-out startle}@keyframes startle{0%{transform:scale(1)}30%{transform:translateY(-28%)scale(1.15)}60%{transform:translateY(0)scale(1.1,.9)}to{transform:scale(1)}}.zzz,.surprise{color:#748ffc;pointer-events:none;font-weight:800;position:absolute;top:8%;right:22%}.zzz span{font-size:calc(var(--cell) * .3);opacity:0;animation:2.4s ease-out infinite zzz;position:absolute}.zzz span:nth-child(2){animation-delay:1.2s}@keyframes zzz{0%{opacity:0;transform:translate(0)scale(.6)}20%{opacity:1}to{transform:translate(calc(var(--cell) * .15), calc(var(--cell) * -.3)) scale(1.1);opacity:0}}.blocker.is-idle .zzz,.blocker.is-awake .zzz{display:none}.surprise{font-size:calc(var(--cell) * .5);color:#f03e3e;opacity:0;top:-12%;right:12%}.blocker.is-awake .surprise{animation:1.2s ease-out forwards surprise}@keyframes surprise{0%{opacity:1;transform:scale(.3)}20%{transform:scale(1.2)}35%,80%{opacity:1;transform:scale(1)}to{opacity:0}}
