/* A score receipt lives at the persistent ranking entry, never on the board. */
.game-ranking>.rank-receipt{position:absolute;right:0;top:calc(100% + 4px);z-index:45;width:230px;max-width:calc(100vw - 32px);padding:15px 16px 8px;border:0;border-radius:12px;background:#282828;box-shadow:0 14px 35px #0006;color:#bcbcbc;font:400 12px/1.65 var(--sans);text-align:left}
.rank-receipt[hidden],.rank-status-trigger[hidden],.rank-retry[hidden]{display:none!important}
.rank-receipt>span{display:block}
.rank-receipt-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:6px}
.rank-receipt :is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0;border:0;background:none;color:#dedede;font:inherit;text-decoration:none;touch-action:manipulation;white-space:nowrap}
.rank-receipt :is(a,button):focus-visible{outline:1px solid #ccc;outline-offset:3px}
.rank-receipt .rank-retry:disabled{opacity:.4}
.game-ranking{display:inline-flex;align-items:center;gap:2px}
.game-ranking>.rank-status-trigger{position:relative;flex:none;width:44px;min-width:44px;min-height:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:8px;background:transparent;color:#969696;cursor:pointer}
.rank-status-trigger svg{width:17px;height:17px;flex:none}
.rank-status-trigger:hover{color:#ddd}
.rank-status-trigger[data-attention=true]::after{content:'';position:absolute;right:7px;top:10px;width:4px;height:4px;border-radius:50%;background:#d8d8d8;box-shadow:0 0 0 2px #181818}
.game-ranking[data-score-status=saving]>.rank-status-trigger::after{animation:rank-sync-breathe 1.2s ease-in-out infinite}
.leaderboard-entry{display:inline-flex;align-items:center;min-height:44px;font-size:11px;color:#bcbcbc}
.game-switcher a[data-ranking-link]{margin-left:auto}
@keyframes rank-sync-breathe{50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.game-ranking[data-score-status=saving]>.rank-status-trigger::after{animation:none}}
