/* Рейтинги (/ratings/): подключается только на страницах рейтингов (inc/ratings.php). */
.rating__container { max-width: 1180px; }
/* Текст читается узкой колонкой, таблица занимает всю ширину контейнера. */
.rating__content > p, .rating__content > h2, .rating__content > h3, .rating__content > ul, .rating__content > ol,
.rating__content .rating-items, .rating__content .rating-faq, .rating__disclosure, .rating__container > .breadcrumbs,
.rating__container > .article__title, .rating__container > .article__meta, .rating__other { max-width: 820px; }
.rating__disclosure { font-size: 0.88rem; margin: -10px 0 22px; }

.rating-table { font-size: 0.84rem; min-width: 900px; }
.rating-table th, .rating-table td { padding: 9px 8px; }
.rating-table th { white-space: normal; }
.rating-table td { min-width: 78px; }
.rating-table .compare__course { min-width: 160px; }
.rating-table .compare__course a { font-weight: 650; }
.rating-table__pos { min-width: 0 !important; width: 28px; color: var(--teal-dark); font-weight: 800; }
.rating-table__school { display: block; color: var(--muted); font-size: 0.8rem; margin-top: 2px; }
.rating-table__checked { display: block; color: var(--muted); font-weight: 400; font-size: 0.75rem; margin-top: 2px; }
.rating-table__group th { background: var(--bg); color: var(--navy); font-size: 0.85rem; text-transform: none; letter-spacing: 0; }
.rating-table__score { white-space: nowrap; min-width: 0 !important; }
.rating-table__score .muted { white-space: normal; font-size: 0.8rem; }
.rating-table__note { font-size: 0.82rem; margin-top: 10px; }

.rating-item { border-top: 1px solid var(--line); padding-top: 14px; margin-top: 18px; }
.rating-item__title { margin-bottom: 4px; }
.rating-item__facts { color: var(--muted); font-size: 0.9rem; margin: 0 0 8px; }
.rating-item__links { font-size: 0.95rem; display: flex; flex-wrap: wrap; gap: 6px 18px; }
.rating-item__school { color: var(--muted); }

.rating-faq h3 { font-size: 1.05rem; margin-top: 1.3em; }
.rating__other { margin-top: 40px; padding-top: 18px; border-top: 1px solid var(--line); }
.rating__other ul { columns: 2; column-gap: 32px; padding-left: 18px; }
.rating-archive__intro { max-width: 820px; margin-bottom: 26px; color: var(--text); }

@media (max-width: 640px) {
	.rating-table { min-width: 0; }
	.rating-table td { min-width: 0; }
	.rating-table__pos { display: none !important; }
	.compare--cards tr.rating-table__group { background: transparent; box-shadow: none; padding: 8px 0 0; margin-bottom: 6px; }
	.rating-table__group th { display: block; padding: 6px 2px; background: transparent; border: 0; font-size: 1rem; }
	.rating__other ul { columns: 1; }
}
