:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#ddd3b7;font-synthesis:none;background:#060403;font-family:Courier New,monospace}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit;color:inherit}button:disabled{opacity:.65;cursor:wait}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline-offset:5px;outline:2px solid #f1c55d}.game{background:radial-gradient(#24130d 0,#090605 70%);justify-content:center;align-items:center;width:100%;height:100dvh;display:flex;overflow:hidden}.viewport{aspect-ratio:4/3;isolation:isolate;background:#000;width:min(100vw,133.333dvh);max-height:100dvh;position:relative;overflow:hidden;box-shadow:0 0 90px #000;container-type:inline-size}#canvas{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;display:block}#world-ui{pointer-events:none;position:absolute;inset:0}.wave-info{text-shadow:2px 2px #000;text-transform:uppercase;color:#d6c49d;gap:14px;font-size:clamp(10px,1.6cqw,17px);font-weight:700;display:flex;position:absolute;top:2%;left:2.5%}.wave-info span:first-child{color:#ca4730}.pause-button{pointer-events:auto;background:#170e08a0;border:1px solid #9b80624f;padding:2px 9px;font-size:clamp(13px,2cqw,20px);position:absolute;top:1.5%;right:2%}.enemy-interaction{text-align:center;pointer-events:auto;text-shadow:1px 2px #000;filter:drop-shadow(0 2px 2px #0008);z-index:3;width:max-content;min-width:150px;max-width:65%;position:absolute;top:33%;left:50%;transform:translate(-50%,-100%)}.enemy-name{text-transform:uppercase;color:#dfccac;justify-content:center;gap:12px;margin-bottom:3px;font-size:clamp(10px,1.35cqw,15px);font-weight:700;display:flex}.enemy-name span:last-child{color:#cc5936;letter-spacing:3px}.operation{color:#e0ccad;background:#110b06d9;padding:4px 8px 0;font-size:clamp(10px,1.3cqw,14px);line-height:1.4}#editor{background:#110b06d9;border-bottom:2px solid #8e3b25;padding:2px 10px 3px}.cm-editor{color:#c1b398;text-align:center;background:0 0;font-family:Courier New,monospace;font-size:clamp(18px,2.6cqw,29px);font-weight:700;line-height:1.3}.cm-editor.cm-focused{outline:0}.cm-content{caret-color:#fff3bd;min-width:0!important;padding:3px 0!important}.cm-line{padding:0 3px!important}.cm-scroller{justify-content:center;font:inherit!important;overflow:hidden!important}.cm-gutters{display:none}.cm-fat-cursor{color:#251e13!important;text-shadow:none!important;background:#ede4c6!important;outline:1px solid #fff3c7!important}.cm-cursor{border-left:2px solid #fff3c7!important}.cm-selectionBackground{background:#ecb24c66!important}.armor-glyph{color:#ffb58c;background:#842b20;box-shadow:0 2px #c25835}.weakpoint-glyph{color:#fff6b2;background:#b38518;box-shadow:0 0 0 1px #ffdc71,0 0 12px #edc76577}.key-help{color:#ffda83;background:#110b06d9;padding:5px 6px 2px;font-size:clamp(10px,1.35cqw,15px);line-height:1.4}.input-state{color:#ffbfa3;background:#110b06d9;font-size:clamp(10px,1.2cqw,13px)}.input-state:empty{display:none}.tether{background:linear-gradient(#c55735,#c5573544);width:1px;height:18px;margin:auto}.tether:after{content:"";background:#da6d42;width:5px;height:5px;display:block;position:relative;top:17px;left:-2px;transform:rotate(45deg)}.enemy-marker{text-transform:uppercase;color:#e7bb9e;text-shadow:1px 1px #000;pointer-events:auto;background:#160c07bb;border:1px solid #9c4936;padding:4px 7px;font-size:clamp(9px,1.2cqw,13px);position:absolute;transform:translate(-50%,-100%)}.enemy-marker:hover{border-color:#e8b46a}.game-controls{color:#baab8c;text-shadow:1px 1px #000;justify-content:space-between;gap:12px;font-size:clamp(8px,1.05cqw,12px);line-height:1.5;display:flex;position:absolute;bottom:17%;left:2%;right:2%}.game-controls button{pointer-events:auto;font-size:inherit;white-space:nowrap;background:#100c08a0;border:0;padding:3px 6px}.game-controls button:hover{color:#ffe0a1}.game-controls>span:last-child{gap:4px;display:flex}.run-score{color:#e0b769;text-shadow:2px 2px #000;font-size:clamp(11px,1.6cqw,18px);position:absolute;top:7%;right:2.5%}.combat-feedback{color:#ffd480;text-shadow:3px 3px #280c05;font-size:clamp(20px,3cqw,36px);font-weight:700;position:absolute;top:53%;left:50%;transform:translate(-50%)}.damage-flash{pointer-events:none;opacity:0;position:absolute;inset:0;box-shadow:inset 0 0 110px 20px #e0392588}.hurt .damage-flash{animation:.5s ease-out hurt}.shot{animation:.35s ease-out shot}.screen{z-index:10;text-align:center;background:#0b0705a6;justify-content:center;align-items:center;padding:5%;display:flex;position:absolute;inset:0}.title-screen{image-rendering:pixelated;background:linear-gradient(#13060077,#09040299),url(/art/interpic.png) 50%/cover}.title-screen:after{content:"";pointer-events:none;z-index:-1;position:absolute;inset:0;box-shadow:inset 0 0 100px 25px #000b}#screen-content{width:100%;max-width:600px}.game-title{letter-spacing:-.04em;text-shadow:0 2px #240700,0 5px #431105,3px 9px #130400;margin:0 0 7%;font-family:Impact,Arial Black,sans-serif;font-weight:900;line-height:.75;transform:scaleX(1.08)}.game-title span{color:#bc5124;letter-spacing:.15em;margin-bottom:9px;margin-left:.15em;font-size:clamp(30px,8cqw,84px);display:block}.game-title strong{color:#c85d25;-webkit-text-stroke:1px #f3b35a;-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px #1b0700);background:linear-gradient(#ffdc80 0%,#d27832 25%,#a93818 52%,#561409 90%);-webkit-background-clip:text;background-clip:text;font-size:clamp(75px,21cqw,210px);display:block}.game-menu{flex-direction:column;align-items:center;gap:12px;margin-top:8px;display:flex}.game-menu button,.game-menu a{letter-spacing:1px;text-transform:uppercase;color:#c94f34;text-shadow:2px 2px #190500,1px -1px #efa16b;background:0 0;border:0;padding:0 12px;font-family:Impact,Arial Black,sans-serif;font-size:clamp(20px,3.5cqw,36px);position:relative}.game-menu button:hover,.game-menu button:focus-visible,.game-menu a:hover{color:#f2b767}.game-menu button:before{content:"";width:32px;height:30px;image-rendering:pixelated;background:url(/art/m_skull1.png) 50%/contain no-repeat;position:absolute;top:10%;right:100%}.game-menu a{font-size:clamp(16px,2.5cqw,25px)}.menu-help{color:#b29a78;text-shadow:2px 2px #000;margin:25px 0 0;font-size:clamp(10px,1.5cqw,14px)}.screen h2{text-transform:uppercase;letter-spacing:1px;color:#c95536;text-shadow:3px 3px #260900;margin:0 0 20px;font-family:Impact,Arial Black,sans-serif;font-size:clamp(30px,6cqw,64px)}.tally{color:#d2b789;text-shadow:2px 2px #000;max-width:280px;margin:0 auto 28px;font-size:clamp(14px,2.5cqw,24px);font-weight:700}.tally div{justify-content:space-between;margin:10px 0;display:flex}.tally dd{color:#d75236;margin:0}.result-screen{background:#100804bd}.pause-screen{background:#080402bb}.screen p{color:#d1bd9f;font-size:clamp(10px,1.6cqw,17px);line-height:1.6}#boot-error{overflow-wrap:anywhere}.cm-panels{color:#e9c181;background:#180e08;font-size:12px}@keyframes hurt{0%{opacity:1}to{opacity:0}}@keyframes shot{0%{opacity:1;transform:translate(-50%,-100%)scale(1.08)}to{opacity:0;transform:translate(-50%,-115%)scale(.95)}}@media (width<=500px){.enemy-interaction{max-width:78%}.wave-info{font-size:9px}.game-controls{font-size:8px}.game-controls button{padding:3px}.tether{height:10px}.tether:after{top:9px}.game-menu{gap:10px}.menu-help{margin-top:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.mission-select{justify-content:center;gap:18px;max-width:470px;margin:18px auto 8px;display:flex}.mission-select label{text-align:left;text-transform:uppercase;color:#bda17b;flex-direction:column;gap:5px;font-size:clamp(10px,1.4cqw,14px);display:flex}.mission-select select{max-width:100%;font:inherit;color:#f1c88d;cursor:pointer;background:#1b0e08;border:1px solid #79432b;padding:8px;font-size:clamp(12px,1.8cqw,19px)}.mission-select select:focus-visible{outline:2px solid #f1c55d}#mission-detail{max-width:90%;min-height:2.8em;margin:8px auto 16px;font-size:clamp(9px,1.35cqw,13px)}.audio-toggle{z-index:20;color:#d6c49d;font:inherit;background:#170e08df;border:1px solid #9b80624f;padding:5px 8px;font-size:clamp(9px,1.2cqw,13px);position:absolute;bottom:2%;right:2%}.audio-toggle:hover{color:#ffe0a1}#world-ui:not([hidden])~.audio-toggle{bottom:21%}
