*{box-sizing:border-box}html,body{margin:0;background:#070c14;color:#e7f1fc;font-family:Inter,"Segoe UI","PingFang SC",Arial,sans-serif}body{background:radial-gradient(ellipse at 50% 40%,#11283b60,transparent 65%),#070c14}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit;color:inherit;border:1px solid #304353;background:#101f2b;transition:background .2s,transform .2s}button:hover{background:#1a3544}button:active{transform:scale(.97)}header{height:86px;max-width:1390px;margin:auto;padding:0 54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1a2733}.brand{display:flex;gap:13px;align-items:center;color:inherit;text-decoration:none}.brand>b{font-size:42px;line-height:1;color:#66edfa;transform:skew(-10deg)}.brand>span{font-size:22px;letter-spacing:6px;font-weight:800}.brand small{display:block;font:8px monospace;letter-spacing:2.4px;margin-top:3px}.topnote{font:10px monospace;letter-spacing:2px;color:#647f91}.topnote i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#69ebd1;margin-right:12px;box-shadow:0 0 12px #69ebd1}.topnote span{margin-left:30px;color:#adc2d3}#sound{font:10px monospace;padding:10px 16px;letter-spacing:1px;border-radius:4px}main{display:grid;grid-template-columns:240px minmax(0,480px) 230px;gap:48px;justify-content:center;align-items:center;padding:36px 28px}.arena{position:relative;width:100%;aspect-ratio:3/5;background:#06101e;border:1px solid #375264;box-shadow:0 0 0 6px #0b1520,0 22px 80px #0008;overflow:hidden;border-radius:5px;isolation:isolate}#game{display:block;width:100%;height:100%;touch-action:none}.hud{position:absolute;top:24px;left:24px;right:24px;display:flex;justify-content:space-between;pointer-events:none}.hud small{font:9px monospace;letter-spacing:2px;color:#97b4ca;display:block;margin-bottom:7px}.hud strong{font:700 25px monospace;letter-spacing:1px;color:white}.hud-right{text-align:right}.hud-right span{font-size:13px;color:#6fe6f7;letter-spacing:3px}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(#05122230,#06111c55 45%,#06111cf0);padding:42px 30px 20px}.overlay.hidden{display:none}.badge{color:#90d9e3;font:8px monospace;letter-spacing:2.8px;border:1px solid #41616c;padding:7px 11px;margin-top:15px}.overlay h2{font-size:56px;font-style:italic;letter-spacing:13px;line-height:1.1;margin:22px 0 6px;text-shadow:0 4px 0 #315575,0 0 40px #64dcff35;transform:skew(-5deg)}.overlay h2 span{color:#67e2f1}.english{font:12px monospace;letter-spacing:8px;color:#a3c6db}.hero-jet{height:210px;width:310px;margin:0;display:grid;place-items:center}.hero-jet canvas{width:310px;height:241px}#message{font-size:12px;letter-spacing:4px;color:#c3d3df;margin:10px 0 25px}#start{width:270px;min-height:54px;background:#6ce9ef;color:#061925;border:0;font-weight:800;font-size:16px;letter-spacing:3px;box-shadow:0 0 30px #4cd9e824;clip-path:polygon(0 0,94% 0,100% 28%,100% 100%,6% 100%,0 72%)}#start:hover{background:#b7ffff}#start span{margin-left:35px;font-size:20px}.hint{font-size:10px;color:#8da4b6;line-height:2;text-align:center;margin:16px 0}.bottomline{position:absolute;bottom:9px;left:18px;right:18px;display:flex;justify-content:space-between;font:7px monospace;color:#638299;letter-spacing:1px;pointer-events:none}.eyebrow,.label{color:#6f8a9e;font:9px monospace;letter-spacing:2px}.left h1{font-size:33px;line-height:1.55;letter-spacing:1px;margin:18px 0}.left h1 em{color:#6ddbe8;font-style:normal}aside p{font-size:11px;color:#8095a6;line-height:2}.intro{margin-bottom:32px}.rule{height:1px;background:linear-gradient(90deg,#2a3c49,transparent);margin:26px 0}aside h3{font-size:15px;font-weight:500;margin:16px 0 8px}.stage-list{margin:26px 0}.stage-list>div{display:flex;align-items:center;gap:15px;margin:22px 0}.stage-list b{font:13px monospace;color:#5d7185}.stage-list span{font-size:12px;color:#a6b8c5}.stage-list small{display:block;font:8px monospace;color:#4b657a;letter-spacing:1px;margin-top:5px}.stage-list i{color:#63e2f2;margin-left:auto;font-style:normal}.stage-list>div:first-child b{color:#63e2f2}.record{border-top:1px solid #243341;padding-top:22px}.record span{display:block;font-size:10px;color:#758c9d;margin-bottom:9px}.record strong{font:25px monospace;letter-spacing:3px;color:#9bb0c2}.right h2{font-size:20px;font-weight:500;margin:18px 0 6px}.spec{display:grid;grid-template-columns:50px 1fr;gap:15px;margin-top:24px}.spec span{font-size:10px;color:#8299a9}.spec i{height:4px;background:#1e2e3c;align-self:center}.spec i:after{content:'';display:block;width:var(--fill);height:100%;background:linear-gradient(90deg,#2a657e,#81e8ee)}.control{display:flex;justify-content:space-between;align-items:center;margin-top:19px}.control kbd{font:10px monospace;border:1px solid #30404e;padding:6px 8px;border-radius:3px;color:#a6bbca}.control span{font-size:10px;color:#8199ad}.autofire{margin:22px 0;color:#5d9aab;font-size:10px}.supply{padding:19px 15px;background:#111d2860;border:1px solid #24313e;border-radius:5px}.supply b{font-size:11px;font-weight:500}.supply p{display:flex;gap:10px;align-items:center;font-size:10px;margin:15px 0 0}.supply i{font-style:normal;border:1px solid currentColor;width:19px;height:19px;text-align:center;line-height:17px}.cyan{color:#70e5ff}.green{color:#87e9b2}.orange{color:#ffa75e}.tip{margin-top:28px;font-size:10px;color:#a3bbcd}.tip small{display:block;font-size:10px;line-height:1.9;margin-top:9px;color:#607b91}footer{max-width:1280px;padding:20px 0 25px;margin:auto;display:flex;justify-content:space-between;border-top:1px solid #1c2935;font:8px monospace;color:#536c80;letter-spacing:1px}.ingame{position:absolute;bottom:31px;left:20px;right:20px;display:flex;gap:10px;align-items:center}.ingame[hidden],.bossbar[hidden]{display:none}.ingame button{min-height:45px;background:#071823b8;border-color:#4a8294;border-radius:4px;font-size:11px}#pause{width:45px;font-size:18px}#bomb{padding:0 15px;color:#ffce87}#bomb b{font-size:21px;margin-right:6px}#bombs{padding-left:9px;color:white}#power{margin-left:auto;font:10px monospace;color:#81eaf0}.bossbar{position:absolute;top:92px;left:24px;right:24px;font:9px monospace;color:#ff9c91;letter-spacing:1px}.bossbar>div{height:5px;background:#4b2535;margin-top:8px}.bossbar i{display:block;background:#ff6e85;height:100%;width:100%}#notice{position:absolute;top:30%;left:0;right:0;text-align:center;color:#b5f6ff;font:700 19px monospace;letter-spacing:4px;pointer-events:none;text-shadow:0 2px 15px #000;transition:opacity .2s;opacity:0}@media(min-width:1300px) and (min-height:900px){main{padding-top:45px;padding-bottom:45px}}@media(max-height:900px) and (min-width:950px){main{grid-template-columns:220px minmax(0,390px) 210px;gap:42px;padding:25px}header{height:70px}.overlay h2{font-size:48px}.hero-jet{height:170px}.hero-jet canvas{width:270px;height:210px}.badge{margin-top:5px}footer{max-width:1080px}.left h1{font-size:30px}}@media(max-width:1090px){main{gap:26px;grid-template-columns:190px minmax(0,420px)}.right{display:none}header{padding:0 30px}footer{margin:0 30px}.topnote{letter-spacing:1px}}@media(max-width:760px){header{height:60px;padding:0 22px}.topnote{display:none}main{display:block;padding:18px;max-width:510px;margin:auto}.left{display:none}.arena{max-height:none}footer{justify-content:center}footer span:not(:first-child){display:none}}@media(max-width:520px){header{height:54px;padding:0 16px}.brand>b{font-size:30px}.brand>span{font-size:16px}.brand small{font-size:6px}#sound{padding:8px 12px}main{padding:0;max-width:none}.arena{border:0;border-radius:0;box-shadow:none;aspect-ratio:auto;height:calc(100dvh - 54px);min-height:460px}#game{object-fit:fill}.overlay{padding:55px 16px 25px}.overlay h2{font-size:48px}.hero-jet{height:180px}.hud{top:18px;left:18px;right:18px}.hud strong{font-size:22px}.badge{margin-top:5px}.english{font-size:10px}.hint{margin-bottom:0}footer{display:none}.ingame{bottom:max(30px,env(safe-area-inset-bottom))}.bottomline{bottom:8px}}@media(max-height:650px){.hero-jet{height:100px}.hero-jet canvas{height:150px;width:193px}.overlay h2{font-size:50px;margin:12px 0 4px}.overlay #message{margin:10px 0 15px}.badge{font-size:7px}.overlay{padding-top:65px}.hint{font-size:9px;margin-top:10px}}