/*zmpend*/ /* zamn-mpend.css v1 (grokbot 2026-10-21): multiplayer end-of-match screen (zamn-mpend.js).
   Matches the zombies GAME OVER screen (grayscale vision, HUD font, centred lines) and the dashboard palette. */
.zmpend{position:fixed;inset:0;z-index:2500;font-family:var(--font-hud,"Bahnschrift SemiCondensed","Roboto Condensed","Arial Narrow",sans-serif);color:var(--hud-ink,#f4f1ea);
  --zmp-acc:var(--accent,#3dba6c);--zmp-win:#7fe08f;--zmp-lose:#ff6b5e;--zmp-draw:#e8c86a;--zmp-plate:rgba(8,12,10,.78);--zmp-edge:rgba(244,241,234,.18);
  --zmp-u:1vh;display:flex;flex-direction:column;pointer-events:auto;user-select:none;-webkit-user-select:none;text-shadow:0 0 2px #000,0 1px 2px #000;
  padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);box-sizing:border-box}
.zmpend *{box-sizing:border-box}
.zmpend-vision{position:absolute;inset:0;z-index:-1;backdrop-filter:grayscale(.75) brightness(.45) contrast(1.05);-webkit-backdrop-filter:grayscale(.75) brightness(.45) contrast(1.05);
  background:radial-gradient(ellipse at 50% 40%,rgba(20,28,24,.35),rgba(6,10,8,.88) 75%),rgba(16,22,18,.55);animation:zmpFade .8s ease-out both}
.zmpend[data-stage=kc] .zmpend-vision{backdrop-filter:none;-webkit-backdrop-filter:none;background:none}
@keyframes zmpFade{from{opacity:0}to{opacity:1}}
@keyframes zmpSlam{0%{opacity:0;transform:scale(1.6);letter-spacing:.4em;filter:blur(6px)}60%{opacity:1;filter:blur(0)}100%{transform:scale(1);letter-spacing:.06em}}
@keyframes zmpRise{from{opacity:0;transform:translateY(2vh)}to{opacity:1;transform:none}}
@keyframes zmpSweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.zmpend-kicker{font-size:calc(2.2*var(--zmp-u));letter-spacing:.14em;text-transform:uppercase;color:var(--hud-ink-dim,#c4beb4)}

/* killcam: letterbox bars, the replay (if any) stays visible between them */
.zmpend-kc{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}
.zmpend-kc-top,.zmpend-kc-bot{background:linear-gradient(rgba(0,0,0,.85),rgba(0,0,0,.7));pointer-events:auto;display:flex;align-items:center;padding:1.6vh 4vw;gap:2vw;animation:zmpRise .4s ease-out both}
.zmpend-kc-top{justify-content:center;min-height:11vh}
.zmpend-kc-title{font-size:calc(5.5*var(--zmp-u));font-weight:700;letter-spacing:.2em;color:#fff;animation:zmpSlam .7s cubic-bezier(.2,.8,.2,1) both}
.zmpend-kc-bot{justify-content:space-between;min-height:15vh}
.zmpend-kc-card{display:flex;align-items:center;gap:1.6vw;min-width:0}
.zmpend-kc-name{font-size:calc(3.6*var(--zmp-u));font-weight:700;color:var(--minimap-player,#ffe14d)}
.zmpend-kc-wpn{font-size:calc(2.3*var(--zmp-u));text-transform:uppercase;letter-spacing:.06em}
.zmpend-kc-vic{font-size:calc(2*var(--zmp-u));color:var(--hud-ink-dim,#c4beb4)}

/* banner */
.zmpend-banner{margin:auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.4vh;cursor:pointer;padding:3vh 4vw;width:100%}
.zmpend-banner .zmpend-kicker{animation:zmpRise .5s ease-out .15s both}
.zmpend-title{margin:0;font-size:calc(12*var(--zmp-u));line-height:1;font-weight:700;letter-spacing:.06em;animation:zmpSlam .75s cubic-bezier(.2,.8,.2,1) .1s both}
.zmpend-banner::after{content:"";display:block;width:min(70vw,900px);height:3px;order:2;background:linear-gradient(90deg,transparent,currentColor,transparent);animation:zmpSweep .6s ease-out .35s both;opacity:.8}
.zmpend-title{order:1}.zmpend-banner .zmpend-kicker{order:0}.zmpend-sub{order:3}.zmpend-banner .zmpend-scores{order:4}.zmpend-reason{order:5}
.zmpend-win{color:var(--zmp-win)}.zmpend-lose{color:var(--zmp-lose)}.zmpend-draw{color:var(--zmp-draw)}.zmpend-top3{color:var(--zmp-draw)}
.zmpend-banner .zmpend-title{color:inherit}
.zmpend-sub{font-size:calc(3.6*var(--zmp-u));font-weight:600;letter-spacing:.2em;text-transform:uppercase;animation:zmpRise .5s ease-out .5s both}
.zmpend-reason{font-size:calc(2.1*var(--zmp-u));color:var(--hud-ink-dim,#c4beb4);letter-spacing:.08em;text-transform:uppercase;animation:zmpRise .5s ease-out .8s both}
.zmpend-scores{display:flex;align-items:center;justify-content:center;gap:2vw;flex-wrap:wrap;color:var(--hud-ink,#f4f1ea);animation:zmpRise .5s ease-out .6s both}
.zmpend-ts{display:flex;flex-direction:column;align-items:center;min-width:12vw;padding:1vh 1.6vw;background:var(--zmp-plate);border:1px solid var(--zmp-edge);border-radius:var(--radius-m,6px)}
.zmpend-ts-n{font-size:calc(2.1*var(--zmp-u));letter-spacing:.12em;text-transform:uppercase;white-space:pre;max-width:28vw;overflow:hidden;text-overflow:ellipsis}
.zmpend-ts-v{font-size:calc(6*var(--zmp-u));line-height:1.05;font-weight:700}
.zmpend-ts-mine{border-color:var(--zmp-acc);box-shadow:inset 0 -3px 0 var(--zmp-acc)}.zmpend-ts-mine .zmpend-ts-n{color:var(--zmp-acc)}
.zmpend-ts-foe .zmpend-ts-n{color:var(--zmp-lose)}
.zmpend-ts-won::before{content:"WINNER";font-size:calc(1.5*var(--zmp-u));letter-spacing:.2em;color:var(--zmp-draw)}
.zmpend-vs{font-size:calc(4*var(--zmp-u));color:var(--hud-ink-dim,#c4beb4)}
.zmpend-unit{font-size:calc(1.7*var(--zmp-u));letter-spacing:.14em;text-transform:uppercase;color:var(--hud-ink-dim,#c4beb4)}

/* scoreboard */
.zmpend-board,.zmpend-xp{flex:1;min-height:0;display:flex;flex-direction:column;padding:3vh 4vw 1vh;gap:1.6vh;animation:zmpRise .4s ease-out both}
.zmpend-bhead{display:flex;align-items:flex-end;justify-content:space-between;gap:2vw;border-bottom:2px solid var(--zmp-edge);padding-bottom:1.2vh}
.zmpend-btitle{font-size:calc(5.5*var(--zmp-u));font-weight:700;letter-spacing:.06em;line-height:1}
.zmpend-scores-mini{animation:none;gap:1vw}
.zmpend-scores-mini .zmpend-ts{flex-direction:row;gap:1vw;min-width:0;padding:.6vh 1.2vw}
.zmpend-scores-mini .zmpend-ts-v{font-size:calc(3.4*var(--zmp-u))}
.zmpend-scores-mini .zmpend-ts-won::before{content:"★";font-size:calc(2.2*var(--zmp-u))}
.zmpend-scores-mini .zmpend-vs{font-size:calc(2.6*var(--zmp-u))}
.zmpend-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,26vw);gap:2vw}
.zmpend-grid-one{grid-template-columns:minmax(0,1fr)}
.zmpend-tw{min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;background:var(--zmp-plate);border:1px solid var(--zmp-edge);border-radius:var(--radius-m,6px);scrollbar-width:thin}
.zmpend-table{width:100%;border-collapse:collapse;font-size:calc(2.2*var(--zmp-u));color:#e6e3dc}
.zmpend-table th{position:sticky;top:0;z-index:1;background:rgba(14,20,17,.97);color:#b9b4aa;font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:calc(1.7*var(--zmp-u));padding:.9vh .9vw;text-align:right;border-bottom:1px solid rgba(255,255,255,.2)}
.zmpend-table td{padding:.6vh .9vw;text-align:right;border-bottom:1px solid rgba(255,255,255,.06);font-variant-numeric:tabular-nums;white-space:nowrap}
.zmpend-table .zmpend-c-nm{text-align:left;width:100%;max-width:0}
.zmpend-table .zmpend-c-rk{text-align:center;width:3.5em;color:var(--hud-ink-dim,#c4beb4)}
.zmpend-c-obj{color:#f1d38a}
.zmpend-nm{display:flex;align-items:center;gap:.7vw;min-width:0}
.zmpend-nm-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.zmpend-lv{flex:none;font-size:calc(1.5*var(--zmp-u));padding:.1vh .5vw;border:1px solid var(--zmp-edge);border-radius:3px;color:var(--hud-ink-dim,#c4beb4)}
.zmpend-star{flex:none;font-size:calc(1.5*var(--zmp-u));letter-spacing:.08em;color:#1a1408;background:var(--zmp-draw);padding:.1vh .5vw;border-radius:3px;text-shadow:none;font-weight:700}
.zmpend-team td{background:rgba(255,255,255,.05);text-align:left;padding:.8vh .9vw;font-size:calc(2*var(--zmp-u));letter-spacing:.12em;text-transform:uppercase}
.zmpend-team-mine td{box-shadow:inset 4px 0 0 var(--zmp-acc)}.zmpend-team-mine .zmpend-team-n{color:var(--zmp-acc)}
.zmpend-team-foe td{box-shadow:inset 4px 0 0 var(--zmp-lose)}.zmpend-team-foe .zmpend-team-n{color:var(--zmp-lose)}
.zmpend-team-v{margin-left:1vw;font-weight:700;color:#fff}
.zmpend-team-w{margin-left:1vw;font-size:calc(1.5*var(--zmp-u));color:var(--zmp-draw)}
.zmpend-row.zmpend-you{background:linear-gradient(90deg,rgba(61,186,108,.30),rgba(61,186,108,.08))}.zmpend-row.zmpend-you td{color:#fff3b0;background:none}.zmpend-row.zmpend-you td:first-child{box-shadow:inset 3px 0 0 var(--zmp-acc)}
.zmpend-you .zmpend-c-rk{color:#fff3b0}
.zmpend-empty{text-align:center!important;color:var(--hud-ink-dim,#c4beb4);padding:4vh!important}
.zmpend-av{flex:none;position:relative;overflow:hidden;width:calc(3.4*var(--zmp-u));height:calc(3.4*var(--zmp-u));border-radius:4px;background:#2b3a32;border:1px solid var(--zmp-edge);
  display:inline-flex;align-items:center;justify-content:center;font-size:calc(1.8*var(--zmp-u));font-weight:700;color:#dfe9e2;text-shadow:none}
.zmpend-av-bot{background:#26302b;font-size:calc(1.6*var(--zmp-u))}
.zmpend-av>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.zmpend-av-big{width:calc(9*var(--zmp-u));height:calc(9*var(--zmp-u));font-size:calc(4.5*var(--zmp-u));border-radius:6px;border-color:var(--zmp-draw)}
.zmpend-side{min-height:0;overflow:auto;display:flex;flex-direction:column;gap:1.4vh;scrollbar-width:thin}
.zmpend-mvp,.zmpend-top,.zmpend-vote{background:var(--zmp-plate);border:1px solid var(--zmp-edge);border-radius:var(--radius-m,6px);padding:1.2vh 1vw}
.zmpend-mvp{border-color:rgba(232,200,106,.6);box-shadow:0 0 24px rgba(232,200,106,.15) inset}
.zmpend-mvp-tag{font-size:calc(1.7*var(--zmp-u));letter-spacing:.3em;color:var(--zmp-draw);font-weight:700}
.zmpend-mvp-r{display:flex;gap:1vw;align-items:center;margin-top:.6vh}
.zmpend-mvp-t{min-width:0}
.zmpend-mvp-n{font-size:calc(3*var(--zmp-u));font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zmpend-mvp-s{font-size:calc(1.9*var(--zmp-u));color:var(--hud-ink-dim,#c4beb4)}
.zmpend-side-h{font-size:calc(1.7*var(--zmp-u));letter-spacing:.2em;text-transform:uppercase;color:#b9b4aa;margin-bottom:.6vh}
.zmpend-top-r{display:flex;align-items:center;gap:.7vw;padding:.4vh 0;font-size:calc(2*var(--zmp-u))}
.zmpend-top-r.zmpend-you{color:#fff3b0}
.zmpend-top-i{width:2.6em;color:var(--hud-ink-dim,#c4beb4)}
.zmpend-top-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zmpend-top-v{font-variant-numeric:tabular-nums}
.zmpend-vote .zmpend-btn{width:100%;margin:.4vh 0;justify-content:flex-start;position:relative;overflow:hidden}
.zmpend-vopt .zmpend-btn-tx{display:flex;flex-direction:column;align-items:flex-start;z-index:1;flex:1;min-width:0}
.zmpend-vopt-m{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.zmpend-vopt-g{font-size:.8em;color:var(--hud-ink-dim,#c4beb4)}
.zmpend-vopt-bar{position:absolute;left:0;top:0;bottom:0;background:rgba(61,186,108,.22);transition:width .4s}
.zmpend-vopt-c{z-index:1;font-weight:700;font-variant-numeric:tabular-nums}
.zmpend-vopt-on{border-color:var(--zmp-acc)!important;box-shadow:inset 0 0 0 1px var(--zmp-acc)}
.zmpend-vote-t{font-size:calc(1.7*var(--zmp-u));color:var(--hud-ink-dim,#c4beb4);margin-top:.4vh}

/* XP */
.zmpend-xp{align-items:center;justify-content:center;text-align:center;gap:2vh}
.zmpend-xp-earned{font-size:calc(9*var(--zmp-u));font-weight:700;color:var(--minimap-player,#ffe14d);animation:zmpSlam .7s cubic-bezier(.2,.8,.2,1) both}
.zmpend-xp-bd{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4vh 3vw;min-width:min(60vw,640px);font-size:calc(2.2*var(--zmp-u))}
.zmpend-xp-bdr{display:flex;justify-content:space-between;border-bottom:1px solid var(--zmp-edge);padding:.4vh 0}
.zmpend-xp-row{display:flex;align-items:center;gap:1.5vw;width:min(80vw,900px)}
.zmpend-xp-lv{flex:none;font-size:calc(2.8*var(--zmp-u));font-weight:700;min-width:5.5em;padding:.6vh .8vw;border:1px solid var(--zmp-edge);border-radius:4px;background:var(--zmp-plate)}
.zmpend-xp-next{color:var(--hud-ink-dim,#c4beb4)}
.zmpend-xp-bar{position:relative;flex:1;height:calc(2.4*var(--zmp-u));background:rgba(255,255,255,.08);border:1px solid var(--zmp-edge);border-radius:3px;overflow:hidden}
.zmpend-xp-old{position:absolute;left:0;top:0;bottom:0;background:rgba(244,241,234,.45)}
.zmpend-xp-fill{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,var(--nxe-green-deep,#1b7a32),var(--zmp-acc));transition:width 1.6s cubic-bezier(.3,.7,.2,1) .3s;box-shadow:0 0 12px rgba(61,186,108,.6)}
.zmpend-xp-num{font-size:calc(2.1*var(--zmp-u));color:var(--hud-ink-dim,#c4beb4)}
.zmpend-xp-up{font-size:calc(4.2*var(--zmp-u));font-weight:700;color:var(--zmp-win);letter-spacing:.1em;animation:zmpSlam .7s ease-out 1.6s both}

/* footer: countdown + buttons */
.zmpend-foot{display:flex;align-items:center;justify-content:space-between;gap:2vw;padding:1.4vh 4vw 2.4vh;background:linear-gradient(transparent,rgba(0,0,0,.55));flex-wrap:wrap;animation:zmpRise .4s ease-out both}
.zmpend-cd{font-size:calc(2.4*var(--zmp-u));letter-spacing:.08em;text-transform:uppercase;color:var(--hud-ink,#f4f1ea);font-variant-numeric:tabular-nums}
.zmpend-btns{display:flex;gap:1vw;flex-wrap:wrap;justify-content:flex-end}
.zmpend-btn{font:inherit;display:inline-flex;align-items:center;gap:.6em;min-height:44px;padding:.8vh 1.6vw;font-size:calc(2.2*var(--zmp-u));letter-spacing:.06em;text-transform:uppercase;cursor:pointer;
  color:var(--menu-text,#e4ebe7);background:rgba(20,30,25,.85);border:1px solid var(--border,#3d4a44);border-radius:var(--radius-s,4px);text-shadow:none;transition:background .12s,border-color .12s;touch-action:manipulation}
.zmpend-btn:hover,.zmpend-btn:focus-visible,.zmpend-btn:focus{outline:none;background:var(--menu-highlight,rgba(186,206,194,.48));border-color:var(--border-hover,#c5cec9);color:#fff}
.zmpend-pri{background:var(--nxe-green-deep,#1b7a32);border-color:var(--zmp-acc)}
.zmpend-pri:hover,.zmpend-pri:focus{background:var(--zmp-acc)}
.zmpend-leave{color:var(--danger,#ff8a80)}
.zmpend-key{display:none;width:1.5em;height:1.5em;border-radius:50%;align-items:center;justify-content:center;font-size:.8em;font-weight:700;color:#fff}
.zmpend-key-a{background:#3a8e2c}.zmpend-key-b{background:#b8322a}
html.pad .zmpend-key,html[data-input=pad] .zmpend-key,html[data-ui-mode=xbox] .zmpend-key{display:inline-flex}
.zmpend-skip{pointer-events:auto}

/* phones (html.zmobl) and short landscape screens */
html.zmobl .zmpend,.zmpend.zmpend-small{--zmp-u:1.15vh}
html.zmobl .zmpend-board,html.zmobl .zmpend-xp{padding:max(8px,env(safe-area-inset-top,0)) var(--zsr,14px) 4px var(--zsl,14px);gap:6px}
html.zmobl .zmpend-foot{padding:6px var(--zsr,14px) max(8px,env(safe-area-inset-bottom,0)) var(--zsl,14px)}
html.zmobl .zmpend-btn{min-height:40px;padding:6px 12px;font-size:13px}
html.zmobl .zmpend-cd{font-size:13px}
html.zmobl .zmpend-table{font-size:12px}html.zmobl .zmpend-table th{font-size:10px;padding:4px 6px}html.zmobl .zmpend-table td{padding:3px 6px}
html.zmobl .zmpend-av{width:22px;height:22px;font-size:11px}html.zmobl .zmpend-av-big{width:44px;height:44px;font-size:20px}
html.zmobl .zmpend-lv,html.zmobl .zmpend-star{font-size:9px}
html.zmobl .zmpend-btitle{font-size:22px}html.zmobl .zmpend-kicker{font-size:11px}
html.zmobl .zmpend-scores-mini .zmpend-ts-v{font-size:16px}html.zmobl .zmpend-ts-n{font-size:10px}
html.zmobl .zmpend-grid{grid-template-columns:minmax(0,1fr) minmax(150px,30vw);gap:8px}
html.zmobl .zmpend-mvp-n{font-size:15px}html.zmobl .zmpend-mvp-s,html.zmobl .zmpend-top-r{font-size:11px}html.zmobl .zmpend-side-h,html.zmobl .zmpend-mvp-tag{font-size:9px}
html.zmobl .zmpend-mvp,html.zmobl .zmpend-top,html.zmobl .zmpend-vote{padding:6px 8px}
html.zmobl .zmpend-title{font-size:min(16vh,13vw)}
html.zmobl .zmpend-ts-v{font-size:min(9vh,30px)}
html.zmobl .zmpend-kc-top{min-height:0;padding:6px}html.zmobl .zmpend-kc-bot{min-height:0;padding:6px var(--zsr,14px) max(6px,env(safe-area-inset-bottom,0)) var(--zsl,14px)}
html.zmobl .zmpend-kc-title{font-size:22px}html.zmobl .zmpend-kc-name{font-size:18px}html.zmobl .zmpend-kc-wpn,html.zmobl .zmpend-kc-vic{font-size:12px}
@media (max-width:760px){
  .zmpend-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) auto;overflow:auto}
  .zmpend-side{flex-direction:row;overflow-x:auto;overflow-y:hidden}
  .zmpend-side>*{flex:0 0 min(78vw,260px)}
  .zmpend-bhead{flex-direction:column;align-items:flex-start}
  .zmpend-foot{justify-content:center}.zmpend-btns{justify-content:center}
  .zmpend-c-obj{display:none}
}
@media (max-width:760px) and (orientation:portrait){.zmpend{--zmp-u:.85vh}.zmpend-title{font-size:13vw}}
@media (max-height:430px){.zmpend{--zmp-u:1.3vh}.zmpend-btn{min-height:36px}}
@media (prefers-reduced-motion:reduce){.zmpend *{animation:none!important;transition:none!important}}
