.leaderboard-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 38px 20px 36px;
  margin-top: 20px;
  text-align: center;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: var(--card);
}
.leaderboard-empty-art { display: block; width: 240px; max-width: 100%; height: auto; margin-bottom: 14px; flex: none; }
.empty-halo { fill: var(--sage); opacity: .65; }
.empty-ground { stroke: var(--line); stroke-width: 1.5; }
.empty-mat { fill: var(--sage); stroke: var(--line); }
.empty-body { transform-origin: 52px 145px; }
.empty-leg-back { fill: #315646; }
.empty-trousers, .empty-shoe { fill: #193e32; stroke: #75927c; stroke-width: .6; }
.empty-trouser-seam { stroke: #75927c; stroke-width: .8; }
.empty-sock { fill: #c5d2c5; }
.empty-sole { stroke: #fff8e9; stroke-width: 1.4; }
.empty-shirt { fill: #d94c21; }
.empty-shirt-fold { stroke: #b73d1c; stroke-width: 1.2; }
.empty-neck { stroke: #edbc94; stroke-width: 7; }
.empty-skin { fill: #edbc94; }
.empty-hair { fill: #193e32; }
.empty-eye { stroke: #193e32; stroke-width: 1; }
.empty-arm-back { fill: #c99270; }
.empty-arm-front { fill: #edbc94; }
.empty-spark { stroke: var(--soft-primary-ink, #d94c21); }
.board-page .leaderboard-empty h2 { margin: 0; color: var(--ink); font: 700 24px/1.3 BoardManrope, Arial, sans-serif; letter-spacing: -.7px; }
.leaderboard-empty p { max-width: 360px; margin: 12px 0 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
@media (max-width: 480px) {
  .leaderboard-empty { padding: 26px 18px 28px; }
  .board-page .leaderboard-empty h2 { font-size: 22px; }
}
/* 7.6s loop: two 1.8s reps, then 4s at rest. The entrance plays only once.
   Unsupported path morphing keeps a coherent still pose. */
@media (prefers-reduced-motion: no-preference) {
  .empty-athlete { animation: empty-arrive 650ms ease-out both; }
  .empty-lift { animation: empty-lift 7600ms ease-in-out 650ms infinite; }
  .empty-spark { animation: empty-glint 7600ms ease-in-out 650ms infinite; }
  @supports (d: path("M0 0L1 1")) {
    .empty-body { animation: empty-pushup 7600ms ease-in-out 650ms infinite; }
    .empty-arm-front { animation: empty-arm-front 7600ms ease-in-out 650ms infinite; }
    .empty-arm-back { animation: empty-arm-back 7600ms ease-in-out 650ms infinite; }
  }
}
@keyframes empty-arrive { from { opacity: 0; } to { opacity: 1; } }
@keyframes empty-pushup { 0%, 23.684211%, 47.368421%, 100% { transform: rotate(0deg); } 11.842105%, 35.526316% { transform: rotate(10deg); } }
@keyframes empty-arm-front {
  0%, 23.684211%, 47.368421%, 100% { d: path("M146.02 96.69C139.95 107.15 138.69 111.51 135.93 116.27Q135.41 117.16 135.46 118.19C135.77 124.78 137.24 134.63 137.5 140.12Q137 145 141 145L150 145Q152 145 152 143Q152 141 150 141L144 141Q143 140 142.5 139.88C142.18 133.29 142.71 123.35 142.45 117.86Q142.5 118.89 141.98 119.78C145.29 114.08 150.66 107.02 153.98 101.31Z"); }
  11.842105%, 35.526316% { d: path("M156.09 112.13C144.04 113.21 139.75 114.7 134.27 115.19Q130.18 115.56 131.19 119.54C132.82 125.93 136.22 135.28 137.58 140.62Q137 145 141 145L150 145Q152 145 152 143Q152 141 150 141L144 141Q143 140 142.42 139.38C140.8 132.99 139.33 123.15 137.98 117.82Q138.99 121.8 134.9 122.16C141.47 121.57 150.34 121.89 156.91 121.3Z"); }
}
@keyframes empty-arm-back {
  0%, 23.684211%, 47.368421%, 100% { d: path("M148.09 96.15C145.53 107.98 145.08 112.38 143.92 117.76Q143.75 118.5 143.92 119.24C145.31 125.69 148.39 135.15 149.56 140.53Q149 145 153 145L162 145Q164 145 164 143Q164 141 162 141L156 141Q155 140 154.44 139.47C153.04 133.02 151.92 123.13 150.76 117.76Q150.92 118.5 150.76 119.24C152.16 112.79 154.51 104.3 155.91 97.85Z"); }
  11.842105%, 35.526316% { d: path("M157.41 111.35C146.08 115.61 142.14 117.63 136.99 119.57Q132.47 121.27 135.5 125.04C139.63 130.18 146.61 137.28 150.05 141.57Q149 145 153 145L162 145Q164 145 164 143Q164 141 162 141L156 141Q155 140 153.95 138.43C149.82 133.29 144.4 124.94 140.96 120.65Q143.98 124.42 139.46 126.12C145.64 123.8 154.05 121.16 160.23 118.84Z"); }
}
@keyframes empty-lift { 0%, 23.684211%, 47.368421%, 100% { transform: translateY(0); } 11.842105%, 35.526316% { transform: translateY(5px); } }
@keyframes empty-glint { 0%, 23.684211%, 47.368421%, 100% { opacity: 1; } 11.842105%, 35.526316% { opacity: .35; } }
