.animal-stage{padding-bottom:112px}
.animal-stage .animal-art{display:none;position:absolute;inset:0 0 112px;pointer-events:none}
.animal-stage.animal-layered>img{animation:none;visibility:hidden;opacity:0}
.animal-stage.animal-layered .animal-art{display:block}
.animal-stage .animal-sprite{position:absolute;top:0;bottom:0;pointer-events:none}
.animal-stage .animal-sprite img,.animal-stage .animal-sprite video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;animation:none;filter:drop-shadow(0 12px 10px #12282025)}
.animal-stage .animal-sprite.playing img{visibility:hidden}
.animal-stage video[hidden]{display:none}
.animal-stage button[data-animal]{bottom:52px;height:calc(100% - 52px)}
.animal-stage .animal-sound{position:absolute;display:block;left:auto;right:0;top:auto;bottom:0;transform:none;width:auto;min-height:36px;height:auto;margin:0;padding:7px 12px;border:1px solid #fff8;border-radius:999px;color:white;background:#153d30cc;font:600 11px system-ui;z-index:3}
@media(max-width:760px){.animal-stage{padding-bottom:108px}.animal-stage .animal-art{bottom:108px}}
.animal-stage button[data-animal] span{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border:1px solid #ffffffb8;border-radius:18px;background:linear-gradient(145deg,#fffef8f5,#e9e6d9e8);color:#153d30;font:750 13px system-ui;letter-spacing:.025em;box-shadow:0 8px 24px #102e3033,inset 0 1px #fff;backdrop-filter:blur(12px);transition:background .2s,box-shadow .2s,transform .2s;white-space:nowrap}
.animal-stage button[data-animal]:hover span,.animal-stage button[data-animal]:focus-visible span{background:linear-gradient(145deg,#285c48,#153d30);color:#fff;border-color:#e1bb77;box-shadow:0 12px 30px #102e3055,0 0 0 3px #e1bb7726;transform:translateX(-50%) translateY(-3px)}
@media(max-width:760px){.animal-stage button[data-animal] span{font-size:10px;padding:8px 8px;min-height:44px;border-radius:14px;letter-spacing:0}.animal-stage button[data-animal="ave"] span{white-space:normal;width:78px;line-height:1.15;text-align:center}}
@media(prefers-reduced-motion:reduce){.animal-stage button[data-animal] span{transition:none}.animal-stage button[data-animal]:hover span,.animal-stage button[data-animal]:focus-visible span{transform:translateX(-50%)}}
.animal-stage button[data-animal] span{width:112px}
@media(max-width:760px){.animal-stage button[data-animal] span{width:clamp(52px,14vw,72px);white-space:nowrap;min-height:44px}}
