/* Documentos e reuniões usam a identidade visual compartilhada. */
.documentacao {
  max-width: 1500px;
  margin: 0 auto;
  padding: 24px 28px;
}

.documentacao [hidden] {
  display: none;
}

.titulo-documentacao,
.linha-titulo-documento {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}

.titulo-documentacao {
  margin-bottom: 20px;
}

.titulo-documentacao > label {
  width: min(100%, 420px);
}

.documentacao h2,
.documentacao h3,
.documentacao h4 {
  margin: 0 0 12px;
  color: var(--azul);
}

.documentacao h3 {
  font-size: 17px;
}

.documentacao p,
.documentacao small,
.linha-titulo-documento > span {
  color: var(--cinza);
  font-size: 12px;
}

.secao-documento {
  margin-top: 18px;
  padding: 20px;
  border: 1px solid var(--borda);
  border-radius: 10px;
  background: white;
}

.formulario-documento {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 12px;
}

.documentacao label {
  display: grid;
  gap: 6px;
  color: var(--cinza);
  font-size: 12px;
}

.formulario-documento > label {
  flex: 1 1 220px;
  min-width: 0;
}

.formulario-documento > h4,
.formulario-documento > p {
  flex-basis: 100%;
  margin: 0;
}

.documentacao input,
.documentacao select,
.documentacao button {
  min-width: 0;
  min-height: 36px;
  padding: 8px 10px;
  border: 1px solid var(--borda);
  border-radius: 6px;
  background: white;
  color: var(--texto);
  font: inherit;
}

.documentacao button {
  cursor: pointer;
}

.documentacao .botao-principal {
  border-color: var(--azul);
  background: var(--azul);
  color: white;
}

.documentacao :focus-visible {
  outline: 2px solid var(--azul);
  outline-offset: 2px;
}

.documentacao a {
  color: var(--azul);
  overflow-wrap: anywhere;
}

.arquivo-atual {
  margin: 10px 0 16px;
  color: var(--cinza);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.prazo-plano {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 0;
}

.prazo-plano > div {
  padding: 12px;
  border-radius: 6px;
  background: var(--fundo);
}

.prazo-plano dt {
  color: var(--cinza);
  font-size: 12px;
}

.prazo-plano dd {
  margin: 4px 0 0;
  color: var(--azul);
  font-size: 15px;
  font-weight: 600;
}

.prazo-plano [data-situacao="encerrado"] {
  background: #fff0ee;
}

.prazo-plano [data-situacao="encerrado"] dd,
.documentacao .erro-documento {
  color: #a12c2c;
}

.erro-documento:empty,
.arquivo-atual:empty {
  display: none;
}

.lista-reunioes {
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.lista-reunioes li {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(160px, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 14px 0;
  border-top: 1px solid var(--borda);
}

.lista-reunioes time {
  display: block;
  margin-bottom: 4px;
  color: var(--cinza);
  font-size: 12px;
}

.relatorio-reuniao {
  color: var(--cinza);
  font-size: 12px;
}

.acoes-documento {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nota-documentacao {
  margin-top: 20px;
}

@media (max-width: 800px) {
  .documentacao { padding: 20px 16px; }
  .prazo-plano { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lista-reunioes li { grid-template-columns: 1fr; }
}
