.ranking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:20px;margin:24px 0}.ranking-card{background:#fff;border:1px solid #e5d6ef;border-radius:24px;padding:24px;text-align:center;position:relative;overflow:hidden}.ranking-card h2{font-size:1.15rem;overflow-wrap:anywhere}.ranking-card[data-podium]{border:2px solid var(--rank-color);background:linear-gradient(155deg,#fff,#f8f0ff)}.ranking-avatar{height:100px;width:100px;margin:20px auto;position:relative;isolation:isolate;border-radius:50%;background:#71334f;color:#fff;display:grid;place-items:center;font-size:2.3rem;font-weight:700}.ranking-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;position:relative;z-index:1}.ranking-avatar:before,.ranking-avatar:after{content:"";position:absolute;inset:-10px;border-radius:50%;z-index:-1;pointer-events:none;background:conic-gradient(from 0deg,transparent,var(--rank-color),#fff,var(--rank-color),transparent 55%,var(--rank-color));mask:radial-gradient(transparent 55%,#000 63% 74%,transparent 80%);animation:ranking-orbit var(--rank-speed,7s) linear infinite}.ranking-avatar:after{inset:-18px;opacity:.5;animation-direction:reverse;box-shadow:0 0 20px var(--rank-color)}.ranking-position{font-weight:800;color:#71334f;font-size:1.1rem}.ranking-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:.88rem}.ranking-card dt{text-align:left}.ranking-card dd{margin:0;text-align:right;font-weight:700}.ranking-index{font-size:1.6rem;color:#59317e}.ranking-card small{display:block;color:#66536e}.ranking-award{padding:12px 0;border-bottom:1px solid #e7dcec;overflow-wrap:anywhere}.ranking-award button{margin-left:10px}.ranking-excluded{padding-left:20px}@keyframes ranking-orbit{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ranking-avatar:before,.ranking-avatar:after{animation:none}}.motion-paused .ranking-avatar:before,.motion-paused .ranking-avatar:after{animation-play-state:paused}

.ranking-initial{position:relative;z-index:1;color:#fff}.ranking-grid{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}
