/* ─────────────────────────────────────────────────────────────────────────
   TRENCHES END-OF-MATCH SCOREBOARD — themed replacement for the MFPS resume
   screen. Renders on top of the WebGL canvas (like the wallet/shop overlays),
   so Unity's own board sits hidden behind it.
   Same theme as the ARMORY / WALLET: Chakra Petch + Big Shoulders Stencil,
   amber #ffae00 / gold #f2c14e, dark gunmetal panels. P&L greens/reds match
   the in-game wallet HUD (bl_CashHUD). Fully scoped under #trenches-scoreboard.
   Logic: TemplateData/scoreboard.js · Bridge: Assets/TrenchesShop/*Scoreboard*
   ───────────────────────────────────────────────────────────────────────── */
#trenches-scoreboard{
  --sb-ink:#0b0e10; --sb-line:#23272e; --sb-line-soft:#1a1e23;
  --sb-steel:#b7c2c9; --sb-smoke:#8a8f98; --sb-sand:#e9edf0;
  --sb-gold:#ffae00; --sb-gold-soft:#f2c14e; --sb-gold-deep:#dda52f;
  --sb-gain:#37d417; --sb-loss:#ed4336;
  position:fixed; inset:0; z-index:10050; display:none;
  align-items:center; justify-content:center; padding:24px;
  background:radial-gradient(ellipse at 50% 20%, rgba(20,17,8,.55), rgba(4,5,7,.86) 70%);
  backdrop-filter:blur(7px);
  font-family:'Chakra Petch',system-ui,sans-serif; color:var(--sb-sand);
}
#trenches-scoreboard.open{ display:flex; }
#trenches-scoreboard *{ box-sizing:border-box; }

/* ── panel ── */
#trenches-scoreboard .sb-panel{
  width:100%; max-width:940px; max-height:92vh; display:flex; flex-direction:column;
  border:1px solid var(--sb-line); border-radius:16px; overflow:hidden;
  background:linear-gradient(180deg,#101216,#0b0d10);
  box-shadow:0 40px 110px rgba(0,0,0,.66), inset 0 1px 0 rgba(255,255,255,.03);
  animation:sb-rise .32s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes sb-rise{ from{ opacity:0; transform:translateY(18px) scale(.985); } to{ opacity:1; transform:none; } }

/* ── result banner ── */
#trenches-scoreboard .sb-banner{
  position:relative; padding:22px 26px 18px;
  border-bottom:1px solid var(--sb-line);
  background:linear-gradient(180deg,#15171c,#101216);
  display:flex; align-items:center; justify-content:space-between; gap:18px;
}
#trenches-scoreboard .sb-banner::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:5px;
  background:var(--sb-gold); box-shadow:0 0 16px var(--sb-gold);
}
#trenches-scoreboard .sb-result{
  font-family:'Big Shoulders Stencil Text','Chakra Petch',sans-serif;
  font-weight:800; letter-spacing:.06em; line-height:.92;
  font-size:clamp(30px,5.4vw,52px); text-transform:uppercase;
}
#trenches-scoreboard .sb-result.win{ color:var(--sb-gold-soft); text-shadow:0 0 26px rgba(255,174,0,.35); }
#trenches-scoreboard .sb-result.loss{ color:#e4e7ea; }
#trenches-scoreboard .sb-result small{
  display:block; font-family:'Chakra Petch',sans-serif; font-weight:600;
  font-size:12px; letter-spacing:.34em; color:var(--sb-smoke); margin-top:7px;
}
#trenches-scoreboard .sb-teamline{ display:flex; gap:20px; text-align:right; }
#trenches-scoreboard .sb-teamscore{ font-size:12px; letter-spacing:.14em; color:var(--sb-smoke); }
#trenches-scoreboard .sb-teamscore b{ display:block; font-size:26px; letter-spacing:.02em; margin-top:2px; }
#trenches-scoreboard .sb-teamscore.t1 b{ color:#5aa2ff; }
#trenches-scoreboard .sb-teamscore.t2 b{ color:#ff6b57; }

/* ── scroll body ── */
#trenches-scoreboard .sb-body{ overflow-y:auto; padding:20px 26px 8px; }
#trenches-scoreboard .sb-body::-webkit-scrollbar{ width:9px; }
#trenches-scoreboard .sb-body::-webkit-scrollbar-thumb{ background:#2a2f37; border-radius:8px; }

/* ── local summary — one bunched panel: P&L hero + primary/secondary stats ── */
#trenches-scoreboard .sb-summary{
  border:1px solid var(--sb-line); border-radius:14px;
  background:linear-gradient(180deg,#14171c,#0f1216);
  padding:16px 18px 18px; margin-bottom:20px;
}
#trenches-scoreboard .sb-sum-head{
  display:flex; align-items:baseline; gap:10px; margin-bottom:14px;
}
#trenches-scoreboard .sb-sum-name{
  font-family:'Big Shoulders Stencil Text','Chakra Petch',sans-serif;
  font-size:22px; font-weight:800; letter-spacing:.05em; color:var(--sb-sand);
}
#trenches-scoreboard .sb-sum-tag{ font-size:10.5px; letter-spacing:.24em; color:var(--sb-gold-soft); }

/* hero P&L — the centerpiece */
#trenches-scoreboard .sb-hero{
  text-align:center; padding:20px 10px 22px; margin-bottom:16px;
  border:1px solid #243026; border-radius:14px;
  background:radial-gradient(120% 150% at 50% 0%, rgba(55,212,23,.12), rgba(13,19,13,.35) 62%), #0c130d;
}
#trenches-scoreboard .sb-hero.neg{
  border-color:#3a2120;
  background:radial-gradient(120% 150% at 50% 0%, rgba(237,67,54,.14), rgba(19,12,12,.35) 62%), #130c0c;
}
#trenches-scoreboard .sb-hero-label{ font-size:11px; letter-spacing:.3em; color:var(--sb-smoke); margin-bottom:10px; }
#trenches-scoreboard .sb-hero-val{ display:inline-flex; align-items:center; gap:15px; }
#trenches-scoreboard .sb-hero.pos .sb-hero-val{ color:var(--sb-gain); }
#trenches-scoreboard .sb-hero.neg .sb-hero-val{ color:var(--sb-loss); }
#trenches-scoreboard .sb-hero-val svg{ width:40px; height:33px; }
#trenches-scoreboard .sb-hero-num{
  font-family:'Chakra Petch',system-ui,sans-serif; font-weight:700;
  font-size:clamp(48px,8.5vw,78px); line-height:.95; letter-spacing:.01em; font-variant-numeric:tabular-nums;
}
#trenches-scoreboard .sb-hero-sub{ font-size:10.5px; letter-spacing:.24em; color:var(--sb-smoke); margin-top:10px; }
/* staked match: the hero P&L toggles USD <-> SOL on click */
#trenches-scoreboard .sb-hero.sb-toggle{ cursor:pointer; user-select:none; transition:border-color .15s ease; }
#trenches-scoreboard .sb-hero.sb-toggle:hover{ border-color:var(--sb-gold,#ffae00); }
#trenches-scoreboard .sb-hero.sb-toggle:focus-visible{ outline:2px solid var(--sb-gold,#ffae00); outline-offset:2px; }
#trenches-scoreboard .sb-hero-hint{ font-size:9.5px; letter-spacing:.22em; color:var(--sb-smoke); opacity:.62; margin-top:8px; text-transform:uppercase; }

/* primary trio — kills / deaths / K-D */
#trenches-scoreboard .sb-primary{ display:flex; align-items:stretch; justify-content:center; gap:6px; padding:2px 0 16px; }
#trenches-scoreboard .sb-primary .sb-stat{ flex:1; }
#trenches-scoreboard .sb-primary .num{ font-size:clamp(26px,4.6vw,38px); font-weight:700; color:var(--sb-sand); }
#trenches-scoreboard .sb-div{ width:1px; background:var(--sb-line); margin:4px 2px; }

/* secondary — bunched, smaller */
#trenches-scoreboard .sb-secondary{
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 8px;
  border-top:1px solid var(--sb-line-soft); padding-top:15px;
}
#trenches-scoreboard .sb-secondary .sb-stat{ flex:1 1 78px; }
#trenches-scoreboard .sb-secondary .num{ font-size:19px; font-weight:600; color:var(--sb-steel); }

/* shared stat cell */
#trenches-scoreboard .sb-stat{ display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; }
#trenches-scoreboard .sb-stat .lbl{ font-size:9.5px; letter-spacing:.16em; color:var(--sb-smoke); }
#trenches-scoreboard .sb-stat .num{ display:inline-block; font-variant-numeric:tabular-nums; }

/* count-up landing flourish — punch + glow pulse */
#trenches-scoreboard .num.land{ animation:sb-punch .44s cubic-bezier(.2,.8,.2,1); }
#trenches-scoreboard .sb-hero-val.land{ animation:sb-punch-hero .5s cubic-bezier(.2,.8,.2,1); }
@keyframes sb-punch{ 0%{transform:scale(1);} 42%{transform:scale(1.2);} 100%{transform:scale(1);} }
@keyframes sb-punch-hero{
  0%{ transform:scale(1); filter:drop-shadow(0 0 0 transparent); }
  40%{ transform:scale(1.14); filter:drop-shadow(0 0 24px currentColor); }
  100%{ transform:scale(1); filter:drop-shadow(0 0 0 transparent); }
}
@media (prefers-reduced-motion: reduce){
  #trenches-scoreboard .num.land, #trenches-scoreboard .sb-hero-val.land{ animation:none; }
}

/* ── roster table ── */
#trenches-scoreboard .sb-sec{
  font-size:11px; letter-spacing:.2em; color:var(--sb-smoke);
  margin:0 2px 9px; display:flex; align-items:center; gap:10px;
}
#trenches-scoreboard .sb-sec::after{ content:""; flex:1; height:1px; background:var(--sb-line-soft); }
#trenches-scoreboard table.sb-table{ width:100%; border-collapse:collapse; }
#trenches-scoreboard .sb-table thead th{
  font-size:10px; letter-spacing:.15em; color:var(--sb-smoke); font-weight:700;
  text-align:right; padding:0 10px 10px; white-space:nowrap;
}
#trenches-scoreboard .sb-table thead th.l{ text-align:left; }
#trenches-scoreboard .sb-table tbody td{
  padding:11px 10px; border-top:1px solid var(--sb-line-soft);
  text-align:right; font-size:15px; color:var(--sb-steel); font-variant-numeric:tabular-nums;
}
#trenches-scoreboard .sb-table tbody td.l{ text-align:left; }
#trenches-scoreboard .sb-rank{ color:var(--sb-smoke); font-size:13px; width:34px; }
#trenches-scoreboard .sb-name{ color:var(--sb-sand); font-weight:600; letter-spacing:.01em; }
#trenches-scoreboard .sb-name .dot{ display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:9px; vertical-align:middle; }
#trenches-scoreboard .sb-name .dot.t1{ background:#5aa2ff; }
#trenches-scoreboard .sb-name .dot.t2{ background:#ff6b57; }
#trenches-scoreboard .sb-name .bot{ font-size:9.5px; letter-spacing:.14em; color:var(--sb-smoke); border:1px solid var(--sb-line); border-radius:4px; padding:1px 5px; margin-left:8px; vertical-align:middle; }
#trenches-scoreboard .sb-name .lvl{ font-size:10px; color:var(--sb-gold-deep); margin-left:8px; letter-spacing:.08em; }
#trenches-scoreboard .sb-score{ color:var(--sb-sand); font-weight:700; }
#trenches-scoreboard .sb-pnl.pos{ color:var(--sb-gain); font-weight:700; }
#trenches-scoreboard .sb-pnl.neg{ color:var(--sb-loss); font-weight:700; }
#trenches-scoreboard .sb-pnl.zero{ color:var(--sb-smoke); }

/* local player highlight */
#trenches-scoreboard tr.me td{ background:rgba(255,174,0,.07); border-top-color:rgba(255,174,0,.22); }
#trenches-scoreboard tr.me td:first-child{ box-shadow:inset 3px 0 0 var(--sb-gold); }
#trenches-scoreboard tr.me .sb-name{ color:#fff; }

/* ── footer ── */
#trenches-scoreboard .sb-foot{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:16px 26px; border-top:1px solid var(--sb-line);
  background:linear-gradient(180deg,#0f1216,#0c0e11);
}
#trenches-scoreboard .sb-foot .note{ font-size:11px; letter-spacing:.12em; color:var(--sb-smoke); }
#trenches-scoreboard .sb-continue{
  font-family:'Chakra Petch',sans-serif; font-size:13px; font-weight:800; letter-spacing:.16em;
  cursor:pointer; padding:12px 30px; border:1px solid var(--sb-gold);
  background:var(--sb-gold); color:#0b0e10; border-radius:9px; transition:.15s;
}
#trenches-scoreboard .sb-continue:hover{ background:var(--sb-gold-deep); border-color:var(--sb-gold-deep); box-shadow:0 0 22px rgba(255,174,0,.35); }
#trenches-scoreboard .sb-continue:active{ transform:translateY(1px); }
#trenches-scoreboard .sb-foot-btns{ display:flex; gap:10px; }
#trenches-scoreboard .sb-flex{
  font-family:'Chakra Petch',sans-serif; font-size:13px; font-weight:800; letter-spacing:.14em;
  cursor:pointer; padding:12px 20px; border:1px solid var(--sb-line);
  background:#15181d; color:var(--sb-sand); border-radius:9px; transition:.15s;
  display:inline-flex; align-items:center; gap:9px;
}
#trenches-scoreboard .sb-flex:hover{ border-color:var(--sb-sand); box-shadow:0 0 18px rgba(255,255,255,.08); }
#trenches-scoreboard .sb-flex svg{ width:15px; height:15px; }

/* ── shareable P&L card composer ── */
#trenches-scoreboard .sb-card-modal{
  position:fixed; inset:0; z-index:10060; display:flex; align-items:center; justify-content:center;
  gap:28px; padding:26px; flex-wrap:wrap;
  background:rgba(4,5,7,.86); backdrop-filter:blur(9px);
  opacity:0; transition:opacity .22s;
}
#trenches-scoreboard .sb-card-modal.open{ opacity:1; }
#trenches-scoreboard .sb-card-wrap{
  width:min(54vh,440px); aspect-ratio:1/1; border:1px solid var(--sb-line);
  border-radius:14px; overflow:hidden; box-shadow:0 30px 90px rgba(0,0,0,.6);
}
#trenches-scoreboard .sb-card-canvas{ width:100%; height:100%; display:block; }
#trenches-scoreboard .sb-card-side{ width:262px; display:flex; flex-direction:column; gap:11px; }
#trenches-scoreboard .sb-card-title{
  font-family:'Big Shoulders Stencil Text','Chakra Petch',sans-serif; font-size:26px; font-weight:800;
  letter-spacing:.05em; color:var(--sb-sand);
}
#trenches-scoreboard .sb-card-sub{ font-size:10.5px; letter-spacing:.2em; color:var(--sb-smoke); margin-top:-4px; }
#trenches-scoreboard .sb-card-bg-opts{ display:flex; gap:8px; margin-bottom:4px; }
#trenches-scoreboard .sb-card-bg-opts button{
  flex:1; cursor:pointer; padding:11px; font:700 11px/1 'Chakra Petch',sans-serif; letter-spacing:.14em;
  color:var(--sb-smoke); background:#15181d; border:1px solid var(--sb-line); border-radius:8px; transition:.15s;
}
#trenches-scoreboard .sb-card-bg-opts button:hover{ color:var(--sb-sand); border-color:#33383f; }
#trenches-scoreboard .sb-card-bg-opts button.active{ color:var(--sb-gold); border-color:var(--sb-gold); background:#1b1f25; }
#trenches-scoreboard .sb-card-x,
#trenches-scoreboard .sb-card-dl,
#trenches-scoreboard .sb-card-back{
  cursor:pointer; padding:13px; border-radius:9px; font:800 13px/1 'Chakra Petch',sans-serif; letter-spacing:.14em;
  display:inline-flex; align-items:center; justify-content:center; gap:9px; transition:.15s; border:1px solid transparent;
}
#trenches-scoreboard .sb-card-x{ background:#fff; color:#0b0e10; }
#trenches-scoreboard .sb-card-x:hover{ box-shadow:0 0 20px rgba(255,255,255,.25); }
#trenches-scoreboard .sb-card-x svg{ width:16px; height:16px; }
#trenches-scoreboard .sb-card-dl{ background:var(--sb-gold); color:#0b0e10; }
#trenches-scoreboard .sb-card-dl:hover{ background:var(--sb-gold-deep); box-shadow:0 0 20px rgba(255,174,0,.3); }
#trenches-scoreboard .sb-card-back{ background:transparent; border-color:var(--sb-line); color:var(--sb-smoke); }
#trenches-scoreboard .sb-card-back:hover{ color:var(--sb-sand); border-color:var(--sb-sand); }
#trenches-scoreboard .sb-card-hint{ font-size:11.5px; line-height:1.5; letter-spacing:.03em; color:var(--sb-smoke); min-height:16px; }
@media (max-width:560px){
  #trenches-scoreboard .sb-card-side{ width:min(92vw,440px); }
}

@media (max-width:560px){
  #trenches-scoreboard .sb-table .hide-sm{ display:none; }
  #trenches-scoreboard .sb-banner{ flex-direction:column; align-items:flex-start; }
}
