/* Acervo legislativo, Conferir documento e páginas institucionais do portal
 * (reforma, Diagnóstico 5 e Proposta 7). Vale no portal e no sistema interno.
 * Só tokens. O dourado fica com o selo de conferência (autenticidade). */

@layer telas {

/* ---------- texto compilado, no estilo do Planalto ---------- */
.leg-texto { display: grid; gap: var(--e-1); margin-top: var(--e-4); font-size: var(--fs-4); line-height: 1.6; }
.leg-disp { scroll-margin-top: 96px; border-radius: var(--raio-1); }
.leg-disp.leg-destaque { background: var(--acao-suave); }
.leg-redacao { margin: 0; text-align: justify; }
.leg-paragrafo, .leg-inciso { padding-left: var(--e-5); }
.leg-alinea { padding-left: var(--e-6); }
.leg-item { padding-left: var(--e-7); }
.leg-marcador { font-weight: 600; color: var(--texto); text-decoration: none; }
.leg-riscada { color: var(--texto-3); }
.leg-nota { color: var(--texto-2); font-size: var(--fs-2); }
a.leg-nota { color: var(--link); }
.leg-agrupador { margin: var(--e-5) 0 var(--e-2); text-align: center; font-size: var(--fs-4); font-weight: 600; }
.leg-agrupador-marcador { display: block; text-transform: uppercase; }
.leg-agrupador-nome { display: block; font-weight: 500; }
.leg-anexo { white-space: pre-wrap; font-family: var(--fonte); font-size: var(--fs-3); }
.leg-citar {
  padding: 0 var(--e-2); border: 1px solid var(--linha-forte); border-radius: var(--raio-pilula);
  background: transparent; color: var(--texto-2); font-size: var(--fs-1); line-height: 22px; cursor: pointer;
}
.leg-citar:hover, .leg-citar:focus-visible { color: var(--texto); border-color: var(--texto-3); }

/* ---------- ficha, busca e listas ---------- */
.selo-conferencia-ouro {
  display: inline-block; padding: 0 var(--e-2); border: 1px solid var(--ouro-linha); border-radius: var(--raio-pilula);
  background: var(--ouro-suave); color: var(--ouro); font-size: var(--fs-2); font-weight: 600; line-height: 24px;
}
.leg-ficha-linha { display: flex; flex-wrap: wrap; gap: var(--e-2); align-items: center; margin: 0 0 var(--e-2); }
.acoes-linha > .rotulo-acoes { align-self: center; color: var(--texto-2); font-size: var(--fs-2); }
.leg-ficha-meta { color: var(--texto-2); font-size: var(--fs-2); }
.leg-vigencia { display: flex; flex-wrap: wrap; gap: var(--e-3); align-items: center; margin-top: var(--e-3); }
.leg-filtros { display: flex; flex-wrap: wrap; gap: var(--e-4); margin-top: var(--e-3); font-size: var(--fs-3); }
.leg-lista { display: grid; gap: var(--e-3); margin: var(--e-4) 0 0; padding: 0; list-style: none; }
.leg-item-nome { font-size: var(--fs-4); font-weight: 600; }
.leg-item-ementa { margin: var(--e-1) 0; color: var(--texto-2); }
.leg-item-meta { display: flex; gap: var(--e-2); margin: 0; font-size: var(--fs-2); }
.leg-relacoes ul, .leg-notas ul { display: grid; gap: var(--e-2); padding-left: var(--e-5); }
a.citacao-norma { text-decoration-style: dotted; }

/* ---------- importação lado a lado (interno) ---------- */
.leg-lado-a-lado { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--e-4); margin-top: var(--e-3); }
.leg-lado-a-lado textarea { width: 100%; font-family: var(--fonte-mono); font-size: var(--fs-2); }
.leg-lado-a-lado + .acoes { margin-top: var(--e-4); }
.leg-estrutura { max-height: 70vh; overflow: auto; padding: var(--e-3); border: 1px solid var(--linha); border-radius: var(--raio-2); }
.leg-previa { margin: 0; padding-left: var(--e-4); font-size: var(--fs-2); }
.leg-previa li { margin: var(--e-1) 0; }
.leg-previa li.leg-previa-nivel-7 { margin-left: var(--e-4); }
.leg-previa li.leg-previa-nivel-8 { margin-left: var(--e-5); }
.leg-previa li.leg-previa-nivel-9, .leg-previa li.leg-previa-nivel-10 { margin-left: var(--e-6); }
.leg-avisos { color: var(--atencao); font-size: var(--fs-2); }
@media (max-width: 759px) {
  .leg-lado-a-lado { grid-template-columns: 1fr; }
}

/* ---------- Conferir documento ---------- */
.conferir-busca { flex-wrap: wrap; }
.conferir-tipo { min-height: 1.5em; margin: var(--e-2) 0 0; color: var(--texto-2); }
/* "Ou escolha:" na mesma linha de base dos links ao lado (5.14.1). */
.conferir-modos { flex-wrap: wrap; align-items: baseline; margin-top: var(--e-3); color: var(--texto-2); font-size: var(--fs-2); }
/* "Ler QR Code": o ícone da câmera centrado na altura do texto (5.14.1). */
.conferir-busca > .acao { display: inline-flex; align-items: center; justify-content: center; gap: var(--e-2); }
.conferir-camera { display: grid; gap: var(--e-2); justify-items: start; margin-top: var(--e-3); }
.conferir-camera video { width: min(100%, 420px); border-radius: var(--raio-2); background: var(--superficie-3); }
.conferir-modo { margin-top: var(--e-4); }

/* ---------- textos institucionais e contato ---------- */
.texto-institucional .cartao h2 { margin-top: var(--e-5); font-size: var(--fs-5); }
.texto-institucional .cartao h2:first-child { margin-top: 0; }
.texto-institucional ul { display: grid; gap: var(--e-2); padding-left: var(--e-5); }

}

/* ---------- lista interna de Leis e atos (5.11.0) ---------- */
@layer telas {
.leg-tabela td.leg-conferencia, .leg-tabela th:nth-child(4) { min-width: 170px; }
.leg-tabela td.leg-conferencia { white-space: nowrap; }
.leg-nome {
  padding: 0; border: 0; background: none; color: var(--texto); font: inherit; font-weight: 600; text-align: left;
  text-decoration: none; cursor: pointer;
}
.leg-nome:hover { text-decoration: underline; }
.leg-nome:focus-visible { outline: none; box-shadow: var(--anel-foco); border-radius: var(--raio-1); }
.leg-selo-conferida, .leg-selo-a-conferir {
  display: inline-flex; align-items: center; gap: var(--e-1); padding: 3px 10px; border-radius: var(--raio-pilula);
  font-size: var(--fs-1); font-weight: 500; line-height: 1.3; white-space: nowrap; vertical-align: middle;
}
.leg-selo-conferida { background: var(--ouro-suave); color: var(--ouro); }
.leg-selo-conferida .icone { width: 14px; height: 14px; flex-shrink: 0; }
.leg-selo-a-conferir { border: 1px solid var(--linha); color: var(--texto-2); }
.leg-no-portal { display: inline-flex; margin-left: var(--e-2); color: var(--texto-2); vertical-align: middle; }
.leg-no-portal .icone { width: 14px; height: 14px; }
.leg-situacao { display: inline-flex; align-items: center; gap: var(--e-2); white-space: nowrap; }
.leg-ponto { flex-shrink: 0; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.leg-situacao-ok { color: var(--ok); }
.leg-situacao-neutro { color: var(--texto-3); }
.leg-situacao-atencao { color: var(--atencao); }
.leg-filtros-internos { align-items: flex-end; }
.leg-chips { display: flex; flex-wrap: wrap; gap: var(--e-2); align-items: center; align-self: flex-end; min-height: 40px; }
.chip-alternar {
  display: inline-flex; align-items: center; min-height: 34px; padding: 0 var(--e-3); border: 1px solid var(--linha-forte);
  border-radius: var(--raio-pilula); background: var(--superficie); color: var(--texto-2); font: inherit; font-size: var(--fs-2);
  font-weight: 500; cursor: pointer; white-space: nowrap;
}
.chip-alternar:hover { border-color: var(--acao-linha); }
.chip-alternar[aria-pressed="true"] { border-color: var(--acao); background: var(--acao-suave); color: var(--link); }
}
