.upgrade-lab-summary {
  display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px;
}
.upgrade-lab-summary > * {
  flex:1 1 120px; border:1px solid rgba(0,255,157,.25); border-radius:10px;
  background:rgba(0,255,157,.05); padding:9px 10px; text-align:center;
  font-size:.58rem; letter-spacing:.08em;
}
.upgrade-lab-summary strong { color:var(--neon); }
.upgrade-tree-tabs { display:flex; gap:7px; overflow-x:auto; padding:0 0 10px; scrollbar-width:thin; }
.upgrade-tree-tab {
  flex:0 0 auto; border:1px solid rgba(0,255,157,.28); border-radius:999px;
  background:rgba(0,0,0,.42); color:#bbb; padding:7px 11px; font:inherit;
  font-size:.58rem; letter-spacing:.07em; text-transform:uppercase; cursor:pointer;
}
.upgrade-tree-tab.active { color:#07100c; background:linear-gradient(120deg,var(--neon),var(--cyan)); border-color:transparent; font-weight:800; }
.upgrade-tree-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.upgrade-card {
  border:1px solid rgba(0,255,157,.23); border-radius:13px; padding:12px;
  background:linear-gradient(160deg,rgba(0,255,157,.07),rgba(0,183,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.upgrade-card.maxed { border-color:rgba(255,226,122,.42); background:linear-gradient(160deg,rgba(255,226,122,.08),rgba(0,0,0,.18)); }
.upgrade-card-top { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.upgrade-card-top strong { display:block; color:#f5fff9; font-size:.67rem; text-transform:uppercase; letter-spacing:.07em; }
.upgrade-card-top small { display:block; color:#aab8b2; margin-top:5px; line-height:1.4; font-size:.55rem; }
.upgrade-card-top b { color:var(--neon); white-space:nowrap; font-size:.56rem; }
.upgrade-pips { display:flex; gap:4px; margin:11px 0; }
.upgrade-pips i { display:block; flex:1; height:5px; border-radius:99px; background:rgba(255,255,255,.09); }
.upgrade-pips i.filled { background:linear-gradient(90deg,var(--neon),var(--cyan)); box-shadow:0 0 8px rgba(0,255,157,.25); }
.upgrade-buy { width:100%; padding:7px 9px; font-size:.54rem; letter-spacing:.08em; }
.upgrade-buy:disabled { opacity:.42; cursor:not-allowed; transform:none; box-shadow:none; }
.upgrade-lab-note { margin-top:12px; color:#87968f; font-size:.54rem; line-height:1.45; text-align:center; }
@media (max-width:640px) { .upgrade-tree-grid { grid-template-columns:1fr; } }
