/* Modern, polished leaderboard overrides (with Playtime column) */
:root { --bg:#0e1523;--panel:#101c31;--panel-2:#0b1a2b;--border:rgba(255,255,255,0.08);--text:#e8f2ff;--text-dim:#9fb9d3;--accent:#0a75d9;--accent-2:#1f96ff;--gold:#ffd700;--silver:#c0c0c0;--bronze:#cd7f32;--green:#44d07b;--yellow:#ffd24d;--orange:#ff9f43;--red:#ff5a5f; }
.rust-leaderboard-wrapper { width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); margin-top:24px; margin-bottom:24px; font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"; }
.rust-leaderboard { color:var(--text); background:radial-gradient(1200px 300px at -5% -10%, rgba(31,150,255,0.20), transparent 40%),radial-gradient(900px 300px at 120% 10%, rgba(10,117,217,0.18), transparent 40%),linear-gradient(180deg,#0d1a2b,#0a1422 55%,#0b1526); border:1px solid var(--border); border-radius:16px; padding:28px 30px 32px; box-shadow:0 12px 36px rgba(0,0,0,0.55); position:relative; overflow:hidden; }
.rust-leaderboard h2 { margin:0 0 18px; font-weight:800; letter-spacing:.4px; font-size:30px; display:flex; align-items:center; justify-content:center; gap:12px; text-align:center; background:linear-gradient(135deg,#ffffff,#cfe6ff 60%,#8bc2ff); -webkit-background-clip:text; background-clip:text; color:transparent; }
.rust-leaderboard h2 .badge { background:linear-gradient(135deg,#ffffff,#cfe6ff 60%,#8bc2ff); -webkit-background-clip:text; background-clip:text; color:transparent; padding:0 2px; font-size:12px; text-transform:uppercase; letter-spacing:1px; }
.toolbar { display:flex; justify-content:flex-end; margin:-6px 0 10px; }
.toolbar .search { width:260px; max-width:100%; background:rgba(255,255,255,0.06); border:1px solid var(--border); color:var(--text); border-radius:10px; padding:8px 12px; outline:none; transition:border-color .2s ease, box-shadow .2s ease; }
.toolbar .search::placeholder { color:#9fb9d3aa; }
.toolbar .search:focus { border-color:rgba(31,150,255,0.5); box-shadow:0 0 0 3px rgba(31,150,255,0.15); }
.table-head,.player-row { display:grid; grid-template-columns:56px 1.6fr .7fr .9fr .7fr .7fr .7fr .8fr; gap:12px; align-items:center; }
.table-head { position:sticky; top:0; z-index:1; font-size:12px; text-transform:uppercase; letter-spacing:1px; color:var(--text-dim); border-bottom:1px solid var(--border); padding-bottom:10px; margin-bottom:6px; backdrop-filter:blur(3px); }
.table-head .sortable { cursor:pointer; }
.table-head .active-sort[data-dir="asc"]::after { content:' \2191'; }
.table-head .active-sort[data-dir="desc"]::after { content:' \2193'; }
.player-row { padding:12px 0; border-bottom:1px solid var(--border); font-size:15px; transition:background .25s ease, transform .2s ease; }
.player-row:last-child { border-bottom:none; }
.player-row:hover { background:rgba(31,150,255,0.06); transform:translateY(-1px); }
.player-row .rank { font-weight:700; font-size:16px; color:#dcecff; display:flex; align-items:center; gap:8px; }
.player-row.top1 .rank { color:var(--gold); }
.player-row.top2 .rank { color:var(--silver); }
.player-row.top3 .rank { color:var(--bronze); }
.badge.kills { background:rgba(255,255,255,0.08); color:var(--text-dim); border:1px solid rgba(255,255,255,0.15); }
.player-row.top1 .badge.kills { background:rgba(255,215,0,0.18); color:var(--gold); border-color:rgba(255,215,0,0.4); }
.player-row.top2 .badge.kills { background:rgba(192,192,192,0.18); color:var(--silver); border-color:rgba(192,192,192,0.4); }
.player-row.top3 .badge.kills { background:rgba(205,127,50,0.18); color:var(--bronze); border-color:rgba(205,127,50,0.4); }
.player-row.top1 { background:linear-gradient(90deg,rgba(255,215,0,0.15),rgba(255,215,0,0.06) 40%,transparent 70%); border-left:4px solid var(--gold); box-shadow:0 0 0 1px rgba(255,215,0,0.18) inset,0 6px 20px rgba(255,215,0,0.12); }
.player-row.top2 { background:linear-gradient(90deg,rgba(192,192,192,0.15),rgba(192,192,192,0.06) 40%,transparent 70%); border-left:4px solid var(--silver); box-shadow:0 0 0 1px rgba(192,192,192,0.18) inset,0 6px 20px rgba(192,192,192,0.10); }
.player-row.top3 { background:linear-gradient(90deg,rgba(205,127,50,0.15),rgba(205,127,50,0.06) 40%,transparent 70%); border-left:4px solid var(--bronze); box-shadow:0 0 0 1px rgba(205,127,50,0.18) inset,0 6px 20px rgba(205,127,50,0.10); }
.player-row.top1 .rank::before { content:'\1F947'; margin-right:6px; }
.player-row.top2 .rank::before { content:'\1F948'; margin-right:6px; }
.player-row.top3 .rank::before { content:'\1F949'; margin-right:6px; }
.player-row .name { font-weight:600; display:flex; align-items:center; gap:12px; }
.player-row .name .avatar { width:28px; height:28px; border-radius:50%; background:linear-gradient(135deg,rgba(31,150,255,0.85),rgba(10,117,217,0.85)); box-shadow:0 2px 12px rgba(31,150,255,0.35); display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:13px; font-weight:700; }
.player-row .name .avatar::before { content:attr(data-initial); }
.player-row .name .label { word-break:break-word; }
.badge-level { background:linear-gradient(135deg,#0e75cc,#0a4f8d); padding:5px 10px; border-radius:999px; font-size:11px; font-weight:700; letter-spacing:.5px; color:#e8f3ff; display:inline-block; min-width:38px; text-align:center; }
.badge { display:inline-block; padding:4px 10px; border-radius:999px; font-size:12px; font-weight:700; }
.badge.kd.kd-diamond { background:linear-gradient(135deg, rgba(173,216,230,0.35), rgba(135,206,250,0.35)); color:#eaffff; border:1px solid rgba(135,206,250,0.6); box-shadow:0 0 14px rgba(135,206,250,0.45); text-shadow:0 0 8px rgba(255,255,255,0.4); }
.badge.kd.kd-good { background:rgba(68,208,123,0.18); color:var(--green); border:1px solid rgba(68,208,123,0.35); }
.badge.kd.kd-ok { background:rgba(255,210,77,0.18); color:var(--yellow); border:1px solid rgba(255,210,77,0.35); }
.badge.kd.kd-bad { background:rgba(255,90,95,0.18); color:var(--red); border:1px solid rgba(255,90,95,0.35); }
.badge.streak.streak-god { background:rgba(255,165,0,0.18); color:#ffb23d; border:1px solid rgba(255,165,0,0.35); }
.badge.streak.streak-hot { background:rgba(255,165,0,0.12); color:#ffb23d; border:1px solid rgba(255,165,0,0.25); }
.badge.streak.streak-warm { background:rgba(31,150,255,0.12); color:var(--accent-2); border:1px solid rgba(31,150,255,0.25); }
.badge.pt { background:rgba(255,255,255,0.08); color:var(--text-dim); border:1px solid rgba(255,255,255,0.15); }
.player-row.top1 .badge.pt { background:rgba(255,215,0,0.18); color:var(--gold); border-color:rgba(255,215,0,0.4); }
.player-row.top2 .badge.pt { background:rgba(192,192,192,0.18); color:var(--silver); border-color:rgba(192,192,192,0.4); }
.player-row.top3 .badge.pt { background:rgba(205,127,50,0.18); color:var(--bronze); border-color:rgba(205,127,50,0.4); }
.stat { font-variant-numeric:tabular-nums; }
.loading { text-align:center; padding:44px 0; font-size:15px; color:var(--text-dim); position:relative; }
.loading::after { content:''; display:block; height:3px; width:140px; margin:12px auto 0; background:linear-gradient(90deg,transparent,rgba(31,150,255,0.5),transparent); animation:shimmer 1.4s infinite; }
@keyframes shimmer { 0%{background-position:-140px 0;} 100%{background-position:140px 0;} }
.footer-note { margin-top:16px; font-size:12px; color:#7fa0bd; text-align:right; }
@media (max-width:780px){ .table-head,.player-row { grid-template-columns:40px 1.9fr .7fr .9fr .7fr .7fr .7fr .7fr; font-size:12.5px; gap:8px; } .rust-leaderboard { padding:20px 16px 22px; } .rust-leaderboard h2 { font-size:24px; } .player-row .name .avatar { width:26px; height:26px; font-size:12px; } .badge-level { padding:4px 8px; font-size:10px; } .badge { padding:3px 8px; font-size:11px; } }
