/* ==========================================================================
   SGP — /admin com MENU LATERAL + telas de Vendas fase 2 (04/11/2026)

   O /admin passou a usar a barra lateral do chassi (04_layout.css: .barra-
   lateral, .menu__link) — a mesma do SGP do gabinete. Aqui só o que é do
   /admin: o botão de menu também no tablet e as telas novas de Vendas (lista,
   contatos, políticos). Todo seletor é de classe nova ou escopado em
   `.aplicacao--admin`: nada vaza para o SGP do gabinete.
   ========================================================================== */

/* --- Menu: no tablet (641–1024px) a lateral já é gaveta, então o botão que
   a abre tem de aparecer (o utilitário `.apenas-movel` o escondia), e o de
   recolher, que não tem o que recolher, some. ------------------------------ */
@media (min-width: 641px) and (max-width: 1024px) {
  .aplicacao--admin .barra-topo .botao-menu.apenas-movel { display: inline-grid !important; }
  .aplicacao--admin .barra-topo [data-action="menu-lateral#alternarRecolhimento"] { display: none !important; }
}

/* --- Filtros da lista: uma grade que vira coluna no celular -------------- */
.vendas-filtros {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: var(--esp-3);
  align-items: end;
}
.vendas-filtros .campo { margin: 0; min-width: 0; }
.vendas-filtros__acoes { display: flex; gap: var(--esp-2); flex-wrap: wrap; }

.vendas-busca { display: flex; flex-direction: column; gap: var(--esp-1); min-width: 0; }
.vendas-busca .linha { flex-wrap: nowrap; gap: var(--esp-2); }
.vendas-busca .campo__controle { min-width: 0; flex: 1; }

.vendas-politicos-barra {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--esp-4);
}

/* --- O público escolhido: frase + seletor de canal ----------------------- */
.vendas-publico__corpo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--esp-3);
  flex-wrap: wrap;
}
.vendas-publicos { flex-wrap: nowrap; }

/* --- Listas curtas dentro de cartão (contatos, negociações) -------------- */
.vendas-lista-simples {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--esp-2);
}
.vendas-lista-simples li {
  display: flex;
  align-items: center;
  gap: var(--esp-2);
  flex-wrap: wrap;
  padding-bottom: var(--esp-2);
  border-bottom: 1px solid var(--cor-borda);
}
.vendas-lista-simples li:last-child { border-bottom: 0; padding-bottom: 0; }

/* --- Nova tarefa (details) ----------------------------------------------- */
.vendas-nova-tarefa > summary { cursor: pointer; list-style: none; }
.vendas-nova-tarefa > summary::-webkit-details-marker { display: none; }
.vendas-nova-tarefa > summary .cartao__titulo { color: var(--cor-acao-forte); }

/* --- Tabela que vira cartão no celular (regra 7 da casa) ----------------- */
@media (max-width: 640px) {
  .vendas-tabela thead { display: none; }
  .vendas-tabela, .vendas-tabela tbody, .vendas-tabela tr, .vendas-tabela td { display: block; width: 100%; }
  .vendas-tabela tr {
    padding: var(--esp-3) var(--esp-4);
    border-bottom: 1px solid var(--cor-borda);
  }
  .vendas-tabela td {
    border: 0;
    padding: var(--esp-1) 0;
    text-align: left;
  }
  .vendas-tabela td.tabela__numero { text-align: left; }
  .vendas-tabela td[data-rotulo]:not(:first-child)::before {
    content: attr(data-rotulo) ": ";
    color: var(--cor-texto-suave);
    font-size: var(--texto-xs);
  }
  .vendas-tabela td:first-child { font-size: var(--texto-md); }
  .tabela-rolagem:has(.vendas-tabela) { overflow-x: visible; }
}

/* Valor em reais não quebra no meio ("R$ / 1.500/mês"): largura mínima, sem
   travar a quebra (a varredura de texto encostando cobra `nowrap`). */
.vendas-tabela td.tabela__numero { min-width: 8.5rem; }

/* Celular: os filtros da lista em duas colunas (a busca e o botão, inteiros). */
@media (max-width: 640px) {
  .vendas-filtros { grid-template-columns: 1fr 1fr; }
  .vendas-filtros .campo:first-child,
  .vendas-filtros__acoes { grid-column: 1 / -1; }
}
