.world-ring{pointer-events:none;border:1px solid #94c8c32d;border-radius:50%;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)rotate(-23deg)}.world-ring.ring-one{width:250px;height:200px}.world-ring.ring-two{border-style:dashed;border-color:#b6b6e728;width:330px;height:250px}.core-stage.core-dock{z-index:40;pointer-events:none;width:150px;height:140px;position:fixed;bottom:18px;right:18px}.core-stage.core-dock svg{pointer-events:auto}.core-stage.core-dock .core-say{max-width:240px;top:-18%;left:auto;right:0;translate:0}@media (max-width:700px){.rewards-tally{width:100%}.core-stage.core-dock{width:104px;height:96px;bottom:8px;right:8px}.core-stage.core-dock svg{width:88px;height:78px}}.core-stage{isolation:isolate;contain:layout;height:320px;position:relative}.core-stage .world-grid{inset:0}.core-stage .world-ring.ring-one{aspect-ratio:250/200;width:min(250px,78%);height:auto}.core-stage .world-ring.ring-two{aspect-ratio:330/250;width:min(330px,86%);height:auto}.core-stage svg{filter:drop-shadow(0 16px 30px #02090c42);transform-origin:50% 90%;cursor:pointer;width:230px;height:205px;transition:transform .45s cubic-bezier(.2,.7,.2,1);animation:6s ease-in-out infinite core-float;position:absolute;top:50%;left:50%;overflow:visible;translate:-50% -56%}.core-stage.small{height:150px}.core-stage.small svg{width:120px;height:107px}.core-stage.small .world-ring.ring-one{aspect-ratio:130/100;width:min(130px,60%)}.core-stage.small .world-ring.ring-two{aspect-ratio:180/130;width:min(180px,84%)}.core-stage.small .world-grid{background-size:16px 16px}@keyframes core-float{0%,to{translate:-50% -56%}50%{translate:-50% -60%}}.core-stage .core-eye{transform-box:fill-box;transform-origin:50%;animation:5.2s ease-in-out infinite core-blink}.core-stage #core-eye-r{animation-delay:40ms}@keyframes core-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}.core-stage .core-pupil{transform-box:fill-box;transform-origin:50%;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.core-stage .core-orb{transform-box:fill-box;transform-origin:50%;animation:4s ease-in-out infinite core-orb}.core-stage .core-orb:nth-child(2){animation-delay:-1.3s}.core-stage .core-orb:nth-child(3){animation-delay:-2.6s}@keyframes core-orb{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.core-stage .core-side{transform-box:fill-box;transform-origin:50%;transition:transform .4s}.core-stage #core-mouth{transition:d .25s}.core-stage #core-tongue{transition:opacity .25s}.core-stage[data-mood=curious] svg{transform:rotate(-5deg)}.core-stage[data-mood=curious] #core-tongue{opacity:0}.core-stage[data-mood=thinking] svg{animation:1.6s ease-in-out infinite core-sway}.core-stage[data-mood=thinking] .core-orb{animation-duration:1.2s}.core-stage[data-mood=thinking] #core-tongue{opacity:0}@keyframes core-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.core-stage[data-mood=excited] svg{animation:.7s ease-in-out infinite core-hop}.core-stage[data-mood=excited] .core-side{transform:translateY(-10px)}@keyframes core-hop{0%,to{translate:-50% -56%}40%{translate:-50% -66%}60%{translate:-50% -64%}}.core-stage[data-mood=sad] svg{animation:.5s ease-in-out 2 core-shake;transform:rotate(4deg)translateY(6px)}.core-stage[data-mood=sad] #core-tongue{opacity:0}.core-stage[data-mood=sad] .core-side{transform:translateY(6px)}@keyframes core-shake{0%,to{translate:-50% -56%}25%{translate:calc(-50% - 6px) -56%}75%{translate:calc(6px - 50%) -56%}}.core-stage[data-mood=celebrate] svg{animation:.9s cubic-bezier(.2,.7,.2,1) 3 core-jump}.core-stage[data-mood=celebrate] .core-orb{animation:.9s ease-in-out 3 core-orb-spin}.core-stage[data-mood=celebrate] .core-side{transform:translateY(-14px)rotate(20deg)}@keyframes core-jump{0%,to{transform:rotate(0)}35%{transform:rotate(-6deg)}70%{transform:rotate(4deg)}}@keyframes core-orb-spin{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-22px)scale(1.25)}}.core-spark{background:var(--green);opacity:0;pointer-events:none;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%}.core-stage[data-mood=celebrate] .core-spark{animation:1.1s ease-out 2 core-spark}.core-stage .core-spark:nth-child(2n){background:var(--purple)}.core-stage .core-spark:nth-child(3n){background:#75baff}@keyframes core-spark{0%{opacity:0;transform:translate(0)scale(.6)}15%{opacity:1}to{opacity:0;transform:translate(var(--dx), var(--dy)) scale(1.1)}}.core-say{max-width:92%;font:500 12px var(--mono);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;opacity:0;pointer-events:none;z-index:2;background:#12121de6;border:1px solid #ffffff1f;border-radius:10px;padding:8px 12px;transition:opacity .3s,transform .3s;position:absolute;top:8%;left:50%;overflow:hidden;transform:translateY(6px)}.core-say:after{content:"";background:#12121de6;border-bottom:1px solid #ffffff1f;border-right:1px solid #ffffff1f;width:8px;height:8px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.core-say.show{opacity:1;transform:translateY(0)}.core-stage.small .core-say{font-size:11px;top:-6%}@media (prefers-reduced-motion:reduce){.core-stage svg,.core-stage .core-orb,.core-stage .core-eye{animation:none!important}}.core-stage.core-dock{touch-action:none;width:225px;height:210px;transition:left .35s,right .35s,top .35s,bottom .35s}.core-stage.core-dock svg{width:180px;height:160px}.core-stage.core-dock[data-corner^=t]{top:84px;bottom:auto}.core-stage.core-dock[data-corner$=l]{left:18px;right:auto}.core-stage.core-dock[data-corner^=t] .core-say{top:auto;bottom:-10%}.core-stage.core-dock[data-corner$=l] .core-say{left:0;right:auto}.core-stage.core-dock .core-say,.wallet-core .core-say{white-space:normal;width:max-content;max-width:240px;line-height:1.4}.core-stage.core-dock.dragging{transition:none}.core-stage.core-dock.dragging svg{cursor:grabbing;animation:none}body[data-route=launch] .core-dock,body.launch-lock .core-dock{display:none}@media (max-width:700px){.core-stage.core-dock{width:92px;height:86px;bottom:8px;right:8px}.core-stage.core-dock svg{width:80px;height:72px}.core-stage.core-dock[data-corner$=l]{left:8px}.core-stage.core-dock[data-corner^=t]{top:70px}}.core-menu{pointer-events:auto;z-index:3;background:#12121df2;border:1px solid #ffffff1f;border-radius:12px;gap:2px;min-width:190px;padding:6px;display:grid;position:absolute;bottom:100%;right:8px;box-shadow:0 14px 34px #0009}.core-menu[hidden]{display:none}.core-dock[data-corner^=t] .core-menu{top:100%;bottom:auto}.core-dock[data-corner$=l] .core-menu{left:8px;right:auto}.core-menu b{font:600 13px var(--mono);color:var(--ink);padding:6px 10px 4px}.core-menu a,.core-menu button{color:var(--muted);font:500 13px var(--mono);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;text-decoration:none;display:block}.core-menu a:hover,.core-menu button:hover{color:var(--ink);background:#ffffff10}.wallet-core.core-stage{height:180px;margin:-8px 0 2px}.wallet-core svg{width:170px;height:151px}.wallet-core .core-say{top:0}.core-stage:is([data-mood=sleepy],[data-mood=sleep]) .core-eye{animation:none;transform:scaleY(.16)}.core-stage[data-mood=sleepy] svg{transform:rotate(3deg)}.core-stage[data-mood=sleep] svg{animation:3.2s ease-in-out infinite core-breathe;transform:rotate(6deg)}.core-stage[data-mood=sleep] .core-orb{animation-duration:9s}@keyframes core-breathe{0%,to{scale:1}50%{scale:1.03 .97}}.core-stage[data-mood=yawn] svg{animation:1.8s ease-in-out core-stretch}.core-stage[data-mood=yawn] .core-eye{animation:none;transform:scaleY(.3)}.core-stage[data-mood=stretch] svg{animation:1.8s ease-in-out core-stretch}.core-stage[data-mood=stretch] .core-side{transform:translateY(-28px)rotate(-12deg)}@keyframes core-stretch{0%,to{scale:1}45%{scale:.95 1.1}}.core-stage[data-mood=juggle] .core-orb{animation:.55s ease-in-out infinite core-juggle}.core-stage[data-mood=juggle] .core-orb:nth-child(2){animation-delay:-.18s}.core-stage[data-mood=juggle] .core-orb:nth-child(3){animation-delay:-.36s}@keyframes core-juggle{0%,to{transform:translateY(0)}50%{transform:translateY(-46px)}}.core-stage[data-mood=wave] [id^=core-orb-r]{transform-origin:0 100%;animation:.45s ease-in-out 5 core-wave}@keyframes core-wave{0%,to{transform:translateY(-16px)rotate(-10deg)}50%{transform:translateY(-24px)rotate(28deg)}}.core-stage[data-mood=salute] [id^=core-orb-r]{transform-origin:0 100%;transform:translate(-30px,-70px)rotate(-40deg)}.core-stage[data-mood=salute] svg{transform:rotate(-3deg)}.core-stage[data-mood=peek] svg{animation:2.8s ease-in-out core-peek}@keyframes core-peek{0%,to{translate:-50% -56%}30%,60%{translate:calc(120px - 50%) -56%}75%{translate:calc(40px - 50%) -56%}}.core-dock[data-corner$=l][data-mood=peek] svg{animation-name:core-peek-left}@keyframes core-peek-left{0%,to{translate:-50% -56%}30%,60%{translate:calc(-50% - 120px) -56%}75%{translate:calc(-50% - 40px) -56%}}.core-stage[data-mood=buy] svg{animation:.55s cubic-bezier(.2,.7,.2,1) 3 core-hop}.core-stage[data-mood=buy] .core-side{transform:translateY(-12px)}.core-stage[data-mood=catch] svg{animation:.4s ease-in-out 6 core-hop}.core-stage[data-mood=catch] .core-side{transform:translateY(-30px)rotate(-18deg)}.core-stage[data-mood=doubletake] svg{animation:.7s ease-in-out core-take}.core-stage[data-mood=doubletake] .core-eye{transition:transform .2s .5s;animation:none;transform:scale(1.35)}@keyframes core-take{0%,to{transform:rotate(0)}20%{transform:rotate(-14deg)}35%{transform:rotate(0)}55%{transform:rotate(-14deg)}75%{transform:rotate(6deg)}}.core-stage[data-mood=king] .core-orb circle{fill:#ffd54f;transition:fill .3s}.core-stage[data-mood=king] svg{transform:rotate(-4deg)scale(1.05)}.core-stage[data-mood=buy] svg[data-eyes=Starry] .core-pupil path{transform-box:fill-box;transform-origin:50%;animation:.8s ease-in-out 2 core-star}@keyframes core-star{50%{transform:rotate(180deg)scale(1.5)}}.core-stage.wink [id^=core-eye-r]{animation:.5s ease-in-out core-wink}@keyframes core-wink{50%{transform:scaleY(.08)}}.core-stage svg.core-morph{animation:.9s cubic-bezier(.2,.7,.2,1) core-morph}@keyframes core-morph{0%{filter:brightness(3)blur(3px);transform:scale(.15)rotate(-300deg)}70%{filter:brightness(1.4);transform:scale(1.12)rotate(10deg)}to{filter:none;transform:none}}.core-flash{pointer-events:none;z-index:1;background:radial-gradient(#fff,#14f19588 45%,#0000 70%);border-radius:50%;width:40px;height:40px;margin:-20px;animation:.8s ease-out forwards core-flash;position:absolute;top:45%;left:50%}@keyframes core-flash{to{opacity:0;transform:scale(7)}}.core-fly{color:#05050a;width:22px;height:22px;font:700 12px var(--mono);pointer-events:none;z-index:2;background:linear-gradient(135deg,#14f195,#0084ff);border-radius:50%;place-items:center;margin:-11px;animation:.9s cubic-bezier(.5,0,.75,0) both core-fly-in;display:grid;position:absolute;top:42%;left:50%}@keyframes core-fly-in{0%{transform:translate(var(--sx), var(--sy)) scale(1.1);opacity:1}85%{opacity:1}to{opacity:0;transform:translate(0)scale(.3)}}.core-fly.rain{animation:1.3s cubic-bezier(.4,0,1,1) both core-rain;top:-10%}@keyframes core-rain{0%{transform:translate(var(--sx), 0) rotate(0);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translate(calc(var(--sx) * .2), 120px) rotate(540deg);opacity:0}}.core-confetti{pointer-events:none;z-index:2;border-radius:2px;width:7px;height:11px;animation:1.6s cubic-bezier(.2,.6,.4,1) both core-confetti;position:absolute;top:40%;left:50%}@keyframes core-confetti{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--dx), var(--dy)) rotate(var(--r));opacity:0}}.core-crown-drop{color:#ffd54f;filter:drop-shadow(0 0 10px #ffd54f88);pointer-events:none;z-index:2;width:46px;height:34px;margin-left:-23px;animation:4.5s cubic-bezier(.3,1.4,.5,1) both core-crown;position:absolute;top:16%;left:50%}.core-stage .core-crown-drop svg{filter:none;width:100%;height:100%;animation:none;position:static;translate:none}@keyframes core-crown{0%{opacity:0;transform:translateY(-90px)rotate(-30deg)}25%{opacity:1;transform:translateY(0)rotate(0)}85%{opacity:1}to{opacity:0}}.core-z{font:700 15px var(--mono);color:#9aa8ff;pointer-events:none;animation:2.4s ease-out both core-z;position:absolute;top:18%;left:62%}@keyframes core-z{0%{opacity:0;transform:translate(0)scale(.6)}20%{opacity:1}to{opacity:0;transform:translate(30px,-50px)scale(1.3)}}.core-stage .core-extra{transform-box:fill-box;transform-origin:50% 100%}.core-stage .core-extra-halo{animation:2.4s ease-in-out infinite core-halo}@keyframes core-halo{50%{filter:drop-shadow(0 0 16px #ffd54f);opacity:.8;transform:translateY(-6px)}}.core-stage :is(.core-extra-party-hat,.core-extra-bow,.core-extra-antenna){animation:1.8s ease-in-out infinite core-bob}@keyframes core-bob{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)translateY(-4px)}}.core-stage .core-antenna-light{animation:1.2s step-end infinite core-light}@keyframes core-light{50%{fill:#ff4d8d}}.core-stage .core-twinkle{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite core-twinkle}.core-stage .core-twinkle:nth-child(2){animation-delay:-.45s}.core-stage .core-twinkle:nth-child(3){animation-delay:-.9s}.core-stage .core-twinkle:nth-child(4){animation-delay:-1.35s}@keyframes core-twinkle{50%{opacity:.4;transform:scale(.35)rotate(45deg)}}.core-stage .core-extra-blush{animation:3s ease-in-out infinite core-blush}@keyframes core-blush{50%{opacity:.45}}.core-stage:is([data-mood=excited],[data-mood=celebrate],[data-mood=buy],[data-mood=catch]) .core-extra{animation-duration:.5s}@media (prefers-reduced-motion:reduce){.core-stage svg,.core-stage .core-orb,.core-stage .core-eye,.core-stage .core-extra,.core-stage .core-extra *,.core-fly,.core-confetti,.core-crown-drop,.core-z{animation:none!important}.core-fly,.core-confetti,.core-z{display:none}}
