/* Admin > Integrações. Reaproveita .card-config / .criterio / .input-config de
   admin-metricas.css; aqui só o que é específico da tela. */

.integracao-resumo {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px 32px;
}
.integracao-resumo__rotulo {
  font-size: 12px;
  font-weight: 600;
  color: var(--txt-3);
  margin: 0 0 6px;
}
.integracao-resumo__valor {
  font-size: 14px;
  font-weight: 600;
  color: var(--txt-1);
  margin: 0;
  line-height: 1.5;
}
.integracao-resumo__origem {
  font-size: 12px;
  font-weight: 400;
  color: var(--txt-3);
  margin: 2px 0 0;
}

/* Selo de estado (ligado, confere, diferente...) */
.integracao-selo {
  display: inline-flex;
  align-items: center;
  padding: 2px 10px;
  border-radius: 999px;
  border: 1px solid;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}
.integracao-selo--on {
  background: var(--color-success-soft);
  border-color: var(--color-success-border);
  color: var(--color-success);
}
.integracao-selo--off {
  background: var(--sup-hover);
  border-color: var(--linha);
  color: var(--txt-2);
}
.integracao-selo--erro {
  background: var(--color-danger-soft);
  border-color: var(--color-danger-border);
  color: var(--color-danger);
}

.integracao-aviso {
  margin-top: 20px;
  background: var(--color-warning-soft);
  border: 1px solid var(--color-warning-border);
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 13px;
  color: var(--color-warning);
  line-height: 1.5;
}
.integracao-remover { margin-top: 20px; }

.integracao-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  color: var(--txt-2);
  cursor: pointer;
}
.integracao-avancado { margin-top: 4px; }
.integracao-avancado summary {
  font-size: 13px;
  font-weight: 600;
  color: var(--txt-3);
  cursor: pointer;
  margin-bottom: 14px;
}

.input-config--largo { width: 100%; max-width: 440px; }
.input-config--chave { width: 100%; min-width: 220px; }
.input-config--select { width: auto; min-width: 140px; background: var(--sup); }

/* Tabela do mapa de campos */
.integracao-ajuda {
  display: block;
  font-size: 12px;
  font-weight: 400;
  color: var(--txt-4);
  line-height: 1.5;
  margin-top: 2px;
}
.integracao-tipo { font-size: 13px; color: var(--txt-3); }

/* Linhas de teste: texto à esquerda, ação à direita */
.integracao-teste {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 16px 0;
  border-bottom: 1px solid var(--linha-suave);
}
.integracao-teste:first-child { padding-top: 0; }
.integracao-teste--ultimo { border-bottom: 0; padding-bottom: 0; }
.integracao-teste__titulo {
  font-size: 14px;
  font-weight: 600;
  color: var(--txt-1);
  margin: 0 0 4px;
}
.integracao-teste__texto {
  font-size: 13px;
  color: var(--txt-3);
  line-height: 1.6;
  max-width: 560px;
  margin: 0;
}
.integracao-teste__form { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
@media (max-width: 760px) {
  .integracao-teste { flex-direction: column; align-items: flex-start; }
}

/* Resultado dos testes (dentro do turbo-frame #resultado) */
turbo-frame#resultado { display: block; }
.resultado {
  border: 1px solid;
  border-radius: 12px;
  padding: 20px 24px;
  font-size: 13px;
  line-height: 1.6;
}
.resultado p { margin: 0 0 8px; }
.resultado p:last-child { margin-bottom: 0; }
.resultado .tabela-envoltura { margin-top: 12px; background: var(--sup); }
.resultado__titulo { font-size: 15px; font-weight: 700; }
.resultado__subtitulo { font-weight: 700; margin-top: 16px !important; }
.resultado--ok {
  background: var(--color-success-soft);
  border-color: var(--color-success-border);
  color: var(--txt-1);
}
.resultado--ok .resultado__titulo { color: var(--color-success); }
.resultado--aviso {
  background: var(--color-warning-soft);
  border-color: var(--color-warning-border);
  color: var(--txt-1);
}
.resultado--aviso .resultado__titulo { color: var(--color-warning); }
.resultado--erro {
  background: var(--color-danger-soft);
  border-color: var(--color-danger-border);
  color: var(--txt-1);
}
.resultado--erro .resultado__titulo { color: var(--color-danger); }

.integracao-valores { list-style: none; margin: 0; padding: 0; }
.integracao-valores li { padding: 2px 0; }
.integracao-valores__rotulo { color: var(--txt-3); }

.integracao-avancado summary { transition: color 0.12s; }
.integracao-avancado summary:hover { color: var(--marca-texto); }

/* ── Aba Consulta de onboarding ─────────────────────────────── */
/* Um bloco por funil, com uma caixa de seleção por etapa. */
.onboarding-funil {
  border: 1px solid var(--linha);
  border-radius: 8px;
  padding: 12px 16px 14px;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 8px 24px;
}
.onboarding-funil legend { padding: 0 6px; }
.onboarding-funil__etapa { font-weight: 500; }
.onboarding-funil__id { font-size: 11.5px; color: var(--txt-3); }
.onboarding-etapas { margin: 0 0 8px; padding-left: 18px; font-size: 13.5px; color: var(--txt-2); }
.onboarding-etapas li { padding: 2px 0; }
