*{box-sizing:border-box}html,body{margin:0;background:#060d18;color:#e8f2fc;font-family:system-ui,-apple-system,'Noto Sans TC',sans-serif;overscroll-behavior:none}body{height:100dvh;overflow:hidden}main{height:100%;max-width:1050px;margin:auto;display:flex;flex-direction:column;align-items:center}header{height:60px;flex-shrink:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 26px}.brand{font-size:22px;font-weight:900;letter-spacing:3px}.brand span{color:#f7593c}.brand small{font-size:14px;letter-spacing:2px;margin-left:12px}button{font:inherit;color:inherit;background:#142332;border:1px solid #314151;cursor:pointer;border-radius:5px;min-height:44px;padding:10px 16px;touch-action:manipulation}button:hover{background:#22394a}button:focus-visible{outline:2px solid #65eaff;outline-offset:2px}#sound{font-size:13px;background:transparent}#arena{position:relative;height:calc(100dvh - 100px);aspect-ratio:9/15;max-width:100%;overflow:hidden;background:#071b28;border:1px solid #31404e;box-shadow:0 0 100px #0b324633}canvas{width:100%;height:100%;display:block;touch-action:none}#hud{position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;padding:17px 15px;background:linear-gradient(#061019ed,transparent);pointer-events:none}#hud small{font-size:10px;letter-spacing:1.7px;display:block;color:#8aa6ba;margin-bottom:5px}#hud b{font-size:16px;font-variant-numeric:tabular-nums}#life{color:#68e4e8!important;font-size:12px!important}.center{text-align:center}.right{text-align:right}#overlay,#pausepanel{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:25px;text-align:center;background:linear-gradient(180deg,#06112077,#071321dc 60%,#071321f5)}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:3px;color:#88bbc9}h1{font-size:clamp(40px,7vh,66px);letter-spacing:10px;line-height:1.15;margin:24px 0 8px;font-weight:900}h1 span{display:block;color:#ff694b}.en{font-size:13px;letter-spacing:7px;margin:4px 0 18px}.line{height:2px;background:#ff694b;width:35px;margin:0 0 14px}#intro{font-size:15px;color:#bfd0da;line-height:1.8;margin:0 0 15px}.chips{display:flex;gap:9px;font-size:12px;color:#9cb3c6}.chips span{border:1px solid #395062;padding:7px 10px}#mode{display:flex;gap:8px;margin:20px 0 10px}#mode button{min-height:36px;font-size:13px;padding:7px 24px}.selected{border-color:#6fdee9;background:#133d49}.primary{width:100%;max-width:265px;background:#f45b3e;border-color:#ff795a;font-size:17px;font-weight:750;min-height:52px;color:#fff}.primary:hover{background:#ff7255}.primary span{float:right}.instruction{font-size:13px;line-height:1.9;color:#a0b7c7;margin:18px 0 9px}#best{font-size:12px;color:#f8b37e}.credit{font-size:10px;letter-spacing:1px;color:#678298;margin:15px 0 0}#bottom{position:absolute;bottom:0;padding:12px;width:100%;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(transparent,#07121fe8)}#bottom button{font-size:13px;background:#0b2437dd}#bomb{border-color:#ad6546!important;color:#ffb37f}#weapon{font-size:12px;color:#78dcea}#bossbar{display:none;position:absolute;top:80px;left:10%;width:80%;text-align:center;font-size:11px;letter-spacing:2px;color:#ffae93}#bossbar i{display:block;height:4px;background:#472c30;margin-top:8px}#bossbar em{display:block;height:100%;background:#ff6648;width:100%}#announce{position:absolute;top:34%;width:100%;text-align:center;font-size:22px;font-weight:800;letter-spacing:4px;white-space:pre-line;text-shadow:0 2px 15px #000;pointer-events:none}#pausepanel{background:#071321ef;gap:16px}footer{height:40px;width:100%;display:flex;justify-content:space-between;align-items:center;padding:0 26px;font-size:10px;color:#677e93;letter-spacing:1px}@media(max-width:600px){header{height:44px;padding:0 14px}.brand{font-size:18px}#sound{min-height:32px;padding:5px 10px}#arena{height:calc(100dvh - 44px);width:100%;aspect-ratio:auto;border:0}footer{display:none}#bottom{padding-bottom:max(12px,env(safe-area-inset-bottom))}#overlay{padding-bottom:55px}h1{font-size:54px}#hud{padding-top:12px}}@media(max-height:680px){h1{font-size:38px;margin-top:10px}.instruction{margin:10px 0}.credit{display:none}#mode{margin-top:12px}.en{margin-bottom:10px}#overlay{padding-top:65px}.eyebrow{font-size:9px}}
