/* Admin menu layout: player list on the left, the selected player's saves on the right. */
.login{max-width:380px;display:grid;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px}
.login label{display:grid;gap:4px}
.login input,.plist input{font:15px var(--f-body);padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--fg);width:100%}
.login input:focus-visible,.plist input:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
.admin{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:820px){.admin{grid-template-columns:minmax(0,1fr)}}
.plist{display:grid;gap:10px;position:sticky;top:12px}
.plist label{display:grid;gap:4px}
.players{display:grid;gap:6px;max-height:70vh;overflow:auto}
.pl{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:2px;padding:10px 12px;border-radius:8px;background:var(--panel);border:1px solid var(--line)}
.pl[aria-pressed="true"]{border-color:var(--brass);background:var(--brass-soft)}
.pl:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
.pl b{font-size:15px}
.pl span{font-size:12px;color:var(--muted)}
.pdetail{display:grid;gap:20px;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}
.vbadge{display:inline-flex;align-items:center;gap:6px;font:600 13px var(--f-body);padding:4px 10px;border-radius:99px}
.vbadge.ok{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.vbadge.bad{background:color-mix(in srgb,var(--str) 16%,transparent);color:var(--str)}
.vbadge.unk{background:var(--sunk);color:var(--muted)}
.st{font:600 11px var(--f-mono);padding:2px 8px;border-radius:99px;white-space:nowrap}
.st.verified{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.st.failed{background:color-mix(in srgb,var(--str) 16%,transparent);color:var(--str)}
.st.unchecked{background:var(--sunk);color:var(--muted)}
.btn.sm{padding:4px 10px;font-size:12px}
dialog#rawDlg{width:min(900px,calc(100vw - 32px));max-height:80vh;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--fg);padding:0}
dialog#rawDlg::backdrop{background:rgba(0,0,0,.5)}
.dlghead{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}
#rawText{margin:0;padding:16px;overflow:auto;max-height:calc(80vh - 60px);font:12px/1.5 var(--f-mono);white-space:pre}
.mismatch{font:11px var(--f-mono);color:var(--muted)}
.actions{display:flex;flex-wrap:wrap;gap:10px}
a.btn{text-decoration:none;display:inline-block}
.btn.danger{background:var(--str);border-color:var(--str);color:#fff}
dialog.confirm{max-width:min(460px,calc(100vw - 32px));border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--fg);padding:24px;display:grid;gap:12px}
dialog.confirm:not([open]){display:none}
dialog.confirm::backdrop{background:rgba(0,0,0,.5)}
dialog.confirm p{margin:0}
dialog.confirm .actions{justify-content:flex-end}
.mvp-tag{display:inline-block;vertical-align:middle;font:700 11px var(--f-mono);letter-spacing:.08em;padding:2px 7px;border-radius:4px;color:#3b2500;background:linear-gradient(110deg,#f7d774,#fff3c4 45%,#e2a93b)}
.btn.mvp-btn{background:linear-gradient(110deg,#e2a93b,#f7d774);border-color:#c8921f;color:#3b2500}
.atabs{border-bottom:1px solid var(--line);padding:0}
.gains{display:grid;gap:14px}
.gbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px}
.gbar label{display:grid;gap:4px}
.gbar input,.gbar select{font:14px var(--f-body);padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--fg)}
.presets{display:flex;flex-wrap:wrap;gap:6px}
.note{margin:0;font-size:13px}
.gtable td.up{color:var(--ok);font-family:var(--f-mono)}
.gtable td.down{color:var(--str);font-family:var(--f-mono)}
.gtable td.zero{color:var(--muted);font-family:var(--f-mono)}
.gtable th.sorted,.gtable td.sorted{font-weight:700}
.sup-tag,.pl .sup-tag{display:inline-grid;place-items:center;vertical-align:middle;width:18px;height:18px;border-radius:50%;font:700 11px/1 var(--f-body);color:#fff;background:#2f5fa8}
.warn-tag,.pl .warn-tag{display:inline-grid;place-items:center;vertical-align:middle;width:20px;height:18px;font:700 14px/1 var(--f-body);color:#c0392b}
.ver-tag,.pl .ver-tag{display:inline-grid;place-items:center;vertical-align:middle;width:18px;height:18px;border-radius:50%;font:700 11px/1 var(--f-body);color:#fff;background:#148eff}
.stale-tag,.pl .stale-tag{display:inline-block;vertical-align:middle;font:700 10px/1 var(--f-mono);padding:3px 5px;border-radius:4px;color:#fff;background:#d9480f}
.stale-note{margin:0;padding:10px 14px;border-radius:8px;border:2px solid #d9480f;border-left-width:6px;background:color-mix(in srgb,#d9480f 12%,transparent);font-size:14px}
