/* Montserrat (SIL Open Font License) servida pela própria aplicação — sem depender de internet */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/montserrat-latin.woff2') format('woff2')}
  /* ===== Tema — tudo aqui dentro, não depende de nada externo ===== */
  :root{ --navy:#0e2452; --azul:#1f7ae0; --brilho:#4db2ff; --verde:#16a34a; --roxo:#9333ea; --laranja:#ea8a00; --vermelho:#e03131; --lateral:215px; }
  [data-tema="escuro"]{ color-scheme:dark;
    --fundo:#0b1322; --painel:#131d31; --painel2:#0f1829; --campo:#0b1322; --campo-foco:#0f1d36;
    --borda:#243149; --borda-campo:#2c3a55; --texto:#dbe4f3; --texto2:#8c9bb5; --rotulo:#9fb0cc;
    --ro:#162235; --sel:#1b3a66; --lat:#081026; --lat-texto:#b9c7e2; --hover:#18253d; }
  [data-tema="claro"]{ color-scheme:light;
    --fundo:#f1f4f9; --painel:#fff; --painel2:#f6f8fc; --campo:#fff; --campo-foco:#fffdf0;
    --borda:#dbe3ef; --borda-campo:#c9d4e5; --texto:#1f2d45; --texto2:#6b7a93; --rotulo:#56688a;
    --ro:#eef2f8; --sel:#dcebff; --lat:#0e2452; --lat-texto:#c9d6ef; --hover:#f1f6ff; }
  *{box-sizing:border-box} html,body{margin:0}
  body{font-family:'Montserrat','Segoe UI',system-ui,Arial,sans-serif;background:var(--fundo);color:var(--texto);font-size:13px}
  svg.i{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
  button{font-family:inherit}
  .faixa-teste{background:repeating-linear-gradient(45deg,#f59f00,#f59f00 12px,#f08c00 12px,#f08c00 24px);color:#1a1a1a;text-align:center;font-weight:800;letter-spacing:.12em;font-size:11px;position:fixed;top:0;left:0;right:0;z-index:50;height:18px;line-height:18px}

  /* Menu lateral */
  .lateral{position:fixed;top:18px;bottom:0;left:0;width:var(--lateral);background:var(--lat);color:var(--lat-texto);overflow-y:auto;z-index:40}
  .marca{display:flex;align-items:center;gap:9px;padding:12px 14px 10px;border-bottom:1px solid rgba(255,255,255,.07)}
  .selo{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,var(--azul),var(--brilho));display:grid;place-items:center;color:#fff;font-weight:800;font-size:14px}
  .marca b{color:#fff;font-size:14px;display:block;line-height:1.1} .marca small{font-size:10.5px;color:#7f95c0}
  .menu-titulo{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#6479a3;padding:10px 14px 3px;font-weight:700}
  .menu a{display:flex;align-items:center;gap:9px;padding:5px 14px;color:var(--lat-texto);text-decoration:none;font-weight:500;border-left:3px solid transparent;font-size:12.5px}
  .menu a:hover{background:rgba(255,255,255,.05);color:#fff}
  .menu a.ativo{background:rgba(77,178,255,.13);color:#fff;border-left-color:var(--brilho)}
  .menu a.off{opacity:.45}

  /* Topo */
  .principal{margin-left:var(--lateral);padding-top:18px;min-height:100vh}
  .topo{background:var(--painel);border-bottom:1px solid var(--borda);padding:7px 18px;display:flex;align-items:center;gap:12px;position:sticky;top:18px;z-index:30}
  .topo h1{font-size:15.5px;font-weight:700;margin:0} .caminho{font-size:11px;color:var(--texto2)}
  .empresa{margin-left:auto;display:flex;align-items:center;gap:6px;border:1px solid var(--borda);border-radius:8px;padding:4px 8px;background:var(--painel2)}
  .empresa select{border:0;background:transparent;font-weight:600;color:var(--texto);font-size:12.5px;outline:none;font-family:inherit}
  .bt-tema{border:1px solid var(--borda);background:var(--painel2);color:var(--texto);border-radius:8px;padding:5px 7px;cursor:pointer;display:grid;place-items:center}
  .usuario{display:flex;align-items:center;gap:8px;font-size:12.5px}
  .av{width:30px;height:30px;border-radius:50%;background:var(--azul);color:#fff;display:grid;place-items:center;font-weight:700}
  .conteudo{padding:12px 18px 90px}
  .painel{background:var(--painel);border:1px solid var(--borda);border-radius:10px}

  /* Abas */
  .abas{display:flex;gap:3px;padding:7px 7px 0;background:var(--painel2);border-bottom:1px solid var(--borda);border-radius:10px 10px 0 0;flex-wrap:wrap}
  .aba{display:flex;align-items:center;gap:6px;padding:6px 12px;border:0;border-radius:7px 7px 0 0;background:transparent;color:var(--texto2);font-weight:600;font-size:12.5px;cursor:pointer}
  .aba:hover{color:var(--texto);background:var(--hover)}
  .aba.ativa{background:var(--azul);color:#fff}
  .aba .cont{background:var(--borda);border-radius:10px;padding:0 6px;font-size:10.5px}
  .aba.ativa .cont{background:rgba(255,255,255,.2)}
  .aba kbd{font-family:inherit;font-size:9.5px;opacity:.6}
  .painel-aba{padding:10px 14px 12px} .painel-aba[hidden]{display:none}

  /* Seções numeradas */
  .secao{display:flex;align-items:center;gap:8px;margin:2px 0 7px;padding-bottom:5px;border-bottom:1px solid var(--borda)}
  .num{width:19px;height:19px;border-radius:5px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:10.5px}
  .num.azul{background:var(--azul)}.num.verde{background:var(--verde)}.num.roxo{background:var(--roxo)}.num.laranja{background:var(--laranja)}
  .secao h3{margin:0;font-size:13px;font-weight:700} .secao small{color:var(--texto2);font-size:11px}

  /* Campos compactos */
  .grade-campos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px 10px;margin-bottom:12px}
  .painel-aba .grade-campos:last-child{margin-bottom:0}
  .c1{grid-column:span 1}.c2{grid-column:span 2}.c3{grid-column:span 3}.c4{grid-column:span 4}.c5{grid-column:span 5}.c6{grid-column:span 6}
  .campo label.rot{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--rotulo);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .obrig::after{content:" *";color:var(--vermelho)}
  .entrada{width:100%;height:29px;padding:3px 8px;background:var(--campo);color:var(--texto);border:1px solid var(--borda-campo);border-radius:6px;font:inherit;font-size:13px;outline:none}
  textarea.entrada{height:52px;resize:vertical;padding-top:5px}
  .entrada:focus{border-color:var(--azul);box-shadow:0 0 0 2px rgba(31,122,224,.28);background:var(--campo-foco)}
  .entrada[readonly],.entrada:disabled{background:var(--ro);color:var(--texto2);opacity:1}
  .num-dir{text-align:right}
  .com-bt{display:flex} .com-bt .entrada{border-radius:6px 0 0 6px}
  .com-bt button{border:1px solid var(--borda-campo);border-left:0;background:var(--painel2);color:var(--texto2);border-radius:0 6px 6px 0;padding:0 8px;cursor:pointer;font-weight:600;font-size:12px;display:flex;align-items:center;gap:4px}
  .com-bt button:hover:not(:disabled){color:var(--azul)}
  .dica{font-size:10.5px;color:var(--texto2);margin-top:1px;line-height:1.25}
  .ok{color:#2fb344!important}.erro{color:var(--vermelho)!important}
  .marcadores{display:flex;gap:14px;align-items:center;height:29px}
  .marcadores label{display:flex;align-items:center;gap:5px;cursor:pointer;font-weight:600}
  .sugestao{grid-column:span 6;border:1px solid rgba(31,122,224,.45);background:rgba(31,122,224,.1);border-radius:8px;padding:6px 10px;font-size:12.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
  .sugestao[hidden]{display:none}
  .bt-mini{border:0;background:var(--azul);color:#fff;border-radius:6px;padding:3px 10px;font-weight:600;font-size:12px;cursor:pointer}

  /* Listagem */
  .filtros{display:flex;gap:12px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--borda);flex-wrap:wrap}
  .pesq{position:relative;flex:0 1 460px} .pesq svg{position:absolute;left:9px;top:7px;color:var(--texto2)} .pesq .entrada{padding-left:30px}
  .check{display:flex;align-items:center;gap:6px;color:var(--texto2);cursor:pointer}
  .contador{margin-left:auto;color:var(--texto2);font-size:12px}
  .tabela-caixa{overflow:auto;max-height:calc(100vh - 215px)}
  table{width:100%;border-collapse:collapse}
  th{position:sticky;top:0;background:var(--painel2);color:var(--rotulo);font-size:10px;text-transform:uppercase;letter-spacing:.05em;text-align:left;padding:6px 10px;border-bottom:1px solid var(--borda)}
  td{padding:5px 10px;border-bottom:1px solid var(--borda);white-space:nowrap}
  tbody tr{cursor:pointer} tbody tr:hover td{background:var(--hover)} tbody tr.sel td{background:var(--sel)}
  tbody tr.inativo td{color:var(--texto2);text-decoration:line-through}
  .dir{text-align:right}
  .rodape-lista{padding:6px 12px;color:var(--texto2);font-size:11.5px}
  .etq{display:inline-block;padding:0 6px;border-radius:4px;font-size:10.5px;font-weight:700;background:var(--borda);color:var(--texto2);margin-right:3px}
  .subtabela{border:1px solid var(--borda);border-radius:8px;overflow:hidden}
  .subtabela td{padding:4px 10px} .subtabela .rem{border:0;background:transparent;color:var(--vermelho);cursor:pointer}

  /* Barra de ações */
  .barra-acoes{position:fixed;left:var(--lateral);right:0;bottom:0;background:var(--painel);border-top:1px solid var(--borda);padding:7px 18px;display:flex;gap:6px;flex-wrap:wrap;z-index:30}
  .bt{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--borda);background:var(--painel2);color:var(--texto);border-radius:7px;padding:5px 10px;font-weight:600;font-size:12.5px;cursor:pointer}
  .bt:hover:not(:disabled){border-color:var(--azul)} .bt:disabled{opacity:.35;cursor:not-allowed}
  .bt kbd{background:var(--borda);color:var(--texto2);font-size:10px;padding:1px 5px;border-radius:4px;font-family:inherit;font-weight:700}
  .bt.prim{background:var(--azul);border-color:var(--azul);color:#fff} .bt.prim kbd{background:rgba(255,255,255,.2);color:#fff}
  .bt.perigo{color:var(--vermelho)}
  .modo{margin-left:auto;align-self:center;font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:20px;background:var(--borda);color:var(--texto2)}
  .modo.editar{background:#5c4400;color:#ffd666} .modo.novo{background:#0f4d25;color:#8ce99a}
  [data-tema="claro"] .modo.editar{background:#fff3bf;color:#8a6100} [data-tema="claro"] .modo.novo{background:#d3f9d8;color:#1e7a34}

  /* Janelas */
  .fundo-janela{position:fixed;inset:0;background:rgba(3,8,20,.6);display:none;align-items:flex-start;justify-content:center;padding-top:12vh;z-index:60}
  .fundo-janela.aberta{display:flex}
  .janela{background:var(--painel);border:1px solid var(--borda);border-radius:12px;width:min(440px,92vw);box-shadow:0 20px 50px rgba(0,0,0,.4)}
  .janela header{padding:9px 14px;border-bottom:1px solid var(--borda);font-weight:700;display:flex;align-items:center;gap:8px}
  .janela .corpo{padding:12px 14px} .janela .rodape{padding:9px 14px;border-top:1px solid var(--borda);display:flex;justify-content:flex-end;gap:6px}
  .itens{max-height:280px;overflow:auto;margin-top:8px;border:1px solid var(--borda);border-radius:8px}
  .itens div{padding:5px 10px;cursor:pointer;border-bottom:1px solid var(--borda)} .itens div:last-child{border-bottom:0}
  .itens div.sel{background:var(--azul);color:#fff}
  .atalhos td{padding:4px 8px} .atalhos kbd{background:var(--azul);color:#fff;border-radius:4px;padding:1px 6px;font-family:inherit;font-weight:700;font-size:11px}
  .aviso{position:fixed;right:20px;bottom:60px;background:var(--navy);color:#fff;padding:9px 14px;border-radius:9px;font-weight:600;display:none;z-index:70;box-shadow:0 8px 24px rgba(0,0,0,.3)}
  .aviso.erro{background:var(--vermelho)}
  @media (max-width:1100px){ :root{--lateral:180px} .usuario div:last-child{display:none} }
  @media (max-width:640px){
    .lateral{display:none}.principal{margin-left:0}.barra-acoes{left:0}
    .grade-campos{grid-template-columns:repeat(2,minmax(0,1fr))}
    .c1,.c2,.c3,.c4,.c5,.c6,.sugestao{grid-column:span 2}
    .topo{flex-wrap:wrap}.empresa{margin-left:0}
  }

  /* Telas de entrada (login, troca de senha, escolha de empresa) */
  .entrada-pagina{min-height:100vh;display:grid;place-items:center;padding:30px 16px}
  .cartao-entrada{width:min(380px,100%);background:var(--painel);border:1px solid var(--borda);border-radius:14px;padding:26px 24px 20px;box-shadow:0 20px 50px rgba(0,0,0,.25)}
  .cartao-entrada .marca-entrada{display:flex;align-items:center;gap:10px;margin-bottom:18px}
  .cartao-entrada .marca-entrada b{font-size:17px;display:block}
  .cartao-entrada .marca-entrada small{color:var(--texto2);font-size:11.5px}
  .cartao-entrada .campo{margin-bottom:10px}
  .cartao-entrada .entrada{height:34px}
  .cartao-entrada .bt{width:100%;justify-content:center;padding:8px;margin-top:6px}
  .msg-erro{background:rgba(224,49,49,.14);border:1px solid rgba(224,49,49,.45);color:#ff8787;border-radius:8px;padding:7px 10px;font-size:12.5px;margin-bottom:10px}
  [data-tema="claro"] .msg-erro{color:#c92a2a}
  .creditos{text-align:center;color:var(--texto2);font-size:11px;margin-top:14px}
  .lista-empresas a{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border:1px solid var(--borda);border-radius:9px;margin-bottom:7px;color:var(--texto);text-decoration:none;font-weight:600}
  .lista-empresas a:hover,.lista-empresas a:focus{border-color:var(--azul);outline:none;background:var(--hover)}
  .lista-empresas small{color:var(--texto2);font-weight:500}
  .rodape-lateral{padding:10px 14px;color:#6479a3;font-size:10.5px;border-top:1px solid rgba(255,255,255,.07);margin-top:10px}
  .etq.exclusivo{background:rgba(234,138,0,.2);color:#ffb84d}
  .carregando{opacity:.6;pointer-events:none}
  body.sem-faixa .lateral{top:0} body.sem-faixa .principal{padding-top:0} body.sem-faixa .topo{top:0}
  .topo a.bt-tema{color:var(--texto)}

  /* Menu com ícones coloridos (quadradinho cheio, desenho branco) */
  .menu{padding:0 8px}
  .menu-titulo{padding:12px 8px 4px}
  .menu a{gap:10px;padding:5px 8px;border-left:0;border-radius:9px;margin-bottom:1px;font-weight:600}
  .menu a.ativo{background:rgba(255,255,255,.09);color:#fff;border-left:0}
  .menu a.off{opacity:1}
  .menu a em{margin-left:auto;font-style:normal;font-size:9.5px;font-weight:700;color:#8fa6cf;background:rgba(255,255,255,.07);padding:1px 6px;border-radius:8px;white-space:nowrap}
  .bloco-ico{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none;box-shadow:inset 0 -2px 0 rgba(0,0,0,.15)}
  .bloco-ico svg.i{width:14px;height:14px;stroke:#fff;stroke-width:2.2}
  .lateral{overflow-x:hidden}
  @media (max-width:1100px){ .menu a em{display:none} }
  /* Submenu (ex.: Produtos › Grupos, Subgrupos, Marcas, Unidades) */
  .menu a .seta{margin-left:auto;font-style:normal;font-size:16px;line-height:1;color:#8fa6cf;padding:2px 6px;border-radius:6px;transition:transform .15s}
  .menu a .seta:hover{background:rgba(255,255,255,.08);color:#fff}
  .menu a .seta.aberta{transform:rotate(90deg)}
  .submenu{margin:0 0 4px 21px;padding-left:10px;border-left:1px solid rgba(255,255,255,.1)}
  .submenu a{padding:4px 8px;font-size:12px;font-weight:500;gap:8px}
  .submenu .ponto{width:7px;height:7px;border-radius:50%;flex:none}

  /* Barra de ações no alto, logo abaixo do título, com ícones coloridos */
  .cabecalho{position:sticky;top:18px;z-index:30}
  body.sem-faixa .cabecalho{top:0}
  .cabecalho .topo{position:static}
  .cabecalho .barra-acoes{position:static;left:auto;right:auto;bottom:auto;box-shadow:0 4px 12px rgba(0,0,0,.18);border-top:0;border-bottom:1px solid var(--borda);padding:6px 18px}
  .conteudo{padding-bottom:24px}
  .bt .bloco-ico{width:22px;height:22px;border-radius:6px;display:inline-grid!important}
  .bt .bloco-ico svg.i{width:13px;height:13px}
  .bt{padding:4px 10px 4px 5px}
  .bt:disabled .bloco-ico{filter:grayscale(1)}
  .bt.gravar:not(:disabled){border-color:#10b981;box-shadow:0 0 0 1px rgba(16,185,129,.35)}
  .bt.perigo{color:var(--texto)}
  .tabela-caixa{max-height:calc(100vh - 250px)}

  /* Avisos no alto e no meio da tela (a barra de tarefas do Windows escondia o canto de baixo) */
  .aviso{top:140px;bottom:auto;right:auto;left:50%;transform:translateX(-50%);max-width:min(620px,92vw);font-size:14px;padding:11px 18px;text-align:center;line-height:1.35}
  body.sem-faixa .aviso{top:122px}
  #janSair .janela{width:min(540px,94vw)} #janSair .corpo{line-height:1.5;font-size:13.5px}

  /* Tecla dentro dos botões: mais visível (pedido do Weliton) */
  .bt kbd{background:#e2e8f0;color:#0f172a;border:0;font-size:10.5px;padding:2px 6px}
  .bt.prim kbd,.bt.gravar:not(:disabled) kbd{background:#fff;color:#0f172a}
  .bt:disabled kbd{background:var(--borda);color:var(--texto2)}
  [data-tema="claro"] .bt kbd{background:#1f2d45;color:#fff}
  .janela .rodape .bt{padding:6px 12px;font-size:13px}

  /* Pedidos */
  #telaPedidos .painel-aba{padding:10px 14px 12px}
  .ped-filtros{padding:10px 12px}
  .ped-filtros .bt{padding:4px 8px;font-size:12px}
  kbd.tecla{font-family:inherit;font-size:9.5px;background:var(--azul);color:#fff;border-radius:4px;padding:0 5px;margin-left:4px;letter-spacing:0}
  .resumo-cliente{font-size:12.5px;color:var(--texto);display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:22px}
  .texto2{color:var(--texto2)}
  .lancamento{border-color:rgba(16,185,129,.45)}
  .destaque-amarelo{background:#fff3bf!important;color:#5c4400!important;font-weight:700}
  .totais-pedido{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 1fr 1.6fr;gap:10px;align-items:end}
  .total-produtos{text-align:right;color:var(--texto2);font-size:12px}
  .total-produtos b{font-size:16px;color:var(--texto)}
  .total-grande{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--borda);border-radius:10px;padding:6px 14px;background:var(--painel2)}
  .total-grande span{font-weight:800;color:var(--texto2);letter-spacing:.08em}
  .total-grande b{font-size:28px;color:#ff4d4d;font-weight:800}
  .pagar-total{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-bottom:10px}
  .pagar-total b{font-size:24px;color:#ff4d4d}
  .pagar-resumo{display:flex;gap:18px;justify-content:flex-end;margin-top:10px;font-size:13px}
  .pagar-resumo b{font-size:15px}
  .opcoes-destino{display:grid;gap:8px}
  .opcoes-destino .bt{justify-content:flex-start;padding:8px 10px;text-align:left}
  .opcoes-destino .bt small{display:block;font-weight:500;color:var(--texto2);font-size:11px}
  @media (max-width:900px){ .totais-pedido{grid-template-columns:repeat(2,minmax(0,1fr))} }
  /* Aviso embaixo, no meio (não cobre as janelas nem fica atrás da barra de tarefas no canto) */
  .aviso,body.sem-faixa .aviso{top:auto;bottom:70px}

  /* Financeiro (contas a receber / pagar) */
  .fin-filtros{display:grid;grid-template-columns:auto auto 1fr 1fr;gap:14px;padding:10px 12px;align-items:start}
  .fin-bloco .rot{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--rotulo);margin-bottom:3px}
  .fin-bloco .entrada{height:28px}
  .fin-bloco .bt{padding:3px 8px;font-size:12px}
  .apagado{opacity:.45}
  .botoes-grupo{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--borda-campo);border-radius:7px;overflow:hidden;width:fit-content;margin-bottom:4px}
  .botoes-grupo button{border:0;border-right:1px solid var(--borda-campo);background:var(--painel2);color:var(--texto);padding:5px 10px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
  .botoes-grupo button:last-child{border-right:0}
  .botoes-grupo button:hover{background:var(--hover)}
  .botoes-grupo button.ativo{background:var(--azul);color:#fff}
  .botoes-grupo button kbd{font-family:inherit;font-size:9.5px;background:rgba(255,255,255,.25);border-radius:3px;padding:0 4px;margin-left:3px}
  .fin-faixa{margin:10px 0 0;background:linear-gradient(90deg,#1a64c0,#1f7ae0);color:#fff;text-align:center;font-weight:800;letter-spacing:.08em;padding:6px;border-radius:10px 10px 0 0}
  .modo-pagar .fin-faixa{background:linear-gradient(90deg,#b91c1c,#dc2626)}
  .modo-pagar .botoes-grupo#finTipo button.ativo{background:#dc2626}
  .fin-faixa + .painel{border-top-left-radius:0;border-top-right-radius:0}
  .fin-grade{max-height:calc(100vh - 470px);min-height:180px}
  .fin-grade td{padding:4px 8px}
  .fin-grade tfoot td{position:sticky;bottom:0;background:var(--painel2);font-weight:700;border-top:1px solid var(--borda)}
  .fin-marca{cursor:pointer;font-size:15px;line-height:1}
  .fin-mais{border:1px solid var(--borda-campo);background:var(--painel2);color:var(--texto);width:18px;height:18px;border-radius:4px;font-weight:800;line-height:14px;padding:0;cursor:pointer}
  tr.marcada td{background:rgba(31,122,224,.22)!important}
  .cel-parcela.atrasada,.cel-dias.atrasada{background:#dc2626!important;color:#fff;font-weight:700}
  .cel-parcela.hoje{background:#2563eb!important;color:#fff;font-weight:700}
  .cel-parcela.paga{background:#eab308!important;color:#1a1a1a;font-weight:700}
  .cel-parcela.parcial{background:#f9a8d4!important;color:#1a1a1a;font-weight:700}
  .cel-liquido{background:rgba(31,122,224,.1)}
  tr.fin-sub td{background:var(--painel2)!important;padding:6px 10px 10px 40px}
  .fin-pagtos{font-size:12px}
  .fin-alca{display:block;margin:0 auto;border:1px solid var(--borda);border-top:0;background:#eab30833;color:var(--texto);font:inherit;font-size:11px;font-weight:700;padding:2px 14px;border-radius:0 0 8px 8px;cursor:pointer}
  .fin-base{display:grid;grid-template-columns:auto 1fr auto;gap:12px;margin-top:10px;align-items:stretch}
  .fin-total{border:1px solid var(--borda);border-radius:10px;background:var(--painel);padding:8px 16px;display:flex;flex-direction:column;justify-content:center}
  .fin-total span{font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--texto2)}
  .fin-total b{font-size:28px;color:#ff4d4d;font-weight:800}
  .fin-info{border:1px solid var(--borda);border-radius:10px;background:var(--painel);padding:8px 14px;display:grid;grid-template-columns:1fr 1fr;gap:2px 16px;font-size:12.5px;align-content:center}
  .fin-selecao{border:1px solid #eab30866;border-radius:10px;background:#eab30814;padding:8px 14px;display:grid;gap:2px;font-size:12.5px;align-content:center}
  .fin-selecao b{color:#fbbf24}
  .fin-legenda{display:flex;gap:14px;margin-top:8px;font-size:11.5px;flex-wrap:wrap}
  .fin-legenda i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:4px;vertical-align:-2px}
  .bx-resumo{display:flex;gap:18px;justify-content:flex-end;margin-top:10px;font-size:13px;flex-wrap:wrap}
  .bx-resumo b{font-size:16px;color:#60a5fa}
  @media (max-width:1100px){ .fin-filtros{grid-template-columns:1fr 1fr} .fin-base{grid-template-columns:1fr} }

  /* Renegociação */
  .rn-topo{display:grid;grid-template-columns:repeat(4,auto);gap:18px;justify-content:start;align-items:end}
  .rn-topo b{font-size:18px}
  .rn-topo .rot{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--rotulo)}
  .rn-total{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:8px 0;font-weight:700}
  .rn-total b{font-size:22px;color:#a78bfa}
  .rn-conferencia{margin-top:6px;font-size:12.5px;text-align:right}
  #rnLinhas .entrada{height:27px}
  .cel-parcela.renegociada{background:#6b7280!important;color:#fff}
  .fin-ren{background:rgba(139,92,246,.14);border:1px solid rgba(139,92,246,.4);border-radius:8px;padding:5px 10px;margin-bottom:6px;font-size:12.5px}

  /* Botão Atualizar no topo */
  .bt-atualizar{display:flex!important;align-items:center;gap:6px;font-weight:600;font-size:12.5px;padding:5px 10px!important}
  .bt-atualizar.versao-nova{background:#16a34a;border-color:#16a34a;color:#fff;animation:pulsar 1.6s infinite}
  @keyframes pulsar{0%,100%{box-shadow:0 0 0 0 rgba(22,163,74,.6)}50%{box-shadow:0 0 0 6px rgba(22,163,74,0)}}
  @media (max-width:1100px){ #btAtualizarTxt{display:none} }

  .bt-mini.cinza{background:#475569}
  tr.estornada-linha td{color:var(--texto2)}
  tr.estornada-linha td:nth-child(-n+8){text-decoration:line-through}
  /* Página de registro de erros */
  .lista-erros td{vertical-align:top}
  tr.detalhe-erro td{background:var(--painel2);padding:10px 14px}
  .grade-det{display:grid;gap:2px;font-size:12.5px;margin-bottom:8px}
  .bloco-det{margin-top:8px;font-size:12.5px}
  .bloco-det pre{background:#050a14;color:#cbd5e1;border:1px solid var(--borda);border-radius:8px;padding:8px 10px;white-space:pre-wrap;word-break:break-word;max-height:360px;overflow:auto;font-size:11.5px;margin:4px 0 0}

  /* Financeiro: filtros com cliente/fornecedor no topo */
  .fin-filtros2{padding:10px 12px;display:grid;gap:8px}
  .fin-linha1{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:14px;align-items:end}
  .fin-linha2{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}
  .fin-pessoa .entrada{height:34px;font-size:14px;font-weight:600}
  .fin-filtros2 .rot{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--rotulo);margin-bottom:3px}
  .fin-filtros2 .fin-bloco .entrada{height:28px}
  .fin-filtros2 .bt{padding:3px 8px;font-size:12px}
  .fin-faixa-pessoa{margin-left:14px;background:rgba(255,255,255,.18);border-radius:6px;padding:1px 10px;letter-spacing:.02em}
  .fin-faixa-pessoa small{font-weight:600;opacity:.8}
  .cel-venc.atrasada{background:#dc2626!important;color:#fff;font-weight:700}
  .cel-venc.hoje{background:#2563eb!important;color:#fff;font-weight:700}
  .cel-venc.paga{background:#eab308!important;color:#1a1a1a;font-weight:700}
  .cel-venc.parcial{background:#f9a8d4!important;color:#1a1a1a;font-weight:700}
  .cel-venc.renegociada{background:#6b7280!important;color:#fff}
  .valor-atrasado b{color:#f87171}
  .dias-atraso{color:#f87171;font-weight:700}
  @media (max-width:1100px){ .fin-linha1{grid-template-columns:1fr} }

  .fin-pessoa-linha{display:flex;gap:6px;align-items:stretch}
  .fin-pessoa-linha #finCodigo{width:110px;flex:none;height:34px;font-size:14px;font-weight:700;background:#fff3bf;color:#1a1a1a}
  .fin-pessoa-linha #finPessoa{background:#fff3bf;color:#1a1a1a}
  .fin-pessoa-linha .bt{white-space:nowrap}
  [data-tema="escuro"] .fin-pessoa-linha #finCodigo,[data-tema="escuro"] .fin-pessoa-linha #finPessoa{background:#2a2410;color:#fde68a;border-color:#a16207}

  /* CORREÇÃO: .erro (cor vermelha !important das dicas) deixava o texto da tarja invisível */
  .aviso.erro{color:#fff!important}
