@font-face{font-family:Sora;src:url(../fonts/Sora-VF.subset.woff2)format("woff2");font-weight:100 800;font-display:swap}@font-face{font-family:Figtree;src:url(../fonts/Figtree-VF.subset.woff2)format("woff2");font-weight:300 900;font-display:swap}@font-face{font-family:Noto Sans SC;src:url(../fonts/NotoSansSC-VF.subset.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--ink:#1d1640;--ink-2:#2c2360;--ink-3:#463a8c;--cream:#fff7e8;--gold:#ffd23f;--gold-2:#ffa41b;--pink:#ff4f7b;--cyan:#45d6ff;--green:#5ee27a;--red:#ff3b4d;--display:"Sora", "Noto Sans SC", system-ui, sans-serif;--body:"Figtree", "Noto Sans SC", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--pad:clamp(10px, 1.6vw, 22px)}:lang(zh-CN){--display:"Noto Sans SC", "Sora", system-ui, sans-serif;--body:"Noto Sans SC", "Figtree", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#6fc3ff;margin:0;overflow:hidden}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;font-weight:700;position:fixed;inset:0}button,input{font:inherit;color:inherit}svg{fill:currentColor;flex:none;width:1.1em;height:1.1em}.hidden{display:none!important}.logo,.timer,.me-card b,.popup,.banner,h2,.r-score b,.btn-play>span,.combo b,.me-place{font-family:var(--display);paint-order:stroke fill;-webkit-text-stroke:.14em var(--ink);letter-spacing:.01em}[data-screen],.modal{opacity:0;visibility:hidden;transition:opacity .22s,visibility 0s linear .22s;position:absolute;inset:0}[data-screen].active,.modal.active{opacity:1;visibility:visible;transition:opacity .22s}[data-screen].active :is(button,input,a,label),.modal.active :is(button,input,a,label,.panel){pointer-events:auto}.modal{z-index:20;background:#1d16408c;place-items:center;display:grid}.modal.active{pointer-events:auto}.modal-open :is(.results-panel,.title-main,.pause .panel){visibility:hidden}.panel{background:var(--cream);border:5px solid var(--ink);box-shadow:0 9px 0 var(--ink), inset 0 -6px 0 #1d164014;border-radius:26px;flex-direction:column;align-items:stretch;gap:10px;width:min(92vw,440px);max-height:calc(100vh - 28px);padding:clamp(14px,2.4vw,26px);display:flex;position:relative;overflow:auto}h2{text-align:center;color:#fff;text-shadow:0 5px 0 var(--ink);margin:0 0 4px;font-size:clamp(28px,4.6vw,44px);font-weight:900}.btn{font-family:var(--display);color:var(--ink);background:linear-gradient(#ffe46b, var(--gold) 55%, var(--gold-2));border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink), inset 0 3px 0 #ffffffb3, inset 0 -4px 0 #0000001f;cursor:pointer;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:18px;font-weight:900;text-decoration:none;transition:transform 60ms,box-shadow 60ms,filter .1s;display:inline-flex;position:relative}.btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn:active{box-shadow:0 1px 0 var(--ink), inset 0 3px 0 #fff9;transform:translateY(5px)}.btn-alt{background:linear-gradient(#8fe9ff, var(--cyan) 55%, #1fa9e0)}.btn-ghost{background:#fff}.btn-small{box-shadow:0 4px 0 var(--ink), inset 0 2px 0 #ffffffb3;border-radius:13px;padding:8px 12px;font-size:15px}.btn-play{background:linear-gradient(#ff8fb0, var(--pink) 55%, #e02a5e);box-shadow:0 8px 0 var(--ink), inset 0 4px 0 #ffffff8c, inset 0 -6px 0 #00000026;border-radius:22px;flex-direction:column;gap:0;padding:12px 44px 10px;font-size:clamp(26px,3.6vw,38px);animation:1.6s ease-in-out infinite bob}.btn-play>span{color:#fff}.btn-play small{font-family:var(--body);color:#fff;opacity:.9;letter-spacing:.04em;font-size:13px;font-weight:800}.icon-btn{width:52px;height:52px;color:var(--ink);border:4px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer;background:linear-gradient(#fff,#ece6ff);border-radius:16px;place-items:center;font-size:24px;display:grid}.icon-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.icon-btn.small{border-radius:13px;width:42px;height:42px;font-size:18px}@keyframes bob{50%{transform:translateY(-3px)}}.chip{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);white-space:nowrap;background:#ffffffeb;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:800;display:inline-flex}.chip-daily{background:var(--gold)}.chip-nick input{width:9.5em;color:var(--ink);-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;padding:0;font-weight:800}.chip-nick input::placeholder{color:#7b70b8}.boot{background:linear-gradient(#6fc3ff,#b9a6ff);place-content:center;justify-items:center;gap:16px;display:grid}.boot .bar{border:4px solid var(--ink);width:min(60vw,320px);height:18px;box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:99px;overflow:hidden}.boot .bar i{background:var(--pink);width:10%;height:100%;transition:width .2s;display:block}.boot p{margin:0;font-weight:800}.title{background:radial-gradient(at 50% 55%,#1d164000 30%,#1d164059 100%)}.title-top{top:calc(var(--safe-t) + var(--pad));right:calc(var(--safe-r) + var(--pad));z-index:2;gap:10px;display:flex;position:absolute}.title-main{flex-direction:column;justify-content:center;align-items:center;gap:clamp(8px,1.6vh,16px);padding:20px;display:flex;position:absolute;inset:0}.logo{-webkit-text-stroke:0;flex-direction:column;align-items:center;line-height:.95;display:flex;transform:rotate(-3deg)}.logo-main{color:#fff;-webkit-text-stroke:.1em var(--ink);paint-order:stroke fill;text-shadow:0 .09em 0 var(--ink);font-size:clamp(54px,9.5vw,116px);font-weight:900;display:flex}.logo-main b{font-weight:900;animation:2.8s ease-in-out infinite hop;display:inline-block}.logo-main b:nth-child(5n+1){color:var(--pink)}.logo-main b:nth-child(5n+2){color:var(--gold);animation-delay:.12s}.logo-main b:nth-child(5n+3){color:var(--cyan);animation-delay:.24s}.logo-main b:nth-child(5n+4){color:var(--green);animation-delay:.36s}.logo-main b:nth-child(5n+5){color:#b07cff;animation-delay:.48s}:lang(en) .logo-main b{margin:0 -.01em}@keyframes hop{0%,70%,to{transform:translateY(0)}80%{transform:translateY(-.08em)rotate(-3deg)}}.logo-en{color:var(--gold);letter-spacing:.3em;-webkit-text-stroke:.2em var(--ink);paint-order:stroke fill;text-shadow:0 4px 0 var(--ink);margin-top:6px;font-size:clamp(18px,2.6vw,30px);font-weight:900}:lang(en) .logo-en{display:none}.logo.small .logo-main{font-size:44px}.tagline{color:#fff;text-shadow:0 3px 0 var(--ink);-webkit-text-stroke:5px var(--ink);paint-order:stroke fill;margin:0;font-size:clamp(15px,1.8vw,20px);font-weight:900}.how{gap:12px;margin:4px 0;padding:0;list-style:none;display:flex}.how li{border:4px solid var(--ink);width:clamp(150px,17vw,200px);box-shadow:0 6px 0 var(--ink);text-align:center;background:#fffffff0;border-radius:18px;flex-direction:column;align-items:center;gap:6px;padding:10px 12px 12px;font-size:14px;line-height:1.25;display:flex}.how li:nth-child(2){transform:translateY(-6px)rotate(1deg)}.how-ico{background-color:#e9e4fb;background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:10px;width:64px;height:44px}.how-1{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 44'%3E%3Crect x='4' y='10' width='22' height='24' rx='4' fill='%23ff4f7b' stroke='%231d1640' stroke-width='3'/%3E%3Cpath d='M26 22 C36 22 40 12 50 12' fill='none' stroke='%23ff8fb0' stroke-width='5' stroke-linecap='round' stroke-dasharray='1 7'/%3E%3Crect x='46' y='6' width='12' height='12' rx='3' fill='%23fff' stroke='%231d1640' stroke-width='3'/%3E%3C/svg%3E")}.how-2{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 44'%3E%3Crect x='4' y='10' width='20' height='24' rx='4' fill='%23ff4f7b' stroke='%231d1640' stroke-width='3'/%3E%3Cpath d='M24 14 H52 V32 H24' fill='%23ffb3c8' stroke='%23ff4f7b' stroke-width='5' stroke-linejoin='round'/%3E%3Cpath d='M36 23 l4 4 l8 -9' fill='none' stroke='%231d1640' stroke-width='3.5' stroke-linecap='round'/%3E%3C/svg%3E")}.how-3{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 44'%3E%3Cpath d='M4 30 H40' stroke='%2345d6ff' stroke-width='6' stroke-linecap='round'/%3E%3Crect x='24' y='6' width='12' height='12' rx='3' fill='%23ff4f7b' stroke='%231d1640' stroke-width='3'/%3E%3Cpath d='M30 18 V26' stroke='%231d1640' stroke-width='3'/%3E%3Cpath d='M44 22 l6 -8 l2 7 l8 -3 l-5 8 l6 4 l-9 1' fill='%23ffd23f' stroke='%231d1640' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E")}.title-meta{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.controls{color:#fff;text-shadow:0 2px 0 var(--ink);-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;text-align:center;margin:0;font-size:13px;font-weight:800}.challenge-card{background:linear-gradient(#fff3b0, var(--gold));border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);border-radius:18px;align-items:center;gap:12px;padding:8px 18px 8px 8px;animation:2.4s ease-in-out infinite wiggle;display:flex}.challenge-card>div:last-child{flex-direction:column;font-size:15px;display:flex}.challenge-card span{font-family:var(--display);font-size:22px;font-weight:900}.cc-flag{background:var(--pink);color:#fff;border:3px solid var(--ink);width:46px;height:46px;font-family:var(--display);border-radius:12px;place-items:center;font-weight:900;display:grid}@keyframes wiggle{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}.hud{pointer-events:none}.hud-left{top:calc(var(--safe-t) + var(--pad));left:calc(var(--safe-l) + var(--pad));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.card{border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);background:#fffffff0;border-radius:18px}.me-card{background:linear-gradient(#fff,#ffe9f0);align-items:center;gap:14px;padding:6px 12px 6px 14px;display:flex}.me-card>div{flex-direction:column;line-height:1;display:flex}.me-card b{color:var(--pink);font-variant-numeric:tabular-nums;font-size:clamp(26px,3.2vw,38px);font-weight:900}.me-score b{color:var(--gold)}.me-card small{letter-spacing:.08em;color:var(--ink-3);margin-top:3px;font-size:11px;font-weight:900}.me-place{color:#fff;background:var(--ink);-webkit-text-stroke:0;border-radius:12px;padding:4px 8px;font-size:22px;font-weight:900}.combo{opacity:0;align-items:center;gap:8px;transition:opacity .15s,transform .2s cubic-bezier(.3,1.8,.5,1);display:flex;transform:scale(.7)}.combo.on{opacity:1;transform:none}.combo b{color:var(--gold);font-size:30px;font-weight:900}.combo i,.target i,.boost i{border:3px solid var(--ink);background:#ffffffd9;border-radius:99px;width:110px;height:12px;display:block;overflow:hidden}.combo u,.target u,.boost u{background:var(--gold);height:100%;text-decoration:none;display:block}.target{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fffffff0;border-radius:14px;flex-direction:column;gap:4px;padding:6px 10px;font-size:13px;display:flex}.target i{width:170px}.target u{background:var(--pink);transition:width .3s}.target.done{background:var(--green)}.best-mini{color:#fff;-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;font-size:13px;font-weight:900}.best-mini:empty{display:none}.best-mini.beaten{color:var(--gold)}.hud-center{top:calc(var(--safe-t) + var(--pad));flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.timer{color:#fff;text-shadow:0 6px 0 var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(38px,5vw,60px);font-weight:900;line-height:1}.timer.warm{color:var(--gold)}.timer.hot{color:var(--red);animation:.5s ease-in-out infinite pulse}@keyframes pulse{50%{transform:scale(1.12)}}.hint{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);opacity:0;white-space:nowrap;background:#fffffff0;border-radius:12px;padding:6px 14px;font-size:15px;font-weight:900;transition:opacity .2s}.hint.show{opacity:1}.hint.danger{background:var(--red);color:#fff;animation:.4s ease-in-out infinite pulse}.hud-right{top:calc(var(--safe-t) + var(--pad));right:calc(var(--safe-r) + var(--pad));flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute}.rivals{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#ffffffe6;border-radius:14px;flex-direction:column;gap:3px;min-width:188px;margin:0;padding:6px 8px;list-style:none;display:flex}.rivals li{grid-template-columns:14px 1fr auto auto;align-items:center;gap:6px;font-size:13px;transition:opacity .2s;display:grid}.rivals li i{border:2px solid var(--ink);border-radius:4px;width:13px;height:13px}.rivals li .nm{text-overflow:ellipsis;white-space:nowrap;max-width:76px;overflow:hidden}.rivals li em{color:var(--ink-3);background:#e9e4fb;border-radius:6px;padding:1px 5px;font-size:10px;font-style:normal;font-weight:900}.rivals li em.p-aggressive{color:#c21d45;background:#ffd6de}.rivals li em.p-greedy{color:#9a6400;background:#fff0b8}.rivals li em.p-timid{color:#0f6e96;background:#d6f3ff}.rivals li b{font-variant-numeric:tabular-nums;text-align:right;min-width:44px}.rivals li.dead{opacity:.45}.rivals li.hunting{color:var(--red)}.rivals li.hunting .nm:after{content:" !";font-weight:900}.feed{flex-direction:column;align-items:flex-end;gap:4px;margin:0;padding:0;list-style:none;display:flex}.feed li{color:#fff;background:#1d1640d1;border-radius:10px;padding:4px 10px;font-size:13px;transition:opacity .6s;animation:.25s cubic-bezier(.3,1.6,.5,1) feedIn}.feed li.fade{opacity:0}@keyframes feedIn{0%{opacity:0;transform:translate(30px)}}.boost{bottom:calc(var(--safe-b) + var(--pad));color:#fff;-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;align-items:center;gap:8px;font-size:14px;font-weight:900;display:flex;position:absolute;left:50%;transform:translate(-50%)}.boost i{width:120px}.boost u{background:var(--cyan)}.boost.ready u{background:var(--green)}.touch-device .boost{display:none}.fx-layer{pointer-events:none;z-index:5;position:absolute;inset:0;overflow:hidden}.popup{color:#fff;white-space:nowrap;text-shadow:0 4px 0 var(--ink);font-size:30px;font-weight:900;animation:1.2s cubic-bezier(.2,1.4,.4,1) forwards pop;position:absolute;transform:translate(-50%,-50%)}.popup.capture{color:var(--gold)}.popup.big{color:var(--gold);font-size:52px}.popup.combo{color:#fff;font-size:24px}.popup.kill{color:var(--pink);font-size:38px}.popup.danger{color:var(--cyan);font-size:26px}.popup.record{color:var(--green)}@keyframes pop{0%{opacity:0;transform:translate(-50%,-30%)scale(.3)}18%{opacity:1;transform:translate(-50%,-60%)scale(1.15)}70%{opacity:1;transform:translate(-50%,-100%)scale(1)}to{opacity:0;transform:translate(-50%,-140%)scale(.9)}}.banner{color:#fff;white-space:nowrap;opacity:0;text-shadow:0 7px 0 var(--ink);font-size:clamp(34px,6vw,72px);font-weight:900;transition:transform .35s cubic-bezier(.2,1.6,.4,1),opacity .2s;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)scale(.4)rotate(-4deg)}.banner.show{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-4deg)}.banner.frenzy,.banner.final{color:var(--red)}.banner.big{color:var(--gold);font-size:clamp(44px,8vw,96px)}.banner.target,.banner.record{color:var(--green)}.banner.go{color:var(--gold);font-size:clamp(56px,9vw,110px)}.vignette{opacity:0;background:radial-gradient(#0000 45%,#ff1e3c8c 100%);transition:opacity .12s;position:absolute;inset:0}.flash{opacity:0;position:absolute;inset:0}.flash.show{animation:.45s ease-out flash}.flash.death{background:#ff3b4d}.flash.kill{background:#fff}.flash.capture{background:radial-gradient(circle,#ffffff80,#0000 70%)}@keyframes flash{0%{opacity:.7}to{opacity:0}}.toast{bottom:calc(var(--safe-b) + 30px);background:var(--ink);color:#fff;opacity:0;z-index:30;border-radius:14px;padding:10px 18px;font-weight:800;transition:all .25s;position:absolute;left:50%;transform:translate(-50%,30px);box-shadow:0 5px #0000004d}.toast.show{opacity:1;transform:translate(-50%)}.pause{background:#1d164073;place-items:center;display:grid}.pause .panel{width:min(88vw,340px)}.results{background:#1d164059;place-items:center;display:grid}.results-panel{gap:8px;width:min(94vw,480px)}.results.active .results-panel{animation:.45s cubic-bezier(.2,1.5,.4,1) slam}@keyframes slam{0%{opacity:0;transform:translateY(-40px)scale(.85)}}.results-panel h2{color:var(--red)}.results-panel.win h2{color:var(--gold)}.r-sub{text-align:center;color:var(--ink-3);margin:-6px 0 0;font-size:14px}.r-score{justify-content:center;display:flex;position:relative}.r-score b{color:var(--pink);text-shadow:0 7px 0 var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(56px,9vw,84px);font-weight:900;line-height:1}.badge{background:var(--green);color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:10px;padding:4px 10px;font-size:14px;font-weight:900;position:absolute;top:-4px;right:4%;transform:rotate(8deg)}.r-break{border:3px solid var(--ink);background:#fff;border-radius:14px;flex-direction:column;gap:2px;margin:0;padding:8px 12px;font-size:14px;list-style:none;display:flex}.r-break li{justify-content:space-between;display:flex}.r-break li.muted{color:#8a80c0;font-size:12px}.r-rank{text-align:center;background:var(--gold);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:14px;flex-direction:column;justify-content:center;min-height:48px;padding:8px;font-weight:900;display:flex}.r-rank .ranks span{white-space:nowrap}.r-rank .ranks{font-family:var(--display);justify-content:center;gap:16px;font-size:20px;display:flex}.r-rank .beat{font-size:15px}.r-rank.offline,.r-rank.rejected{background:#eee8ff;font-size:13px}.r-rank.pending{background:#fff3c4;flex-direction:row;justify-content:center;align-items:center;gap:8px;font-size:13px}.spin{border:3px solid var(--ink);border-top-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.r-target{text-align:center;border:3px dashed var(--pink);background:#ffe1e8;border-radius:12px;padding:6px;font-size:14px;font-weight:900}.r-target.win{background:#d9ffe0;border-color:#1f9e41}.r-nick{color:var(--ink-3);flex-direction:column;gap:4px;font-size:12px;display:flex}.r-nick-row{gap:8px;display:flex}.r-nick input{border:3px solid var(--ink);min-width:0;color:var(--ink);-webkit-user-select:text;user-select:text;background:#fff;border-radius:12px;outline:none;flex:1;padding:8px 12px;font-size:16px;font-weight:800}.r-nick input:focus{box-shadow:0 0 0 3px var(--gold)}.r-nick-msg{color:#1f9e41;min-height:1em}.r-nick-msg.bad{color:var(--red)}.r-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.results-panel .btn-play{animation:none}.tabs{border:3px solid var(--ink);background:#e9e4fb;border-radius:14px;gap:6px;padding:4px;display:flex}.tabs button{cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;padding:8px;font-weight:900}.tabs button.on{background:var(--gold);box-shadow:inset 0 0 0 3px var(--ink)}.board-meta{text-align:center;color:var(--ink-3);min-height:1.2em;font-size:13px}.board-list{flex-direction:column;gap:4px;max-height:min(52vh,420px);margin:0;padding:0;list-style:none;display:flex;overflow:auto}.board-list li{border:3px solid var(--ink);background:#fff;border-radius:12px;grid-template-columns:34px 1fr auto 64px;align-items:center;gap:8px;padding:6px 10px;font-size:15px;display:grid}.board-list li .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-list li .pc{color:#8a80c0;font-size:12px}.board-list li b{text-align:right;font-family:var(--display);font-variant-numeric:tabular-nums}.board-list li .rk{font-family:var(--display);text-align:center;font-weight:900}.board-list li.r1{background:#fff2a8}.board-list li.r2{background:#eef0f7}.board-list li.r3{background:#ffe0c7}.board-list li.me{box-shadow:0 0 0 3px var(--pink)}.board-list li.empty{text-align:center;color:var(--ink-3);border-style:dashed;display:block}.row{justify-content:space-between;align-items:center;gap:12px;font-size:16px;display:flex}.row input[type=range]{width:55%;accent-color:var(--pink)}.row input[type=checkbox]{width:24px;height:24px;accent-color:var(--pink)}.seg{border:3px solid var(--ink);background:#e9e4fb;border-radius:12px;gap:4px;padding:3px;display:flex}.seg button{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:5px 10px;font-weight:900}.seg button.on{background:var(--gold);box-shadow:inset 0 0 0 2px var(--ink)}.credits{text-align:center;color:#8a80c0;font-size:11px}.share-panel{width:min(92vw,420px)}.share-panel img{object-fit:contain;border:4px solid var(--ink);background:#fff;border-radius:16px;width:100%;max-height:52vh}.share-panel input{border:3px solid var(--ink);-webkit-user-select:text;user-select:text;border-radius:12px;width:100%;padding:8px 10px;font-size:13px}.touch{pointer-events:none;z-index:4;display:none;position:absolute;inset:0}.touch-device .touch.show{display:block}.touch.show .stick-zone,.touch.show .touch-boost{pointer-events:auto}.stick-zone{touch-action:none;width:58%;position:absolute;top:22%;bottom:0;left:0}.stick-base{opacity:.6;background:#ffffff38;border:4px solid #1d16408c;border-radius:50%;width:124px;height:124px;margin:-62px 0 0 -62px;transition:opacity .15s;position:absolute;top:62%;left:22%}.stick-base.on{opacity:1}.stick-knob{border:4px solid var(--ink);width:58px;height:58px;box-shadow:0 4px 0 var(--ink);background:linear-gradient(#fff,#ddd6ff);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.touch-boost{right:calc(var(--safe-r) + 26px);bottom:calc(var(--safe-b) + 26px);border:5px solid var(--ink);background:radial-gradient(circle at 40% 35%, #b5f1ff, var(--cyan) 60%, #1fa9e0);width:104px;height:104px;box-shadow:0 7px 0 var(--ink);font-family:var(--display);color:var(--ink);touch-action:none;border-radius:50%;font-size:18px;font-weight:900;position:absolute}.touch-boost.down{box-shadow:0 2px 0 var(--ink);transform:translateY(5px)}.fatal{color:#fff;background:var(--ink);place-items:center;font-size:20px;display:grid;position:absolute;inset:0}@media (max-height:560px){.title-main{gap:7px;padding:8px}.logo-main{font-size:clamp(40px,11vh,70px)}.logo-en{margin-top:2px;font-size:15px}.how li{gap:3px;width:150px;padding:6px 8px 8px;font-size:12px}.how-ico{width:48px;height:30px}.btn-play{padding:8px 34px 6px;font-size:24px}.chip{padding:4px 10px;font-size:12px}.controls{display:none}.icon-btn{width:44px;height:44px;font-size:20px}.me-card{gap:10px;padding:4px 10px}.me-card b{font-size:24px}.timer{font-size:36px}.rivals{min-width:150px;padding:4px 6px}.rivals li{grid-template-columns:12px 1fr auto;font-size:11px}.rivals li em{display:none}.feed li{font-size:11px}.results-panel{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"title title""sub sub""score brk""rank nick""target target""play acts";align-items:center;gap:6px 16px;width:min(96vw,700px);padding:10px 16px 12px;display:grid}.results-panel>h2{grid-area:title}.results-panel>.r-sub{grid-area:sub}.results-panel>.r-score{grid-area:score}.results-panel>.r-break{grid-area:brk}.results-panel>.r-rank{grid-area:rank;min-height:0;padding:5px}.results-panel>.r-target{grid-area:target;padding:3px;font-size:12px}.results-panel>.r-nick{grid-area:nick}.results-panel>.btn-play{grid-area:play;padding:6px 16px 4px;font-size:22px}.results-panel>.r-actions{flex-wrap:nowrap;grid-area:acts;gap:6px}.results-panel .r-actions .btn-small{white-space:nowrap;padding:6px 8px;font-size:13px}.r-rank .beat{font-size:12px}.r-nick-msg{display:none}.results-panel h2{margin:0;font-size:26px}.r-score b{font-size:50px}.r-break{padding:4px 8px;font-size:12px}.r-rank .ranks{font-size:16px}.panel{max-height:calc(100vh - 16px)}.board-list{max-height:44vh}.combo b{font-size:22px}.target i{width:130px}.hint{font-size:12px}.touch-boost{width:88px;height:88px;font-size:16px}}@media (max-width:720px){.how{gap:8px}.how li{width:30vw}.rivals{min-width:140px}}@media (prefers-reduced-motion:reduce){.btn-play,.challenge-card,.timer.hot,.hint.danger{animation:none}}
