/* Top contributors */
.tc-wrap{width:min(760px,100% - 32px); margin-inline:auto;}
.tc-head h1{font:800 clamp(26px,4.5vw,36px)/1.25 'Sora','Inter',sans-serif; letter-spacing:-.01em; color:var(--navy); margin:0;}
html[lang="ar"] .tc-head h1,html[lang="ja"] .tc-head h1{font-family:inherit; letter-spacing:0; line-height:1.45;}
.tc-head p{margin:8px 0 0; color:var(--navy-soft); line-height:1.6;}
.tc-tabs{display:flex; gap:4px; width:max-content; max-width:100%; margin:22px auto 8px; padding:4px; border-radius:999px; background:var(--white); border:1px solid var(--border-soft);}
.tc-tabs a{padding:10px 20px; border-radius:999px; color:var(--navy-soft); text-decoration:none; font:600 13.5px/1 'Inter',sans-serif; white-space:nowrap; transition:background .15s,color .15s;}
html[lang="ar"] .tc-tabs a,html[lang="ja"] .tc-tabs a{font-family:inherit;}
.tc-tabs a:hover{color:var(--navy);}
.tc-tabs a.is-on{background:var(--navy); color:var(--white);}
.tc-tabs a:focus-visible{outline:2px solid var(--blue); outline-offset:2px;}
.tc-note{margin:0 0 22px; text-align:center; font-size:12px; color:var(--navy-soft); opacity:.8;}

/* podium: second | first | third, the winner raised */
.tc-podium{list-style:none; margin:0 0 22px; padding:36px 0 0; display:grid; grid-template-columns:1fr 1.12fr 1fr; align-items:end; gap:10px;}
.tc-podium.n1{grid-template-columns:minmax(0,260px); justify-content:center;}
.tc-podium.n2{grid-template-columns:1fr 1fr;}
.tc-pd a{display:grid; justify-items:center; gap:4px; padding:18px 8px 16px; border-radius:20px; background:var(--white); border:1px solid var(--border-soft); text-decoration:none; color:var(--navy); transition:transform .15s,border-color .15s; text-align:center;}
.tc-pd a:hover{transform:translateY(-2px); border-color:var(--blue);}
.tc-pd a:focus-visible{outline:2px solid var(--blue); outline-offset:2px;}
.tc-pd.p1{order:2;} .tc-pd.p2{order:1;} .tc-pd.p3{order:3;}
.tc-pd.p1 a{padding-top:26px; padding-bottom:22px; margin-top:-26px;}
.tc-pd{--ring:#f2c45a;} .tc-pd.p2{--ring:#b9c3cf;} .tc-pd.p3{--ring:#d68b52;}
.tc-pd.p1 a{border-color:color-mix(in srgb,var(--ring) 55%,var(--border-soft));}
.tc-pic{position:relative; margin-bottom:8px;}
.tc-pic .tc-av{width:72px; height:72px; font-size:26px; box-shadow:0 0 0 3px var(--white),0 0 0 5px var(--ring);}
.tc-pd.p1 .tc-pic .tc-av{width:92px; height:92px; font-size:32px;}
.tc-medal{position:absolute; inset-inline-end:-6px; bottom:-6px; display:grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--ring); color:#1a1408; font:800 13px/1 'JetBrains Mono',monospace; font-style:normal; box-shadow:0 0 0 3px var(--white);}
.tc-pd .tc-nmrow{justify-content:center; max-width:100%;}
.tc-pd .tc-nm{max-width:100%;}
.tc-pd .tc-un{max-width:100%;}

/* avatar */
.tc-av{position:relative; flex:none; display:grid; place-items:center; width:52px; height:52px; border-radius:50%; overflow:hidden; background:var(--blue-tint); color:var(--blue-dark); font:700 20px/1 'Sora','Inter',sans-serif;}
.tc-av.is-sq{border-radius:16%;}
.tc-av img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}

/* name line */
.tc-nmrow{display:inline-flex; align-items:center; gap:4px; min-width:0;}
.tc-nm{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font:700 15px/1.3 'Inter',sans-serif; color:var(--navy);}
html[lang="ar"] .tc-nm,html[lang="ja"] .tc-nm{font-family:inherit;}
.tc-tick,.tc-crown{flex:none; display:inline-grid; place-items:center; width:17px; height:17px;}
.tc-tick{color:var(--blue);} .tc-crown{color:#e0a92c;}
.tc-tick svg,.tc-crown svg{width:17px; height:17px;}
.tc-un{max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; color:var(--navy-soft);}

/* aura amount */
.tc-aura{display:inline-flex; align-items:center; gap:6px; flex:none; color:#3fbfc9;}
.tc-aura img{width:22px; height:22px; display:block;}
.tc-aura b{font:800 15px/1 'JetBrains Mono',ui-monospace,monospace; letter-spacing:-.01em;}
.tc-sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;}
.tc-pd .tc-aura{margin-top:6px; padding:6px 12px; border-radius:999px; background:color-mix(in srgb,#3fbfc9 12%,transparent);}

/* the list */
.tc-list{list-style:none; margin:0; padding:0; display:grid; gap:8px;}
.tc-row a{display:flex; align-items:center; gap:12px; min-height:76px; padding:12px 16px; border-radius:18px; background:var(--white); border:1px solid var(--border-soft); text-decoration:none; color:var(--navy); transition:border-color .15s,background .15s;}
.tc-row a:hover{border-color:var(--blue);}
.tc-row a:focus-visible{outline:2px solid var(--blue); outline-offset:2px;}
.tc-row.is-you a,.tc-pd.is-you a{border-color:var(--teal); background:color-mix(in srgb,var(--teal) 7%,var(--white));}
.tc-rk{flex:none; min-width:38px; text-align:center; font:800 15px/1 'JetBrains Mono',ui-monospace,monospace; color:var(--navy-soft);}
.tc-who{flex:1; min-width:0; display:grid; gap:2px; justify-items:start;}
.tc-chip{margin-top:3px; padding:3px 8px; border-radius:999px; background:var(--blue-tint); color:var(--blue-dark); font:600 11px/1 'Inter',sans-serif;}
html[lang="ar"] .tc-chip,html[lang="ja"] .tc-chip{font-family:inherit;}
.tc-chip.is-you{background:var(--teal); color:#06231b;}

.tc-pager{display:flex; justify-content:center; gap:10px; padding-top:22px;}
.tc-empty{display:grid; justify-items:center; gap:10px; padding:56px 16px; text-align:center; color:var(--navy-soft);}
.tc-empty svg{width:46px; height:46px; opacity:.4;}
.tc-empty b{font-weight:600;}

@media (max-width:560px){
  .tc-podium{gap:6px; padding-top:30px;}
  .tc-pd a{padding:14px 4px 12px; border-radius:16px;}
  .tc-pd.p1 a{padding-top:20px; margin-top:-20px;}
  .tc-pic .tc-av{width:56px; height:56px; font-size:22px;}
  .tc-pd.p1 .tc-pic .tc-av{width:70px; height:70px; font-size:26px;}
  .tc-nm{font-size:13.5px;} .tc-un{font-size:12px;}
  .tc-pd .tc-aura{padding:5px 8px; gap:4px;} .tc-pd .tc-aura img{width:18px; height:18px;} .tc-pd .tc-aura b{font-size:13px;}
  .tc-row a{gap:10px; padding:10px 12px;} .tc-rk{min-width:30px; font-size:13.5px;} .tc-av{width:46px; height:46px;}
  .tc-tabs a{padding:10px 15px;}
}
@media (prefers-reduced-motion:reduce){.tc-pd a{transition:none;}}
/* the podium keeps 2nd | 1st | 3rd left to right in every language, like the app; the text inside still follows the language */
.tc-podium{direction:ltr;}
html[dir="rtl"] .tc-pd{direction:rtl;}
