@font-face{font-family:Terminal;src:local('Consolas')}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#0c100f;color:#e1e3d6;font-family:Terminal,'Courier New',monospace}body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:radial-gradient(ellipse at 50% 40%,#24312c 0,#101513 50%,#090c0b 100%)}button,a,select,input{touch-action:manipulation}button,select{font:inherit;color:inherit;background:#151e1b;border:1px solid #485348;padding:13px 18px;cursor:pointer;text-align:left}button:hover,button:focus-visible{background:#354238;border-color:#d7e7a5;outline:none}button:disabled{opacity:.3;cursor:not-allowed}button.primary{background:#d8ef9c;color:#121b14;border-color:#d8ef9c;font-weight:bold}button.primary:hover{background:#efffc9}.primary span{float:right}#shell{width:min(1160px,100%);padding:22px 28px}.masthead{height:54px;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:2px}.brand{font-size:21px;font-weight:bold;color:#e3edcc;text-decoration:none}.brand span,.muted{color:#63725f}.signal{color:#e78c67;font-size:10px}#stage{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid #4c5746;background:#101718}#screen{width:100%;height:100%;display:block;image-rendering:pixelated}.scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0px,transparent 3px,#0002 4px);z-index:3;opacity:.6}.overlay{position:absolute;inset:0;z-index:8;padding:4.5%;background:linear-gradient(90deg,#0b1515f0,#0b161cd9 54%,#0b15174a);display:flex;flex-direction:column}.eyebrow{color:#bfcaac;font-size:10px;letter-spacing:3px}h1{font-size:clamp(42px,7.5vw,92px);letter-spacing:-7px;line-height:.9;margin:25px 0 12px;color:#eef0db;text-shadow:4px 4px #1c2925;font-weight:900}h1 span{display:block;font-size:.46em;letter-spacing:14px;margin:14px 0;color:#d4ee9b}h2{font-size:38px;letter-spacing:-2px;margin:20px 0}.tagline{font-size:12px;color:#a7b6ad;letter-spacing:2px;line-height:1.6;margin:8px 0}.menuBottom{margin-top:auto;display:flex;gap:30px;justify-content:space-between;align-items:end}.brief{font-size:11px;line-height:1.7}.brief .label{color:#d4ee9b;letter-spacing:1px}.brief label{font-size:9px;display:block;color:#8e9b8b;margin-top:12px}select{padding:8px;font-size:11px;width:100%;margin-top:5px}.menuActions{display:grid;gap:8px;width:290px;font-size:11px}.menuFoot{display:flex;justify-content:space-between;border-top:1px solid #72826744;margin-top:22px;padding-top:12px;font-size:8px;letter-spacing:1px;color:#8d9b8b}.panel{background:#0c1717ed;align-items:center;justify-content:center;text-align:center;gap:10px}.panel button{min-width:260px;text-align:center;font-size:12px}.panel p{font-size:12px;color:#b3bdb2;line-height:1.8;max-width:600px;margin:4px 0 14px}.panel label{font-size:12px;display:flex;gap:20px;align-items:center}.panel h2{margin:8px 0}.controls{line-height:1.7!important}input{accent-color:#d8ef9c}.hidden{display:none!important}#gameTop{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font-size:9px;letter-spacing:1px;background:linear-gradient(#07100cbb,transparent);z-index:4}#gameTop b{margin-left:10px;color:#d4ee9b}#gameTop button{padding:6px 10px}#objective{color:#e0d6b1}#toast,#prompt{position:absolute;z-index:5;left:50%;transform:translateX(-50%);text-align:center;font-size:12px;text-shadow:2px 2px #000;pointer-events:none}#toast{top:15%;color:#e0f3ac;width:90%}#prompt{bottom:15%;background:#0b151acc;padding:6px 10px;color:#e8eacc;white-space:nowrap}#prompt:empty{display:none}#crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#def7bb88;pointer-events:none;font-size:24px}#hud{height:98px;background:linear-gradient(#222d25,#141c17);border:1px solid #4c5746;border-top:0;display:grid;grid-template-columns:1.1fr .9fr 2fr .9fr 1.3fr}#hud>div{padding:15px 22px;border-right:1px solid #4c574655}#hud>div:last-child{border:0}#hud label{font-size:9px;letter-spacing:2px;color:#99a88d;display:block;margin-bottom:5px}#hud strong{font-size:32px;line-height:1;color:#d9eab9;font-weight:normal}#hud strong span{font-size:14px;color:#72866a}.meter{height:3px;background:#111a12;margin-top:5px}.meter i{display:block;background:#d8ed9b;width:100%;height:100%}#armor{color:#91babb!important}#slots{display:flex;gap:10px;margin-top:11px}#slots span{padding:5px 10px;border:1px solid #536044;color:#718262;font-size:12px}#slots .selected{background:#d8ed9b;color:#182015;border-color:#d8ed9b}.statusBlock span{font-size:11px;color:#626953}.statusBlock small{display:block;font-size:9px;color:#8e9f83;margin-top:12px}footer{display:flex;justify-content:space-between;font-size:8px;color:#71806e;letter-spacing:1px;margin-top:17px}footer b{font-weight:normal;color:#aebba2}footer em{margin:0 9px}footer i{color:#d8ed9b;font-style:normal;margin-left:9px}#touch{position:absolute;inset:0;z-index:6;pointer-events:none}#stick{position:absolute;bottom:20px;left:25px;width:110px;height:110px;border-radius:50%;border:1px solid #d8ef9c55;background:#12231544;pointer-events:auto;touch-action:none}#stick i{display:block;position:absolute;left:35px;top:35px;width:40px;height:40px;background:#d8ef9c66;border-radius:50%}#lookZone{position:absolute;right:0;top:50px;width:55%;height:55%;pointer-events:auto;touch-action:none}.touchActions{position:absolute;right:18px;bottom:18px;display:flex;gap:8px;pointer-events:auto}.touchActions button{padding:15px 12px;background:#13241999;touch-action:none}#touchFire{border-color:#e79964;color:#f3bb85}@media(max-width:760px){#shell{padding:8px}.masthead{height:36px;font-size:8px;letter-spacing:1px}.signal{display:none}#stage{aspect-ratio:4/3}h1{letter-spacing:-3px;font-size:55px;margin:15px 0 8px}.eyebrow{font-size:8px;letter-spacing:1px}.tagline{font-size:9px}.brief p{display:none}.menuBottom{gap:14px}.menuActions{width:50%;font-size:9px}.menuActions button{padding:10px}.brief{width:46%}.brief .label{font-size:8px}.menuFoot{font-size:6px;margin-top:12px}#hud{height:83px;grid-template-columns:1fr .8fr 1.5fr .8fr}#hud>div{padding:12px 10px}#hud label{font-size:7px;letter-spacing:1px}#hud strong{font-size:25px}.statusBlock{display:none}#slots{gap:5px}#slots span{padding:4px 6px}footer{font-size:6px;line-height:1.6}footer>span:last-child{display:none}#gameTop{padding:8px;font-size:7px}#gameTop b{margin-left:4px}#objective{max-width:45%;text-align:right}#toast,#prompt{font-size:10px}.panel{padding:12px}.panel h2{font-size:26px}.panel p{font-size:10px}.panel button{padding:9px}.panel label{font-size:10px}}@media(max-height:520px) and (orientation:landscape){#shell{width:100%;padding:0 12px}.masthead,footer{display:none}#stage{height:calc(100dvh - 65px);aspect-ratio:auto}#hud{height:65px}#hud>div{padding:7px 18px}#hud strong{font-size:26px}.overlay{padding:2% 4%}h1{font-size:48px;margin:8px 0}.tagline{display:none}.menuFoot{margin-top:10px}h1 span{margin:6px 0}.panel{gap:5px}.panel p{font-size:10px}.panel button{padding:8px}}
@media(max-width:600px) and (orientation:portrait){#stage{aspect-ratio:auto;height:440px}.panel{overflow-y:auto;justify-content:safe center}.panel p{max-width:95%}.panel button{flex-shrink:0}.menuBottom{align-items:start}.menuFoot{font-size:6px}.brief .label{line-height:1.4;display:block}h1{font-size:52px}.tagline{margin-bottom:15px}#stick{width:84px;height:84px;left:14px;bottom:18px}#stick i{left:22px;top:22px}.touchActions{display:grid;grid-template-columns:1fr 1fr;right:12px;bottom:12px;gap:5px}.touchActions button{padding:11px;font-size:10px}#prompt{bottom:26%;font-size:9px}#gameTop{font-size:6px}.statusBlock{display:none}}

/* Original WebP HUD skin; labels stay crisp and accessible HTML. */
#hud{background:#172322 url('assets/frames/hud-panel.webp') center/100% 100%;height:104px}#hud>div{position:relative}.hudIcon{position:absolute;right:8px;top:26px;width:38px;height:38px;object-fit:contain;image-rendering:pixelated;opacity:.8;pointer-events:none}#portrait{width:86px;height:86px;position:absolute;left:8px;top:8px;image-rendering:pixelated}.weaponInfo{padding-left:106px!important}#slots .selected{background:#352a16 url('assets/frames/hud-slot-selected.webp') center/140% 140%;color:#ffdc8c;border-color:#956b37}#crosshair{font-size:0;width:20px;height:20px;background:url('assets/frames/hud-crosshair.webp') center/contain no-repeat;opacity:.8}#healthBar{box-shadow:0 0 6px #b8dc8c66}@media(max-width:760px){#hud{height:86px}#portrait{width:62px;height:62px;left:2px;top:10px}.weaponInfo{padding-left:65px!important}.hudIcon{display:none}#weaponLabel{letter-spacing:0!important;font-size:6px!important}#slots{gap:3px}#slots span{padding:4px}}@media(max-height:520px) and (orientation:landscape){#hud{height:65px}#portrait{width:58px;height:58px;top:3px}.weaponInfo{padding-left:74px!important}.hudIcon{top:20px;width:28px;height:28px}}
/* Trimmed UI skins use their own 9-slice border; atlas frames stay untrimmed. */
#hud{background:#17221f;border:12px solid transparent;border-image:url('assets/ui/panel.webp') 20 fill stretch;border-image-width:12px}
#hud>div{padding-top:6px;padding-bottom:6px}#portrait{top:-2px}.hudIcon{top:16px}
#slots .selected{background:#282619;border:1px solid #c49544;box-shadow:inset 0 0 4px #ffb44a55;color:#ffdb89}
@media(max-width:760px){#hud{border-width:5px;border-image-width:8px}#hud>div{padding-top:9px;padding-bottom:5px}#portrait{top:7px}}
@media(max-height:520px) and (orientation:landscape){#hud{border-width:4px;border-image-width:8px}#hud>div{padding-top:3px;padding-bottom:3px}#portrait{top:0}.hudIcon{top:13px}}
