:root{--fg: #fff6e6;--dim: rgba(255,246,230,.7);--gold: #ffcf3f;--red: #ff4d3d;--pink: #7a3d12;--sign: #c8281e;--panel: rgba(18,11,5,.82);--font: -apple-system, "Helvetica Neue", "Segoe UI", Arial, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:#000;color:var(--fg);font-family:var(--font);user-select:none;-webkit-user-select:none}.hidden{display:none!important}#stage{position:fixed;inset:0;width:100%;overflow:hidden;background:#000;container-type:size;touch-action:none}canvas#c{position:absolute;inset:0;width:100%;height:100%;display:block}button{font-family:var(--font);cursor:pointer}#bubbles,#pops{position:absolute;inset:0;pointer-events:none;z-index:4}.bubble{position:absolute;left:0;top:0;max-width:60cqw;background:#fff;color:#1b1b1b;padding:6px 10px 7px;border-radius:13px;font-weight:800;font-size:13px;line-height:1.3;box-shadow:0 4px 12px #00000059}.bubble:after{content:"";position:absolute;left:50%;bottom:-7px;margin-left:-7px;border:7px solid transparent;border-top-color:#fff;border-bottom:0}.bubble b{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.bubble.pop{animation:pop .25s cubic-bezier(.2,1.6,.4,1)}@keyframes pop{0%{scale:.4}}.fx{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;text-align:center;font:900 22px/1.05 var(--font);color:var(--gold);-webkit-text-stroke:1.5px #5a2a00;text-shadow:0 3px 0 #5a2a00;animation:fxUp 1.2s ease-out forwards}.fx.bad{color:#ff6a5a}.fx.dog{color:#ffb86b;font-size:18px}@keyframes fxUp{0%{opacity:0;scale:1.8}12%{opacity:1;scale:1}75%{opacity:1}to{opacity:0;translate:0 -40px}}#banner{position:absolute;left:50%;top:24%;transform:translate(-50%) rotate(-3deg);z-index:8;pointer-events:none;text-align:center;white-space:nowrap;background:var(--sign);border:4px solid #ffd23a;border-radius:4px;padding:8px 18px;font:900 28px/1.1 var(--font);color:#ffe14a;-webkit-text-stroke:1.5px #5a0a00;text-shadow:0 3px 0 #5a0a00;box-shadow:0 8px 24px #0006;animation:bannerIn .35s cubic-bezier(.2,1.6,.4,1)}#banner small{display:block;font-size:14px;color:#fff;-webkit-text-stroke:0;text-shadow:none}#banner.mega{font-size:54px;background:none;border:0;box-shadow:none;color:#ffe14a;-webkit-text-stroke:3px #5a2a00;text-shadow:0 6px 0 #5a2a00;top:38%}@keyframes bannerIn{0%{transform:translate(-50%) scale(2.2);opacity:0}}#hud{position:absolute;inset:0;z-index:5;pointer-events:none}#score{position:absolute;top:10px;left:10px;font:900 22px var(--font);color:var(--gold);-webkit-text-stroke:1px #5a2a00;text-shadow:0 2px 0 #5a2a00}#score small{font-size:18px;margin-right:6px}#combo{position:absolute;top:46px;left:50%;transform:translate(-50%);font:900 30px var(--font);color:#fff;background:#c8281e;border-radius:6px;padding:2px 16px;-webkit-text-stroke:1.5px #5a2a00;box-shadow:0 0 0 3px #5a2a00}#combo em{font-style:normal;font-size:20px;color:#fff}#combo.bump{animation:pop .3s cubic-bezier(.2,1.8,.4,1)}#phut{pointer-events:auto;position:absolute;right:14px;bottom:26px;width:140px;height:140px;border-radius:50%;border:5px solid #fff;background:radial-gradient(circle at 40% 35%,#b5733a,#6b3a14);color:#fff;display:grid;place-content:center;gap:2px;box-shadow:0 8px 22px #00000080;text-shadow:0 2px 0 rgba(0,0,0,.4);touch-action:none;animation:hot .5s infinite alternate}#phut b{font:900 25px/1 var(--font)}#phut small{font:800 10px var(--font);opacity:.9}@keyframes hot{to{transform:scale(1.05)}}#tip{position:absolute;left:50%;bottom:20%;transform:translate(-50%);background:var(--panel);border:2px solid var(--gold);border-radius:20px;padding:8px 14px;font:900 14px var(--font);white-space:nowrap}#stick{pointer-events:auto;position:absolute;left:18px;bottom:30px;width:130px;height:130px;border-radius:50%;background:#ffffff29;border:3px solid rgba(255,255,255,.45);display:grid;place-items:center;touch-action:none}#stick i{width:54px;height:54px;border-radius:50%;background:#ffffffbf;box-shadow:0 2px 8px #0006}#jump{pointer-events:auto;position:absolute;right:18px;bottom:34px;width:112px;height:112px;border-radius:50%;border:4px solid #fff;background:radial-gradient(circle at 40% 35%,#ffd85a,#e88a1a);color:#3a1c00;display:grid;place-content:center;font:900 20px var(--font);box-shadow:0 6px 18px #00000073;touch-action:none}#jump small{font:800 10px var(--font)}#jump:active{transform:scale(.92)}#hp{position:absolute;left:50%;bottom:8px;transform:translate(-50%);width:min(62cqw,300px);display:flex;align-items:center;gap:6px}#hp .ic{font-size:24px}#hp .bar{flex:1;height:16px;border-radius:8px;background:#5a0f2a;border:3px solid #3a0018;overflow:hidden}#hp .bar i{display:block;height:100%;width:100%;background:linear-gradient(180deg,#ffe85a,#f2b81a);transition:width .15s}#hp b{font:900 16px var(--font);color:#fff;text-shadow:0 2px 2px #000;min-width:32px}#hp.low .bar i{background:var(--red)}body.rolling #hp{bottom:172px}#menu{position:absolute;inset:0;z-index:10;pointer-events:none}#menu>*{pointer-events:auto}#menuTitle{position:absolute;top:12px;left:50%;transform:translate(-50%);background:var(--sign);border:4px solid #ffd23a;border-radius:4px;padding:6px 16px;font:900 22px var(--font);color:#ffe14a;-webkit-text-stroke:1px #5a0a00;white-space:nowrap}#goals{position:absolute;top:66px;left:10px;width:52%;background:#fff3a8;color:#3a2a00;border-radius:2px;padding:8px 10px;font:800 12px/1.5 var(--font);box-shadow:0 6px 14px #00000059;transform:rotate(-1.5deg)}#goals b{color:#c8281e;font-size:13px}#goals .g.done{color:#2f8a2a;text-decoration:line-through}#foodInfo{position:absolute;left:10px;right:10px;bottom:236px;background:#1e0a14e6;border:3px solid #ffd23a;border-radius:14px;padding:9px 12px;font:700 13px/1.4 var(--font)}#foodInfo b{display:block;font:900 20px var(--font);color:#ffe14a}#foodInfo .tag{display:inline-block;font:900 11px var(--font);padding:2px 8px;border-radius:8px;background:var(--gold);color:#2a1300;margin:2px 0 4px}#tray{position:absolute;left:8px;right:8px;bottom:120px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:radial-gradient(circle at 50% 40%,#f2f4f6,#b9c0c7);border:4px solid #8a939b;border-radius:40px;padding:10px 14px;box-shadow:inset 0 0 0 3px #ffffffb3,0 6px 14px #00000059}#tray button{border:3px solid transparent;background:#fff2e0;border-radius:12px;padding:6px 0 4px;display:grid;justify-items:center;font:900 10px var(--font);color:#5a2a00}#tray button span{font-size:30px;line-height:1.1}#tray button.on{border-color:#ffe14a;background:#fff;box-shadow:0 0 0 3px #5a2a00,0 0 18px #ffdc3ce6;transform:translateY(-4px)}#goBtn{position:absolute;left:50%;bottom:40px;transform:translate(-50%);font-size:22px;padding:16px 30px;background:linear-gradient(180deg,#ffe14a,#f2a81a);box-shadow:0 0 0 4px #5a2a00,0 8px 20px #0006}#charBtn{position:absolute;top:66px;right:10px;border:0;border-radius:12px;background:var(--panel);color:#fff;font:800 12px var(--font);padding:8px 10px}.ov{position:absolute;inset:0;z-index:20;display:grid;place-items:center;background:#0a0602b8;backdrop-filter:blur(3px);overflow:auto}.box{text-align:center;padding:22px 18px;max-width:420px;width:100%}.box.wide{max-width:520px}#pickChar h1{margin:0;font:900 clamp(64px,26cqw,120px)/.9 var(--font);color:var(--gold);text-shadow:0 6px 0 #6b3d00,0 0 30px rgba(255,180,40,.4);transform:rotate(-4deg)}#pickChar .sub{font:900 17px var(--font);margin:14px 0 22px}#loading{font-size:13px;color:var(--dim);margin-bottom:12px}h2{margin:0 0 10px;font:900 26px var(--font);color:var(--gold)}.big{border:0;background:var(--gold);color:#1b1203;font:900 17px var(--font);letter-spacing:.04em;padding:15px 24px;border-radius:14px;min-width:200px}.big:disabled{opacity:.4}.note{margin:20px auto 0;font-size:12px;line-height:1.5;color:var(--dim);border:1px solid rgba(255,207,63,.35);padding:10px 12px;background:#00000059;border-radius:8px}.note b{background:var(--red);color:#fff;padding:0 6px;margin-right:6px;border-radius:3px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.card{border:3px solid var(--c, rgba(255,255,255,.18));background:#1e140aeb;color:var(--fg);border-radius:16px;padding:12px 10px;text-align:left;display:grid;gap:4px;align-content:start}.card:active{transform:scale(.96)}.card .em{font-size:34px;line-height:1}.card b{font:900 17px var(--font)}.card .ln{font-style:italic;font-size:12.5px}#results .rank{font:900 28px var(--font);color:var(--gold);margin:6px 0 2px}#results .big-score{font:900 54px/1.1 var(--font)}#results .why{letter-spacing:.2em;color:var(--dim);font-weight:800}.stats{margin:10px auto 18px;border-collapse:collapse}.stats td{padding:3px 10px;font-weight:800;text-align:left}.stats td:first-child{color:var(--dim);font-size:13px}#flash{position:absolute;inset:0;z-index:15;pointer-events:none;background:#fff;opacity:0}#flash.go{animation:fl .35s ease-out}@keyframes fl{0%{opacity:.8}to{opacity:0}}@container (max-height: 700px){#tray button span{font-size:24px}#foodInfo{bottom:214px}#tray{bottom:104px}#goBtn{bottom:28px}#stick{width:112px;height:112px}#jump{width:98px;height:98px}body.rolling #hp{bottom:150px}}@media(min-aspect-ratio:1/1){#stage{inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(100vw,calc(100vh * 16 / 9));height:min(100vh,56.25vw)}}@container (orientation: landscape){#score{font-size:18px;top:8px;left:12px}#combo{top:10px;font-size:22px;padding:1px 12px}#combo em{font-size:15px}#banner{font-size:22px;top:18%}#banner.mega{font-size:42px;top:30%}#phut{width:104px;height:104px;right:18px;bottom:18px}#phut b{font-size:19px}#phut small{display:none}#tip{bottom:9%;font-size:13px}#hp{width:min(34cqw,320px)}body.rolling #hp{bottom:14px}#stick{left:22px;bottom:18px;width:108px;height:108px}#jump{right:22px;bottom:20px;width:92px;height:92px}.fx{font-size:18px}.bubble{font-size:12px;max-width:28cqw}#menuTitle{font-size:18px;top:10px;padding:4px 14px}#goals{top:54px;left:14px;width:250px;font-size:11px}#foodInfo{inset:54px 14px auto auto;width:330px;max-width:none;margin:0;font-size:12px}#foodInfo b{font-size:17px}#tray{left:auto;right:14px;bottom:76px;width:330px;max-width:none;margin:0}#tray button span{font-size:24px}#goBtn{left:auto;right:14px;bottom:16px;transform:none;width:330px;min-width:0;font-size:18px;padding:12px}#charBtn{inset:auto auto 16px 14px}.box{max-width:380px;padding:14px}#pickChar h1{font-size:84px}#results .big-score{font-size:40px}}body:not(.touch) #stick,body:not(.touch) #jump{display:none!important}body:not(.touch).rolling #hp{bottom:22px}#phut svg{position:absolute;inset:-9px;width:calc(100% + 18px);height:calc(100% + 18px);transform:rotate(-90deg);pointer-events:none}#phut circle{fill:none;stroke-width:7}#phut .trk{stroke:#00000073}#phut .zone{stroke:#ffd23a;stroke-dasharray:49.8 276.5;stroke-dashoffset:-199.1}#phut .fill{stroke:#fff;stroke-dasharray:276.5;stroke-dashoffset:276.5;stroke-linecap:round}#phut.inzone{box-shadow:0 0 0 4px #ffd23a,0 0 30px #ffd23af2}#phut.inzone .fill{stroke:#ffd23a}#phut{animation:none;position:absolute}#hp .ic{display:grid;justify-items:center;line-height:1}#hp .ic em{font:900 8px var(--font);font-style:normal;color:#fff;text-shadow:0 1px 2px #000}#combo{white-space:nowrap;font-size:22px;padding:3px 12px}#combo em{font-size:15px}.card.last{box-shadow:0 0 0 3px #ffd23a,0 0 18px #ffd23a99}.card.last:after{content:"l\1ea7n tr\1b0\1edb c";justify-self:start;font:900 10px var(--font);color:#2a1300;background:#ffd23a;border-radius:6px;padding:1px 6px}#pickChar h1{font-size:clamp(54px,18cqw,96px)}#pickChar .sub{margin:8px 0 16px}#pickChar .note{margin-top:14px}#lbBtn{position:absolute;top:112px;right:10px;border:0;border-radius:12px;background:var(--sign);color:#ffe14a;font:900 13px var(--font);padding:8px 12px;box-shadow:0 0 0 2px #ffd23a}.nm{display:flex;gap:6px;margin:0 auto 10px;max-width:320px}.nm input{flex:1;min-width:0;border:2px solid #ffd23a;border-radius:10px;background:#00000080;color:#fff;font:800 15px var(--font);padding:8px 10px;outline:none}.nm button{border:0;border-radius:10px;background:#ffd23a;color:#2a1300;font:900 12px var(--font);padding:0 12px}.lbw{max-width:340px;margin:0 auto 14px;background:#00000073;border-radius:12px;padding:8px 10px;text-align:left}.lbw .tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}.lbw .tabs button{border:0;border-radius:8px;background:#ffffff1f;color:#fff;font:800 12px var(--font);padding:6px 0}.lbw .tabs button.on{background:#ffd23a;color:#2a1300}.lbw ol{margin:0;padding:0;list-style:none;max-height:34cqh;overflow:auto}.lbw li{display:grid;grid-template-columns:26px 1fr auto;gap:6px;align-items:center;font:700 13px/1.9 var(--font);border-bottom:1px solid rgba(255,255,255,.08)}.lbw li b{color:#ffd23a;text-align:right}.lbw li .s{font-weight:900}.lbw li small{color:var(--dim);font-size:11px;margin-left:4px}.lbw li.me{background:#ffd23a2e;border-radius:6px}.lbw .msg{color:var(--dim);font:700 12px var(--font);text-align:center;padding:6px 0}.lbw .mine{text-align:center;font:900 13px var(--font);color:#ffd23a;margin-top:6px}@container (orientation: landscape){#lbBtn{inset:auto auto 16px 120px}.lbw ol{max-height:30cqh}}#modeBtn{position:absolute;top:158px;right:10px;border:0;border-radius:12px;background:#2a62c9;color:#fff;font:900 13px var(--font);padding:9px 12px;box-shadow:0 0 0 2px #fff}#roundInfo{position:absolute;left:50%;bottom:36px;transform:translate(-50%);width:min(92cqw,420px);white-space:pre-line;text-align:center;background:#2a62c9;color:#fff;border:3px solid #fff;border-radius:14px;padding:10px 12px;font:900 15px/1.35 var(--font);box-shadow:0 6px 18px #0006}#net{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:11;background:#2a62c9eb;color:#fff;border-radius:14px;padding:4px 10px;font:800 11px var(--font);white-space:nowrap;pointer-events:none}#feed{position:absolute;left:10px;top:40px;z-index:6;display:grid;gap:3px;pointer-events:none;max-width:70cqw}#feed div{background:#0009;color:#fff;border-radius:8px;padding:3px 8px;font:700 12px var(--font);animation:pop .25s}#feed b{color:#ffd23a}#tags{position:absolute;inset:0;z-index:4;pointer-events:none}#tags .tag{position:absolute;left:0;top:0;background:#2a62c9d9;color:#fff;font:800 11px var(--font);padding:2px 6px;border-radius:6px;white-space:nowrap}#roundRes .box{max-width:380px}#roundRes .lbw li.me{background:#ffd23a40}@container (orientation: landscape){#modeBtn{inset:auto auto 16px 210px}#roundInfo{bottom:90px;left:auto;right:14px;transform:none;width:330px;font-size:13px}}
