.emp-resumo__alerta {
  color: var(--status-atraso);
  font-weight: 600;
}

.emp-chips {
  display: flex;
  gap: 8px;
  margin-bottom: 12px;
  padding-bottom: 4px;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.emp-chips::-webkit-scrollbar {
  display: none;
}

.emp-chip {
  flex: none;
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid var(--cor-borda);
  border-radius: 999px;
  background: transparent;
  color: var(--cor-texto-suave);
  font-weight: 550;
  transition: transform 0.12s cubic-bezier(0.22, 0.61, 0.36, 1), background 0.12s, color 0.12s;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.emp-chip[aria-pressed="true"] {
  background: var(--cor-primaria);
  border-color: var(--cor-primaria);
  color: var(--cor-sobre-primaria);
}

.emp-chip:active {
  transform: scale(0.96);
}

.emp-chip:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 2px;
}

.emp-progresso {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--cor-borda);
}

.emp-progresso > span {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: var(--status-pago);
}

.emp-progresso--grande {
  height: 8px;
  margin-top: 6px;
}

.emp-vazio {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 40px 16px;
  border: 1px dashed var(--cor-borda);
  border-radius: 20px;
  text-align: center;
}

.emp-formulario {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

.emp-formulario > * {
  min-width: 0;
}

.emp-formulario__duplo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.emp-total {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
  padding: 14px 16px;
  border-radius: 16px;
  background: var(--cor-primaria-suave);
}

.emp-total__valor {
  font-size: 1.5rem;
  font-variant-numeric: tabular-nums;
}

.emp-previa summary {
  padding: 8px 0;
  color: var(--cor-link);
  font-weight: 600;
  cursor: pointer;
}

.emp-previa[hidden] {
  display: none;
}

.emp-detalhe {
  display: grid;
  gap: 12px;
}

.emp-saldos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.emp-saldo {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px;
  border-radius: 14px;
  background: var(--cor-superficie-alt);
}

.emp-saldo strong {
  font-size: 1.05rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-titulo {
  margin: 10px 0 0;
  font-size: 0.95rem;
  color: var(--cor-texto-suave);
}

.emp-parcelas,
.emp-pagamentos {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.emp-parcela {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid var(--cor-borda);
  border-radius: 14px;
}

.emp-parcela--vencida {
  border-color: var(--status-atraso);
}

.emp-parcela--paga {
  opacity: 0.85;
}

.emp-parcela__topo,
.emp-pagamento {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4px 10px;
}

.emp-parcela__valores {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2px 10px;
  font-size: 0.9rem;
}

.emp-parcela__acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.emp-pagamento {
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--cor-superficie-alt);
  font-size: 0.9rem;
}

@media (max-width: 340px) {
  .emp-formulario__duplo {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .emp-chip:active {
    transform: none;
  }
}

.emp-forma {
  flex: 1 0 100%;
  font-size: 0.9rem;
}

.emp-parcela__selos {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
}

.emp-pagamento__alocacao {
  flex: 1 0 100%;
  font-size: 0.82rem;
  overflow-wrap: anywhere;
}

.emp-evento {
  align-items: flex-start;
}

.emp-resumo-titulo {
  margin-top: 6px;
  font-size: 0.9rem;
}

.emp-excedente {
  display: grid;
  gap: 12px;
}

.emp-excedente[hidden],
.emp-excedente__capital[hidden] {
  display: none;
}

.emp-excedente__capital {
  display: grid;
  gap: 12px;
}

.emp-opcoes {
  display: grid;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--cor-borda);
  border-radius: 14px;
}

.emp-opcoes legend {
  padding: 0 6px;
  font-weight: 600;
}

.emp-opcao {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 10px;
  cursor: pointer;
}

.emp-opcao:has(input:checked) {
  background: var(--cor-primaria-suave);
}

.emp-opcao input {
  flex: none;
  margin-top: 3px;
}

.emp-opcao span {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.emp-exclusao__todas {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.emp-exclusao__linha {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  padding: 6px 4px;
  border-bottom: 1px solid var(--cor-borda);
  cursor: pointer;
}

.emp-exclusao__linha:last-child {
  border-bottom: 0;
}

.emp-exclusao__item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 0;
  border-bottom: 1px solid var(--cor-borda);
}

.emp-exclusao__item--bloqueado strong {
  color: var(--cor-texto-suave);
}

.emp-exclusao__motivo {
  color: var(--status-atraso-texto, var(--cor-perigo));
  font-size: 0.85rem;
}

.emp-relatorio-tabela td,
.emp-relatorio-tabela th {
  white-space: nowrap;
}

@media (max-width: 420px) {
  .emp-exclusao__linha {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .emp-exclusao__linha .selo {
    grid-column: 2 / -1;
    justify-self: start;
  }
}


.emp-cabecalho {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  margin-bottom: 20px;
}

.emp-cabecalho__titulo h1 {
  margin: 0;
  font-size: clamp(1.6rem, 6vw, 2rem);
  letter-spacing: -0.01em;
}

.emp-cabecalho__selo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  color: var(--cor-texto-suave);
  font-size: 0.74rem;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.emp-cabecalho__selo svg {
  color: var(--status-aberto);
}

.emp-cabecalho__mes .seletor-mes {
  align-items: center;
  gap: 4px;
}

.emp-cabecalho__mes .seletor-mes__rotulo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 20px 0 44px;
  border: 1px solid var(--cor-borda);
  border-radius: 999px;
  background: var(--cor-superficie) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='1.8' stroke-linecap='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E") no-repeat 16px center / 18px;
  box-shadow: var(--sombra);
}

.emp-painel {
  display: grid;
  gap: 16px;
  margin-bottom: 28px;
}

.emp-kpis {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.emp-kpi {
  --kpi-cor: var(--status-aberto);
  --kpi-fundo: #eef4ff;
  --kpi-borda: #dbe6fb;
  --kpi-texto: var(--cor-texto);
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  min-width: 0;
  width: 100%;
  padding: 20px 36px 20px 18px;
  border: 1px solid var(--kpi-borda);
  border-radius: 16px;
  background: var(--kpi-fundo);
  color: inherit;
  font: inherit;
  text-align: left;
  text-decoration: none;
  box-shadow: var(--sombra);
}

.emp-kpi--disponivel {
  --kpi-cor: #16a34a;
  --kpi-fundo: #ecfaf1;
  --kpi-borda: #cdeedb;
}

.emp-kpi--emprestado {
  --kpi-cor: #2563eb;
  --kpi-fundo: #eef4ff;
  --kpi-borda: #dbe6fb;
}

.emp-kpi--receber {
  --kpi-cor: #4f46e5;
  --kpi-fundo: #f1f3fd;
  --kpi-borda: #dfe3f8;
}

.emp-kpi--atraso {
  --kpi-cor: #dc2626;
  --kpi-fundo: #fdf0f1;
  --kpi-borda: #f8d7da;
}

.emp-kpi.resumo--botao:hover,
.emp-kpi.resumo--link:hover {
  filter: brightness(0.98);
}

.emp-kpi__icone {
  flex: none;
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--kpi-cor) 16%, #fff);
  color: var(--kpi-cor);
}

.emp-kpi__texto {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.emp-kpi__rotulo {
  color: var(--cor-texto);
  font-size: 0.92rem;
  font-weight: 550;
}

.emp-kpi__valor {
  color: var(--cor-texto);
  font-size: clamp(1.15rem, 4.4vw, 1.6rem);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.emp-kpi__detalhe {
  color: var(--cor-texto-suave);
  font-size: 0.86rem;
}

.emp-kpi__seta {
  position: absolute;
  top: 16px;
  right: 16px;
  color: var(--cor-texto-suave);
  font-size: 1.5rem;
  line-height: 1;
}

.emp-lucro {
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 0;
  padding: 24px;
  overflow: hidden;
  border: 1px solid #cdeedb;
  border-radius: 16px;
  background: linear-gradient(120deg, #eefbf3 0%, #f4fcf7 60%, #e3f6ea 100%);
  box-shadow: var(--sombra);
}

.emp-lucro__icone {
  flex: none;
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #22c55e;
  color: #fff;
  box-shadow: 0 6px 16px rgba(34, 197, 94, 0.3);
}

.emp-lucro__texto {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  flex: 1;
}

.emp-lucro__rotulo {
  font-weight: 650;
}

.emp-lucro__valor {
  color: #15803d;
  font-size: clamp(1.6rem, 7vw, 2.2rem);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-lucro__detalhe {
  max-width: 420px;
  color: var(--cor-texto-suave);
  font-size: 0.9rem;
}

.emp-lucro__tendencia {
  flex: none;
  align-self: flex-start;
  color: #15803d;
}

.emp-secao__topo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  margin-bottom: 16px;
}

.emp-secao__titulo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  font-size: 1.2rem;
}

.emp-secao__icone {
  display: inline-flex;
  color: #2563eb;
}

.emp-ver-todos {
  padding: 4px 0;
  border: 0;
  background: none;
  color: #2563eb;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 550;
  cursor: pointer;
}

.emp-vencimentos {
  margin-bottom: 24px;
}

.emp-filtros {
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
  padding-bottom: 2px;
  overflow-x: auto;
  scrollbar-width: none;
}

.emp-filtros::-webkit-scrollbar {
  display: none;
}

.emp-filtro {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 22px;
  border: 0;
  border-radius: 999px;
  background: var(--cor-superficie-alt);
  color: var(--cor-texto-suave);
  font: inherit;
  font-weight: 550;
  cursor: pointer;
}

.emp-filtro[aria-pressed="true"] {
  background: #1d63ed;
  color: #fff;
}

.emp-filtro:focus-visible,
.emp-venc:focus-visible,
.emp-ver-todos:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 2px;
}

.emp-filtro__qtd {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--cor-neutra-suave);
  color: var(--cor-texto);
  font-size: 0.72rem;
  font-weight: 700;
}

.emp-filtro__qtd--alerta {
  background: #dc2626;
  color: #fff;
}

.emp-tabela-venc {
  overflow: hidden;
  border: 1px solid var(--cor-borda);
  border-radius: 14px;
  background: var(--cor-superficie);
  box-shadow: var(--sombra);
}

.emp-vencs__cabecalho {
  display: none;
}

.emp-vencs {
  margin: 0;
  padding: 0;
  list-style: none;
}

.emp-vencs > li + li {
  border-top: 1px solid var(--cor-borda);
}

.emp-vencs__vazio {
  padding: 24px 16px;
  color: var(--cor-texto-suave);
  text-align: center;
}

.emp-venc {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  grid-template-areas:
    "avatar nome valor"
    "avatar situacao data";
  align-items: center;
  gap: 4px 12px;
  width: 100%;
  padding: 14px 16px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.emp-venc:hover {
  background: var(--cor-superficie-alt);
}

.emp-venc__avatar {
  grid-area: avatar;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 700;
}

.emp-venc__nome {
  grid-area: nome;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.emp-venc__valor {
  grid-area: valor;
  justify-self: end;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-venc__data {
  grid-area: data;
  justify-self: end;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-venc__situacao {
  grid-area: situacao;
  justify-self: start;
}

.emp-venc__seta {
  display: none;
}

.emp-situacao {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 550;
  white-space: nowrap;
}

.emp-situacao--atrasada {
  background: #fdecee;
  color: #dc2626;
}

.emp-situacao--em-dia {
  background: #eaf2ff;
  color: #2563eb;
}

.emp-situacao--proximo {
  background: #f1edfe;
  color: #7c3aed;
}

.emp-compacto {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 28px;
  padding: 18px;
  border-radius: 16px;
  background: #f2f6fc;
}

.emp-compacto:empty {
  display: none;
}

.emp-compacto__item {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.emp-compacto__icone {
  flex: none;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #e3ebf8;
  color: #2563eb;
}

.emp-compacto__texto {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.emp-compacto__rotulo {
  color: var(--cor-texto-suave);
  font-size: 0.76rem;
}

.emp-compacto__texto strong {
  font-size: 1.15rem;
  font-variant-numeric: tabular-nums;
}

.emp-contratos__titulo {
  margin-bottom: 12px;
}

@media (min-width: 620px) {
  .emp-vencs__cabecalho,
  .emp-venc {
    grid-template-columns: 36px minmax(0, 1.6fr) minmax(100px, 1fr) minmax(96px, 1fr) minmax(110px, 1fr) 16px;
    grid-template-areas: none;
    gap: 12px;
  }

  .emp-vencs__cabecalho {
    display: grid;
    padding: 14px 16px;
    border-bottom: 1px solid var(--cor-borda);
    color: var(--cor-texto-suave);
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .emp-vencs__cabecalho span:first-child {
    grid-column: 1 / 3;
  }

  .emp-venc > * {
    grid-area: auto;
  }

  .emp-venc__valor,
  .emp-venc__data {
    justify-self: start;
  }

  .emp-venc__seta {
    display: block;
    color: var(--cor-texto-suave);
    font-size: 1.4rem;
    line-height: 1;
  }
}

@media (max-width: 560px) {
  .emp-kpis {
    gap: 10px;
  }

  .emp-kpi {
    flex-direction: column;
    gap: 10px;
    padding: 14px 30px 14px 14px;
  }

  .emp-kpi__icone {
    width: 44px;
    height: 44px;
  }

  .emp-kpi__seta {
    top: 12px;
    right: 12px;
  }

  .emp-lucro {
    gap: 14px;
    padding: 18px;
  }

  .emp-lucro__icone {
    width: 52px;
    height: 52px;
  }

  .emp-secao__topo {
    flex-wrap: nowrap;
  }

  .emp-secao__titulo {
    gap: 8px;
    font-size: 1rem;
  }

  .emp-ver-todos {
    flex: none;
  }

  .emp-compacto {
    gap: 12px 8px;
    padding: 14px;
  }

  .emp-compacto__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .emp-compacto__icone {
    width: 36px;
    height: 36px;
  }
}

@media (max-width: 340px) {
  .emp-kpis {
    grid-template-columns: minmax(0, 1fr);
  }
}

.emp-atalhos {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
}

.emp-atalhos .botao {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.emp-compacto__item--link {
  border-radius: 10px;
  color: inherit;
  text-decoration: none;
}

.emp-compacto__item--link:hover strong {
  color: var(--status-aberto);
}

.emp-voltar {
  display: inline-block;
  margin-bottom: 6px;
  color: var(--cor-link);
  font-size: 0.9rem;
  text-decoration: none;
}

.emp-filtros--resumo {
  flex-wrap: wrap;
}

.emp-filtro--total {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  min-height: 0;
  padding: 8px 16px;
  border-radius: 12px;
}

.emp-filtro__rotulo {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.85rem;
}

.emp-filtro__valor {
  font-size: 1rem;
  font-variant-numeric: tabular-nums;
}

.emp-filtro--alerta[aria-pressed="false"] .emp-filtro__valor {
  color: var(--status-atraso-texto);
}

.emp-situacao--hoje {
  background: var(--cor-alerta-suave);
  color: var(--cor-alerta);
}

.emp-receber {
  margin: 0;
  padding: 0;
  list-style: none;
}

.emp-receber > li + li {
  border-top: 1px solid var(--lista-divisoria, var(--cor-borda));
}

.emp-receber__cabecalho {
  display: none;
}

.emp-receber__linha {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  grid-template-areas:
    "avatar cliente valor"
    "avatar situacao data"
    "acoes acoes acoes";
  align-items: center;
  gap: 4px 10px;
  padding: 8px 10px;
}

.emp-receber__linha--atrasada {
  box-shadow: inset 3px 0 0 var(--status-atraso);
}

.emp-receber__linha .emp-venc__avatar {
  grid-area: avatar;
  align-self: start;
}

.emp-receber__cliente {
  grid-area: cliente;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.emp-receber__cliente strong,
.emp-receber__cliente span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.emp-receber__cliente span {
  font-size: 0.8rem;
}

.emp-receber__cliente:hover strong {
  color: var(--status-aberto);
}

.emp-receber__valor {
  grid-area: valor;
  justify-self: end;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-receber__data {
  grid-area: data;
  justify-self: end;
  color: var(--cor-texto-suave);
  font-size: 0.85rem;
  white-space: nowrap;
}

.emp-receber__situacao {
  grid-area: situacao;
  justify-self: start;
}

.emp-receber__acoes {
  grid-area: acoes;
  display: flex;
  justify-content: flex-end;
  gap: 6px;
}

.emp-receber__acoes .botao--pequeno,
.emp-parcela__acoes .botao--pequeno {
  min-height: 30px;
  padding: 0 12px;
  font-size: 0.82rem;
}

.emp-parcelas--lista .emp-parcela {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "info valor"
    "selo acoes";
  align-items: center;
  gap: 4px 10px;
}

.emp-parcelas--lista .emp-parcela__info {
  grid-area: info;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.emp-parcelas--lista .emp-parcela__info span {
  font-size: 0.82rem;
}

.emp-parcelas--lista .emp-parcela__valor {
  grid-area: valor;
  justify-self: end;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-parcelas--lista .selo {
  grid-area: selo;
  justify-self: start;
}

.emp-parcelas--lista .emp-parcela__acoes {
  grid-area: acoes;
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 6px;
}

.emp-parcela--paga .emp-parcela__valor,
.emp-parcela--cancelada .emp-parcela__valor {
  color: var(--cor-texto-suave);
}

.emp-secao-recolhida {
  border: 1px solid var(--lista-divisoria, var(--cor-borda));
  border-radius: 8px;
}

.emp-secao-recolhida > summary {
  padding: 10px 12px;
  font-weight: 600;
  cursor: pointer;
}

.emp-secao-recolhida[open] > summary {
  border-bottom: 1px solid var(--lista-divisoria, var(--cor-borda));
}

.emp-secao-recolhida > :not(summary) {
  margin: 10px 12px;
}

@media (min-width: 720px) {
  .emp-receber__cabecalho,
  .emp-receber__linha {
    grid-template-columns: 28px minmax(0, 1.6fr) minmax(100px, 0.8fr) minmax(96px, 0.8fr) minmax(130px, 1fr) auto;
    grid-template-areas: none;
    gap: 12px;
  }

  .emp-receber__cabecalho {
    display: grid;
    padding: 7px 12px;
    border-bottom: 1px solid var(--lista-divisoria, var(--cor-borda));
    color: var(--cor-texto-suave);
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .emp-receber__cabecalho span:first-child {
    grid-column: 1 / 3;
  }

  .emp-receber__linha {
    padding: 7px 12px;
  }

  .emp-receber__linha > *,
  .emp-receber__linha .emp-venc__avatar {
    grid-area: auto;
  }

  .emp-receber__valor,
  .emp-receber__data {
    justify-self: start;
  }

}

.emp-mes {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 20px 22px;
  border: 1px solid #dfe3f8;
  border-radius: 16px;
  background: linear-gradient(120deg, #f1f3fd 0%, #f8f9fe 60%, #eef1fc 100%);
  box-shadow: var(--sombra);
  color: inherit;
  text-decoration: none;
  transition: box-shadow 0.12s;
}

.emp-mes:hover {
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.1);
}

.emp-mes:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 2px;
}

.emp-mes__topo {
  display: flex;
  align-items: center;
  gap: 12px;
}

.emp-mes__icone {
  flex: none;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: color-mix(in srgb, #4f46e5 16%, #fff);
  color: #4f46e5;
}

.emp-mes__titulo {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}

.emp-mes__rotulo {
  font-weight: 650;
}

.emp-mes__periodo {
  color: var(--cor-texto-suave);
  font-size: 0.82rem;
}

.emp-mes__seta {
  color: var(--cor-texto-suave);
  font-size: 1.4rem;
}

.emp-mes__valor {
  color: #4338ca;
  font-size: clamp(1.6rem, 7vw, 2.1rem);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-mes__linha {
  color: #475569;
  font-size: 0.86rem;
}

.emp-mes__atraso {
  color: var(--status-atraso-texto);
  font-weight: 600;
}

.emp-mes__lucro {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #cdeedb;
  border-radius: 10px;
  background: #eefbf3;
  color: #166534;
  font-size: 0.86rem;
}

.emp-mes__lucro svg {
  flex: none;
}

.emp-mes__lucro strong {
  color: #15803d;
}

.emp-mes__lucro--pagina {
  margin: 0 0 12px;
}

.emp-mes__barra {
  display: block;
  height: 6px;
  margin-top: 4px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e6f6;
}

.emp-mes__barra > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #22c55e;
}

.emp-mes__acao {
  width: fit-content;
  color: #4338ca;
  font-size: 0.8rem;
  font-weight: 650;
}

.emp-mes__cabecalho {
  margin: 4px 0 2px;
}

.emp-mes__cabecalho h1 {
  margin: 0;
}

.emp-totais {
  display: grid;
  gap: 16px;
  margin-bottom: 20px;
}

.emp-totais__grade {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.emp-total {
  --total-cor: #4f46e5;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 18px 20px;
  border: 1px solid var(--cor-card-borda, var(--cor-borda));
  border-radius: 16px;
  background: var(--cor-superficie);
  box-shadow: var(--sombra);
}

.emp-total--geral {
  border-color: #dfe3f8;
  background: linear-gradient(120deg, #f1f3fd 0%, #f8f9fe 100%);
}

.emp-total--atraso {
  --total-cor: #dc2626;
}

.emp-total__topo {
  display: flex;
  align-items: center;
  gap: 12px;
}

.emp-total__icone {
  flex: none;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--total-cor) 16%, #fff);
  color: var(--total-cor);
}

.emp-total__titulo {
  display: flex;
  flex-direction: column;
  font-weight: 650;
}

.emp-total__titulo small,
.emp-total__resumo,
.emp-total__rotulo {
  color: var(--cor-texto-suave);
  font-size: 0.84rem;
  font-weight: 500;
}

.emp-total__valor {
  color: var(--total-cor);
  font-size: clamp(1.3rem, 5vw, 1.7rem);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.emp-total__valor--grande {
  color: #4338ca;
  font-size: clamp(1.7rem, 8vw, 2.3rem);
}

.emp-total__divisao {
  display: grid;
  gap: 4px;
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px solid var(--cor-borda);
}

.emp-total__linha {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.9rem;
}

.emp-total__linha span {
  color: #475569;
}

.emp-total__linha strong {
  font-variant-numeric: tabular-nums;
}

@media (max-width: 640px) {
  .emp-totais__grade {
    grid-template-columns: minmax(0, 1fr);
  }

  .emp-mes {
    padding: 16px;
  }
}

.emp-mes__lucro-texto {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.emp-mes__lucro-texto small {
  color: #475569;
  font-size: 0.8rem;
}



.emp-total--emprestado {
  --total-cor: #2563eb;
}

.emp-total--lucro {
  --total-cor: #15803d;
  border-color: #cdeedb;
  background: linear-gradient(120deg, #eefbf3 0%, #f6fcf8 100%);
}

.emp-kpis > :last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.emp-capital .ficha {
  margin-bottom: 10px;
}

.emp-compartilhar {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border: 1px solid var(--cor-borda);
  border-radius: 999px;
  background: var(--cor-superficie);
  color: #15803d;
  font: inherit;
  font-size: 0.74rem;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
  cursor: pointer;
}

.emp-compartilhar:hover:not(:disabled) {
  background: #eefbf3;
  border-color: #b7e4c7;
}

.emp-compartilhar:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 1px;
}

.emp-compartilhar:disabled {
  opacity: 0.45;
  cursor: default;
}

.emp-total__cabeca {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.emp-detalhe__topo-acoes {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}
