    .rating-main{max-width:1080px;margin:auto;padding:52px 0 56px}
    .rating-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}
    .rating-intro h1{font-size:52px;line-height:1.15;letter-spacing:-1.8px;margin:0 0 15px;font-weight:600}
    .rating-intro h1 span{color:var(--accent)}
    .rating-intro .eyebrow{margin-bottom:12px}
    .rating-intro p:not(.eyebrow){margin:0;font-size:13px;color:var(--muted)}
    .rating-snapshot{text-align:right;flex-shrink:0;padding-bottom:3px}
    .rating-snapshot span{display:block;font-size:9px;color:var(--muted);letter-spacing:1.2px;margin-bottom:5px}
    .rating-snapshot strong{font-size:14px;font-weight:500}
    .rating-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:22px}
    .view-switch{display:inline-flex;padding:4px;border:1px solid var(--line);border-radius:7px;background:#101a2c;gap:4px}
    .view-switch button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--muted);font-size:12px;line-height:1.4}
    .view-switch button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
    .view-switch button:hover{color:var(--text)}
    .view-switch button[aria-pressed=true]{background:#20385e;border-color:#365781;color:var(--text)}
    .rating-sort-note{font-size:11px;color:var(--muted)}
    .standings-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
    .standings-grid.grouped{grid-template-columns:repeat(2,minmax(0,1fr))}
    .standings-panel{min-width:0;background:var(--panel);border:1px solid var(--line)}
    .standings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid var(--line)}
    .standings-heading h2{font-size:18px;letter-spacing:-.3px;line-height:1.4;font-weight:600}
    .standings-heading span{font-size:11px;white-space:nowrap;color:var(--muted)}
    .standings-table{width:100%;table-layout:fixed}
    .standings-table .rank-column{width:68px}
    .standings-table .rating-column{width:120px}
    .standings-table th{padding:11px 12px;background:#17243a;font-size:9px;letter-spacing:1px;font-weight:500}
    .standings-table th:first-child{padding-left:24px}
    .standings-table th:last-child{padding-right:24px;text-align:right;white-space:normal;line-height:1.5}
    .standings-table td{padding:10px 12px;height:62px;border-bottom:1px solid #293b5980;vertical-align:middle}
    .standings-table tr:last-child td{border-bottom:0}
    .standings-table tbody tr:hover{background:#20385e44}
    .standings-table .team-rank{padding-left:24px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
    .standings-table .team-rank.leading{color:var(--accent)}
    .standings-team{display:flex;align-items:center;gap:20px;min-width:0}
    .standings-logo{position:relative;display:block;width:40px;height:40px;flex-shrink:0}
    .standings-logo img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150%;height:150%;object-fit:contain;filter:drop-shadow(0 1px 2px #0005)}
    .standings-team-name{font-size:14px;font-weight:500;line-height:1.45;overflow-wrap:break-word}
    .standings-table .team-rating{padding-right:24px;text-align:right;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.1px}
    .rating-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding-top:20px;font-size:11px;color:var(--muted)}
    .preview-note{font-size:10px;color:var(--muted);margin:22px 0 0;padding-top:17px;border-top:1px solid var(--line)}
    .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
    @media(max-width:850px){.rating-main{padding-top:38px}.standings-grid.grouped{grid-template-columns:minmax(0,1fr)}.rating-intro h1{font-size:43px}.rating-intro{gap:18px}}
    @media(max-width:600px){.rating-main{padding:32px 0}.rating-intro{display:block;margin-bottom:25px}.rating-intro h1{font-size:37px;letter-spacing:-1.2px}.rating-intro p:not(.eyebrow){font-size:12px}.rating-snapshot{text-align:left;margin-top:18px;padding:0}.rating-snapshot span{display:inline;margin-right:8px;font-size:9px}.rating-snapshot strong{font-size:12px}.rating-toolbar{gap:11px;margin-bottom:18px}.view-switch{width:100%}.view-switch button{flex:1;padding:10px 9px}.rating-sort-note{font-size:10px}.standings-heading{padding:17px 16px}.standings-heading h2{font-size:17px}.standings-heading span{font-size:10px}.standings-table .rank-column{width:42px}.standings-table .rating-column{width:76px}.standings-table th{font-size:8px;padding:10px 6px}.standings-table th:first-child,.standings-table .team-rank{padding-left:14px}.standings-table th:last-child,.standings-table .team-rating{padding-right:16px}.standings-table td{padding:10px 6px}.standings-table .team-rating{font-size:16px}.standings-team{gap:10px}.standings-logo{width:32px;height:36px}.standings-team-name{font-size:13px}.rating-meta{font-size:10px;display:block;line-height:1.9}.rating-meta span{display:block}.preview-note{font-size:10px}}
.ranking-state{padding:44px 24px;border:1px solid var(--line);background:var(--panel);text-align:center;color:var(--muted);font-size:13px}
.ranking-state p{margin:0}.ranking-state .refresh-button{width:auto;margin-top:16px;padding:7px 16px}
.standings-table .rank-column{width:62px}.standings-table .change-column{width:108px}
.standings-table th.change-heading{text-align:center;white-space:normal;line-height:1.5;letter-spacing:.7px}
.standings-table .team-change{text-align:center;font-size:12px;line-height:1.4;font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap}
.team-change.up{color:#7edbb0}.team-change.down{color:#f2979d}.team-change.unchanged{color:#8b9bb5}
.movement-badge{display:inline-grid;grid-template-columns:16px 24px;gap:6px;align-items:center;vertical-align:middle;text-align:left}
.movement-arrows{display:flex;align-items:center;justify-content:center;width:16px;height:42px}
.movement-arrows svg{display:block;width:14px;overflow:visible}.team-change.down .movement-arrows svg{transform:rotate(180deg)}
.movement-arrows polyline{fill:none;stroke:currentColor;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;animation:movement-wave 2.4s ease-in-out infinite;animation-delay:calc(var(--step)*-140ms)}
.movement-count{font-variant-numeric:tabular-nums;line-height:1}
@keyframes movement-wave{0%,100%{opacity:.45}45%,65%{opacity:1}}
@media(prefers-reduced-motion:reduce){.movement-arrows polyline{animation:none;opacity:1}}
.grouped .standings-table .rank-column{width:48px}.grouped .standings-table .change-column{width:78px}.grouped .standings-table .rating-column{width:94px}
@media(max-width:600px){
 .standings-table .rank-column,.grouped .standings-table .rank-column{width:32px}
 .standings-table .change-column,.grouped .standings-table .change-column{width:61px}
 .standings-table .rating-column,.grouped .standings-table .rating-column{width:72px}
 .standings-table .team-rank,.standings-table th:first-child{padding-left:12px}.standings-table .team-change{font-size:11px}
 .standings-table th.change-heading{font-size:8px;letter-spacing:.2px;padding-left:2px;padding-right:2px}
 .standings-team{gap:8px}.standings-logo{width:29px;height:34px}.standings-team-name{font-size:12px}
 .standings-table .team-rating{font-size:15px;padding-right:12px}.standings-table th:last-child{padding-right:12px;letter-spacing:.2px}
 .movement-badge{grid-template-columns:14px 21px;gap:5px}.movement-arrows{width:14px}.movement-arrows svg{width:12px}
}
.standings-table .gap-column{width:108px}
.standings-table th.gap-heading{text-align:right;white-space:normal;line-height:1.5;letter-spacing:.7px}
.standings-table th:nth-last-child(2){text-align:right;white-space:normal;line-height:1.5;padding-right:12px}
.standings-table .team-rating{padding-right:12px}
.standings-table .team-gap{padding-right:24px;text-align:right;font-size:13px;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.standings-table .team-gap.leader{color:#71849f}
.standings-table tbody tr.rating-band-top{background:rgba(97,211,165,.075);box-shadow:inset 2px 0 rgba(97,211,165,.32)}
.standings-table tbody tr.rating-band-bottom{background:rgba(242,151,157,.07);box-shadow:inset 2px 0 rgba(242,151,157,.3)}
.standings-table tbody tr.rating-band-top:hover{background:rgba(97,211,165,.11)}
.standings-table tbody tr.rating-band-bottom:hover{background:rgba(242,151,157,.105)}
.grouped .standings-table .rank-column{width:40px}.grouped .standings-table .change-column{width:70px}
.grouped .standings-table .rating-column{width:84px}.grouped .standings-table .gap-column{width:82px}
@media(max-width:600px){
 .standings-table .rank-column,.grouped .standings-table .rank-column{width:26px}
 .standings-table .change-column,.grouped .standings-table .change-column{width:46px}
 .standings-table .rating-column,.grouped .standings-table .rating-column{width:50px}
 .standings-table .gap-column,.grouped .standings-table .gap-column{width:56px}
 .standings-table th,.standings-table td{padding-left:4px;padding-right:4px}
 .standings-table th:first-child,.standings-table .team-rank{padding-left:9px}
 .standings-table th.change-heading,.standings-table th.gap-heading{font-size:7px;letter-spacing:0}
 .standings-table th:nth-last-child(2){font-size:7px;letter-spacing:0;text-align:right;white-space:normal;line-height:1.5;padding-right:4px}
 .standings-table .team-rating{padding-right:4px;font-size:14px}.standings-table .team-gap{padding-right:10px;font-size:11px}
 .standings-table th:last-child{padding-right:10px}.standings-team{gap:14px}.standings-logo{width:25px;height:32px}.standings-team-name{font-size:12px}
 .movement-badge{grid-template-columns:12px 19px;gap:3px}.movement-arrows{width:12px}.movement-arrows svg{width:11px}
}

@media(max-width:600px){.view-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0}.view-switch button{min-width:0;font-size:11px;padding:10px 6px;gap:0}.view-switch button svg{display:none}}

.ranking-chart-panel{margin:0 0 22px;padding:22px 24px 18px;background:var(--panel);border:1px solid var(--line)}
.ranking-chart-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-bottom:14px}
.ranking-chart-heading h2{font-size:18px;font-weight:600}.ranking-chart-heading p{margin:0;color:var(--muted);font-size:11px}
.ranking-chart-scroll{max-width:520px;margin:auto;overflow-x:auto;padding:0 2px 5px}
.ranking-chart{position:relative;margin:auto;min-width:320px;max-width:none}
.ranking-chart-axis{position:absolute;left:55px;top:33px;bottom:33px;border-left:2px solid #7797c4}
.ranking-chart-tick{position:absolute;left:0;right:0;height:0}
.ranking-chart-tick span{position:absolute;left:0;top:-8px;width:45px;text-align:right;color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}
.ranking-chart-tick::after{content:'';position:absolute;left:55px;right:5px;border-top:1px dashed #53698755}
.ranking-chart-stem{position:absolute;z-index:1;height:0;border-top:1px solid #8fb8ff99;transition:border-color .18s,box-shadow .18s}
.ranking-chart-stem.is-highlighted{border-top:2px solid #d0e6ff;box-shadow:0 0 9px 2px #8fb8ff99}
.ranking-chart-score{position:absolute;z-index:3;left:0;width:54px;transform:translateY(-50%);padding:3px 1px;text-align:center;border:1px solid #a8caff;border-radius:3px;background:#315783;color:#fff;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;box-shadow:0 0 12px #8fb8ff99}
.ranking-chart-marker{position:absolute;z-index:2;width:40px;height:40px;padding:0;overflow:hidden;border:2px solid #7797c4;border-radius:50%;background:#0c1829;box-shadow:0 2px 8px #0008;display:grid;place-items:center}
.ranking-chart-marker:hover,.ranking-chart-marker:focus-visible,.ranking-chart-marker.is-selected{border-color:#b3d0ff;box-shadow:0 0 0 3px #8fb8ff33,0 2px 8px #0008}
.ranking-chart-marker.is-highlighted{border-color:#f0f8ff;box-shadow:0 0 0 4px #8fb8ff88,0 0 16px #8fb8ffbb}
.ranking-chart-marker img{display:block;width:100%;height:100%;padding:2px;object-fit:contain}
.ranking-chart-selection{min-height:25px;margin:5px 0 0;text-align:center;font-size:12px;color:var(--text);font-variant-numeric:tabular-nums}
@media(max-width:600px){.ranking-chart-panel{padding:16px 12px 12px}.ranking-chart-heading{display:block;margin-bottom:10px}.ranking-chart-heading h2{font-size:16px}.ranking-chart-heading p{font-size:10px;margin-top:4px}.ranking-chart-scroll{max-width:100%}}
