/* The supplied GIF already has a transparent background. */
.community-logo{background:transparent;border-radius:0}
.puzzle-board{position:relative;min-width:0;align-self:start;padding-top:58px}
.cat-stage{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:0;contain:layout style}
.cat-window{position:absolute;left:0;top:0;width:var(--cat-size,52px);height:var(--cat-height,56px);overflow:hidden;pointer-events:none;will-change:transform}
.cat-rise{width:100%;height:100%;will-change:transform}
.cat-facing{width:100%;height:100%;transform-origin:center}
.witch-cat{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 1px 1px #bfa0d42b)}
.cat-head{transform-origin:64px 73px;transition:transform 550ms cubic-bezier(.22,1,.36,1)}
.cat-body{transform-origin:60px 106px;transition:transform 550ms cubic-bezier(.22,1,.36,1)}
.cat-tail{transform-origin:44px 105px;animation:cat-tail-sway 4.7s ease-in-out infinite alternate}
.cat-eyes{transform-origin:64px 49px;animation:cat-blink 7.6s linear infinite}
.cat-pupils{animation:cat-look 9s ease-in-out infinite}
.cat-hat{transform-origin:56px 28px;animation:cat-hat-settle 5.5s ease-in-out infinite alternate}
.cat-paws{transition:opacity 350ms ease}
.cat-back-leg,.cat-front-leg{opacity:0;transform-origin:60px 90px;transition:opacity 350ms ease}
.cat-collar{transition:opacity 350ms ease}
.cat-stage[data-pose=walk] .cat-body{transform:translate(-4px,3px) scale(1.35,.62)}
.cat-stage[data-pose=walk] .cat-head{transform:translate(10px,22px) rotate(7deg)}
.cat-stage[data-pose=walk] .cat-collar,.cat-stage[data-pose=walk] .cat-paws{opacity:0}
.cat-stage[data-pose=walk] .cat-back-leg{opacity:1;animation:cat-step 850ms ease-in-out infinite}
.cat-stage[data-pose=walk] .cat-front-leg{opacity:1;animation:cat-step 850ms ease-in-out -425ms infinite}
.cat-stage[data-pose=walk] .cat-tail{animation-duration:1.7s}
.cat-stage[data-pose=rest] .cat-body{animation:cat-breathe 4s ease-in-out infinite}
.cat-stage[data-pose=rest] .cat-head{animation:cat-doze 10s ease-in-out infinite}
.cat-stage[data-pose=peek] .cat-head{transform:rotate(-5deg)}
.cat-toggle{border:0;background:transparent;color:#cbb7df;font:11px monospace;padding:11px 8px;border-radius:20px;margin-left:auto;cursor:pointer;touch-action:manipulation}
.cat-toggle:hover{background:#ffffff09;color:#f2e6ff}
.cat-toggle:disabled{opacity:.6;cursor:default}
.cat-still .witch-cat *{animation:none!important;transition:none!important}
@keyframes cat-tail-sway{from{transform:rotate(-7deg)}to{transform:rotate(8deg)}}
@keyframes cat-blink{0%,39%,42%,72%,75%,100%{transform:scaleY(1)}40.5%,73.5%{transform:scaleY(.08)}}
@keyframes cat-look{0%,20%,65%,100%{transform:translateX(0)}30%,50%{transform:translateX(-2px)}75%,90%{transform:translateX(2px)}}
@keyframes cat-hat-settle{from{transform:rotate(-4deg)}to{transform:rotate(2deg)}}
@keyframes cat-step{0%,100%{transform:rotate(-8deg) translateY(0)}50%{transform:rotate(9deg) translateY(-2px)}}
@keyframes cat-breathe{0%,100%{transform:scale(1,1)}50%{transform:scale(1.015,1.025)}}
@keyframes cat-doze{0%,35%,100%{transform:rotate(0)}55%,75%{transform:rotate(5deg) translateY(1px)}}
@media(max-width:560px){.puzzle-board{padding-top:44px}.cat-toggle{font-size:10px}}

/* Keep the crouch-to-sit transition separate from the resting breath. */
.cat-stage[data-pose=rest] .cat-head{animation:none;transform:rotate(3deg)}
.cat-stage[data-pose=rest] .cat-body{animation:none}
.cat-stage[data-pose=rest] .witch-cat{transform-origin:50% 92%;animation:cat-idle-breathe 4.5s ease-in-out infinite}
@keyframes cat-idle-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.008,1.015)}}
.cat-still .witch-cat,.cat-frozen .witch-cat,.cat-frozen .witch-cat *{animation-play-state:paused!important}
