/* =====================================================================================
   Vigilância Ambiental (nov/2026), na fundação mm-*. Colunas das grades e as peças do módulo (parâmetros da amostra,
   metas do plano). Só tokens --p-*; sem media query de largura (mc-scaled cuida da escala).
   ===================================================================================== */
.va .va-g-amo  { --cols: 112px minmax(220px, 1.5fr) 92px 92px 92px 110px minmax(150px, 1fr) 36px; }
.va .va-g-for  { --cols: 70px minmax(220px, 1.6fr) minmax(160px, 1fr) minmax(150px, 1fr) 100px 110px 110px 36px; }
.va .va-g-pto  { --cols: minmax(220px, 1.5fr) minmax(150px, 1fr) 150px 110px 120px 130px 36px; }
.va .va-g-rec  { --cols: 112px minmax(230px, 1.6fr) 120px 140px 130px 120px 36px; }
.va .va-g-pec  { --cols: 112px minmax(210px, 1.4fr) minmax(170px, 1fr) 70px 130px 130px 36px; }
.va .va-g-atv  { --cols: 112px 190px minmax(220px, 1.5fr) minmax(140px, 1fr) 90px 110px 36px; }
.va .va-g-area { --cols: minmax(220px, 1.5fr) 190px 110px 110px 120px 130px 36px; }
.va .va-g-evt  { --cols: 112px minmax(220px, 1.5fr) 170px 110px 110px 140px 36px; }
.va .va-num { font-family: var(--p-mono); font-size: .72rem; font-weight: 700; color: var(--p-ink); white-space: nowrap; }
.va .va-sub { font-size: .7rem; color: var(--p-faint); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.va .va-nome { font-weight: 700; color: var(--p-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.va .va-alerta { color: var(--p-orange); font-weight: 700; }
.va .va-alerta.grave { color: var(--p-red); }
.va .va-mapa, .va-mapa { height: 560px; border-radius: 0 0 14px 14px; z-index: 1; }

/* Parâmetros da amostra em linha (cloro · turbidez · pH …) — vermelho quando fora do padrão */
.va-params { display: flex; flex-wrap: wrap; gap: 4px; }
.va-param { font-size: .66rem; font-weight: 700; padding: 1px 6px; border-radius: 6px; background: var(--p-soft2); color: var(--p-text); white-space: nowrap; font-variant-numeric: tabular-nums; }
.va-param.fora { background: var(--p-red-soft, #fee2e2); color: var(--p-red); }
.va-param.ok { background: var(--p-green-soft, #dcfce7); color: var(--p-green, #15803d); }

/* Caixa de avaliação ao vivo no modal da amostra */
.va-aval { border-radius: 12px; padding: 10px 12px; font-size: .76rem; border: 1px solid var(--p-border-soft); background: var(--p-soft); }
.va-aval.CONFORME { border-color: color-mix(in srgb, var(--p-green, #15803d) 40%, transparent); background: color-mix(in srgb, var(--p-green, #15803d) 8%, transparent); }
.va-aval.NAO_CONFORME { border-color: color-mix(in srgb, var(--p-red) 40%, transparent); background: color-mix(in srgb, var(--p-red) 7%, transparent); }
.va-aval b { color: var(--p-ink); }
.va-aval ul { margin: 6px 0 0 16px; padding: 0; }
.va-aval li { margin: 2px 0; }

/* Tabela do plano (meta × realizado) e do controle do prestador */
.va-plano td.num, .va-plano th.num { text-align: right; font-variant-numeric: tabular-nums; }
.va-ctrl input { width: 64px; text-align: center; }

/* Botão de ação destrutiva nas janelas (as janelas são irmãs do .va, por isso sem prefixo) */
.prmd-btn.va-perigo { color: var(--p-red); border-color: color-mix(in srgb, var(--p-red) 45%, transparent); }
.prmd-btn.va-perigo:hover { background: var(--p-red-soft); }
