@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:500;src:url(./orbitron-latin-500-normal-DQ2gt4P1.woff2) format("woff2"),url(./orbitron-latin-500-normal-BCCupJ8c.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(./orbitron-latin-700-normal-4jsRXGGJ.woff2) format("woff2"),url(./orbitron-latin-700-normal-DmYOh-W9.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:900;src:url(./orbitron-latin-900-normal-DrIi7unX.woff2) format("woff2"),url(./orbitron-latin-900-normal-BbJatbhp.woff) format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-latin-500-normal-ByNUCHrt.woff2) format("woff2"),url(./rajdhani-latin-500-normal-DfvNI-Td.woff) format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-600-normal-CXCVEoA9.woff2) format("woff2"),url(./rajdhani-latin-600-normal-Dx02qI2_.woff) format("woff")}:root{--accent: #7fd4ff;--ink: #e8f2ff;--dim: rgba(232, 242, 255, .62);--panel: rgba(6, 10, 18, .66);--line: rgba(255, 255, 255, .16);--bad: #ff5a4a;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--sar: env(safe-area-inset-right, 0px);--display: "Orbitron", "Rajdhani", system-ui, sans-serif;--ui: "Rajdhani", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:#05070c;color:var(--ink);font-family:var(--ui);font-weight:500;overscroll-behavior:none;touch-action:none;user-select:none;-webkit-user-select:none}canvas#game{position:fixed;inset:0;width:100vw;height:100vh;display:block;cursor:none;touch-action:none}body.menu canvas#game{cursor:default}.hidden{display:none!important}button{font:inherit;color:inherit}#vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 52%,rgba(0,0,0,.5) 100%)}#dmg,#pulse{position:fixed;inset:0;pointer-events:none;opacity:0}#dmg{background:radial-gradient(ellipse at center,transparent 40%,rgba(255,40,30,.75) 100%)}#dmg.shield{background:radial-gradient(ellipse at center,transparent 45%,rgba(70,190,255,.6) 100%)}#dmg.low{opacity:.35;animation:lowpulse .9s ease-in-out infinite}@keyframes lowpulse{50%{opacity:.1}}#pulse{background:radial-gradient(ellipse at center,transparent 62%,var(--pc, #fff) 190%)}#hud{position:fixed;inset:0;pointer-events:none;font-family:var(--ui);text-shadow:0 0 8px rgba(0,0,0,.9)}#hud>*{position:absolute}.h-tl{top:calc(12px + var(--sat));left:calc(14px + var(--sal));padding:8px 12px 10px;min-width:190px;background:linear-gradient(90deg,var(--panel),transparent);border-left:2px solid var(--accent)}.sector{font-family:var(--display);font-size:10px;letter-spacing:.28em;color:var(--accent)}.lname{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.12em;margin:2px 0 7px}.progress{position:relative;height:4px;width:200px;max-width:42vw;background:#ffffff24}.progress i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);box-shadow:0 0 8px var(--accent)}.progress b{position:absolute;right:-3px;top:-4px;width:2px;height:12px;background:var(--bad);box-shadow:0 0 6px var(--bad)}.h-tr{top:calc(12px + var(--sat));right:calc(66px + var(--sar));text-align:right}.score{font-family:var(--display);font-weight:700;font-size:24px;letter-spacing:.08em;font-variant-numeric:tabular-nums}.combo{font-family:var(--display);font-size:12px;letter-spacing:.16em;color:var(--accent);min-height:16px}.h-boss{top:calc(70px + var(--sat));left:50%;transform:translate(-50%);width:min(520px,62vw);text-align:center}.bname{font-family:var(--display);font-size:12px;letter-spacing:.4em;color:var(--bad);margin-bottom:5px}.bbar{height:8px;background:#ffffff1f;border:1px solid rgba(255,90,74,.55);clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}.bbar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#ff9a3a,var(--bad));transition:width .15s linear}.h-bl{left:calc(16px + var(--sal));bottom:calc(22px + var(--sab));width:min(260px,40vw)}.bar{display:flex;align-items:center;gap:8px;margin-top:6px}.bar span,.weapon span,.missiles span{font-family:var(--display);font-size:10px;letter-spacing:.2em;width:38px;color:var(--dim)}.bar div{flex:1;height:9px;background:#ffffff1f;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 100%,0 100%)}.bar i{display:block;height:100%;width:100%;transition:width .12s linear}.shield i{background:linear-gradient(90deg,#2a9cff,#7fe6ff);box-shadow:0 0 10px #4ac8ff}.hull i{background:linear-gradient(90deg,#4be08a,#c8ff9a)}.hull.low i{background:linear-gradient(90deg,#ff4a3a,#ff9a4a)}.h-br{right:calc(16px + var(--sar));bottom:calc(22px + var(--sab));text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.weapon,.missiles{display:flex;align-items:center;gap:8px}.pips{display:flex;gap:4px}.pips i{width:16px;height:9px;background:#ffffff24;transform:skew(-18deg)}.pips i.on{background:#ffd24a;box-shadow:0 0 8px #ffb020}.missiles b{font-family:var(--display);font-size:16px;color:#ff9a4a;min-width:26px;text-align:right}.timers span{font-family:var(--display);font-size:10px;letter-spacing:.2em;padding:3px 8px;margin-left:6px;border:1px solid currentColor}#h-rapid{color:#ff6ae0}#h-over{color:#fff2c0}#reticle,#lock{left:0;top:0;will-change:transform}#reticle{width:44px;height:44px;margin:-22px 0 0 -22px;border:1.5px solid rgba(255,255,255,.75);border-radius:50%;box-shadow:0 0 10px #00000080,inset 0 0 8px #0000004d}#reticle:before,#reticle:after{content:"";position:absolute;background:#ffffffe6}#reticle:before{left:50%;top:-9px;bottom:-9px;width:1.5px;margin-left:-.75px;clip-path:polygon(0 0,100% 0,100% 24%,0 24%,0 76%,100% 76%,100% 100%,0 100%)}#reticle:after{top:50%;left:-9px;right:-9px;height:1.5px;margin-top:-.75px;clip-path:polygon(0 0,24% 0,24% 100%,0 100%,0 0,76% 0,100% 0,100% 100%,76% 100%,76% 0)}#reticle i{position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}#reticle.hit{border-color:#fff;transform-origin:center;filter:drop-shadow(0 0 6px #fff)}#reticle.locked{border-color:var(--bad)}#lock{width:54px;height:54px;margin:-27px 0 0 -27px;opacity:0;--c: var(--bad);background:linear-gradient(var(--c),var(--c)) 0 0 / 14px 2px no-repeat,linear-gradient(var(--c),var(--c)) 0 0 / 2px 14px no-repeat,linear-gradient(var(--c),var(--c)) 100% 0 / 14px 2px no-repeat,linear-gradient(var(--c),var(--c)) 100% 0 / 2px 14px no-repeat,linear-gradient(var(--c),var(--c)) 0 100% / 14px 2px no-repeat,linear-gradient(var(--c),var(--c)) 0 100% / 2px 14px no-repeat,linear-gradient(var(--c),var(--c)) 100% 100% / 14px 2px no-repeat,linear-gradient(var(--c),var(--c)) 100% 100% / 2px 14px no-repeat}#lock.on{opacity:1}#lock.friendly{--c: #6aff8a}#announce{left:50%;top:24%;transform:translate(-50%);text-align:center;opacity:0;transition:opacity .25s;width:90vw}#announce.on{opacity:1}#announce h2{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(20px,4.2vw,38px);letter-spacing:.24em;color:#fff;text-shadow:0 0 18px var(--accent),0 0 4px #000}#announce p{margin:6px 0 0;font-size:clamp(14px,2.2vw,19px);letter-spacing:.2em;color:var(--accent);text-transform:uppercase}#btn-pause,#btn-missile,#btn-cam{pointer-events:auto;background:var(--panel);border:1px solid var(--line);cursor:pointer}#btn-pause{top:calc(10px + var(--sat));right:calc(12px + var(--sar));width:44px;height:44px;display:flex;align-items:center;justify-content:center;gap:6px}#btn-cam{top:calc(60px + var(--sat));right:calc(12px + var(--sar));width:44px;height:44px;font-family:var(--display);font-size:9px;letter-spacing:.1em;color:var(--dim)}#btn-cam:active{background:#fff3}#btn-pause i{width:4px;height:16px;background:var(--ink)}#btn-missile{display:none;right:calc(18px + var(--sar));bottom:calc(96px + var(--sab));width:76px;height:76px;border-radius:50%;border:2px solid #ff9a4a;font-family:var(--display);font-size:12px;letter-spacing:.1em;color:#ffc48a;flex-direction:column;align-items:center;justify-content:center}#btn-missile b{font-size:20px;color:#fff}#btn-missile:active{background:#ff9a4a59}body.touch #btn-missile{display:flex}body.touch .missiles{display:none}#card{position:fixed;left:0;right:0;top:30%;text-align:center;pointer-events:none;animation:cardin 2.9s ease both}#card .tag{font-family:var(--display);letter-spacing:.5em;font-size:13px;color:var(--accent)}#card h1{margin:8px 0;font-family:var(--display);font-weight:900;font-size:clamp(28px,7vw,68px);letter-spacing:.14em;text-shadow:0 0 30px var(--accent),0 2px 10px #000}#card p{margin:0 auto;max-width:30em;padding:0 20px;font-size:clamp(15px,2.4vw,20px);letter-spacing:.08em;color:var(--dim);text-shadow:0 1px 6px #000}@keyframes cardin{0%{opacity:0;transform:translateY(14px);letter-spacing:.3em}14%,82%{opacity:1;transform:none}to{opacity:0}}.screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:calc(18px + var(--sat)) calc(18px + var(--sar)) calc(18px + var(--sab)) calc(18px + var(--sal));background:radial-gradient(ellipse at center,#04070c80,#04070ce0);overflow-y:auto}#s-menu{background:linear-gradient(180deg,#04070cb8,#04070c33 45%,#04070cd9);justify-content:space-evenly}#s-loading{background:#05070c}.spinner{width:46px;height:46px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#s-loading p{font-family:var(--display);letter-spacing:.4em;font-size:12px;color:var(--dim)}.title{text-align:center}.kicker{font-family:var(--display);font-size:clamp(10px,1.6vw,13px);letter-spacing:.5em;color:var(--accent)}.title h1{margin:6px 0 0;font-family:var(--display);font-weight:900;font-size:clamp(40px,11vw,120px);letter-spacing:.08em;line-height:1;color:#fff;text-shadow:0 0 40px rgba(127,212,255,.55),0 4px 18px #000}.title h1 span{color:transparent;-webkit-text-stroke:1.5px var(--accent)}.menu-buttons{display:flex;flex-direction:column;gap:10px;width:min(320px,80vw)}.btn{pointer-events:auto;cursor:pointer;padding:13px 22px;min-height:48px;font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.24em;color:var(--ink);background:var(--panel);border:1px solid var(--line);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:background .15s,color .15s,transform .1s}.btn:hover,.btn:focus-visible{background:#7fd4ff2e;outline:none}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:#04121c;border-color:transparent}.btn.primary:hover,.btn.primary:focus-visible{background:#fff}.sectors{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;max-width:760px}.sectors button{pointer-events:auto;cursor:pointer;width:132px;padding:9px 8px;background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--c, var(--accent));text-align:left}.sectors button small{display:block;font-family:var(--display);font-size:9px;letter-spacing:.22em;color:var(--c, var(--accent))}.sectors button b{display:block;font-family:var(--display);font-size:11px;letter-spacing:.08em;margin-top:3px}.sectors button em{display:block;font-style:normal;font-size:12px;color:var(--dim);margin-top:2px}.sectors button[disabled]{opacity:.38;cursor:default}.sectors button:not([disabled]):hover{background:#ffffff1a}.hint{margin:0;font-size:14px;letter-spacing:.1em;color:var(--dim);text-align:center}.dialog{width:min(420px,100%);display:flex;flex-direction:column;gap:10px;padding:24px;background:#060a12e6;border:1px solid var(--line);border-top:2px solid var(--accent);text-align:center;max-height:100%;overflow-y:auto}.dialog.wide{width:min(640px,100%)}.dialog h2{margin:0 0 6px;font-family:var(--display);font-weight:800;font-size:clamp(18px,3.4vw,26px);letter-spacing:.2em}.dialog h2.bad{color:var(--bad)}.dialog p{margin:0 0 6px;color:var(--dim);font-size:16px;letter-spacing:.04em}.rows{display:flex;flex-direction:column;gap:4px;text-align:left}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;font-size:16px;letter-spacing:.06em;border-bottom:1px solid rgba(255,255,255,.06)}.seg{display:flex}.seg button{pointer-events:auto;cursor:pointer;padding:8px 10px;min-height:36px;font-family:var(--display);font-size:10px;letter-spacing:.12em;background:transparent;border:1px solid var(--line);margin-left:-1px;color:var(--dim)}.seg button.on{background:var(--accent);color:#04121c;border-color:var(--accent)}.toggle{pointer-events:auto;cursor:pointer;width:54px;height:28px;border-radius:14px;border:1px solid var(--line);background:#ffffff14;position:relative}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--dim);transition:transform .15s,background .15s}.toggle.on{background:#7fd4ff4d;border-color:var(--accent)}.toggle.on:after{transform:translate(26px);background:var(--accent)}input[type=range]{pointer-events:auto;width:140px;accent-color:var(--accent)}.note{font-size:13px!important;min-height:16px}.grade{font-family:var(--display);font-weight:900;font-size:64px;line-height:1;color:var(--accent);text-shadow:0 0 30px var(--accent)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin:8px 0 12px;text-align:left}.stats div{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);padding:4px 0;font-size:16px;letter-spacing:.06em;color:var(--dim)}.stats div b{color:var(--ink);font-family:var(--display);font-size:13px;font-variant-numeric:tabular-nums}.stats div.total{grid-column:1 / -1;font-size:18px;color:var(--ink)}.stats div.total b{font-size:18px;color:var(--accent)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cards button{pointer-events:auto;cursor:pointer;padding:16px 10px;background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--accent);display:flex;flex-direction:column;align-items:center;gap:8px;transition:background .15s,transform .12s}.cards button:hover,.cards button:focus-visible{background:#7fd4ff29;transform:translateY(-3px);outline:none}.cards .ico{width:46px;height:46px;display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:20px;color:#04121c;background:var(--accent);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.cards b{font-family:var(--display);font-size:11px;letter-spacing:.14em}.cards span{font-size:14px;color:var(--dim);line-height:1.25}.cards em{font-style:normal;font-family:var(--display);font-size:9px;letter-spacing:.2em;color:var(--accent)}.final{font-family:var(--display);font-weight:900;font-size:clamp(30px,7vw,54px);color:var(--accent);text-shadow:0 0 30px var(--accent);margin:8px 0 14px}#rotate-hint{position:fixed;left:50%;bottom:calc(8px + var(--sab));transform:translate(-50%);font-size:12px;letter-spacing:.1em;color:var(--dim);pointer-events:none;white-space:nowrap}@media (max-width: 640px){.cards{grid-template-columns:1fr}.cards button{flex-direction:row;text-align:left;padding:12px}.cards button>div{display:flex;flex-direction:column;gap:3px}.lname{font-size:11px}.score{font-size:17px}.h-tl{min-width:0;width:calc(100vw - 196px - var(--sal) - var(--sar));max-width:200px;padding:6px 9px 8px}.progress{width:100%;max-width:none}.sector{font-size:9px}.combo{font-size:10px}.sectors button{width:calc(50% - 4px)}.h-boss{top:calc(78px + var(--sat));width:80vw}}@media (max-height: 460px){.screen{gap:8px}.title h1{font-size:clamp(34px,13vh,70px)}.menu-buttons{flex-direction:row;width:auto}.btn{padding:9px 16px;min-height:42px;font-size:12px}.sectors button{width:118px;padding:6px}.sectors button em{display:none}.dialog{padding:14px;gap:7px}.grade{font-size:38px}.h-boss{top:calc(52px + var(--sat))}#btn-missile{width:66px;height:66px;bottom:calc(74px + var(--sab))}.hint{display:none}}@media (prefers-reduced-motion: reduce){#card{animation-duration:2.9s}.cards button:hover{transform:none}}
