@font-face{font-family:Oxanium;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oxanium-latin-500-normal-tnlOn7Ka.woff2)format("woff2"),url(/assets/oxanium-latin-500-normal-BsTRBkab.woff)format("woff")}@font-face{font-family:Oxanium;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oxanium-latin-600-normal-DW9ldEDP.woff2)format("woff2"),url(/assets/oxanium-latin-600-normal-DNQhW0y0.woff)format("woff")}@font-face{font-family:Oxanium;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/oxanium-latin-700-normal-l0hKEjh4.woff2)format("woff2"),url(/assets/oxanium-latin-700-normal-b_KP-pae.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-semi-condensed-latin-400-normal-DlzeKIMS.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-400-normal-CwTnoNB3.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-semi-condensed-latin-500-normal-G0uxJNrM.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-500-normal-CFOoVYFH.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-600-normal-BkLiAYu4.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-600-normal-DyOfdMBA.woff)format("woff")}:root{--c0:#3fd0ff;--c1:#ff8a3c;--cn:#b9a4ff;--ink:#dbe8ff;--dim:#8fa2c4;--faint:#5a6a8e;--deep:#04060c;--pane:linear-gradient(180deg, #10182ce0, #080d1be6);--pane-solid:linear-gradient(180deg, #11192ef0, #080d1bf2);--well:#00030c52;--lift:#aac8ff0b;--shadow:0 .9em 2.6em #00000080, 0 .15em .5em #00000059;--hi:inset 0 1px 0 #ffffff12;--danger:#ff4a5e;--good:#7dffb0;--font-d:"Oxanium", "Segoe UI", system-ui, sans-serif;--font-b:"Barlow Semi Condensed", "Segoe UI", system-ui, sans-serif;--box-w:min(100vw, 100vh * 2.35);--box-h:min(100vh, 100vw / 1.25);--u:min(var(--box-w) * .011, var(--box-h) * .0195);--accent:var(--c0);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--deep);height:100%;color:var(--ink);font-family:var(--font-b);font-weight:500;font-size:max(13px, var(--u));-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;overscroll-behavior:none;touch-action:none;margin:0;overflow:hidden}#app{width:var(--box-w);height:var(--box-h);margin:auto;position:fixed;inset:0;overflow:hidden;container-type:size}.view{z-index:0;position:absolute;inset:0;overflow:hidden}.view canvas{display:block;position:absolute;inset:0;width:100%!important;height:100%!important}.ui{z-index:1;pointer-events:none;position:absolute;inset:0}.surface{--r:1.1em;border-radius:var(--r);background:var(--pane);box-shadow:var(--hi), var(--shadow);-webkit-backdrop-filter:blur(16px)saturate(1.15);backdrop-filter:blur(16px)saturate(1.15);position:relative}.surface.p0,.surface.p1,.p0>.surface,.p1>.surface{background:radial-gradient(110% 90% at 0 0, color-mix(in srgb, var(--accent) 13%, transparent), transparent 62%), var(--pane)}.surface.p1,.p1>.surface{background:radial-gradient(110% 90% at 100% 0, color-mix(in srgb, var(--accent) 13%, transparent), transparent 62%), var(--pane)}.head-label{font:700 .74rem/1 var(--font-d);letter-spacing:.26em;color:var(--accent);align-items:center;gap:.6em;display:inline-flex}.head-label:before{content:"";background:var(--accent);width:.55em;height:.55em;box-shadow:0 0 .6em color-mix(in srgb, var(--accent) 70%, transparent);border-radius:50%;flex:none}kbd{min-width:1.8em;font:600 .82em/1.5 var(--font-d);letter-spacing:.05em;text-align:center;color:var(--ink);background:#aac8ff1a;border-radius:.4em;margin:0 .1em;padding:.12em .5em .08em;display:inline-block;box-shadow:inset 0 -2px #00000059,inset 0 1px #ffffff14}.btn{--bf:#a0beff1a;--bs:0 0 0 transparent;appearance:none;cursor:pointer;font:600 1rem/1 var(--font-d);letter-spacing:.15em;text-transform:uppercase;color:var(--ink);background:var(--bf);box-shadow:inset 0 1px 0 #ffffff14, var(--bs);outline-offset:3px;-webkit-tap-highlight-color:transparent;border:0;border-radius:999px;outline:2px solid #0000;margin:0;padding:.85em 1.6em;transition:background .15s,color .15s,box-shadow .15s,outline-color .15s,transform .1s}.btn:not(:disabled):hover{--bf:color-mix(in srgb, var(--accent) 24%, #121c34d9);color:#fff}.btn:focus-visible{--bf:color-mix(in srgb, var(--accent) 28%, #121c34e0);--bs:0 0 1.2em color-mix(in srgb, var(--accent) 40%, transparent);outline-color:color-mix(in srgb, var(--accent) 70%, #fff);color:#fff}.btn:not(:disabled):active{--bf:color-mix(in srgb, var(--accent) 40%, #121c34e6);transform:scale(.97)}.btn.sel:not(:disabled){background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 78%, #fff), var(--accent));--bs:0 0 1em color-mix(in srgb, var(--accent) 45%, transparent);color:var(--deep);font-weight:700}.btn.sel:focus-visible{outline-color:#fff}.btn:disabled{cursor:default;color:var(--faint);--bf:#a0beff09;box-shadow:none}.btn.sel:disabled{color:var(--ink);--bf:color-mix(in srgb, var(--accent) 26%, #121c3499)}.opt-row,.pickrow{background:var(--well);border-radius:999px;gap:2px;padding:4px;display:flex;box-shadow:inset 0 1px 3px #00000073}.opt-row .btn,.pickrow .btn{--bf:transparent;box-shadow:var(--bs)}.screen{pointer-events:none;position:absolute;inset:0}.screen button,.screen .dialog{pointer-events:auto}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.title{background:radial-gradient(62% 55% at 50% 34%,#02040a9e,#0000 70%);flex-direction:column;align-items:center;padding:4.2cqh 4cqw 0;display:flex}.logo{flex-direction:column;align-items:center;animation:.7s cubic-bezier(.2,.8,.2,1) both rise;display:flex}.logo-eyebrow{font:600 .9rem/1 var(--font-d);letter-spacing:.72em;color:#a8bbdc;text-shadow:0 0 12px #000000e6;align-items:center;gap:1.1em;padding-left:.72em;display:flex}.logo-eyebrow:before,.logo-eyebrow:after{content:"";background:linear-gradient(90deg, transparent, var(--c0));width:4.5em;height:1px}.logo-eyebrow:after{background:linear-gradient(90deg, var(--c1), transparent);margin-left:-.72em}.logo-mark{--ct:.168em;--cb:.872em;--hz:.545em;font:700 min(8.1cqw, 14.6cqh) / 1 var(--font-d);margin-top:.06em;transform:skew(-12deg)}.logo-title{isolation:isolate;font:inherit;letter-spacing:.035em;word-spacing:.06em;white-space:nowrap;text-align:center;text-transform:uppercase;margin:0;position:relative}.lt-word{margin-right:-.035em;line-height:1;display:inline-block;position:relative}.lt-face{color:#0000;-webkit-text-fill-color:transparent;-webkit-text-stroke:.008em #e1f2ffb3;background-image: linear-gradient(100deg, transparent 44%, #fffffff2 50%, transparent 56%),  linear-gradient(180deg, #fff var(--ct), #e6f4ff calc(var(--ct) + .1em), #a6c4ea calc(var(--hz) - .12em), #43639a calc(var(--hz) - .02em), #0a1330 var(--hz), transparent var(--hz)),  linear-gradient(180deg, transparent var(--hz), #020510b3 calc(var(--hz) + .004em), #02051014 calc(var(--cb) - .07em), #fff6 var(--cb)),  linear-gradient(90deg, #22b4ff 0%, #7fdcff 30%, #e4eeff 50%, #ffc590 64%, #ff7426 100%);filter:drop-shadow(0 .012em #3a5688)drop-shadow(0 .012em #1d2f5a)drop-shadow(0 .014em #0b1430)drop-shadow(0 .03em .03em #000000b3);-webkit-mask-image:linear-gradient(180deg, #000 calc(var(--hz) + .07em), transparent calc(var(--hz) + .07em) calc(var(--hz) + .083em), #000 calc(var(--hz) + .083em) calc(var(--hz) + .155em), transparent calc(var(--hz) + .155em) calc(var(--hz) + .176em), #000 calc(var(--hz) + .176em) calc(var(--hz) + .238em), transparent calc(var(--hz) + .238em) calc(var(--hz) + .266em), #000 calc(var(--hz) + .266em));-webkit-mask-image:linear-gradient(180deg, #000 calc(var(--hz) + .07em), transparent calc(var(--hz) + .07em) calc(var(--hz) + .083em), #000 calc(var(--hz) + .083em) calc(var(--hz) + .155em), transparent calc(var(--hz) + .155em) calc(var(--hz) + .176em), #000 calc(var(--hz) + .176em) calc(var(--hz) + .238em), transparent calc(var(--hz) + .238em) calc(var(--hz) + .266em), #000 calc(var(--hz) + .266em));mask-image:linear-gradient(180deg, #000 calc(var(--hz) + .07em), transparent calc(var(--hz) + .07em) calc(var(--hz) + .083em), #000 calc(var(--hz) + .083em) calc(var(--hz) + .155em), transparent calc(var(--hz) + .155em) calc(var(--hz) + .176em), #000 calc(var(--hz) + .176em) calc(var(--hz) + .238em), transparent calc(var(--hz) + .238em) calc(var(--hz) + .266em), #000 calc(var(--hz) + .266em));background-position:-60% 0,0 0,0 0,0 0;background-repeat:no-repeat;background-size:260% 100%,100% 100%,100% 100%,100% 100%;-webkit-background-clip:text;background-clip:text;line-height:1;animation:1.6s cubic-bezier(.4,0,.2,1) .55s both glint;display:inline-block}@keyframes glint{0%{background-position:160% 0,0 0,0 0,0 0}to{background-position:-60% 0,0 0,0 0,0 0}}.logo-title:before{content:attr(data-text);z-index:-1;color:#0000;background:linear-gradient(90deg, var(--c0) 8%, #9fdcff 45%, #ffc08c 58%, var(--c1) 92%);filter:blur(.075em);opacity:.72;pointer-events:none;-webkit-background-clip:text;background-clip:text;position:absolute;inset:0;transform:translateY(.02em)}.logo-title:after{content:"";z-index:-1;left:-9%;right:-9%;top:calc(var(--hz) - .008em);background:linear-gradient(90deg, transparent, var(--c0) 14%, #f1f8ff 50%, var(--c1) 86%, transparent);transform-origin:50%;pointer-events:none;height:max(2px,.016em);animation:.9s cubic-bezier(.2,.8,.2,1) .15s both draw;position:absolute;box-shadow:0 0 .06em #96d2ffe6,0 0 .22em #78aaff73}@keyframes draw{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:none}}.lt-word:before,.lt-word:after{content:"";top:var(--ct);height:calc(var(--cb) - var(--ct));pointer-events:none;background-repeat:no-repeat;width:1.9em;position:absolute}.lt-word:before{background-image:linear-gradient(90deg,#0000,#3fd0ffd9),linear-gradient(90deg,#0000,#3fd0ff8c),linear-gradient(90deg,#0000,#96e1ffe6),linear-gradient(90deg,#0000,#3fd0ff73);background-position:right 0 top 14%,right 0 top 34%,right 0 top 79%,right 0 top 93%;background-size:62% .022em,100% .012em,80% .03em,45% .014em;margin-right:.12em;right:100%}.lt-word:after{background-image:linear-gradient(270deg,#0000,#ff8a3cd9),linear-gradient(270deg,#0000,#ff8a3c8c),linear-gradient(270deg,#0000,#ffc496e6),linear-gradient(270deg,#0000,#ff8a3c73);background-position:0 14%,0 34%,0 79%,0 93%;background-size:62% .022em,100% .012em,80% .03em,45% .014em;margin-left:.16em;left:100%}.logo-rule{transform-origin:50% 0;-webkit-mask-composite:source-in;background:linear-gradient(90deg,#3fd0ffe6,#e8f3ff 50%,#ff8a3ce6) top/100% 2px no-repeat,repeating-linear-gradient(90deg,#78aaff80 0 1px,#0000 1px 3.125%),repeating-linear-gradient(#78aaff80 0 1px,#0000 1px 18%);width:min(66cqw,118cqh);height:8cqh;margin-top:.4cqh;animation:1.2s .35s both fade;position:relative;transform:perspective(12cqh)rotateX(52deg);-webkit-mask-image:linear-gradient(#000 0%,#00000073 45%,#0000 100%),linear-gradient(90deg,#0000,#000 22% 78%,#0000);mask-image:linear-gradient(#000 0%,#00000073 45%,#0000 100%),linear-gradient(90deg,#0000,#000 22% 78%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.title-body{flex-direction:column;align-items:center;gap:2.2cqh;margin-top:1.2cqh;animation:.7s cubic-bezier(.2,.8,.2,1) .12s both rise;display:flex}.title-modes{flex-direction:column;align-items:stretch;gap:1.3cqh;display:flex}.title-modes .row{display:flex}.title-modes .row .btn-big{flex:auto}.btn-big{outline-offset:-2px;text-align:center;--bf:color-mix(in srgb, var(--accent) 12%, #0c1326d1);--bs:0 .5em 1.6em #00000073;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5em;min-width:clamp(280px,28cqw,520px);padding:.85em 2.2em;font-size:clamp(1.1rem,1.9cqw,2rem);position:relative}.btn-big:before{content:"";background:color-mix(in srgb, var(--accent) 60%, transparent);border-radius:50%;width:.36em;height:.36em;margin-top:-.18em;transition:background .15s,box-shadow .15s;position:absolute;top:50%;left:1.1em}.btn-big:hover:before,.btn-big:focus-visible:before{background:var(--accent);box-shadow:0 0 .6em var(--accent)}.btn-big i{opacity:.55;text-transform:lowercase;margin:0 .25em;font-style:normal;font-weight:500}.btn-big.p0{--accent:var(--c0)}.btn-big.p1{--accent:var(--c1)}.btn-big.pn{--accent:var(--cn)}.title-modes .btn-big{padding-top:.62em;padding-bottom:.62em}.title-opts{--accent:var(--c1);justify-content:center;gap:1.4cqw;padding:.9em 1.2em 1em;display:flex}.opt{flex-direction:column;align-items:center;gap:.8cqh;padding:0 .8cqw;display:flex}.opt-label{font:600 .72rem var(--font-d);letter-spacing:.3em;color:var(--dim);padding-left:.3em}.btn.seg{--accent:var(--c1);min-width:4.4em;padding:.6em 1.1em;font-size:.9rem}.title-controls{gap:1.4cqw;margin-top:auto;margin-bottom:7.2cqh;animation:.7s cubic-bezier(.2,.8,.2,1) .25s both rise;display:flex}.ctl-card{min-width:clamp(200px,17cqw,300px);padding:.95em 1.2em .85em}.ctl-card.p0{--accent:var(--c0)}.ctl-card.p1{--accent:var(--c1)}.ctl-head{margin-bottom:.6em}.ctl-card.p1 .ctl-head{text-align:right}.ctl-row{justify-content:space-between;align-items:center;padding:.22em 0;font-size:.95rem;display:flex}.ctl-label{color:var(--dim);letter-spacing:.04em}.title-foot{color:#a9b9d6;letter-spacing:.06em;pointer-events:none;text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000,0 0 6px #000000e6;justify-content:center;gap:2.5cqw;font-size:.8rem;display:flex;position:absolute;bottom:3.6cqh;left:0;right:0}.title-foot kbd{opacity:.9}.title-credit{text-align:center;color:#b3c2de;letter-spacing:.05em;pointer-events:none;text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000,0 0 6px #000000e6;font-size:.78rem;position:absolute;bottom:1cqh;left:0;right:0}.select-top{justify-content:center;align-items:center;display:flex;position:absolute;top:2.2cqh;left:2cqw;right:2cqw}.select-top .btn-back{--bf:#0c1326c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.7em 1.3em;font-size:.8rem;position:absolute;left:0}.select-title{font:600 .85rem var(--font-d);letter-spacing:.4em;color:var(--dim);text-shadow:0 0 10px #000000f2;padding-left:.4em}.select-center{text-align:center;width:20cqw;font:600 .9rem var(--font-d);letter-spacing:.35em;color:var(--dim);text-shadow:0 0 3px #000000e6,0 0 12px #000c;padding-left:.35em;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.select-center:before,.select-center:after{content:"";background:linear-gradient(90deg,#0000,#bedcff73,#0000);width:60%;height:1px;margin:1.2cqh auto;display:block}.select-center.go{color:var(--good);animation:.5s infinite alternate blink}@keyframes blink{0%{opacity:1}to{opacity:.4}}.side{--accent:var(--c0);width:50%;position:absolute;top:0;bottom:0}.side.p0{left:0}.side.p1{--accent:var(--c1);right:0}.ident{text-align:center;text-shadow:0 0 3px #000000f2,0 2px 18px #000000e6;position:absolute;top:7.5%;left:0;right:0}.pl-tag{font:700 .8rem var(--font-d);letter-spacing:.4em;color:var(--accent);padding-left:.4em}.ship-name{font:700 clamp(1.8rem, 3.5cqw, 3.6rem) / 1.05 var(--font-d);letter-spacing:.14em;color:#f2f7ff;text-shadow:0 0 22px color-mix(in srgb, var(--accent) 55%, transparent), 0 2px 18px #000000e6;padding-left:.14em}.ship-class{font:600 .9rem var(--font-d);letter-spacing:.34em;color:var(--accent);padding-left:.34em}.ship-tagline{color:#a9b9d6;margin-top:.3em;font-size:1rem}.side .panel{--r:1.3em;flex-direction:column;gap:1.2cqh;padding:1.5cqh 1.4cqw 0;animation:.5s both rise;display:flex;position:absolute;inset:58% 3cqw 4.6cqh;overflow:hidden}.cols{flex:auto;grid-template-columns:1fr 1.25fr;gap:1.2cqw;min-height:0;display:grid}.ratings{flex-direction:column;justify-content:space-around;display:flex}.rrow{grid-template-columns:5.6em 1fr;align-items:center;gap:.6em;display:grid}.rlabel{font:600 .72rem var(--font-d);letter-spacing:.16em;color:var(--dim)}.rbar{grid-template-columns:repeat(10,1fr);gap:3px;display:grid}.seg-i{background:#96beff1c;border-radius:999px;height:.6em;transition:background .2s,box-shadow .2s}.seg-i.on{background:var(--accent);box-shadow:0 0 6px color-mix(in srgb, var(--accent) 55%, transparent)}.weapons{background:var(--lift);border-radius:.8em;flex-direction:column;justify-content:space-around;gap:.8cqh;padding:.9cqh 1cqw;display:flex}.w-slot{font:700 .6rem/1 var(--font-d);letter-spacing:.26em;color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent);border-radius:999px;margin-bottom:.3em;padding:.35em .7em .3em .8em;display:inline-block}.w-name{font:700 1rem var(--font-d);letter-spacing:.1em;color:#eef4ff}.w-blurb{color:#a2b3d2;font-size:.86rem;line-height:1.2}.pickrow{align-items:stretch}.pickrow .btn{letter-spacing:.1em;padding:.6em .5em;font-size:.7rem}.pickrow .chip{white-space:nowrap;letter-spacing:.06em;text-align:center;flex:1 1 0;min-width:0;padding-left:.15em;padding-right:.15em;overflow:hidden}.pickrow .arrow{flex:none;padding:.6em 1em}.side.p1 .btn{--accent:var(--c1)}.lockrow{background:var(--well);justify-content:space-between;align-items:center;gap:1cqw;margin:0 -1.4cqw;padding:1.1cqh 1.4cqw 1.3cqh;display:flex}.lock-info{min-width:0}.status{font:700 .75rem var(--font-d);letter-spacing:.3em;color:var(--dim)}.side.active .status{color:var(--accent)}.side.locked .status{color:var(--good)}.hint{color:var(--dim);white-space:nowrap;margin-top:.3em;font-size:.78rem}.btn.lock{--bf:color-mix(in srgb, var(--accent) 30%, #121c34d9);flex:none;padding:.85em 1.6em;font-size:.85rem}.side.locked .btn.lock{--accent:var(--good);background:linear-gradient(180deg, #b6ffd2, var(--good));--bs:0 0 1.1em #7dffb066;color:#032212;font-weight:700}.side.locked .btn.lock:not(:disabled):hover{background:linear-gradient(#d4ffe4,#9dffc4)}.btn.lock:disabled{color:var(--faint);--bf:#a0beff09}.side.waiting .ident,.side.waiting .panel>*{opacity:.4;filter:grayscale(.7)}.hud{--halo:1px 0 0 #000, -1px 0 0 #000, 0 1px 0 #000, 0 -1px 0 #000, 0 0 3px #000000f2, 0 0 7px #000000bf, 0 1px 14px #0000008c;--bar-halo:0 0 0 1px #00000059, 0 0 8px #0000008c;pointer-events:none;position:absolute;inset:0}.hud-panel{isolation:isolate;width:clamp(250px,23em,30cqw);text-shadow:var(--halo);flex-direction:column;gap:.6cqh;display:flex;position:absolute;top:2cqh}.hud-panel:before,.hud-panel:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(100% 100% at 0 0,#02050e33,#02050e17 45%,#0000 78%);width:calc(100% + 4.5em);position:absolute;top:-2cqh;bottom:-2.2em}.hud-panel.p0:before,.hud-panel.p0:after{left:-1.6cqw}.hud-panel.p1:before,.hud-panel.p1:after{background:radial-gradient(100% 100% at 100% 0,#02050e33,#02050e17 45%,#0000 78%);right:-1.6cqw}.hud-panel:after{opacity:0;background:radial-gradient(100% 100% at 0 0,#ff284633,#ff284612 45%,#0000 78%)}.hud-panel.p1:after{background:radial-gradient(100% 100% at 100% 0,#ff284633,#ff284612 45%,#0000 78%)}.hud-panel.low:after{animation:.8s infinite alternate lowpulse}@keyframes lowpulse{0%{opacity:.25}to{opacity:1}}.hud-panel.p0{left:1.6cqw}.hud-panel.p1{text-align:right;right:1.6cqw}.hp-head{align-items:center;gap:.6em;margin-bottom:.1em;display:flex}.p1 .hp-head{flex-direction:row-reverse}.hp-tag{font:700 .72rem/1 var(--font-d);letter-spacing:.12em;color:var(--deep);background:var(--accent);text-shadow:none;border-radius:999px;flex:none;padding:.32em .6em .28em .72em;box-shadow:0 0 8px #00000080}.hp-name{font:600 .88rem var(--font-d);letter-spacing:.14em;color:#eef4ff;white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.hp-pips{filter:drop-shadow(0 0 2px #000000e6);gap:5px;margin-left:auto;display:flex}.p1 .hp-pips{margin-left:0;margin-right:auto}.pip{width:.62em;height:.62em;box-shadow:inset 0 0 0 1.5px var(--accent);background:#02050e80;border-radius:50%;transition:background .3s,box-shadow .3s}.pip.on{background:var(--accent);box-shadow:0 0 9px var(--accent)}.hp-hull{align-items:center;gap:.7em;display:flex}.p1 .hp-hull{flex-direction:row-reverse}.hp-num{min-width:2.6em;font:700 1.5rem/1 var(--font-d);letter-spacing:.02em;color:#fff;text-shadow:var(--halo), 0 0 14px color-mix(in srgb, var(--accent) 45%, transparent);font-variant-numeric:tabular-nums;flex:none}.p0 .hp-num{text-align:right}.p1 .hp-num{text-align:left}.bar{height:.85em;box-shadow:var(--bar-halo);background:#04081273;border-radius:999px;flex:auto;position:relative;overflow:hidden}.bar-hull:after{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 calc(10% - 2px),#03060e99 calc(10% - 2px) 10%);position:absolute;inset:0}.p1 .bar-hull:after{background:repeating-linear-gradient(270deg,#0000 0 calc(10% - 2px),#03060e99 calc(10% - 2px) 10%)}.bar-fill,.bar-ghost{transform-origin:0;will-change:transform;position:absolute;inset:0}.p1 .bar-fill,.p1 .bar-ghost{transform-origin:100%}.bar-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 70%, #000), var(--accent));box-shadow:0 0 12px color-mix(in srgb, var(--accent) 55%, transparent);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.p1 .bar-fill{background:linear-gradient(270deg, color-mix(in srgb, var(--accent) 70%, #000), var(--accent))}.bar-ghost{background:#fff9}.hp-energy{align-items:center;gap:.7em;display:flex}.p1 .hp-energy{flex-direction:row-reverse}.hp-elabel{display:none}.hp-energy .bar{height:.34em}.hp-energy .bar-fill,.p1 .hp-energy .bar-fill{background:#cfe6ff;transition:transform 80ms linear;box-shadow:0 0 8px #bee1ff80}.hp-chips{gap:1em;margin-top:.15em;display:flex}.hp-chips .chip{min-width:0;font:600 .7rem var(--font-d);letter-spacing:.04em;text-transform:uppercase;color:var(--dim);flex:1 1 0;justify-content:space-between;align-items:center;gap:.3em;padding:.15em 0 .45em;transition:color .15s;display:flex;position:relative}.hp-chips .chip:before{content:"";background:#96beff47;border-radius:999px;height:3px;transition:background .15s,box-shadow .15s;position:absolute;bottom:0;left:0;right:0;box-shadow:0 0 0 1px #0000004d,0 0 6px #0009}.chip-name{white-space:nowrap;text-overflow:ellipsis;position:relative;overflow:hidden}.hp-chips .chip kbd{opacity:.8;min-width:0;text-shadow:none;background:#0408128c;flex:none;padding:0 .4em;font-size:.62rem;position:relative}.chip-fill{transform-origin:0;background:color-mix(in srgb, var(--accent) 80%, #fff);border-radius:999px;height:3px;position:absolute;bottom:0;left:0;right:0}.p1 .chip-fill{transform-origin:100%}.hp-chips .chip[data-state=ready]{color:#fff}.hp-chips .chip[data-state=ready]:before{background:var(--accent);box-shadow:0 0 0 1px #0000004d, 0 0 8px color-mix(in srgb, var(--accent) 60%, transparent)}.hp-chips .chip[data-state=cooling]{color:var(--dim)}.hp-chips .chip[data-state=poor]{color:#f3c47c}.hp-chips .chip[data-state=poor]:before{background:#f3c47c8c}.hp-chips .chip[data-state=active]{color:var(--accent);text-shadow:var(--halo), 0 0 10px var(--accent)}.hp-chips .chip[data-state=active]:before{box-shadow:0 0 10px var(--accent);background:#fff}.hp-crit{display:none}.hud-panel.low .bar-hull .bar-fill{background:var(--danger);box-shadow:0 0 14px var(--danger)}.hud-panel.low .hp-num{color:var(--danger)}.hud-panel.dead>*{opacity:.45}.hud-top{isolation:isolate;text-shadow:var(--halo);flex-direction:column;align-items:center;gap:.5cqh;display:flex;position:absolute;top:1.6cqh;left:50%;transform:translate(-50%)}.hud-top:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(50% 100% at 50% 0,#02050e2e,#0000 80%);position:absolute;inset:-1.6cqh -5em -1.5em}.hud-clockbox{flex-direction:column;align-items:center;gap:.2em;display:flex}.hud-round{font:600 .7rem var(--font-d);letter-spacing:.4em;color:#c3d1ea;padding-left:.4em}.hud-clock{font:700 2rem/1 var(--font-d);letter-spacing:.06em;color:#fff;font-variant-numeric:tabular-nums}.hud-clock.urgent{color:var(--danger);animation:1s infinite tick}@keyframes tick{0%,to{opacity:1}50%{opacity:.55}}.hud-warn{font:700 .72rem var(--font-d);letter-spacing:.25em;color:#ff6f80;opacity:0;white-space:nowrap;padding-left:.25em}.hud-warn:empty{visibility:hidden}.hud-warn.on{opacity:1;animation:.7s infinite tick}.banner{text-align:center;opacity:0;pointer-events:none;--accent:#fff;text-shadow:1px 0 0 #000, -1px 0 0 #000, 0 1px 0 #000, 0 -1px 0 #000, 0 0 4px #000000f2, 0 0 12px #000000b3, 0 2px 26px #0009, 0 0 34px color-mix(in srgb, var(--accent) 28%, transparent);flex-direction:column;align-items:center;padding:1.6em 0;display:flex;position:absolute;top:calc(27% - 1.6em);left:0;right:0}.banner-main{font:700 clamp(2.4rem, 5.5cqw, 6rem) / 1 var(--font-d);letter-spacing:.16em;color:#fff;text-transform:uppercase;white-space:nowrap;padding-left:.16em}.banner-sub{font:600 clamp(.85rem, 1.15cqw, 1.25rem) var(--font-d);letter-spacing:.38em;color:#c9d6ee;margin-top:.6em;padding-left:.38em}.banner-sub:empty{display:none}.banner.round .banner-main,.banner.result .banner-main{font-size:clamp(1.7rem,3.3cqw,3.5rem)}.banner.count .banner-main{font-size:clamp(5rem,13cqw,13rem)}.banner.count .banner-sub{margin-top:.3em}.banner.count.on{animation:1s cubic-bezier(.2,.7,.2,1) both count}@keyframes count{0%{opacity:0;transform:scale(1.7)}18%{opacity:1;transform:scale(1)}72%{opacity:1}to{opacity:0;transform:scale(.88)}}.banner.go .banner-main{color:var(--good);font-size:clamp(4rem,10cqw,10rem)}.banner.go.on{animation:.9s cubic-bezier(.2,.7,.2,1) both goout}@keyframes goout{0%{opacity:0;letter-spacing:.5em;transform:scale(.7)}20%{opacity:1;letter-spacing:.16em;transform:scale(1)}65%{opacity:1}to{opacity:0;transform:scale(1.35)}}.banner.round.on,.banner.result.on{animation:.7s cubic-bezier(.2,.8,.2,1) .15s both sweep}.banner.result .banner-main{color:var(--accent)}@keyframes sweep{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translate(-3cqw)}to{opacity:1;clip-path:inset(0);transform:none}}.pause,.results{pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#02040a8c;justify-content:center;align-items:center;animation:.25s both fade;display:flex}.dialog{--r:1.5em;background:var(--pane-solid);flex-direction:column;align-items:stretch;gap:1.1cqh;min-width:clamp(300px,30cqw,560px);padding:1.8em 2em 2em;animation:.35s both rise;display:flex}.dialog.results-dialog{background:radial-gradient(90% 60% at 50% 0, color-mix(in srgb, var(--accent) 14%, transparent), transparent 70%), var(--pane-solid)}.dialog-head{flex-direction:column;align-items:flex-start;gap:.6em;margin:0 .3em 1.4cqh;display:flex}.dialog-eyebrow{letter-spacing:.36em;color:var(--dim);font-size:.72rem}.dialog-title{font:700 clamp(2rem, 3.6cqw, 3.4rem) / 1 var(--font-d);letter-spacing:.12em;color:#fff;margin:0}.dialog-title.win{color:var(--accent);text-shadow:0 0 26px color-mix(in srgb, var(--accent) 50%, transparent)}.results-dialog .dialog-head{align-items:center;margin-bottom:.6cqh}.dialog .row{flex-direction:column;display:flex}.btn-menu{text-align:left;width:100%;padding:.85em 1.5em;font-size:1.05rem}.dialog .btn-menu{--accent:var(--c0)}.results-dialog .btn-menu{--accent:inherit}.btn-menu.primary{--bf:color-mix(in srgb, var(--accent) 20%, #121c34d9)}.results-dialog{min-width:clamp(380px,42cqw,760px)}.score{font:700 clamp(3rem, 6cqw, 6rem) / 1 var(--font-d);justify-content:center;align-items:baseline;gap:.5em;display:flex}.score-n.p0{color:var(--c0);text-shadow:0 0 20px #3fd0ff80}.score-n.p1{color:var(--c1);text-shadow:0 0 20px #ff8a3c80}.score-sep{color:var(--faint)}.stats{background:var(--well);border-radius:1em;flex-direction:column;gap:2px;margin:.8cqh 0 1.2cqh;padding:.9em 1em .6em;display:flex}.st-head,.st-ships,.st-row{grid-template-columns:1fr 9em 1fr;align-items:baseline;gap:1em;display:grid}.st-head{font:700 .85rem var(--font-d);letter-spacing:.2em}.st-head .p0,.st-ships span:first-child,.st-a{text-align:right}.st-head .p1,.st-ships span:last-child,.st-b{text-align:left}.st-head .p0{color:var(--c0)}.st-head .p1{color:var(--c1)}.st-mid{color:var(--dim);letter-spacing:.4em;text-align:center;font-size:.7rem;font-weight:600}.st-ships{font:600 .78rem var(--font-d);letter-spacing:.25em;color:var(--dim);margin:.2em 0 .6em}.st-row{border-radius:.5em;padding:.55cqh .4em}.st-row:nth-of-type(odd){background:var(--lift)}.st-label{text-align:center;font:600 .7rem var(--font-d);letter-spacing:.2em;color:var(--dim)}.st-a,.st-b{font:700 1.5rem/1 var(--font-d);color:#fff;font-variant-numeric:tabular-nums}.result-btns{gap:.6em;display:flex}.result-btns .btn-menu{text-align:center;padding-left:.9em;padding-right:.9em;font-size:.9rem}.notice,.sound-btn,.toast{font:600 .66rem var(--font-d);letter-spacing:.2em;color:#bccbe6;text-transform:uppercase;text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000,0 0 3px #000000f2,0 0 7px #000000bf,0 1px 14px #0000008c;position:absolute}.notice{pointer-events:none;bottom:1.2cqh;left:1.4cqw}.title:not([hidden])~.notice{bottom:6.4cqh}.sound-btn{pointer-events:auto;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.4em .7em;bottom:1cqh;right:1.4cqw}.sound-btn:hover{color:#fff}.sound-btn.off{color:#e6a3b3}.toast{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:5;background:radial-gradient(closest-side,#3c061233,#3c061214 60%,#0000);align-items:center;gap:.8em;padding:1.4em 3em;font-size:.8rem;transition:opacity .25s,transform .25s;display:flex;bottom:5cqh;left:50%;transform:translate(-50%,10px)}.toast:before{content:"";background:var(--danger);width:.6em;height:.6em;box-shadow:0 0 0 1px #0006, 0 0 .6em var(--danger);border-radius:50%;flex:none}.toast.on{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}.select-center.go,.hud-clock.urgent,.hud-warn.on,.hud-panel.low:after{animation:none!important}.hud-panel.low:after{opacity:.8}}.online{justify-content:center;align-items:center;display:flex}.online-dialog{--accent:var(--cn);width:clamp(340px,34cqw,600px)}.online-dialog .btn-menu{--accent:var(--cn);text-align:center}.online-view{flex-direction:column;align-items:stretch;gap:1.1cqh;display:flex}.online-or,.online-label{text-align:center;font:600 .72rem var(--font-d);letter-spacing:.3em;text-transform:uppercase;color:var(--dim);margin:.6cqh 0 0}.dialog .row.join-row{flex-direction:row;gap:.6em}.join-row .btn-menu{flex:none;width:auto}.code-input{appearance:none;background:var(--well);color:#fff;min-width:0;font:700 1.25rem var(--font-d);letter-spacing:.4em;text-align:center;text-transform:uppercase;outline-offset:-2px;-webkit-user-select:text;user-select:text;border:0;border-radius:.5em;outline:2px solid #0000;flex:auto;padding:.6em .8em}.code-input::placeholder{color:var(--faint);letter-spacing:.2em;font-size:.85rem}.code-input:focus-visible{outline-color:color-mix(in srgb, var(--cn) 70%, #fff)}.room-code{text-align:center;font:700 clamp(2.4rem, 4.6cqw, 4.4rem) / 1.1 var(--font-d);letter-spacing:.3em;color:#fff;text-shadow:0 0 26px color-mix(in srgb, var(--cn) 55%, transparent);-webkit-user-select:text;user-select:text;padding-left:.3em}.room-link{text-align:center;color:var(--dim);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;font-size:.82rem}.online-status{text-align:center;min-height:1.4em;font:600 .85rem var(--font-d);letter-spacing:.22em;text-transform:uppercase;color:var(--cn);margin:.6cqh 0}.online-msg,.dialog-msg{max-width:34em;color:var(--ink);margin:0 .3em 1cqh;line-height:1.45}.result-note{text-align:center;min-height:1.3em;font:600 .8rem var(--font-d);letter-spacing:.22em;text-transform:uppercase;color:var(--dim)}.net-wait,.net-ping{z-index:6;pointer-events:none;font-family:var(--font-d);text-transform:uppercase;position:absolute}.net-wait{background:var(--pane-solid);box-shadow:var(--shadow);letter-spacing:.24em;color:#fff;border-radius:.8em;padding:.7em 1.4em;font-size:.95rem;font-weight:600;top:50%;left:50%;transform:translate(-50%,-50%)}.net-ping{letter-spacing:.2em;color:var(--faint);font-size:.68rem;bottom:1em;left:1.2em}
