/* Ranked progression and standings share SANDORITHM's local font system. */
.ranked-jump{margin-top:16px;min-height:44px;padding:9px 14px;background:#ffffff18;border:1px solid #ffffff70;color:#fff;border-radius:10px;font:650 .875rem/1.5 var(--font-body);cursor:pointer}
.ranked-jump:focus-visible{outline:3px solid #ffe293;outline-offset:3px}.in-match .ranked-jump{display:none}
#battleStage:empty{display:none}
@media(min-width:900px){.battle-shell:not(.in-match){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.battle-shell:not(.in-match)>.battle-hero,.battle-shell:not(.in-match)>#battleStatus,.battle-shell:not(.in-match)>#battleStage,.battle-shell:not(.in-match)>#rankedStandings{grid-column:1/-1}.battle-shell:not(.in-match)>*{margin-bottom:0}}
.ranked-profile-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ranked-tier-icon{width:60px;height:60px;display:grid;place-items:center;font-size:2rem;background:#fff0bb;border:1px solid #e7d39a;border-radius:18px;flex-shrink:0}
.ranked-profile-head h3{margin:4px 0;font-size:1.5rem}.ranked-profile-head p{margin:0;color:#516d83;font-size:.875rem}
.ranked-profile .battle-kicker,.ranked-board-head .battle-kicker{color:#695217;font-size:.6875rem}
.ranked-points{margin-left:auto;text-align:right;font-family:var(--font-heading);font-size:1.8rem;line-height:1.35;color:#12598a;overflow-wrap:anywhere}
.ranked-points small,.ranked-row strong small,.ranked-history-row b small{display:block;font-family:var(--font-body);font-size:.75rem;font-weight:500;color:#516d83}
.ranked-progress-label{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.8125rem;line-height:1.6;color:#41617a;margin:18px 0 8px}
.ranked-progress{height:8px;border-radius:12px;overflow:hidden;background:#e6eef5}.ranked-progress span{display:block;height:100%;background:linear-gradient(90deg,#16679b,#d0a131)}
.ranked-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:20px}
.ranked-stats div{text-align:center;background:#f3f8fc;padding:12px 6px;border-radius:12px;min-width:0}
.ranked-stats b{display:block;color:#184f76;font-family:var(--font-heading);font-size:1.35rem;line-height:1.4;overflow-wrap:anywhere}.ranked-stats span{display:block;color:#516d83;font-size:.75rem;line-height:1.6}
.ranked-record{font-size:.8125rem;color:#516d83;line-height:1.6;margin:12px 0}
.ranked-history summary,.ranked-rules summary{cursor:pointer;min-height:40px;padding:8px 0;font-weight:650;font-size:.875rem;line-height:1.6;color:#315871}
.ranked-history summary:focus-visible,.ranked-rules summary:focus-visible{outline:3px solid #126aa6;outline-offset:2px;border-radius:4px}
.ranked-history-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #dce7ef;font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}
.ranked-history-row small{display:block;color:#587387;font-size:.75rem}.ranked-history-row b{text-align:right}
.ranked-outcome{font-size:.6875rem;font-weight:750;padding:4px 7px;border-radius:6px;background:#edf2f6;color:#436277}.ranked-outcome.win{background:#e4f5ed;color:#1e614d}.ranked-outcome.loss{background:#fff0e0;color:#795021}
.ranked-board-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ranked-board-head h3{margin:6px 0 0}.ranked-board-head .btn{min-height:44px}
.ranked-list{list-style:none;margin:0;padding:0}.ranked-row{display:grid;grid-template-columns:minmax(48px,max-content) minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 10px;border-top:1px solid #dce7ef;color:#214d6e;line-height:1.6}
.ranked-place{font-family:var(--font-heading);font-weight:800;font-size:1rem;white-space:nowrap}.ranked-player{min-width:0;overflow-wrap:anywhere}.ranked-player b{font-size:.9375rem}.ranked-player small{display:block;font-size:.75rem;color:#516d83}
.ranked-row strong{text-align:right;font-family:var(--font-heading);font-size:1.25rem;min-width:0;overflow-wrap:anywhere}.ranked-me{background:#fff6d6;border-radius:12px;border:1px solid #e4d19b}
.ranked-empty{padding:24px 12px;border-radius:12px;background:#f3f8fc;color:#516d83;font-size:.9375rem;line-height:1.7;text-align:center}
.ranked-rules{margin-top:18px;border-top:1px solid #dce7ef}.ranked-rules p{font-size:.875rem;line-height:1.7;color:#516d83}
.ranked-recap{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:18px 0}.ranked-recap div{background:#f0f7fc;border:1px solid #d1e5f3;border-radius:14px;min-width:130px;padding:14px}
.ranked-recap strong{display:block;font-family:var(--font-heading);font-size:1.65rem;color:#12598a;line-height:1.4}.ranked-recap span{font-size:.8125rem;color:#516d83;line-height:1.6}
@media(max-width:600px){.ranked-profile-head{gap:10px}.ranked-tier-icon{width:48px;height:48px;font-size:1.6rem}.ranked-points{font-size:1.4rem}.ranked-profile-head h3{font-size:1.2rem}.ranked-row{grid-template-columns:minmax(48px,max-content) minmax(0,1fr);gap:8px;padding:12px 8px}.ranked-row strong{grid-column:2;text-align:left;font-size:1.125rem}.ranked-row strong small{display:inline;margin-left:5px}.ranked-history-row{gap:8px}.ranked-stats b{font-size:1.125rem}.ranked-recap{gap:8px}.ranked-recap div{min-width:100px;padding:12px}}
