/* Portal .38 — Contas a Pagar (cap38) — CAP38-V1 */
#cap38-root{display:none;padding:12px 16px 40px;max-width:1400px;margin:0 auto;font-size:15px}
#cap38-root.cap38-aberto{display:block}
#cap38-root.cap38-no-portal{padding:0 0 40px;max-width:none;margin:0}
.cap38-topo{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.cap38-topo h2{margin:0;font-size:20px;letter-spacing:.02em}
.cap38-topo .cap38-empresa{display:flex;gap:6px}
.cap38-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.cap38-card{border:1px solid #2b2f3a;border-radius:10px;padding:10px 12px;background:#161922;cursor:pointer;text-align:left;color:inherit;font:inherit}
.cap38-card[aria-pressed="true"],.cap38-card:hover{border-color:#c9a648;box-shadow:0 0 0 1px #c9a64855}
.cap38-card .cap38-k{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#9aa0ad}
.cap38-card .cap38-v{font-size:20px;font-weight:700;margin-top:2px}
.cap38-card .cap38-q{font-size:12px;color:#9aa0ad}
.cap38-card.vermelho .cap38-v{color:#e46b6b}.cap38-card.ambar .cap38-v{color:#e0954f}
.cap38-abas{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 12px}
.cap38-aba{border:1px solid transparent;background:transparent;color:inherit;font:inherit;padding:8px 14px;border-radius:999px;cursor:pointer}
.cap38-aba:hover{border-color:#3a3f4d}.cap38-aba[aria-selected="true"]{background:#c9a648;color:#141414;font-weight:700}
.cap38-aba .cap38-n{display:inline-block;min-width:18px;padding:0 6px;border-radius:999px;background:#2b2f3a;font-size:12px;margin-left:6px}
.cap38-aba[aria-selected="true"] .cap38-n{background:#141414;color:#c9a648}
.cap38-ferr{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.cap38-ferr input,.cap38-ferr select,.cap38-form input,.cap38-form select,.cap38-form textarea{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid #3a3f4d;background:#0f1117;color:inherit;min-height:40px}
.cap38-ferr input[type=search]{min-width:220px;flex:1}
.cap38-btn{font:inherit;padding:9px 14px;border-radius:8px;border:1px solid #3a3f4d;background:#1d212b;color:inherit;cursor:pointer;min-height:40px}
.cap38-btn:hover{border-color:#c9a648}.cap38-btn.p{background:#c9a648;color:#141414;font-weight:700;border-color:#c9a648}
.cap38-btn.perigo{border-color:#8a3a3a;color:#e46b6b}.cap38-btn:disabled{opacity:.5;cursor:wait}
.cap38-btn.mini{padding:4px 10px;min-height:30px;font-size:13px;margin:0 4px 4px 0}
.cap38-tab-wrap{overflow-x:auto;border:1px solid #2b2f3a;border-radius:10px}
.cap38-tabela{width:100%;border-collapse:collapse;min-width:0}
.cap38-tabela th,.cap38-tabela td{padding:7px 8px;border-bottom:1px solid #22262f;text-align:left;vertical-align:top;white-space:nowrap;font-size:14px}
.cap38-tabela th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#9aa0ad;position:sticky;top:0;background:#161922}
.cap38-tabela tr:hover td{background:#1a1e28}.cap38-tabela td.num,.cap38-tabela th.num{text-align:right;font-variant-numeric:tabular-nums}
.cap38-tabela td.quebra{white-space:normal;min-width:110px}.cap38-tabela td.quebra.estreita{min-width:84px;max-width:150px}.cap38-tabela td.conta{white-space:nowrap}.cap38-tabela td.conta .cap38-origem{white-space:normal;max-width:160px}
.cap38-ferr select{max-width:260px}
.cap38-tabela tr.vencida td:first-child{box-shadow:inset 3px 0 #e46b6b}
.cap38-sel{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid #3a3f4d;white-space:nowrap}
.cap38-sel.aberta,.cap38-sel.a_conferir{border-color:#9aa0ad}.cap38-sel.conferido,.cap38-sel.em_aberto{border-color:#6c8cd5;color:#9db4ff}
.cap38-sel.autorizada{border-color:#c9a648;color:#e7c86a}.cap38-sel.paga,.cap38-sel.entregue,.cap38-sel.criada{border-color:#4f9d69;color:#7fd39a}
.cap38-sel.paga_parcial,.cap38-sel.em_pagamento,.cap38-sel.obtido,.cap38-sel.pendente{border-color:#e0954f;color:#f0b37e}
.cap38-sel.cancelada,.cap38-sel.cancelado,.cap38-sel.erro,.cap38-sel.incerto,.cap38-sel.falhou,.cap38-sel.rejeitada,.cap38-sel.encerrado_parcial{border-color:#e46b6b;color:#f08c8c}
.cap38-sel.prevista_cartao,.cap38-sel.coberta_por_fatura,.cap38-sel.dispensada{border-color:#8e7cc3;color:#b9a9e6}
.cap38-origem{font-size:11px;color:#9aa0ad;text-transform:uppercase;letter-spacing:.05em}
.cap38-vazio{padding:24px;text-align:center;color:#9aa0ad}
.cap38-aviso{padding:10px 12px;border-radius:8px;background:#2a2410;border:1px solid #c9a64866;margin:8px 0}
.cap38-aviso.erro{background:#2a1414;border-color:#e46b6b88}.cap38-aviso.ok{background:#14251a;border-color:#4f9d6988}
/* modal */
.cap38-backdrop{position:fixed;inset:0;background:#0009;z-index:900;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:24px 8px}
.cap38-modal{background:#161922;border:1px solid #2b2f3a;border-radius:12px;width:min(1120px,100%);padding:16px;margin:auto 0}
.cap38-modal.estreito{width:min(560px,100%)}
.cap38-modal h3{margin:0 0 10px;font-size:18px}
.cap38-modal .cap38-fecha{float:right;background:none;border:none;color:#9aa0ad;font-size:22px;cursor:pointer;line-height:1}
.cap38-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.cap38-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#c9ccd6}
.cap38-form label.larga{grid-column:1/-1}
.cap38-form .cap38-rateio{grid-column:1/-1}
.cap38-form .cap38-obrig::after{content:" *";color:#e46b6b}
.cap38-rodape{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:14px}
.cap38-previa{margin-top:10px}
.cap38-detalhe h4{margin:14px 0 6px;font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:#9aa0ad}
.cap38-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px}
.cap38-grade .cap38-item>span:first-child{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#9aa0ad}
.cap38-grade .cap38-item b{font-weight:600}
.cap38-hist{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto;font-size:13px}
.cap38-hist li{padding:5px 0;border-bottom:1px solid #22262f}.cap38-hist li small{color:#9aa0ad}
.cap38-lote-res{margin-top:8px;font-size:13px}.cap38-lote-res li.nok{color:#f08c8c}.cap38-lote-res li.ok{color:#7fd39a}
.cap38-fila-sub{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.cap38-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#1d212b;border:1px solid #c9a648;padding:10px 16px;border-radius:10px;z-index:950;max-width:90vw}
@media (max-width:640px){
  #cap38-root{padding:8px 10px 60px;font-size:16px}
  .cap38-cards{grid-template-columns:repeat(2,1fr)}
  .cap38-card .cap38-v{font-size:18px}
  .cap38-ferr input[type=search]{min-width:0;width:100%}
  .cap38-modal{padding:12px}.cap38-form{grid-template-columns:1fr}
  .cap38-tabela th,.cap38-tabela td{padding:8px 6px;font-size:14px}
  .cap38-btn{min-height:44px}
  /* lista de parcelas vira cartões */
  .cap38-tabela.cartoes thead{display:none}
  .cap38-tabela.cartoes,.cap38-tabela.cartoes tbody,.cap38-tabela.cartoes tr,.cap38-tabela.cartoes td{display:block;white-space:normal;min-width:0}
  .cap38-tabela.cartoes tr{padding:8px 10px 8px 40px;border-bottom:1px solid #22262f;position:relative}
  .cap38-tabela.cartoes tr.vencida{box-shadow:inset 3px 0 #e46b6b}.cap38-tabela.cartoes tr.vencida td:first-child{box-shadow:none}
  .cap38-tabela.cartoes td{padding:1px 0;border:0;font-size:15px}
  .cap38-tabela.cartoes td.sel{position:absolute;left:8px;top:8px;padding:0}
  .cap38-tabela.cartoes td[data-rotulo]::before{content:attr(data-rotulo) ": ";color:#9aa0ad;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
  .cap38-tabela.cartoes td.num{text-align:left}.cap38-tabela.cartoes td.saldo{font-weight:700;font-size:17px}
  .cap38-tabela.cartoes td .cap38-origem{display:inline;margin-left:4px}
  .cap38-tabela.cartoes tfoot tr{padding-left:10px}.cap38-tabela.cartoes tfoot td{display:inline-block;padding-right:10px}
}
/* 06b: importados do Nexal, conferência e acesso */
.cap38-secao{margin:4px 0 8px;font-size:17px}
.cap38-chip{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid #3a3f4d;margin:2px 4px 0 0;white-space:nowrap;color:#c9ccd6}
.cap38-chip.pend{border-color:#e0954f;color:#f0b37e}.cap38-chip.ok{border-color:#4f9d69;color:#7fd39a}.cap38-chip.alerta{border-color:#e46b6b;color:#f08c8c}
.cap38-falta{color:#e0954f}.cap38-sugestao{color:#9db4ff}
.cap38-tabela.comparar td:first-child{color:#9aa0ad;white-space:nowrap}.cap38-tabela.comparar td{white-space:normal}
.cap38-tabela.comparar tr.difere td:nth-child(3){color:#f0b37e}
.cap38-tabela.conf td:first-child{white-space:pre-wrap}.cap38-tabela.conf tr.forte td{font-weight:700;border-top:1px solid #3a3f4d}
.cap38-regras{margin:0;padding-left:18px;font-size:13px;color:#c9ccd6}.cap38-regras li{margin:4px 0}
.cap38-nota{font-size:13px;color:#9aa0ad;margin:0 0 8px}
.cap38-acesso{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:4px 12px;margin-bottom:6px;font-size:14px}
.cap38-acesso label{display:flex;gap:6px;align-items:center}
@media (max-width:640px){.cap38-tabela.imp td.conta{font-weight:600}}
.cap38-tabela td.quebra,.cap38-tabela td.quebra .cap38-origem{overflow-wrap:anywhere}
.cap38-tabela.imp td.quebra{max-width:300px}.cap38-tabela.imp td.quebra.estreita{max-width:170px}
/* 06d — favorecidos a confirmar (OK em lote) */
.cap38-seg{display:inline-flex;border:1px solid #3a3f4d;border-radius:8px;overflow:hidden;margin:6px 0 10px}
.cap38-seg button{background:transparent;color:#c9ccd6;border:0;padding:7px 14px;font:inherit;cursor:pointer;display:inline-flex;gap:6px;align-items:center;min-height:36px}
.cap38-seg button[aria-pressed="true"]{background:#2b3140;color:#fff;font-weight:600}
.cap38-seg button+button{border-left:1px solid #3a3f4d}
.cap38-ok-mini{margin-left:6px;padding:1px 8px;border-radius:6px;border:1px solid #4f9d69;background:transparent;color:#7fd39a;font-size:12px;cursor:pointer;min-height:24px}
.cap38-ok-mini:hover{background:#4f9d6922}
.cap38-tabela.fav td input[type=text]{width:100%;min-width:180px;box-sizing:border-box;background:#0f1117;color:inherit;border:1px solid #3a3f4d;border-radius:6px;padding:6px 8px;font:inherit}
.cap38-tabela.fav td input[type=text]:focus{outline:2px solid #9db4ff;outline-offset:0;border-color:#9db4ff}
.cap38-tabela.fav td.sel input{width:20px;height:20px}
.cap38-tabela.fav tr.conf-alta td:first-child{box-shadow:inset 3px 0 0 #4f9d69}
.cap38-tabela.fav tr.conf-media td:first-child{box-shadow:inset 3px 0 0 #9db4ff}
.cap38-tabela.fav tr.conf-baixa td:first-child{box-shadow:inset 3px 0 0 #7d8594}
.cap38-tabela.fav tr.fav-sub td{background:#00000018}
.cap38-fav-itens{list-style:none;margin:4px 0 8px;padding:0;font-size:13px}
.cap38-fav-itens li{padding:3px 0;border-bottom:1px dashed #3a3f4d22;overflow-wrap:anywhere}
.cap38-fav-itens label{display:flex;gap:6px;align-items:flex-start}
.cap38-link{background:none;border:0;color:#9db4ff;cursor:pointer;font:inherit;padding:2px 0;text-decoration:underline}
@media (max-width:640px){.cap38-tabela.fav td input[type=text]{min-width:0}.cap38-seg{display:flex}.cap38-seg button{flex:1;justify-content:center}}
/* 06e — a tabela cabe na tela: o mobile38 do Portal embrulha toda tabela num div.m38-tbl e força min-width:max-content; nas
   tabelas do Contas a Pagar as colunas de texto quebram linha (só rola para o lado o que não couber de jeito nenhum) */
.cap38-tab-wrap > .m38-tbl > table.cap38-tabela,.cap38-tab-wrap > table.cap38-tabela{min-width:0}
/* barra de rolagem lateral presa ao pé da tela enquanto a tabela está à vista (cap38.js · barraLateral) */
.cap38-rolagem{position:sticky;bottom:0;z-index:4;overflow-x:auto;overflow-y:hidden;height:14px;background:#161922;border:1px solid #2b2f3a;border-top:0;border-radius:0 0 10px 10px;scrollbar-width:auto;scrollbar-color:#5a6275 #161922}
.cap38-rolagem[hidden]{display:none}
.cap38-rolagem-in{height:1px}
.cap38-rolagem::-webkit-scrollbar{height:12px}
.cap38-rolagem::-webkit-scrollbar-track{background:#161922}
.cap38-rolagem::-webkit-scrollbar-thumb{background:#5a6275;border-radius:6px;border:2px solid #161922}
.cap38-rolagem::-webkit-scrollbar-thumb:hover{background:#c9a648}
.cap38-sem-barra{scrollbar-width:none}
.cap38-sem-barra::-webkit-scrollbar{display:none;height:0}
.cap38-tab-wrap.cap38-com-barra{border-bottom-left-radius:0;border-bottom-right-radius:0}
@media (hover:none),(pointer:coarse){.cap38-rolagem{display:none}}
/* 06g: campo de data em dd/mm/aaaa (texto com máscara) + ícone de calendário com o seletor nativo por baixo */
.cap38-data{position:relative;display:inline-flex;align-items:center;vertical-align:middle;max-width:100%}
.cap38-form label .cap38-data{display:flex;width:100%}
.cap38-data .cap38-data-txt{font:inherit;padding:8px 36px 8px 10px;border-radius:8px;border:1px solid #3a3f4d;background:#0f1117;color:inherit;min-height:40px;width:9.6em;box-sizing:border-box;font-variant-numeric:tabular-nums}
.cap38-form label .cap38-data .cap38-data-txt{width:100%}
.cap38-data.mes .cap38-data-txt{padding-right:10px;width:7.4em}
.cap38-data .cap38-data-txt:focus{outline:2px solid #9db4ff;outline-offset:0;border-color:#9db4ff}
.cap38-data .cap38-data-txt.erro{border-color:#e06c6c;outline-color:#e06c6c;background:#2a1416}
.cap38-data .cap38-data-cal{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:#c9a648;pointer-events:none}
.cap38-data .cap38-data-nat{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:30px;height:30px;margin:0;padding:0;border:0;opacity:0;cursor:pointer;color-scheme:dark;min-height:0;background:transparent}
.cap38-data .cap38-data-nat::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}
.cap38-tabela td .cap38-data .cap38-data-txt{min-height:34px;padding-top:6px;padding-bottom:6px}
/* 06g: aba Pagas (extrato de pagamentos) */
.cap38-pagas tr.cap38-mes td{background:#171a22;color:#d9dbe2;padding:8px 10px;border-top:1px solid #2c303b;white-space:normal}
.cap38-pagas tr.cap38-clicavel{cursor:pointer}
.cap38-pagas tr.cap38-clicavel:hover td{background:#1a1e27}
.cap38-pagas tr.cap38-clicavel:focus-visible{outline:2px solid #9db4ff;outline-offset:-2px}
.cap38-pagas tr.nexal td:first-child{box-shadow:inset 3px 0 #6b7387}
.cap38-pagas-total b{font-size:1.1em}
.cap38-faixa-hist .cap38-btn{margin-left:4px}
.cap38-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:10px 0}
.cap38-dl dt{color:#9aa0ad}.cap38-dl dd{margin:0;word-break:break-word}
@media (max-width:640px){
  .cap38-tabela.cartoes.cap38-pagas tr{padding-left:12px}
  .cap38-tabela.cartoes.cap38-pagas tr.cap38-mes{padding:0}
  .cap38-tabela.cartoes.cap38-pagas tr.nexal{box-shadow:inset 3px 0 #6b7387}
  .cap38-tabela.cartoes.cap38-pagas tr.nexal td:first-child{box-shadow:none}
  .cap38-dl{grid-template-columns:1fr}.cap38-dl dt{margin-top:6px}
}
@media (max-width:640px){.cap38-ferr input[type=search]{flex:1 1 100%}.cap38-pagas td .cap38-sugestao{font-style:italic}}
.cap38-pagas td.origem{white-space:normal;min-width:150px}
.cap38-pagas td.origem .cap38-chip{white-space:nowrap;font-size:11.5px}
.cap38-pagas td.fav{min-width:120px;max-width:220px}
/* 06h — topo enxuto (abas + empresa numa linha), resumo de vencimentos numa linha, vistas de A pagar, filtros recolhidos, menu "+ Novo" */
.cap38-barra{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #22262f}
.cap38-barra .cap38-abas{margin:0;gap:4px}
.cap38-barra .cap38-empresa.cap38-seg{margin:0}
.cap38-barra .cap38-empresa.cap38-seg button{min-height:32px;padding:5px 12px;font-size:14px}
.cap38-aba-cfg{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;color:#9aa0ad}
.cap38-aba-cfg:hover{color:inherit}
.cap38-aba-cfg[aria-selected="true"]{color:#141414}
.cap38-resumo{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.cap38-resumo .cap38-card{display:inline-flex;align-items:center;gap:7px;padding:5px 10px 5px 12px;border-radius:999px;min-height:34px;background:#161922}
.cap38-resumo .cap38-card .cap38-k{font-size:11px;letter-spacing:.05em}
.cap38-resumo .cap38-card .cap38-v{font-size:15px;margin:0;font-variant-numeric:tabular-nums}
.cap38-resumo .cap38-card .cap38-q{font-size:12px;min-width:18px;padding:0 6px;border-radius:999px;background:#2b2f3a;text-align:center;color:#c9ccd6}
.cap38-resumo .cap38-card.zero{border-color:#22262f}.cap38-resumo .cap38-card.zero .cap38-k{color:#7d8594}
.cap38-resumo .cap38-card.cartao .cap38-v{color:#b9a9e6}
.cap38-resumo .cap38-card[aria-pressed="true"]{background:#2a2410}
.cap38-linha{justify-content:space-between}
.cap38-vistas{display:flex;flex-wrap:wrap;gap:6px}
.cap38-vista{font:inherit;font-size:14px;padding:6px 12px;border-radius:999px;border:1px solid #3a3f4d;background:transparent;color:#c9ccd6;cursor:pointer;min-height:34px;display:inline-flex;align-items:center;gap:6px}
.cap38-vista:hover{border-color:#c9a648}
.cap38-vista[aria-pressed="true"]{background:#2b3140;border-color:#c9a648;color:#fff;font-weight:600}
.cap38-vista .cap38-n{min-width:18px;padding:0 6px;border-radius:999px;background:#c9a648;color:#141414;font-size:12px;font-weight:700;text-align:center}
.cap38-vista .cap38-n.zero{background:#2b2f3a;color:#9aa0ad;font-weight:400}
.cap38-vista.alerta .cap38-n:not(.zero){background:#e46b6b}
.cap38-acoes-dir{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;justify-content:flex-end;margin-left:auto}
.cap38-linha-apagar > .cap38-acoes-dir{flex:1 1 360px}
.cap38-acoes-dir input[type=search]{min-width:150px;width:280px;flex:0 1 auto}
.cap38-btn-filtros{display:inline-flex;align-items:center;gap:6px}
.cap38-btn-filtros .cap38-n{min-width:18px;padding:0 6px;border-radius:999px;background:#c9a648;color:#141414;font-size:12px;font-weight:700}
.cap38-btn-filtros.ativo,.cap38-btn-filtros[aria-expanded="true"]{border-color:#c9a648}
.cap38-filtros{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;margin:0 0 10px;border:1px solid #2b2f3a;border-radius:10px;background:#12151c}
.cap38-filtros[hidden]{display:none}
.cap38-filtros select,.cap38-filtros > input{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid #3a3f4d;background:#0f1117;color:inherit;min-height:40px;max-width:260px}
.cap38-filtros .cap38-link{margin-left:auto}
.cap38-nota-in{font-size:13px;color:#9aa0ad}
.cap38-menu{position:relative;display:inline-block}
.cap38-menu-lista{position:absolute;right:0;top:calc(100% + 4px);z-index:60;min-width:270px;background:#161922;border:1px solid #3a3f4d;border-radius:10px;padding:6px;box-shadow:0 10px 28px #000a}
.cap38-menu-lista[hidden]{display:none}
.cap38-menu-lista button{display:block;width:100%;text-align:left;background:none;border:0;color:inherit;font:inherit;padding:8px 10px;border-radius:8px;cursor:pointer}
.cap38-menu-lista button:hover,.cap38-menu-lista button:focus{background:#2b3140;outline:none}
.cap38-menu-lista small{display:block;color:#9aa0ad;font-size:12px;margin-top:2px}
.cap38-parcelas td.fav{min-width:180px}
/* a descrição não alarga a coluna: ocupa a largura que o favorecido já deu e corta com reticências (a dica mostra tudo) */
.cap38-desc{font-size:12.5px;color:#9aa0ad;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:0;min-width:100%}
.cap38-tabela.imp td.rev .cap38-sel{margin:2px 4px 0 0}
.cap38-tabela.imp td.fav{min-width:160px}
.cap38-parcelas td.nat{min-width:100px;max-width:200px}
.cap38-estado{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:13.5px;color:#c9ccd6;margin:0 0 8px}
.cap38-estado .cap38-acoes-dir .cap38-btn{min-height:34px;padding:6px 12px}
.cap38-nota.discreta{margin:2px 0 8px;font-size:12.5px}
@media (max-width:640px){
  .cap38-barra{gap:6px}.cap38-barra .cap38-empresa.cap38-seg{width:100%}
  .cap38-resumo .cap38-card{flex:1 1 calc(50% - 8px);flex-wrap:wrap;gap:2px 8px;border-radius:10px}
  .cap38-acoes-dir{width:100%;margin-left:0;flex-wrap:wrap;justify-content:flex-start}.cap38-acoes-dir input[type=search]{flex:1 1 100%;min-width:0}
  .cap38-filtros select,.cap38-filtros > input{max-width:none;flex:1 1 100%}
  /* o menu "+ Novo" se ancora na linha inteira (largura da tela), não no botão: nunca sai pela direita */
  .cap38-acoes-dir{position:relative}.cap38-menu{position:static}
  .cap38-menu-lista{right:auto;left:0;max-width:calc(100vw - 24px)}
  /* alvos de toque ≥ 44 px (regra do módulo no celular) */
  .cap38-vista,.cap38-resumo .cap38-card,.cap38-barra .cap38-empresa.cap38-seg button,.cap38-estado .cap38-acoes-dir .cap38-btn,.cap38-barra .cap38-aba{min-height:44px}
  .cap38-estado .cap38-link{min-height:44px;display:inline-flex;align-items:center}
  .cap38-menu-lista button{min-height:44px}
}
/* 08a — régua de cores do vencimento (decisão do CFO, 08/10/2026): vencida vermelho · hoje laranja · até 7 dias amarelo · depois sem cor ·
   paga verde. A faixa está na classe da linha (tr.cap38-f-<faixa>) e da célula (td.cap38-venc.f-<faixa>); o ponto é só decorativo —
   a palavra embaixo da data ("venceu há 3 d", "hoje", "em 5 d") e a etiqueta de situação garantem a leitura sem a cor. */
:root{--cap38-vencida:#e46b6b;--cap38-hoje:#e0954f;--cap38-7d:#f2cf5b;--cap38-paga:#7fd39a}
.cap38-pt{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px;background:transparent}
.cap38-pt.f-vencida{background:var(--cap38-vencida)}.cap38-pt.f-hoje{background:var(--cap38-hoje)}.cap38-pt.f-7d{background:var(--cap38-7d)}.cap38-pt.f-paga{background:var(--cap38-paga)}
.cap38-venc .cap38-pt{display:none}
.cap38-venc.f-vencida .cap38-pt,.cap38-venc.f-hoje .cap38-pt,.cap38-venc.f-7d .cap38-pt,.cap38-venc.f-paga .cap38-pt{display:inline-block}
.cap38-venc.f-vencida .cap38-pt{background:var(--cap38-vencida)}.cap38-venc.f-hoje .cap38-pt{background:var(--cap38-hoje)}.cap38-venc.f-7d .cap38-pt{background:var(--cap38-7d)}.cap38-venc.f-paga .cap38-pt{background:var(--cap38-paga)}
.cap38-venc .cap38-venc-data{font-variant-numeric:tabular-nums}
.cap38-venc.f-vencida .cap38-venc-data{color:var(--cap38-vencida);font-weight:600}.cap38-venc.f-hoje .cap38-venc-data{color:var(--cap38-hoje);font-weight:600}
.cap38-venc.f-7d .cap38-venc-data{color:var(--cap38-7d)}.cap38-venc.f-paga .cap38-venc-data{color:var(--cap38-paga)}
.cap38-venc-txt{font-size:11px;color:#9aa0ad;letter-spacing:.02em}
.cap38-venc.f-vencida .cap38-venc-txt{color:var(--cap38-vencida)}.cap38-venc.f-hoje .cap38-venc-txt{color:var(--cap38-hoje)}
.cap38-tabela tr.cap38-f-vencida td:first-child{box-shadow:inset 3px 0 var(--cap38-vencida)}
.cap38-tabela tr.cap38-f-hoje td:first-child{box-shadow:inset 3px 0 var(--cap38-hoje)}
.cap38-tabela tr.cap38-f-7d td:first-child{box-shadow:inset 3px 0 var(--cap38-7d)}
.cap38-tabela tr.cap38-f-paga td:first-child{box-shadow:inset 3px 0 var(--cap38-paga)}
.cap38-tabela tr.cap38-f-paga td{opacity:.85}
.cap38-resumo .cap38-card .cap38-pt{margin-right:0}
.cap38-resumo .cap38-card.amarelo .cap38-v{color:var(--cap38-7d)}
@media (max-width:640px){
  .cap38-tabela.cartoes tr.cap38-f-vencida{box-shadow:inset 3px 0 var(--cap38-vencida)}.cap38-tabela.cartoes tr.cap38-f-hoje{box-shadow:inset 3px 0 var(--cap38-hoje)}
  .cap38-tabela.cartoes tr.cap38-f-7d{box-shadow:inset 3px 0 var(--cap38-7d)}.cap38-tabela.cartoes tr.cap38-f-paga{box-shadow:inset 3px 0 var(--cap38-paga)}
  .cap38-tabela.cartoes tr[class*="cap38-f-"] td:first-child{box-shadow:none}
  .cap38-tabela.cartoes td.fav{font-weight:600;font-size:16px}.cap38-tabela.cartoes td.fav .cap38-desc,.cap38-tabela.cartoes td.fav .cap38-origem{font-weight:400;font-size:12px}
  .cap38-tabela.cartoes td.cap38-venc .cap38-venc-txt{display:inline;margin-left:6px}
}
