:root{color:#d8f7ff;background:#020711;font-family:Avenir Next,Trebuchet MS,sans-serif;font-synthesis:none;--cyan: #36e5ff;--frost: #d8f7ff;--coral: #ff5d5d;--amber: #ffbd59;--ink: #020711;--panel: rgba(3, 17, 29, .78)}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;background:var(--ink)}button{color:inherit;font:inherit}button:focus-visible{outline:2px solid var(--amber);outline-offset:4px}.game-shell,.viewport{position:absolute;inset:0}.viewport canvas{display:block;width:100%;height:100%}.scanlines{position:absolute;inset:0;pointer-events:none;opacity:.14;background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(126,231,255,.13) 4px);mix-blend-mode:screen}.game-shell:after{position:absolute;inset:0;content:"";pointer-events:none;box-shadow:inset 0 0 10vw #000000db,inset 0 0 2px #36e5ff4d}.hud{position:absolute;top:max(18px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));left:max(20px,env(safe-area-inset-left));z-index:4;display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.5fr) minmax(300px,1fr) 44px;align-items:start;gap:16px;pointer-events:none;font-family:SFMono-Regular,Consolas,monospace;text-transform:uppercase}.hud-block{min-height:48px;padding:9px 14px 8px;color:#d8f7ff9e;border-left:2px solid var(--cyan);background:linear-gradient(90deg,var(--panel),transparent);clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%);letter-spacing:.16em;font-size:9px}.hud-score strong{display:block;margin-top:2px;color:var(--frost);font-size:20px;font-weight:500;letter-spacing:.08em}.hud-stage{display:grid;gap:10px;padding-top:7px;text-align:center;color:#d8f7ffbf;font-size:9px;letter-spacing:.2em}.hud-stage i,.boss-meter>i{display:block;height:2px;overflow:hidden;background:#d8f7ff24;transform:skew(-28deg)}.hud-stage b,.boss-meter>i b{display:block;width:100%;height:100%;background:var(--cyan);box-shadow:0 0 12px var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .18s linear}.hud-status{display:flex;justify-content:space-between;gap:12px;border-right:1px solid rgba(54,229,255,.25)}.hud-status span{display:grid;gap:4px}.hud-status b{color:var(--frost);font-size:12px;letter-spacing:.1em}.hud-status span:first-child b{color:var(--coral)}.pause-button{width:42px;height:42px;border:1px solid rgba(54,229,255,.34);background:#020a12c7;color:var(--cyan);cursor:pointer;pointer-events:auto}.boss-meter{position:absolute;top:92px;left:50%;z-index:4;width:min(480px,54vw);opacity:0;transform:translate(-50%,-10px);transition:opacity .24s,transform .24s;font-family:Arial Narrow,sans-serif;pointer-events:none}.boss-meter.is-visible{opacity:1;transform:translate(-50%)}.boss-meter>div{display:flex;justify-content:space-between;margin-bottom:6px;color:#d8f7ff85;font-size:9px;letter-spacing:.22em}.boss-meter strong{color:var(--coral);font-weight:700}.boss-meter>i{height:5px}.boss-meter>i b{background:var(--coral);box-shadow:0 0 14px var(--coral)}.depth-rail{position:absolute;right:max(17px,env(safe-area-inset-right));bottom:52px;z-index:3;display:grid;justify-items:end;gap:7px;color:#d8f7ff54;font:8px/1 SFMono-Regular,monospace;letter-spacing:.18em;writing-mode:vertical-rl;pointer-events:none}.depth-rail i{width:1px;height:86px;background:linear-gradient(var(--cyan),transparent)}.transmission{position:absolute;top:50%;left:50%;z-index:5;min-width:min(580px,80vw);padding:18px 34px;color:var(--frost);text-align:center;text-transform:uppercase;border-right:1px solid var(--cyan);border-left:1px solid var(--cyan);background:linear-gradient(90deg,transparent,rgba(2,14,25,.86) 20% 80%,transparent);opacity:0;pointer-events:none;transform:translate(-50%,-45%) scaleX(.7);transition:opacity .22s,transform .36s cubic-bezier(.2,.9,.2,1)}.transmission.is-visible{opacity:1;transform:translate(-50%,-50%) scaleX(1)}.transmission small,.transmission strong{display:block}.transmission small{margin-bottom:7px;color:var(--cyan);font:9px/1 SFMono-Regular,monospace;letter-spacing:.3em}.transmission strong{font-family:Impact,Arial Black,sans-serif;font-size:clamp(22px,3vw,40px);font-weight:400;letter-spacing:.16em}.screen{position:absolute;inset:0;z-index:8;display:grid;place-items:center;overflow:hidden;background:#01070ed6;opacity:1;visibility:visible;transition:opacity .32s,visibility .32s}.screen.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.profile-panel{display:none;gap:9px;margin:22px 0 18px;padding:12px;border-top:1px solid rgba(54,229,255,.32);border-bottom:1px solid rgba(54,229,255,.18);background:#03111dbd;font-family:SFMono-Regular,Consolas,monospace}.screen--profiles .profile-panel{display:grid}.profile-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:#d8f7ff85;font-size:8px;letter-spacing:.16em}.profile-heading strong{color:var(--cyan);font-weight:500;text-align:right}.profile-tools,.profile-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.profile-panel select,.profile-panel input,.profile-panel button{min-height:32px;border:1px solid rgba(216,247,255,.22);border-radius:0;background:#020711d1;color:var(--frost);font:9px SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.profile-panel select,.profile-panel input{min-width:0;padding:0 9px}.profile-panel input::placeholder{color:#d8f7ff57}.profile-panel button{padding:0 12px;border-color:#36e5ff70;color:var(--cyan);cursor:pointer}.profile-panel button:hover{background:#36e5ff1f}.profile-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:7px;max-height:104px;overflow-y:auto}.profile-card{display:grid;gap:4px;min-width:0;padding:8px;border-left:2px solid rgba(216,247,255,.18);background:#d8f7ff09}.profile-card.is-active{border-left-color:var(--cyan);background:#36e5ff17}.profile-card strong{overflow:hidden;color:var(--frost);font:600 11px Avenir Next,Trebuchet MS,sans-serif;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap}.profile-card span,.profile-panel>small{color:#d8f7ff7a;font-size:8px;letter-spacing:.06em}.profile-panel>small{color:#d8f7ff52}.screen-content{position:relative;z-index:2;width:min(720px,calc(100vw - 48px));padding-left:clamp(22px,5vw,72px);border-left:1px solid rgba(54,229,255,.55)}.screen-content>span{display:block;margin-bottom:18px;color:var(--cyan);font:10px/1 SFMono-Regular,Consolas,monospace;letter-spacing:.24em;text-transform:uppercase}.screen h1{max-width:700px;margin:0;color:var(--frost);font-family:Impact,Arial Black,sans-serif;font-size:clamp(58px,11vw,142px);font-weight:400;line-height:.78;letter-spacing:.02em;text-shadow:-5px 4px 0 rgba(54,229,255,.12);white-space:pre-line}.screen p{max-width:520px;margin:28px 0 24px;color:#d8f7ffb3;font-size:clamp(14px,1.4vw,18px);line-height:1.65}.screen button{min-width:230px;padding:15px 22px;border:0;border-right:3px solid var(--cyan);background:var(--frost);color:#04101a;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));cursor:pointer;font:800 11px/1 SFMono-Regular,monospace;letter-spacing:.16em;transition:color .16s,background .16s,transform .16s}.screen button:hover{background:var(--cyan);transform:translate(4px)}.screen-content>small{display:block;margin-top:19px;color:#d8f7ff5c;font:8px/1.7 SFMono-Regular,monospace;letter-spacing:.12em}.sonar-sigil{position:absolute;top:50%;left:66%;width:min(64vw,780px);aspect-ratio:1;opacity:.26;transform:translate(-50%,-50%);animation:sonar-drift 14s linear infinite}.sonar-sigil i{position:absolute;inset:calc(var(--index, 0) * 12%);border:1px solid var(--cyan);border-radius:50%;transform:scaleY(.4) rotate(calc(var(--index, 0) * 7deg))}.sonar-sigil i:nth-child(1){--index: 0}.sonar-sigil i:nth-child(2){--index: 1}.sonar-sigil i:nth-child(3){--index: 2}.sonar-sigil b{position:absolute;top:50%;left:50%;width:62%;height:1px;background:linear-gradient(90deg,var(--cyan),transparent);transform-origin:left;animation:sonar-sweep 3.8s linear infinite}.damage-flash{position:absolute;inset:0;z-index:6;border:0 solid var(--coral);pointer-events:none}.damage-flash.is-hit{animation:damage-pulse .42s ease-out}.touch-controls{display:none;position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));left:max(24px,env(safe-area-inset-left));z-index:7;justify-content:space-between;align-items:end;pointer-events:none;transition:opacity .2s}.touch-stick,.touch-fire{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none}.touch-stick{position:relative;width:112px;height:112px;border:1px solid rgba(54,229,255,.36);border-radius:50%;background:#020f1966}.touch-stick:before,.touch-stick:after{position:absolute;content:"";background:#36e5ff40}.touch-stick:before{top:50%;left:12px;width:calc(100% - 24px);height:1px}.touch-stick:after{top:12px;left:50%;width:1px;height:calc(100% - 24px)}.touch-stick i{position:absolute;top:calc(50% - 22px);left:calc(50% - 22px);z-index:2;width:44px;height:44px;border:1px solid var(--cyan);border-radius:50%;background:#36e5ff29}.touch-fire{width:92px;height:92px;border:1px solid var(--coral);border-radius:50%;background:#ff5d5d24;color:#ffc6c6;font:700 10px/1 SFMono-Regular,monospace;letter-spacing:.15em}@keyframes sonar-drift{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes sonar-sweep{to{transform:rotate(360deg)}}@keyframes damage-pulse{0%{border-width:24px;background:#ff2d2d3d}to{border-width:0;background:transparent}}@media(max-width:900px){.hud{grid-template-columns:minmax(90px,.75fr) minmax(130px,1.4fr) 44px;grid-template-areas:"score stage pause" "status status status";gap:6px 8px}.hud-score{grid-area:score}.hud-stage{grid-area:stage}.pause-button{grid-area:pause}.hud-status{grid-area:status;min-height:32px;padding:5px 10px}.hud-stage{text-align:left}.depth-rail{display:none}.boss-meter{top:116px}.screen-content{padding-left:24px}}@media(hover:none),(pointer:coarse){.touch-controls{display:flex}.screen:not(.is-hidden)+.touch-controls{opacity:0;pointer-events:none}}@media(max-width:600px){.hud{right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left));grid-template-columns:minmax(82px,.75fr) minmax(110px,1.4fr) 40px;gap:6px}.hud-block{padding:7px 8px}.hud-score strong{font-size:16px}.hud-stage{font-size:8px;letter-spacing:.12em}.pause-button{width:40px;height:40px}.touch-controls{display:flex}.profile-panel{gap:6px;margin:11px 0 13px;padding:9px}.profile-heading{font-size:7px}.profile-list{max-height:76px}.profile-panel select,.profile-panel input,.profile-panel button{min-height:29px;font-size:8px}.screen:not(.is-hidden)+.touch-controls{opacity:0;pointer-events:none}}@media(max-height:560px){.hud{top:8px}.boss-meter{top:65px}.screen h1{font-size:clamp(46px,16vh,82px)}.screen p{margin:14px 0}.screen-content>span,.screen-content>small{margin-bottom:9px}.touch-stick{width:88px;height:88px}.touch-fire{width:76px;height:76px}}@media(max-width:900px)and (max-height:560px){.boss-meter{top:112px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}
