
/* ===== Step 10.1: Home Real All Time Leaderboard ===== */

.home-premium-leaderboard{
  position:relative;
  overflow:hidden;
  padding:20px;
  border:1px solid rgba(112,145,225,.30);
  border-radius:23px;
  background:
    radial-gradient(circle at 8% 0%,rgba(255,210,67,.22),transparent 28%),
    radial-gradient(circle at 95% 12%,rgba(101,76,255,.18),transparent 32%),
    linear-gradient(145deg,#ffffff 0%,#f6f8ff 52%,#f0f5ff 100%);
  box-shadow:0 22px 55px rgba(32,72,150,.13);
}

.home-premium-leaderboard:before{
  content:"";
  position:absolute;
  width:190px;
  height:190px;
  top:-120px;
  right:-65px;
  border-radius:50%;
  background:rgba(255,211,56,.20);
  filter:blur(2px);
  pointer-events:none;
}

.home-premium-leaderboard-head{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:16px;
}

.home-leaderboard-kicker{
  display:inline-flex;
  padding:5px 9px;
  margin-bottom:7px;
  border-radius:999px;
  background:linear-gradient(90deg,#fff0ad,#ffe071);
  color:#725100;
  font-size:10px;
  font-weight:900;
  letter-spacing:.8px;
}

.home-premium-leaderboard-head h2{
  margin:0;
  font-size:25px;
  line-height:1.2;
}

.home-premium-leaderboard-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:13px;
}

.home-leaderboard-viewall{
  flex:0 0 auto;
  padding:9px 12px;
  border-radius:11px;
  background:linear-gradient(135deg,#6758ed,#245ee8);
  color:#fff;
  font-size:12px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(58,76,216,.22);
}

.home-alltime-list{
  position:relative;
  z-index:1;
  display:grid;
  gap:9px;
}

.home-alltime-row{
  position:relative;
  display:grid;
  grid-template-columns:44px 48px minmax(0,1fr) 90px;
  align-items:center;
  gap:10px;
  min-height:68px;
  padding:9px 12px;
  border:1px solid rgba(165,183,222,.35);
  border-radius:15px;
  background:rgba(255,255,255,.92);
  color:inherit;
  box-shadow:0 6px 18px rgba(46,76,135,.06);
  transition:transform .17s ease, box-shadow .17s ease;
}

.home-alltime-row:hover{
  transform:translateX(3px);
  box-shadow:0 9px 22px rgba(46,76,135,.11);
}

/* Gold */
.home-alltime-row.rank-1{
  border-color:rgba(238,181,32,.48);
  background:
    linear-gradient(100deg,rgba(255,248,211,.98),rgba(255,255,255,.96));
}

.home-alltime-row.rank-1:after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  border-radius:15px 0 0 15px;
  background:linear-gradient(#ffd84f,#eea900);
}

/* Silver */
.home-alltime-row.rank-2{
  border-color:rgba(153,168,196,.48);
  background:
    linear-gradient(100deg,rgba(240,244,251,.98),rgba(255,255,255,.96));
}

/* Bronze */
.home-alltime-row.rank-3{
  border-color:rgba(211,147,91,.45);
  background:
    linear-gradient(100deg,rgba(255,239,224,.94),rgba(255,255,255,.96));
}

/* 4-6 */
.home-alltime-row.rank-other{
  background:
    linear-gradient(100deg,rgba(241,246,255,.96),rgba(255,255,255,.96));
}

.home-alltime-rank{
  display:grid;
  place-items:center;
  min-width:40px;
  font-weight:900;
}

.home-alltime-medal{
  font-size:25px;
  line-height:1;
}

.home-alltime-number{
  color:#315acb;
  font-size:14px;
  font-weight:900;
}

.home-alltime-avatar{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:3px solid #fff;
  border-radius:50%;
  background:linear-gradient(135deg,#eaf1ff,#fff1bf);
  box-shadow:0 4px 12px rgba(40,74,150,.13);
  font-size:19px;
}

.home-alltime-row.rank-1 .home-alltime-avatar{
  border-color:#ffd74e;
}

.home-alltime-row.rank-2 .home-alltime-avatar{
  border-color:#cad4e6;
}

.home-alltime-row.rank-3 .home-alltime-avatar{
  border-color:#e8b482;
}

.home-alltime-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.home-alltime-user{
  min-width:0;
}

.home-alltime-user strong{
  display:block;
  overflow:hidden;
  color:#0d1d3d;
  font-size:14px;
  font-weight:900;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.home-alltime-user span{
  display:block;
  margin-top:3px;
  overflow:hidden;
  color:#74809a;
  font-size:10px;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.home-alltime-score{
  text-align:right;
}

.home-alltime-score strong{
  display:block;
  color:#0c55db;
  font-size:17px;
  font-weight:950;
  line-height:1.05;
}

.home-alltime-row.rank-1 .home-alltime-score strong{
  color:#b17800;
}

.home-alltime-score small{
  display:block;
  margin-top:3px;
  color:#8a94a9;
  font-size:8px;
  font-weight:900;
  letter-spacing:.7px;
}

.home-leaderboard-footer{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:13px;
  padding-top:12px;
  border-top:1px dashed rgba(105,127,178,.28);
  color:#79849a;
  font-size:10px;
}

.home-leaderboard-footer a{
  color:#1755c9;
  font-weight:900;
}

.home-leaderboard-empty{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:34px 15px;
  border:1px dashed #cbd8ef;
  border-radius:16px;
  background:rgba(255,255,255,.72);
  text-align:center;
}

.home-leaderboard-empty>span{
  font-size:32px;
}

.home-leaderboard-empty strong{
  margin-top:8px;
}

.home-leaderboard-empty small{
  margin-top:5px;
  color:var(--muted);
}

.home-leaderboard-empty.error{
  background:#fff7f7;
}

@media(max-width:900px){
  .home-leaderboard-account-split{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .home-premium-leaderboard{
    padding:15px;
    border-radius:19px;
  }

  .home-premium-leaderboard-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-leaderboard-viewall{
    align-self:stretch;
    text-align:center;
  }

  .home-alltime-row{
    grid-template-columns:36px 42px minmax(0,1fr) 72px;
    gap:7px;
    padding:8px;
  }

  .home-alltime-avatar{
    width:40px;
    height:40px;
  }

  .home-alltime-user strong{
    font-size:12px;
  }

  .home-alltime-user span{
    font-size:9px;
  }

  .home-alltime-score strong{
    font-size:14px;
  }

  .home-leaderboard-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}
