.rank-wrap{max-width:820px;margin:0 auto}
.rank-breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:22px;color:var(--muted);font-size:11px}
.rank-breadcrumbs a:hover{color:var(--text)}
.rank-hero{padding:24px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#191919,#121212)}
.rank-kicker,.rank-section-label{display:flex;align-items:center;gap:8px;color:#858585;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.rank-title{max-width:680px;margin:9px 0 11px;color:var(--text);font-size:clamp(25px,4vw,38px);line-height:1.08;letter-spacing:-.04em;font-weight:800}
.rank-subtitle{max-width:700px;margin:0;color:#999;font-size:13px;line-height:1.65}
.rank-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
.rank-pill{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 11px;border:1px solid var(--line);border-radius:999px;background:#151515;color:#aaa;font-size:10px;font-weight:700}
.rank-section{margin-top:28px}
.rank-section-head{margin-bottom:13px}
.rank-section-head h2{margin:6px 0 5px;font-size:23px;letter-spacing:-.035em;font-weight:750}
.rank-section-head p{max-width:690px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.rank-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rank-top-card,.rank-row-card,.rank-info-card,.rank-faq{border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.rank-top-card{display:flex;min-height:205px;flex-direction:column;justify-content:space-between;padding:15px}
.rank-top-card--first{border-color:#4b4b4b;background:#1a1a1a}
.rank-top-main{display:flex;align-items:flex-start;gap:11px}
.rank-number{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:9px;background:#252525;color:#eee;font-size:13px;font-weight:800}
.rank-top-card--first .rank-number{background:#f2f2f2;color:#111}
.rank-logo{display:grid;place-items:center;width:56px;height:56px;aspect-ratio:1/1;flex:none;overflow:hidden;border:1px solid #383838;border-radius:12px;background:#222;color:#ddd;font-size:15px;font-weight:800}
.rank-logo img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}.rank-logo img[hidden]{display:none}.rank-logo span{display:grid;place-items:center;width:100%;height:100%}
.rank-service-title{margin:2px 0 7px;font-size:14px;line-height:1.25;font-weight:750}
.rank-badge{display:inline-flex;align-items:center;min-height:21px;padding:0 7px;border-radius:999px;background:#272727;color:#aaa;font-size:9px;font-weight:700}
.rank-badge--solid{background:#eee;color:#111}
.rank-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding-top:13px;border-top:1px solid var(--line-soft)}
.rank-status-kicker{color:#666;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.rank-status-value{margin-top:3px;color:#ddd;font-size:10px;font-weight:700}
.rank-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;padding:0 10px;border-radius:8px;font-size:10px;font-weight:750}
.rank-btn--primary{background:#f3f3f3;color:#111}.rank-btn--primary:hover{background:#fff}
.rank-list-head,.rank-row-card{display:grid;grid-template-columns:30px minmax(170px,1.2fr) 100px minmax(160px,1.8fr) auto;gap:12px;align-items:center}
.rank-list-head{padding:0 14px 7px;color:#666;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.rank-row-card{margin-top:7px;padding:11px 14px}
.rank-row-number{color:#888;font-size:12px;font-weight:800}
.rank-service{display:flex;align-items:center;gap:9px;min-width:0}.rank-service .rank-logo{width:42px;height:42px;aspect-ratio:1/1;border-radius:9px;font-size:12px}
.rank-row-title{overflow:hidden;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.rank-row-tag{margin-top:3px;color:#666;font-size:9px}
.rank-row-description{color:#929292;font-size:10px;line-height:1.45}.rank-row-status{color:#c7c7c7;font-size:10px;font-weight:650}
.rank-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.rank-info-card{padding:14px}.rank-info-card h3{margin:7px 0 5px;font-size:13px}.rank-info-card p,.rank-faq p{margin:0;color:#898989;font-size:11px;line-height:1.55}
.rank-faq{padding:15px}.rank-faq h3{margin:0 0 5px;font-size:13px}.rank-faq+.rank-faq{margin-top:7px}
.rank-note{margin-top:16px;padding:13px 15px;border-left:2px solid #777;background:#151515;color:#888;font-size:10px;line-height:1.55}
.rank-edit{outline:1px dashed transparent;outline-offset:3px}.rank-edit:hover{outline-color:#555}
@media(max-width:900px){.rank-top-grid{grid-template-columns:1fr}.rank-list-head{display:none}.rank-row-card{grid-template-columns:25px minmax(0,1fr) auto}.rank-row-card .rank-row-description{grid-column:2/-1}.rank-row-card .rank-row-status{grid-column:2}.rank-row-card .rank-btn{grid-column:3;grid-row:1/3}}
@media(max-width:640px){.rank-page{padding:15px 10px 80px}.rank-hero{padding:18px}.rank-title{font-size:26px}.rank-subtitle{font-size:12px}.rank-info-grid{grid-template-columns:1fr}.rank-breadcrumbs{font-size:10px}.rank-top-card{min-height:180px}.rank-row-card{padding:11px 10px}}

/* Image placeholders for missing service avatars */
.rank-logo:has(>img[src="/uploads/rating/avatar-1.jpg"])>img[hidden]+span{font-size:0;background:center/cover no-repeat url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%2323395d%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2315171c%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22url(%23g)%22%2F%3E%3Ccircle%20cx%3D%2274%22%20cy%3D%2220%22%20r%3D%2230%22%20fill%3D%22%2364b5f6%22%20opacity%3D%22.12%22%2F%3E%3Crect%20x%3D%2222%22%20y%3D%2226%22%20width%3D%2252%22%20height%3D%2244%22%20rx%3D%2210%22%20fill%3D%22none%22%20stroke%3D%22%2364b5f6%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%2238%22%20cy%3D%2241%22%20r%3D%225%22%20fill%3D%22%2364b5f6%22%2F%3E%3Cpath%20d%3D%22m25%2062%2015-14%2011%2010%209-9%2012%2013%22%20fill%3D%22none%22%20stroke%3D%22%2364b5f6%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
.rank-logo:has(>img[src="/uploads/rating/avatar-1.jpg"])>img:not([hidden])+span{display:none}
.rank-logo:has(>img[src="/uploads/rating/avatar-2.jpg"])>img[hidden]+span{font-size:0;background:center/cover no-repeat url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23392c54%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2315171c%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22url(%23g)%22%2F%3E%3Ccircle%20cx%3D%2274%22%20cy%3D%2220%22%20r%3D%2230%22%20fill%3D%22%23ba92f6%22%20opacity%3D%22.12%22%2F%3E%3Crect%20x%3D%2222%22%20y%3D%2226%22%20width%3D%2252%22%20height%3D%2244%22%20rx%3D%2210%22%20fill%3D%22none%22%20stroke%3D%22%23ba92f6%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%2238%22%20cy%3D%2241%22%20r%3D%225%22%20fill%3D%22%23ba92f6%22%2F%3E%3Cpath%20d%3D%22m25%2062%2015-14%2011%2010%209-9%2012%2013%22%20fill%3D%22none%22%20stroke%3D%22%23ba92f6%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
.rank-logo:has(>img[src="/uploads/rating/avatar-2.jpg"])>img:not([hidden])+span{display:none}
.rank-logo:has(>img[src="/uploads/rating/avatar-3.jpg"])>img[hidden]+span{font-size:0;background:center/cover no-repeat url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%2321483f%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2315171c%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22url(%23g)%22%2F%3E%3Ccircle%20cx%3D%2274%22%20cy%3D%2220%22%20r%3D%2230%22%20fill%3D%22%2374d9bc%22%20opacity%3D%22.12%22%2F%3E%3Crect%20x%3D%2222%22%20y%3D%2226%22%20width%3D%2252%22%20height%3D%2244%22%20rx%3D%2210%22%20fill%3D%22none%22%20stroke%3D%22%2374d9bc%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%2238%22%20cy%3D%2241%22%20r%3D%225%22%20fill%3D%22%2374d9bc%22%2F%3E%3Cpath%20d%3D%22m25%2062%2015-14%2011%2010%209-9%2012%2013%22%20fill%3D%22none%22%20stroke%3D%22%2374d9bc%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
.rank-logo:has(>img[src="/uploads/rating/avatar-3.jpg"])>img:not([hidden])+span{display:none}
.rank-logo:has(>img[src="/uploads/rating/avatar-4.jpg"])>img[hidden]+span{font-size:0;background:center/cover no-repeat url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23523525%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2315171c%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22url(%23g)%22%2F%3E%3Ccircle%20cx%3D%2274%22%20cy%3D%2220%22%20r%3D%2230%22%20fill%3D%22%23f4b879%22%20opacity%3D%22.12%22%2F%3E%3Crect%20x%3D%2222%22%20y%3D%2226%22%20width%3D%2252%22%20height%3D%2244%22%20rx%3D%2210%22%20fill%3D%22none%22%20stroke%3D%22%23f4b879%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%2238%22%20cy%3D%2241%22%20r%3D%225%22%20fill%3D%22%23f4b879%22%2F%3E%3Cpath%20d%3D%22m25%2062%2015-14%2011%2010%209-9%2012%2013%22%20fill%3D%22none%22%20stroke%3D%22%23f4b879%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
.rank-logo:has(>img[src="/uploads/rating/avatar-4.jpg"])>img:not([hidden])+span{display:none}
