/* Separate pointer depth from the mascot's quiet idle movement. */
.mascot-figure{position:absolute;left:-5%;top:-18px;width:110%;height:590px;z-index:1;transform:translate3d(var(--mascot-x,0px),var(--mascot-y,0px),0) rotate(var(--mascot-r,0deg));transition:transform .65s cubic-bezier(.2,.65,.3,1);pointer-events:none}
.mascot-figure .mascot-art{position:static;display:block;width:100%;max-width:100%;height:100%;animation:mascot-float 6.8s ease-in-out infinite;animation-play-state:paused;transform-origin:50% 65%}
.mascot-stage .mascot-orbit{animation:mascot-orbit 32s linear infinite;animation-play-state:paused}
.mascot-orbit:after{content:'';position:absolute;top:13%;right:13%;width:4px;height:4px;border-radius:50%;background:#ffa471;box-shadow:0 0 16px 3px #ff6d1d55}
.mascot-stage .mascot-orbit:before{border-top-color:#7390e73d;border-right-color:#7390e72b}
.mascot-ambient{position:absolute;inset:19% 4% 22%;border-radius:50%;background:radial-gradient(ellipse at 70% 30%,#ff6d1d12,transparent 58%),radial-gradient(ellipse at 35% 70%,#4f70c923,transparent 65%);animation:mascot-breathe 5.4s ease-in-out infinite;animation-play-state:paused;pointer-events:none}
.mascot-stage[data-motion-state=playing] .mascot-art,.mascot-stage[data-motion-state=playing] .mascot-orbit,.mascot-stage[data-motion-state=playing] .mascot-ambient{animation-play-state:running}
.mascot-stage[data-motion-state=playing] .mascot-figure,.mascot-stage[data-motion-state=playing] .mascot-art{will-change:transform}
.mascot-motion-toggle{position:absolute;z-index:4;bottom:88px;right:3px;display:flex;gap:7px;align-items:center;color:#aeb9d9;border:1px solid #ffffff20;border-radius:20px;background:#0c1022ba;min-height:36px;padding:7px 12px;font:10px Inter,sans-serif;cursor:pointer;transition:color .2s,border-color .2s}
.mascot-motion-toggle[hidden]{display:none}.mascot-motion-toggle:hover{color:#fff;border-color:#ff965b85}.mascot-motion-toggle:focus-visible{outline:2px solid #ff965b;outline-offset:4px}.mascot-motion-toggle .icon{width:12px;height:12px;display:block}.mascot-motion-toggle .motion-play{display:none}.mascot-motion-toggle[aria-pressed=true] .motion-play{display:block}.mascot-motion-toggle[aria-pressed=true] .motion-pause{display:none}
@keyframes mascot-float{0%,100%{transform:translate3d(0,3px,0) rotate(-.65deg)}50%{transform:translate3d(0,-10px,0) rotate(.65deg)}}
@keyframes mascot-orbit{from{transform:rotate(-20deg)}to{transform:rotate(340deg)}}
@keyframes mascot-breathe{0%,100%{opacity:.5;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}
@media(max-width:1100px) and (min-width:768px){.mascot-figure{height:460px;top:20px}}
@media(max-width:767px){.mascot-figure{height:382px;width:112%;left:-6%;top:8px}.mascot-figure .mascot-art{animation-name:mascot-float-mobile}.mascot-motion-toggle{bottom:84px;right:0;min-height:40px;padding:9px 12px;font-size:10px}}
@keyframes mascot-float-mobile{0%,100%{transform:translate3d(0,2px,0)}50%{transform:translate3d(0,-6px,0)}}
@media(prefers-reduced-motion:reduce){.mascot-figure,.mascot-figure .mascot-art,.mascot-stage .mascot-orbit,.mascot-ambient{animation:none!important;transition:none!important;transform:none!important}.mascot-motion-toggle{display:none}}
