/* Só o painel do Diego. */
.contadores { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.contador {
  background: var(--sup); border: 1px solid var(--borda); border-radius: var(--r); padding: 14px 14px 12px;
  text-align: left; cursor: pointer; display: flex; flex-direction: column; gap: 6px; min-width: 0;
}
.contador:hover { border-color: var(--borda-2); }
.contador[aria-pressed="true"] { border-color: var(--verm); background: var(--verm-bg); }
.contador .n { font-family: var(--f-titulo); font-style: italic; font-weight: 800; font-size: 36px; line-height: 1; font-variant-numeric: tabular-nums; }
.contador .st { align-self: flex-start; font-size: 12px; padding: 2px 8px; white-space: normal; }
@media (max-width: 900px) { .contadores { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 480px) { .contadores { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.barra-ferramentas { display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; }
.busca { flex: 1; min-width: 220px; }

.tabela { background: var(--sup); border: 1px solid var(--borda); border-radius: var(--r); overflow: hidden; }
.linha {
  display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1.3fr) minmax(0, 1.2fr) minmax(0, 1fr) auto;
  gap: 14px; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--borda);
  text-decoration: none; color: var(--tx);
}
.linha:last-child { border-bottom: 0; }
a.linha:hover { background: var(--sup-2); }
.linha-cab { font-size: 11.5px; text-transform: uppercase; letter-spacing: .12em; color: var(--tx-3); padding-block: 10px; background: var(--campo); }
.linha .nome { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.linha .email { font-size: 13.5px; color: var(--tx-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.linha .prog { display: flex; align-items: center; gap: 10px; }
.linha .prog .barra { flex: 1; height: 6px; }
.linha .prog span.num { font-size: 13.5px; color: var(--tx-2); font-variant-numeric: tabular-nums; min-width: 36px; text-align: right; }
.linha .quando { font-size: 13.5px; color: var(--tx-2); }
.linha .abrir { color: var(--tx-3); font-size: 20px; }
.linha-convite { grid-template-columns: minmax(0, 2fr) minmax(0, 1.2fr) auto; }
.vazio { padding: 26px 18px; color: var(--tx-3); text-align: center; }
@media (max-width: 760px) {
  .linha { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "quem st" "prog prog" "quando quando"; gap: 8px 12px; }
  .linha > :nth-child(1) { grid-area: quem; }
  .linha > :nth-child(2) { grid-area: st; }
  .linha > :nth-child(3) { grid-area: prog; }
  .linha > :nth-child(4) { grid-area: quando; }
  .linha > :nth-child(5) { display: none; }
  .linha-cab { display: none; }
  .linha-convite { grid-template-columns: 1fr; grid-template-areas: none; }
  .linha-convite > * { grid-area: auto !important; display: flex !important; }
}

.ficha-cab { display: flex; justify-content: space-between; align-items: flex-end; gap: 18px; flex-wrap: wrap; padding-bottom: 20px; border-bottom: 1px solid var(--borda); }
.ficha-contato { display: flex; gap: 6px 16px; flex-wrap: wrap; margin-top: 12px; font-size: 14.5px; color: var(--tx-2); }
.ficha-contato a { color: var(--tx-2); }
.ficha-prog { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.acoes { display: flex; justify-content: space-between; align-items: flex-end; gap: 14px; flex-wrap: wrap; background: var(--sup); border: 1px solid var(--borda); border-radius: var(--r); padding: 16px 18px; }
.acao-status select { width: auto; min-width: 220px; min-height: 38px; padding: 6px 10px; }

.print-only { display: none; }

@media print {
  @page { margin: 14mm 12mm; }
  :root { --preto: #fff; --sup: #fff; --sup-2: #f3f3f4; --campo: #fff; --borda: #dcdce0; --borda-2: #c4c4ca; --tx: #111; --tx-2: #333; --tx-3: #666; }
  body { background: #fff; color: #111; font-size: 12pt; }
  .no-print, .topo, #avisos, dialog { display: none !important; }
  .print-only { display: block; }
  .print-cab { border-bottom: 3px solid var(--verm); padding-bottom: 8px; }
  .print-cab .kicker { color: var(--verm); }
  main { padding: 0; }
  .wrap { max-width: none; padding: 0; }
  .rx-bloco { break-inside: auto; border-color: #ccc; }
  .rx-bloco-cab { background: #f7f7f8 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .rx-pergunta { break-inside: avoid; }
  .resumo { break-inside: avoid; }
  .st, .chip, .canal-chip { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  a { text-decoration: none; }
}
