/**
Theme Name: Astra Child - Web-ZoneWare
Theme URI: https://webzoneware.com/
Author: Ecossistema Economaster
Author URI: https://economaster.com.br/
Description: Tema filho ultra-otimizado para o portal Web-ZoneWare (Dev Tools, Web Academy, Hardware, Software & IA). Foco em Core Web Vitals 100/100, Zero Iframes e Arquitetura Modular Nativa.
Version: 2.1.8
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ==========================================================================
   1. BLINDAGEM DE LAYOUT, CONTRASTE (WCAG AAA) E PREVENÇÃO DE CLS
   ========================================================================== */

body {
    background-color: #f8fafc;
    color: var(--ui-gray-800, #1e293b);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.7;
    overflow-x: hidden;
}

/* Reserva de altura mínima do conteúdo principal para eliminar CLS no carregamento */
#content,
.site-content {
    min-height: 75vh;
}

/* Títulos com alto contraste */
h1, h2, h3, h4, h5, h6,
.entry-title,
.entry-title a {
    color: var(--ui-gray-900, #0f172a);
    font-weight: 800;
    line-height: 1.3;
}

/* Links editoriais no conteúdo com sublinhado semântico e alto contraste (exceto na Home para preservar os cards) */
body:not(.home) .entry-content a:not([class*="ui-"]):not([class*="wzw-"]):not(.wp-block-button__link) {
    color: var(--site-primary, #0284c7);
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 600;
    transition: color 0.15s ease;
}

body:not(.home) .entry-content a:not([class*="ui-"]):not([class*="wzw-"]):not(.wp-block-button__link):hover {
    color: var(--site-primary-hover, #0369a1);
}

/* ==========================================================================
   1. HARMONIZAÇÃO DE LARGURA 100% FLUIDA, ELIMINAÇÃO DO CONTAINER ESTREITO (NARROW)
      E DESATIVAÇÃO DO DUPLO PADDING (5.34em 6.67em) DO TEMA PAI ASTRA
   Garante alinhamento milimétrico com as margens fluidas do Cabeçalho e Rodapé
   ========================================================================== */

/* 1.1 Container Global do Conteúdo Astra: 100% de largura alinhado ao Header e Footer */
.ast-container,
.site-content .ast-container,
#content .ast-container,
.ast-separate-container .site-content .ast-container,
.ast-plain-container .site-content .ast-container,
.ast-narrow-container .site-content .ast-container,
.ast-narrow-container #content .ast-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding-left: clamp(16px, 3.5vw, 48px) !important;
    padding-right: clamp(16px, 3.5vw, 48px) !important;
    box-sizing: border-box !important;
}

/* 1.2 Neutralização Absoluta do Duplo/Triplo Padding do Astra Pai em Artigos e Páginas */
/* Elimina os 5.34em 6.67em (~107px) que espremiam o texto em colunas estreitas */
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.ast-plain-container .ast-article-single,
.ast-plain-container .ast-article-post,
.ast-article-single,
.ast-article-post,
.ast-article-inner,
.ast-separate-container .ast-article-single .ast-article-inner,
.ast-separate-container .ast-article-post .ast-article-inner,
article.post,
article.page {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 1.3 Miolo do Conteúdo (.entry-content) e Quebra de Restrições Gutenberg / Astra */
/* Garante que parágrafos, cabeçalhos, listas, blocos e tabelas ocupem 100% da área útil */
.entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.entry-content > *,
.entry-content > *:not(.alignwide):not(.alignfull),
.wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.ast-plain-container .entry-content > *:not(.alignwide):not(.alignfull),
.ast-separate-container .entry-content > *:not(.alignwide):not(.alignfull),
.ast-narrow-container .entry-content > *:not(.alignwide):not(.alignfull) {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Alinhamentos Wide e Full do Gutenberg */
.entry-content .alignwide,
.entry-content .alignfull {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Tipografia Editorial de Alto Rendimento e Escaneabilidade (Aplicado apenas a artigos e páginas, nunca à Home) */
body:not(.home) .entry-content p,
body:not(.home) .entry-content ul,
body:not(.home) .entry-content ol {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #334155;
    margin-bottom: 1.4em;
    word-break: break-word;
}

body:not(.home) .entry-content h2 {
    font-size: clamp(1.45rem, 2.2vw, 1.95rem);
    font-weight: 800;
    color: #0f172a;
    margin-top: 1.8em;
    margin-bottom: 0.6em;
    line-height: 1.3;
}

body:not(.home) .entry-content h3 {
    font-size: clamp(1.2rem, 1.8vw, 1.55rem);
    font-weight: 700;
    color: #1e293b;
    margin-top: 1.5em;
    margin-bottom: 0.5em;
    line-height: 1.35;
}

body:not(.home) .entry-content h4,
body:not(.home) .entry-content h5,
body:not(.home) .entry-content h6 {
    font-weight: 700;
    color: #334155;
    margin-top: 1.3em;
    margin-bottom: 0.4em;
}

/* Cabeçalho do Artigo / Página (Entry Header) */
.entry-header {
    margin-bottom: 24px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    width: 100% !important;
}

.entry-header .entry-title {
    font-size: clamp(1.75rem, 3.2vw, 2.65rem) !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em !important;
    color: #0f172a !important;
    margin-bottom: 12px !important;
}

.entry-meta {
    font-size: 0.88rem !important;
    color: #64748b !important;
}

/* Imagens, Vídeos e Tabelas Fluidas */
.entry-content img,
.entry-content video,
.entry-content iframe,
.entry-content figure {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 10px;
}

.entry-content table {
    width: 100% !important;
    max-width: 100% !important;
    border-collapse: collapse;
    margin: 24px 0 !important;
    display: table;
    overflow-x: auto;
}

/* 1.4 ÁREA DE COMENTÁRIOS, NAVEGAÇÃO DE POSTS E CAIXA DO AUTOR DO ASTRA */
.ast-separate-container .comments-area,
.ast-separate-container .ast-author-box,
.ast-separate-container .post-navigation,
.ast-single-post-order,
.comments-area {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 24px 0 0 0 !important;
    margin-top: 28px !important;
    border-top: 1px solid #f1f5f9 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* 1.5 LAYOUT COM BARRA LATERAL (Single Posts, Páginas e Categorias) */
@media (min-width: 993px) {
    body.ast-right-sidebar #content .ast-container,
    body.ast-left-sidebar #content .ast-container {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: clamp(24px, 2.5vw, 40px) !important;
        align-items: flex-start !important;
        padding-top: 28px !important;
        padding-bottom: 48px !important;
    }

    body.ast-right-sidebar #primary,
    body.ast-left-sidebar #primary {
        width: calc(100% - 340px - clamp(24px, 2.5vw, 40px)) !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: clamp(24px, 3vw, 44px) !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 16px !important;
        box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
        box-sizing: border-box !important;
    }

    body.ast-right-sidebar #secondary,
    body.ast-left-sidebar #secondary {
        width: 340px !important;
        flex: 0 0 340px !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }
}

/* 1.6 LAYOUT SEM BARRA LATERAL (Posts e Páginas Individuais No-Sidebar) */
/* Cria um card branco amplo, moderno e imersivo aproveitando 100% da largura útil */
@media (min-width: 993px) {
    body.ast-no-sidebar:not(.page-template-template-hub-imagens):not(.page-template-template-hub-pdf):not(.page-template-template-hub-dev):not(.page-template-template-hub-academy):not(.page-template-template-academy-aula):not(.page-template-template-home-webzoneware):not(.wzw-layout-fullwidth) #content .ast-container {
        padding-top: 28px !important;
        padding-bottom: 48px !important;
    }

    body.ast-no-sidebar:not(.page-template-template-hub-imagens):not(.page-template-template-hub-pdf):not(.page-template-template-hub-dev):not(.page-template-template-hub-academy):not(.page-template-template-academy-aula):not(.page-template-template-home-webzoneware):not(.wzw-layout-fullwidth) #primary {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: clamp(28px, 3.5vw, 56px) !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 16px !important;
        box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
        box-sizing: border-box !important;
    }
}

/* 1.7 TEMPLATES ESPECIAIS FULL-WIDTH (Hubs, Home Dev Studio, Sala de Aula Virtual) */
body.wzw-layout-fullwidth #primary,
body.ast-page-builder-template #primary,
body.page-template-template-hub-imagens #primary,
body.page-template-template-hub-pdf #primary,
body.page-template-template-hub-dev #primary,
body.page-template-template-hub-academy #primary,
body.page-template-template-academy-aula #primary,
body.page-template-template-home-webzoneware #primary {
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 32px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 1.8 RESPONSIVIDADE MOBILE E TABLET (<= 992px) */
@media (max-width: 992px) {
    .ast-container,
    .site-content .ast-container,
    #content .ast-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.ast-right-sidebar #primary,
    body.ast-left-sidebar #primary,
    body.ast-no-sidebar:not(.page-template-template-hub-imagens):not(.page-template-template-hub-pdf):not(.page-template-template-hub-dev):not(.page-template-template-hub-academy):not(.page-template-template-academy-aula):not(.page-template-template-home-webzoneware):not(.wzw-layout-fullwidth) #primary {
        width: 100% !important;
        max-width: 100% !important;
        padding: 20px 16px !important;
        margin-top: 16px !important;
        margin-bottom: 24px !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 14px !important;
        box-sizing: border-box !important;
    }

    body.ast-right-sidebar #secondary,
    body.ast-left-sidebar #secondary {
        width: 100% !important;
        margin-top: 24px !important;
        padding: 0 !important;
    }
}

/* ==========================================================================
   2. ACESSIBILIDADE WCAG AAA: ALTO CONTRASTE EM BLOCOS E CAIXAS DE CÓDIGO
   Garante legibilidade máxima em caixas de código com fundo claro/branco
   ========================================================================== */

/* Fonte monospace padronizada e nítida para todos os elementos de código */
code,
kbd,
samp,
pre,
textarea.wzw-tool-textarea,
.wzw-code-output pre,
.wp-block-code,
.wp-block-preformatted {
    font-family: ui-monospace, SFMono-Regular, "Fira Code", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

/* 2.1 CAIXAS DE CÓDIGO COM FUNDO CLARO / BRANCO (Posts, Páginas, Blocos Gutenberg e Ferramentas) */
/* Elimina a fonte clara/apagada e impõe contraste de 16:1 contra fundos claros */
.entry-content pre:not([class*="dark"]):not(.is-dark),
.wp-block-code:not([class*="dark"]):not(.is-dark),
.wp-block-preformatted:not([class*="dark"]):not(.is-dark),
pre:not([class*="dark"]):not(.is-dark),
.wzw-code-output.is-light pre,
.wzw-code-box.is-light {
    background-color: #f8fafc !important;
    color: #0f172a !important; /* Deep Slate 900 - Legibilidade absoluta */
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 16px 20px !important;
    font-size: 0.92rem !important;
    font-weight: 600 !important;
    line-height: 1.65 !important;
    overflow-x: auto !important;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04) !important;
}

/* Código dentro de blocos PRE com fundo claro */
.entry-content pre:not([class*="dark"]):not(.is-dark) code,
.wp-block-code:not([class*="dark"]):not(.is-dark) code,
pre:not([class*="dark"]):not(.is-dark) code {
    background-color: transparent !important;
    color: #0f172a !important;
    font-size: inherit !important;
    font-weight: 600 !important;
    border: none !important;
    padding: 0 !important;
    line-height: inherit !important;
}

/* 2.2 CÓDIGO INLINE (ex: <code>tag</code> dentro do texto de artigos e tutoriais) */
.entry-content code:not(pre code),
.wzw-tool-app code:not(pre code),
p code,
li code,
td code,
th code {
    background-color: #f1f5f9 !important;
    color: #0f172a !important; /* Alto contraste garantido */
    font-weight: 700 !important;
    font-size: 0.88em !important;
    padding: 2px 7px !important;
    border-radius: 5px !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05) !important;
    word-break: break-word !important;
}

/* 2.3 TEXTAREAS E CAIXAS DE ENTRADA/SAÍDA COM FUNDO CLARO */
.wzw-tool-textarea:not(.is-dark),
textarea.wzw-tool-textarea:not(.is-dark),
.entry-content textarea:not(.is-dark) {
    background-color: #ffffff !important;
    color: #0f172a !important; /* Texto preto/slate ultra nítido */
    font-weight: 600 !important;
    border: 1.5px solid #cbd5e1 !important;
    font-size: 0.92rem !important;
}

/* Placeholders claros nítidos (nunca invisíveis ou desbotados) */
.wzw-tool-textarea:not(.is-dark)::placeholder,
textarea.wzw-tool-textarea:not(.is-dark)::placeholder,
.entry-content textarea:not(.is-dark)::placeholder {
    color: #64748b !important;
    font-weight: 500 !important;
    opacity: 1 !important;
}

/* Foco em textareas com fundo claro */
.wzw-tool-textarea:not(.is-dark):focus,
textarea.wzw-tool-textarea:not(.is-dark):focus {
    border-color: #0284c7 !important;
    box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15) !important;
}

/* 2.4 CAIXAS DE CÓDIGO E TEXTAREAS ESCUROS (IDE / Terminal Dark Mode) */
/* Mantém o visual VS Code Dark preservando contraste nítido */
pre.is-dark,
.is-dark pre,
.wzw-code-output pre,
.wzw-tool-textarea.is-dark,
textarea.is-dark {
    background-color: #090d16 !important;
    color: #38bdf8 !important; /* Cyan brilhante no escuro */
    font-weight: 600 !important;
}

pre.is-dark code,
.wzw-code-output pre code {
    background-color: transparent !important;
    color: #38bdf8 !important;
    border: none !important;
}

.wzw-tool-textarea.is-dark::placeholder,
textarea.is-dark::placeholder {
    color: #475569 !important;
    opacity: 1 !important;
}

/* ==========================================================================
   3. WEB ACADEMY — SALA DE AULA VIRTUAL (LAYOUT TRÍADE)
   ========================================================================== */
.wzw-academy-classroom {
    display: flex;
    gap: clamp(24px, 2.5vw, 36px);
    width: 100%;
    max-width: 100%;
    margin: 20px auto 60px;
    padding: 0 clamp(16px, 3.5vw, 48px);
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #1e293b;
}

/* 1. Sidebar Esquerda */
.wzw-academy-sidebar {
    width: 290px;
    flex-shrink: 0;
    background: #0f172a;
    border: 1px solid #1e293b;
    border-radius: 14px;
    padding: 20px 16px;
    height: fit-content;
    position: sticky;
    top: 24px;
    color: #f8fafc;
}
.wzw-track-badge {
    display: inline-block;
    background: rgba(56, 189, 248, 0.15);
    border: 1px solid rgba(56, 189, 248, 0.4);
    color: #38bdf8;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 6px;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.wzw-sidebar-title {
    font-size: 18px;
    font-weight: 800;
    color: #f8fafc;
    margin: 0 0 12px;
}
.wzw-progress-mini {
    margin-bottom: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid #1e293b;
}
.wzw-progress-text {
    font-size: 11px;
    color: #94a3b8;
    display: block;
    margin-bottom: 6px;
}
.wzw-progress-bar {
    width: 100%;
    height: 6px;
    background: #334155;
    border-radius: 3px;
    overflow: hidden;
}
.wzw-progress-fill {
    height: 100%;
    background: #38bdf8;
}
.wzw-group-title {
    font-size: 11px;
    text-transform: uppercase;
    color: #64748b;
    font-weight: 800;
    letter-spacing: 0.5px;
    margin: 16px 0 8px;
}
.wzw-lesson-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.wzw-lesson-list li {
    margin-bottom: 4px;
}
.wzw-lesson-list a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 8px;
    color: #cbd5e1;
    text-decoration: none;
    font-size: 13px;
    transition: all 0.2s ease;
}
.wzw-lesson-list a:hover {
    background: #1e293b;
    color: #38bdf8;
}
.wzw-lesson-list li.active a {
    background: #0284c7;
    color: #ffffff;
    font-weight: 700;
}
.wzw-lesson-num {
    font-size: 11px;
    opacity: 0.7;
    font-family: monospace;
}
.wzw-active-indicator {
    margin-left: auto;
    font-size: 12px;
}

/* 2. Miolo Didático Central */
.wzw-academy-content {
    flex: 1;
    min-width: 0;
}
.wzw-breadcrumbs {
    font-size: 12px;
    color: #64748b;
    margin-bottom: 16px;
}
.wzw-breadcrumbs a {
    color: #0284c7;
    text-decoration: none;
}
.wzw-badge-lesson {
    display: inline-block;
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 6px;
    margin-bottom: 10px;
}
.wzw-lesson-header h1 {
    font-size: 32px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.25;
    margin: 0 0 12px;
}
.wzw-lesson-lead {
    font-size: 16px;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e2e8f0;
}
.wzw-section-block {
    margin-bottom: 34px;
}
.wzw-section-block h2 {
    font-size: 22px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 14px;
}
.wzw-section-block p {
    font-size: 15px;
    line-height: 1.7;
    color: #334155;
    margin-bottom: 14px;
}

/* Callouts / Caixas de Destaque */
.wzw-callout {
    display: flex;
    gap: 14px;
    padding: 16px 18px;
    border-radius: 10px;
    margin: 20px 0;
    font-size: 14px;
    line-height: 1.6;
}
.wzw-callout-icon {
    font-size: 24px;
    flex-shrink: 0;
}
.wzw-callout-info {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    color: #166534;
}
.wzw-callout-pro {
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-left: 4px solid #0284c7;
    color: #1e293b;
}

/* Diagrama da Tag */
.wzw-diagram-box {
    background: #0f172a;
    border-radius: 12px;
    padding: 24px 20px;
    text-align: center;
    margin: 22px 0;
}
.wzw-diagram-tag {
    font-family: monospace;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}
.tag-open { color: #38bdf8; background: rgba(56, 189, 248, 0.15); padding: 4px 8px; border-radius: 6px; }
.tag-content { color: #f8fafc; padding: 4px 10px; }
.tag-close { color: #f43f5e; background: rgba(244, 63, 94, 0.15); padding: 4px 8px; border-radius: 6px; }
.wzw-diagram-labels {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    color: #94a3b8;
    max-width: 520px;
    margin: 0 auto;
}

/* Bloco de Código & Barra do Playground */
.wzw-code-wrapper {
    background: #0b1120;
    border: 1px solid #1e293b;
    border-radius: 12px;
    overflow: hidden;
    margin: 20px 0;
}
.wzw-code-header {
    display: flex;
    justify-content: space-between;
    background: #0f172a;
    padding: 8px 16px;
    font-size: 12px;
    font-family: monospace;
    border-bottom: 1px solid #1e293b;
    color: #94a3b8;
}
.wzw-code-wrapper pre {
    margin: 0;
    padding: 16px;
    background: #0b1120 !important;
    overflow-x: auto;
    font-size: 14px;
    color: #f8fafc;
    font-family: "Fira Code", Consolas, monospace;
}
.wzw-playground-action-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #111827;
    border-top: 1px solid #1f2937;
    padding: 12px 16px;
    gap: 16px;
}
.wzw-playground-desc {
    font-size: 13px;
    color: #9ca3af;
}
.wzw-btn-playground {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #a855f7;
    color: #ffffff !important;
    font-weight: 700;
    font-size: 13px;
    padding: 8px 18px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all 0.2s ease;
    white-space: nowrap;
}
.wzw-btn-playground:hover {
    background: #9333ea;
    box-shadow: 0 4px 12px rgba(168, 85, 247, 0.4);
    transform: translateY(-1px);
}

/* Tabelas Didáticas */
.wzw-table-responsive {
    overflow-x: auto;
    margin: 18px 0;
}
.wzw-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    text-align: left;
}
.wzw-table th {
    background: #f1f5f9;
    color: #334155;
    font-weight: 700;
    padding: 12px 14px;
    border-bottom: 2px solid #cbd5e1;
}
.wzw-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #e2e8f0;
    color: #334155;
    line-height: 1.5;
}
.wzw-table tr:hover td {
    background: #f8fafc;
}

/* 3. Rodapé de Navegação */
.wzw-lesson-footer {
    margin-top: 48px;
    padding-top: 24px;
    border-top: 2px solid #e2e8f0;
}
.wzw-nav-buttons {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}
.wzw-nav-btn {
    display: inline-flex;
    align-items: center;
    padding: 12px 20px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.2s ease;
}
.wzw-btn-prev {
    background: #f1f5f9;
    color: #475569;
}
.wzw-btn-prev:hover {
    background: #e2e8f0;
    color: #0f172a;
}
.wzw-btn-next {
    background: #0284c7;
    color: #ffffff !important;
}
.wzw-btn-next:hover {
    background: #0369a1;
    box-shadow: 0 4px 12px rgba(2, 132, 199, 0.35);
}
.wzw-author-box {
    text-align: center;
    font-size: 12px;
    color: #64748b;
    padding: 14px;
    background: #f8fafc;
    border-radius: 8px;
}

/* Responsividade Mobile */
@media (max-width: 900px) {
    .wzw-academy-classroom {
        flex-direction: column;
    }
    .wzw-academy-sidebar {
        width: 100%;
        position: static;
    }
    .wzw-playground-action-bar {
        flex-direction: column;
        align-items: flex-start;
    }
    .wzw-btn-playground {
        width: 100%;
        justify-content: center;
    }
    .wzw-nav-buttons {
        flex-direction: column;
    }
    .wzw-nav-btn {
        width: 100%;
        justify-content: center;
    }
}

/* BLINDAGEM TOTAL: AUTHOR BOX & RETENTION INTERLINKS NO POST / PÁGINA (WCAG AAA) */
.entry-content .wzw-author-eeat-card,
.wzw-author-eeat-card {
    background: #0f172a !important;
    color: #f8fafc !important;
    border: 1px solid #1e293b !important;
}
.entry-content .wzw-author-eeat-card h3,
.entry-content .wzw-author-eeat-card .wzw-ae-name,
.wzw-author-eeat-card h3,
.wzw-author-eeat-card .wzw-ae-name {
    color: #ffffff !important;
}
.entry-content .wzw-author-eeat-card .wzw-ae-headline,
.wzw-author-eeat-card .wzw-ae-headline {
    color: #94a3b8 !important;
}
.entry-content .wzw-author-eeat-card p,
.entry-content .wzw-author-eeat-card .wzw-ae-bio,
.wzw-author-eeat-card p,
.wzw-author-eeat-card .wzw-ae-bio {
    color: #cbd5e1 !important;
}
.entry-content .wzw-author-eeat-card .wzw-ae-skills-label,
.wzw-author-eeat-card .wzw-ae-skills-label {
    color: #64748b !important;
}
.entry-content .wzw-author-eeat-card .wzw-ae-skill-pill,
.wzw-author-eeat-card .wzw-ae-skill-pill {
    background: #1e293b !important;
    color: #e2e8f0 !important;
    border: 1px solid #334155 !important;
}
.entry-content .wzw-author-eeat-card .wzw-ae-trust-badge,
.wzw-author-eeat-card .wzw-ae-trust-badge {
    color: #94a3b8 !important;
}
.entry-content .wzw-author-eeat-card .wzw-ae-trust-badge strong,
.wzw-author-eeat-card .wzw-ae-trust-badge strong {
    color: #e2e8f0 !important;
}
.entry-content .wzw-author-eeat-card a.wzw-ae-social-btn,
.entry-content .wzw-author-eeat-card .wzw-ae-social-btn,
.wzw-author-eeat-card a.wzw-ae-social-btn,
.wzw-author-eeat-card .wzw-ae-social-btn {
    background: rgba(255, 255, 255, 0.06) !important;
    color: #f1f5f9 !important;
    border: 1px solid #334155 !important;
    text-decoration: none !important;
}
.entry-content .wzw-author-eeat-card a.wzw-ae-social-btn:hover,
.wzw-author-eeat-card a.wzw-ae-social-btn:hover {
    background: #0284c7 !important;
    color: #ffffff !important;
    border-color: #38bdf8 !important;
    text-decoration: none !important;
}

.entry-content .wzw-retention-box,
.wzw-retention-box {
    background: radial-gradient(circle at 10% 15%, rgba(2, 132, 199, 0.12) 0%, rgba(15, 23, 42, 0.98) 75%), #090d16 !important;
    border: 1px solid #1e293b !important;
    color: #f8fafc !important;
}
.entry-content .wzw-retention-box h3,
.entry-content .wzw-retention-box .wzw-rt-title,
.wzw-retention-box h3,
.wzw-retention-box .wzw-rt-title {
    color: #ffffff !important;
}
.entry-content .wzw-retention-box p,
.entry-content .wzw-retention-box .wzw-rt-subtitle,
.wzw-retention-box p,
.wzw-retention-box .wzw-rt-subtitle {
    color: #cbd5e1 !important;
}
.entry-content .wzw-retention-box .wzw-rt-card,
.wzw-retention-box .wzw-rt-card {
    background: #0f172a !important;
    border: 1px solid #1e293b !important;
    color: #f8fafc !important;
}
.entry-content .wzw-retention-box h4,
.entry-content .wzw-retention-box .wzw-rtc-title,
.wzw-retention-box h4,
.wzw-retention-box .wzw-rtc-title {
    color: #ffffff !important;
}
.entry-content .wzw-retention-box .wzw-rtc-desc,
.wzw-retention-box .wzw-rtc-desc {
    color: #94a3b8 !important;
}
.entry-content .wzw-retention-box .wzw-rtc-highlight,
.wzw-retention-box .wzw-rtc-highlight {
    background: rgba(15, 23, 42, 0.6) !important;
    border: 1px solid #1e293b !important;
    color: #e2e8f0 !important;
}
.entry-content .wzw-retention-box .wzw-rtc-highlight span,
.wzw-retention-box .wzw-rtc-highlight span {
    color: #64748b !important;
}
.entry-content .wzw-retention-box .wzw-rtc-highlight strong,
.wzw-retention-box .wzw-rtc-highlight strong {
    color: #f1f5f9 !important;
}
.entry-content .wzw-retention-box a.wzw-rtc-btn,
.wzw-retention-box a.wzw-rtc-btn {
    text-decoration: none !important;
}
.entry-content .wzw-retention-box a.wzw-btn-tool,
.entry-content .wzw-retention-box a.wzw-btn-academy,
.wzw-retention-box a.wzw-btn-tool,
.wzw-retention-box a.wzw-btn-academy {
    background: #0284c7 !important;
    color: #ffffff !important;
    border: 1px solid #0284c7 !important;
}
.entry-content .wzw-retention-box a.wzw-btn-ide,
.wzw-retention-box a.wzw-btn-ide {
    background: #7e22ce !important;
    color: #ffffff !important;
    border: 1px solid #7e22ce !important;
}
.entry-content .wzw-retention-box a.wzw-btn-hub,
.wzw-retention-box a.wzw-btn-hub {
    background: rgba(30, 41, 59, 0.8) !important;
    color: #f8fafc !important;
    border: 1px solid #334155 !important;
}
.entry-content .wzw-retention-box .wzw-rt-footer,
.wzw-retention-box .wzw-rt-footer {
    color: #94a3b8 !important;
}
.entry-content .wzw-retention-box a.wzw-rt-sublink,
.wzw-retention-box a.wzw-rt-sublink {
    color: #38bdf8 !important;
    text-decoration: none !important;
}
