/* Controle de Créditos — saldo consolidado por cliente */

/* ---------- Resumo (cartões) ---------- */
.creditos .cr-resumo {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 15px 0 10px;
}
.creditos .cr-card {
  flex: 1 1 220px;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-left-width: 4px;
  border-radius: 3px;
  padding: 10px 14px;
}
.creditos .cr-card--debito  { border-left-color: #a90329; }
.creditos .cr-card--credito { border-left-color: #356635; }
.creditos .cr-card--liquido { border-left-color: #57889c; }
.creditos .cr-card__rotulo { font-size: 13px; color: #555; font-weight: 600; }
.creditos .cr-card__rotulo small { font-weight: normal; color: #999; }
.creditos .cr-card__valor { font-size: 22px; font-weight: 600; margin: 2px 0; white-space: nowrap; }
.creditos .cr-card--debito .cr-card__valor  { color: #a90329; }
.creditos .cr-card--credito .cr-card__valor { color: #356635; }
.creditos .cr-card__info { font-size: 12px; color: #999; }

.creditos .cr-selecao {
  background: #fdf8e4;
  border: 1px solid #f0e0a8;
  border-radius: 3px;
  padding: 6px 12px;
  margin-bottom: 10px;
  font-size: 13px;
}
.creditos .cr-selecao a { margin-left: 8px; }

/* ---------- Colunas ---------- */
.creditos .cr-listas { width: 100%; margin-top: 5px; }
.creditos .creditos-coluna {
  box-sizing: border-box;
  padding-left: 15px;
  padding-right: 15px;
}
@media (min-width: 992px) {
  .creditos .creditos-coluna + .creditos-coluna { border-left: 1px solid #e3e3e3; }
}
.creditos .creditos-coluna__cabecalho {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding: 8px 0 6px;
  margin-bottom: 2px;
  border-bottom: 2px solid #ccc;
}
.creditos .creditos-coluna__cabecalho--devedores { border-bottom-color: #a90329; }
.creditos .creditos-coluna__cabecalho--credores  { border-bottom-color: #356635; }
.creditos .creditos-coluna__cabecalho--zerados   { border-bottom-color: #bbb; }
.creditos .creditos-coluna__titulo { font-size: 15px; font-weight: 600; margin-right: 6px; }
.creditos .creditos-coluna__cabecalho--zerados a.creditos-coluna__titulo { color: #555; text-decoration: none; }
.creditos .creditos-coluna__total { margin-left: auto; font-size: 15px; white-space: nowrap; }
.creditos .creditos-coluna__cabecalho .note { flex: 0 0 100%; margin-top: 1px; }
.creditos .creditos-zerados { margin-top: 25px; }
.creditos .cr-ver-todos { display: block; text-align: center; padding: 8px 0; font-size: 13px; }
.creditos .cr-vazio { padding: 10px 0; }

/* ---------- Linha do cliente ---------- */
.creditos .cr-item {
  border-bottom: 1px solid #eee;
  padding: 6px 4px;
}
.creditos .cr-item:hover { background: #f7f9fb; }
.creditos .cr-item--selecionado { background: #fdf8e4; }
.creditos .cr-linha {
  display: flex;
  align-items: center;
  min-height: 34px;
}
/* checkbox do smart-form, sem o deslocamento padrão */
.creditos .smart-form .checkbox.cr-check {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin: 0 4px 0 0;
  padding: 0;
  line-height: 20px;
  visibility: hidden;
}
.creditos .smart-form .checkbox.cr-check i { top: 1px; left: 0; }
.creditos .cr-item:hover .cr-check,
.creditos .cr-item--selecionado .cr-check,
.creditos .smart-form .checkbox.cr-check input:checked + i { visibility: visible; }
.creditos .cr-expandir {
  flex: 0 0 16px;
  width: 16px;
  color: #888;
  text-align: center;
  text-decoration: none;
}
.creditos .cr-nome {
  flex: 1 1 auto;
  min-width: 0;
  padding-left: 2px;
}
.creditos .cr-nome > a {
  display: block;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.creditos .cr-sub {
  font-size: 11px;
  color: #999;
  line-height: 15px;
}
.creditos .cr-sub > span + span:before { content: "·"; margin: 0 5px; color: #ccc; }
.creditos .cr-sub--parado { color: #c79121; font-weight: 600; }
.creditos .cr-selo {
  display: inline-block;
  padding: 0 5px;
  border-radius: 2px;
  background: #e8eef3;
  color: #57889c;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .3px;
}
.creditos .cr-sub > span.cr-selo:before { content: ""; margin: 0 3px; }
.creditos .cr-selo--alerta { background: #fbeed5; color: #c79121; }
.creditos .cr-acao {
  flex: 0 0 22px;
  text-align: center;
  color: #356635;
  opacity: 0;
  transition: opacity .15s;
}
.creditos .cr-item:hover > .cr-linha .cr-acao,
.creditos .cr-membros li:hover .cr-acao { opacity: 1; }
.creditos .cr-valor {
  flex: 0 0 auto;
  padding-left: 10px;
  font-size: 15px;
  font-weight: 600;
  white-space: nowrap;
}

/* ---------- Detalhes ---------- */
.creditos .cr-detalhe,
.creditos .cr-alerta {
  margin: 2px 0 0 42px;
  font-size: 11px;
  color: #777;
}
.creditos .cr-alerta { color: #c79121; }
.creditos .cr-membros {
  list-style: none;
  margin: 4px 0 2px 42px;
  padding: 0;
  border-left: 2px solid #e3e3e3;
}
.creditos .cr-membros li {
  display: flex;
  align-items: center;
  padding: 3px 0 3px 10px;
  font-size: 12px;
}
.creditos .cr-membro__nome {
  flex: 0 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.creditos .cr-membro__info { flex: 1 1 auto; color: #999; font-size: 11px; padding-left: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.creditos .cr-membro__info > span + span:before { content: "·"; margin: 0 5px; }
.creditos .cr-membro__valor { flex: 0 0 auto; padding-left: 8px; white-space: nowrap; }

/* ---------- Abas ---------- */
.creditos .cr-abas { margin: 5px 0 15px; }
.creditos .cr-abas > li > a { cursor: pointer; }

/* ---------- Dashboard ---------- */
.cr-dash__barra { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 15px; }
.cr-dash__nota { font-size: 12px; color: #898781; }
.cr-kpis { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 12px; }
.cr-kpi {
  flex: 1 1 220px;
  background: #fff;
  border: 1px solid #e1e0d9;
  border-radius: 4px;
  padding: 12px 14px;
}
.cr-kpi__rotulo { font-size: 12px; color: #52514e; font-weight: 600; }
.cr-kpi__valor { font-size: 26px; font-weight: 600; color: #0b0b0b; margin: 2px 0; white-space: nowrap; }
.cr-kpis--secundarios .cr-kpi__valor { font-size: 22px; }
.cr-kpi__info { font-size: 12px; color: #898781; }
.cr-kpi__delta { font-size: 12px; margin-top: 4px; font-weight: 600; }
.cr-delta--ruim { color: #a90329; }
.cr-delta--bom { color: #006300; }
.cr-delta--neutro { color: #52514e; }
.cr-kpi__linha { display: flex; align-items: baseline; gap: 6px; margin-top: 6px; font-size: 13px; color: #52514e; }
.cr-kpi__linha span { flex: 1 1 auto; }
.cr-kpi__linha strong { font-size: 16px; color: #0b0b0b; }
.cr-kpi__linha small { color: #898781; }
.cr-icone-alerta { color: #c79121; }
.cr-medidor { height: 6px; background: #e8eef7; border-radius: 3px; margin-top: 8px; overflow: hidden; }
.cr-medidor__barra { height: 100%; border-radius: 3px; }
.cr-medidor__barra--credito { background: #2a78d6; }
.cr-medidor__barra--debito { background: #e34948; }
.cr-kpi .cr-medidor:has(.cr-medidor__barra--debito) { background: #fbe4e3; }
.cr-painel {
  background: #fff;
  border: 1px solid #e1e0d9;
  border-radius: 4px;
  padding: 12px 14px 6px;
  margin-bottom: 15px;
}
.cr-painel h3 { font-size: 15px; font-weight: 600; margin: 0 0 2px; color: #0b0b0b; }
.cr-painel__sub { font-size: 12px; color: #898781; margin: 0 0 4px; }
.cr-tabela { margin-bottom: 6px; font-size: 13px; }
.cr-tabela th { font-size: 11px; color: #898781; font-weight: 600; border-bottom-width: 1px !important; }
.cr-tabela td { font-variant-numeric: tabular-nums; }
