/* Tela "Cotações não Informadas" (Módulo Vendas, mudança tabelas-por-canal),
   a fila que ela hospeda e os seis botões de canal.

   Medidas LITERAIS do protótipo `Cotações não Informadas.dc.html` (artboards
   1 a 3): grade 68px 58px 1fr 112px 86px + 330px de botões, cabeçalho de
   8,5px, linha de 10,5px, botões de 24px. A grade perdeu os 52px da coluna
   Cotação, que a Delta derrubou. Cor não vem literal: o protótipo usa hex
   direto, e aqui tudo passa por token de `temas.css` — em especial o grupo
   Mista, que é violeta na matriz e precisa ser violeta aqui.

   Arquivo CSS comum, não `.razor.css` (regra fixa de 25/07/2026): cada
   seletor é prefixado pela classe raiz do seu componente —
   `.cotacoes-nao-informadas`, `.fila-cotacoes` ou `.botoes-canal`. */

/* ---------- Página ---------- */

.cotacoes-nao-informadas {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.cotacoes-nao-informadas__cabecalho {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.cotacoes-nao-informadas__titulos {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.cotacoes-nao-informadas__titulo {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-ink-forte);
}

.cotacoes-nao-informadas__subtitulo {
  font-size: 11.5px;
  color: var(--color-ink-soft);
}

.cotacoes-nao-informadas__subtitulo b {
  color: var(--color-ink-forte);
  font-weight: 700;
}

.cotacoes-nao-informadas__pilulas {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: none;
}

.cotacoes-nao-informadas__pilula {
  font-size: 10px;
  color: var(--color-subtle);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  padding: 4px 10px;
  white-space: nowrap;
}

.cotacoes-nao-informadas__pilula b {
  color: var(--success-text);
}

.cotacoes-nao-informadas__pilula--acesso {
  font-weight: 700;
  color: var(--color-ink-soft);
}

/* ---------- Fila ---------- */

.fila-cotacoes {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
}

.fila-cotacoes__aviso {
  font-size: 11px;
  color: var(--warning-text);
  background: var(--warning-bg);
  border: 1px solid var(--warning-border);
  border-radius: 8px;
  padding: 7px 12px;
}

.fila-cotacoes__lista {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 220px;
}

.fila-cotacoes__rolagem {
  overflow: auto;
  max-height: calc(100vh - 290px);
}

.fila-cotacoes__cabecalho,
.fila-cotacoes__linha,
.fila-cotacoes__linha-total {
  display: grid;
  /* Sete faixas: Emp./Ped., Data, Cliente, os TRÊS vendedores e Valor — mais
     a faixa fixa dos seis botões. As três de vendedor são iguais (112px, a
     largura que a coluna interna já tinha), porque a posição dos botões tem
     de ser a mesma em toda linha: faixa que se ajusta ao conteúdo moveria o
     botão entre uma linha e outra, que é a propriedade que faz esta tela
     funcionar. */
  grid-template-columns: 68px 58px minmax(0, 1fr) 112px 112px 112px 86px 330px;
  /* 820px + as duas faixas novas de 112px. É ARITMÉTICA, não medição: a
     largura em que a linha de sete colunas quebra de verdade está na Fase 6
     do tasks.md, e é medida na janela do navegador. */
  min-width: 1044px;
}

/* O detalhe da célula Não informado da matriz: UM vendedor só, e o grid de
   cinco faixas que a fila tinha antes das colunas novas (decisão do Sylvio de
   18/09/2026, "só nesta tela"). A faixa dos botões é a mesma. */
.fila-cotacoes--um-vendedor .fila-cotacoes__cabecalho,
.fila-cotacoes--um-vendedor .fila-cotacoes__linha,
.fila-cotacoes--um-vendedor .fila-cotacoes__linha-total {
  grid-template-columns: 68px 58px minmax(0, 1fr) 112px 86px 330px;
  min-width: 820px;
}

/* Rodapé de totais (RodapeTotaisGrade): a mesma grade das linhas, por uma
   classe própria — a de linha (.fila-cotacoes__linha) é a que os testes e o
   foco contam como pedido. O rótulo ocupa a primeira faixa e transborda para
   as vazias ao lado — rodape-totais.css o desenha por cima delas, e dá peso e fundo. */
.fila-cotacoes__linha-total {
  min-height: 30px;
}

.fila-cotacoes__linha-total .rodape-totais__rotulo {
  font-size: 10.5px;
  padding: 6px 8px;
}

.fila-cotacoes__cabecalho {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--color-table-head-bg);
  border-bottom: 1px solid var(--color-border);
  align-items: end;
}

.fila-cotacoes__cabecalho-celula {
  font-size: 8.5px;
  font-weight: 800;
  color: var(--color-table-head-ink);
  text-transform: uppercase;
  letter-spacing: .04em;
  padding: 7px 8px 6px;
}

.fila-cotacoes__cabecalho--atenuado .fila-cotacoes__cabecalho-celula {
  color: var(--color-disabled);
}

.fila-cotacoes__cabecalho-celula--estreita {
  padding: 7px 6px 6px;
}

.fila-cotacoes__cabecalho-celula--direita {
  text-align: right;
}

/* Rótulos de grupo sobre os botões: a largura de cada um vem do componente
   (soma dos botões do grupo), e o espaço entre eles é o fio de 1px + 6px de
   cada lado — o mesmo de `.botoes-canal__fio`. */
.fila-cotacoes__grupos {
  display: flex;
  align-items: flex-end;
  padding: 5px 10px 5px 8px;
}

/* O texto usa a tinta do cabeçalho, e a cor do grupo fica só no fio de
   baixo. O protótipo pintava o texto com a cor do grupo sobre um cabeçalho
   claro; aqui o cabeçalho de tabela é escuro (`--color-table-head-bg`), e o
   verde e o violeta ficavam ilegíveis — conferido na tela, com a stack no
   ar, em 12/09/2026. */
.fila-cotacoes__grupo {
  flex: none;
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--color-table-head-ink);
}

.fila-cotacoes__grupo::after {
  content: "";
  height: 2px;
  border-radius: 2px;
  background: var(--cor-grupo, currentColor);
}

.fila-cotacoes__grupo--ativa {
  --cor-grupo: var(--grupo-ativa);
}

.fila-cotacoes__grupo--mista {
  --cor-grupo: var(--grupo-mista);
}

.fila-cotacoes__grupo--passiva {
  --cor-grupo: var(--grupo-passiva);
}

.fila-cotacoes__grupo-espaco {
  width: 13px;
  flex: none;
}

.fila-cotacoes__linha {
  border-bottom: 1px solid var(--color-border-soft);
  align-items: center;
  min-height: 37px;
}

.fila-cotacoes__linha:hover {
  background: var(--color-surface-subtle);
}

.fila-cotacoes__linha--confirmacao,
.fila-cotacoes__linha--confirmacao:hover {
  background: var(--success-bg);
}

/* A vaga da linha que saiu: mesma altura, nada dentro, e nenhuma linha sobe. */
.fila-cotacoes__linha--vaga,
.fila-cotacoes__linha--vaga:hover {
  background: transparent;
}

.fila-cotacoes__celula {
  font-size: 10.5px;
  color: var(--color-ink);
  padding: 6px 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.fila-cotacoes__celula--estreita {
  padding: 6px 6px;
}

.fila-cotacoes__celula--ident {
  font-weight: 700;
  color: var(--color-ink-forte);
}

.fila-cotacoes__celula--data {
  font-size: 10px;
  color: var(--color-ink-soft);
}

.fila-cotacoes__celula--vendedor {
  font-size: 9.5px;
  color: var(--color-ink-soft);
  letter-spacing: -.01em;
}

.fila-cotacoes__celula--valor {
  text-align: right;
}

.fila-cotacoes__acao {
  padding: 5px 10px 5px 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
}

.fila-cotacoes__confirmacao-linha {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 24px;
}

.fila-cotacoes__confirmacao {
  font-size: 10.5px;
  color: var(--success-text);
  white-space: nowrap;
}

.fila-cotacoes__desfazer {
  height: 23px;
  flex: none;
  padding: 0 10px;
  border-radius: 6px;
  border: 1px solid var(--success-border);
  background: var(--color-surface);
  color: var(--success-text);
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
}

.fila-cotacoes__desfazer:disabled {
  cursor: progress;
  opacity: .6;
}

.fila-cotacoes__erro-linha {
  font-size: 9.5px;
  color: var(--danger-text);
}

.fila-cotacoes__pagina-definida {
  padding: 22px;
  text-align: center;
  font-size: 11.5px;
  color: var(--color-ink-soft);
}

.fila-cotacoes__pagina-definida b {
  color: var(--color-ink-forte);
}

/* ---------- Silhueta de carregamento ---------- */

.fila-cotacoes__silhueta-barra {
  height: 9px;
  border-radius: 4px;
  background: var(--color-skeleton);
}

.fila-cotacoes__silhueta-botao {
  height: 24px;
  flex: none;
  border-radius: 6px;
  background: var(--color-skeleton);
}

.fila-cotacoes__carregando {
  padding: 10px;
  text-align: center;
  font-size: 10.5px;
  color: var(--color-subtle);
}

/* ---------- Estados sem lista ---------- */

.fila-cotacoes__estado {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 30px;
}

.fila-cotacoes__estado-icone {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--success-bg);
  border: 1px solid var(--success-border);
  color: var(--color-primary);
}

.fila-cotacoes__estado-icone--alerta {
  background: var(--warning-bg);
  border-color: var(--warning-border);
  color: var(--warning-text);
}

.fila-cotacoes__estado-titulo {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-ink-forte);
  text-align: center;
}

.fila-cotacoes__estado-corpo {
  font-size: 12px;
  color: var(--color-ink-soft);
  text-align: center;
  max-width: 480px;
  line-height: 1.6;
}

.fila-cotacoes__estado-corpo b {
  color: var(--color-ink-forte);
}

.fila-cotacoes__estado-acoes {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  flex-wrap: wrap;
  justify-content: center;
}

.fila-cotacoes__estado-nota {
  font-size: 10px;
  color: var(--color-subtle);
}

.fila-cotacoes__botao-primario {
  height: 28px;
  flex: none;
  padding: 0 14px;
  border-radius: 7px;
  border: none;
  background: var(--color-ink-forte);
  color: var(--color-surface);
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.fila-cotacoes__botao-secundario {
  height: 26px;
  flex: none;
  padding: 0 12px;
  border-radius: 7px;
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  color: var(--color-ink);
  font-size: 10.5px;
  font-weight: 700;
  cursor: pointer;
}

/* ---------- Rodapé ---------- */

.fila-cotacoes__rodape {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.fila-cotacoes__ordenacao {
  display: flex;
  align-items: center;
  gap: 8px;
}

.fila-cotacoes__rodape-texto {
  font-size: 10px;
  color: var(--color-subtle);
}

.fila-cotacoes__seletor {
  height: 24px;
  border-radius: 6px;
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  color: var(--color-ink);
  font-size: 10px;
  padding: 0 6px;
}

.fila-cotacoes__paginacao {
  display: flex;
  align-items: center;
  gap: 10px;
}

.fila-cotacoes__pagina-botao {
  height: 24px;
  padding: 0 10px;
  border-radius: 6px;
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  color: var(--color-ink);
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
}

.fila-cotacoes__pagina-botao:disabled {
  color: var(--color-disabled);
  cursor: not-allowed;
}

.fila-cotacoes__pagina-rotulo {
  font-size: 10px;
  color: var(--color-ink-soft);
  font-variant-numeric: tabular-nums;
}

/* ---------- Os seis botões de canal ---------- */

.botoes-canal {
  display: flex;
  align-items: center;
}

.botoes-canal__grupo {
  display: flex;
  gap: 4px;
  flex: none;
}

.botoes-canal__fio {
  width: 1px;
  flex: none;
  height: 16px;
  background: var(--color-border);
  margin: 0 6px;
}

.botoes-canal__botao {
  height: 24px;
  flex: none;
  border-radius: 6px;
  border: 1px solid;
  font-size: 9.5px;
  font-weight: 700;
  cursor: pointer;
  padding: 0;
}

.botoes-canal__botao:disabled {
  cursor: progress;
  opacity: .55;
}

.botoes-canal__botao--ativa {
  color: var(--grupo-ativa);
  background: var(--success-bg);
  border-color: var(--success-border);
}

.botoes-canal__botao--mista {
  color: var(--grupo-mista);
  background: var(--violet-bg);
  border-color: var(--grupo-mista);
}

.botoes-canal__botao--passiva {
  color: var(--grupo-passiva);
  background: var(--info-bg);
  border-color: var(--info-border);
}

.botoes-canal__botao--ativa:not(:disabled):hover,
.botoes-canal__botao--ativa.botoes-canal__botao--selecionado {
  background: var(--grupo-ativa);
  border-color: var(--grupo-ativa);
  color: var(--color-surface);
}

.botoes-canal__botao--mista:not(:disabled):hover,
.botoes-canal__botao--mista.botoes-canal__botao--selecionado {
  background: var(--grupo-mista);
  border-color: var(--grupo-mista);
  color: var(--color-surface);
}

.botoes-canal__botao--passiva:not(:disabled):hover,
.botoes-canal__botao--passiva.botoes-canal__botao--selecionado {
  background: var(--grupo-passiva);
  border-color: var(--grupo-passiva);
  color: var(--color-surface);
}

.botoes-canal__botao:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
}
