@font-face{font-family:RingDisplay;src:url(./zcool-kuaile-400-kukQG1HZ.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:RingText;src:url(./noto-sans-sc-400-BUyoh76C.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:RingText;src:url(./noto-sans-sc-700-Dpqw5RGV.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{color:#fff6e4;background:radial-gradient(at 50% 0,#ff96462e,#0000 42%),radial-gradient(at 50% 100%,#8c1e3259,#0000 46%),#100816;place-items:center;min-height:100dvh;font-family:RingText,PingFang SC,Noto Sans SC,Microsoft YaHei,WenQuanYi Micro Hei,sans-serif;display:grid}button,p,h1,ol{margin:0}#frame{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#140c28;width:min(100vw,46.1538dvh);height:min(100dvh,216.667vw);position:relative;overflow:hidden;container-type:size}@media (width>=840px){#frame{border-radius:32px;box-shadow:0 0 0 1px #ffd68c47,0 30px 80px #00000073}}#game{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}#hud{z-index:2;padding:calc(46px + env(safe-area-inset-top)) 16px 0;pointer-events:none;text-shadow:0 2px 8px #0000008c;justify-content:space-between;gap:12px;display:flex;position:absolute;top:0;left:0;right:0}#frame[data-phase=title] #hud,#frame[data-phase=results] #hud,#frame[data-phase=title] #hint,#frame[data-phase=results] #hint{visibility:hidden}.label{letter-spacing:.12em;opacity:.8;font-size:.75rem}#score,#timer,#final-score{font-variant-numeric:tabular-nums;font-family:RingText,PingFang SC,Noto Sans SC,sans-serif;font-weight:700;line-height:1}#score,#timer{font-size:clamp(1.7rem,9cqi,2.3rem)}.hud-time{text-align:right}#timer.urgent{color:#ffb4a8}#combo{color:#ffd56a;margin-top:4px;font-weight:700}#hint{z-index:2;left:16px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom));text-align:center;color:#fff6e4e0;text-shadow:0 2px 8px #0009;pointer-events:none;font-size:.82rem;position:absolute}#banner{z-index:3;color:#ffe7ad;pointer-events:none;background:#2a1210d1;border:1px solid #ffd678b3;border-radius:999px;padding:8px 16px;font-weight:700;position:absolute;top:22%;left:50%;transform:translate(-50%)}#pause{z-index:6;background:#100814cc;border-radius:999px;padding:10px 18px;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}#mute{z-index:5;top:calc(8px + env(safe-area-inset-top));color:#fff6e4;font:inherit;background:#1c0e16b8;border:1px solid #ffd68c73;border-radius:999px;padding:7px 10px;font-size:.78rem;position:absolute;left:10px}.screen{z-index:4;padding:calc(52px + env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(#0c06142e,#0c06149e);display:none;position:absolute;inset:0;overflow:auto}#frame[data-phase=title] #title-screen,#frame[data-phase=results] #results-screen{align-items:center;display:grid}.card{background:linear-gradient(#56202af0,#200e18f2);border:1px solid #f5d0788c;border-radius:28px;width:min(100%,420px);margin:auto;padding:22px 18px 18px;box-shadow:0 18px 50px #00000059,inset 0 1px #ffecc840}.seal{background:radial-gradient(circle at 35% 30%,#ffffff73,#0000 36%),radial-gradient(circle,#0000 42%,#e23b45 43% 58%,#0000 59%);border-radius:50%;width:58px;height:58px;margin:0 auto 8px;box-shadow:0 8px 18px #e23b4559,inset 0 0 0 3px #f0d48a}h1,.kicker,#rank{text-align:center;font-family:RingDisplay,RingText,sans-serif}h1{font-size:clamp(1.8rem,9cqi,2.6rem);font-weight:400}.lede,.rule,#rank-line,#detail,#record,#best{text-align:center;line-height:1.5}.lede{color:#ffe7c2;margin:6px 0 14px}ol{gap:8px;padding:0;list-style:none;display:grid}li{background:#fff4dc0f;border-radius:16px;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:10px;display:grid}li:before{counter-increment:step;content:counter(step);color:#3a2208;background:#f0c14b;border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;font-weight:700;display:grid}ol{counter-reset:step}li strong,li span{display:block}li strong{font-size:.98rem}li span{color:#fff6e4d1;margin-top:2px;font-size:.86rem;line-height:1.45}.rule{color:#ffd98a;margin:12px 0;font-size:.92rem}button.primary,button.ghost{font:inherit;cursor:pointer;border-radius:999px;width:100%}button.primary{color:#3a2208;background:linear-gradient(#ffe7a8 0%,#f0b429 58%,#d8922a 100%);border:0;padding:14px 18px;font-size:1.12rem;font-weight:700;box-shadow:0 6px #8a5a12,0 12px 20px #00000040}button.primary:active{transform:translateY(2px);box-shadow:0 3px #8a5a12}button.ghost{color:#ffe7c2;background:0 0;border:0;margin-top:8px;padding:10px}button:focus-visible,#mute:focus-visible{outline-offset:3px;outline:3px solid #fff1c2}#best{color:#fff6e4bf;margin-top:10px;font-size:.88rem}.kicker{letter-spacing:.18em;color:#ffd98a}#final-score{text-align:center;margin-top:4px;font-size:clamp(3.2rem,18cqi,4.6rem);line-height:.9}.score-unit{text-align:center;color:#ffe7c2;margin-bottom:8px}#detail{color:#fff6e4cc}#rank{margin-top:10px;font-size:1.7rem}#rank-line{margin:4px 0 8px}#record{color:#ffd56a;margin-bottom:14px;font-weight:700}#boot-error{z-index:7;background:#3a1420;border-radius:12px;padding:12px;position:absolute;inset:auto 16px 24px}#rotate-hint{display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (orientation:landscape) and (height<=520px){#rotate-hint{z-index:20;text-align:center;background:#100816f0;align-content:center;place-items:center;gap:8px;padding:24px;display:grid;position:fixed;inset:0}#rotate-hint p{font-family:RingDisplay,RingText,sans-serif;font-size:2rem}}@container (height<=680px){.seal{width:42px;height:42px;margin-bottom:4px}.card{padding:14px 12px 12px}li{padding:8px}.lede{margin-bottom:8px}.rule{margin:8px 0}}@media (prefers-reduced-motion:reduce){#timer.urgent{animation:none}button.primary{transition:none}}@media (prefers-reduced-motion:no-preference){#timer.urgent{animation:.7s ease-in-out infinite timer-pulse}}@keyframes timer-pulse{50%{transform:scale(1.06)}}
