/* Page-scoped reading aids; the shared stylesheet owns the three-column layout. */
.article-body {
    min-width: 0;
}

.article-body h2,
.article-body li[id] {
    scroll-margin-top: 5rem;
}

.article .article-toc a {
    text-decoration: none;
}

.article .article-toc ul {
    padding: 0;
    margin: 0;
}

.article .article-toc li,
.article .author-card p {
    margin: 0;
}

.whisper-steps li {
    margin-bottom: 1rem;
}

.whisper-table-wrap {
    overflow-x: auto;
    margin: 1.5rem 0;
}

.whisper-table-wrap .comparison-table {
    min-width: 30rem;
    margin: 0;
}

.whisper-table-wrap .comparison-table th,
.whisper-table-wrap .comparison-table td {
    text-align: left;
    vertical-align: top;
}

.whisper-table-wrap .comparison-table tbody th {
    width: 25%;
}

.whisper-example {
    padding: 1.25rem;
    margin: 1.5rem 0;
    border: 0.0625rem solid var(--border, #2d3139);
    border-radius: 0.75rem;
    background: var(--bg-card, #23262f);
    color: var(--text-primary);
    font-size: 0.8125rem;
    line-height: 1.7;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

@media (max-width: 56.25rem) {
    .article .article-toc ul {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        border-left: 0;
        padding: 0;
        margin: 0;
    }

    .article .article-toc li {
        margin: 0;
    }

    .article .article-toc a {
        padding: 0.3rem 0.55rem;
        margin: 0;
        border: 0.0625rem solid var(--border, #2d3139);
        border-radius: 0.4rem;
        font-size: 0.75rem;
        line-height: 1.4;
    }

    .article .article-toc a:hover,
    .article .article-toc a.active {
        border-color: var(--accent);
    }
}

@media (max-width: 30rem) {
    .site-nav .nav-links > a:not([href="/use-cases/"]) {
        display: none;
    }
}
