/* ------------------------------ Verbete --------------------------------- */

.verbete-topo { padding: 40px 0 26px; border-bottom: 1px solid var(--linha); }
.verbete-topo h1 { margin: 12px 0 14px; max-width: 26em; }

.verbete-linha-gram { display: flex; flex-wrap: wrap; align-items: baseline; gap: 14px; margin: 0 0 8px; }
.verbete-termo { font-size: 1.2rem; color: var(--marca); font-weight: 800; }
.verbete-pron { font-family: "Iowan Old Style", Georgia, serif; color: var(--texto-suave); }
.verbete-classe {
    font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.1em;
    font-weight: 700; color: var(--texto-suave);
    border-left: 2px solid var(--link); padding-left: 10px;
}
.verbete-alt { font-size: 0.88rem; color: var(--texto-suave); margin: 0 0 12px; }

.verbete-meta {
    display: flex; flex-wrap: wrap; gap: 6px 20px;
    font-size: 0.8rem; color: var(--texto-suave);
    padding: 12px 0; margin-top: 6px;
    border-top: 1px solid var(--linha);
}

.acoes {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    padding-top: 14px; border-top: 1px solid var(--linha);
}
.acoes-rot {
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.12em;
    font-weight: 700; color: var(--texto-suave); margin-right: 4px;
}

.verbete-corpo {
    display: grid; grid-template-columns: minmax(0, 1fr) 320px;
    gap: 48px; padding-top: 40px; padding-bottom: 48px;
}

.bloco { margin-bottom: 34px; }
.bloco h2 {
    font-size: 1.32rem; padding-bottom: 8px; margin-bottom: 14px;
    border-bottom: 1px solid var(--linha);
}
.definicao-curta {
    font-size: 1.2rem; line-height: 1.55; color: var(--texto);
    border-left: 3px solid var(--link);
    padding: 4px 0 4px 18px; margin: 0;
}
.bloco-definicao { padding-bottom: 6px; }

.texto { font-family: "Iowan Old Style", Georgia, "Times New Roman", serif; font-size: 1.06rem; }
.texto p { margin: 0 0 18px; }
.texto h2 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 1.32rem; margin-top: 32px; padding-bottom: 8px;
    border-bottom: 1px solid var(--linha);
}
.texto h3 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 1.1rem; margin-top: 24px;
}
.texto ul, .texto ol { padding-left: 22px; margin: 0 0 18px; }
.texto li { margin-bottom: 8px; }
.texto strong { color: var(--marca); }
.texto blockquote {
    margin: 0 0 18px; padding: 4px 0 4px 18px;
    border-left: 3px solid var(--linha-forte);
    color: var(--texto-suave);
}
.texto table { width: 100%; border-collapse: collapse; margin: 0 0 18px; font-size: 0.95rem; }
.texto th, .texto td { border: 1px solid var(--linha); padding: 10px 12px; text-align: left; }
.texto th { background: var(--fundo-alt); color: var(--marca); }

/* Cartão do verbete (imagem gerada em tempo real) */

.cartao { margin: 0 0 34px; }
.cartao img {
    width: 100%; height: auto;
    aspect-ratio: 1200 / 630;
    border: 1px solid var(--linha);
    border-radius: var(--raio);
    background: var(--fundo-alt);
}
.cartao figcaption {
    display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px;
    padding-top: 10px; margin-top: 10px;
    border-top: 1px solid var(--linha);
}
.cartao-rot {
    font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.14em;
    font-weight: 800; color: var(--marca);
}
.cartao-legenda {
    flex: 1; min-width: 220px;
    font-size: 0.8rem; color: var(--texto-suave);
}
.cartao figcaption .botao { flex-shrink: 0; }

.sumario {
    border: 1px solid var(--linha);
    border-top: 3px solid var(--marca);
    border-radius: var(--raio);
    padding: 20px 24px; margin-bottom: 32px;
    background: var(--fundo-alt);
}
.sumario h2 {
    font-size: 0.74rem; text-transform: uppercase; letter-spacing: 0.14em;
    color: var(--texto-suave); border: 0; margin: 0 0 10px; padding: 0;
}
.sumario ol { margin: 0; padding-left: 20px; }
.sumario li { margin-bottom: 6px; font-weight: 600; font-size: 0.94rem; }

.exemplos { margin: 0; padding-left: 20px; }
.exemplos li { margin-bottom: 10px; color: var(--texto-suave); }
.bloco-tags h2 { border-bottom: 0; }

.autor-box {
    border: 1px solid var(--linha-forte);
    border-left: 3px solid var(--marca);
    border-radius: var(--raio);
    padding: 24px; background: var(--fundo-alt);
}
.autor-box h2 {
    font-size: 0.74rem; text-transform: uppercase; letter-spacing: 0.14em;
    color: var(--texto-suave); border: 0; margin: 0 0 8px; padding: 0;
}
.autor-nome { margin: 0 0 8px; font-size: 1.15rem; font-weight: 800; }
.autor-cargo {
    font-size: 0.78rem; font-weight: 600; color: var(--texto-suave);
    text-transform: uppercase; letter-spacing: 0.08em; padding-left: 8px;
}
.autor-bio { color: var(--texto-suave); margin: 0 0 10px; font-size: 0.96rem; }
.autor-pe { font-size: 0.8rem; color: var(--texto-suave); margin: 0; }

/* ---------------------------- Coluna lateral ---------------------------- */

.verbete-lado { align-self: start; }
.lado-bloco {
    border: 1px solid var(--linha);
    border-radius: var(--raio);
    padding: 18px 20px; margin-bottom: 20px;
}
.lado-bloco h2 {
    font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.14em;
    color: var(--texto-suave); margin: 0 0 12px;
    padding-bottom: 8px; border-bottom: 1px solid var(--linha);
}
.pontos { margin: 0; padding-left: 18px; font-size: 0.92rem; }
.pontos li { margin-bottom: 8px; color: var(--texto-suave); }
.lado-lista { font-size: 0.94rem; color: var(--texto-suave); margin: 0; }
.lado-links { list-style: none; margin: 0; padding: 0; font-size: 0.92rem; }
.lado-links li { padding: 7px 0; border-bottom: 1px solid var(--linha); color: var(--texto-suave); }
.lado-links li:last-child { border-bottom: 0; }
.lado-ficha dl { margin: 0; font-size: 0.9rem; }
.lado-ficha dt {
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.1em;
    color: var(--texto-suave); font-weight: 700; margin-top: 10px;
}
.lado-ficha dd { margin: 2px 0 0; color: var(--texto); }
.quebra { word-break: break-all; font-size: 0.82rem; }

.canais { margin: 0; }
.canais dt {
    font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.12em;
    font-weight: 700; color: var(--texto-suave); margin-top: 14px;
}
.canais dd { margin: 4px 0 0; font-weight: 600; }
.canal-obs { font-size: 0.82rem; font-weight: 400; color: var(--texto-suave); padding-left: 8px; }

/* --------------------------- Anterior / próxima ------------------------- */

.vizinhos { border-top: 1px solid var(--linha); border-bottom: 1px solid var(--linha); background: var(--fundo-alt); }
.vizinhos-int { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--linha); }
.vizinho {
    background: var(--fundo-alt); padding: 20px 24px;
    display: flex; flex-direction: column; gap: 4px;
}
.vizinho-prox { text-align: right; align-items: flex-end; }
.vizinho-rot {
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.14em;
    font-weight: 700; color: var(--texto-suave);
}
.vizinho-termo { font-size: 1.1rem; font-weight: 800; color: var(--marca); }
.vizinho:hover { text-decoration: none; background: var(--fundo); }
.vizinho:hover .vizinho-termo { color: var(--link); }
.vizinho-off { color: var(--texto-suave); font-size: 0.86rem; justify-content: center; }

