/* PublicLibraries.com Public Records Rankings (2026-10). Loaded only on public-records state pages and the rankings page. */
.rank-box{margin:0 0 var(--s-5);border-top:4px solid var(--c-orange-500)}
.rank-kicker{font-size:var(--fs-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-orange-600);margin:0 0 var(--s-1)}
.rank-box h2{margin-top:0}
.rank-overall{display:flex;gap:var(--s-4);align-items:center;margin:var(--s-3) 0 var(--s-4)}
.rank-overall p{margin:0}
.rank-badge{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:88px;height:88px;border-radius:50%;background:linear-gradient(160deg,var(--c-navy-700),var(--c-navy-900));color:#fff;box-shadow:var(--shadow)}
.rank-num{font-size:1.75rem;font-weight:800;line-height:1}
.rank-of{font-size:.8125rem;color:#dbe7f5}
.rank-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2);list-style:none;margin:0 0 var(--s-4);padding:0}
.rank-cats li{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--c-navy-50);border-radius:var(--radius);padding:var(--s-3) var(--s-2)}
.rank-cats span{font-size:.8125rem;font-weight:600;color:var(--c-muted);line-height:1.2}
.rank-cats strong{font-size:var(--fs-lg);color:var(--c-navy-900);line-height:1.3}
.rank-cats small{font-size:.75rem;color:var(--c-muted)}
.rank-types{display:grid;gap:var(--s-3)}
.rank-type{border:1px solid var(--c-line);border-radius:var(--radius);padding:var(--s-3) var(--s-4)}
.rank-type h3{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-2);font-size:var(--fs-md);margin:0 0 var(--s-2)}
.rank-pill{display:inline-block;font-size:.8125rem;font-weight:700;color:#fff;background:var(--c-navy-700);border-radius:999px;padding:.2rem .65rem;white-space:nowrap}
.rank-type dl{margin:0;display:grid;grid-template-columns:1fr;gap:0}
.rank-type dt{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--c-muted);margin-top:var(--s-2)}
.rank-type dd{margin:0;font-size:var(--fs-sm);color:var(--c-ink)}
.rank-note{font-size:var(--fs-sm);color:var(--c-muted);background:#fff8e6;border:1px solid #fde4a5;border-radius:var(--radius);padding:var(--s-3);margin:var(--s-4) 0 var(--s-2)}
.rank-more{margin:0;font-weight:700}
@media (min-width:600px){
  .rank-type dl{grid-template-columns:minmax(150px,32%) 1fr;gap:var(--s-2) var(--s-4)}
  .rank-type dt{margin-top:.15rem}
  .rank-type dd{border-left:2px solid var(--c-line);padding-left:var(--s-3)}
}
/* Rankings page */
.rank-figure{margin:var(--s-5) 0;text-align:center}
.rank-figure img{width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--c-line)}
.rank-figure figcaption{font-size:var(--fs-sm);color:var(--c-muted);margin-top:var(--s-2)}
.factor-list{list-style:none;padding:0;margin:0 0 var(--s-4);display:grid;gap:var(--s-3)}
.factor-list li{background:var(--c-navy-50);border-radius:var(--radius);padding:var(--s-3) var(--s-4)}
.factor-list strong{display:block;color:var(--c-navy-900)}
.state-select{border:1px solid var(--c-line);border-radius:var(--radius-lg);background:#fff;padding:var(--s-4);margin:var(--s-5) 0}
.state-select h2{margin-top:0}
.state-select .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 var(--s-3)}
.state-select .grid a{display:flex;align-items:center;min-height:44px;font-size:var(--fs-sm);font-weight:600;text-decoration:none;border-bottom:1px solid var(--c-line)}
.state-select .grid a:hover{text-decoration:underline}
.state-jump{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:0 0 var(--s-4)}
.state-jump select{flex:1 1 220px;min-height:var(--tap);padding:0 var(--s-3);font:inherit;border:1px solid #9ca3af;border-radius:var(--radius);background:#fff}
@media (min-width:600px){.state-select .grid{grid-template-columns:repeat(3,1fr)}}
@media (min-width:900px){.state-select .grid{grid-template-columns:repeat(4,1fr)}}
