:root{--ink:#0b0d18;--panel:#1C1F2B;--panel-2:#222636;--mist:#2A2E3D;--mist-2:#363B4E;--chalk:#F4F6FB;--fog:#B4BACB;--amber:#F0A830;--amber-soft:rgba(240,168,48,.14);--spring:#46D39A;--spring-soft:rgba(70,211,154,.16);--coral:#FF6B6B;--coral-soft:rgba(255,107,107,.16);--violet:#8B7BFF;--mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--sinhala:"Iskoola Pota","Noto Sans Sinhala",system-ui,sans-serif;--tamil:"Latha","Noto Sans Tamil",system-ui,sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:#0b0d18;color:var(--chalk);font-family:var(--sans);min-height:100vh;-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden;perspective:1400px;perspective-origin:50% 30%;text-shadow:0 1px 2px rgba(0,0,0,.55)}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background:linear-gradient(180deg,#00000073,#0000002e);border-radius:99px;margin:4px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#ffd166,var(--amber) 50%,#9a5a08);border-radius:99px;border:3px solid rgba(0,0,0,.4);min-height:48px;box-shadow:inset 0 1px #ffffff73,inset 0 -2px 6px #00000059}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#ffe18c,#ffd166 50%,var(--amber))}::-webkit-scrollbar-corner{background:transparent}html{scrollbar-width:auto;scrollbar-color:var(--amber) rgba(0,0,0,.3)}#bg3d{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none;display:block}.wrap{max-width:1180px;margin:0 auto;padding:24px 18px 60px;position:relative;z-index:2}header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}.brand{display:flex;align-items:baseline;gap:12px}.logo{font-family:var(--mono);font-weight:900;font-size:32px;letter-spacing:.32em;text-indent:.32em;color:#ffe08a;-webkit-text-stroke:1px rgba(255,224,138,.65);text-shadow:0 2px 0 #5a3a08,0 3px 0 rgba(0,0,0,.55),0 0 22px rgba(240,168,48,.7),0 0 40px rgba(240,168,48,.35)}.tagline{font-size:13.5px;color:#e2e7f2;font-weight:500;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.8),0 0 8px rgba(0,0,0,.5)}.hgroup{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.total{background:linear-gradient(180deg,#282e4238,#1418264d);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:9px 16px;text-align:center;box-shadow:0 4px #0006,0 8px 14px #00000073,inset 0 2px #ffffff26}.total .n{font-family:var(--mono);font-size:24px;font-weight:800;color:var(--spring);line-height:1;text-shadow:0 2px 0 rgba(0,0,0,.4),0 0 14px rgba(70,211,154,.4);transition:transform .15s ease}.total .n.bump{animation:counterBump .55s cubic-bezier(.34,1.56,.64,1)}@keyframes counterBump{0%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(240,168,48,0))}35%{transform:scale(1.45);filter:drop-shadow(0 0 14px rgba(240,168,48,.85))}to{transform:scale(1);filter:drop-shadow(0 0 0 rgba(240,168,48,0))}}.total .l{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--fog);margin-top:3px}.user-chip{display:flex;align-items:center;gap:10px;background:linear-gradient(180deg,#282e4238,#1418264d);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:6px 8px 6px 12px;font-size:12.5px;box-shadow:0 4px #0006,0 8px 16px #00000073,inset 0 2px #ffffff26}.user-chip .avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--amber),var(--spring));display:grid;place-items:center;color:#1a1404;font-weight:700;font-size:13px}.user-chip .name{color:var(--chalk);font-weight:600;line-height:1.1}.user-chip .stars{color:var(--amber);font-size:10.5px;font-family:var(--mono)}.user-chip button{background:transparent;border:1px solid var(--mist);color:var(--fog);font:inherit;font-size:11px;padding:4px 8px;border-radius:8px;cursor:pointer;margin-left:4px}.user-chip button:hover{color:var(--coral);border-color:var(--coral)}.track-hint{font-size:11px;color:var(--fog);margin:0 4px 8px;letter-spacing:.05em}.track{display:flex;gap:10px;overflow-x:auto;padding:8px 12px 14px;margin-bottom:10px;scrollbar-width:auto;scrollbar-color:var(--amber) rgba(0,0,0,.25);mask-image:linear-gradient(90deg,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%)}.track::-webkit-scrollbar{height:14px}.track::-webkit-scrollbar-track{background:linear-gradient(180deg,#00000073,#0003);border-radius:99px;margin:0 12px}.track::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#ffd166,var(--amber) 50%,#9a5a08);border-radius:99px;border:2px solid rgba(0,0,0,.4);box-shadow:inset 0 1px #fff6,inset 0 -2px 4px #0000004d}.track::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#ffe18c,#ffd166 50%,var(--amber))}.lvl{flex:0 0 auto;min-width:130px;height:142px;border-radius:18px;background:linear-gradient(180deg,#282e421f,#181c2a33);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.06);cursor:pointer;position:relative;padding:14px 10px 18px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;overflow:hidden;-webkit-user-select:none;user-select:none;transform-style:preserve-3d;box-shadow:0 8px #00000073,0 14px 28px #00000073,inset 0 2px #ffffff1f,inset 0 -8px 16px #00000059;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,border-color .2s ease}.lvl:hover{transform:translateY(-4px) rotateX(-2deg);box-shadow:0 14px #0006,0 22px 40px #0000008c,inset 0 2px #ffffff2e,inset 0 -8px 16px #00000059}.lvl:active{transform:translateY(2px);box-shadow:0 4px #00000073,0 8px 16px #0006,inset 0 2px #ffffff1a,inset 0 -8px 16px #0006}.lvl .g-emoji{font-size:26px;line-height:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}.lvl .g-num{font-family:var(--mono);font-weight:900;font-size:38px;line-height:.95;background:linear-gradient(180deg,#fff5d6,#ffd166,#ec9d2a 70%,#9a5a08);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.05),1px 2px 0 rgba(110,60,5,.55),2px 3px 0 rgba(80,40,5,.45),3px 5px 6px rgba(0,0,0,.55);filter:drop-shadow(0 4px 6px rgba(0,0,0,.45));letter-spacing:.02em;transform:translateZ(0)}.lvl.current .g-num{filter:drop-shadow(0 0 14px rgba(255,209,102,.7)) drop-shadow(0 4px 6px rgba(0,0,0,.55))}.lvl.done .g-num{background:linear-gradient(180deg,#d8ffea,#6fe2b0 40%,#1aa172);-webkit-background-clip:text;background-clip:text}.lvl .g-name{font-family:var(--mono);font-weight:700;font-size:13px;color:#fff;text-align:center;letter-spacing:.04em;line-height:1.2;text-shadow:0 1px 3px rgba(0,0,0,.75),0 0 8px rgba(0,0,0,.4)}.lvl .g-sub{font-size:10.5px;color:#dde2ed;text-align:center;line-height:1.1;text-shadow:0 1px 2px rgba(0,0,0,.7)}.lvl.current .g-name,.lvl.done .g-name{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.85),0 0 10px rgba(0,0,0,.5)}.lvl.current .g-sub,.lvl.done .g-sub{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.lvl .g-pct{font-family:var(--mono);font-weight:700;font-size:16px;color:var(--amber);margin-top:auto}.lvl .g-bar{position:absolute;left:8px;right:8px;bottom:7px;height:5px;background:var(--mist);border-radius:99px;overflow:hidden}.lvl .g-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--spring),#5fe0aa);transition:width .6s ease;border-radius:99px}.lvl.done{background:linear-gradient(180deg,#46d39a52,#14503799);border-color:#46d39a80;box-shadow:0 8px #0f3c2899,0 14px 28px #46d39a40,inset 0 2px #ffffff2e}.lvl.done .g-pct{color:var(--spring)}.lvl.done:after{content:"✓";position:absolute;top:6px;right:8px;font-size:14px;color:var(--spring);font-weight:700;text-shadow:0 0 8px var(--spring)}.lvl.current{background:linear-gradient(180deg,#ffc85a61,#643705b3);border-color:var(--amber);box-shadow:0 0 0 3px #f0a83059,0 10px #46280099,0 16px 32px #f0a83066,inset 0 2px #ffffff40;transform:translateY(-4px) rotateX(-3deg)}.lvl.current .g-pct{color:#fff;text-shadow:0 0 8px var(--amber)}.grid{display:grid;grid-template-columns:1fr 340px;gap:18px;align-items:start}@media (max-width:880px){.grid{grid-template-columns:1fr}}.card{background:linear-gradient(180deg,#282e422e,#14182647);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:30px 26px 26px;position:relative;overflow:hidden;box-shadow:0 12px #00000059,0 20px 50px #0000008c,inset 0 2px #ffffff26,inset 0 -10px 20px #00000040;transform-style:preserve-3d}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0d18c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;text-align:center;padding:24px;z-index:5}.overlay.hidden{display:none}.overlay h2{font-size:24px;margin:0 0 8px}.overlay p{color:var(--fog);font-size:14px;max-width:380px;margin:0 auto 22px}.speaker-row{display:flex;flex-direction:column;align-items:center;gap:16px}.speaker{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#ffd166 0%,var(--amber) 28%,#b87a1a 75%,#7c4f0e 100%);border:none;display:grid;place-items:center;cursor:pointer;position:relative;box-shadow:0 6px #5e3a06,0 12px 18px #00000080,inset 0 6px 14px #ffffff73,inset 0 -8px 18px #0006;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s ease;transform-style:preserve-3d}.speaker:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px #5e3a06,0 16px 26px #0000008c,inset 0 6px 14px #ffffff80,inset 0 -8px 18px #0006}.speaker:active{transform:translateY(3px) scale(.98);box-shadow:0 2px #5e3a06,0 6px 12px #00000080,inset 0 6px 14px #fff6,inset 0 -8px 18px #00000080}.speaker svg{width:46px;height:46px;fill:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.speaker .ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--amber);opacity:0;pointer-events:none}.speaker .ring{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;border:2px solid var(--amber);opacity:0}.speaker.playing .ring{animation:pulse 1.1s ease-out infinite}.speaker.playing{animation:bounce 1.1s ease-in-out infinite}@keyframes pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.6);opacity:0}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.replay-hint{font-size:12px;color:var(--fog)}.replay-hint b{color:var(--amber);font-weight:600}.meaning{margin-top:18px;background:linear-gradient(135deg,#8b7bff14,#46d39a0f);border:1px solid rgba(139,123,255,.25);border-radius:14px;padding:14px 16px;min-height:84px;display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:center;transition:opacity .3s ease}.meaning.empty{opacity:.5}.meaning .col{display:flex;flex-direction:column;gap:4px}.meaning .lab{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fog)}.meaning .val{font-size:16px;font-weight:600;color:var(--chalk);min-height:24px;word-wrap:break-word}.meaning .col.si .val{font-family:var(--sinhala);color:#ffd166}.meaning .col.ta .val{font-family:var(--tamil);color:#a0e8af}.meaning .val.loading{color:var(--fog);font-weight:400;font-style:italic;font-size:13px}.tiles{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin:22px 0 6px;min-height:60px}.tile{width:50px;height:60px;border-radius:12px;background:linear-gradient(180deg,#3b4360,#252a40);border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;font-family:var(--mono);font-size:26px;font-weight:700;color:var(--chalk);box-shadow:0 4px #00000080,0 8px 14px #0006,inset 0 2px #ffffff2e,inset 0 -3px 6px #00000059;text-shadow:0 2px 4px rgba(0,0,0,.5);transform-style:preserve-3d;transition:background .12s ease,border-color .12s ease,color .12s ease,transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s ease}.tile.ghost{color:var(--fog);opacity:.4;background:linear-gradient(180deg,#1c2030,#12141d);border:1px dashed rgba(255,255,255,.1);box-shadow:0 2px #0006,inset 0 1px #ffffff0d}.tile.ok{background:linear-gradient(180deg,#5fe3a6,#2b8c61);border-color:#46d39ab3;color:#fff;box-shadow:0 5px #154025,0 10px 20px #46d39a80,inset 0 2px #ffffff40,inset 0 -3px 6px #00000040;transform:translateY(-3px)}.tile.bad{background:linear-gradient(180deg,#ff8b8b,#a83838);border-color:#ff6b6bb3;color:#fff;box-shadow:0 5px #5a1414,0 10px 20px #ff6b6b80,inset 0 2px #ffffff40,inset 0 -3px 6px #0000004d}.tile.reveal{background:linear-gradient(180deg,#ffd166,#b87a1a);border-color:#f0a830b3;color:#fff;box-shadow:0 5px #5e3a06,0 10px 20px #f0a83080,inset 0 2px #ffffff4d,inset 0 -3px 6px #0000004d}.tiles.shake{animation:shake .4s}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}#typed{width:100%;background:#080a122e;border:1px solid rgba(255,255,255,.08);border-bottom:2px solid var(--mist);color:#fff;font-family:var(--mono);font-size:22px;letter-spacing:.04em;text-align:center;padding:12px 8px;outline:none;border-radius:10px;caret-color:var(--amber);transition:border-color .15s ease,background .15s ease;margin-top:14px;text-shadow:0 1px 2px rgba(0,0,0,.7)}#typed:focus{border-color:var(--amber);background:#080a1252;box-shadow:0 0 0 3px #f0a83040}#typed::placeholder{color:#aab2c4;letter-spacing:0;font-family:var(--sans);font-size:16px;text-shadow:0 1px 2px rgba(0,0,0,.6)}#typed:disabled{opacity:.5}.feedback{text-align:center;margin-top:14px;font-size:14px;min-height:22px;color:#dde2ed;text-shadow:0 1px 2px rgba(0,0,0,.7)}.feedback.good{color:#7afac0;text-shadow:0 1px 2px rgba(0,0,0,.7),0 0 10px rgba(70,211,154,.4)}.feedback.fail{color:#ff9a9a;text-shadow:0 1px 2px rgba(0,0,0,.7),0 0 10px rgba(255,107,107,.4)}.feedback .ans{font-family:var(--mono);color:#ffd166;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8),0 0 8px rgba(240,168,48,.5)}.controls{display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}button.btn{font-family:var(--sans);font-size:14px;font-weight:700;border-radius:12px;padding:12px 22px;cursor:pointer;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,#3b4360,#252a40);color:#fff;position:relative;box-shadow:0 5px #00000080,0 10px 18px #00000073,inset 0 2px #fff3,inset 0 -3px 6px #0000004d;text-shadow:0 1px 2px rgba(0,0,0,.85),0 0 6px rgba(0,0,0,.6);transform-style:preserve-3d;transition:transform .12s cubic-bezier(.34,1.56,.64,1),box-shadow .12s ease,background .12s ease,color .12s ease}button.btn:hover{transform:translateY(-2px);color:#fff;border-color:#ffd1668c;box-shadow:0 7px #00000080,0 14px 28px #f0a83059,0 0 0 1px #ffd16640,inset 0 2px #ffffff59,inset 0 -3px 6px #0000004d;background:linear-gradient(180deg,#5a6488,#363e5c)}button.btn:active{transform:translateY(3px);color:#fff;box-shadow:0 2px #00000080,0 4px 10px #00000080,inset 0 2px #ffffff2e,inset 0 -3px 6px #00000073;background:linear-gradient(180deg,#262c42,#171b2c)}button.btn.ghostbtn{background:linear-gradient(180deg,#ffd166 0%,var(--amber) 45%,#b87a1a 100%);border-color:#ffdd9699;color:#3a2406;text-shadow:0 1px 1px rgba(255,255,255,.4);box-shadow:0 5px #5e3a06,0 10px 22px #b87a1a80,inset 0 2px #fff9,inset 0 -3px 8px #5a280666,inset 0 0 14px #ffe1964d}button.btn.ghostbtn:hover{background:linear-gradient(180deg,#ffdc84,#f7b53f 45%,#c98a22);box-shadow:0 6px #5e3a06,0 13px 28px #c88a2299,inset 0 2px #ffffffbf,inset 0 -3px 8px #5a280661,inset 0 0 16px #ffebaa73}.btn.danger{color:#fff;background:linear-gradient(180deg,#ff8b8b,#a83838);box-shadow:0 5px #5a1414,0 10px 18px #ff6b6b66,inset 0 2px #ffffff4d,inset 0 -3px 6px #0000004d}.btn.danger:hover{background:linear-gradient(180deg,#faa,#bf4444)}.btn.danger:active{box-shadow:0 2px #5a1414,0 4px 8px #ff6b6b80,inset 0 2px #fff3,inset 0 -3px 6px #0006}.levelup{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;z-index:6}.levelup span{font-family:var(--mono);font-weight:700;font-size:26px;color:var(--amber);background:#1a1d28;padding:16px 32px;border-radius:18px;text-align:center;white-space:pre-line;box-shadow:0 18px 60px -16px #f0a830b3,0 0 0 1px var(--amber)}.burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:8;overflow:visible}.burst .star{position:absolute;width:14px;height:14px;background:linear-gradient(45deg,var(--amber),#ffd166);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);filter:drop-shadow(0 0 6px var(--amber))}.side{display:flex;flex-direction:column;gap:14px}.pcard{background:linear-gradient(180deg,#282e421f,#14182633);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px;box-shadow:0 8px #00000059,0 14px 28px #0006,inset 0 2px #ffffff24,inset 0 -8px 16px #00000040;transform-style:preserve-3d}.pcard .eyebrow{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fog)}.pcard .lvlnum{font-family:var(--mono);font-weight:700;font-size:26px;line-height:1.15;color:var(--amber);text-shadow:0 0 22px rgba(240,168,48,.5);margin-top:2px}.pcard .lvldesc{font-size:13px;color:var(--fog);margin-bottom:14px;margin-top:2px}.bar{height:12px;border-radius:99px;background:var(--mist);overflow:hidden;position:relative}.bar>i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--spring),#5fe0aa,var(--amber));transition:width .6s ease;box-shadow:0 0 12px #46d39a99}.barlabel{display:flex;justify-content:space-between;font-size:12px;margin-top:8px;color:var(--fog)}.barlabel b{color:var(--chalk);font-family:var(--mono)}.ministats{display:flex;gap:10px;margin-top:14px}.ministat{flex:1;background:var(--panel-2);border-radius:12px;padding:9px;text-align:center}.ministat .n{font-family:var(--mono);font-weight:700;font-size:18px}.ministat .l{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fog);margin-top:3px}.ministat.rem .n{color:var(--amber)}.ministat.strk .n{color:var(--spring)}.fam h3{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fog);margin:0 0 10px;display:flex;justify-content:space-between}.fam h3 span{color:var(--spring);font-family:var(--mono)}.famlist{max-height:280px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:6px}.famlist .fw{font-family:var(--mono);font-size:13px;background:var(--spring-soft);color:var(--spring);border:1px solid rgba(70,211,154,.3);border-radius:8px;padding:4px 9px;cursor:pointer;transition:transform .15s ease}.famlist .fw:hover{transform:translateY(-2px);background:#46d39a47}.famlist .fw .s{font-size:9.5px;color:var(--amber);margin-left:4px;letter-spacing:-.5px}.famempty{color:var(--fog);font-size:13px;text-align:center;padding:18px 8px}.leaderboard{background:linear-gradient(180deg,#282e4238,#1418264d);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px 18px;box-shadow:0 8px #0006,0 14px 28px #00000080,inset 0 2px #ffffff1f;transform-style:preserve-3d}.leaderboard h3{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);margin:0 0 12px;display:flex;justify-content:space-between;align-items:center}.leaderboard h3 .live{font-family:var(--mono);color:var(--spring);font-size:10px;display:flex;align-items:center;gap:5px}.leaderboard h3 .live:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--spring);box-shadow:0 0 8px var(--spring);animation:livepulse 2s ease infinite}@keyframes livepulse{0%,to{opacity:1}50%{opacity:.4}}.lb-row{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:8px 6px;border-radius:10px;font-size:13px;transition:background .15s ease}.lb-row:hover{background:var(--mist)}.lb-row.me{background:linear-gradient(90deg,var(--amber-soft),transparent);border:1px solid rgba(240,168,48,.3)}.lb-row .rank{font-family:var(--mono);font-weight:700;color:var(--fog);text-align:center;font-size:13px}.lb-row.r1 .rank{color:gold}.lb-row.r2 .rank{color:silver}.lb-row.r3 .rank{color:#cd7f32}.lb-row .who{display:flex;align-items:center;gap:7px;min-width:0}.lb-row .who .a{width:22px;height:22px;border-radius:50%;background:var(--mist);display:grid;place-items:center;font-size:10.5px;font-weight:700;flex-shrink:0}.lb-row .who .n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-row .pts{font-family:var(--mono);color:var(--amber);font-weight:700;font-size:13px}.lb-stats{display:flex;justify-content:space-around;padding:12px 4px 6px;border-top:1px solid var(--mist);margin-top:8px;text-align:center}.lb-stats div{font-size:10.5px;letter-spacing:.06em;color:var(--fog);text-transform:uppercase}.lb-stats div b{display:block;font-family:var(--mono);font-size:16px;color:var(--chalk);margin-bottom:2px}.lb-stats div b.green{color:var(--spring)}details.settings{background:linear-gradient(180deg,#282e4238,#1418264d);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:2px 16px;box-shadow:0 6px #0006,0 10px 22px #0006,inset 0 2px #ffffff1a}details.settings summary{cursor:pointer;padding:12px 0;font-size:13px;font-weight:600;color:var(--fog);list-style:none}details.settings summary::-webkit-details-marker{display:none}details.settings summary:before{content:"⚙  "}.set-row{padding:6px 0 14px}.set-row label{display:block;font-size:12.5px;margin-bottom:7px}.set-row .hint{color:var(--fog);font-size:11px;margin-bottom:7px}input[type=range]{width:100%;accent-color:var(--amber)}select{width:100%;background:var(--ink);color:var(--chalk);border:1px solid var(--mist);border-radius:9px;padding:8px 10px;font-family:var(--sans);font-size:12.5px}.pct{font-family:var(--mono);color:var(--amber)}.toggle{display:flex;align-items:center;gap:10px;font-size:12.5px;cursor:pointer}footer{text-align:center;color:var(--fog);font-size:11.5px;margin-top:26px;line-height:1.7}.auth-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#1c1f2b73,#0b0d18a6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.auth-screen.hidden{display:none}.auth-card{width:100%;max-width:440px;background:linear-gradient(180deg,#30364cf2,#141826f7);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:36px 32px;box-shadow:0 18px #0006,0 30px 80px -10px #000000d9,inset 0 2px #ffffff26,inset 0 -10px 24px #00000059;transform-style:preserve-3d}.auth-card h2{font-family:var(--mono);font-weight:900;font-size:30px;margin:0 0 8px;letter-spacing:.18em;color:#ffe08a;-webkit-text-stroke:1px rgba(255,224,138,.55);text-shadow:0 2px 0 #5a3a08,0 3px 0 rgba(0,0,0,.55),0 0 22px rgba(240,168,48,.7)}.auth-card .sub{color:#e2e7f2;font-size:14px;margin-bottom:22px;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.8)}.auth-tabs{display:flex;gap:6px;background:var(--ink);padding:5px;border-radius:12px;margin-bottom:20px}.auth-tabs button{flex:1;background:transparent;color:var(--fog);border:none;padding:9px;font:inherit;font-weight:600;font-size:13px;border-radius:9px;cursor:pointer;transition:all .15s ease}.auth-tabs button.active{background:var(--amber);color:#1a1404}.auth-field{margin-bottom:14px}.auth-field label{display:block;font-size:11px;color:var(--fog);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.auth-field input{width:100%;background:var(--ink);border:1px solid var(--mist);color:var(--chalk);padding:11px 14px;border-radius:10px;font:inherit;font-size:14px;outline:none;transition:border-color .15s ease}.auth-field input:focus{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-soft)}.auth-field .err{color:var(--coral);font-size:11.5px;margin-top:5px;min-height:14px}.auth-card button.primary{width:100%;background:linear-gradient(180deg,#ffd166 0%,var(--amber) 50%,#b87a1a 100%);color:#1a1404;border:none;padding:14px;font:inherit;font-weight:800;font-size:15px;border-radius:13px;cursor:pointer;box-shadow:0 7px #5e3a06,0 14px 26px #f0a83080,inset 0 2px #ffffff8c,inset 0 -3px 6px #7846054d;transition:transform .12s cubic-bezier(.34,1.56,.64,1),box-shadow .12s ease;margin-top:6px;text-shadow:0 1px 0 rgba(255,230,160,.6)}.auth-card button.primary:hover{transform:translateY(-2px);box-shadow:0 9px #5e3a06,0 18px 32px #f0a830a6,inset 0 2px #fff9,inset 0 -3px 6px #7846054d}.auth-card button.primary:active{transform:translateY(3px);box-shadow:0 3px #5e3a06,0 6px 12px #f0a83080,inset 0 2px #fff6,inset 0 -3px 6px #78460566}.auth-link{background:none;border:none;color:var(--amber);font:inherit;font-size:12.5px;cursor:pointer;padding:4px 0;margin-top:12px}.auth-link:hover{text-decoration:underline}.auth-card .guest{margin-top:18px;padding-top:18px;border-top:1px solid var(--mist);text-align:center}.auth-card .guest button{background:transparent;border:1px dashed var(--mist-2);color:var(--fog);font:inherit;font-size:12px;padding:8px 16px;border-radius:9px;cursor:pointer}.auth-card .guest button:hover{border-color:var(--fog);color:var(--chalk)}.pcard.medals h3{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fog);margin:0 0 12px;display:flex;justify-content:space-between}.pcard.medals h3 span{color:var(--amber);font-family:var(--mono)}.medal-row{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.medal{aspect-ratio:1/1.15;border-radius:10px;background:linear-gradient(180deg,#282e428c,#141826b3);border:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 2px 4px;text-align:center;opacity:.35;transition:all .25s ease;position:relative;overflow:hidden}.medal .m-emoji{font-size:18px;line-height:1;filter:grayscale(.7)}.medal .m-name{font-size:8.5px;color:var(--fog);margin-top:3px;letter-spacing:0;line-height:1.05;width:100%;text-align:center;padding:0 1px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.medal.earned{opacity:1}.medal.earned .m-emoji{filter:none;transform:scale(1.08)}.medal.earned .m-name{color:var(--chalk);font-weight:600}.medal.medal-bronze.earned{background:linear-gradient(180deg,#c49070,#7a4a25);border-color:#d8a07a;box-shadow:0 0 14px #c4907073}.medal.medal-silver.earned{background:linear-gradient(180deg,#d5dae4,#7a8290);border-color:#e5eaf2;box-shadow:0 0 14px #d5dae480}.medal.medal-gold.earned{background:linear-gradient(180deg,#ffd76a,#a67309);border-color:#ffe18c;box-shadow:0 0 16px #ffd76a8c}.medal.medal-trophy.earned{background:linear-gradient(180deg,#fff0a0,#bf9300);border-color:#fff6c0;box-shadow:0 0 22px #ffe878bf,inset 0 0 10px #fffac866}.medal.current:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:12px;border:2px solid var(--amber);box-shadow:0 0 16px #f0a830b3;pointer-events:none;animation:medalPulse 1.4s ease-in-out infinite}@keyframes medalPulse{0%,to{opacity:.8}50%{opacity:.35}}.medal-cap{margin-top:10px;font-size:10.5px;color:var(--fog);line-height:1.4;text-align:center;letter-spacing:.02em}.medal-cap b{color:var(--amber);font-weight:700}.admin-card{width:min(1100px,96vw);max-height:90vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#222636f2,#141826f7);border:1px solid rgba(255,255,255,.12);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px #0009}.admin-card.page{width:min(1400px,100%);max-height:none;height:100%;border-radius:14px}.admin-card.page header{padding:22px 26px}.admin-card.page header h2{font-size:22px}.admin-card header{display:flex;align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.08);background:#00000040}.admin-card header h2{margin:0;font-family:var(--mono);font-size:18px;letter-spacing:.1em;color:var(--amber);white-space:nowrap}.admin-card header .admin-current{flex:1;font-size:12.5px;color:var(--fog);font-family:var(--mono)}.admin-card header .admin-current b{color:var(--chalk);font-weight:600}.admin-card header .admin-head-actions{display:flex;gap:8px;align-items:center}.admin-card header .close{background:transparent;border:none;color:var(--fog);font-size:26px;cursor:pointer;width:36px;height:36px;border-radius:8px;line-height:1}.admin-card header .close:hover{background:#ffffff14;color:var(--chalk)}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;padding:18px 22px;background:#0000002e}.admin-stat{background:linear-gradient(180deg,#282e4273,#1418268c);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:12px 14px;text-align:center}.admin-stat .n{font-family:var(--mono);font-size:24px;font-weight:800;color:var(--spring)}.admin-stat .l{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--fog);margin-top:3px}.admin-stat.online-now .n{color:#7afac0}.admin-stat.online-now{position:relative}.admin-stat.online-now:before{content:"";position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%;background:#46d39a;box-shadow:0 0 8px #46d39a;animation:pulseOnline 1.5s ease-in-out infinite}@keyframes pulseOnline{0%,to{opacity:.6}50%{opacity:1}}.admin-btn.primary{background:linear-gradient(180deg,#ffd76a,#a67309);color:#1a1404;border-color:#ffd76a}.admin-btn.primary:hover{filter:brightness(1.1)}.admin-table .email .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#454c60;margin-right:8px;vertical-align:middle}.admin-table .email .dot.online{background:#46d39a;box-shadow:0 0 6px #46d39a}.admin-actions{display:flex;align-items:center;gap:8px;padding:12px 22px;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);background:#0000001f}.admin-btn{padding:7px 14px;font-size:12px}.admin-btn.ghost{background:#3c445c66}.admin-spacer{flex:1}.admin-warn{font-size:11px;color:var(--fog);font-style:italic}.admin-search{background:#080a1280;border:1px solid rgba(255,255,255,.1);color:var(--chalk);border-radius:8px;padding:7px 12px;font:inherit;font-size:12.5px;min-width:240px;font-family:var(--sans)}.admin-search::placeholder{color:var(--fog)}.admin-search:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #f0a8302e}.admin-empty{padding:40px;text-align:center;color:var(--fog);font-size:13px;font-style:italic}.admin-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 22px;border-top:1px solid rgba(255,255,255,.06);background:#0000002e;font-size:11px;color:var(--fog);letter-spacing:.02em}.admin-table-wrap{overflow:auto;flex:1;padding:0}.admin-table{width:100%;border-collapse:collapse;font-size:12.5px}.admin-table th{position:sticky;top:0;background:#0f121ef2;text-align:left;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fog);padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.08);z-index:2}.admin-table td{padding:9px 14px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--chalk)}.admin-table tr:hover td{background:#ffffff08}.admin-table .email{font-family:var(--mono);font-size:11.5px;color:#cfd5e3}.admin-table .email em{color:var(--amber);font-style:normal;font-size:10.5px}.admin-table .role{display:inline-block;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.role-admin{background:#f0a8302e;color:var(--amber);border:1px solid rgba(240,168,48,.45)}.role-user{background:#ffffff0d;color:var(--fog);border:1px solid rgba(255,255,255,.1)}.admin-table .acts{display:flex;gap:5px}.admin-table .acts button{width:28px;height:28px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:#282e4280;color:var(--chalk);cursor:pointer;font-size:13px;line-height:1;padding:0}.admin-table .acts button:hover:not(:disabled){border-color:var(--amber);color:var(--amber)}.admin-table .acts button:disabled{opacity:.3;cursor:not-allowed}.admin-chip{background:linear-gradient(180deg,#f0a83033,#b87a1a66);border:1px solid rgba(240,168,48,.5);color:var(--amber);font-size:11px;font-weight:700;letter-spacing:.06em;padding:7px 12px;border-radius:10px;cursor:pointer;font-family:var(--mono);transition:all .15s ease}.admin-chip:hover{background:linear-gradient(180deg,#ffd76a,#a67309);color:#1a1404;transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important}}
