/* ============================================================
   IA Cadu v2 — páginas jurídicas públicas (/privacidade)
   Documento longo para LER, não painel: coluna estreita, escala
   tipográfica maior que a do produto e muito respiro entre seções.
   Usa os tokens de iacadu-tokens.css; nada de cor solta.
   ============================================================ */

.lg-body {
    margin: 0;
    background: var(--ic-bg);
    color: var(--ic-texto);
    font-family: var(--ic-font-texto);
    font-size: 1.0625rem;
    line-height: 1.7;
    -webkit-text-size-adjust: 100%;
}

/* ── Topo ─────────────────────────────────────────────────── */
.lg-topo {
    background: var(--ic-surface);
    border-bottom: 1px solid var(--ic-borda);
}
.lg-topo__inner {
    max-width: 62rem;
    margin: 0 auto;
    padding: 0.9rem 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}
.lg-topo__logo { display: block; height: 34px; width: auto; }
.lg-topo__voltar {
    font-size: var(--ic-texto-sm);
    font-weight: 600;
    color: var(--ic-primary);
    text-decoration: none;
    padding: 0.45rem 0.9rem;
    border-radius: var(--ic-raio-cheio, 999px);
    border: 1px solid var(--ic-borda);
    white-space: nowrap;
}
.lg-topo__voltar:hover { background: var(--ic-primary-100); border-color: var(--ic-primary); }

/* ── Documento ────────────────────────────────────────────── */
.lg-doc {
    max-width: 46rem;
    margin: 0 auto;
    padding: 2.5rem 1.5rem 4rem;
}

.lg-cabeca { margin-bottom: 2.5rem; }
.lg-kicker {
    margin: 0 0 0.5rem;
    font-size: var(--ic-texto-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ic-texto-fraco);
}
.lg-h1 {
    margin: 0 0 1rem;
    font-family: var(--ic-font-titulo);
    font-size: clamp(1.9rem, 5vw, 2.6rem);
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: var(--ic-texto-forte);
}
.lg-lead {
    margin: 0 0 1.25rem;
    font-size: 1.15rem;
    color: var(--ic-texto-suave);
}
.lg-meta {
    margin: 0;
    font-size: var(--ic-texto-sm);
    color: var(--ic-texto-fraco);
}
.lg-meta--fim {
    margin-top: 2rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--ic-borda);
}

/* ── Índice ───────────────────────────────────────────────── */
.lg-indice {
    background: var(--ic-surface);
    border-radius: var(--ic-raio-lg, 18px);
    padding: 1.5rem 1.75rem;
    margin-bottom: 3rem;
    box-shadow: 0 1px 3px rgb(15 23 42 / 0.06);
}
.lg-indice__titulo {
    margin: 0 0 0.75rem;
    font-size: var(--ic-texto-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ic-texto-fraco);
}
.lg-indice__lista {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
    gap: 0.35rem 1.5rem;
    font-size: var(--ic-texto-sm);
}
.lg-indice__lista a {
    color: var(--ic-texto-suave);
    text-decoration: none;
    border-bottom: 1px solid transparent;
}
.lg-indice__lista a:hover { color: var(--ic-primary); border-bottom-color: currentColor; }

/* ── Seções ───────────────────────────────────────────────── */
.lg-sec {
    margin-bottom: 3rem;
    scroll-margin-top: 1.5rem;
}
.lg-h2 {
    margin: 0 0 1rem;
    font-family: var(--ic-font-titulo);
    font-size: 1.5rem;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: var(--ic-texto-forte);
    padding-bottom: 0.6rem;
    border-bottom: 2px solid var(--ic-primary-100);
}
.lg-h3 {
    margin: 2rem 0 0.75rem;
    font-family: var(--ic-font-titulo);
    font-size: 1.1rem;
    color: var(--ic-texto-forte);
}
.lg-sec p { margin: 0 0 1rem; }
.lg-sec a { color: var(--ic-primary); }

/* Listas */
.lg-lista { margin: 0 0 1rem; padding-left: 1.25rem; }
.lg-lista li { margin-bottom: 0.6rem; }
.lg-lista--num { list-style: decimal; }
.lg-lista--check { list-style: none; padding-left: 0; }
.lg-lista--check li {
    position: relative;
    padding-left: 1.75rem;
}
.lg-lista--check li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    color: var(--ic-sucesso);
}
.lg-lista--duas {
    list-style: none;
    padding-left: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr));
    gap: 0.6rem 1.5rem;
}
.lg-lista--duas li {
    background: var(--ic-surface);
    border-radius: var(--ic-raio-sm, 10px);
    padding: 0.7rem 0.9rem;
    margin: 0;
    font-size: var(--ic-texto-sm);
}

/* Caixa de destaque */
.lg-destaque {
    background: var(--ic-info-bg);
    border-left: 4px solid var(--ic-info);
    border-radius: 0 var(--ic-raio, 14px) var(--ic-raio, 14px) 0;
    padding: 1.25rem 1.5rem;
    margin: 1.5rem 0;
}
.lg-destaque__titulo {
    margin: 0 0 0.75rem !important;
    font-weight: 700;
    color: var(--ic-info-texto);
}
.lg-destaque ul { margin: 0 0 0.5rem; padding-left: 1.15rem; }
.lg-destaque li { margin-bottom: 0.6rem; }
.lg-destaque__nota {
    margin: 0.75rem 0 0 !important;
    font-size: var(--ic-texto-sm);
    color: var(--ic-texto-suave);
}

/* Nota de rodapé de seção */
.lg-nota {
    font-size: var(--ic-texto-sm);
    color: var(--ic-texto-suave);
    background: var(--ic-bg-sutil);
    border: 1px solid var(--ic-borda);
    border-radius: var(--ic-raio-sm, 10px);
    padding: 0.85rem 1rem;
}

/* Tabelas — rolam sozinhas no celular, nunca empurram a página */
.lg-tabela-wrap {
    overflow-x: auto;
    margin: 1.25rem 0;
    border-radius: var(--ic-raio, 14px);
    background: var(--ic-surface);
    box-shadow: 0 1px 3px rgb(15 23 42 / 0.06);
}
.lg-tabela {
    width: 100%;
    min-width: 34rem;
    border-collapse: collapse;
    font-size: var(--ic-texto-sm);
}
.lg-tabela th {
    text-align: left;
    padding: 0.8rem 1rem;
    background: var(--ic-bg-sutil);
    color: var(--ic-texto-fraco);
    font-size: var(--ic-texto-xs);
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border-bottom: 1px solid var(--ic-borda);
}
.lg-tabela td {
    padding: 0.8rem 1rem;
    vertical-align: top;
    border-bottom: 1px solid var(--ic-borda);
}
.lg-tabela tr:last-child td { border-bottom: none; }
.lg-td-sens { background: var(--ic-perigo-bg); }
.lg-tag {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--ic-perigo-texto);
    border: 1px solid currentColor;
    border-radius: var(--ic-raio-cheio, 999px);
    padding: 0.05rem 0.45rem;
    white-space: nowrap;
}

/* Contato */
.lg-contato {
    background: var(--ic-surface);
    border-radius: var(--ic-raio, 14px);
    padding: 1.25rem 1.5rem;
    margin: 1.25rem 0;
    box-shadow: 0 1px 3px rgb(15 23 42 / 0.06);
}
.lg-contato p { margin: 0 0 0.35rem; }
.lg-contato p:last-child { margin-bottom: 0; }
.lg-contato__pj { font-size: var(--ic-texto-sm); color: var(--ic-texto-fraco); }

.lg-sec code {
    background: var(--ic-bg-sutil);
    border: 1px solid var(--ic-borda);
    border-radius: 4px;
    padding: 0.05rem 0.3rem;
    font-size: 0.9em;
}

/* ── Rodapé ───────────────────────────────────────────────── */
.lg-rodape {
    border-top: 1px solid var(--ic-borda);
    background: var(--ic-surface);
    padding: 1.5rem;
    text-align: center;
}
.lg-rodape p {
    margin: 0;
    font-size: var(--ic-texto-sm);
    color: var(--ic-texto-fraco);
}

/* ── Impressão: o documento tem que virar PDF legível ─────── */
@media print {
    .lg-topo__voltar, .lg-indice { display: none; }
    .lg-body { background: #fff; font-size: 10.5pt; }
    .lg-doc { max-width: none; padding: 0; }
    .lg-sec { page-break-inside: avoid; margin-bottom: 1.5rem; }
    .lg-tabela-wrap, .lg-contato, .lg-indice { box-shadow: none; border: 1px solid #ccc; }
    .lg-sec a { color: inherit; text-decoration: none; }
}
