:root{color-scheme:dark;--pink:#ff75c5;--muted:#928da9;--line:#ffffff18;--green:#a6ffb0;--bg:#090817;font-family:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#f8f5ff;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:5px}button{border:0}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}#game{width:100vw;height:100dvh;min-height:540px;position:relative;isolation:isolate;overflow:hidden}#space,#space canvas,.vignette,#hit-flash,#lock-glow{position:absolute;inset:0;width:100%;height:100%}#space{z-index:-5;background:radial-gradient(ellipse at 70% 40%,#423063,#0c112a 55%,#090817)}.vignette{pointer-events:none;z-index:-2;background:linear-gradient(180deg,#090817c9,transparent 24%,transparent 70%,#090817e8),radial-gradient(ellipse at center,transparent 45%,#09081780)}#hit-flash{pointer-events:none;z-index:6;opacity:0;background:radial-gradient(ellipse,transparent 28%,#ff355080);transition:opacity .2s}#hit-flash.hit{opacity:1}#lock-glow{pointer-events:none;z-index:-1;opacity:0;border:2px solid #9cffb070;box-shadow:inset 0 0 100px #5cff7b1a;transition:opacity .25s}#lock-glow.on{opacity:1}.topbar{height:90px;padding:0 3.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;letter-spacing:3px;font-size:22px;font-weight:850}.brand-star{font-size:30px;color:var(--pink)}.brand-divider{color:#777087;font-weight:300;margin-left:8px}.brand-sub{font-size:10px;letter-spacing:2px;font-weight:600;color:#bbb4cf}.top-actions{display:flex;align-items:center;gap:10px}.live-pill{display:flex;gap:8px;align-items:center;color:#c5bdd7;border:1px solid var(--line);border-radius:30px;padding:9px 15px;font-size:9px;letter-spacing:1.3px;margin-right:12px}.live-pill i,.sector-dot,.camera-top i,.privacy i{width:5px;height:5px;background:var(--pink);border-radius:50%;display:inline-block;box-shadow:0 0 9px #ff75c566}.icon-button{width:31px;height:31px;background:transparent;color:#c7c1d6;font-size:18px;border-radius:7px}.icon-button:hover{background:#ffffff12}.battle-hud{display:flex;justify-content:space-between;align-items:center;position:absolute;top:121px;left:3.5%;right:3.5%;pointer-events:none}.fighter{display:flex;gap:15px;align-items:center}.avatar{width:51px;height:51px;display:grid;place-items:center;border-radius:13px;font-size:16px;font-weight:bold}.avatar.pink{border:1px solid #ff91cf55;background:linear-gradient(145deg,#77426788,#4e2c5b88);color:#ffd2eb;box-shadow:0 0 25px #ff6fc90a}.avatar.dark{border:1px solid #e9efff33;background:linear-gradient(140deg,#292836,#15141f);color:#ff767c}.eyebrow{font-size:8px;letter-spacing:1.6px;color:#a49ab9;font-weight:650}.fighter h2{font-size:13px;letter-spacing:1px;margin:5px 0}.fighter h2 span{font-size:7px;color:#a49ab9;margin-left:7px;font-weight:500;letter-spacing:.8px}.hearts{font-size:19px;letter-spacing:5px;color:var(--pink);line-height:22px}.hearts .empty{color:#62556f66}.enemy-card{text-align:right}.enemy-card .hearts{color:#d9d8ef}.versus{display:flex;align-items:center;gap:16px;position:absolute;left:50%;transform:translateX(-50%);font-size:9px;color:#9c93b2;letter-spacing:1.5px}.versus strong{color:#e2d4ed;font-size:27px;font-weight:300}.sector-label{position:absolute;top:210px;right:3.6%;font-size:8px;letter-spacing:2px;color:#9c90b2;display:flex;align-items:center;gap:8px}.sector-dot{width:3px;height:3px;background:#a0a2d9}.sector-label>span:nth-child(2){color:#53485f}.intro-panel{position:absolute;left:8.3%;top:28%;width:400px;transition:opacity .3s}.chapter{display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:1.6px;color:var(--pink)}.chapter b{font-size:7px;font-weight:500;color:#9c8ead;border-left:1px solid #ffffff30;padding-left:15px}.intro-panel h1{font-size:clamp(38px,4.7vw,70px);line-height:1.05;letter-spacing:-2.8px;margin:23px 0 22px;font-weight:750}.intro-panel em{font-family:Georgia,'Times New Roman',serif;color:var(--pink);font-weight:500;letter-spacing:-2.8px}.intro-panel p{color:#b4a9ca;line-height:1.8;font-size:12px;margin-bottom:22px}.intro-rule{font-size:9px;color:#b9adc9;display:flex;gap:12px;align-items:center;margin-bottom:27px}.intro-rule span{font-size:12px;color:var(--pink);letter-spacing:4px}.primary-button{border-radius:6px;background:#f58ecb;color:#2e1633;font-weight:750;font-size:11px;letter-spacing:.3px;display:flex;align-items:center;justify-content:center;gap:11px;min-height:46px;width:240px;box-shadow:0 7px 35px #f76ec71a;transition:background .15s,transform .15s}.primary-button:hover{background:#ffb1de;transform:translateY(-1px)}.primary-button b{font-size:19px;margin-left:auto;font-weight:400}.primary-button>span{font-size:15px}.intro-panel .primary-button{justify-content:flex-start;padding:0 17px}.secondary-button{border:1px solid #ffffff1b;background:#15112188;border-radius:6px;min-height:42px;width:240px;margin-top:9px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#c4b7d4}.secondary-button:hover{background:#30243d}.privacy{margin-top:16px;font-size:8px;color:#8f819e;display:flex;gap:6px;align-items:center}.privacy i{width:4px;height:4px;background:#a497b8}.camera-panel{position:absolute;left:3.5%;bottom:91px;width:225px;background:#100d1d9c;border:1px solid #ffffff1b;border-radius:9px;overflow:hidden;backdrop-filter:blur(15px)}.camera-top{height:32px;padding:0 10px;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1px}.camera-top>span{display:flex;align-items:center;gap:6px}.camera-top i{width:4px;height:4px;background:#8d819d;box-shadow:none}.camera-top i.active{background:var(--green);box-shadow:0 0 9px #a6ffb055}.camera-top b{font-weight:500}.camera-top button{font-size:7px;letter-spacing:.5px;color:#af9dbd;background:transparent;padding:7px 0}.camera-feed{height:117px;position:relative;background:radial-gradient(ellipse at center,#2a213b50,transparent)}.camera-feed video,.camera-feed canvas{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.camera-feed video{transform:scaleX(-1);opacity:.65}#camera-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}#camera-placeholder svg{width:130px;height:72px;stroke:#b39acc;stroke-width:1.1;opacity:.6}#camera-placeholder span{font-size:6px;letter-spacing:1px;color:#867596}.camera-bottom{padding:8px 9px;display:flex;align-items:center;justify-content:space-between;font-size:7px;color:#a494b2;border-top:1px solid #ffffff0b;gap:4px}#tracking-status{max-width:143px;line-height:1.4}.local-badge{font-size:5px;letter-spacing:.6px;color:#776889;white-space:nowrap}.telemetry{position:absolute;bottom:111px;left:calc(3.5% + 263px);display:flex;gap:36px}.telemetry>div{width:85px}.telemetry>div>span{font-size:7px;letter-spacing:1.6px;color:#9e8db0;display:block}.telemetry strong{font-size:29px;line-height:1.8;font-weight:450;font-variant-numeric:tabular-nums;letter-spacing:-1px}.telemetry strong small{font-size:9px;color:#9e8db0;letter-spacing:0}.meter{height:2px;background:#ffffff18;width:75px}.meter i{height:100%;background:#c697e3;display:block;width:0;transition:width .1s}.telemetry .flap-stat{width:110px}.telemetry .mode-caption{font-size:6px;letter-spacing:1px;color:#b7a1c7}.weapon-status{position:absolute;right:3.7%;bottom:115px;display:flex;align-items:center;gap:12px}.weapon-icon{width:42px;height:42px;border:1px solid #ff8bd13d;border-radius:50%;display:grid;place-items:center;color:var(--pink);font-size:24px;background:#ff88ca08}.weapon-status span{display:block;font-size:7px;letter-spacing:1.3px;color:#a48cb1}.weapon-status strong{font-size:10px;display:block;margin-top:6px;font-weight:500;letter-spacing:.8px;color:#e2c1e6}.ammo-light{width:4px;height:22px;background:var(--green);margin-left:14px;box-shadow:0 0 12px #a6ffb030}.ammo-light.wait{background:#89779c;box-shadow:none}.bottom-bar{position:absolute;bottom:0;left:3.5%;right:3.5%;height:67px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.winglab{font-size:10px;font-weight:800;letter-spacing:2px;color:#beafce}.winglab i{font-size:6px;font-style:normal;vertical-align:top;color:#826b94}#controls-hint{display:flex;gap:26px;font-size:8px;color:#aa98ba}#controls-hint span{display:flex;align-items:center;gap:7px}kbd{display:inline-grid;place-items:center;min-width:22px;height:21px;padding:0 4px;border:1px solid #ffffff25;border-bottom-width:2px;border-radius:4px;font-family:inherit;font-size:9px;color:#d2bfe0;white-space:nowrap}.text-button{background:transparent;font-size:7px;letter-spacing:1px;color:#b5a3c4;padding:10px 0}#reticle{position:absolute;left:50%;top:50%;width:58px;height:58px;transform:translate(-50%,-50%);color:#e0cde5a8;opacity:0;transition:color .2s,opacity .2s;pointer-events:none}body.playing #reticle{opacity:1}#reticle>span{position:absolute;background:currentColor}.r-top,.r-bottom{height:11px;width:1px;left:50%}.r-top{top:0}.r-bottom{bottom:0}.r-left,.r-right{width:11px;height:1px;top:50%}.r-left{left:0}.r-right{right:0}#reticle i{position:absolute;left:50%;top:50%;width:3px;height:3px;background:currentColor;border-radius:50%;transform:translate(-50%,-50%)}#reticle:before{content:'';position:absolute;border:1px solid currentColor;border-radius:50%;inset:11px;opacity:.7}#reticle small{position:absolute;top:74px;left:50%;transform:translateX(-50%);font-size:7px;letter-spacing:1.5px;white-space:nowrap}#reticle.locked{color:var(--green);filter:drop-shadow(0 0 7px #a6ffb066)}#reticle.fired:before{inset:3px}#enemy-marker{position:absolute;pointer-events:none;transform:translate(-50%,-50%);width:90px;height:74px;border:1px solid #ff9aab30;border-radius:4px}#enemy-marker span{position:absolute;top:-19px;font-size:6px;letter-spacing:1.5px;color:#d8c5dd;left:50%;transform:translateX(-50%);white-space:nowrap}#enemy-marker.locked{border-color:#a6ffb066}#combat-notice{position:absolute;top:26%;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:2px;color:#ffae93;text-shadow:0 0 20px #ff7a66;pointer-events:none}#toast{position:absolute;left:50%;top:65%;transform:translate(-50%,-50%);font-size:10px;letter-spacing:1.7px;color:#ffb7de;text-shadow:0 0 10px #ff72b9;pointer-events:none;opacity:0;transition:opacity .2s;white-space:nowrap}#toast.show{opacity:1}.pause-panel,.result-panel{position:absolute;z-index:10;top:50%;left:50%;transform:translate(-50%,-50%);background:#130f24ed;border:1px solid #ae89c93b;backdrop-filter:blur(22px);padding:40px 42px;border-radius:14px;box-shadow:0 30px 140px #02010bcc;text-align:center;max-width:calc(100% - 30px);width:420px}.pause-panel h2{font-size:25px}.pause-panel p{font-size:12px;color:#bdaaca;line-height:1.7}.pause-panel button,.result-panel button{margin:22px auto 0}.result-symbol{font-size:52px;color:var(--pink);line-height:1.3;margin-bottom:15px}.result-panel h1{font-size:43px;font-weight:650;letter-spacing:-1.6px;margin:13px 0;color:#ffb6df}.result-panel p{font-size:12px;color:#baa7c9;line-height:1.7}.result-stats{display:flex;justify-content:center;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:25px 0}.result-stats strong{display:block;font-size:22px;font-weight:500}.result-stats span{display:block;font-size:6px;letter-spacing:1px;color:#b49cc4;margin-top:8px}dialog{background:#191126f5;color:#f5e8ff;border:1px solid #c58fe442;border-radius:14px;padding:38px;width:530px;max-width:calc(100% - 28px);box-shadow:0 40px 120px #0009}dialog::backdrop{background:#07040ebd;backdrop-filter:blur(10px)}dialog h2{font-size:30px;margin:10px 0 24px;letter-spacing:-1px}dialog ol{padding-left:20px;margin:0}dialog li{padding-left:5px;font-size:11px;line-height:1.8;color:#bda9cb;margin:12px 0}dialog li b{color:#ffe2f5}.dialog-close{position:absolute;right:15px;top:10px;background:transparent;color:#c6abd7;font-size:27px}.keyboard-help{margin-top:25px;padding:15px;background:#ffffff05;border-radius:8px}.keyboard-help b{font-size:8px;letter-spacing:2px;color:var(--pink)}.keyboard-help p{font-size:10px;color:#bba5cd;line-height:2.8;margin-bottom:0}.help-note{font-size:9px;color:#a28bb5;line-height:1.7;margin-bottom:0}#fatal-error{position:absolute;inset:30%;background:#291a34;padding:30px;border:1px solid var(--pink);border-radius:12px;z-index:50;font-size:14px}body.playing .sector-label{opacity:.6}#touch-controls{position:absolute;bottom:181px;right:3.5%;display:flex;gap:6px}#touch-controls button{height:40px;border-radius:7px;background:#231832cc;border:1px solid #c798dc33;color:#eac9f8;font-size:9px;padding:0 11px;touch-action:none}
@media(min-height:850px){.intro-panel{top:29%}.camera-panel{bottom:105px}.telemetry{bottom:135px}.weapon-status{bottom:135px}}@media(max-width:1000px){.topbar{height:73px}.battle-hud{top:98px}.fighter h2 span{display:none}.sector-label{top:185px}.intro-panel{left:6%;top:26%;width:340px}.intro-panel h1{font-size:50px}.camera-panel{width:195px}.telemetry{left:calc(3.5% + 220px);gap:20px}.telemetry>div{width:65px}.telemetry .flap-stat{width:90px}.weapon-status{bottom:110px}.brand-sub{font-size:8px}.top-actions{gap:3px}}@media(max-width:700px){#game{min-height:500px}.topbar{padding:0 5%;height:65px}.brand{font-size:18px;gap:7px}.brand-sub,.brand-divider,.live-pill{display:none}.battle-hud{top:85px;left:5%;right:5%}.avatar{width:35px;height:38px;font-size:11px;border-radius:8px}.fighter{gap:8px}.fighter h2{font-size:10px;letter-spacing:.5px}.eyebrow{font-size:6px;letter-spacing:1px}.hearts{font-size:15px;letter-spacing:2px}.versus{top:9px;gap:5px}.versus>span:first-child{display:none}.versus strong{font-size:17px}.versus>span:last-child{font-size:7px}.sector-label{display:none}.intro-panel{top:25%;left:7%;width:86%}.chapter{font-size:7px;gap:9px}.chapter b{font-size:6px}.intro-panel h1{font-size:49px;margin-top:18px;margin-bottom:15px}.intro-panel p{font-size:10px;margin:0 0 15px}.intro-rule{margin-bottom:18px;font-size:8px}.primary-button,.secondary-button{width:214px;min-height:42px}.privacy{font-size:7px}.camera-panel{width:142px;bottom:80px;left:5%}.camera-feed{height:78px}.camera-top{padding:0 7px;font-size:6px;height:27px}.camera-top button{font-size:5px}.camera-feed #camera-placeholder svg{height:51px}.camera-feed #camera-placeholder span{font-size:4px}.camera-bottom{padding:6px;font-size:5px}.local-badge{display:none}.telemetry{left:auto;right:5%;bottom:91px;gap:14px}.telemetry>div{width:55px}.telemetry strong{font-size:24px}.telemetry>div>span{font-size:6px}.telemetry .flap-stat{width:51px}.telemetry .mode-caption{font-size:4px;letter-spacing:.5px}.meter{width:45px}.weapon-status{right:5%;bottom:174px;gap:8px}.weapon-icon{height:31px;width:31px;font-size:20px}.weapon-status span{font-size:6px}.weapon-status strong{font-size:8px}.ammo-light{height:17px;margin-left:3px}.bottom-bar{left:5%;right:5%;height:58px}.winglab{font-size:7px;letter-spacing:1px}#controls-hint{gap:7px;font-size:5px}#controls-hint kbd{font-size:6px;min-width:15px;height:16px}#controls-hint span{gap:3px}.text-button{font-size:5px}.result-panel,.pause-panel{padding:30px 22px;width:350px}.result-panel h1{font-size:36px}.result-stats{gap:25px}.result-panel p{font-size:11px}#touch-controls{bottom:220px;right:5%;flex-wrap:wrap;max-width:200px}#combat-notice{top:29%;font-size:7px}#reticle small{font-size:6px}body:not(.playing) .telemetry,body:not(.playing) .weapon-status{display:none}body:not(.playing) .camera-panel{width:160px;bottom:77px}.intro-panel .privacy{max-width:260px}}@media(max-height:720px) and (min-width:701px){.intro-panel{top:29%;left:6%}.intro-panel h1{font-size:46px;margin:15px 0}.intro-panel p{margin-bottom:13px}.intro-rule{margin-bottom:17px}.camera-panel{width:170px;bottom:78px}.camera-feed{height:80px}.telemetry{left:calc(3.5% + 199px);bottom:93px}.weapon-status{bottom:97px}.bottom-bar{height:56px}.privacy{margin-top:10px}}@media(prefers-reduced-motion:reduce){*,*:before{transition:none!important;animation:none!important}}
body:not(.playing) .telemetry,body:not(.playing) .weapon-status{opacity:0;pointer-events:none}
@media(max-height:800px) and (min-width:701px){body:not(.playing) .camera-panel .camera-feed{height:32px}body:not(.playing) .camera-panel .camera-top{height:24px}body:not(.playing) .camera-panel #camera-placeholder svg{height:26px}body:not(.playing) .camera-panel #camera-message{display:none}.intro-panel .intro-rule{margin-bottom:12px}.intro-panel .secondary-button{min-height:36px}.intro-panel .privacy{margin-top:8px}}
