.review-toc { margin: 0 0 32px; padding: 20px 24px; border-radius: 14px; background: #F3F7F5; border: 1px solid #DCE6E1; }
.review-toc .review-toc-title { margin: 0 0 10px; color: #0B3B2E; font-size: 13px; font-weight: 600; line-height: 18px; letter-spacing: 1px; text-transform: uppercase; }
.review-toc .review-toc-list { display: grid; grid-template-columns: 1fr; gap: 6px; margin: 0; padding: 0; list-style: none; counter-reset: toc; }
.review-toc .review-toc-item { margin: 0; padding: 0; list-style: none; counter-increment: toc; }
.review-toc .review-toc-link { display: flex; align-items: flex-start; gap: 10px; padding: 6px 0; color: #0E2A22; font-size: 16px; font-weight: 600; line-height: 22px; text-decoration: none; transition: color 0.2s; }
.review-toc .review-toc-link::before { content: counter(toc); display: inline-flex; align-items: center; justify-content: center; flex: 0 0 26px; height: 26px; border-radius: 50%; background: #0B3B2E; color: #EFB93F; font-size: 13px; font-weight: 600; }
.review-toc .review-toc-link:hover { color: #0B7F76; text-decoration: underline; }
@media (min-width: 720px) {
  .review-toc .review-toc-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 28px; }
}
@media (min-width: 900px) {
  .review-toc .review-toc-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.ocr-rulebook .review-toc .review-toc-link::before { content: counter(toc); flex: 0 0 28px; justify-content: flex-start; height: auto; border-radius: 0; background: none; color: #0B7F76; font-family: "Libre Caslon Text", Georgia, serif; font-size: 15px; font-weight: 700; }
