<!-- SOLID CITY · part 2903 -->
tn').addEventListener('click',()=>setPaused(false));

  const keyMap={ArrowUp:'up',ArrowDown:'down',ArrowLeft:'left',ArrowRight:'right',w:'w',a:'a',s:'s',d:'d',' ':'boost'};
  window.addEventListener('keydown',e=>{if(paused)return;if(keyMap[e.key]&&coordination.owner('navigation')==='human'){state.keys[keyMap[e.key]]=true;e.preventDefault()}if((e.key==='f'||e.key==='F')&&coordination.owner('protection')==='human'){e.preventDefault();humanFire()}});
  window.addEventListener('keyup',e=>{if(keyMap[e.key])state.keys[keyMap[e.key]]=false});
  $$('[data-move]').forEach(b=>{const k=b.dataset.move;const on=e=>{e.preventDefault();state.keys[k]=true;b.classList.add('pressed')},off=e=>{e.preventDefault();state.keys[k]=false;b.classList.remove('pressed')};b.addEventListener('pointerdown',on);b.addEventListener('pointerup',off);b.addEventListener('pointercancel',off);b.addEventListener('pointerleave',off)});
  function heldButton(el,key){const on=e=>{e.preventDefault();state[key]=true;el.classList.add('pressed')},off=e=>{e.preventDefault();state[key]=false;el.classList.remove('pressed')};el.addEventListener('pointerdown',on);el.addEventListener('pointerup',off);el.addEventListener('pointercancel',off);el.addEventListener('pointerleave',off)}
  heldButton($('#stabilizeBtn'),'stabilizeHeld');heldButton($('#tractorBtn'),'extractHeld');
  function humanFire(){humanAction('protection','fire',()=>{const e=nearestEnemy();if(e)fireAt(e,'human');else showToast('No interceptor in range.')})}
  $('#fireBtn').addEventListener('click',humanFire);$('#pulseBtn').addEventListener('click',()=>humanAction('protection','pulse',()=>{state.ship.pulse=1.4;state.ship.shield=Math.min(100,state.ship.shield+22);recordEvent('shield',{owner:'human'})}));
  $('#repairBtn').addEventListener('click',()=>humanAction('support','repair',()=>repair('human')));$('#lifeBtn').addEventListener('click',()=>humanAction('support','life-support',()=>{if(state.ship.cargo){state.ship.cargo.hp=Math.min(100,state.ship.cargo.hp+16);recordEvent('lifeSupport',{owner:'human'})}else showToast('No pod aboard.')}));

  resetState();draw();requestAnimationFrame(loop);
})();
</script>
</body>
</html>


===== FILE: public/city/rescue/index.html.bak-cityreturn-20261011 =====
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, maximum-scale=1" />
  <meta name="color-scheme" content="light dark" />
  <link rel="icon" href="data:," />
  <title>Rescue Wing</title>
  <style>
    :root {
      color-scheme: light dark;
      --bg:#dce8ec; --panel:#f7fbfc; --panel2:#eaf2f4; --ink:#10232c; --muted:#405b67;
      --line:#93abb4; --cyan:#007f91; --cyan2:#00a4ad; --gold:#9b6500; --danger:#ba2639;
      --human:#b06b00; --ai:#007f91; --ok:#148056; --shadow:0 14px 35px rgba(17,39,48,.16);
    }
    @media (prefers-color-scheme: dark) {
      :root {
        --bg:#061117; --panel:#0b1b23; --panel2:#102730; --ink:#ecfbff; --muted:#a7c0c9;
        --line:#294652; --cyan:#42dce5; --cyan2:#92f9f3; --gold:#ffc857; --danger:#ff6375;
        --human:#ffc857; --ai:#42dce5; --ok:#5ce0a0; --shadow:0 18px 45px rgba(0,0,0,.4);
      }
    }
    *{box-sizing:border-box}
    html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
    body{overflow-x:hidden}
    button{font:inherit;color:inherit}
    button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
    .shell{width:min(1440px,100%);margin:auto;padding:clamp(10px,2vw,24px);padding-bottom:calc(28px + env(safe-area-inset-bottom))}
    .mission-strip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);padding:14px 16px;margin-bottom:12px}
    .eyebrow{font:700 12px/1 "Arial Narrow","Aptos Narrow",system-ui,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:var(--cyan)}
    .objective{font:700 clamp(21px,3vw,34px)/1.05 "Arial Narrow","Aptos Narrow",system-ui,sans-serif;margin:3px 0 5px;max-width:780px}
    .brief{font-size:13px;color:var(--muted)}
    .status-line{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
    .status-pill{display:flex;gap:7px;align-items:center;padding:7px 10px;background:var(--panel2);border:1px solid var(--line);font:600 12px/1 system-ui,-apple-system,"Segoe UI",sans-serif;white-space:nowrap}
    .dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok)}
    .layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);gap:12px;align-items:start}
    .battle-wrap{position:relative;background:#020a0f;border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);overflow:hidden}
    #battle{display:block;width:100%;height:auto;aspect-ratio:16/10;touch-action:none}
    .hud-to