/* "Unidades que precisam de atenção" — a lista da rede pelo veredito.
   Folha própria da aba Meta, no precedente de unidade360.css: v31.css é
   compartilhada por 13 telas e não deve crescer por causa de uma.
   Todas as cores vêm dos tokens de v31.css:10-35 — nenhuma nova aqui. */

.atencao-resumo { margin: 0 0 4px; font-size: .95rem; color: var(--tinta); }
.atencao-resumo b { font-variant-numeric: tabular-nums; }
.atencao-janela { font-size: .78rem; color: var(--tinta-muda); }

.atencao-filtro {
  display: flex; align-items: center; gap: 8px;
  margin: 12px 0 0; font-size: .82rem;
}
.atencao-filtro .chip {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--marca-clara); color: var(--marca-escura);
  border-radius: 999px; padding: 4px 10px; font-weight: 600;
}
.atencao-filtro button {
  background: none; border: none; color: var(--tinta-2);
  text-decoration: underline; cursor: pointer; font-size: .82rem; padding: 0;
}

.atencao-grupo { margin-top: 20px; }
.atencao-grupo-cabecalho {
  display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
  padding: 0 0 8px; border-bottom: 1px solid var(--linha);
}
.atencao-grupo-cabecalho h3 { margin: 0; font-size: .96rem; }
.atencao-grupo-cabecalho .contagem {
  font-size: .8rem; color: var(--tinta-2); font-variant-numeric: tabular-nums;
}
.atencao-grupo-cabecalho .verba {
  margin-left: auto; font-size: .8rem; color: var(--tinta-2);
  font-variant-numeric: tabular-nums;
}

.atencao-linha { border-bottom: 1px solid var(--linha); }
.atencao-linha > summary {
  display: grid; align-items: center; gap: 10px;
  grid-template-columns: 12px minmax(0, 1fr) repeat(3, minmax(78px, auto)) 16px;
  padding: 10px 6px; cursor: pointer; list-style: none;
}
.atencao-linha > summary::-webkit-details-marker { display: none; }
.atencao-linha > summary:hover { background: var(--plano); }
.atencao-linha .dot { width: 10px; height: 10px; border-radius: 999px; }
.atencao-linha .dot.bom { background: var(--bom); }
.atencao-linha .dot.atencao { background: var(--atencao); }
.atencao-linha .dot.critico { background: var(--critico); }
.atencao-linha .dot.sem { background: var(--eixo); }

.atencao-linha .identidade { min-width: 0; }
.atencao-linha .nome {
  font-weight: 700; font-size: .88rem;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.atencao-linha .frase {
  font-size: .78rem; color: var(--tinta-2);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.atencao-linha .num { text-align: right; font-variant-numeric: tabular-nums; }
.atencao-linha .num .v { display: block; font-size: .86rem; font-weight: 600; }
.atencao-linha .num .r { display: block; font-size: .68rem; color: var(--tinta-muda); }
/* `transform` não se aplica a elemento inline — sem o inline-block a seta
   nunca gira e a linha aberta fica sem sinal de estado */
.atencao-linha .seta {
  color: var(--tinta-muda); font-size: .8rem; text-align: center;
  display: inline-block; transition: transform .12s ease;
}
.atencao-linha[open] > summary { background: var(--plano); }
.atencao-linha[open] .seta { transform: rotate(90deg); }
.atencao-linha[open] .frase { white-space: normal; overflow: visible; }

.atencao-detalhe {
  padding: 4px 6px 16px 28px; background: var(--plano);
  border-radius: 0 0 var(--raio-md) var(--raio-md);
}
.atencao-detalhe .frase-cheia { margin: 6px 0 12px; font-size: .86rem; }
.atencao-detalhe .desde { color: var(--tinta-2); font-size: .78rem; }
.atencao-numeros {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px; margin: 0 0 12px;
}
.atencao-numeros div {
  background: var(--sup); border: 1px solid var(--borda);
  border-radius: var(--raio-sm); padding: 8px 10px;
}
.atencao-numeros .r { display: block; font-size: .68rem; color: var(--tinta-muda); }
.atencao-numeros .v {
  display: block; font-size: .84rem; font-weight: 600;
  font-variant-numeric: tabular-nums; word-break: break-word;
}
.atencao-causas { margin: 0 0 12px; font-size: .8rem; color: var(--tinta-2); }
.atencao-causas li { margin: 4px 0; }
.atencao-detalhe .abrir-ficha { font-size: .82rem; font-weight: 600; }

.atencao-balde { margin-top: 24px; }
.atencao-balde > summary {
  cursor: pointer; font-size: .86rem; padding: 12px;
  background: var(--plano); border-radius: var(--raio-md);
  border: 1px dashed var(--linha);
}
.atencao-balde > summary b { font-variant-numeric: tabular-nums; }
.atencao-balde .aviso { color: var(--tinta-2); }
.atencao-rodape { margin-top: 14px; font-size: .78rem; color: var(--tinta-muda); }

@media (max-width: 720px) {
  .atencao-linha > summary { grid-template-columns: 12px minmax(0, 1fr) minmax(70px, auto) 16px; }
  .atencao-linha .num.oculta-estreito { display: none; }
}

/* Os cards do topo da seção (Sandro, 21/08/2026) — um por padrão, na ordem de
   causa, funcionando como interruptor de filtro. Contagem sempre do padrão
   inteiro: quem mostra o recorte do semáforo é o cabeçalho do grupo. */
.atencao-cards {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px; margin: 14px 0 0;
}
.atencao-card {
  display: flex; flex-direction: column; gap: 2px; text-align: left;
  background: var(--sup); border: 1px solid var(--borda);
  border-radius: var(--raio-md); padding: 12px 14px; cursor: pointer;
  font: inherit; color: inherit; transition: border-color .12s, background .12s;
}
.atencao-card:hover { background: var(--plano); border-color: var(--eixo); }
.atencao-card .rotulo {
  font-size: .78rem; color: var(--tinta-2); line-height: 1.25; min-height: 2em;
}
.atencao-card .n {
  font-size: 1.5rem; font-weight: 700; line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.atencao-card .sub { font-size: .68rem; color: var(--tinta-muda); }
.atencao-card.ativo {
  border-color: var(--marca); background: var(--marca-clara);
  box-shadow: inset 0 0 0 1px var(--marca);
}
.atencao-card.ativo .rotulo, .atencao-card.ativo .n { color: var(--marca-escura); }
