.category-title-link { color: inherit; text-decoration: none; }
.category-title-link:hover { color: var(--color-text-accent); }
.topic-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 28px; padding-left: 22px; color: #b5cbd7; line-height: 1.7; }
.topic-list li::marker { color: var(--color-text-accent); }
.category-pagination { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 18px; padding-top: 10px; }
.category-pagination a { color: var(--color-text-accent); text-underline-offset: 5px; }
@media (max-width: 640px) { .topic-list { grid-template-columns: 1fr; } }
.topic-overview { padding: 28px; background: #102430; border: 1px solid var(--color-divider); border-radius: 16px; margin: 32px 0; }
.topic-overview h2 { margin: 12px 0 22px; font-size: 1.5rem; }
.topic-toc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 28px; padding-left: 24px; line-height: 1.65; color: #65dbea; }
.topic-toc a, .topic-article a { color: #65dbea; text-underline-offset: 4px; }
.topic-toc a { display: inline-block; padding: 3px 0; }
.topic-article { margin: 24px 0; padding: 32px; border: 1px solid var(--color-divider); border-radius: 16px; background: var(--color-panel-bg); scroll-margin-top: 24px; }
.topic-article:target { border-color: #65dbea; }
.topic-article h2 { margin: 12px 0 20px; font-size: clamp(1.3rem, 3vw, 1.7rem); line-height: 1.3; overflow-wrap: anywhere; }
.topic-article > p:not(.component-number) { color: #b5cbd7; line-height: 1.85; margin: 16px 0; }
.topic-article .topic-back { display: inline-block; font-size: .85rem; margin-top: 10px; }
.topic-overview, .topic-article { overflow-wrap: anywhere; }
@media (max-width: 640px) { .topic-toc { grid-template-columns: 1fr; } .topic-overview, .topic-article { padding: 22px; } }
