:root{
  --bg:#04070a;
  --bg2:#070d12;
  --panel:rgba(9,18,22,.72);
  --panel-solid:#0a1318;
  --line:rgba(0,255,156,.18);
  --line-bright:rgba(0,255,156,.5);
  --green:#00ff9c;
  --green-dim:#0bbf78;
  --amber:#ffb020;
  --red:#ff3b46;
  --blue:#37c7ff;
  --txt:#c9f5e4;
  --txt-dim:#5f8579;
  --mono:'Courier New',ui-monospace,'DejaVu Sans Mono',Consolas,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;width:100%;overflow:hidden}
body{
  background:radial-gradient(120% 120% at 50% -10%,#0a1a1e 0%,var(--bg) 60%,#010304 100%);
  color:var(--txt);font-family:var(--mono);
  letter-spacing:.03em;
  -webkit-font-smoothing:antialiased;
  user-select:none;
}
code{color:var(--green);background:rgba(0,255,156,.08);padding:1px 5px;border-radius:3px}
.dim{color:var(--txt-dim)}
.tiny{font-size:11px}
.mono-dim{color:var(--txt-dim);font-size:12px}
.hidden{display:none !important}

/* ---------- FX layers ---------- */
#matrix-canvas{position:fixed;inset:0;z-index:0;opacity:.28}
#scanlines{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,0) 0px,rgba(0,0,0,0) 2px,rgba(0,0,0,.22) 3px,rgba(0,0,0,0) 4px);
  mix-blend-mode:multiply}
#grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
#flash-layer{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:0;background:#fff;transition:opacity .12s}

/* ---------- screens ---------- */
.screen{position:fixed;inset:0;z-index:5;display:none;overflow:auto}
.screen.active{display:block}

/* ---------- MENU ---------- */
.menu-wrap{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}
.game-title{
  font-size:clamp(48px,11vw,140px);font-weight:900;letter-spacing:.12em;
  color:var(--green);position:relative;line-height:.9;
  text-shadow:0 0 24px rgba(0,255,156,.55),0 0 70px rgba(0,255,156,.25);
}
.game-title::before,.game-title::after{content:attr(data-text);position:absolute;inset:0}
.game-title::before{color:var(--red);animation:glitchA 2.6s infinite steps(2);clip-path:inset(0 0 55% 0);opacity:.7}
.game-title::after{color:var(--blue);animation:glitchB 3.1s infinite steps(2);clip-path:inset(55% 0 0 0);opacity:.6}
@keyframes glitchA{0%,92%,100%{transform:translate(0,0)}93%{transform:translate(-4px,-2px)}96%{transform:translate(3px,1px)}}
@keyframes glitchB{0%,90%,100%{transform:translate(0,0)}91%{transform:translate(4px,2px)}95%{transform:translate(-3px,-1px)}}
.game-sub{margin-top:18px;color:var(--txt);letter-spacing:.5em;font-size:clamp(11px,1.5vw,16px)}
.game-ver{color:var(--txt-dim);margin-top:6px;font-size:12px;letter-spacing:.2em}
.menu-nav{margin-top:52px;display:flex;flex-direction:column;gap:16px;width:min(420px,90vw)}
.menu-foot{margin-top:44px;color:var(--txt-dim);font-size:11px;max-width:520px;line-height:1.6}

.menu-btn{
  display:flex;align-items:center;gap:14px;justify-content:flex-start;
  background:linear-gradient(90deg,rgba(0,255,156,.06),rgba(0,255,156,0));
  border:1px solid var(--line-bright);color:var(--txt);
  padding:16px 22px;font-family:var(--mono);font-size:16px;letter-spacing:.15em;
  cursor:pointer;position:relative;overflow:hidden;transition:transform .15s,background .2s,box-shadow .2s,border-color .2s;
  clip-path:polygon(0 0,100% 0,100% 70%,96% 100%,0 100%);
}
.menu-btn:hover{background:rgba(0,255,156,.14);border-color:var(--green);box-shadow:0 0 22px rgba(0,255,156,.25) inset,0 6px 24px rgba(0,0,0,.5);transform:translateX(6px)}
.menu-btn:active{transform:translateX(2px) scale(.99)}
.menu-btn.danger{border-color:rgba(255,59,70,.5)}
.menu-btn.danger:hover{background:rgba(255,59,70,.14);border-color:var(--red);box-shadow:0 0 22px rgba(255,59,70,.25) inset}
.menu-btn .mb-ico{width:22px;height:22px;flex:0 0 22px;display:inline-flex}
.menu-btn .mb-ico svg{width:100%;height:100%}

/* ---------- panels ---------- */
.panel{
  background:var(--panel);border:1px solid var(--line);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 10px 40px rgba(0,0,0,.5),0 0 0 1px rgba(0,0,0,.4) inset;
}
.doc-panel{max-width:760px;margin:5vh auto;padding:34px;border-radius:4px}
.doc-title{color:var(--green);letter-spacing:.2em;display:flex;align-items:center;gap:12px;margin-bottom:22px;font-size:22px}
.doc-title .mb-ico{width:26px;height:26px}
.doc-body h4{color:var(--amber);margin:18px 0 8px;letter-spacing:.1em}
.doc-body p,.doc-body li{color:var(--txt);line-height:1.8;font-size:14px}
.doc-body ul{margin-left:20px;margin-top:6px}
.doc-body{margin-bottom:26px}

/* credits */
.credits-panel{text-align:center}
.credits-body p{line-height:2;color:var(--txt);font-size:14px}
.credit-logo{font-size:40px;font-weight:900;color:var(--green);letter-spacing:.05em;text-shadow:0 0 26px rgba(0,255,156,.5)}
.credit-logo-sub{letter-spacing:1.2em;color:var(--txt-dim);margin:2px 0 24px;font-size:14px;padding-left:1.2em}

/* ---------- HUD ---------- */
#screen-game{display:none;flex-direction:column;height:100%}
#screen-game.active{display:flex}
#hud{
  display:flex;align-items:center;gap:20px;justify-content:space-between;
  padding:10px 18px;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(6,14,18,.95),rgba(6,14,18,.7));
  z-index:10;flex:0 0 auto;
}
.hud-left{display:flex;align-items:center;gap:10px}
.hud-logo{width:22px;height:22px;color:var(--green);display:inline-flex}
.hud-logo svg{width:100%;height:100%}
.hud-name{color:var(--green);letter-spacing:.3em;font-weight:700}
.hud-stats{display:flex;gap:26px;align-items:center;flex:1;justify-content:center;flex-wrap:wrap}
.stat{display:flex;align-items:center;gap:8px}
.stat-ico{width:18px;height:18px;color:var(--txt-dim);display:inline-flex}
.stat-ico svg{width:100%;height:100%}
.stat-val{font-weight:700;letter-spacing:.08em;font-size:15px}
#stat-money{color:var(--green)}
.trace-stat{gap:10px}
.trace-bar{width:150px;height:9px;background:rgba(255,255,255,.08);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.trace-fill{height:100%;width:0%;background:linear-gradient(90deg,#28e08a,#ffb020 60%,#ff3b46);transition:width .4s}
.hud-right{display:flex;gap:10px}
.hud-btn{
  display:flex;align-items:center;gap:8px;background:rgba(0,255,156,.06);
  border:1px solid var(--line-bright);color:var(--txt);padding:9px 14px;
  font-family:var(--mono);font-size:12px;letter-spacing:.12em;cursor:pointer;
  transition:background .2s,transform .12s,box-shadow .2s;border-radius:2px;
}
.hud-btn:hover{background:rgba(0,255,156,.16);box-shadow:0 0 16px rgba(0,255,156,.2)}
.hud-btn:active{transform:scale(.96)}
.hud-btn.danger{border-color:rgba(255,59,70,.45)}
.hud-btn.danger:hover{background:rgba(255,59,70,.16)}
.hud-btn .mb-ico{width:15px;height:15px;display:inline-flex}
.hud-btn .mb-ico svg{width:100%;height:100%}

/* ---------- game grid ---------- */
#game-grid{flex:1;display:grid;grid-template-columns:280px 1fr 320px;gap:12px;padding:12px;overflow:hidden;min-height:0}
#game-grid > .panel{border-radius:4px;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.pane-title{padding:12px 14px;border-bottom:1px solid var(--line);color:var(--green);letter-spacing:.15em;font-size:13px;display:flex;align-items:center;gap:9px;flex:0 0 auto}
.pane-title .mb-ico{width:16px;height:16px;display:inline-flex}
.pane-title .mb-ico svg{width:100%;height:100%}
.pane-hint{padding:10px 14px;color:var(--txt-dim);font-size:11px;line-height:1.6;border-bottom:1px dashed var(--line)}

/* targets */
#targets-list{overflow:auto;flex:1;padding:8px}
.target-node{
  display:flex;gap:10px;align-items:center;padding:11px 12px;margin-bottom:8px;
  border:1px solid var(--line);background:rgba(0,0,0,.25);cursor:pointer;
  transition:background .18s,border-color .18s,transform .12s;border-radius:3px;
}
.target-node:hover{background:rgba(0,255,156,.08);border-color:var(--line-bright);transform:translateX(3px)}
.target-node .tn-ico{width:30px;height:30px;flex:0 0 30px;color:var(--green);display:inline-flex}
.target-node .tn-ico svg{width:100%;height:100%}
.tn-meta{min-width:0;flex:1}
.tn-name{font-size:13px;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tn-ip{font-size:11px;color:var(--txt-dim)}
.tn-lock{font-size:10px;letter-spacing:.1em;padding:2px 6px;border-radius:3px}
.tn-lock.locked{color:var(--red);border:1px solid rgba(255,59,70,.4)}
.tn-lock.open{color:var(--green);border:1px solid var(--line-bright)}

/* terminal */
#center-pane{display:flex;flex-direction:column;gap:12px;min-height:0}
#terminal{flex:1;border-radius:4px;display:flex;flex-direction:column;min-height:0;padding:12px}
#term-output{flex:1;overflow:auto;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}
#term-output .l{margin-bottom:2px}
#term-output .c-green{color:var(--green)}
#term-output .c-amber{color:var(--amber)}
#term-output .c-red{color:var(--red)}
#term-output .c-blue{color:var(--blue)}
#term-output .c-dim{color:var(--txt-dim)}
#term-output .c-cmd{color:#fff}
#term-input-row{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:10px;margin-top:8px}
.prompt{color:var(--green);font-size:13px;flex:0 0 auto}
#term-input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-family:var(--mono);font-size:14px;caret-color:var(--green)}
.caret{width:9px;height:16px;background:var(--green);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}

/* control panel */
#control-pane{flex:0 0 auto;max-height:46%;overflow:auto;border-radius:4px;padding:14px;border-color:var(--line-bright);box-shadow:0 0 30px rgba(0,255,156,.08) inset}
#control-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px;border-bottom:1px solid var(--line);padding-bottom:12px}
#control-title{color:var(--green);letter-spacing:.12em;font-size:17px}
#control-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.action-btn{
  display:flex;align-items:center;gap:11px;text-align:left;
  background:rgba(0,0,0,.3);border:1px solid var(--line);color:var(--txt);
  padding:12px 13px;cursor:pointer;font-family:var(--mono);border-radius:3px;
  transition:background .18s,border-color .18s,transform .12s,box-shadow .2s;
}
.action-btn:hover{background:rgba(0,255,156,.1);border-color:var(--line-bright);transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.4)}
.action-btn:active{transform:translateY(0) scale(.98)}
.action-btn.sev-high{border-color:rgba(255,59,70,.4)}
.action-btn.sev-high:hover{background:rgba(255,59,70,.12);border-color:var(--red);box-shadow:0 0 20px rgba(255,59,70,.2)}
.action-btn.sev-restore{border-color:rgba(55,199,255,.35)}
.action-btn.sev-restore:hover{background:rgba(55,199,255,.12);border-color:var(--blue)}
.ab-ico{width:26px;height:26px;flex:0 0 26px;color:var(--green);display:inline-flex}
.action-btn.sev-high .ab-ico{color:var(--red)}
.action-btn.sev-restore .ab-ico{color:var(--blue)}
.ab-ico svg{width:100%;height:100%}
.ab-meta{min-width:0}
.ab-label{font-size:13px;color:#fff;line-height:1.2}
.ab-sub{font-size:10px;color:var(--txt-dim);margin-top:3px}

/* feed */
#feed-view{position:relative;margin:10px;border:1px solid var(--line);border-radius:3px;overflow:hidden;flex:0 0 auto}
#feed-img{width:100%;height:190px;object-fit:cover;display:block;filter:saturate(1.05) contrast(1.05);transition:filter .3s}
#feed-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,.85),transparent);padding:8px 10px;font-size:11px;letter-spacing:.1em;color:var(--green)}
#feed-view::after{content:"● REC";position:absolute;top:8px;right:10px;color:var(--red);font-size:10px;letter-spacing:.1em;animation:blink 1.4s steps(1) infinite}
#feed-log{overflow:auto;flex:1;padding:6px 12px 12px;font-size:11px;line-height:1.7}
#feed-log .fl{padding:4px 0;border-bottom:1px dashed rgba(255,255,255,.05);color:var(--txt-dim)}
#feed-log .fl b{color:var(--amber)}

/* ---------- modals ---------- */
.modal-overlay{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(4px)}
.modal-overlay.open{display:flex}
.modal{position:relative;border:1px solid var(--line-bright);border-radius:6px;overflow:hidden;max-width:100%;max-height:100%;box-shadow:0 30px 90px rgba(0,0,0,.7)}
.market-modal{width:min(940px,96vw);background:var(--panel-solid)}
.modal-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.16;filter:saturate(1.1)}
.modal-inner{position:relative;padding:22px;max-height:88vh;overflow:auto}
.modal-head{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding-bottom:14px}
.modal-head h2{color:var(--green);letter-spacing:.12em;display:flex;align-items:center;gap:10px;font-size:20px;flex:1}
.modal-head h2 .mb-ico{width:22px;height:22px;display:inline-flex}
.modal-money{display:flex;align-items:center;gap:7px;color:var(--green);font-weight:700}
.modal-money .mb-ico{width:16px;height:16px;display:inline-flex}
.icon-btn{background:transparent;border:1px solid var(--line);color:var(--txt);width:34px;height:34px;cursor:pointer;border-radius:3px;display:flex;align-items:center;justify-content:center}
.icon-btn:hover{background:rgba(255,59,70,.15);border-color:var(--red)}
.icon-btn .mb-ico{width:16px;height:16px;display:inline-flex}
.market-tag{color:var(--txt-dim);font-style:italic;font-size:12px;margin:14px 0}
#market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.shop-card{border:1px solid var(--line);background:rgba(0,0,0,.4);border-radius:4px;padding:15px;display:flex;flex-direction:column;gap:8px;transition:border-color .2s,transform .15s}
.shop-card:hover{border-color:var(--line-bright);transform:translateY(-3px)}
.shop-head{display:flex;align-items:center;gap:10px}
.shop-ico{width:30px;height:30px;flex:0 0 30px;color:var(--green);display:inline-flex}
.shop-ico svg{width:100%;height:100%}
.shop-name{font-size:14px;color:#fff}
.shop-cat{font-size:10px;letter-spacing:.15em;color:var(--amber)}
.shop-desc{font-size:11px;color:var(--txt-dim);line-height:1.6;flex:1}
.shop-foot{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.shop-price{color:var(--green);font-weight:700}
.buy-btn{background:rgba(0,255,156,.12);border:1px solid var(--line-bright);color:var(--green);padding:7px 14px;cursor:pointer;font-family:var(--mono);font-size:12px;letter-spacing:.1em;border-radius:2px;transition:background .18s}
.buy-btn:hover{background:rgba(0,255,156,.24)}
.buy-btn.owned{color:var(--txt-dim);border-color:var(--line);background:transparent;cursor:default}
.buy-btn.cant{opacity:.5;cursor:not-allowed}

.small-modal{width:min(460px,94vw);background:var(--panel-solid);padding:28px;text-align:center}
.modal-title{color:var(--amber);letter-spacing:.2em;margin-bottom:22px;font-size:20px}
.pause-btns{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}

/* ---------- scene overlay ---------- */
#scene-overlay{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;padding:24px}
#scene-overlay.open{display:flex;animation:fadeIn .3s}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.scene-card{width:min(880px,96vw);max-height:92vh;overflow:auto;border:1px solid var(--line-bright);border-radius:6px;background:var(--panel-solid);box-shadow:0 0 80px rgba(0,255,156,.12)}
.scene-img-wrap{position:relative;height:320px;overflow:hidden}
#scene-img{width:100%;height:100%;object-fit:cover;animation:sceneZoom 8s ease-out forwards}
@keyframes sceneZoom{from{transform:scale(1.12)}to{transform:scale(1)}}
#scene-badge{position:absolute;top:14px;left:14px;padding:6px 12px;font-size:12px;letter-spacing:.2em;border-radius:3px;background:rgba(0,0,0,.7);border:1px solid var(--red);color:var(--red)}
.scene-content{padding:24px}
#scene-title{color:var(--green);letter-spacing:.1em;margin-bottom:16px;font-size:22px}
#scene-log{font-size:14px;line-height:1.9;margin-bottom:22px}
#scene-log .sline{opacity:0;transform:translateY(6px);animation:sline .5s forwards}
#scene-log .sline.dmg{color:var(--red)}
#scene-log .sline.warn{color:var(--amber)}
#scene-log .sline.good{color:var(--green)}
#scene-log .sline.info{color:var(--txt)}
@keyframes sline{to{opacity:1;transform:translateY(0)}}

/* ---------- courtroom ---------- */
#screen-court{display:none}
#screen-court.active{display:flex;align-items:center;justify-content:center;padding:24px}
.court-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.32;z-index:-1}
.court-content{width:min(960px,96vw);display:flex;flex-direction:column;gap:18px}
.court-cast{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.court-cast figure{width:160px;text-align:center}
.court-cast img{width:100%;height:190px;object-fit:cover;border:1px solid var(--line-bright);border-radius:4px;filter:saturate(1.05)}
.court-cast figcaption{font-size:10px;color:var(--txt-dim);margin-top:6px;letter-spacing:.08em}
.court-panel{padding:24px;border-radius:6px;text-align:center}
.court-title{color:var(--red);letter-spacing:.2em;font-size:26px;margin-bottom:16px;text-shadow:0 0 20px rgba(255,59,70,.4)}
#court-log{font-size:14px;line-height:1.9;text-align:left;margin-bottom:16px;color:var(--txt)}
#court-verdict{font-size:16px;color:var(--amber);letter-spacing:.08em;margin-bottom:22px;line-height:1.7}
#court-defense{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
#court-defense p{font-size:13px;line-height:1.6}
.defense-row{display:flex;flex-direction:column;gap:10px}
#court-defense .menu-btn{width:100%;font-size:13px}
.court-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.court-btns .menu-btn{width:auto}

/* ---------- exit ---------- */
#screen-exit.active{display:flex;align-items:center;justify-content:center}
.exit-wrap{text-align:center}
.exit-title{color:var(--red);letter-spacing:.2em;font-size:clamp(28px,6vw,56px);margin-bottom:18px}
.exit-wrap .menu-btn{margin:26px auto 0;width:min(320px,80vw)}

/* ---------- toast ---------- */
#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);z-index:90;
  background:var(--panel-solid);border:1px solid var(--line-bright);color:var(--txt);
  padding:12px 20px;border-radius:4px;font-size:13px;letter-spacing:.05em;opacity:0;pointer-events:none;
  transition:opacity .25s,transform .25s;box-shadow:0 10px 30px rgba(0,0,0,.5);max-width:90vw}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
#toast.err{border-color:var(--red);color:#ffd0d3}
#toast.good{border-color:var(--green);color:#c9ffe9}

/* screen shake */
.shake{animation:shake .5s}
@keyframes shake{0%,100%{transform:translate(0,0)}10%{transform:translate(-6px,3px)}20%{transform:translate(7px,-4px)}30%{transform:translate(-8px,2px)}40%{transform:translate(6px,4px)}50%{transform:translate(-5px,-3px)}60%{transform:translate(5px,2px)}70%{transform:translate(-4px,3px)}80%{transform:translate(3px,-2px)}90%{transform:translate(-2px,1px)}}

/* scrollbars */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:rgba(0,0,0,.3)}
::-webkit-scrollbar-thumb{background:rgba(0,255,156,.25);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:rgba(0,255,156,.45)}

/* target search + people */
.target-search{margin:0 12px 8px;padding:9px 11px;background:rgba(0,0,0,.35);border:1px solid var(--line);
  color:var(--txt);font-family:var(--mono);font-size:12px;border-radius:3px;outline:none;flex:0 0 auto}
.target-search:focus{border-color:var(--line-bright);box-shadow:0 0 12px rgba(0,255,156,.15)}
.target-search::placeholder{color:var(--txt-dim)}
.pane-sub{padding:8px 12px 4px;color:var(--amber);font-size:10px;letter-spacing:.22em;
  border-top:1px dashed var(--line);margin-top:6px}
.pane-sub:first-child{border-top:none;margin-top:0}

/* data vendor banner in market */
.data-vendor{display:flex;align-items:center;gap:16px;justify-content:space-between;
  border:1px solid rgba(255,176,32,.4);background:rgba(255,176,32,.06);border-radius:4px;
  padding:14px 16px;margin:16px 0}
.data-vendor .dv-left{display:flex;align-items:center;gap:12px}
.data-vendor .shop-ico{width:30px;height:30px;flex:0 0 30px;color:var(--amber);display:inline-flex}
.data-vendor .shop-ico svg{width:100%;height:100%}
.data-vendor .shop-desc b{color:#fff}
.data-vendor .buy-btn{border-color:rgba(255,176,32,.6);color:var(--amber);background:rgba(255,176,32,.12)}
.data-vendor .buy-btn:hover{background:rgba(255,176,32,.24)}

/* responsive */
@media(max-width:1000px){
  #game-grid{grid-template-columns:1fr;grid-template-rows:auto auto auto;overflow:auto}
  #targets-pane,#feed-pane{max-height:280px}
  #control-pane{max-height:none}
  .hud-stats{gap:14px}
  .trace-bar{width:90px}
}
