/* ==========================================================
   AYW DESIGN SYSTEM
   PAGES / WIKI / WIKI

   Responsabilidades:
   - estrutura da página da Wiki;
   - cabeçalho e introdução;
   - navegação e índice;
   - conteúdo dos artigos;
   - tipografia de leitura;
   - sumário interno;
   - blocos informativos;
   - listas, citações e código;
   - navegação entre artigos;
   - responsividade.

   Pertencem a outros módulos:
   - controles de leitura:
     pages/wiki/tts.css;
   - botões:
     components/buttons.css;
   - cartões:
     components/cards.css;
   - tabelas:
     components/tables.css;
   - badges:
     components/badges.css;
   - alertas:
     components/alerts.css.

   Não utiliza:
   - Bootstrap;
   - estilos inline;
   - JavaScript para aparência;
   - regras dos controles TTS;
   - classes antigas.
   ========================================================== */


/* ==========================================================
   PÁGINA
   ========================================================== */

   .ayw-wiki-page {
    display: flex;
    flex-direction: column;

    width: 100%;
    min-width: 0;

    gap: var(--ayw-space-5);
}


/* ==========================================================
   CABEÇALHO
   ========================================================== */

.ayw-wiki-header {
    display: flex;
    flex-direction: column;

    min-width: 0;

    gap: var(--ayw-space-4);

    padding:
        var(--ayw-space-5)
        var(--ayw-space-4);

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-surface);
    color: var(--ayw-text);

    box-shadow: var(--ayw-shadow-sm);
}

.ayw-wiki-header-main {
    min-width: 0;
}

.ayw-wiki-eyebrow {
    display: block;

    margin-bottom: var(--ayw-space-2);

    color: var(--ayw-primary);

    font-size: var(--ayw-font-size-xs);
    font-weight: var(--ayw-font-weight-bold);
    line-height: var(--ayw-line-height-normal);
    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.ayw-wiki-title {
    margin: 0;

    color: var(--ayw-text);

    font-size:
        clamp(
            var(--ayw-font-size-2xl),
            7vw,
            var(--ayw-font-size-4xl)
        );

    font-weight: var(--ayw-font-weight-bold);
    line-height: var(--ayw-line-height-tight);
    letter-spacing: -0.025em;
}

.ayw-wiki-description {
    max-width: var(--ayw-content-readable);

    margin:
        var(--ayw-space-3)
        0
        0;

    color: var(--ayw-text-muted);

    font-size: var(--ayw-font-size-md);
    line-height: var(--ayw-line-height-relaxed);
}


/* ==========================================================
   AÇÕES DO CABEÇALHO
   ========================================================== */

.ayw-wiki-header-actions {
    display: flex;
    flex-wrap: wrap;

    min-width: 0;

    gap: var(--ayw-space-2);
}


/* ==========================================================
   LAYOUT PRINCIPAL
   ========================================================== */

.ayw-wiki-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr);

    align-items: start;

    width: 100%;
    min-width: 0;

    gap: var(--ayw-space-5);
}


/* ==========================================================
   NAVEGAÇÃO LATERAL
   ========================================================== */

.ayw-wiki-sidebar {
    min-width: 0;

    padding: var(--ayw-space-4);

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-surface);
    color: var(--ayw-text);

    box-shadow: var(--ayw-shadow-xs);
}

.ayw-wiki-sidebar-title {
    margin:
        0
        0
        var(--ayw-space-3);

    color: var(--ayw-text-muted);

    font-size: var(--ayw-font-size-xs);
    font-weight: var(--ayw-font-weight-bold);
    line-height: var(--ayw-line-height-normal);
    letter-spacing: 0.08em;

    text-transform: uppercase;
}


/* ==========================================================
   LISTA DA NAVEGAÇÃO
   ========================================================== */

.ayw-wiki-nav {
    display: flex;
    flex-direction: column;

    min-width: 0;

    gap: var(--ayw-space-1);

    margin: 0;
    padding: 0;

    list-style: none;
}

.ayw-wiki-nav-item {
    min-width: 0;
}

.ayw-wiki-nav-link {
    display: flex;
    align-items: center;

    width: 100%;
    min-width: 0;
    min-height: 42px;

    gap: var(--ayw-space-2);

    padding:
        var(--ayw-space-2)
        var(--ayw-space-3);

    border: 1px solid transparent;
    border-radius: var(--ayw-radius-md);

    background: transparent;
    color: var(--ayw-text-soft);

    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-medium);
    line-height: var(--ayw-line-height-normal);

    text-decoration: none;

    transition:
        border-color var(--ayw-transition-fast),
        background-color var(--ayw-transition-fast),
        color var(--ayw-transition-fast);
}

.ayw-wiki-nav-link:hover {
    background: var(--ayw-surface-hover);
    color: var(--ayw-text);
}

.ayw-wiki-nav-link:focus-visible {
    outline: 3px solid var(--ayw-focus-ring);
    outline-offset: 2px;
}

.ayw-wiki-nav-link.is-active,
.ayw-wiki-nav-link[aria-current="page"] {
    border-color: var(--ayw-primary-border);

    background: var(--ayw-primary-soft);
    color: var(--ayw-primary);

    font-weight: var(--ayw-font-weight-semibold);
}

.ayw-wiki-nav-icon {
    display: grid;
    place-items: center;

    flex: 0 0 auto;

    width: 18px;
    height: 18px;

    line-height: 1;
}

.ayw-wiki-nav-text {
    min-width: 0;

    overflow: hidden;

    text-overflow: ellipsis;
    white-space: nowrap;
}


/* ==========================================================
   ARTIGO
   ========================================================== */

.ayw-wiki-article {
    width: 100%;
    min-width: 0;

    padding: var(--ayw-space-4);

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-surface);
    color: var(--ayw-text);

    box-shadow: var(--ayw-shadow-sm);
}


/* ==========================================================
   CABEÇALHO DO ARTIGO
   ========================================================== */

.ayw-wiki-article-header {
    min-width: 0;

    margin-bottom: var(--ayw-space-6);
    padding-bottom: var(--ayw-space-5);

    border-bottom: 1px solid var(--ayw-border);
}

.ayw-wiki-article-category {
    display: inline-flex;
    align-items: center;

    min-height: 26px;

    margin-bottom: var(--ayw-space-3);

    padding:
        0
        var(--ayw-space-3);

    border: 1px solid var(--ayw-primary-border);
    border-radius: var(--ayw-radius-pill);

    background: var(--ayw-primary-soft);
    color: var(--ayw-primary);

    font-size: var(--ayw-font-size-xs);
    font-weight: var(--ayw-font-weight-semibold);
    line-height: 1;
}

.ayw-wiki-article-title {
    margin: 0;

    color: var(--ayw-text);

    font-size:
        clamp(
            var(--ayw-font-size-xl),
            6vw,
            var(--ayw-font-size-3xl)
        );

    font-weight: var(--ayw-font-weight-bold);
    line-height: var(--ayw-line-height-tight);
    letter-spacing: -0.02em;
}

.ayw-wiki-article-summary {
    max-width: var(--ayw-content-readable);

    margin:
        var(--ayw-space-3)
        0
        0;

    color: var(--ayw-text-muted);

    font-size: var(--ayw-font-size-md);
    line-height: var(--ayw-line-height-relaxed);
}


/* ==========================================================
   METADADOS DO ARTIGO
   ========================================================== */

.ayw-wiki-article-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;

    min-width: 0;

    gap:
        var(--ayw-space-2)
        var(--ayw-space-4);

    margin-top: var(--ayw-space-4);

    color: var(--ayw-text-muted);

    font-size: var(--ayw-font-size-xs);
    line-height: var(--ayw-line-height-normal);
}

.ayw-wiki-article-meta-item {
    display: inline-flex;
    align-items: center;

    gap: var(--ayw-space-1);
}

.ayw-wiki-article-meta-icon {
    display: grid;
    place-items: center;

    width: 16px;
    height: 16px;

    line-height: 1;
}


/* ==========================================================
   SUMÁRIO DO ARTIGO
   ========================================================== */

.ayw-wiki-toc {
    margin-bottom: var(--ayw-space-6);

    padding: var(--ayw-space-4);

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-bg-soft);
    color: var(--ayw-text);
}

.ayw-wiki-toc-title {
    margin:
        0
        0
        var(--ayw-space-3);

    color: var(--ayw-text);

    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-semibold);
    line-height: var(--ayw-line-height-tight);
}

.ayw-wiki-toc-list {
    display: flex;
    flex-direction: column;

    gap: var(--ayw-space-2);

    margin: 0;
    padding-left: var(--ayw-space-5);
}

.ayw-wiki-toc-link {
    color: var(--ayw-text-soft);

    font-size: var(--ayw-font-size-sm);
    line-height: var(--ayw-line-height-normal);

    text-decoration: none;
}

.ayw-wiki-toc-link:hover {
    color: var(--ayw-primary);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ayw-wiki-toc-link:focus-visible {
    outline: 3px solid var(--ayw-focus-ring);
    outline-offset: 2px;

    border-radius: var(--ayw-radius-xs);
}


/* ==========================================================
   CONTEÚDO DE LEITURA
   ========================================================== */

.ayw-wiki-content {
    width: 100%;
    max-width: 780px;
    min-width: 0;

    margin-right: auto;
    margin-left: auto;

    color: var(--ayw-text-soft);

    font-size: var(--ayw-font-size-md);
    line-height: 1.75;

    overflow-wrap: anywhere;
}


/* ==========================================================
   TÍTULOS DO CONTEÚDO
   ========================================================== */

.ayw-wiki-content h2,
.ayw-wiki-content h3,
.ayw-wiki-content h4 {
    color: var(--ayw-text);

    font-weight: var(--ayw-font-weight-bold);
    line-height: var(--ayw-line-height-tight);

    scroll-margin-top:
        calc(
            var(--ayw-navbar-height) +
            var(--ayw-space-6)
        );
}

.ayw-wiki-content h2 {
    margin:
        var(--ayw-space-10)
        0
        var(--ayw-space-4);

    padding-bottom: var(--ayw-space-3);

    border-bottom: 1px solid var(--ayw-border);

    font-size: var(--ayw-font-size-2xl);
}

.ayw-wiki-content h3 {
    margin:
        var(--ayw-space-8)
        0
        var(--ayw-space-3);

    font-size: var(--ayw-font-size-xl);
}

.ayw-wiki-content h4 {
    margin:
        var(--ayw-space-6)
        0
        var(--ayw-space-3);

    font-size: var(--ayw-font-size-lg);
}


/* ==========================================================
   PARÁGRAFOS
   ========================================================== */

.ayw-wiki-content p {
    margin:
        0
        0
        var(--ayw-space-4);
}

.ayw-wiki-content strong {
    color: var(--ayw-text);

    font-weight: var(--ayw-font-weight-semibold);
}

.ayw-wiki-content em {
    color: var(--ayw-text-soft);
}


/* ==========================================================
   LINKS
   ========================================================== */

.ayw-wiki-content a {
    color: var(--ayw-primary);

    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.ayw-wiki-content a:hover {
    color: var(--ayw-primary-hover);
}

.ayw-wiki-content a:focus-visible {
    outline: 3px solid var(--ayw-focus-ring);
    outline-offset: 2px;

    border-radius: var(--ayw-radius-xs);
}


/* ==========================================================
   LISTAS
   ========================================================== */

.ayw-wiki-content ul,
.ayw-wiki-content ol {
    margin:
        0
        0
        var(--ayw-space-5);

    padding-left: var(--ayw-space-6);
}

.ayw-wiki-content li {
    margin-bottom: var(--ayw-space-2);
}

.ayw-wiki-content li::marker {
    color: var(--ayw-primary);

    font-weight: var(--ayw-font-weight-semibold);
}


/* ==========================================================
   CITAÇÃO
   ========================================================== */

.ayw-wiki-content blockquote {
    margin:
        var(--ayw-space-6)
        0;

    padding:
        var(--ayw-space-4)
        var(--ayw-space-5);

    border-left: 4px solid var(--ayw-primary);
    border-radius:
        0
        var(--ayw-radius-md)
        var(--ayw-radius-md)
        0;

    background: var(--ayw-primary-soft);
    color: var(--ayw-text-soft);

    font-size: var(--ayw-font-size-md);
    line-height: var(--ayw-line-height-relaxed);
}

.ayw-wiki-content blockquote > :last-child {
    margin-bottom: 0;
}


/* ==========================================================
   CÓDIGO
   ========================================================== */

.ayw-wiki-content code {
    padding:
        0.15em
        0.4em;

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-xs);

    background: var(--ayw-bg-muted);
    color: var(--ayw-text);

    font-family: var(--ayw-font-mono);
    font-size: 0.9em;
}

.ayw-wiki-content pre {
    max-width: 100%;

    margin:
        var(--ayw-space-5)
        0;

    padding: var(--ayw-space-4);

    overflow-x: auto;

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-bg-muted);
    color: var(--ayw-text);

    font-family: var(--ayw-font-mono);
    font-size: var(--ayw-font-size-sm);
    line-height: 1.6;

    -webkit-overflow-scrolling: touch;
}

.ayw-wiki-content pre code {
    padding: 0;

    border: 0;

    background: transparent;
}


/* ==========================================================
   DIVISOR
   ========================================================== */

.ayw-wiki-content hr {
    height: 1px;

    margin:
        var(--ayw-space-8)
        0;

    border: 0;

    background: var(--ayw-border);
}


/* ==========================================================
   IMAGENS
   ========================================================== */

.ayw-wiki-content figure {
    margin:
        var(--ayw-space-6)
        0;
}

.ayw-wiki-content img {
    display: block;

    max-width: 100%;
    height: auto;

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-bg-muted);
}

.ayw-wiki-content figcaption {
    margin-top: var(--ayw-space-2);

    color: var(--ayw-text-muted);

    font-size: var(--ayw-font-size-xs);
    line-height: var(--ayw-line-height-relaxed);

    text-align: center;
}


/* ==========================================================
   BLOCO INFORMATIVO
   ========================================================== */

.ayw-wiki-note {
    margin:
        var(--ayw-space-5)
        0;

    padding: var(--ayw-space-4);

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-bg-soft);
    color: var(--ayw-text-soft);
}

.ayw-wiki-note.is-info {
    border-color: var(--ayw-primary-border);

    background: var(--ayw-primary-soft);
}

.ayw-wiki-note.is-success {
    border-color: var(
        --ayw-success-border,
        var(--ayw-success)
    );

    background: var(--ayw-success-soft);
}

.ayw-wiki-note.is-warning {
    border-color: var(
        --ayw-warning-border,
        var(--ayw-warning)
    );

    background: var(--ayw-warning-soft);
}

.ayw-wiki-note.is-danger {
    border-color: var(
        --ayw-danger-border,
        var(--ayw-danger)
    );

    background: var(--ayw-danger-soft);
}

.ayw-wiki-note-header {
    display: flex;
    align-items: center;

    gap: var(--ayw-space-2);

    margin-bottom: var(--ayw-space-2);

    color: var(--ayw-text);

    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-semibold);
}

.ayw-wiki-note-text {
    margin: 0;

    font-size: var(--ayw-font-size-sm);
    line-height: var(--ayw-line-height-relaxed);
}


/* ==========================================================
   NAVEGAÇÃO ENTRE ARTIGOS
   ========================================================== */

.ayw-wiki-pagination {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr);

    gap: var(--ayw-space-3);

    margin-top: var(--ayw-space-8);
    padding-top: var(--ayw-space-5);

    border-top: 1px solid var(--ayw-border);
}

.ayw-wiki-pagination-link {
    display: flex;
    flex-direction: column;

    min-width: 0;

    gap: var(--ayw-space-1);

    padding: var(--ayw-space-4);

    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);

    background: var(--ayw-bg-soft);
    color: var(--ayw-text);

    text-decoration: none;

    transition:
        border-color var(--ayw-transition-fast),
        background-color var(--ayw-transition-fast),
        transform var(--ayw-transition-fast);
}

.ayw-wiki-pagination-link:hover {
    border-color: var(--ayw-primary-border);

    background: var(--ayw-primary-soft);

    transform: translateY(-1px);
}

.ayw-wiki-pagination-link:focus-visible {
    outline: 3px solid var(--ayw-focus-ring);
    outline-offset: 2px;
}

.ayw-wiki-pagination-label {
    color: var(--ayw-text-muted);

    font-size: var(--ayw-font-size-xs);
    font-weight: var(--ayw-font-weight-semibold);
    letter-spacing: 0.05em;

    text-transform: uppercase;
}

.ayw-wiki-pagination-title {
    min-width: 0;

    overflow: hidden;

    color: var(--ayw-text);

    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-semibold);
    line-height: var(--ayw-line-height-tight);

    text-overflow: ellipsis;
    white-space: nowrap;
}


/* ==========================================================
   MOBILE COMPACTO
   ========================================================== */

@media (max-width: 639px) {
    .ayw-wiki-page,
    .ayw-wiki-layout {
        gap: var(--ayw-space-3);
    }

    .ayw-wiki-header,
    .ayw-wiki-article,
    .ayw-wiki-sidebar {
        padding: var(--ayw-space-3);

        border-radius: var(--ayw-radius-md);
    }

    .ayw-wiki-title {
        font-size: var(--ayw-font-size-2xl);
    }

    .ayw-wiki-content {
        font-size: var(--ayw-font-size-sm);
        line-height: 1.7;
    }

    .ayw-wiki-content h2 {
        font-size: var(--ayw-font-size-xl);
    }

    .ayw-wiki-content h3 {
        font-size: var(--ayw-font-size-lg);
    }

    .ayw-wiki-content blockquote,
    .ayw-wiki-note {
        padding: var(--ayw-space-3);
    }
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (min-width: 768px) {
    .ayw-wiki-header,
    .ayw-wiki-article {
        padding: var(--ayw-space-6);

        border-radius: var(--ayw-radius-xl);
    }

    .ayw-wiki-pagination {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .ayw-wiki-pagination-link.is-next {
        text-align: right;
    }
}


/* ==========================================================
   DESKTOP
   ========================================================== */

@media (min-width: 1200px) {
    .ayw-wiki-layout {
        grid-template-columns:
            minmax(220px, 280px)
            minmax(0, 1fr);

        gap: var(--ayw-space-6);
    }

    .ayw-wiki-sidebar {
        position: sticky;

        top:
            calc(
                var(--ayw-navbar-height) +
                var(--ayw-space-4)
            );

        max-height:
            calc(
                100dvh -
                var(--ayw-navbar-height) -
                var(--ayw-space-8)
            );

        overflow-y: auto;

        overscroll-behavior: contain;
    }
}


/* ==========================================================
   IMPRESSÃO
   ========================================================== */

@media print {
    .ayw-wiki-sidebar,
    .ayw-wiki-header-actions,
    .ayw-wiki-pagination {
        display: none;
    }

    .ayw-wiki-layout {
        display: block;
    }

    .ayw-wiki-article {
        padding: 0;

        border: 0;

        box-shadow: none;
    }

    .ayw-wiki-content {
        max-width: none;

        color: #000000;
    }
}


/* ==========================================================
   MOVIMENTO REDUZIDO
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .ayw-wiki-nav-link,
    .ayw-wiki-pagination-link {
        transition: none;
    }
}


/* ==========================================================
   ÍNDICE DA WIKI
   ========================================================== */

.ayw-wiki-index {
    max-width: var(--ayw-container-lg);
    margin-inline: auto;
    padding: var(--ayw-space-4);
}

.ayw-wiki-index-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 90% 10%, var(--ayw-primary-soft), transparent 34%),
        var(--ayw-surface);
}

.ayw-wiki-index-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ayw-space-2);
}

.ayw-wiki-search-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ayw-space-4);
    padding: var(--ayw-space-4);
}

.ayw-wiki-search-copy,
.ayw-wiki-search-field {
    min-width: 0;
}

.ayw-wiki-search-field {
    display: flex;
    gap: var(--ayw-space-2);
}

.ayw-wiki-search-field .ayw-input {
    flex: 1 1 auto;
}

.ayw-wiki-index-section-header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: var(--ayw-space-3);
    margin-bottom: var(--ayw-space-4);
}

.ayw-wiki-index-section-title {
    margin: 0;
    color: var(--ayw-text);
    font-size: clamp(var(--ayw-font-size-xl), 4vw, var(--ayw-font-size-2xl));
    line-height: var(--ayw-line-height-tight);
}

.ayw-wiki-topic-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ayw-space-3);
}

.ayw-wiki-topic-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: var(--ayw-space-2) var(--ayw-space-3);
    min-width: 0;
    padding: var(--ayw-space-4);
    color: var(--ayw-text);
    text-decoration: none;
    transition:
        border-color var(--ayw-transition-fast),
        box-shadow var(--ayw-transition-fast),
        transform var(--ayw-transition-fast);
}

.ayw-wiki-topic-card:hover {
    border-color: var(--ayw-primary-border);
    box-shadow: var(--ayw-shadow-md);
    text-decoration: none;
    transform: translateY(-2px);
}

.ayw-wiki-topic-card:focus-visible {
    outline: 3px solid var(--ayw-focus-ring);
    outline-offset: 3px;
}

.ayw-wiki-topic-card[hidden] {
    display: none;
}

.ayw-wiki-topic-icon {
    display: grid;
    place-items: center;
    grid-row: 1 / span 4;
    width: 44px;
    height: 44px;
    border-radius: var(--ayw-radius-md);
    background: var(--ayw-primary-soft);
    color: var(--ayw-primary);
    font-size: var(--ayw-font-size-lg);
    font-weight: var(--ayw-font-weight-bold);
}

.ayw-wiki-topic-card .ayw-badge {
    justify-self: start;
}

.ayw-wiki-topic-card h3,
.ayw-wiki-topic-card p {
    min-width: 0;
    margin: 0;
}

.ayw-wiki-topic-card h3 {
    color: var(--ayw-text);
    font-size: var(--ayw-font-size-lg);
    line-height: var(--ayw-line-height-tight);
}

.ayw-wiki-topic-card p {
    color: var(--ayw-text-muted);
    font-size: var(--ayw-font-size-sm);
    line-height: var(--ayw-line-height-relaxed);
}

.ayw-wiki-topic-link {
    color: var(--ayw-primary);
    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-semibold);
}

.ayw-wiki-empty {
    margin-top: var(--ayw-space-4);
}


/* ==========================================================
   ADAPTADOR DOS ARTIGOS EXISTENTES

   Centraliza no AYW System o visual dos artigos históricos.
   As classes de conteúdo são preservadas por compatibilidade
   editorial; cores, espaçamento e layout vêm dos tokens AYW.
   ========================================================== */

.wiki-page {
    width: 100%;
    min-width: 0;
    padding: var(--ayw-space-4);
    color: var(--ayw-text);
}

.wiki-page > .container {
    display: flex;
    flex-direction: column;
    width: min(100%, var(--ayw-container-lg));
    min-width: 0;
    margin-inline: auto;
    gap: var(--ayw-space-4);
}

.wiki-page .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ayw-space-1);
    margin: 0;
    padding: 0;
    color: var(--ayw-text-muted);
    font-size: var(--ayw-font-size-sm);
    list-style: none;
}

.wiki-page .breadcrumb-item {
    display: inline-flex;
    align-items: center;
    gap: var(--ayw-space-1);
}

.wiki-page .breadcrumb-item + .breadcrumb-item::before {
    content: "/";
    color: var(--ayw-text-subtle);
}

.wiki-page .breadcrumb a {
    color: var(--ayw-primary);
    text-decoration: none;
}

.wiki-page .wiki-hero {
    padding: var(--ayw-space-5);
    overflow: hidden;
    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-xl);
    background:
        radial-gradient(circle at 92% 8%, var(--ayw-primary-soft), transparent 38%),
        var(--ayw-surface);
    box-shadow: var(--ayw-shadow-sm);
}

.wiki-page .wiki-hero > .d-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ayw-space-4);
}

.wiki-page .wiki-hero > .d-flex > :first-child {
    flex: 1 1 34rem;
    min-width: 0;
}

.wiki-page .wiki-kicker {
    display: block;
    margin-bottom: var(--ayw-space-2);
    color: var(--ayw-primary) !important;
    font-size: var(--ayw-font-size-xs) !important;
    font-weight: var(--ayw-font-weight-bold) !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.wiki-page .wiki-hero h1 {
    max-width: 900px;
    margin: 0 0 var(--ayw-space-3);
    color: var(--ayw-text);
    font-size: clamp(var(--ayw-font-size-2xl), 5vw, var(--ayw-font-size-4xl));
    line-height: var(--ayw-line-height-tight);
    letter-spacing: -.025em;
}

.wiki-page .wiki-hero p {
    max-width: 72ch !important;
    color: var(--ayw-text-muted) !important;
    line-height: var(--ayw-line-height-relaxed);
}

.wiki-page .wk-chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ayw-space-2);
    margin-block: var(--ayw-space-3);
}

.wiki-page .wk-chip,
.wiki-page .wk-pill,
.wiki-page .wk-badge,
.wiki-page .updated-pill,
.wiki-page .badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    gap: var(--ayw-space-1);
    padding: .35rem .65rem;
    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-pill);
    background: var(--ayw-bg-soft);
    color: var(--ayw-text-soft);
    font-size: var(--ayw-font-size-xs);
    font-weight: var(--ayw-font-weight-semibold);
    line-height: 1.2;
}

.wiki-page .wk-chip .dot,
.wiki-page .wk-dot,
.wiki-page .dot2 {
    width: .45rem;
    height: .45rem;
    flex: 0 0 auto;
    border-radius: var(--ayw-radius-pill);
    background: var(--ayw-primary);
}

.wiki-page > .container > .row,
.wiki-page .container > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: var(--ayw-space-4);
    min-width: 0;
}

.wiki-page .col-12,
.wiki-page .col-lg-8,
.wiki-page .col-lg-4,
.wiki-page main,
.wiki-page aside {
    min-width: 0;
}

.wiki-page .wiki-card,
.wiki-page .wk-mini,
.wiki-page .wk-callout,
.wiki-page .wiki-soft {
    overflow: hidden;
    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-lg);
    background: var(--ayw-surface);
    box-shadow: var(--ayw-shadow-xs);
}

.wiki-page .wiki-card {
    margin-bottom: var(--ayw-space-4);
}

.wiki-page .card-body,
.wiki-page .wk-mini,
.wiki-page .wk-callout,
.wiki-page .wiki-soft {
    padding: var(--ayw-space-4);
}

.wiki-page .wiki-card h2,
.wiki-page .wiki-card h3,
.wiki-page .wiki-card h4 {
    color: var(--ayw-text);
    line-height: var(--ayw-line-height-tight);
    scroll-margin-top: calc(var(--ayw-navbar-height) + var(--ayw-space-4));
}

.wiki-page .wiki-card h2 {
    margin: 0 0 var(--ayw-space-3);
    font-size: var(--ayw-font-size-xl);
}

.wiki-page .wiki-card h3,
.wiki-page .wiki-card h4 {
    margin: var(--ayw-space-4) 0 var(--ayw-space-2);
}

.wiki-page .wiki-card p,
.wiki-page .wiki-card li,
.wiki-page .wk-mini,
.wiki-page .wk-callout {
    color: var(--ayw-text-soft);
    line-height: var(--ayw-line-height-relaxed);
}

.wiki-page .wiki-card a {
    color: var(--ayw-primary);
    overflow-wrap: anywhere;
}

.wiki-page .wiki-section-title {
    display: flex;
    align-items: center;
    gap: var(--ayw-space-2);
}

.wiki-page .wiki-section-title .dot {
    width: .55rem;
    height: .55rem;
    flex: 0 0 auto;
    border-radius: var(--ayw-radius-pill);
    background: var(--ayw-primary);
    box-shadow: 0 0 0 var(--ayw-space-1) var(--ayw-primary-soft);
}

.wiki-page .wiki-note,
.wiki-page .alert {
    padding: var(--ayw-space-3);
    border: 1px solid var(--ayw-primary-border);
    border-left: 4px solid var(--ayw-primary);
    border-radius: var(--ayw-radius-md);
    background: var(--ayw-primary-soft);
}

.wiki-page .alert-warning {
    border-color: var(--ayw-warning-border);
    border-left-color: var(--ayw-warning);
    background: var(--ayw-warning-soft);
}

.wiki-page .wiki-list,
.wiki-page .wiki-card ul,
.wiki-page .wiki-card ol {
    padding-left: 1.25rem;
}

.wiki-page .wiki-card li + li {
    margin-top: var(--ayw-space-2);
}

.wiki-page .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ayw-space-3);
}

.wiki-page .wk-grid2 {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ayw-space-3);
}

.wiki-page .d-flex {
    display: flex;
}

.wiki-page .flex-wrap {
    flex-wrap: wrap;
}

.wiki-page .align-items-center {
    align-items: center;
}

.wiki-page .justify-content-between {
    justify-content: space-between;
}

.wiki-page .gap-2,
.wiki-page .gap-3 {
    gap: var(--ayw-space-2);
}

.wiki-page .text-muted,
.wiki-page .small,
.wiki-page .form-text {
    color: var(--ayw-text-muted) !important;
}

.wiki-page .small {
    font-size: var(--ayw-font-size-sm);
}

.wiki-page .mb-0 { margin-bottom: 0; }
.wiki-page .mb-1 { margin-bottom: var(--ayw-space-1); }
.wiki-page .mb-2 { margin-bottom: var(--ayw-space-2); }
.wiki-page .mb-3 { margin-bottom: var(--ayw-space-3); }
.wiki-page .mt-2 { margin-top: var(--ayw-space-2); }
.wiki-page .mt-3 { margin-top: var(--ayw-space-3); }
.wiki-page .mt-4 { margin-top: var(--ayw-space-4); }
.wiki-page .p-3 { padding: var(--ayw-space-3); }
.wiki-page .h-100 { height: 100%; }
.wiki-page .text-end { text-align: right; }
.wiki-page .list-unstyled { padding-left: 0; list-style: none; }
.wiki-page .d-block { display: block; }
.wiki-page .d-inline-block { display: inline-block; }
.wiki-page .flex-grow-1 { flex: 1 1 auto; }

.wiki-page .fw-semibold,
.wiki-page .fw-bold {
    font-weight: var(--ayw-font-weight-semibold);
}

.wiki-page .table-responsive {
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
}

.wiki-page table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--ayw-font-size-sm);
}

.wiki-page th,
.wiki-page td {
    padding: var(--ayw-space-3);
    border-bottom: 1px solid var(--ayw-border);
    text-align: left;
    vertical-align: top;
}

.wiki-page th {
    background: var(--ayw-bg-soft);
    color: var(--ayw-text);
    font-weight: var(--ayw-font-weight-semibold);
}

.wiki-page .form-control,
.wiki-page .form-select {
    width: 100%;
    min-height: 44px;
    padding: .7rem .85rem;
    border: 1px solid var(--ayw-border-strong);
    border-radius: var(--ayw-radius-md);
    background: var(--ayw-surface);
    color: var(--ayw-text);
    font: inherit;
}

.wiki-page .form-label {
    display: block;
    margin-bottom: var(--ayw-space-1);
    color: var(--ayw-text-soft);
    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-medium);
}

.wiki-page .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: .6rem 1rem;
    border: 1px solid var(--ayw-border);
    border-radius: var(--ayw-radius-md);
    background: var(--ayw-surface);
    color: var(--ayw-text);
    font: inherit;
    font-size: var(--ayw-font-size-sm);
    font-weight: var(--ayw-font-weight-semibold);
    cursor: pointer;
}

.wiki-page .btn-primary {
    border-color: var(--ayw-primary);
    background: var(--ayw-primary);
    color: var(--ayw-text-inverse);
}

.wiki-page .wiki-toc {
    display: flex;
    flex-direction: column;
    gap: var(--ayw-space-1);
}

.wiki-page .wiki-toc a {
    display: block;
    padding: var(--ayw-space-2) var(--ayw-space-3);
    border-radius: var(--ayw-radius-md);
    color: var(--ayw-text-soft);
    text-decoration: none;
}

.wiki-page .wiki-toc a:hover {
    background: var(--ayw-bg-soft);
    color: var(--ayw-primary);
}

.wiki-page .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media (min-width: 768px) {
    .ayw-wiki-index,
    .wiki-page {
        padding: var(--ayw-space-5);
    }
    .ayw-wiki-search-card {
        grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr);
        align-items: center;
        padding: var(--ayw-space-5);
    }

    .ayw-wiki-topic-grid,
    .wiki-page .row,
    .wiki-page .wk-grid2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wiki-page .wiki-hero,
    .wiki-page .card-body {
        padding: var(--ayw-space-5);
    }
}

@media (min-width: 1200px) {
    .ayw-wiki-topic-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .wiki-page > .container > .row,
    .wiki-page .container > .row {
        grid-template-columns: minmax(0, 2fr) minmax(250px, .75fr);
        gap: var(--ayw-space-5);
    }

    .wiki-page aside .wiki-sticky,
    .wiki-page aside > .wiki-card:first-child {
        position: sticky;
        top: calc(var(--ayw-navbar-height) + var(--ayw-space-4));
    }

    .wiki-page .row .col-md-3,
    .wiki-page .row .col-md-4,
    .wiki-page .row .col-md-6 {
        min-width: 0;
    }
}
