html,body,#root{overscroll-behavior:none;background:#101014;height:100%;margin:0;padding:0;overflow:hidden}*{box-sizing:border-box}.app{touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#101014;position:fixed;inset:0}.app canvas{width:100%;height:100%;display:block}.overlay{pointer-events:none;padding:0 16px calc(28px + env(safe-area-inset-bottom));color:#e9e6dc;flex-direction:column;justify-content:flex-end;align-items:center;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;display:flex;position:absolute;inset:0}.hint{letter-spacing:.12em;opacity:.7;margin:0;font-size:15px}.sub{letter-spacing:.1em;opacity:.85;margin:0;font-size:15px}.overlay.rolling .hint,.overlay.effect .hint{opacity:0}.result{flex-direction:column;align-items:center;gap:10px;animation:.35s cubic-bezier(.2,1.4,.4,1) both pop;display:flex}.result-text{letter-spacing:.08em;text-shadow:0 6px 30px #0009;font-size:clamp(56px,18vw,96px);font-weight:800;line-height:1}.result.kichi .result-text{color:#f4f1e8}.result.kyo .result-text{color:#e33b3f}.result.kyo .sub{color:#e9b0b0}.hud{top:calc(12px + env(safe-area-inset-top));text-align:right;font-variant-numeric:tabular-nums;position:absolute;right:16px}.streak{justify-content:flex-end;align-items:baseline;gap:8px;display:flex}.streak .label{letter-spacing:.12em;opacity:.6;font-size:12px}.streak .num{color:#f4f1e8;font-size:34px;font-weight:700;line-height:1;display:inline-block}.streak .num.pop{animation:.32s cubic-bezier(.2,1.6,.4,1) both numpop}.streak .num.draining{color:#e9b0b0;animation:.4s ease-out infinite alternate drain}.meta{letter-spacing:.1em;opacity:.5;margin-top:4px;font-size:11px}.flash{pointer-events:none;opacity:0;background:radial-gradient(at 50% 45%,#fff6dc38,#fff6dc00 60%);position:absolute;inset:0}.flash.on{animation:.32s ease-out both flash}.mute{left:16px;top:calc(12px + env(safe-area-inset-top));pointer-events:auto;color:#e9e6dc;opacity:.7;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;place-items:center;width:36px;height:36px;font-size:16px;line-height:1;display:grid;position:absolute}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.85)}to{opacity:1;transform:none}}@keyframes numpop{0%{color:#fff;transform:scale(1.45)}to{transform:none}}@keyframes drain{0%{transform:translate(0)}to{transform:translate(-1.5px)}}@keyframes flash{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.streak .num.pop,.streak .num.draining,.flash.on{animation:none}}.hud.hidden{opacity:0;transition:opacity .25s}.drain{pointer-events:none;opacity:0;color:#f4f1e8;font-variant-numeric:tabular-nums;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;transition:opacity .3s;position:absolute;inset:0}.drain.on{opacity:1}.drain-anchor{will-change:transform;flex-direction:column;align-items:center;display:flex;position:absolute;top:0;left:0}.drain.on .drain-anchor>*{animation:.5s cubic-bezier(.2,1.2,.3,1) both grow}.drain-label{letter-spacing:.3em;opacity:.7;white-space:nowrap;font-size:14px}.drain-num{text-shadow:0 0 40px #fff6dc59;font-size:clamp(120px,40vw,240px);font-weight:800;line-height:1}.drain-num.jolt{animation:.18s ease-out both jolt}.chopstage{pointer-events:none;opacity:0;transition:opacity .35s;position:absolute;inset:0}.chopstage.enter,.chopstage.walk,.chopstage.raise,.chopstage.hit,.chopstage.fall,.chopstage.black{opacity:1}.chop-back{opacity:0;background:radial-gradient(54% 26% at 52% 52%,#ffe4b857,#ffc07a14 56%,#0000 76%),radial-gradient(90% 40% at 50% 74%,#ffd29612,#0000 70%);transition:opacity .5s;position:absolute;inset:0}.chopstage.enter .chop-back,.chopstage.walk .chop-back,.chopstage.raise .chop-back,.chopstage.hit .chop-back,.chopstage.fall .chop-back{opacity:1}.chop-svg{width:100%;height:100%;position:absolute;inset:0}.fig-main{fill:#0a0a10;filter:blur(.7px)}.fig-rim{fill:#ffd6a2;opacity:.62;filter:blur(1.5px);transform:translate(.5px,-3.6px)}.fig-main .slotmachine{fill:#13131b;filter:blur(1.1px)}.fig-rim .slotmachine{opacity:.6}.ground-shadows{fill:#000;opacity:0;filter:blur(7px);transition:opacity .5s}.chopstage.enter .ground-shadows,.chopstage.walk .ground-shadows,.chopstage.raise .ground-shadows,.chopstage.hit .ground-shadows,.chopstage.fall .ground-shadows{opacity:.55}.gs-thrower{transition:transform .9s cubic-bezier(.35,0,.35,1)}.chopstage.slot.enter .gs-thrower{transform:translate(190px)}.chopstage.slot.walk .gs-thrower,.chopstage.slot.raise .gs-thrower,.chopstage.slot.hit .gs-thrower,.chopstage.slot.fall .gs-thrower,.chopstage.slot.black .gs-thrower,.chopstage.slot.raise .gs-chopper,.chopstage.slot.hit .gs-chopper,.chopstage.slot.fall .gs-chopper,.chopstage.slot.black .gs-chopper{transform:translate(-8px)}.chopstage.table .gs-slot{display:none}.dust circle{fill:#ffe6bf;opacity:0}.chopstage.enter .dust circle,.chopstage.walk .dust circle,.chopstage.raise .dust circle,.chopstage.hit .dust circle,.chopstage.fall .dust circle{animation:7s ease-in-out infinite dustdrift}@keyframes dustdrift{0%{opacity:0;transform:translate(0)}25%{opacity:.5}60%{opacity:.32}to{opacity:0;transform:translate(16px,-34px)}}.th-hair{transform-origin:330px 700px;transition:transform .75s cubic-bezier(.2,.7,.3,1) 60ms}.ch-curls{transform-origin:440px 820px;transition:transform .7s cubic-bezier(.2,.7,.3,1) 70ms}.ch-skirt{transform-origin:444px 958px;transition:transform .7s cubic-bezier(.2,.7,.3,1) 70ms}.chopstage.slot.walk .th-hair{transform:rotate(7deg)}.chopstage.hit .th-hair{transition:transform .16s ease-out .11s;transform:rotate(-13deg)translateY(4px)}.chopstage.fall .th-hair,.chopstage.black .th-hair{transform:rotate(-22deg)}.chopstage.raise .ch-curls,.chopstage.raise .ch-skirt{transform:rotate(3deg)}.chopstage.hit .ch-curls{transition:transform .2s ease-out .13s;transform:rotate(-7deg)}.chopstage.hit .ch-skirt,.chopstage.fall .ch-skirt{transition:transform .24s ease-out .13s;transform:rotate(-3deg)scaleY(1.03)}.chop-floor{fill:#0a0a0e}.fig-rim .chop-floor,.fig-main .chop-floor{filter:none}.thrower{transform-origin:332px 1180px;opacity:0;transition:transform .5s ease-out,opacity .4s;transform:translate(96px)}.chopstage.enter .thrower{opacity:1;transform:none}.chopstage.raise .thrower{opacity:1}.chopstage.hit .thrower{opacity:1;transition:transform .12s ease-out;transform:translate(-12px,8px)rotate(-3deg)}.th-body,.th-head{transform-origin:332px 1180px;transition:transform .8s cubic-bezier(.5,0,.8,.45)}.th-head{transform-origin:332px 690px}.chopstage.fall .thrower,.chopstage.black .thrower{opacity:1;transition:transform .8s cubic-bezier(.5,0,.8,.45);transform:translate(-16px)rotate(-5deg)}.chopstage.fall .th-body,.chopstage.black .th-body{transform:scale(1.04,.34)}.chopstage.fall .th-head,.chopstage.black .th-head{transform:translate(-36px,352px)rotate(-44deg)}.th-arm{transform-origin:320px 782px;transition:transform .5s ease-out;transform:rotate(-80deg)}.th-fore{transform-origin:274px 806px;transition:transform .5s ease-out;transform:rotate(22deg)}.chopstage.table.enter .th-arm,.chopstage.table.raise .th-arm,.chopstage.table.hit .th-arm{transform:rotate(-48deg)}.chopstage.table.enter .th-fore,.chopstage.table.raise .th-fore,.chopstage.table.hit .th-fore{transform:rotate(12deg)}.chopper{opacity:0;transition:transform .45s ease-out,opacity .35s;transform:translate(110px)}.chopstage.raise .chopper,.chopstage.hit .chopper,.chopstage.fall .chopper,.chopstage.black .chopper{opacity:1;transform:none}.chopper-arm{transform-origin:442px 890px;transform:rotate(22deg)}.chopper-fore{transform-origin:424px 806px;transform:rotate(58deg)}.chopstage.raise .chopper-arm{transition:transform .4s cubic-bezier(.3,0,.5,1);transform:rotate(10deg)}.chopstage.raise .chopper-fore{transition:transform .4s cubic-bezier(.3,0,.5,1);transform:rotate(66deg)}.chopstage.hit .chopper-arm,.chopstage.fall .chopper-arm,.chopstage.black .chopper-arm,.chopstage.hit .chopper-fore,.chopstage.fall .chopper-fore,.chopstage.black .chopper-fore{transition:transform .1s cubic-bezier(.5,0,1,1);transform:rotate(0)}.chop-impact{transform-origin:352px 742px;opacity:0;fill:none;stroke:#fff;stroke-linecap:round}.impact-ring{stroke-width:7px}.impact-rays path{stroke-width:6px}.chopstage.hit .chop-impact{animation:.3s ease-out .11s both impact}.chopstage.hit .chop-svg{animation:.16s ease-out .11s both framebump}@keyframes framebump{0%{transform:translate(0)}30%{transform:translate(-5px,4px)}65%{transform:translate(3px,-2px)}to{transform:translate(0)}}@keyframes impact{0%{opacity:1;transform:scale(.25)}55%{opacity:.95;transform:scale(1.15)}to{opacity:0;transform:scale(1.5)}}.chop-black{opacity:0;background:#000;transition:opacity .5s;position:absolute;inset:0}.chopstage.black .chop-black{opacity:1}.locked{flex-direction:column;align-items:center;gap:6px;animation:.5s cubic-bezier(.2,1.2,.3,1) both pop;display:flex}.locked-title{letter-spacing:.16em;color:#e9b0b0;margin:0;font-size:17px}.locked-time{color:#f4f1e8;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(44px,14vw,72px);font-weight:800;line-height:1}.flash.white{background:#fff}.flash.white.on{animation:.28s ease-out both flash}.flash.red{background:radial-gradient(#ff3c28bf,#ff3c2826 70%)}.flash.red.on{animation:.7s ease-out both flash}@keyframes jolt{0%{transform:translate(0)scale(1.06)}40%{transform:translate(-6px,2px)scale(1.02)}to{transform:none}}@keyframes grow{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}.lab{left:12px;right:12px;bottom:calc(96px + env(safe-area-inset-bottom));pointer-events:auto;-webkit-backdrop-filter:blur(10px);background:#141418b8;border:1px solid #ffffff1a;border-radius:14px;flex-direction:column;gap:8px;padding:10px 12px;display:flex;position:absolute}.lab-row{align-items:center;gap:8px;display:flex}.lab-row input[type=range]{flex:1}.lab-label,.lab-val{letter-spacing:.1em;opacity:.8;min-width:2.2em;font-size:12px}.lab button{color:#e9e6dc;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff24;border-radius:10px;flex:1;padding:9px 6px;font-size:13px}.lab button.kyo{color:#ffb3b3;background:#e33b3f1f;border-color:#e33b3f66}@keyframes chopline{0%{opacity:1;transform:scaleX(.15)rotate(-7deg)}35%{opacity:1;transform:scaleX(1)rotate(-7deg)}to{opacity:0;transform:scaleX(1)rotate(-7deg)}}@media (prefers-reduced-motion:reduce){.chopstage *{transition-duration:.2s!important}}.slotmachine{opacity:0;transition:opacity .5s}.chopstage.table .slotmachine{display:none}.chopstage.slot.enter .slotmachine,.chopstage.slot.walk .slotmachine,.chopstage.slot.raise .slotmachine,.chopstage.slot.hit .slotmachine,.chopstage.slot.fall .slotmachine,.chopstage.slot.black .slotmachine{opacity:1}.slot-reels rect{fill:#f6e2b4;opacity:.5}.slot-lamp rect{fill:#ffd9a0;opacity:.35}.chopstage.slot.walk .slot-lamp rect,.chopstage.slot.raise .slot-lamp rect{animation:.7s steps(2,end) infinite reelblink}.reel-mark{fill:#2a2118;opacity:.85}.reel-band{transform:translateY(0)}.chopstage.slot.enter .band0,.chopstage.slot.walk .band0,.chopstage.slot.raise .band0{animation:.34s linear infinite reelspin}.chopstage.slot.enter .band1,.chopstage.slot.walk .band1{animation:.28s linear infinite reelspin}.chopstage.slot.enter .band2,.chopstage.slot.walk .band2{animation:.22s linear infinite reelspin}@keyframes reelspin{0%{transform:translateY(0)}to{transform:translateY(-38px)}}.chopstage.slot.enter .thrower{opacity:1;transition:opacity .4s;transform:translate(190px)}.chopstage.slot.walk .thrower,.chopstage.slot.raise .thrower{opacity:1;transition:transform 1.25s cubic-bezier(.35,0,.35,1);transform:translate(0)}.chopstage.slot.hit .thrower{transition:transform .12s ease-out;transform:translate(-10px,8px)rotate(-3deg)}.legs path{transform-origin:332px 900px}.chopstage.slot.raise .chopper,.chopstage.slot.hit .chopper,.chopstage.slot.fall .chopper,.chopstage.slot.black .chopper{transform:translate(-8px)}.chopstage.slot.hit .chop-impact{animation:.3s ease-out .11s both impactslot}@keyframes impactslot{0%{opacity:1;transform:translate(-8px)scale(.25)}55%{opacity:.95;transform:translate(-8px)scale(1.15)}to{opacity:0;transform:translate(-8px)scale(1.5)}}.chopstage.slot.walk .thrower .leg-a{animation:.62s ease-in-out 2 stepa}.chopstage.slot.walk .thrower .leg-b{animation:.62s ease-in-out 2 stepb}.chopstage.slot.walk .th-arm{transition:transform .5s ease-out;transform:rotate(-54deg)}.chopstage.slot.raise .th-arm,.chopstage.slot.hit .th-arm{transition:transform .45s cubic-bezier(.3,0,.3,1);transform:rotate(-2deg)}.chopstage.slot.raise .th-fore,.chopstage.slot.hit .th-fore{transition:transform .45s cubic-bezier(.3,0,.3,1);transform:rotate(0)}@keyframes stepa{0%,to{transform:rotate(-15deg)}50%{transform:rotate(15deg)}}@keyframes stepb{0%,to{transform:rotate(15deg)}50%{transform:rotate(-15deg)}}@keyframes reelblink{0%{opacity:.22}to{opacity:.68}}.hero-gon .head-killua,.hero-gon .sleeve-killua,.hero-killua .head-gon,.hero-killua .sleeve-gon{display:none}.snipestage{pointer-events:none;opacity:0;transition:opacity .35s;position:absolute;inset:0}.snipestage.enter,.snipestage.aim1,.snipestage.hit1,.snipestage.aim2,.snipestage.hit2,.snipestage.aim3,.snipestage.hit3,.snipestage.after,.snipestage.black{opacity:1}.snipestage .chop-back{opacity:0;transition:opacity .5s}.snipestage.enter .chop-back,.snipestage.aim1 .chop-back,.snipestage.hit1 .chop-back,.snipestage.aim2 .chop-back,.snipestage.hit2 .chop-back,.snipestage.aim3 .chop-back,.snipestage.hit3 .chop-back,.snipestage.after .chop-back{opacity:1}.sn{opacity:0;transition:transform .5s ease-out,opacity .45s;transform:translateY(26px)}.snipestage.enter .sn,.snipestage.aim1 .sn,.snipestage.hit1 .sn,.snipestage.aim2 .sn,.snipestage.hit2 .sn,.snipestage.aim3 .sn,.snipestage.hit3 .sn,.snipestage.after .sn,.snipestage.black .sn{opacity:1;transform:none}.sn-b{transition-delay:80ms}.sn-c{transition-delay:.16s}.sn-body,.sn-head{transition:transform .75s cubic-bezier(.5,0,.8,.45)}.sn-a .sn-body{transform-origin:134px 1180px}.sn-a .sn-head{transform-origin:140px 748px}.sn-b .sn-body{transform-origin:318px 1180px}.sn-b .sn-head{transform-origin:318px 734px}.sn-c .sn-body{transform-origin:508px 1180px}.sn-c .sn-head{transform-origin:512px 756px}.snipestage.hit1 .sn-a .sn-body,.snipestage.aim2 .sn-a .sn-body,.snipestage.hit2 .sn-a .sn-body,.snipestage.aim3 .sn-a .sn-body,.snipestage.hit3 .sn-a .sn-body,.snipestage.after .sn-a .sn-body,.snipestage.black .sn-a .sn-body{transform:scale(1.05,.3)}.snipestage.hit1 .sn-a .sn-head,.snipestage.aim2 .sn-a .sn-head,.snipestage.hit2 .sn-a .sn-head,.snipestage.aim3 .sn-a .sn-head,.snipestage.hit3 .sn-a .sn-head,.snipestage.after .sn-a .sn-head,.snipestage.black .sn-a .sn-head{transform:translate(-40px,356px)rotate(-52deg)}.snipestage.hit2 .sn-b .sn-body,.snipestage.aim3 .sn-b .sn-body,.snipestage.hit3 .sn-b .sn-body,.snipestage.after .sn-b .sn-body,.snipestage.black .sn-b .sn-body{transform:scale(1.05,.3)}.snipestage.hit2 .sn-b .sn-head,.snipestage.aim3 .sn-b .sn-head,.snipestage.hit3 .sn-b .sn-head,.snipestage.after .sn-b .sn-head,.snipestage.black .sn-b .sn-head{transform:translate(44px,372px)rotate(58deg)}.snipestage.hit3 .sn-c .sn-body,.snipestage.after .sn-c .sn-body,.snipestage.black .sn-c .sn-body{transform:scale(1.05,.3)}.snipestage.hit3 .sn-c .sn-head,.snipestage.after .sn-c .sn-head,.snipestage.black .sn-c .sn-head{transform:translate(-36px,350px)rotate(-46deg)}.sight{fill:none;stroke:#ff3b30;stroke-width:3px;stroke-linecap:round;opacity:0}.snipestage.aim1 .sight-a,.snipestage.aim2 .sight-b,.snipestage.aim3 .sight-c{animation:.33s ease-out both sightlock}@keyframes sightlock{0%{opacity:0;transform:scale(2.4)}60%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}.sight-a{transform-origin:134px 880px}.sight-b{transform-origin:318px 864px}.sight-c{transform-origin:508px 884px}.snipe-impact{fill:none;stroke:#fff;stroke-width:6px;opacity:0}.si-a{transform-origin:134px 880px}.si-b{transform-origin:318px 864px}.si-c{transform-origin:508px 884px}.snipestage.hit1 .si-a,.snipestage.hit2 .si-b,.snipestage.hit3 .si-c{animation:.28s ease-out both impact}.sn-shadows{opacity:0;transition:opacity .5s}.snipestage.enter .sn-shadows,.snipestage.aim1 .sn-shadows,.snipestage.hit1 .sn-shadows,.snipestage.aim2 .sn-shadows,.snipestage.hit2 .sn-shadows,.snipestage.aim3 .sn-shadows,.snipestage.hit3 .sn-shadows,.snipestage.after .sn-shadows{opacity:.55}.snipestage .chop-black{opacity:0;transition:opacity .5s}.snipestage.black .chop-black{opacity:1}
