*{box-sizing:border-box}html,body,#root{height:100%}html{font-size:clamp(16px,.9vw + 10px,28px)}body{background:var(--bg-image)center/cover no-repeat fixed;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Verdana,Tahoma;overflow-x:hidden}:root{--text:#eaf0ff;--muted:#b6c0d6;--card-alpha:.92;--chrome-alpha:.96;--thead-alpha:.98;--row-hover-alpha:.06;--card-border:#ffffff14;--row-border:#ffffff14;--chip-border:#ffffff1f;--chip-bg:#ffffff0f;--chip-fg:#fff;--badge-bg:#ffffff0f;--button-bg:linear-gradient(180deg,#8a76ff,#6b4dff);--button-fg:#fff;--button-shadow:none;--button-hover-shadow:0 10px 24px #7c5cff47;--thead-bg:rgba(8,12,22,var(--thead-alpha));--radius-lg:20px;--shadow-1:0 10px 30px #00000059;--shadow-2:0 20px 50px #00000073;--page-pad-x:max(1.25rem,3vw);--blur:0px;--sat:100%;--page-scrim:#00000038}body:before{content:"";background:var(--page-scrim);pointer-events:none;z-index:0;position:fixed;inset:0}#root{z-index:1;position:relative}.container{max-width:100%;margin:0;padding:0}.header{padding:1rem var(--page-pad-x)0 var(--page-pad-x);justify-content:flex-start;align-items:center;margin-bottom:.25rem;display:flex}.title{align-items:center;gap:.6rem;display:flex}.title h1{letter-spacing:.5px;color:var(--text);margin:0;font-weight:800}.header svg path,.header svg circle{stroke:var(--text)}.layout-wide{padding:0 var(--page-pad-x)max(1.25rem,2vh)var(--page-pad-x);grid-template-columns:1fr 1fr;gap:max(1.25rem,2.2vw);display:grid}.card{border-radius:var(--radius-lg);border:1px solid var(--card-border);box-shadow:var(--shadow-2);color:var(--text);background:rgba(10,14,25,var(--card-alpha));-webkit-backdrop-filter:none;flex-direction:column;display:flex;overflow:hidden}.controls{border-bottom:1px solid var(--card-border);background:rgba(10,14,25,var(--chrome-alpha));color:var(--text);align-items:center;gap:.7rem;padding:.9rem 1.1rem;display:flex}.badge{border:1px solid var(--card-border);color:var(--muted);background:var(--badge-bg);border-radius:999px;padding:.4rem .7rem;font-size:.9rem}.button{background:var(--button-bg);color:var(--button-fg);cursor:pointer;box-shadow:var(--button-shadow);border:0;border-radius:12px;padding:.55rem .9rem;font-weight:700;transition:transform .12s,box-shadow .12s,opacity .2s}.button:hover{box-shadow:var(--button-hover-shadow);transform:translateY(-1px)}.button.secondary{border:1px solid var(--card-border);color:var(--text);background:#ffffff0f}.table{border-collapse:collapse;table-layout:fixed;width:100%}.table thead{z-index:1;background:var(--thead-bg);border-bottom:1px solid #ffffff1a;position:sticky;top:0}.table th,.table td{border-bottom:1px solid var(--row-border);text-align:left;padding:1rem 1.1rem}.table th{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:.95rem}.table td{color:var(--text)}.card .table tbody{max-height:calc(88vh - 6.8rem);display:block;overflow-y:auto}.card .table thead,.card .table tbody tr{table-layout:fixed;width:100%;display:table}.row{transition:background .16s,transform .16s}.row:hover{background:rgba(255,255,255,var(--row-hover-alpha));transform:translateY(-1px)}.rank{border:1px solid var(--chip-border);letter-spacing:.2px;background:var(--chip-bg);min-width:3rem;color:var(--chip-fg);border-radius:999px;justify-content:center;align-items:center;padding:.5rem .85rem;font-weight:900;display:inline-flex}.rank.gold{color:#2b1e00;background:linear-gradient(#ffd86a,#f5c542);border-color:#ffd86a59}.rank.silver{color:#1f2937;background:linear-gradient(#eef2f7,#cbd5e1);border-color:#cbd5e166}.rank.bronze{color:#2b1900;background:linear-gradient(#f0cf9f,#d4a373);border-color:#d4a37359}.player{letter-spacing:.3px;color:#f7f9ff;font-weight:800}.score{font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 1px 2px #00000059;font-weight:900}.footer{color:var(--muted);border-top:1px solid var(--card-border);background:rgba(10,14,25,var(--chrome-alpha));justify-content:space-between;align-items:center;margin-top:auto;padding:.9rem 1.1rem;display:flex}.skeleton{background:linear-gradient(90deg,#ffffff0f,#ffffff1f,#ffffff0f) 0 0/200% 100%;border-radius:8px;width:100%;height:1.2rem;animation:1.2s infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}body.mando-dark{--text:#e8edf7;--muted:#a6b0c6;--button-bg:linear-gradient(180deg,#8a76ff,#6b4dff);--button-hover-shadow:0 10px 24px #7c5cff59;--blur:0px;--sat:115%;--page-scrim:#00000038;background:radial-gradient(1200px 800px at 18% -10%,#0e1426a6 0%,#060a14eb 55%),linear-gradient(180deg,#080c168c,#080c16d9),var(--bg-image)center/cover no-repeat fixed}body.mando-holo{--text:#eaf5ff;--muted:#a9c0d8;--button-bg:linear-gradient(180deg,#00e0ff,#7c5cff);--button-fg:#021018;--button-shadow:0 8px 20px #00e0ff40;--button-hover-shadow:0 12px 28px #7c5cff4d;--blur:0px;--sat:125%;--page-scrim:#0003;background:linear-gradient(180deg,#040c168c,#040a14d9),radial-gradient(900px 700px at 80% 10%,#00e0ff14,transparent 60%),radial-gradient(900px 700px at 10% 90%,#7c5cff14,transparent 60%),var(--bg-image)center/cover no-repeat fixed}body.mando-neon{--text:#f6f8ff;--muted:#c7cbe0;--button-bg:linear-gradient(180deg,#ff3df0,#7c5cff);--button-fg:#180017;--button-shadow:0 10px 24px #ff3df04d;--button-hover-shadow:0 14px 32px #7c5cff59;--blur:0px;--sat:130%;--page-scrim:#0000003d;background:radial-gradient(1100px 700px at 20% -10%,#0a0a1480,#0a0a14e6),linear-gradient(180deg,#0e00168c,#04000acc),var(--bg-image)center/cover no-repeat fixed}@media (max-width:1200px){.layout-wide{padding:0 1rem 1rem;display:block}.card{margin-bottom:1rem}.card .table tbody{max-height:none}}@media (min-width:2500px){.title h1{font-size:2.8rem}.table th,.table td{font-size:1.15rem}.player,.score{font-size:1.25rem}.rank{min-width:3.4rem}}@media (max-width:720px){html{font-size:16px}:root{--page-pad-x:1rem}.header{padding:.75rem var(--page-pad-x)0 var(--page-pad-x);margin-bottom:.25rem}.title{gap:.5rem}.title h1{font-size:1.25rem}.header svg{width:1.4rem;height:1.4rem}.layout-wide{padding:0 var(--page-pad-x)1rem var(--page-pad-x);display:block}.card{box-shadow:var(--shadow-1);border-radius:16px;margin-bottom:.9rem}.controls{flex-wrap:wrap;gap:.5rem;padding:.65rem .75rem}.badge{padding:.35rem .6rem;font-size:.85rem}.button{border-radius:10px;padding:.55rem .8rem}.controls .button{flex:auto;min-width:8rem}.card .table{width:100%;display:block;overflow-x:auto}.table thead{position:sticky;top:0}.table th,.table td{white-space:nowrap;padding:.7rem .75rem;font-size:1rem}.rank{min-width:2.4rem;padding:.4rem .6rem;font-size:.95rem}.player,.score{font-size:1.05rem}.footer{gap:.5rem;padding:.7rem .75rem;font-size:.9rem}.skeleton{border-radius:6px;height:1rem}}@media (max-width:420px){.title h1{font-size:1.1rem}.header svg{width:1.2rem;height:1.2rem}.badge{padding:.3rem .55rem;font-size:.8rem}.controls .button{min-width:0}.score{font-size:1.1rem;font-weight:800}.table th:nth-child(4),.table td:nth-child(4){display:none}.table th,.table td{padding:.6rem .65rem}}@media (min-width:721px){.card .table td{font-size:clamp(1.05rem,.95vw,1.25rem);line-height:1.25}.card .table th{letter-spacing:.5px;font-size:clamp(.98rem,.8vw,1.12rem);line-height:1.2}.player{font-size:clamp(1.15rem,1vw,1.35rem)}.score{font-size:clamp(1.2rem,1.1vw,1.6rem)}.rank{min-width:3.3rem;font-size:clamp(1rem,.9vw,1.2rem)}}:root{--player-weight:600;--score-weight:700}.player{font-weight:var(--player-weight);letter-spacing:.2px;text-shadow:none}.score{font-weight:var(--score-weight);text-shadow:0 1px 1px #00000040}.card .table td{font-weight:500}@media (min-width:1024px) and (min-height:720px){html,body{height:100%}body{flex-direction:column;min-height:100svh;display:flex}#root{flex-direction:column;flex:1 0 auto;display:flex}.container{margin-block:auto}.layout-wide{align-items:stretch;max-height:none}.card{flex-direction:column;min-height:88vh;display:flex}.card .table tbody{max-height:calc(88vh - 7.5rem)}}body{background:var(--bg-image)center/cover no-repeat fixed;position:relative}body:before{content:"";background:var(--bg-image)center/cover no-repeat fixed;opacity:0;z-index:-1;transition:opacity .6s;position:fixed;inset:0}body.ready:before{opacity:1}
