@media(max-width:760px){
  #learnerLeaderboard .gam-table-wrap{display:none!important}
  #learnerLeaderboard{padding:14px!important;border-radius:14px!important}
  #learnerLeaderboard .gam-leader-head{display:grid!important;grid-template-columns:1fr auto!important;gap:10px!important;align-items:start!important;margin-bottom:12px!important}
  #learnerLeaderboard .gam-leader-head h2{font-size:22px!important;line-height:1.15!important;margin:2px 0 4px!important}
  #learnerLeaderboard .gam-leader-head p{font-size:12px!important;line-height:1.4!important;margin:0!important;max-width:250px!important}
  #learnerLeaderboard .my-rank{padding:8px 10px!important;min-width:72px!important;border-radius:10px!important}
  #learnerLeaderboard .my-rank span{font-size:9px!important}
  #learnerLeaderboard .my-rank b{font-size:20px!important}
  .mobile-leaderboard{display:grid;gap:7px}
  .mobile-rank-row{width:100%;border:1px solid #dce6e1;background:#fff;border-radius:11px;padding:10px 11px;display:grid;grid-template-columns:32px minmax(0,1fr) 18px;gap:9px;align-items:center;text-align:left;color:#173b30;cursor:pointer;min-height:58px}
  .mobile-rank-row.is-me{border-color:#8ec6af;background:#f0f8f4;box-shadow:inset 3px 0 0 #1f7759}
  .mobile-rank-number{width:30px;height:30px;border-radius:9px;background:#eef4f1;display:grid;place-items:center;font-size:13px;font-weight:900;color:#1c6d52}
  .mobile-rank-row.is-me .mobile-rank-number{background:#dff1e8}
  .mobile-rank-person{min-width:0;display:grid;gap:2px}
  .mobile-rank-person b{font-size:13px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  .mobile-rank-person small{font-size:10px;color:#788a83;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-rank-chevron{font-size:24px;line-height:1;color:#6d847a;text-align:right}
  .mobile-rank-empty{padding:22px;text-align:center;color:#72847d;font-size:13px}

  body.mobile-rank-modal-open{overflow:hidden!important}
  .mobile-rank-modal{position:fixed;inset:0;z-index:22000;background:rgba(4,26,19,.58);display:flex;align-items:flex-end;justify-content:center;padding:0}
  .mobile-rank-dialog{width:100%;max-height:min(82dvh,720px);overflow:auto;background:#fff;border-radius:20px 20px 0 0;padding:9px 16px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -18px 55px rgba(0,0,0,.24);animation:mobileRankSheetIn .22s ease-out}
  .mobile-rank-grabber{width:42px;height:4px;border-radius:999px;background:#d7e0dc;margin:0 auto 12px}
  .mobile-rank-dialog-head{display:grid;grid-template-columns:44px minmax(0,1fr) 36px;gap:10px;align-items:start;padding-bottom:14px;border-bottom:1px solid #e2e9e6}
  .mobile-rank-place{width:44px;height:44px;border-radius:12px;background:#e8f4ee;color:#176d51;display:grid;place-items:center;font-size:17px;font-weight:900}
  .mobile-rank-dialog-head h2{font-size:18px;line-height:1.2;margin:3px 0 2px;color:#12372c;overflow-wrap:anywhere}
  .mobile-rank-dialog-head p{font-size:12px;color:#72847d;margin:0}
  .mobile-rank-close{width:36px;height:36px;border:0;border-radius:10px;background:#eef3f0;color:#173b30;font-size:24px;line-height:1;cursor:pointer}
  .mobile-rank-title{display:grid;gap:3px;padding:14px 0}
  .mobile-rank-title span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#71857c;font-weight:900}
  .mobile-rank-title b{font-size:20px;color:#176d51}
  .mobile-rank-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .mobile-rank-metrics>div{min-width:0;border:1px solid #dde7e2;border-radius:11px;padding:10px;background:#f9fbfa;display:grid;gap:5px}
  .mobile-rank-metrics span{font-size:9px;line-height:1.2;color:#74867f}
  .mobile-rank-metrics b{font-size:15px;line-height:1.15;color:#173b30;overflow-wrap:anywhere}
  .mobile-rank-breakdown{margin-top:14px;border:1px solid #dde7e2;border-radius:12px;padding:12px;background:#fff}
  .mobile-rank-breakdown .section-kicker{margin-bottom:6px}
  .mobile-rank-breakdown>div:not(.section-kicker){display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #edf1ef;font-size:13px;color:#51675f}
  .mobile-rank-breakdown>div:not(.section-kicker) b{color:#176d51}
  .mobile-rank-breakdown>div.penalty b{color:#a73c34}
}
@keyframes mobileRankSheetIn{from{transform:translateY(18px);opacity:.6}to{transform:translateY(0);opacity:1}}
@media(max-width:380px){
  .mobile-rank-metrics{grid-template-columns:1fr 1fr}
  .mobile-rank-metrics>div:last-child{grid-column:1/-1}
}
@media(prefers-reduced-motion:reduce){.mobile-rank-dialog{animation:none}}
