.article-toc {
  margin-block: 24px;
  padding-block: 20px;
  border-block: 1px solid var(--color-border);
  color: var(--color-text);
}
.article-toc ol { padding-inline-start: 24px; }
.article-toc li { margin-block: 8px; overflow-wrap: anywhere; }
.article-toc a:focus-visible { outline: 3px solid var(--color-button-focus-outer); outline-offset: 3px; }
.article-copy-controls {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 8px 12px 20px;
  color: var(--color-text-muted);
}
.article-copy-controls [role="status"] { overflow-wrap: anywhere; }
.article h2[id], article h2[id] { scroll-margin-top: 96px; }
.article-topic-intro { margin-block: 24px; line-height: 1.7; }
.article-topic-intro p, .article-topic-intro ul { margin-block: 16px; }
.article-topic-intro ul { padding-inline-start: 24px; }
.article-topic-start { margin-block: 32px; }

/* Public and standalone article templates use different token names. */
.main:has(.article-topic-intro), .public-related-articles {
  --line: var(--color-border);
  --text: var(--color-text);
  --muted: var(--color-text-secondary);
  --hint: var(--color-text-muted);
  --primary: var(--color-brand-text);
  --surface: var(--color-bg-card);
}
.public-related-articles { max-width: 1100px; margin: 48px auto; padding-inline: 24px; }
.public-related-articles h2 { margin-block: 0 24px; }
