.leaderboard-panel{--panel-bg:var(--dark,#0c0c1a)var(--light,#fff);--panel-border:var(--dark,#ffffff0f)var(--light,#00000014);--panel-title:var(--dark,#f0f0f5)var(--light,#12121a);--panel-text:var(--dark,#8888a8)var(--light,#6b6b80);--panel-text-dim:var(--dark,#55556a)var(--light,#99a);--panel-card-bg:var(--dark,#ffffff08)var(--light,#00000008);--panel-close-hover:var(--dark,#141428cc)var(--light,#f0f0f0cc);--panel-shadow:var(--dark,#0006)var(--light,#00000014);z-index:25;background:var(--panel-bg);-webkit-backdrop-filter:blur(32px);border-left:1px solid var(--panel-border);width:520px;height:100vh;box-shadow:-8px 0 60px var(--panel-shadow);flex-direction:column;transition:transform .45s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:0;right:0;overflow:hidden;transform:translate(100%)}.leaderboard-panel[data-open=true]{transform:translate(0)}.leaderboard-panel__header{border-bottom:1px solid var(--panel-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:24px 28px 20px;display:flex}.leaderboard-panel__title{letter-spacing:.1em;text-transform:uppercase;color:var(--panel-title);font-family:Orbitron,sans-serif;font-size:14px;font-weight:700}.leaderboard-panel__close{border:1px solid var(--panel-border);cursor:pointer;width:32px;height:32px;color:var(--panel-text);background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.leaderboard-panel__close:hover{background:var(--panel-close-hover);color:#fcb300;border-color:#fcb30033}.leaderboard-panel__close svg{width:16px;height:16px}.leaderboard-my-rank{background:#fcb3000f;border:1px solid #fcb30026;border-radius:14px;flex-shrink:0;align-items:center;gap:16px;margin:20px 28px 0;padding:16px 20px;display:flex}.leaderboard-my-rank__position{color:#fcb300;background:#fcb3001f;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-family:Orbitron,sans-serif;font-size:16px;font-weight:700;display:flex}.leaderboard-my-rank__info{flex:1;min-width:0}.leaderboard-my-rank__label{letter-spacing:.12em;text-transform:uppercase;color:var(--panel-text-dim);margin-bottom:2px;font-size:10px;font-weight:600}.leaderboard-my-rank__name{color:var(--panel-title);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.leaderboard-my-rank__score{color:#fcb300;font-family:Orbitron,sans-serif;font-size:18px;font-weight:700}.leaderboard-my-rank__score-label{letter-spacing:.08em;text-transform:uppercase;color:var(--panel-text-dim);text-align:right;margin-top:2px;font-size:10px;font-weight:600}.leaderboard-breakdown{flex-shrink:0;gap:8px;margin:12px 28px 0;display:flex}.leaderboard-breakdown__item{background:var(--panel-card-bg);border:1px solid var(--panel-border);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:10px 12px;display:flex}.leaderboard-breakdown__value{color:var(--panel-title);font-family:Orbitron,sans-serif;font-size:13px;font-weight:700}.leaderboard-breakdown__label{letter-spacing:.08em;text-transform:uppercase;color:var(--panel-text-dim);font-size:9px;font-weight:600}.leaderboard-breakdown__item--poll .leaderboard-breakdown__value{color:#818cf8}.leaderboard-breakdown__item--quiz .leaderboard-breakdown__value{color:#a855f7}.leaderboard-breakdown__item--discussion .leaderboard-breakdown__value{color:#22d3ee}.leaderboard-breakdown__item--follow .leaderboard-breakdown__value{color:#fb923c}.leaderboard-panel__body{flex-direction:column;flex:1;gap:0;padding:20px 28px 28px;display:flex;overflow-y:auto}.leaderboard-panel__body::-webkit-scrollbar{width:4px}.leaderboard-panel__body::-webkit-scrollbar-track{background:0 0}.leaderboard-panel__body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.leaderboard-section-label{letter-spacing:.15em;text-transform:uppercase;color:var(--panel-text-dim);margin-bottom:12px;font-family:Orbitron,sans-serif;font-size:10px;font-weight:600}.leaderboard-podium{justify-content:center;align-items:flex-end;gap:12px;margin-bottom:20px;padding:8px 0 20px;display:flex}.leaderboard-podium__entry{flex-direction:column;align-items:center;gap:8px;width:120px;display:flex}.leaderboard-podium__entry--1st{order:2}.leaderboard-podium__entry--2nd{order:1}.leaderboard-podium__entry--3rd{order:3}.leaderboard-podium__avatar-wrap{position:relative}.leaderboard-podium__avatar{object-fit:cover;border:2px solid var(--panel-border);border-radius:50%;width:48px;height:48px}.leaderboard-podium__entry--1st .leaderboard-podium__avatar{border-color:#fcb30066;width:64px;height:64px;box-shadow:0 0 24px #fcb30026}.leaderboard-podium__entry--2nd .leaderboard-podium__avatar{border-color:#c0c0c04d}.leaderboard-podium__entry--3rd .leaderboard-podium__avatar{border-color:#cd7f324d}.leaderboard-podium__avatar-placeholder{color:#fcb300;border:2px solid var(--panel-border);background:#fcb3001f;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:700;display:flex}.leaderboard-podium__entry--1st .leaderboard-podium__avatar-placeholder{border-color:#fcb30066;width:64px;height:64px;font-size:20px;box-shadow:0 0 24px #fcb30026}.leaderboard-podium__entry--2nd .leaderboard-podium__avatar-placeholder{border-color:#c0c0c04d}.leaderboard-podium__entry--3rd .leaderboard-podium__avatar-placeholder{border-color:#cd7f324d}.leaderboard-podium__medal{border:2px solid var(--panel-bg);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:flex;position:absolute;bottom:-4px;right:-4px}.leaderboard-podium__entry--1st .leaderboard-podium__medal{color:#1a1400;background:linear-gradient(135deg,#fcb300,#e0a000)}.leaderboard-podium__entry--2nd .leaderboard-podium__medal{color:#1a1a1a;background:linear-gradient(135deg,silver,#a0a0a0)}.leaderboard-podium__entry--3rd .leaderboard-podium__medal{color:#1a1400;background:linear-gradient(135deg,#cd7f32,#a86520)}.leaderboard-podium__name{color:var(--panel-title);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;font-weight:600;overflow:hidden}.leaderboard-podium__score{color:var(--panel-text);font-family:Orbitron,sans-serif;font-size:12px;font-weight:700}.leaderboard-podium__entry--1st .leaderboard-podium__score{color:#fcb300}.leaderboard-list{flex-direction:column;gap:0;display:flex}.leaderboard-entry{border-radius:10px;align-items:center;gap:12px;padding:12px 16px;transition:background .15s;display:flex}.leaderboard-entry:hover{background:var(--panel-card-bg)}.leaderboard-entry--me{background:#fcb3000f;border:1px solid #fcb3001a}.leaderboard-entry__rank{width:28px;color:var(--panel-text-dim);text-align:center;flex-shrink:0;font-size:13px;font-weight:600}.leaderboard-entry__avatar{object-fit:cover;border:1px solid var(--panel-border);border-radius:50%;flex-shrink:0;width:32px;height:32px}.leaderboard-entry__avatar-placeholder{color:#fcb300;background:#fcb3001f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:flex}.leaderboard-entry__name{min-width:0;color:var(--panel-title);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.leaderboard-entry__me-badge{color:#fcb300;letter-spacing:.05em;text-transform:uppercase;background:#fcb3001a;border-radius:100px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700}.leaderboard-entry__score{color:var(--panel-text);text-align:right;flex-shrink:0;min-width:48px;font-family:Orbitron,sans-serif;font-size:13px;font-weight:600}.leaderboard-entry--me .leaderboard-entry__score{color:#fcb300}.leaderboard-divider{background:var(--panel-border);height:1px;margin:8px 16px}.leaderboard-empty{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.leaderboard-empty__text{color:var(--panel-text-dim);text-align:center;font-size:13px;font-style:italic}@media (max-width:500px){.leaderboard-panel{width:100%}.leaderboard-my-rank{margin:16px 16px 0}.leaderboard-breakdown{margin:10px 16px 0}.leaderboard-panel__body{padding:16px}.leaderboard-panel__header{padding:20px 16px 16px}.leaderboard-podium{gap:8px}.leaderboard-podium__entry{width:90px}}