.kuma-rig{display:block;position:relative;width:100%;aspect-ratio:1092/1441;isolation:isolate}
.kuma-rig img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;max-width:none;filter:none}
.kuma-body{clip-path:polygon(0 0,78% 0,78% 41%,76% 47%,80% 54%,83% 62%,100% 62%,100% 100%,0 100%)}
.kuma-arm{position:absolute;inset:0;transform-origin:72% 53%;z-index:2}
.kuma-arm>img{clip-path:polygon(73% 44%,80% 36%,88% 25%,100% 22%,100% 39%,82% 60%,70% 58%,67% 51%)}
.kuma-eyelid{position:absolute;z-index:4;width:10.2%;height:5.4%;border-radius:50%;background:linear-gradient(#807e7c,#6e6d6a);border-bottom:1px solid #333;transform:scaleY(0);transform-origin:center top;pointer-events:none}
.eye-left{left:34.7%;top:21.4%}.eye-right{left:53.1%;top:20.2%}
.kuma-awake .kuma-eyelid{animation:kumaBlink 6.4s infinite;animation-play-state:running}
.kuma-rig:not(.kuma-awake) *{animation-play-state:paused!important}
.kuma-wave .kuma-arm{animation:kumaWave 1.9s ease-in-out}
.kuma-point .kuma-arm{animation:kumaPoint 2.2s ease-in-out}
.kuma-pet .kuma-eyelid{animation:kumaContent 2.2s ease-in-out}
.kuma-love{position:absolute;top:3%;left:46%;color:#bb704f;font-size:clamp(16px,2vw,24px);z-index:5;opacity:0;pointer-events:none}
.kuma-pet .kuma-love{animation:kumaLove 2.2s ease-out}
.kuma-wave-lines{position:absolute;top:19%;right:-3%;color:#ad8051;font-size:22px;opacity:0;pointer-events:none}
.kuma-wave .kuma-wave-lines{animation:kumaLove 1.9s ease-out}
.kuma-key{position:absolute;right:2%;top:34%;width:12%;height:18%;fill:none;stroke:#dbb35e;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform-origin:center top;filter:drop-shadow(0 1px 1px #6b502c)}
.kuma-keys .kuma-key{opacity:1;animation:kumaKeySwing 1.9s ease-in-out}
.kuma-keys .kuma-arm{animation:kumaPoint 2.2s ease-in-out}
.welcome-cat{border:0;background:none;padding:0;aspect-ratio:1092/1441;cursor:pointer;pointer-events:none}
.door-open .welcome-cat{pointer-events:auto}
.welcome-cat:focus-visible{outline:2px solid #b28d54;outline-offset:6px;border-radius:35%}
.cat-position.travelling .cat-guide,.cat-guide.happy{animation:none}
.home-cat-note .home-kuma{width:54px;flex:none;border:0;padding:0;background:none}
.kuma-controls{position:absolute;bottom:76px;left:0;right:0;display:flex;justify-content:center;gap:7px;z-index:5;visibility:hidden;opacity:0;transition:opacity .25s}
.door-open .kuma-controls{visibility:visible;opacity:1}
.kuma-controls button{min-height:38px;padding:7px 12px;border:1px solid #c6cebc;border-radius:30px;background:#fffcf5;color:#43543b;font-size:11px}
.kuma-controls button:hover{background:#e3eadd}
.door-stage{bottom:135px}
.door-open .welcome-door{transition-delay:.28s}
.door-open .door-handle{animation:kumaDoorHandle .5s ease-in-out}
.door-open .door-number{animation:kumaKnock .3s ease-in-out}
.welcome-cat{transition-delay:.65s}
@keyframes kumaWave{0%,100%{transform:rotate(0)}18%,50%,82%{transform:rotate(-13deg)}34%,66%{transform:rotate(9deg)}}
@keyframes kumaPoint{0%,100%{transform:rotate(0)}25%,75%{transform:rotate(18deg)}}
@keyframes kumaBlink{0%,43%,47%,100%{transform:scaleY(0)}44.5%,45.5%{transform:scaleY(1)}}
@keyframes kumaContent{0%,100%{transform:scaleY(0)}15%,85%{transform:scaleY(.9)}}
@keyframes kumaLove{0%{opacity:0;transform:translateY(0) scale(.6)}25%{opacity:1;transform:translateY(-12px) scale(1)}75%{opacity:1}100%{opacity:0;transform:translateY(-30px) scale(1.1)}}
@keyframes kumaKeySwing{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(22deg)}40%,80%{transform:rotate(-18deg)}}
@keyframes kumaDoorHandle{0%,100%{transform:rotate(0)}45%{transform:rotate(22deg)}}
@keyframes kumaKnock{25%{transform:translateX(calc(-50% + 2px))}75%{transform:translateX(calc(-50% - 2px))}}
.motion-off .kuma-rig *{animation:none!important}
.motion-off .kuma-pet .kuma-love,.motion-off .kuma-wave .kuma-wave-lines{opacity:1}
.motion-off .kuma-pet .kuma-eyelid{transform:scaleY(.9)}
@media(max-width:1050px){.door-stage{bottom:130px}.welcome-cat{width:122px}}
@media(max-width:760px){.cat-welcome{height:510px}.door-stage{bottom:130px}.welcome-cat{width:134px}.kuma-controls{bottom:78px}}
@media(prefers-reduced-motion:reduce){.kuma-rig *{animation:none!important}.kuma-pet .kuma-love{opacity:1}}
