/* Global color palette and theme variables */
     :root{ --bg:#05070e; --fg:#e6edf3; --muted:#9aa5b1; --accent:#6df2d6; --accent2:#6db8f2; --warn:#ffd56b; --bad:#ff6b6b; --ok:#6bff9a; --danger:#ff9f6b }
    html,body{height:100%;margin:0;background:radial-gradient(1200px 800px at 70% 10%,#0e1430 0%,#0b0f1f 45%,#070a14 100%);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";overflow:hidden}
    .wrap{position:absolute;inset:0;padding:0}
    #bg{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;display:block}
    #game{position:relative;z-index:1;width:100vw;height:100vh;max-width:none;max-height:none;background:linear-gradient(180deg, rgba(17,19,33,.4), rgba(6,8,16,.6));box-shadow:none;border-radius:0;outline:none;pointer-events:none}
    .dock-backdrop{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none;background:#05070e}
    .dock-backdrop img{width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:center center;display:block;opacity:.72;filter:saturate(1.08) contrast(1.06) brightness(.92);transform:scale(1.02)}
    .dock-backdrop::after{content:"";position:absolute;inset:0;background:radial-gradient(760px 520px at 50% 36%,rgba(20,30,48,.08),rgba(3,6,12,.38) 74%),linear-gradient(180deg,rgba(3,6,12,.16) 0%,rgba(3,6,12,.28) 48%,rgba(3,6,12,.58) 100%);box-shadow:inset 0 0 120px rgba(0,0,0,.48)}
    .hidden{display:none !important}
     /* Heads-up display layout */
     #hud{position:absolute;top:10px;left:10px;right:10px;display:flex;gap:8px;align-items:center;justify-content:space-between;font-weight:700;user-select:none;pointer-events:auto;z-index:3}
    .pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:rgba(12,15,28,.6);outline:1px solid rgba(255,255,255,.08);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:auto;box-shadow:0 0 0 1px rgba(109,242,214,.06) inset}
    .stat{display:inline-flex;gap:8px;align-items:center}
    .btn{appearance:none;border:0;cursor:pointer;padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.08);color:var(--fg);font-weight:800}
    .btn:hover{background:rgba(255,255,255,.14)}
    .panel{width:min(880px,92vw);border-radius:18px;padding:18px 20px;background:rgba(10,14,22,.9);outline:1px solid rgba(255,255,255,.08);box-shadow:0 12px 40px rgba(0,0,0,.5)}
    h1{margin:0 0 6px;font-size:clamp(28px,3.4vw,42px);letter-spacing:.5px}
    .sub{margin:4px 0 10px;color:var(--muted)}
    .grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    ul{margin:8px 0 0 18px}
    #dockUI{position:absolute;inset:0;display:none;align-items:center;justify-content:center;padding:24px;z-index:5;pointer-events:none}
    .dock-panel{position:relative;width:min(880px,92vw);max-height:min(86vh,760px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:16px 18px;border-radius:12px;background:rgba(1,8,5,.88);outline:1px solid rgba(114,255,150,.24);box-shadow:0 18px 48px rgba(0,0,0,.62),0 0 34px rgba(57,255,117,.1) inset;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto;overflow:hidden;color:#9bff9b;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 6px rgba(76,255,118,.48)}
    .dock-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(172,255,172,.035) 0,rgba(172,255,172,.035) 1px,transparent 1px,transparent 4px),radial-gradient(900px 380px at 50% 0%,rgba(67,255,108,.12),transparent 68%);mix-blend-mode:screen;opacity:.75}
    .dock-panel::after{content:"";position:absolute;inset:10px;pointer-events:none;border:1px solid rgba(96,255,126,.12);border-radius:8px;box-shadow:0 0 22px rgba(53,255,89,.12) inset}
    .dock-terminal,.dock{position:relative;z-index:1}
    .dock-terminal{grid-column:1/-1;display:grid;gap:8px;padding:10px;border-radius:8px;background:linear-gradient(180deg,rgba(0,16,5,.8),rgba(0,8,3,.74));border:1px solid rgba(90,255,120,.26);box-shadow:0 0 18px rgba(49,255,86,.08) inset}
    .terminal-titlebar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:6px;border-bottom:1px solid rgba(95,255,122,.22);font-size:12px;font-weight:900;letter-spacing:.08em}
    .terminal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
    .terminal-readout{min-width:0;padding:8px;border-radius:6px;background:rgba(0,0,0,.36);border:1px solid rgba(82,255,113,.16)}
    .terminal-label{display:inline-block;margin-right:8px;color:#54d970;font-size:11px;font-weight:900;letter-spacing:.12em}
    .terminal-readout strong{display:block;margin-top:3px;color:#c9ffc9;font-size:13px;line-height:1.25;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .terminal-ticker{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:6px 8px;border-radius:6px;background:rgba(0,0,0,.42);border:1px solid rgba(82,255,113,.16)}
    .ticker-window{min-width:0;overflow:hidden;white-space:nowrap}
    .ticker-track{display:inline-flex;gap:36px;min-width:max-content;animation:terminalTicker 38s linear infinite;color:#c2ffc2;font-size:12px;font-weight:800;letter-spacing:.02em}
    .ticker-track span{display:inline-block}
    @keyframes terminalTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    .dock{min-height:0;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:8px;background:rgba(0,10,4,.68);border:1px solid rgba(88,255,120,.18);box-shadow:0 0 14px rgba(38,255,89,.06) inset}
    .dock h3,.dock h4{margin:0 0 4px;color:#c6ffc6;text-transform:uppercase;letter-spacing:.06em}
    .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
    .list{max-height:180px;overflow:auto;border-radius:8px;background:rgba(255,255,255,.03);padding:8px}
    .dock-panel .list{max-height:min(24vh,210px);background:rgba(0,0,0,.32);border:1px solid rgba(76,255,112,.12);scrollbar-color:rgba(111,255,138,.42) rgba(0,0,0,.28)}
    .item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:6px}
    .dock-panel .item{border:1px solid rgba(79,255,112,.08)}
    .item:nth-child(odd){background:rgba(255,255,255,.03)}
    .dock-panel .item:nth-child(odd){background:rgba(88,255,118,.045)}
    .contract-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
    .contract-title{font-weight:800;line-height:1.2}
    .contract-route{color:var(--muted);font-size:12px;line-height:1.25}
    .contract-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
    .badge{padding:2px 6px;border-radius:999px;background:rgba(255,255,255,.08);font-size:12px}
    .dock-panel .btn,.dock-panel .badge{border-radius:5px;border:1px solid rgba(124,255,150,.28);background:linear-gradient(180deg,rgba(28,48,32,.92),rgba(3,14,6,.96));color:#caffca;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 0 5px rgba(90,255,120,.55);box-shadow:0 2px 0 rgba(0,0,0,.9),0 -1px 0 rgba(255,255,255,.08) inset,0 0 10px rgba(46,255,88,.08) inset}
    .dock-panel .btn:hover{background:linear-gradient(180deg,rgba(42,70,45,.94),rgba(5,22,9,.98));box-shadow:0 2px 0 rgba(0,0,0,.9),0 0 14px rgba(67,255,105,.18) inset}
    .dock-panel .btn:active{transform:translateY(1px);box-shadow:0 1px 0 rgba(0,0,0,.9),0 0 8px rgba(67,255,105,.14) inset}
    .dock-panel .btn:disabled{cursor:not-allowed;opacity:.45;color:#658a65}
    #missionPill{cursor:pointer}
    #radar{position:absolute;right:0;bottom:0;width:300px;height:300px;border-radius:50%;background:#0a0e16;display:grid;place-items:center;font-size:12px;z-index:2;overflow:hidden}
    #radar canvas{border-radius:50%}
    #mini{height:auto;}
    .music-player{position:absolute;left:16px;bottom:16px;width:300px;min-height:76px;z-index:3;pointer-events:auto;display:grid;gap:8px;padding:10px;border-radius:8px;background:rgba(1,8,5,.88);border:1px solid rgba(96,255,126,.26);box-shadow:0 10px 28px rgba(0,0,0,.5),0 0 18px rgba(48,255,88,.1) inset;color:#baffba;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 6px rgba(76,255,118,.45);overflow:hidden}
    .music-player::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(172,255,172,.04) 0,rgba(172,255,172,.04) 1px,transparent 1px,transparent 4px),radial-gradient(260px 120px at 50% 0%,rgba(67,255,108,.13),transparent 72%);mix-blend-mode:screen;opacity:.82}
    .music-player::after{content:"";position:absolute;inset:6px;pointer-events:none;border:1px solid rgba(96,255,126,.12);border-radius:5px;box-shadow:0 0 16px rgba(53,255,89,.1) inset}
    .music-titlebar,.music-controls{position:relative;z-index:1}
    .music-titlebar{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding-bottom:6px;border-bottom:1px solid rgba(95,255,122,.22)}
    .music-marquee{min-width:0;overflow:hidden;white-space:nowrap}
    .music-marquee-track{display:inline-flex;gap:34px;min-width:max-content;animation:musicTicker 18s linear infinite;color:#c2ffc2;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
    .music-marquee-track span{display:inline-block}
    @keyframes musicTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    .music-controls{display:grid;grid-template-columns:48px 48px 48px minmax(0,1fr) auto;align-items:center;gap:6px}
    .music-btn{height:24px;min-width:48px;padding:0 6px;border-radius:5px;border:1px solid rgba(124,255,150,.28);background:linear-gradient(180deg,rgba(28,48,32,.92),rgba(3,14,6,.96));color:#caffca;font:900 10px "Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.04em;text-shadow:0 0 5px rgba(90,255,120,.55);box-shadow:0 2px 0 rgba(0,0,0,.9),0 -1px 0 rgba(255,255,255,.08) inset,0 0 10px rgba(46,255,88,.08) inset;cursor:pointer}
    .music-btn:hover{background:linear-gradient(180deg,rgba(42,70,45,.94),rgba(5,22,9,.98));box-shadow:0 2px 0 rgba(0,0,0,.9),0 0 14px rgba(67,255,105,.18) inset}
    .music-btn:active{transform:translateY(1px);box-shadow:0 1px 0 rgba(0,0,0,.9),0 0 8px rgba(67,255,105,.14) inset}
    .music-btn:disabled{cursor:not-allowed;opacity:.42;color:#658a65}
    .music-btn.is-on{border-color:rgba(168,255,182,.52);color:#efffee;box-shadow:0 2px 0 rgba(0,0,0,.9),0 0 15px rgba(75,255,110,.2) inset}
    .music-mood{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8ee88e;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
    .music-status{padding:2px 5px;border-radius:4px;background:rgba(0,0,0,.38);border:1px solid rgba(82,255,113,.16);color:#caffca;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
    .report-panel{position:absolute;right:16px;top:58px;width:min(340px,calc(100vw - 32px));z-index:8;pointer-events:auto;display:grid;gap:8px;padding:10px;border-radius:8px;background:rgba(1,8,5,.94);border:1px solid rgba(255,213,107,.34);box-shadow:0 12px 34px rgba(0,0,0,.58),0 0 18px rgba(255,213,107,.08) inset;color:#f6ffcf;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 6px rgba(255,213,107,.24)}
    .report-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(255,239,172,.035) 0,rgba(255,239,172,.035) 1px,transparent 1px,transparent 4px);opacity:.7}
    .report-panel > *{position:relative;z-index:1}
    .report-titlebar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,213,107,.22);font-size:12px;font-weight:900;letter-spacing:.08em}
    .report-close{width:24px;height:24px;display:grid;place-items:center;border-radius:4px;border:1px solid rgba(255,213,107,.24);background:rgba(0,0,0,.32);color:#f6ffcf;font:900 16px/1 "Courier New",monospace;cursor:pointer}
    .report-select,.report-comment{width:100%;box-sizing:border-box;border-radius:5px;border:1px solid rgba(255,213,107,.22);background:rgba(0,0,0,.44);color:#f6ffcf;font:inherit;outline:none}
    .report-select{height:32px;padding:0 8px}
    .report-comment{min-height:120px;resize:vertical;padding:8px;line-height:1.35}
    .report-select:focus,.report-comment:focus{border-color:rgba(255,226,141,.58);box-shadow:0 0 0 2px rgba(255,213,107,.12)}
    .report-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center}
    .report-status{min-width:0;color:#ffd56b;font-size:11px;line-height:1.25}
    .debug-menu{position:absolute;left:14px;top:58px;width:min(320px,calc(100vw - 28px));z-index:8;display:grid;gap:10px;padding:10px;border-radius:8px;background:rgba(1,8,5,.94);border:1px solid rgba(96,255,126,.3);box-shadow:0 12px 34px rgba(0,0,0,.58),0 0 18px rgba(48,255,88,.1) inset;color:#baffba;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 6px rgba(76,255,118,.42);pointer-events:auto}
    .debug-menu::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(172,255,172,.04) 0,rgba(172,255,172,.04) 1px,transparent 1px,transparent 4px);opacity:.74}
    .debug-menu > *{position:relative;z-index:1}
    .debug-titlebar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px;border-bottom:1px solid rgba(95,255,122,.22);font-size:12px;font-weight:900;letter-spacing:.08em}
    .debug-hotkey{display:grid;place-items:center;min-width:24px;height:22px;border-radius:4px;border:1px solid rgba(124,255,150,.22);background:rgba(0,0,0,.34);color:#e9ffe9}
    .debug-options{display:grid;grid-template-columns:1fr 1fr;gap:6px}
    .debug-option{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 8px;border-radius:5px;background:rgba(0,0,0,.28);border:1px solid rgba(82,255,113,.14);font-size:12px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
    .debug-option input{accent-color:#6bff9a}
    .debug-stats{min-height:54px;padding:8px;border-radius:5px;background:rgba(0,0,0,.38);border:1px solid rgba(82,255,113,.14);color:#caffca;font-size:11px;line-height:1.35}
    #touchpad{position:absolute;bottom:20px;left:20px;right:20px;display:none;justify-content:space-between;pointer-events:auto}
    .pad{display:grid;grid-template-columns:repeat(2,68px);grid-template-rows:repeat(2,68px);gap:10px;pointer-events:auto}
    .tbtn{width:68px;height:68px;border-radius:16px;background:rgba(255,255,255,.06);outline:1px solid rgba(255,255,255,.12)}
    .fire{width:88px;height:88px;border-radius:999px;align-self:end}
    @media (max-width:820px){#touchpad{display:flex;pointer-events:auto}.hide-mobile{display:none}#dockUI{padding:14px}.dock-panel{grid-template-columns:1fr;max-height:88vh;overflow:auto;padding:14px}.dock-panel .list{max-height:22vh}.terminal-grid{grid-template-columns:1fr}.terminal-titlebar{align-items:flex-start;flex-direction:column}.ticker-track{animation-duration:32s}.music-player{bottom:116px;left:12px;width:min(300px,calc(100vw - 24px))}.report-panel{top:12px;right:12px}.debug-menu{top:12px;left:12px}.debug-options{grid-template-columns:1fr}}
    #missionLog{position:absolute;top:58px;right:10px;width:min(420px,92vw);display:none;gap:8px;padding:10px;border-radius:14px;background:rgba(13,18,28,.95);outline:1px solid rgba(255,255,255,.08);box-shadow:0 10px 30px rgba(0,0,0,.5);z-index:4}
    #missionLog h3{margin:0 0 6px}
    .muted{color:var(--muted)}
    #toasts{position:absolute;left:50%;top:20px;transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;pointer-events:none;z-index:6}
    body.is-docked #toasts{display:none}
    .toast{padding:8px 12px;border-radius:10px;background:rgba(20,28,44,.9);outline:1px solid rgba(255,255,255,.08);box-shadow:0 6px 18px rgba(0,0,0,.4)}
    .overlay{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(900px 600px at 50% 30%,rgba(10,14,22,.55),rgba(7,10,16,.85));backdrop-filter:blur(2px);z-index:5}
    #mapKey{position:absolute;top:20px;left:20px;padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.55);font-size:14px;line-height:1.4}
    #mapKey div{display:flex;align-items:center;gap:6px;margin-bottom:4px}
    #mapKey div:last-child{margin-bottom:0}
      #mapKey .swatch{width:12px;height:12px;border-radius:2px;display:inline-block}
      .overlay .close-btn{position:absolute;top:20px;right:20px}
    .btn:disabled{cursor:not-allowed;opacity:.42;color:#7d8c81}
    #startScreen{background:radial-gradient(900px 600px at 50% 34%,rgba(20,48,28,.24),rgba(2,6,5,.9) 72%),#010604}
    .start-terminal{position:relative;width:min(980px,92vw);height:min(720px,88vh);display:grid;place-items:center;padding:16px;border-radius:10px;background:rgba(1,8,5,.92);border:1px solid rgba(96,255,126,.28);box-shadow:0 24px 70px rgba(0,0,0,.72),0 0 42px rgba(57,255,117,.12) inset;color:#baffba;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:hidden}
    .start-terminal::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(172,255,172,.045) 0,rgba(172,255,172,.045) 1px,transparent 1px,transparent 4px),radial-gradient(720px 320px at 50% 0%,rgba(67,255,108,.14),transparent 70%);opacity:.8}
    .start-terminal::after{content:"";position:absolute;inset:10px;pointer-events:none;border:1px solid rgba(96,255,126,.14);border-radius:7px;box-shadow:0 0 26px rgba(53,255,89,.12) inset}
    .start-image-frame{position:relative;z-index:1;width:min(860px,calc(100vw - 72px));height:min(620px,calc(88vh - 34px));display:grid;place-items:center;overflow:hidden;border-radius:6px;background:#020603;border:1px solid rgba(95,255,122,.18)}
    #startScreen img.start-image{width:100%;height:100%;object-fit:contain;object-position:center center;display:block;filter:saturate(.88) contrast(1.08) brightness(.84) sepia(.18) hue-rotate(62deg)}
    .start-actions{position:absolute;z-index:2;left:50%;bottom:clamp(26px,6vh,54px);transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;width:min(760px,calc(100% - 48px))}
    .start-actions .btn,.terminal-panel .btn{min-width:128px;border-radius:5px;border:1px solid rgba(124,255,150,.3);background:linear-gradient(180deg,rgba(28,48,32,.94),rgba(3,14,6,.98));color:#caffca;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 0 5px rgba(90,255,120,.55);box-shadow:0 2px 0 rgba(0,0,0,.9),0 -1px 0 rgba(255,255,255,.08) inset,0 0 10px rgba(46,255,88,.08) inset;font:900 12px "Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
    .start-actions .btn:hover,.terminal-panel .btn:hover{background:linear-gradient(180deg,rgba(42,70,45,.94),rgba(5,22,9,.98));box-shadow:0 2px 0 rgba(0,0,0,.9),0 0 14px rgba(67,255,105,.18) inset}
    .terminal-subscreen{z-index:7}
    .terminal-panel{position:relative;width:min(760px,92vw);max-height:86vh;display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:8px;background:rgba(1,8,5,.94);outline:1px solid rgba(114,255,150,.28);box-shadow:0 18px 48px rgba(0,0,0,.68),0 0 34px rgba(57,255,117,.12) inset;color:#baffba;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 6px rgba(76,255,118,.45);overflow:auto}
    .terminal-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(172,255,172,.04) 0,rgba(172,255,172,.04) 1px,transparent 1px,transparent 4px),radial-gradient(700px 300px at 50% 0%,rgba(67,255,108,.14),transparent 70%);opacity:.82}
    .terminal-panel > *{position:relative;z-index:1}
    .terminal-panel h1{margin:2px 0 0;color:#d8ffd8;font-size:clamp(30px,4vw,46px);line-height:1;text-transform:uppercase}
    .leaderboard-body{min-height:90px;padding:8px;border-radius:6px;background:rgba(0,0,0,.36);border:1px solid rgba(82,255,113,.16)}
    .leaderboard-body table{width:100%;border-collapse:collapse}
    .leaderboard-body th,.leaderboard-body td{padding:6px 8px;text-align:left;border-bottom:1px solid rgba(96,255,126,.14)}
    .help-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .help-grid > div{padding:10px;border-radius:6px;background:rgba(0,0,0,.36);border:1px solid rgba(82,255,113,.16)}
    .help-grid h3{margin:0 0 6px;color:#c6ffc6;text-transform:uppercase;letter-spacing:.06em}
    .terminal-panel .terminal-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
    #pauseOverlay,#gameOver{z-index:7}
    #pauseOverlay .terminal-modal,#gameOver .terminal-modal{position:relative;width:min(760px,92vw);display:grid;grid-template-columns:minmax(160px,.42fr) minmax(0,1fr);gap:16px;border-radius:8px;padding:16px;background:rgba(1,8,5,.92);outline:1px solid rgba(114,255,150,.28);box-shadow:0 18px 48px rgba(0,0,0,.68),0 0 34px rgba(57,255,117,.12) inset;color:#baffba;font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 6px rgba(76,255,118,.45);overflow:hidden}
    #pauseOverlay .terminal-modal::before,#gameOver .terminal-modal::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(172,255,172,.04) 0,rgba(172,255,172,.04) 1px,transparent 1px,transparent 4px),radial-gradient(700px 300px at 50% 0%,rgba(67,255,108,.14),transparent 70%);opacity:.82}
    #pauseOverlay .terminal-modal::after,#gameOver .terminal-modal::after{content:"";position:absolute;inset:10px;pointer-events:none;border:1px solid rgba(96,255,126,.14);border-radius:6px;box-shadow:0 0 22px rgba(53,255,89,.12) inset}
    .terminal-modal-image{position:relative;z-index:1;width:100%;height:100%;min-height:210px;object-fit:cover;border-radius:6px;border:1px solid rgba(95,255,122,.2);filter:saturate(.8) contrast(1.08) brightness(.72) sepia(.2) hue-rotate(65deg);background:#020603}
    .terminal-modal-content{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;gap:10px}
    .terminal-modal .terminal-titlebar{font-size:12px;color:#c8ffc8}
    .terminal-modal h1{margin:2px 0 0;color:#d8ffd8;font-size:clamp(30px,4vw,46px);line-height:1;text-transform:uppercase}
    .terminal-copy{margin-top:0;color:#8ee88e;font-size:13px;line-height:1.35}
    .terminal-message{padding:9px 10px;border-radius:6px;background:rgba(0,0,0,.36);border:1px solid rgba(82,255,113,.16);color:#caffca;font-size:14px;line-height:1.35}
    #pauseOverlay .terminal-actions,#gameOver .terminal-actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}
    #pauseOverlay .btn,#gameOver .btn{border-radius:5px;border:1px solid rgba(124,255,150,.28);background:linear-gradient(180deg,rgba(28,48,32,.92),rgba(3,14,6,.96));color:#caffca;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 0 5px rgba(90,255,120,.55);box-shadow:0 2px 0 rgba(0,0,0,.9),0 -1px 0 rgba(255,255,255,.08) inset,0 0 10px rgba(46,255,88,.08) inset}
    #pauseOverlay .btn:hover,#gameOver .btn:hover{background:linear-gradient(180deg,rgba(42,70,45,.94),rgba(5,22,9,.98));box-shadow:0 2px 0 rgba(0,0,0,.9),0 0 14px rgba(67,255,105,.18) inset}
    .pilot-row{margin-top:2px;align-items:center;gap:8px}
    .terminal-input{flex:1;min-width:160px;padding:7px 9px;border-radius:5px;border:1px solid rgba(124,255,150,.24);background:rgba(0,0,0,.42);color:#d8ffd8;font:inherit;outline:none}
    .terminal-input:focus{border-color:rgba(160,255,178,.5);box-shadow:0 0 0 2px rgba(72,255,118,.12)}
    @media (max-width:720px){.start-terminal{width:calc(100vw - 24px);height:min(680px,88vh);padding:10px}.start-image-frame{width:calc(100vw - 48px);height:calc(88vh - 24px)}.start-actions{bottom:20px;display:grid;grid-template-columns:1fr 1fr}.start-actions .btn{min-width:0}.help-grid{grid-template-columns:1fr}#pauseOverlay .terminal-modal,#gameOver .terminal-modal{grid-template-columns:1fr;gap:12px;padding:14px;max-height:90vh;overflow:auto}.terminal-modal-image{min-height:120px;max-height:160px}#pauseOverlay .terminal-actions,#gameOver .terminal-actions{display:grid;grid-template-columns:1fr 1fr}.pilot-row{align-items:stretch}.pilot-row label{width:100%}.terminal-input{min-width:0;width:100%}}
    @media (prefers-reduced-motion:reduce){.ticker-track,.music-marquee-track{animation:none}}

    /* life bar */
    #lifeBar{position:absolute;left:0;right:0;top:0;height:8px;background:rgba(255,255,255,.08);z-index:2;}
    #lifeFill{
      height:100%;
      width:100%;
      background:var(--ok);
      box-shadow:0 0 0 rgba(0,0,0,0);
      transition: width 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
    }
