.stats-hero{
  padding: 40px 20px;
  text-align: center;
}
.stats-wrap{
  max-width: 1200px;
  margin: 0 auto 50px auto;
  padding: 0 20px;
}
.stats-tabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
  margin-bottom:24px;
}
.stats-tab{
  text-decoration:none;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid #333;
  background:#111;
  color:#bbb;
  font-weight:600;
}
.stats-tab:hover{ border-color:#555; color:#fff; }
.stats-tab.active{
  border-color: var(--dart-green);
  color:#fff;
  box-shadow: inset 0 0 0 1px rgba(48,159,106,.25);
}

/* HOF */
.hof-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(320px,1fr));
  gap:20px;
}
.hof-card{
  background: linear-gradient(145deg, #1a1a2e, #111);
  border: 1px solid #D4AF37;
  border-radius: 14px;
  padding: 18px;
  box-shadow: var(--shadow-sm);
}
.block-title.gold{
  color:#D4AF37;
  margin:0 0 12px 0;
  text-align:center;
}
.rank-list{
  list-style:none;
  margin:0;
  padding:0;
}
.rank-list li{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:11px 0;
  border-bottom:1px dashed #333;
}
.rank-list li:last-child{ border-bottom:none; }
.rank-list .left{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.rank-list .left a{
  color:#fff;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rank-list .rank{ min-width:30px; text-align:center; }
.val{
  font-weight:600;
  background:#000;
  border:1px solid #333;
  border-radius:6px;
  padding:2px 10px;
}
.val.red{ color: var(--dart-red); }
.val.blue{ color:#0ea5e9; }
.val.danger{ color: var(--dart-red); }
.empty{
  color:#888;
  text-align:center;
}

/* Besten */
.best-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(320px,1fr));
  gap:20px;
}
.best-card{
  background: var(--panel);
  border:1px solid #333;
  border-radius:12px;
  padding:18px;
}
.best-card h3{
  margin:0 0 12px 0;
  color: var(--dart-green);
  text-align:center;
}
.best-card.gold-edition{
  border-color:#D4AF37;
}
.best-card.gold-edition h3{ color:#D4AF37; }

.leaderboard{
  list-style:none;
  margin:0;
  padding:0;
}
.leaderboard li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:11px 0;
  border-bottom:1px dashed #222;
}
.leaderboard li:last-child{ border-bottom:none; }
.rank-nr{
  min-width:34px;
  color:#777;
  font-weight:600;
}
.li-name{
  flex:1;
  font-weight:600;
  color:#fff;
}
.li-sub{
  color:#888;
  font-size:.78rem;
}
.li-val{
  font-weight:600;
  font-size:1.08rem;
  background:#000;
  border:1px solid #333;
  border-radius:6px;
  padding:2px 10px;
}
.val-avg{ color:#0ea5e9; }
.val-streak{ color:#f59e0b; }
.val-games{ color:#fff; }
.val-elo{ color:var(--dart-green); }
.val-purple{ color:#a855f7; }

/* Archiv */
.archiv-wrap{
  max-width: 1000px;
  margin: 0 auto;
}
.empty-box{
  text-align:center;
  padding:40px 20px;
  border:1px dashed #333;
  border-radius:12px;
  background:rgba(255,255,255,.02);
  color:#888;
}
.empty-box .icon{ font-size:2.6rem; margin-bottom:8px; }

.season-title{
  color:#fff;
  font-size:1.6rem;
  border-bottom:2px solid #D4AF37;
  padding-bottom:8px;
  margin:34px 0 8px 0;
}
.season-sub{ color:#aaa; margin:0 0 10px 0; }

.archive-list{
  background:#111;
  border:1px solid #333;
  border-radius:10px;
  padding:12px;
  max-height:420px;
  overflow:auto;
}
.archive-row{
  display:flex;
  align-items:center;
  gap:12px;
  padding:9px 8px;
  border-bottom:1px dashed #222;
}
.archive-row:last-child{ border-bottom:none; }
.archive-row .n{
  flex:1;
  font-weight:600;
}
.archive-row .left{ text-align:right; }
.archive-row .right{ text-align:left; }
.archive-row .winner{ color: var(--dart-green); }
.archive-row .score{
  font-family:monospace;
  color:#fff;
  font-size:1.05rem;
  min-width:78px;
  text-align:center;
}
.archive-row .meta{
  min-width:110px;
  text-align:right;
  color:#666;
  font-size:.84rem;
}

@media (max-width: 640px){
  .stats-wrap{ padding: 0 12px; }
  .archive-row{ flex-wrap:wrap; }
  .archive-row .left, .archive-row .right{ text-align:left; }
  .archive-row .meta{ min-width:auto; width:100%; text-align:left; }
}

/* Light mode */
html[data-theme="light"] .stats-tab{
  background:#fff;
  border-color:#d6e1ef;
  color:#334155;
}
html[data-theme="light"] .stats-tab.active{
  color:#0f172a;
  border-color:#8ac6a6;
}
html[data-theme="light"] .hof-card,
html[data-theme="light"] .best-card,
html[data-theme="light"] .archive-list{
  background:#fff !important;
  border-color:#d6e1ef !important;
}
html[data-theme="light"] .leaderboard li{
  border-bottom-color:#e6edf7;
}
html[data-theme="light"] .li-name,
html[data-theme="light"] .rank-list .left a,
html[data-theme="light"] .season-title{
  color:#0f172a;
}
html[data-theme="light"] .rank-nr,
html[data-theme="light"] .li-sub,
html[data-theme="light"] .season-sub,
html[data-theme="light"] .archive-row .meta,
html[data-theme="light"] .empty{
  color:#64748b;
}
html[data-theme="light"] .li-val,
html[data-theme="light"] .val{
  background:#f8fbff;
  border-color:#d6e1ef;
}
html[data-theme="light"] .empty-box{
  border-color:#d6e1ef;
  color:#64748b;
}