/* Portal Graph A - fornecedores de terceirização: a lista e a ficha
   (publico/fornecedores-terc/fornecedores.js, 09/10/2026). Só tokens do
   comum: cor, letra, raio e espaço vêm de /comum/tokens.css. A lista usa o
   modelo Lista (g-pg) e a g-tabela; aqui só o que o comum ainda não tem
   (a ficha em três colunas e os campos). Tudo em @layer legado, como pede a
   catraca para página que usa g-*. */

@layer legado {
  #view-fornecedores.janela { max-width: none; padding: 0; }

  /* a lista e a ficha são páginas do modelo Lista: a janela não rola, rola
     a tabela (lista) ou o corpo (ficha) */
  #ft-area-lista[hidden], #ft-area-ficha[hidden], .ft-inclusao[hidden] { display: none; }

  .ft-inclusao { border: 1px solid var(--line); border-radius: var(--raio-g); background: var(--surface-2); padding: var(--esp-3); display: flex; flex-direction: column; gap: var(--esp-2); margin-bottom: var(--esp-2); }
  .ft-resultados { display: flex; flex-direction: column; gap: var(--esp-1); }
  .ft-resultado { display: flex; align-items: center; justify-content: space-between; gap: var(--esp-3); padding: var(--esp-1) 0; border-bottom: 1px solid var(--line); }
  .ft-resultado:last-child { border-bottom: 0; }
  .ft-nome { font-family: var(--ff-texto); font-size: var(--fs-texto); font-weight: 600; color: var(--ink); }
  .ft-vazio { font-family: var(--ff-texto); font-size: var(--fs-texto); color: var(--ink-2); padding: var(--esp-3) 0; }
  .ft-vazio-pq { padding: var(--esp-1) 0; font-size: var(--fs-apoio); }

  /* ---------- a ficha ---------- */
  .ft-corpo { flex: 1 1 auto; min-height: 0; overflow-y: auto; display: flex; flex-direction: column; gap: var(--esp-3); padding-bottom: var(--esp-3); }
  .ft-grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--esp-4); align-items: start; }
  .ft-col { display: flex; flex-direction: column; gap: var(--esp-4); min-width: 0; }
  .ft-secao { border: 1px solid var(--line); border-radius: var(--raio-g); background: var(--surface); padding: var(--esp-3); display: flex; flex-direction: column; gap: var(--esp-3); }
  .ft-secao h2 { margin: 0; font-family: var(--ff-titulo); font-size: var(--fs-valor); font-weight: 700; color: var(--ink); }
  .ft-apoio { font-family: var(--ff-texto); font-size: var(--fs-apoio); color: var(--ink-2); }
  .ft-dado { font-family: var(--ff-dado); }

  .ft-campo { display: flex; flex-direction: column; gap: var(--esp-1); }
  .ft-campos { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--esp-3); }
  .ft-campo-largo { grid-column: 1 / -1; }
  .ft-rotulo { font-family: var(--ff-titulo); font-size: var(--fs-rotulo); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--ink-3); }
  .ft-dica { font-family: var(--ff-texto); font-size: var(--fs-apoio); color: var(--ink-2); }
  .ft-in {
    width: 100%; box-sizing: border-box; min-height: var(--ctl-h); padding: var(--esp-1) var(--esp-3);
    font-family: var(--ff-texto); font-size: var(--fs-texto);
    color: var(--ink); background: var(--surface-2); border: 1px solid var(--line-controle); border-radius: var(--raio-p);
  }
  .ft-in:focus-visible { outline: 2px solid var(--foco); outline-offset: 1px; }
  .ft-in[readonly] { color: var(--ink-2); }
  .ft-area { resize: vertical; min-height: 64px; }
  .ft-secao > button { align-self: flex-start; }

  .ft-itens { display: flex; flex-direction: column; }
  .ft-item { display: flex; align-items: center; justify-content: space-between; gap: var(--esp-3); padding: var(--esp-2) 0; border-bottom: 1px solid var(--line); flex-wrap: wrap; }
  .ft-item:last-child { border-bottom: 0; }
  .ft-item-txt { min-width: 0; display: flex; flex-direction: column; gap: 2px; overflow-wrap: anywhere; }
  .ft-item-nome { font-family: var(--ff-texto); font-size: var(--fs-texto); font-weight: 600; color: var(--ink); display: flex; align-items: center; gap: var(--esp-2); flex-wrap: wrap; }
  .ft-item-acoes { display: flex; gap: var(--esp-2); flex: none; }
  .ft-item > [data-g-confirma-aberta] { flex: 1 1 100%; }

  .ft-form-espaco:empty { display: none; }
  .ft-form { border: 1px solid var(--passo); background: var(--passo-soft); border-radius: var(--raio-g); padding: var(--esp-3); display: flex; flex-direction: column; gap: var(--esp-3); }
  .ft-form-botoes { display: flex; gap: var(--esp-2); }
  .ft-marca { display: flex; align-items: center; gap: var(--esp-2); font-family: var(--ff-texto); font-size: var(--fs-texto); color: var(--ink); }

  .ft-servicos { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--esp-1) var(--esp-3); }

  .ft-chips { display: flex; flex-wrap: wrap; gap: var(--esp-2); align-items: center; }
  .ft-chips .ft-rotulo { width: 100%; }
  .ft-chip { font-family: var(--ff-dado); font-size: var(--fs-apoio); }

  .ft-detalhe { border: 1px solid var(--line); border-radius: var(--raio-g); padding: var(--esp-2) var(--esp-3); font-family: var(--ff-texto); font-size: var(--fs-texto); color: var(--ink); }
  .ft-detalhe summary { cursor: pointer; font-weight: 600; }
  .ft-hist { font-family: var(--ff-texto); font-size: var(--fs-apoio); color: var(--ink-2); padding: var(--esp-1) 0; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }
  .ft-hist:last-child { border-bottom: 0; }

  @media (max-width: 1100px) {
    .ft-grade { grid-template-columns: minmax(0, 1fr); }
  }
}
