.rank-story.chart-shell{--rank-surface:#111711;--rank-border:#394336;width:100%;min-width:0;max-width:100%;color:var(--ink);background:0 0;border:0;border-radius:0;gap:1.4rem;padding:0;display:grid;position:relative}.public-story .rank-story.chart-shell{background:0 0;border:0;border-radius:0;padding:0}.rank-heading,.rank-selection-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.rank-heading p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.5}.rank-eyebrow{letter-spacing:.16em;color:var(--accent);font-size:.68rem;font-weight:800}.rank-counter,.rank-selection-heading>span{color:var(--accent);white-space:nowrap;border:1px solid #d8ff466b;border-radius:999px;flex:none;padding:.6rem .85rem;font-size:.75rem;font-weight:750}.rank-filters{border:0;border-block:1px solid var(--rank-border);background:0 0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:1rem;padding:1rem 0 1.5rem;display:grid}.rank-notice{border-left:3px solid var(--accent);background:#d8ff4614;margin:0;padding:.8rem 1rem;font-size:.82rem}.rank-plot{overscroll-behavior-inline:contain;border:1px solid var(--rank-border);background:linear-gradient(#151d15,#0b100d);border-radius:12px;min-width:0;max-width:100%;position:relative;overflow:auto}.rank-plot svg{width:100%;min-width:680px;height:auto;max-height:35rem;display:block}.rank-grid{stroke:#334034;stroke-dasharray:3 7}.rank-checkpoint-line{stroke:#364139;stroke-width:1px}.rank-axis{fill:#aeb8a9;font:13px var(--font-body)}.rank-axis-title{fill:#aeb8a9;font:700 11px var(--font-body);letter-spacing:.12em}.rank-distance{fill:#7d8a7b}.rank-track{transition:opacity .3s}.rank-track-dimmed{opacity:.13}.rank-segment{stroke:var(--rank-color);stroke-width:3.3px;stroke-linecap:round;cursor:pointer;transition:stroke-width .2s,opacity .25s}.rank-track-active .rank-segment,.rank-segment:hover{stroke-width:5px}.rank-point{fill:#111711;stroke:var(--rank-color);stroke-width:3px;cursor:pointer;transition:r .2s}.rank-end-label{fill:var(--rank-color);font:700 12px var(--font-body);paint-order:stroke;stroke:#101610;stroke-width:3px}.rank-tooltip{pointer-events:auto;background:#090e0af5;border:1px solid #d8ff4699;border-radius:10px;gap:.22rem;max-width:min(17rem,55%);padding:.8rem 1rem;font-size:.75rem;display:grid;position:absolute;top:.8rem;right:.8rem;box-shadow:0 10px 25px #0007}.rank-tooltip strong{font-size:.9rem}.rank-tooltip span{color:var(--muted)}.rank-tooltip b{color:var(--accent)}.rank-tooltip button{color:var(--accent);font:inherit;background:0 0;border:0;justify-self:start;padding:0;text-decoration:underline}.rank-help,.rank-data-note{color:var(--muted);margin:0;font-size:.75rem;line-height:1.5}.rank-selection{gap:.8rem;display:grid}.rank-selection-heading h4{margin:.2rem 0 0;font-size:1.15rem}.rank-selected{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.rank-person{border:1px solid var(--rank-border);background:#161d17;border-radius:9px;align-items:center;gap:.65rem;min-width:0;padding:.55rem .7rem;display:flex}.rank-person-hidden{opacity:.48}.rank-person>i{border-radius:9px;flex:none;width:7px;height:2.2rem}.rank-person-name{min-width:0;color:var(--ink);font:700 .8rem var(--font-body);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;gap:.16rem;padding:.1rem 0 .1rem .45rem;display:grid;overflow:hidden}.rank-person-name[aria-pressed=true]{color:var(--accent)}.rank-person-name small{color:var(--muted);font-size:.68rem;font-weight:500}.rank-remove{color:var(--muted);background:0 0;border:0;flex:none;padding:.1rem .4rem;font-size:1.25rem}.rank-remove:hover{color:var(--orange)}.rank-search{border-top:1px solid var(--rank-border);gap:.5rem;padding-top:1.1rem;display:grid}.rank-search label{font-size:.82rem;font-weight:750}.rank-search input{border:1px solid var(--rank-border);width:100%;min-height:2.8rem;color:var(--ink);font:inherit;background:#0b110d;border-radius:8px;padding:.7rem .85rem}.rank-search>span{color:var(--muted);font-size:.7rem}.rank-search-results{border:1px solid var(--rank-border);background:#0e160f;border-radius:8px;max-height:15rem;display:grid;overflow:auto}.rank-search-results button{border:0;border-bottom:1px solid var(--rank-border);color:var(--ink);text-align:left;font:700 .8rem var(--font-body);background:0 0;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .9rem;display:flex}.rank-search-results button:hover:not(:disabled){background:#1a281a}.rank-search-results button:disabled{opacity:.4;cursor:not-allowed}.rank-search-results button span{gap:.2rem;display:grid}.rank-search-results button small{color:var(--muted);font-size:.68rem;font-weight:500}.rank-search-results button b{color:var(--accent);flex:none;font-size:.72rem}.rank-search-results p{color:var(--muted);margin:0;padding:.8rem;font-size:.8rem}.rank-empty{border:1px dashed var(--rank-border);text-align:center;border-radius:10px;padding:2rem}.rank-empty strong{color:var(--ink)}.rank-empty p{color:var(--muted);margin:.4rem 0 0;font-size:.82rem}@media (max-width:850px){.rank-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.rank-selected{grid-template-columns:1fr}}@media (max-width:540px){.rank-story{gap:1rem}.rank-heading{display:grid}.rank-counter{justify-self:start}.rank-filters{grid-template-columns:1fr;padding:.85rem 0 1.25rem}.rank-plot svg{min-width:600px}.rank-tooltip{top:.45rem;right:.45rem}.rank-help{font-size:.7rem}}@media (prefers-reduced-motion:reduce){.rank-track,.rank-segment,.rank-point{transition:none}}.rank-events{flex-wrap:wrap;gap:.5rem;display:flex}.rank-events button{border:1px solid var(--rank-border);min-width:9rem;color:var(--ink);text-align:left;font:inherit;background:#192218;border-radius:9px;gap:.15rem;padding:.65rem .85rem;display:grid}.rank-events button:hover{border-color:var(--accent)}.rank-events span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.63rem;font-weight:800}.rank-events strong{font-size:.78rem}.rank-events small{color:var(--muted);font-size:.68rem}.rank-segment,.rank-point{animation:.45s both rank-enter}.rank-track-podium .rank-point{stroke-width:4px}.rank-person-podium{border-color:#f3d0718c}@keyframes rank-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.rank-segment,.rank-point{animation:none}}
