/* Best-of pages (BestOf.dc.html). */
.page-bestof{padding-top:28px;padding-bottom:72px}
.bestof-layout{display:flex;gap:48px;flex-wrap:wrap;align-items:flex-start}
.bestof-main{flex:999 1 620px;min-width:0;display:flex;flex-direction:column;gap:36px}
.bestof-head{display:flex;flex-direction:column;gap:14px;padding-bottom:24px;border-bottom:1px solid var(--ink-900)}
.bestof-head h1{font-size:clamp(32px,4.6vw,50px);line-height:1.06;letter-spacing:-.028em;text-wrap:balance}
.bestof-head .dek{margin:0;font-size:19px;color:var(--slate-700);max-width:60ch;text-wrap:pretty}
.bestof-meta{display:flex;gap:6px 18px;flex-wrap:wrap;font-size:14px;color:var(--slate-600);align-items:center}
.bestof-meta .upd{display:inline-flex;gap:6px;align-items:center;color:var(--ink-900);font-weight:600}
.how-box{border:1px solid var(--slate-200);border-radius:var(--r-lg);padding:20px 22px;display:flex;flex-direction:column;gap:10px}
.how-box h2{font-size:20px}
.how-box ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px;color:var(--slate-700)}
.how-box .more{font-weight:600;text-decoration:none}
.ranked{display:flex;flex-direction:column;gap:28px}
.rank-item{display:flex;gap:20px;flex-wrap:wrap;padding-top:28px;border-top:1px solid var(--slate-200)}
.rank-no{flex:0 0 44px;font:500 28px var(--font-mono);color:var(--slate-600);letter-spacing:-.02em}
.rank-body{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:14px}
.rank-card{display:flex;flex-direction:column;border:1px solid var(--slate-200);border-radius:var(--r-lg);overflow:hidden}
.rank-card__top{padding:16px 18px;display:flex;gap:16px 24px;flex-wrap:wrap;align-items:center}
.rank-card__name{display:flex;gap:12px;align-items:center;flex:1 1 220px;min-width:0}
.rank-card__name h3{font-size:19px;line-height:1.25}
.rank-card__name .sub{font-size:13px;color:var(--slate-600)}
.rank-card__prices{display:flex;gap:20px;flex-wrap:wrap}
.rank-card__prices > div + div{border-left:1px solid var(--slate-100);padding-left:20px}
.rank-card__prices .k{font-size:13px;color:var(--slate-600)}
.rank-card__prices .v{font-size:20px;font-weight:600}
.rank-card__foot{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:10px 18px;border-top:1px solid var(--slate-100);background:var(--paper-50);font-size:13px;color:var(--slate-600)}
.rank-card__foot .actions{display:flex;gap:8px}
.rank-card__foot .btn{min-height:0;padding:7px 12px;font-size:14px}
.rank-note{margin:0;font-size:17px;line-height:1.65;max-width:62ch;text-wrap:pretty}
#cmp h2,.faq h2,.pending h2,.not-enough h2{font-size:26px;letter-spacing:-.015em;margin-bottom:14px}
.table-scroll table a{color:var(--ink-900)}
.not-enough{border:1px dashed var(--slate-300);border-radius:var(--r-lg);padding:28px 24px}
.not-enough p{margin:0 0 14px;max-width:62ch;color:var(--slate-700)}
.pending p{margin:0;color:var(--slate-700);max-width:62ch}
.faq__list{border-top:1px solid var(--ink-900)}
.faq details{border-bottom:1px solid var(--slate-200);padding:14px 0}
.faq summary{font-weight:600;font-size:17px;cursor:pointer}
.faq details p{margin:10px 0 0;color:var(--slate-700);max-width:62ch}
.bestof-aside{flex:1 1 260px;max-width:100%;position:sticky;top:16px;display:flex;flex-direction:column;gap:18px}
.on-page-box{display:flex;flex-direction:column;gap:6px;font-size:15px;border:1px solid var(--slate-200);border-radius:var(--r-lg);padding:16px 18px}
.on-page-box a{color:var(--ink-900);text-decoration:none}
@media (max-width:879px){.bestof-aside{position:static}}
