/* Cosmetic-only leaderboard tier pass.
   4-10: darker blue/pink contender family, larger centered medals, subtle mirror-edge motion.
   11-20: calmer silver family.
   1-10: intermittent white/silver diamond glints. */

/* ---------- 4-10: active contender family ---------- */
.lbx-contender-card{
  position:relative!important;
  min-height:322px!important;
  padding:106px 18px 20px!important;
  overflow:hidden!important;
  border:2px solid transparent!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 50% 18%,rgba(101,231,255,.075),transparent 34%),
    linear-gradient(155deg,#121821 0%,#090d13 48%,#10141c 100%) padding-box,
    linear-gradient(118deg,#63ecff 0%,#23344b 18%,#ff58bd 42%,#463049 58%,#63ecff 82%,#ff58bd 100%) border-box!important;
  background-size:100% 100%,100% 100%,260% 260%!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    inset 0 -16px 26px rgba(0,0,0,.44),
    0 7px 0 #07131a,
    0 11px 0 rgba(0,0,0,.48),
    0 24px 34px rgba(0,0,0,.45),
    0 0 18px rgba(101,231,255,.08)!important;
  animation:lbxContenderMirrorEdge 7.2s ease-in-out infinite alternate!important;
}
.lbx-contender-card:nth-child(even){animation-direction:alternate-reverse!important;animation-duration:7.8s!important}

/* The old orbit pseudo caused isolated flecks instead of a readable edge. */
.lbx-contender-card::before{display:none!important}

/* Keep the subtle inset frame. */
.lbx-contender-card::after{
  content:''!important;
  position:absolute!important;
  inset:7px!important;
  border:1px solid rgba(255,255,255,.065)!important;
  border-radius:17px!important;
  box-shadow:inset 0 0 20px rgba(255,255,255,.022)!important;
  pointer-events:none!important;
  z-index:1!important;
}

/* One rank indicator is enough. The medal carries the rank. */
.lbx-contender-rank{display:none!important}

/* Lift the medal completely off the avatar and center it in the upper breathing room. */
.lbx-mini-medal{
  position:absolute!important;
  top:30px!important;
  left:50%!important;
  width:58px!important;
  height:58px!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  filter:drop-shadow(0 5px 2px rgba(0,0,0,.54)) drop-shadow(0 0 12px rgba(255,216,93,.24))!important;
  animation:none!important;
}

.contender-avatar{
  position:relative!important;
  z-index:3!important;
  width:164px!important;
  height:164px!important;
  margin:0 auto!important;
  border-width:3px!important;
  box-shadow:0 9px 22px rgba(0,0,0,.42),0 0 17px rgba(101,231,255,.10)!important;
  transform:none!important;
}

.lbx-contender-copy{
  position:static!important;
  z-index:4!important;
  margin-top:11px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:4px!important;
  transform:none!important;
}
.lbx-contender-copy strong{
  font-size:1.14rem!important;
  line-height:1.08!important;
  color:#67edff!important;
  text-shadow:0 0 8px rgba(103,237,255,.30),0 1px 0 rgba(0,0,0,.88)!important;
}
.lbx-contender-copy span{
  font-size:1.05rem!important;
  line-height:1!important;
  font-weight:950!important;
  color:#fff!important;
}
.lbx-contender-copy span small{
  font-size:.70em!important;
  color:#dce5ef!important;
  letter-spacing:.08em!important;
}

/* ---------- 11-20: quieter silver family ---------- */
.lbx-challenger-card{
  border:2px solid transparent!important;
  background:
    radial-gradient(circle at 50% 14%,rgba(217,231,243,.075),transparent 36%),
    linear-gradient(155deg,#171d24 0%,#0a0e14 48%,#111720 100%) padding-box,
    linear-gradient(122deg,#f4fbff 0%,#738694 24%,#dcebf6 46%,#ffffff 58%,#667684 78%,#c9d8e3 100%) border-box!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -14px 24px rgba(0,0,0,.40),
    0 8px 18px rgba(0,0,0,.34),
    0 0 14px rgba(217,231,243,.07)!important;
  animation:none!important;
}
.lbx-challenger-card::before{
  opacity:.22!important;
  filter:none!important;
}
.lbx-challenger-rank{
  color:#eef6fc!important;
  border-color:rgba(217,231,243,.34)!important;
  background:rgba(7,10,15,.72)!important;
  text-shadow:0 0 8px rgba(217,231,243,.16)!important;
}

/* ---------- White/silver flickering diamonds, ranks 1-10 only ---------- */
.lbx-podium-card .lbx-card-shimmer::before,
.lbx-contender-card .lbx-contender-copy::before,
.lbx-contender-card .lbx-contender-copy::after{
  content:''!important;
  position:absolute!important;
  width:8px!important;
  height:8px!important;
  border-radius:1px!important;
  background:linear-gradient(180deg,#fff,#dbe6ef)!important;
  transform:rotate(45deg) scale(.55)!important;
  box-shadow:0 0 7px rgba(255,255,255,.72),0 0 14px rgba(217,231,243,.38)!important;
  opacity:0;
  pointer-events:none!important;
  z-index:5!important;
}

/* podium glints */
.lbx-podium-card .lbx-card-shimmer::before{
  top:22%!important;
  left:12%!important;
  animation:lbxSilverFlickerA 5.8s ease-in-out infinite!important;
}
.lbx-podium-card:nth-child(2) .lbx-card-shimmer::before{left:auto!important;right:14%!important;animation-delay:-2.1s!important}
.lbx-podium-card:nth-child(3) .lbx-card-shimmer::before{top:31%!important;left:15%!important;animation-delay:-3.7s!important}

/* contender glints use the open card space rather than sitting on the avatar */
.lbx-contender-card .lbx-contender-copy::before{
  top:22%!important;
  left:10%!important;
  animation:lbxSilverFlickerA 5.2s ease-in-out infinite!important;
}
.lbx-contender-card .lbx-contender-copy::after{
  top:54%!important;
  right:10%!important;
  width:6px!important;
  height:6px!important;
  animation:lbxSilverFlickerB 6.4s ease-in-out infinite!important;
}
.lbx-contender-card:nth-child(2) .lbx-contender-copy::before{animation-delay:-1.3s!important}
.lbx-contender-card:nth-child(2) .lbx-contender-copy::after{animation-delay:-4.4s!important}
.lbx-contender-card:nth-child(3) .lbx-contender-copy::before{animation-delay:-3.1s!important}
.lbx-contender-card:nth-child(3) .lbx-contender-copy::after{animation-delay:-.8s!important}
.lbx-contender-card:nth-child(4) .lbx-contender-copy::before{animation-delay:-4.6s!important}
.lbx-contender-card:nth-child(4) .lbx-contender-copy::after{animation-delay:-2.5s!important}
.lbx-contender-card:nth-child(5) .lbx-contender-copy::before{animation-delay:-.7s!important}
.lbx-contender-card:nth-child(5) .lbx-contender-copy::after{animation-delay:-5.1s!important}
.lbx-contender-card:nth-child(6) .lbx-contender-copy::before{animation-delay:-2.4s!important}
.lbx-contender-card:nth-child(6) .lbx-contender-copy::after{animation-delay:-1.6s!important}
.lbx-contender-card:nth-child(7) .lbx-contender-copy::before{animation-delay:-5.0s!important}
.lbx-contender-card:nth-child(7) .lbx-contender-copy::after{animation-delay:-3.3s!important}

@keyframes lbxContenderMirrorEdge{
  0%,16%{background-position:0 0,0 0,0% 50%;filter:brightness(.98)}
  42%{background-position:0 0,0 0,100% 50%;filter:brightness(1.035)}
  58%{background-position:0 0,0 0,100% 50%;filter:brightness(1.035)}
  84%,100%{background-position:0 0,0 0,0% 50%;filter:brightness(.98)}
}
@keyframes lbxSilverFlickerA{
  0%,18%,100%{opacity:0;transform:rotate(45deg) scale(.45)}
  22%{opacity:.18}
  25%{opacity:.94;transform:rotate(45deg) scale(1)}
  29%{opacity:.30}
  33%{opacity:.78;transform:rotate(45deg) scale(.82)}
  38%,92%{opacity:0;transform:rotate(45deg) scale(.5)}
}
@keyframes lbxSilverFlickerB{
  0%,33%,100%{opacity:0;transform:rotate(45deg) scale(.45)}
  37%{opacity:.15}
  40%{opacity:.88;transform:rotate(45deg) scale(1)}
  44%{opacity:.24}
  48%{opacity:.72;transform:rotate(45deg) scale(.8)}
  53%,94%{opacity:0;transform:rotate(45deg) scale(.48)}
}

@media(max-width:850px){
  .lbx-contender-card{min-height:300px!important;padding-top:98px!important}
  .lbx-mini-medal{top:26px!important;width:54px!important;height:54px!important}
  .contender-avatar{width:150px!important;height:150px!important}
  .lbx-contender-copy strong{font-size:1.07rem!important}
}
@media(max-width:560px){
  .lbx-contender-card{min-height:auto!important;padding:92px 14px 18px!important}
  .lbx-mini-medal{top:24px!important;width:50px!important;height:50px!important}
  .contender-avatar{width:136px!important;height:136px!important}
}
@media(prefers-reduced-motion:reduce){
  .lbx-contender-card{animation:none!important}
  .lbx-podium-card .lbx-card-shimmer::before,
  .lbx-contender-card .lbx-contender-copy::before,
  .lbx-contender-card .lbx-contender-copy::after{animation:none!important;opacity:.35!important}
}


/* 2026-09-21 monthly champions: show the whole saved picture cleanly inside the badge */
.lbx-champion-avatar{
  background:
    radial-gradient(circle at 50% 45%,rgba(101,231,255,.08),transparent 62%),
    #090b10!important;
}
.lbx-champion-avatar img{
  width:100%!important;
  height:100%!important;
  padding:4px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  border-radius:50%!important;
}
.lb-home-champion-avatar{
  background:
    radial-gradient(circle at 50% 45%,rgba(101,231,255,.08),transparent 62%),
    #090b10!important;
}
.lb-home-champion-avatar img{
  width:100%!important;
  height:100%!important;
  padding:3px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  border-radius:50%!important;
}


/* 2026-09-21 champion fine-tuning: July and August only */
.lbx-champion-avatar.month-july img,
.lb-home-champion-avatar.month-july img{
  object-position:50% 50%!important;
  transform-origin:50% 50%!important;
  transform:scale(1.11)!important;
}
.lbx-champion-avatar.month-august img,
.lb-home-champion-avatar.month-august img{
  object-position:50% 50%!important;
  transform-origin:50% 50%!important;
  transform:scale(1.09)!important;
}
