.leaderboard-page{padding-bottom:var(--s-12)}.lb-hero{padding:var(--s-7) var(--s-6) var(--s-6);border-bottom:1px solid var(--border);background:radial-gradient(circle at top right,rgba(245,158,11,.16),transparent 34rem),linear-gradient(135deg,var(--surface),var(--surface2))}.lb-back{border:1px solid var(--border);background:var(--surface);color:var(--text2);border-radius:var(--r-pill);padding:7px 13px;font:inherit;cursor:pointer;margin-bottom:var(--s-5)}.lb-back:hover{color:var(--text1);border-color:var(--primary)}.lb-hero-main{display:flex;justify-content:space-between;gap:var(--s-6);align-items:flex-end}.lb-kicker{color:var(--hoang-kim-2);font-size:var(--t-small);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--s-2)}.lb-hero h1{margin:0 0 var(--s-2);color:var(--text1);font-size:var(--t-h1);line-height:var(--lh-tight)}.lb-hero p{margin:0;max-width:660px;color:var(--text2);line-height:var(--lh-normal)}.lb-hero-badge{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4);border:1px solid rgba(245,158,11,.35);border-radius:var(--r-4);background:#f59e0b1a;color:var(--hoang-kim-2);min-width:150px}.lb-hero-badge span{font-size:2rem}.lb-hero-badge strong{color:var(--text1)}.lb-shell{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:var(--s-5);padding:var(--s-6)}.lb-panel,.lb-main{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-4);box-shadow:var(--shadow-sm)}.lb-panel{padding:var(--s-5);align-self:start}.lb-panel-title{color:var(--text1);font-weight:700;margin-bottom:var(--s-2)}.lb-panel-desc{color:var(--text2);font-size:var(--t-small);line-height:var(--lh-normal);margin:0 0 var(--s-5)}.lb-label{display:block;color:var(--text2);font-size:var(--t-small);font-weight:600;margin:var(--s-4) 0 var(--s-2)}.lb-input{width:100%;border:1px solid var(--border);border-radius:var(--r-3);background:var(--surface2);color:var(--text1);padding:11px 12px;font:inherit;outline:none}.lb-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.lb-help{color:var(--text3);font-size:.78rem;line-height:1.45;margin-top:var(--s-2)}.lb-primary,.lb-secondary,.lb-refresh{border:none;border-radius:var(--r-3);font:inherit;font-weight:700;cursor:pointer}.lb-primary{width:100%;margin-top:var(--s-5);padding:12px;background:var(--primary);color:var(--on-accent)}.lb-primary:hover{opacity:.9}.lb-primary:disabled{opacity:.55;cursor:wait}.lb-secondary{width:100%;margin-top:var(--s-3);padding:11px;background:transparent;color:var(--text2);border:1px solid var(--border)}.lb-secondary:hover{color:var(--text1);background:var(--surface2)}.lb-form-error{min-height:1.1rem;margin-top:var(--s-3);color:var(--chau-hong-2);font-size:var(--t-small)}.lb-main{min-height:480px;overflow:hidden}.lb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--border)}.lb-tabs{display:inline-flex;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-pill);padding:3px}.lb-tab{border:none;background:transparent;color:var(--text2);padding:7px 15px;border-radius:var(--r-pill);font:inherit;font-weight:600;cursor:pointer}.lb-tab.active{background:var(--primary);color:var(--on-accent)}.lb-refresh{background:var(--surface2);color:var(--text2);border:1px solid var(--border);padding:8px 12px}.lb-refresh:hover{color:var(--text1)}.lb-me-card{margin:var(--s-5) var(--s-5) 0;border-radius:var(--r-4);border:1px solid var(--border);background:linear-gradient(135deg,#f59e0b1f,#dc262614);overflow:hidden}.lb-me-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-4) var(--s-5)}.lb-me-label{color:var(--text3);font-size:var(--t-small);margin-bottom:3px}.lb-me-name{color:var(--text1);font-weight:700}.lb-me-rank{text-align:right;color:var(--text2)}.lb-me-rank strong{display:block;color:var(--hoang-kim-2);font-size:1.5rem}.lb-list{padding:var(--s-5)}.lb-loading{color:var(--text2);padding:var(--s-10);text-align:center}.lb-row{display:grid;grid-template-columns:56px 40px minmax(0,1fr) auto;align-items:center;gap:var(--s-4);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-4);background:var(--surface2);margin-bottom:var(--s-3)}.lb-row--me{border-color:#f59e0b80;box-shadow:0 0 0 3px #f59e0b14}.lb-avatar{display:grid;place-items:center;width:40px;height:40px;font-size:22px;line-height:1;border-radius:50%;background:var(--surface);border:1px solid var(--border);user-select:none}.lb-me-id{display:flex;align-items:center;gap:var(--s-3)}.lb-me-id .lb-avatar{width:44px;height:44px;font-size:24px}.lb-avatar-picker{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}.lb-avatar-opt{width:40px;height:40px;font-size:21px;line-height:1;display:grid;place-items:center;border-radius:50%;background:var(--surface2);border:2px solid var(--border);cursor:pointer;transition:border-color .12s ease,transform .12s ease}.lb-avatar-opt:hover{transform:translateY(-1px)}.lb-avatar-opt--sel{border-color:var(--accent, #F59E0B);background:color-mix(in srgb,var(--accent, #F59E0B) 14%,transparent)}.lb-rank{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--text2);font-weight:800}.lb-rank--1{background:#f59e0b2e;color:var(--hoang-kim-2)}.lb-rank--2{background:#94a3b82e;color:var(--text1)}.lb-rank--3{background:#b453092e;color:var(--bronze)}.lb-user-name{color:var(--text1);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-user-meta{color:var(--text3);font-size:var(--t-small);margin-top:2px}.lb-score{text-align:right;color:var(--text2);white-space:nowrap}.lb-score strong{color:var(--text1);font-size:1.1rem}.lb-privacy-note{color:var(--text3);font-size:var(--t-small);line-height:var(--lh-normal);padding:0 var(--s-5) var(--s-5)}@media(max-width:820px){.lb-hero-main{align-items:flex-start;flex-direction:column}.lb-shell{grid-template-columns:1fr;padding:var(--s-4)}}@media(max-width:560px){.lb-hero{padding:var(--s-5) var(--s-4)}.lb-toolbar{align-items:stretch;flex-direction:column}.lb-tabs{width:100%}.lb-tab{flex:1}.lb-row{grid-template-columns:44px 36px minmax(0,1fr)}.lb-avatar{width:36px;height:36px;font-size:20px}.lb-score{grid-column:2 / -1;text-align:left}.lb-me-inner{align-items:flex-start;flex-direction:column}.lb-me-rank{text-align:left}}.lb-streak{margin-top:var(--s-6);padding:var(--s-5);border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,#f59e0b0f,#dc26260a)}.lb-streak-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap}.lb-streak-title{margin:0;font-size:1.05rem}.lb-streak-me{font-size:.9rem;color:var(--fg-2)}.lb-streak-me strong{color:var(--hoang-kim);font-size:1.05rem}.lb-streak-progress{margin:var(--s-3) 0 var(--s-4);font-size:.92rem;color:var(--fg-2)}.lb-streak-note{font-size:.82rem;color:var(--fg-3);background:var(--surface-2);padding:var(--s-3);border-radius:10px;margin-bottom:var(--s-3)}.lb-streak-tier{margin-bottom:var(--s-4)}.lb-streak-tier-head{font-weight:700;font-size:.9rem;margin-bottom:var(--s-2)}.lb-streak-count{font-weight:500;color:var(--fg-3);font-size:.82rem}.lb-streak-members{display:flex;flex-wrap:wrap;gap:6px}.lb-streak-chip{font-size:.82rem;font-weight:600;padding:3px 10px;border-radius:12px;background:#f59e0b24;color:var(--bronze)}.lb-streak-chip--more{background:var(--surface-2);color:var(--fg-3)}.lb-streak-empty{font-size:.9rem;color:var(--fg-3)}[data-theme=dark] .lb-streak-chip{background:#f59e0b38;color:var(--hoang-kim-3)}[data-theme=dark] .lb-streak-note{background:#ffffff0d}
