/* ============================================================
   AIMTRIS — Leaderboard-specific styles (extends style.css)
   ============================================================ */

body {
  padding-bottom: 40px;
}

/* Reuse .login-panel look with a wider box for the table */
.lb-panel {
  max-width: 760px;
}

/* Secondary button (dark-red fill, red border) — same as game .retro-btn-alt */
.retro-btn-alt {
  font-family: var(--font-retro);
  font-size: 10px;
  color: var(--text-primary);
  background: var(--aim-red-dim);
  border: 2px solid var(--aim-red);
  padding: 10px 22px;
  cursor: pointer;
  letter-spacing: 2px;
  transition: background 0.15s, box-shadow 0.15s, transform 0.1s;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  text-align: center;
}
.retro-btn-alt:hover {
  background: var(--aim-red);
  box-shadow: 0 0 20px rgba(232, 0, 28, 0.5);
  color: var(--text-primary);
}
.retro-btn-alt:active {
  transform: scale(0.97);
}

.lb-back {
  margin: 4px 0 22px;
}

.lb-prompt {
  font-size: 11px;
  color: var(--text-dim);
  margin-bottom: 24px;
  letter-spacing: 2px;
}

.lb-body {
  margin-top: 8px;
}

.lb-table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-retro);
  text-align: left;
}

.lb-table thead th {
  font-size: 8px;
  color: var(--aim-red);
  padding: 12px 18px;
  letter-spacing: 1px;
  border-bottom: 1px solid var(--aim-red);
  text-transform: uppercase;
}

.lb-table tbody td {
  font-size: 10px;
  color: var(--text-primary);
  padding: 12px 18px;
  border-bottom: 1px solid #222;
  letter-spacing: 1px;
  white-space: nowrap;
}

.lb-table th:first-child,
.lb-table td:first-child { padding-left: 8px; }

.lb-table th:last-child,
.lb-table td:last-child  { padding-right: 8px; }

.lb-table td.rank {
  color: var(--text-dim);
  width: 40px;
}

.lb-table td.score {
  text-align: right;
  color: var(--aim-red-glow);
}

.lb-table th.num,
.lb-table td.num {
  text-align: right;
}

.lb-table td.num {
  color: var(--text-dim);
}

.lb-table tbody tr:hover {
  background: rgba(232, 0, 28, 0.05);
}

.lb-table tbody tr:nth-child(1) td.rank,
.lb-table tbody tr:nth-child(2) td.rank,
.lb-table tbody tr:nth-child(3) td.rank {
  color: var(--aim-red);
  text-shadow: 0 0 8px var(--aim-red-glow);
}

.lb-table tbody tr:nth-child(1) td {
  color: #ffd700;
}

.lb-table tbody tr:nth-child(1) td.score {
  color: #ffd700;
  text-shadow: 0 0 8px rgba(255, 215, 0, 0.6);
}

.lb-placeholder {
  color: var(--text-dim);
  font-size: 10px;
  padding: 60px 0;
  letter-spacing: 2px;
}

.lb-status {
  font-size: 7px;
  color: var(--text-muted);
  margin-top: 40px;
  letter-spacing: 1px;
}

@media (max-width: 520px) {
  .lb-table td,
  .lb-table th {
    font-size: 8px;
    padding: 10px 8px;
  }
  .lb-table td.rank { width: 28px; }
}
