/* Keep the leaderboards inside the voting panel, using its square fantasy frames. */
.vote-leaderboards {
  max-width: 1000px;
  margin: 32px auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  text-align: left;
  font-family: Arial, Helvetica, sans-serif;
}
.vote-leaderboards .vl-card {
  min-width: 0;
  padding: 18px;
  border: 1px solid #393044;
  border-top: 2px solid #796340;
  background: linear-gradient(180deg, #1c1725, #131019);
  box-shadow: inset 0 0 0 4px rgba(0, 0, 0, .12);
}
.vote-leaderboards .vl-card-featured {
  border-top-color: #c5a55c;
}
.vote-leaderboards .vl-heading {
  margin: 0 0 16px;
  color: #e3ca88;
  font-family: 'Cinzel', Georgia, serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .055em;
  line-height: 22px;
  text-align: center;
  text-transform: uppercase;
}
.vote-leaderboards .vl-period {
  display: block;
  color: #c8bddb;
  font-size: 14px;
  letter-spacing: .04em;
}
.vote-leaderboards .vl-players {
  display: grid;
  gap: 6px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.vote-leaderboards .vl-player {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 34px;
  padding: 5px 10px;
  border: 1px solid;
  font-size: 14px;
  line-height: 22px;
}
.vote-leaderboards .vl-rank {
  flex: 0 0 14px;
  text-align: center;
  font-weight: 700;
}
.vote-leaderboards .vl-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
}
.vote-leaderboards .vl-score {
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}
.vote-leaderboards .vl-score small {
  margin-left: 2px;
  font-size: 11px;
  font-weight: 400;
}
.vote-leaderboards .vl-rank-1 {
  color: #efcf76;
  border-color: #746039;
  background: #352b21;
}
.vote-leaderboards .vl-rank-2 {
  color: #dad7e7;
  border-color: #484452;
  background: #27242f;
}
.vote-leaderboards .vl-rank-3 {
  color: #dfa778;
  border-color: #604735;
  background: #30231f;
}
.vote-leaderboards .vl-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 114px;
  border-top: 1px solid rgba(190, 170, 210, .12);
  color: #bdb3cc;
  font-size: 14px;
  line-height: 22px;
}
@media (max-width: 1100px) {
  .vote-leaderboards { gap: 12px; }
  .vote-leaderboards .vl-card { padding: 14px 10px; }
  .vote-leaderboards .vl-player { gap: 6px; padding-inline: 6px; }
}
@media (max-width: 900px) {
  .vote-leaderboards { grid-template-columns: 1fr; max-width: 480px; }
  .vote-leaderboards .vl-card { padding: 18px; }
  .vote-leaderboards .vl-player { padding-inline: 12px; }
  .vote-leaderboards .vl-empty { min-height: 68px; }
}
