/* The article outline and its authoring preview share a compact hierarchy. */
:is(#article-toc, .article-toc)[hidden], #article-toc-preview[hidden],
#article-toc-preview-empty[hidden] { display: none !important; }
.article-toc-setting { border-top: 1px solid #e5e7eb; padding-top: 1.25rem; }
#article-toc-preview {
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    background: #f8fafc;
    color: #374151;
    font-size: .875rem;
    overflow-wrap: anywhere;
}
.article-toc-preview-title { margin-bottom: .5rem; font-weight: 600; }
#article-toc-preview-list, :is(#article-toc-list, .article-toc-list) ol { margin: 0; padding: 0; list-style: none; }
#article-toc-preview-list li { padding: .25rem 0; line-height: 1.5; }
#article-toc-preview-empty { color: #6b7280; line-height: 1.5; }
#article-toc-preview-list .article-toc-subheading,
:is(#article-toc-list, .article-toc-list) .article-toc-subheading { padding-inline-start: 1.25rem; }
:is(#article-toc, .article-toc) {
    margin-bottom: 1.5rem;
    border: 1px solid #e5e7eb;
    border-radius: .75rem;
    background: #f9fafb;
    color: #111827;
}
:is(#article-toc, .article-toc) summary { cursor: pointer; padding: .875rem 1rem; font-size: 1rem; font-weight: 600; }
:is(#article-toc, .article-toc) summary::marker { color: #6b7280; }
:is(#article-toc, .article-toc) summary:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; border-radius: .75rem; }
:is(#article-toc-list, .article-toc-list) { padding: .625rem 1rem .875rem; border-top: 1px solid #e5e7eb; }
:is(#article-toc-list, .article-toc-list) a {
    display: block;
    padding: .5rem 0;
    font-size: .9375rem;
    line-height: 1.5;
    color: #374151;
    text-decoration: none;
    overflow-wrap: anywhere;
}
:is(#article-toc-list, .article-toc-list) a:hover { color: #2563eb; text-decoration: underline; }
:is(#article-toc-list, .article-toc-list) a:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; border-radius: .25rem; }
:is(#article-body, [data-article-body], .article-content) [data-toc-heading] { scroll-margin-top: 8rem; }
:is(#article-body, [data-article-body], .article-content) [data-toc-heading]:focus { outline: none; }
:is(#article-body, [data-article-body], .article-content) [data-toc-heading]:focus-visible { outline: 2px solid #2563eb; outline-offset: 4px; }
.dark .article-toc-setting, .dark #article-toc-preview,
.dark :is(#article-toc, .article-toc), .dark :is(#article-toc-list, .article-toc-list) { border-color: #374151; }
.dark #article-toc-preview, .dark :is(#article-toc, .article-toc) { background: #1f2937; color: #f3f4f6; }
.dark #article-toc-preview-empty { color: #9ca3af; }
.dark :is(#article-toc-list, .article-toc-list) a { color: #d1d5db; }
.dark :is(#article-toc-list, .article-toc-list) a:hover { color: #93c5fd; }
@media (max-width: 640px) {
    :is(#article-toc-list, .article-toc-list) a { padding-top: .625rem; padding-bottom: .625rem; }
}
@media print { :is(#article-toc, .article-toc) { display: none; } }
