.cotacoes-abertas-vendas {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cotacoes-abertas-vendas__erro {
  padding: 12px;
  background: var(--danger-bg);
  color: var(--danger-text);
  border-radius: 8px;
  border: 1px solid var(--danger-border);
}

.cotacoes-abertas-vendas__vazio {
  padding: 12px;
  background: var(--color-surface);
  color: var(--color-muted);
  border-radius: 8px;
  border: 1px solid var(--color-border);
  text-align: center;
}

.cotacoes-abertas-vendas__tabela tbody tr:hover {
  background: var(--color-surface);
}

.cotacoes-abertas-vendas__paginacao {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 12px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 4px;
  margin-top: 0;
}

.cotacoes-abertas-vendas__btn-paginacao {
  height: 26px;
  padding: 0 12px;
  border-radius: 7px;
  border: 1px solid var(--color-border);
  background: var(--color-bg);
  color: var(--color-ink);
  font-size: 10px;
  font-weight: 600;
  cursor: pointer;
}

.cotacoes-abertas-vendas__btn-paginacao:hover:not(:disabled) {
  background: var(--color-surface-panel);
  border-color: var(--color-border-soft);
}

.cotacoes-abertas-vendas__btn-paginacao:disabled {
  color: var(--color-disabled);
  cursor: not-allowed;
  background: var(--color-bg-strong);
}

.cotacoes-abertas-vendas__info-pagina {
  font-size: 10px;
  color: var(--color-muted);
  white-space: nowrap;
}

/* Badge de destaque da coluna "Tempo em Aberto" (mes_em_aberto).
   A banda (qual classe usar) já vem resolvida pelo Service; este CSS só
   estiliza.

   Antes estas 3 classes eram cópia literal de AdminModulos.razor.css —
   duplicadas de propósito, pra não acoplar páginas não relacionadas.
   Com os tokens (27/07/2026) a duplicação some sem criar acoplamento:
   as duas telas passam a derivar do mesmo par bg/texto semântico, sem
   uma referenciar a outra. Ver .claude/rules/arquitetura.md. */
.admin-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 9px;
  border-radius: var(--radius-pill);
  border: 1px solid transparent;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.admin-badge-danger {
  background: var(--danger-bg);
  color: var(--danger-text);
  border-color: var(--danger-border);
}

.admin-badge-muted {
  background: var(--info-bg);
  color: var(--info-text);
  border-color: var(--info-border);
}

/* ── Painel (telas-vendas-do-python-novo, bloco 5) ─────────────────────
   Medidas do Python de 23/09/2026 (N/static/css/style.css:1493-1666). Os
   blocos comuns (card, indicador, barras, tabela) estão em
   painel-cotacoes-vendas.css; aqui ficam só as grades desta tela. */

/* Faixa de cima: indicadores · rosca · linha — :1502-1514 */
.cotacoes-abertas-vendas__faixa-cima {
  display: grid;
  grid-template-columns: 390px 310px 1fr;
  gap: 10px;
  min-height: 220px;
}

.cotacoes-abertas-vendas__kpis {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 8px;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__kpi-topo {
  height: 72px;
}

/* VALOR TOTAL e VALOR ST lado a lado (mudança cotacoes-com-e-sem-st); a
   coluna dos indicadores passou de 310px para 390px para os dois caberem.
   Achado M4 da revisão de fora: sem filtro o VALOR TOTAL chega a
   "R$ 213.132.813,00" (17 caracteres), então ele fica com a fração maior e o
   número dos dois encolhe para 0.95rem; o card não deixa o texto sair dele. */
.cotacoes-abertas-vendas .cotacoes-abertas-vendas__kpis-topo {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 8px;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__kpi-topo .painel-cotacoes-vendas__kpi-numero--moeda {
  font-size: 0.95rem;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__kpi-topo {
  min-width: 0;
  overflow: hidden;
}

/* Grade 2×2 — :1528-1543 */
.cotacoes-abertas-vendas__kpis-quad {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.cotacoes-abertas-vendas__kpis-quad .painel-cotacoes-vendas__kpi {
  height: 65px;
  padding: 4px 6px;
}

.cotacoes-abertas-vendas__kpis-quad .painel-cotacoes-vendas__kpi-numero {
  font-size: 1.25rem;
}

/* Rosca — :1545-1591 */
.cotacoes-abertas-vendas .cotacoes-abertas-vendas__card-rosca {
  height: 220px;
  padding: 6px 10px;
}

.cotacoes-abertas-vendas__area-rosca {
  position: relative;
  flex: 1;
  min-height: 0;
  max-height: 145px;
}

.cotacoes-abertas-vendas__legenda {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: 6px;
  font-size: 0.72rem;
  color: var(--color-ink);
}

.cotacoes-abertas-vendas__legenda-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.cotacoes-abertas-vendas__marcador {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.cotacoes-abertas-vendas__marcador--servicos {
  background: var(--color-cdc-blue-deep);
}

.cotacoes-abertas-vendas__marcador--produtos {
  background: var(--color-primary);
}

/* Linha — :1602-1616 */
.cotacoes-abertas-vendas .cotacoes-abertas-vendas__card-linha {
  height: 220px;
  padding: 6px 12px;
}

.cotacoes-abertas-vendas__area-linha {
  position: relative;
  flex: 1;
  min-height: 0;
  max-height: 175px;
}

/* Faixa de baixo: VENDEDORES · tabela — :1618-1659 */
.cotacoes-abertas-vendas__faixa-baixo {
  display: grid;
  grid-template-columns: 310px 1fr;
  gap: 10px;
  min-height: 380px;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__card-vendedores {
  height: 380px;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__barras-vendedores {
  max-height: 340px;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__barras-vendedores .painel-cotacoes-vendas__barra {
  grid-template-columns: minmax(80px, 110px) 1fr auto;
}

.cotacoes-abertas-vendas__coluna-tabela {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

/* A paginação fica abaixo do card, como no Python. */
.cotacoes-abertas-vendas .cotacoes-abertas-vendas__card-tabela {
  height: 380px;
  padding: 0;
  overflow: hidden;
}

.cotacoes-abertas-vendas__cotacao {
  font-weight: 700;
}

.cotacoes-abertas-vendas .cotacoes-abertas-vendas__silhueta-rosca,
.cotacoes-abertas-vendas .cotacoes-abertas-vendas__silhueta-linha,
.cotacoes-abertas-vendas .cotacoes-abertas-vendas__silhueta-barras {
  min-height: 120px;
}

@media (max-width: 1199px) {
  .cotacoes-abertas-vendas__faixa-cima {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1099px) {
  .cotacoes-abertas-vendas__faixa-baixo {
    grid-template-columns: 1fr;
  }
}
