.access-ranking{margin:36px 0;padding:22px;background:#fff;border:1px solid var(--c-line);border-radius:10px}
.access-ranking h2{margin-top:0}
.ranking-list{list-style:none;padding:0;margin:20px 0;display:grid;gap:12px}
.ranking-card{display:grid;grid-template-columns:40px 112px minmax(0,1fr);align-items:center;gap:14px;padding:14px;border:1px solid var(--c-line);border-radius:8px;text-decoration:none;color:var(--c-ink);background:var(--c-bg)}
.ranking-card:visited{color:var(--c-ink)}
.ranking-card:hover{border-color:var(--c-primary);background:var(--c-primary-pale)}
.ranking-card:focus-visible{outline:3px solid var(--c-primary);outline-offset:3px}
.ranking-number{font-size:24px;font-weight:bold;text-align:center;color:var(--c-primary-dark)}
.ranking-number small{font-size:12px;display:block}
.ranking-photo{width:112px;height:84px;object-fit:cover;border-radius:4px}
.ranking-placeholder{width:112px;height:84px;display:grid;place-items:center;background:var(--c-primary-pale);font-size:12px}
.ranking-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.ranking-name{font-size:18px;overflow-wrap:anywhere}
.ranking-location,.ranking-movement{font-size:13px;color:var(--c-ink-weak)}
.ranking-views{font-size:14px;font-weight:bold}
.ranking-movement[data-direction="up"]{color:#356345}
.ranking-period,.ranking-note,.ranking-status{font-size:13px;color:var(--c-ink-weak)}
.ranking-period{border-top:1px solid var(--c-line);padding-top:12px}
.ranking-method{padding:16px;border:1px solid var(--c-line);border-radius:6px;margin:24px 0}
.ranking-method summary{cursor:pointer;font-weight:bold}
@media(max-width:600px){.access-ranking{padding:16px 12px}.ranking-card{grid-template-columns:28px 78px minmax(0,1fr);gap:9px;padding:12px 8px}.ranking-photo,.ranking-placeholder{width:78px;height:70px}.ranking-name{font-size:16px}.ranking-number{font-size:21px}}
