/* ---------- tema: claro, escuro e o que o sistema pede ----------
   Uma decisão só, tomada em `color-scheme`, e toda cor sai de light-dark():
   as duas paletas ficam lado a lado, na mesma linha, e é impossível mexer numa
   e esquecer a outra. Quem manda, nesta ordem:

     1. a classe que o interruptor da marca põe no <html> (.dark / .light —
        convenção do <solis-theme-switch>, que também aceita data-theme);
     2. o que a pessoa escolheu antes (localStorage "tema", relido em index.html
        e portal.html ANTES da primeira pintura, para a tela não piscar);
     3. a preferência do sistema operacional, se ela nunca escolheu.

   color-scheme não só escolhe a paleta: faz o navegador desenhar campos,
   barras de rolagem e menus nativos no tom certo, de graça. */
:root{
  color-scheme:light dark;
  --bg:light-dark(#fbfaf8,#16150f); --bg2:light-dark(#fff,#1e1c16);
  --bg3:light-dark(#f2f0ec,#26231b); --linha:light-dark(#e3dfd8,#332f26);
  --txt:light-dark(#1f1c18,#ece7dc); --txt2:light-dark(#6b645b,#a49c8e); --txt3:light-dark(#98918a,#7b7365);
  --acc:light-dark(#8a4b2a,#d9915f); --acc2:light-dark(#b8693c,#e8a674);
  --ok:light-dark(#2f7d55,#5fb587); --alerta:light-dark(#b8860b,#d6a83c);
  --risco:light-dark(#b4462f,#e0765a); --info:light-dark(#3c6e94,#6fa3c9);
  --raio:7px;
  --sombra:0 1px 2px rgba(0,0,0,.05),0 4px 12px rgba(0,0,0,.04);
  --mono:ui-monospace,"SF Mono",Menlo,monospace;
}
:root.light,:root[data-theme=light]{color-scheme:light}
:root.dark,:root[data-theme=dark]{color-scheme:dark}
/* sombra não é cor: light-dark() não serve, então vai nas duas condições */
@media (prefers-color-scheme:dark){:root:not(.light):not([data-theme=light]){
  --sombra:0 1px 2px rgba(0,0,0,.3),0 4px 14px rgba(0,0,0,.25)}}
:root.dark,:root[data-theme=dark]{--sombra:0 1px 2px rgba(0,0,0,.3),0 4px 14px rgba(0,0,0,.25)}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--txt);font:14px/1.45 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-feature-settings:"tnum";overflow:hidden;height:100vh}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--acc);text-decoration:none}

/* ---------- cabeçalho ---------- */
/* duas linhas: o menu inteiro em cima (sem rolagem), busca e filtros embaixo */
:root{--cab:92px}
header{display:flex;flex-direction:column;gap:6px;padding:7px 16px 8px;background:var(--bg2);
  border-bottom:1px solid var(--linha);position:relative;z-index:50}
.cab-l1,.cab-l2{display:flex;align-items:center;gap:12px;min-width:0}
.cab-l1{flex-wrap:wrap;row-gap:4px}
/* A marca é o interruptor de tema (skin "mark" do loader). Área de proteção: o
   respiro em volta equivale à altura do "s" do nome — nada encosta nela, e é
   ele que vira a distância até o traço que separa do menu. */
.marca-reserva{height:47px;width:auto;display:block}
.marca-tema{--solis-switch-size:58px;flex:none;align-self:center;
  padding:0 24px 0 2px;margin:-4px 8px -4px 0;border-right:1px solid var(--linha)}
@media(max-width:1100px){.marca-tema{--solis-switch-size:48px;padding-right:18px}}
@media(max-width:760px){.marca-tema{--solis-switch-size:38px;padding-right:14px}}
.marca-mod{font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--txt3);border-left:1px solid var(--linha);padding-left:8px}
:root{--logo-azul:light-dark(#0067AC,#6fb3e8)}
nav{display:flex;flex-wrap:wrap;gap:2px}
nav button{background:none;border:0;padding:5px 8px;border-radius:var(--raio);color:var(--txt2);
  cursor:pointer;white-space:nowrap;font-weight:500}
nav button:hover{background:var(--bg3);color:var(--txt)}
nav button[aria-current]{background:var(--acc);color:#fff}
nav button kbd{opacity:.5;font:10px var(--mono);margin-left:5px}
nav button[aria-current] kbd{opacity:.75}
@media(max-width:1100px){nav button kbd{display:none} nav button{padding:5px 8px} .filtro-g>span{display:none}}
@media(max-width:760px){nav button{padding:5px 6px}}
.espaco{flex:1}
.frescor{font-size:11px;color:var(--txt3);white-space:nowrap}
.cab-l2{flex-wrap:wrap;row-gap:6px}
.busca-global{position:relative;flex:1 1 320px;max-width:560px;min-width:200px}
#busca{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 10px;width:100%}
#busca:focus{outline:2px solid var(--acc);outline-offset:-1px}
.busca-res{position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--bg2);border:1px solid var(--linha);
  border-radius:var(--raio);box-shadow:var(--sombra);max-height:min(70vh,520px);overflow:auto;z-index:60;padding:4px 0}
.busca-res .grupo{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);padding:7px 12px 3px}
.busca-res .res{display:flex;gap:10px;align-items:baseline;padding:6px 12px;cursor:pointer}
.busca-res .res[aria-selected="true"],.busca-res .res:hover{background:var(--bg3)}
.busca-res .res b{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.busca-res .res small{color:var(--txt3);white-space:nowrap;margin-left:auto;font-size:11.5px}
.busca-res .res mark{background:none;color:var(--acc);font-weight:700}
.busca-res .dica-b{font-size:11.5px;color:var(--txt3);padding:6px 12px;border-top:1px solid var(--linha);margin-top:4px}
.filtro-g{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--txt3);text-transform:uppercase;letter-spacing:.04em}
.filtro-g select{text-transform:none;letter-spacing:0;font-size:13px;color:var(--txt)}
.filtro-g.inativo{opacity:.4}
.filtro-g.inativo select{cursor:not-allowed}
.filtro-g.ligado select{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 10%,var(--bg3))}
select.conta{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 7px;cursor:pointer}
.filtros-ativos{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--txt3)}
.filtros-ativos .fa{display:inline-flex;gap:4px;align-items:center;background:var(--bg3);border:1px solid var(--linha);border-radius:99px;padding:2px 4px 2px 9px;color:var(--txt)}
.filtros-ativos .fa button{border:0;background:none;cursor:pointer;color:var(--txt3);padding:0 4px;font-size:13px;line-height:1}
.filtros-ativos .fa button:hover{color:var(--risco)}
.filtros-ativos .lnk{font-size:12px}

/* ---------- layout ---------- */
main{height:calc(100vh - var(--cab));overflow-y:auto;overflow-x:hidden;padding:16px;scroll-behavior:smooth}
.tela{display:none;animation:entra .18s ease}
.tela.ativa{display:block}
@keyframes entra{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
h2{font-size:15px;font-weight:650;margin:22px 0 9px;letter-spacing:-.01em}
h2:first-child{margin-top:0}
h2 small{font-weight:400;color:var(--txt3);font-size:12px;margin-left:7px}

/* ---------- KPIs ---------- */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.kpi{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:13px 15px;box-shadow:var(--sombra)}
.kpi .rot{font-size:11px;color:var(--txt2);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.kpi .val{font-size:25px;font-weight:660;letter-spacing:-.025em;margin:3px 0 1px;font-variant-numeric:tabular-nums}
.kpi .sub{font-size:11.5px;color:var(--txt3)}
.kpi.risco .val{color:var(--risco)} .kpi.ok .val{color:var(--ok)} .kpi.alerta .val{color:var(--alerta)}

/* ---------- tabelas ---------- */
.quadro{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  overflow:hidden;box-shadow:var(--sombra)}
table{width:100%;border-collapse:collapse}
th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt2);
  font-weight:650;padding:8px 10px;background:var(--bg3);position:sticky;top:0;cursor:pointer;
  white-space:nowrap;user-select:none;z-index:2;border-bottom:1px solid var(--linha)}
th:hover{color:var(--txt)}
th.n,td.n{text-align:right;font-variant-numeric:tabular-nums}
th[data-ord]::after{content:" ▾";opacity:.9}
th[data-ord="asc"]::after{content:" ▴"}
td{padding:7px 10px;border-top:1px solid var(--linha);vertical-align:middle}
tbody tr{cursor:default}
tbody tr.clicavel{cursor:pointer}
tbody tr.clicavel:hover{background:var(--bg3)}
.vazio{padding:34px;text-align:center;color:var(--txt3)}
.rolar{max-height:calc(100vh - var(--cab) - 163px);overflow:auto}

/* ---------- etiquetas ---------- */
.tag{display:inline-block;padding:1.5px 7px;border-radius:99px;font-size:10.5px;font-weight:650;
  white-space:nowrap;letter-spacing:.01em}
.t-risco{background:color-mix(in srgb,var(--risco) 16%,transparent);color:var(--risco)}
.t-alerta{background:color-mix(in srgb,var(--alerta) 18%,transparent);color:var(--alerta)}
.t-ok{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}
.t-info{background:color-mix(in srgb,var(--info) 15%,transparent);color:var(--info)}
.t-neutro{background:var(--bg3);color:var(--txt2)}
/* Operação da nota: cada uma com a sua cor, para ler a coluna pela cor e não
   palavra por palavra. Devolução FÍSICA (os livros voltam) e SIMBÓLICA (só o
   documento, que fecha o acerto) nunca dividem a mesma cor — são operações
   diferentes, e confundi-las é contar estoque que não voltou. */
:root{--c-remessa:light-dark(#3c6e94,#6fa3c9); --c-acerto:light-dark(#2f7d55,#5fb587);
  --c-devol:light-dark(#b4462f,#e0765a); --c-simb:light-dark(#7a5ba8,#b39ae0);
  --c-venda:light-dark(#1f7a86,#5fb2bd); --c-doacao:light-dark(#8a4b2a,#d9915f)}
.t-remessa{background:color-mix(in srgb,var(--c-remessa) 15%,transparent);color:var(--c-remessa)}
.t-acerto{background:color-mix(in srgb,var(--c-acerto) 15%,transparent);color:var(--c-acerto)}
.t-devolucao{background:color-mix(in srgb,var(--c-devol) 15%,transparent);color:var(--c-devol)}
.t-simbolica{background:color-mix(in srgb,var(--c-simb) 16%,transparent);color:var(--c-simb)}
.t-venda{background:color-mix(in srgb,var(--c-venda) 15%,transparent);color:var(--c-venda)}
.t-doacao{background:color-mix(in srgb,var(--c-doacao) 14%,transparent);color:var(--c-doacao)}
/* "só no Tiny" não é operação, é um aviso sobre o lançamento: fica de contorno
   tracejado para não competir com a cor da operação ao lado. */
.t-tiny{background:transparent;color:var(--alerta);border:1px dashed color-mix(in srgb,var(--alerta) 55%,transparent);padding:0.5px 6px}
.presumido{border-bottom:1.5px dotted var(--alerta);cursor:help}

/* ---------- filtros ---------- */
.filtros{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.chip{background:var(--bg2);border:1px solid var(--linha);border-radius:99px;padding:4px 11px;
  cursor:pointer;color:var(--txt2);font-size:12.5px;white-space:nowrap;transition:.1s}
.chip:hover{border-color:var(--acc);color:var(--txt)}
.chip[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:600}
.chip .c{opacity:.65;margin-left:5px;font-size:11px}
.sep{width:1px;height:18px;background:var(--linha);margin:0 3px}

/* ---------- barra proporcional ---------- */
.barra{height:5px;border-radius:3px;background:var(--bg3);overflow:hidden;min-width:44px}
.barra i{display:block;height:100%;border-radius:3px;background:var(--acc)}
.barra.v i{background:var(--ok)} .barra.r i{background:var(--risco)} .barra.a i{background:var(--alerta)}

/* ---------- mapa ---------- */
#mapa{height:calc(100vh - var(--cab) - 121px);border-radius:var(--raio);border:1px solid var(--linha);z-index:1}
.leaflet-popup-content{margin:10px 12px;font:13px/1.4 ui-sans-serif,system-ui,sans-serif}
.leaflet-popup-content b{display:block;margin-bottom:3px}

/* ---------- painel lateral ---------- */
.fundo{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:99;animation:entra .15s}
.painel{position:fixed;top:0;right:0;bottom:0;width:min(680px,100vw);background:var(--bg);
  z-index:100;box-shadow:-8px 0 30px rgba(0,0,0,.18);display:flex;flex-direction:column;
  animation:desliza .2s cubic-bezier(.2,.8,.3,1)}
@keyframes desliza{from{transform:translateX(30px);opacity:.4}to{transform:none;opacity:1}}
.painel header{border-bottom:1px solid var(--linha);padding:13px 18px;align-items:flex-start}
.painel header>.fechar{margin-left:auto;flex:none}
.painel .corpo{flex:1;overflow-y:auto;padding:16px 18px}
.fechar{background:var(--bg3);border:0;width:27px;height:27px;border-radius:var(--raio);
  cursor:pointer;color:var(--txt2);font-size:16px;line-height:1;flex-shrink:0}
.fechar:hover{background:var(--risco);color:#fff}
.painel h3{font-size:17px;font-weight:660;letter-spacing:-.02em;line-height:1.25}
.painel .meta{font-size:12px;color:var(--txt2);margin-top:2px}
.minikpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;margin-bottom:16px}
.minikpi{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 11px}
.minikpi .rot{font-size:10px;color:var(--txt2);text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.minikpi .val{font-size:17px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.02em}

/* ---------- linha do tempo ---------- */
.linha-tempo{position:relative;padding-left:19px}
.linha-tempo::before{content:"";position:absolute;left:5px;top:5px;bottom:5px;width:2px;background:var(--linha)}
.evt{position:relative;padding:6px 0 6px 4px;display:flex;gap:9px;align-items:baseline}
.evt::before{content:"";position:absolute;left:-18px;top:11px;width:9px;height:9px;border-radius:50%;
  background:var(--bg);border:2px solid var(--txt3)}
/* mesma paleta das operações na lista de notas: a bolinha e o chip combinam */
.evt.remessa::before{border-color:var(--c-remessa)}
.evt.acerto::before{border-color:var(--c-acerto)}
.evt.devolucao::before{border-color:var(--c-devol)}
.evt.devolucao_simbolica::before{border-color:var(--c-simb)}
.evt.venda::before{border-color:var(--c-venda)}
.evt.doacao::before{border-color:var(--c-doacao)}
.evt .data{font:11.5px var(--mono);color:var(--txt3);width:74px;flex-shrink:0}
/* hora embaixo da data: dois eventos do mesmo dia precisam se distinguir */
.evt .data .h{display:block;font-size:10.5px;opacity:.8}
.evt .desc{flex:1;font-size:13px}
.evt .v{font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--txt2);white-space:nowrap}

/* ---------- gráfico ---------- */
.graf{width:100%;height:150px;display:block}
.graf rect{transition:opacity .1s}
.graf rect:hover{opacity:.75}
.leg{display:flex;gap:13px;flex-wrap:wrap;font-size:11.5px;color:var(--txt2);margin-top:7px}
.leg i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px}

/* ---------- ações ---------- */
.acao{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--txt3);
  border-radius:var(--raio);padding:11px 13px;margin-bottom:7px;display:flex;gap:13px;align-items:flex-start}
.acao.cobrar_acerto{border-left-color:var(--risco)}
.acao.repor_titulo{border-left-color:var(--ok)}
.acao.recolher_encalhe{border-left-color:var(--alerta)}
.acao.sanear_contrato{border-left-color:var(--info)}
.acao .quem{font-weight:600;margin-bottom:1px}
.acao .pq{font-size:12.5px;color:var(--txt2)}
.acao .dir{margin-left:auto;text-align:right;flex-shrink:0}
.acao .vl{font-weight:660;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
/* Botões — hierarquia do Material Design: preenchido (1 por área, a ação principal),
   tonal, contorno (secundária) e texto (baixa ênfase). O hover é uma camada de
   estado sutil; nunca transforma um secundário em primário. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;
  background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 12px;
  cursor:pointer;font:inherit;font-size:12.5px;font-weight:560;color:var(--txt);margin-top:5px;text-decoration:none;
  transition:background-color .12s,border-color .12s,box-shadow .12s}
.btn:hover{background:color-mix(in srgb,var(--acc) 7%,var(--bg2));border-color:color-mix(in srgb,var(--acc) 40%,var(--linha))}
.btn:active{background:color-mix(in srgb,var(--acc) 14%,var(--bg2))}
.btn:focus-visible,.btn-texto:focus-visible,.btn-tonal:focus-visible,.chip:focus-visible,[role="button"]:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.btn[disabled],.btn-texto[disabled],.btn-tonal[disabled]{opacity:.45;cursor:not-allowed;filter:none;box-shadow:none}
.btn-tonal{display:inline-flex;align-items:center;gap:6px;min-height:30px;border:0;border-radius:var(--raio);padding:5px 12px;cursor:pointer;
  font:inherit;font-size:12.5px;font-weight:600;background:color-mix(in srgb,var(--acc) 13%,var(--bg2));color:var(--acc);text-decoration:none}
.btn-tonal:hover{background:color-mix(in srgb,var(--acc) 20%,var(--bg2))}
.btn-texto{display:inline-flex;align-items:center;gap:5px;min-height:28px;background:none;border:0;border-radius:var(--raio);padding:4px 8px;
  cursor:pointer;font:inherit;font-size:12.5px;font-weight:560;color:var(--acc);text-decoration:none}
.btn-texto:hover{background:color-mix(in srgb,var(--acc) 8%,transparent)}
.carregando{padding:54px;text-align:center;color:var(--txt3)}
.dica{font-size:11.5px;color:var(--txt3);margin-top:7px}
@media(max-width:820px){
  header{flex-wrap:wrap;gap:8px} #busca{width:130px} .frescor{display:none}
  main{padding:11px} .rolar{max-height:none} #mapa{height:62vh}
}

/* ---------- mapa de consignação ---------- */
.mapa-tela{position:fixed;inset:0;background:var(--bg);z-index:200;overflow:auto;padding:22px}
.mapa{max-width:1400px;margin:0 auto}
.mapa-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.mapa h1{font-size:13px;font-weight:650;text-transform:uppercase;letter-spacing:.09em;color:var(--acc)}
.mapa-parceiro{font-size:23px;font-weight:660;letter-spacing:-.025em;margin:1px 0 3px}
.mapa-meta{font-size:12.5px;color:var(--txt2)}
.mapa-acoes{display:flex;gap:6px;align-items:center;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
.mapa-acoes .btn{margin:0}
.mapa-resumo{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:9px 13px;font-size:13px;color:var(--txt2);margin-bottom:14px}
.mapa-resumo b{color:var(--txt)}
.mapa-tab{width:100%;border-collapse:collapse;background:var(--bg2);
  border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;font-size:12.5px}
.mapa-tab th{position:static;cursor:default;padding:7px 8px}
.mapa-tab td{padding:5px 8px}
.mapa-tab tbody tr:nth-child(even){background:color-mix(in srgb,var(--bg3) 45%,transparent)}
.mapa-tab tfoot td{border-top:2px solid var(--linha);background:var(--bg3);padding:8px}
.mapa-rodape{font-size:11px;color:var(--txt3);margin-top:12px;line-height:1.6;max-width:900px}

@media print{
  @page{size:A4 landscape;margin:11mm}
  /* papel é branco, mesmo com a tela no escuro — e precisa vencer as classes
     do interruptor, que têm especificidade maior que um :root sozinho */
  :root,:root.dark,:root[data-theme=dark]{color-scheme:light}
  html,body{background:#fff;color:#000;overflow:visible;height:auto}
  /* o que imprime é decidido no beforeprint (app.js): a camada da frente */
  header,.fundo{display:none!important}
  body[data-imprimir="mapa"] main, body[data-imprimir="mapa"] .painel,
  body[data-imprimir="mapa"] .mapa-tela:not(.alvo-impressao){display:none!important}
  body[data-imprimir="painel"] main, body[data-imprimir="painel"] .mapa-tela,
  body[data-imprimir="painel"] .painel:not(.alvo-impressao){display:none!important}
  body[data-imprimir="painel"] .painel.alvo-impressao{position:static!important;width:auto!important;height:auto!important;
    box-shadow:none;overflow:visible!important;display:block}
  .painel.alvo-impressao .corpo{overflow:visible!important}
  .painel.alvo-impressao .fechar,.painel.alvo-impressao form,.painel.alvo-impressao .crm-topo button{display:none!important}
  body[data-imprimir="tela"] .mapa-tela, body[data-imprimir="tela"] .painel{display:none!important}
  body[data-imprimir="tela"] main{display:block!important;height:auto!important;overflow:visible!important}
  body[data-imprimir="tela"] .tela:not(.ativa){display:none!important}
  .recorte-impresso{display:block!important;border:1px solid #999;padding:5px 8px;margin:0 0 10px;font-size:9pt;color:#000}
  .btn,.gm-menu{display:none!important}
  .mapa-tela{position:static;padding:0;overflow:visible;background:#fff}
  .mapa-acoes{display:none}
  .mapa-tab{font-size:9pt;border-color:#bbb}
  .mapa-tab th{background:#eee;color:#000;border-bottom:1px solid #999}
  .mapa-tab td{border-top:1px solid #ddd}
  .mapa-tab tbody tr:nth-child(even){background:#f7f7f7}
  .mapa-tab thead{display:table-header-group}  /* repete o cabeçalho a cada página */
  .mapa-tab tr{break-inside:avoid}
  .minikpi,.mapa-resumo{border-color:#ccc;background:#fff}
  .mapa h1,.mapa-parceiro{color:#000}
}

/* ---------- links internos ---------- */
.lnk{background:none;border:0;padding:0 3px;color:var(--acc);cursor:pointer;font:inherit;
  font-size:.94em;border-bottom:1px dotted transparent}
.lnk:hover{border-bottom-color:var(--acc)}
.mono{font-family:var(--mono)}

/* ---------- cabeçalho da NF-e ---------- */
.nf-cab{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;
  background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:12px 14px}
.nf-cab .rot{display:block;font-size:10px;color:var(--txt2);text-transform:uppercase;
  letter-spacing:.05em;font-weight:650;margin-bottom:2px}

/* ---------- CRM ---------- */
.crm{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:12px 14px;margin-bottom:16px}
.crm .rot{display:block;font-size:10px;color:var(--txt2);text-transform:uppercase;
  letter-spacing:.05em;font-weight:650;margin-bottom:3px}
.crm-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.crm-topo b{font-size:14px}
.crm-topo b.atrasado{color:var(--risco)}
.crm-form{margin:10px 0 2px;display:flex;flex-direction:column;gap:6px;
  background:var(--bg3);border-radius:var(--raio);padding:10px}
/* `display:flex` vence o `display:none` embutido do atributo hidden. */
.crm-form[hidden]{display:none}
.crm-form .linha{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.crm-form input,.crm-form select{flex:1;min-width:110px;background:var(--bg2);
  border:1px solid var(--linha);border-radius:var(--raio);padding:6px 8px}
.crm-form input:focus,.crm-form select:focus{outline:2px solid var(--acc);outline-offset:-1px}
.crm-form input[type=checkbox]{flex:0;min-width:0}
.crm-form .atalhos .chip{padding:3px 9px;font-size:11.5px}
.crm-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}
.crm-cols>*{min-width:0}
.conv-lista .evt .desc{min-width:0;overflow-wrap:anywhere;line-height:1.35} .conv-lista .conv-por{display:block;font-size:11.5px;color:var(--txt3);margin-top:1px}
@media(max-width:700px){.crm-cols{grid-template-columns:1fr}}
.pessoa{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;
  padding:6px 0;border-top:1px solid var(--linha)}
.pessoa:first-of-type{border-top:0}
.mapa-acoes #mapaBusca{background:var(--bg3);border:1px solid var(--linha);
  border-radius:var(--raio);padding:6px 10px;width:190px}
.mapa-acoes #mapaBusca:focus{outline:2px solid var(--acc);outline-offset:-1px}
.mapa-tab th[data-mapa-col]{cursor:pointer;user-select:none}
.mapa-tab th[data-mapa-col]:hover{color:var(--txt)}
.mapa-tab th[data-ord]::after{content:" ▾"}
.mapa-tab th[data-ord="asc"]::after{content:" ▴"}
@media print{ .mapa-acoes,.filtros{display:none} }
/* Até 900px o cabeçalho do mapa vira uma coluna: o nome do parceiro ocupa a
   largura inteira (antes quebrava em três linhas num filete) e a fileira de
   ações rola de lado, com alvo de toque maior. */
@media(max-width:900px){
  .mapa-tela{padding:14px}
  .mapa-cab{flex-direction:column;align-items:stretch;gap:10px}
  .mapa-cab>div:first-child{min-width:0}
  .mapa-acoes{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;
    scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .mapa-acoes>*{flex:none}
  .mapa-acoes .btn,.mapa-acoes .btn-tonal{min-height:40px}
  .mapa-acoes input[type=search]{min-width:190px}
  .minikpis{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}
}
@media(max-width:600px){
  .mapa-tela{padding:10px}
  /* a ficha do parceiro quebra em linhas em vez de vazar pela direita */
  .mapa-meta,.mapa-parceiro{white-space:normal;overflow-wrap:anywhere}
  /* a tabela é larga e rola de lado; o cabeçalho e os números ficam presos à
     borda esquerda, na largura da tela, para continuarem legíveis no celular */
  .mapa-cab,.minikpis,.mapa .filtros{position:sticky;left:0;max-width:100vw}
  .mapa-cab>div{min-width:0;max-width:100%}
  .mapa-acoes .btn,.mapa-acoes .btn-tonal,.mapa-acoes .fechar{min-height:48px}
  .mapa-cab h1{font-size:19px}
}

/* ---------- bloco de identificação da conta ---------- */
.ident{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px;
  background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:11px 14px;margin-bottom:14px;font-size:13px}
.ident .rot{display:block;font-size:10px;color:var(--txt2);text-transform:uppercase;
  letter-spacing:.05em;font-weight:650;margin-bottom:1px}
.mapa-acoes #vendasBusca{background:var(--bg3);border:1px solid var(--linha);
  border-radius:var(--raio);padding:6px 10px;width:190px}
.mapa-acoes #vendasBusca:focus{outline:2px solid var(--acc);outline-offset:-1px}
.mapa-tab th[data-vendas-col]{cursor:pointer;user-select:none}
.mapa-tab th[data-vendas-col]:hover{color:var(--txt)}

/* ---------- mapa da conta ---------- */
.btn-prim{background:var(--acc);color:#fff;border-color:var(--acc);font-weight:620;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.btn-prim:hover{background:var(--acc);border-color:var(--acc);filter:brightness(1.08);box-shadow:0 2px 6px rgba(0,0,0,.16)}
.btn-prim:active{filter:brightness(.95)}
.blocos{display:grid;grid-template-columns:2.2fr 1.5fr 1fr;gap:10px;margin-bottom:14px}
@media(max-width:1000px){.blocos{grid-template-columns:1fr}}
.bloco{background:var(--bg2);border:1px solid var(--linha);border-top:3px solid var(--txt3);
  border-radius:var(--raio);padding:10px 13px}
.bloco.b-c{border-top-color:var(--alerta)} .bloco.b-f{border-top-color:var(--ok)} .bloco.b-t{border-top-color:var(--acc)}
.bloco-tit{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px}
.bloco-tit small{font-weight:400;text-transform:none;letter-spacing:0;color:var(--txt3);margin-left:5px}
.bloco-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}
.bloco-nums span{display:block;font-size:10.5px;color:var(--txt2)}
.bloco-nums b{font-size:17px;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.tab-conta .grupos th{background:transparent;border:0;padding:4px 8px 2px;font-size:10px;cursor:default}
.tab-conta th.g-c,.tab-conta .grupos th.g-c{color:var(--alerta)}
.tab-conta th.g-f,.tab-conta .grupos th.g-f{color:var(--ok)}
.tab-conta th.g-t{color:var(--acc)}
.tab-conta td.g-c{background:color-mix(in srgb,var(--alerta) 5%,transparent)}
.tab-conta td.g-f{background:color-mix(in srgb,var(--ok) 5%,transparent)}
.tab-conta td.g-t{background:color-mix(in srgb,var(--acc) 6%,transparent)}
.tab-conta tr.marcado td{background:color-mix(in srgb,var(--acc) 12%,transparent)!important}
.tab-conta th[data-conta-col]{cursor:pointer;user-select:none}
.sub-isbn{font:10.5px var(--mono);color:var(--txt3);margin-top:1px}
.qtd{width:58px;background:var(--bg3);border:1px solid var(--linha);border-radius:5px;padding:3px 5px;text-align:right}
.prop{position:sticky;top:-22px;z-index:5;display:flex;justify-content:space-between;align-items:center;
  gap:10px;flex-wrap:wrap;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:8px 12px;margin-bottom:10px;box-shadow:var(--sombra);font-size:13px}
.prop-botoes{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.prop-botoes .btn{margin:0}
.prop .seg{display:inline-flex;gap:3px;margin-right:4px}
.prop .chip[disabled]{opacity:.4;cursor:not-allowed}
.mapa-acoes #contaBusca{background:var(--bg3);border:1px solid var(--linha);
  border-radius:var(--raio);padding:6px 10px;width:190px}
@media print{ .noprint{display:none!important} .tab-conta td{background:none!important} }
.prop-alerta{flex-basis:100%;background:color-mix(in srgb,var(--risco) 12%,transparent);
  color:var(--risco);border-radius:5px;padding:6px 9px;font-size:12.5px}

/* mapa da conta: título inteiro clicável, rótulo de grupo de filtros */
.lnk.tit{color:var(--txt);text-align:left;padding:0;white-space:normal;line-height:1.35}
.lnk.tit:hover{color:var(--acc)}
.col-tit{min-width:220px;max-width:340px}
.filtro-rot{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);margin-right:4px;align-self:center}

/* ---------- gráfico mensal (fichas de título e conta) ---------- */
.gm-quadro{padding:11px 12px}
.gm-menu{display:flex;flex-wrap:wrap;gap:6px 10px;margin-bottom:8px}
.gm-menu .seg{display:inline-flex;gap:3px}
.gm-area{position:relative}
.gm-svg{width:100%;height:auto;display:block;overflow:visible}
.gm-grade{stroke:var(--linha);stroke-width:1}
.gm-virada{stroke:var(--txt3);stroke-width:1;stroke-dasharray:2 3;opacity:.6}
.gm-eixo{fill:var(--txt3);font:10px ui-sans-serif,system-ui,sans-serif}
.gm-eixo.gm-ano{fill:var(--txt2);font-weight:600}
.gm-eixo-d{fill:var(--info)}
.gm-venda{fill:var(--ok)}
.gm-acerto{fill:var(--alerta)}
.gm-desc{fill:none;stroke:var(--info);stroke-width:1.8;stroke-linejoin:round}
.gm-desc-p{fill:var(--info)}
.gm-hit{fill:transparent;cursor:crosshair}
.gm-hit.on{fill:var(--txt);opacity:.07}
.gm-tip{position:absolute;z-index:3;pointer-events:none;background:var(--bg2);border:1px solid var(--linha);
  border-radius:var(--raio);box-shadow:var(--sombra);padding:8px 10px;font-size:12px;line-height:1.55;
  min-width:190px;white-space:nowrap}
.gm-tip-tot{border-top:1px solid var(--linha);margin-top:3px;padding-top:3px}
.gm-tip-alerta{color:var(--alerta)}
.gm-sw{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.gm-sw.gm-venda{background:var(--ok)} .gm-sw.gm-acerto{background:var(--alerta)}
.gm-sw-l{height:2px;background:var(--info);vertical-align:3px}
.gm-leg{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11.5px;color:var(--txt2);margin-top:6px}
.gm-resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin-top:10px;
  border-top:1px solid var(--linha);padding-top:9px}
.gm-resumo span{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3)}
.gm-resumo b{font-size:14px} .gm-resumo small{display:block;color:var(--txt3);font-size:11px}

/* faixas de desconto */
.faixas{padding:10px 12px}
.faixa{display:grid;grid-template-columns:96px 1fr 190px;gap:10px;align-items:center;font-size:12.5px;padding:2px 0}
.faixa-rot{color:var(--txt2)}
.faixa-barra{background:var(--bg3);border-radius:3px;height:10px;overflow:hidden}
.faixa-barra i{display:block;height:100%;background:var(--info);border-radius:3px}
.faixa-barra i.f-acima{background:var(--risco)}
.faixa-n{color:var(--txt2)}
@media (max-width:560px){.faixa{grid-template-columns:80px 1fr}.faixa-n{grid-column:1/-1}}

/* ---------- mapa interno (§15) ---------- */
.mapa-grade{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;align-items:start}
.mapa-grade #mapa{height:calc(100vh - var(--cab) - 163px);min-height:420px}
.mapa-lado{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:12px;
  max-height:calc(100vh - var(--cab) - 123px);overflow:auto;font-size:13px}
.mapa-lado .mapa-tab{font-size:12px}
.camada-meta{display:grid;gap:5px;font-size:12px;color:var(--txt2);padding-bottom:10px;margin-bottom:10px;
  border-bottom:1px solid var(--linha)}
.camada-meta span{display:inline-block;min-width:82px;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3)}
.camada-meta div:first-child{color:var(--txt);font-weight:600}
.lado-h{font-size:13px;margin:12px 0 5px} .lado-h small{color:var(--txt3);font-weight:400;margin-left:4px}
.lado-p{margin:4px 0 9px;color:var(--txt2);line-height:1.5}
.lista-pontos{list-style:none;margin:0;padding:0}
.lista-pontos li{display:flex;justify-content:space-between;gap:8px;padding:5px 4px;border-bottom:1px solid var(--linha)}
.lista-pontos li:hover{background:var(--bg3)}
.lista-pontos small{display:block;color:var(--txt3);font-size:11px}
.lista-pontos b{white-space:nowrap;font-weight:600;font-size:12px}
.rota-form{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.rota-form label{display:flex;flex-direction:column;font-size:11px;color:var(--txt3);gap:3px}
.rota-form select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 7px;color:var(--txt);max-width:230px}
.rota-lista{padding-left:20px;margin:6px 0}
.rota-lista>li{padding:7px 0;border-bottom:1px solid var(--linha)}
.rota-lista ul{margin:3px 0 3px 14px;padding:0;color:var(--txt2);font-size:12px}
.rota-cab{display:flex;align-items:center;gap:6px} .rota-km{margin-left:auto;color:var(--txt3);font-size:12px}
.rota-sub{font-size:11.5px;color:var(--txt3)}
.rota-pino span{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;
  background:#8a4b2a;color:#fff;font:600 11px ui-sans-serif,system-ui;box-shadow:0 1px 3px rgba(0,0,0,.4)}
@media (max-width:900px){.mapa-grade{grid-template-columns:1fr}.mapa-grade #mapa{height:60vh}.mapa-lado{max-height:none}}

/* ---------- prospecção ---------- */
.estagios{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}
.pro-score{display:grid;grid-template-columns:120px 1fr;gap:14px;background:var(--bg2);border:1px solid var(--linha);
  border-radius:var(--raio);padding:12px}
.pro-total{display:flex;flex-direction:column}
.pro-total span{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.pro-total b{font-size:30px;line-height:1.1} .pro-total small{color:var(--txt3);font-size:11px}
.pro-parte{display:grid;grid-template-columns:150px 1fr 44px;gap:3px 8px;align-items:center;font-size:12.5px;margin-bottom:5px}
.pro-parte small{grid-column:1/-1;color:var(--txt3);font-size:11px;margin-top:-2px}
.pro-parte .faixa-barra i{background:var(--acc)}
.pro-parte.desconhecido{opacity:.55}
.pro-form h2{margin-top:16px}
.pro-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
.pro-grade label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--txt2)}
.pro-grade label.larga{grid-column:1/-1}
.pro-grade input,.pro-grade select,.pro-grade textarea{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:6px 8px;color:var(--txt);font:inherit;font-size:13px}
.com-botao{display:flex;gap:5px} .com-botao input{flex:1;min-width:0} .com-botao .btn{margin:0;white-space:nowrap}
.multi,.seg-radio{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px;color:var(--txt)}
.multi label,.seg-radio label{display:flex;align-items:center;gap:4px;flex-direction:row}
@media (max-width:600px){.pro-grade{grid-template-columns:1fr}.pro-score{grid-template-columns:1fr}}

.recorte-impresso{display:none}

/* ---------- integridade da consignação ---------- */
.integ-inv{display:grid;gap:4px;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;font-size:13px}
.integ-inv .ok b{color:var(--ok)} .integ-inv .falha b{color:var(--risco)} .integ-inv .falha{color:var(--risco)}

/* ---------- balanço ---------- */
.bal-passos{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 14px}
.bal-passo{display:flex;gap:10px;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:12px}
.bal-passo>b{flex:0 0 26px;height:26px;border-radius:50%;background:var(--acc);color:#fff;display:flex;align-items:center;justify-content:center}
.bal-passo h3{margin:0 0 4px;font-size:14px} .bal-passo p{margin:0 0 8px;color:var(--txt2);font-size:12.5px}
.bal-passo textarea{width:100%;margin-top:6px;background:var(--bg);border:1px solid var(--linha);border-radius:var(--raio);padding:6px;font:12px var(--mono);color:var(--txt)}
.bal-map{margin-top:8px;font-size:12px;color:var(--txt2);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.bal-map select,.bal-data input{background:var(--bg);border:1px solid var(--linha);border-radius:5px;padding:3px 5px;color:var(--txt)}
.bal-chk{display:flex;gap:6px;align-items:center;font-size:12px;margin-top:6px;color:var(--txt2)}
.bal-data{font-size:12px;color:var(--txt2);display:flex;gap:6px;align-items:center;margin-left:auto}
.bal-saidas{justify-content:flex-start;gap:6px;flex-wrap:wrap}
@media (max-width:760px){.bal-passos{grid-template-columns:1fr}}

/* ---------- impressão: linhas de altura igual ----------
   Só vale durante a impressão (body[data-imprimir] é posto no beforeprint e
   tirado no afterprint) — e por isso dá para pré-visualizar na tela. */
body[data-imprimir] .alvo-impressao table{table-layout:fixed;width:100%;border-collapse:collapse}
body[data-imprimir] .alvo-impressao table th,
body[data-imprimir] .alvo-impressao table td{
  height:6.4mm;max-height:6.4mm;padding:0 1.2mm;line-height:6.4mm;vertical-align:middle;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8.5pt}
/* No layout fixo a largura é dividida em partes iguais: com 17 colunas cada uma
   ficava com ~16 mm e "REMESSA" saía "RE…", "R$ 1.153" saía "R$ 1.1…". Número
   cortado não serve para nada — título cortado ainda se entende. Então a coluna
   de número pede a largura de que precisa (num corpo um pouco menor) e as de
   texto ficam com o resto. */
body[data-imprimir] .alvo-impressao table th.n,
body[data-imprimir] .alvo-impressao table td.n{width:17mm;font-size:8pt}
/* e o cabeçalho quebra em duas linhas em vez de virar reticência */
/* sem caixa alta e sem espacejamento: "Remessa" cabe onde "REMESSA" não cabia,
   e em corpo 7,5 pt a caixa mista ainda se lê melhor */
body[data-imprimir] .alvo-impressao table th{font-size:7.5pt;white-space:normal;line-height:1.15;
  height:auto;max-height:none;padding-top:1mm;padding-bottom:1mm;vertical-align:bottom;
  text-transform:none;letter-spacing:0}
body[data-imprimir] .alvo-impressao td br,
body[data-imprimir] .alvo-impressao td .sub-isbn,
body[data-imprimir] .alvo-impressao td small,
body[data-imprimir] .alvo-impressao td [data-auditar],
body[data-imprimir] .alvo-impressao td [data-roteirizar],
body[data-imprimir] .alvo-impressao td [data-pro-novo],
body[data-imprimir] .alvo-impressao td [data-bal-status],
body[data-imprimir] .alvo-impressao .noprint{display:none!important}
body[data-imprimir] .alvo-impressao td .tag{padding:0 4px;line-height:1.4;font-size:7.5pt}
body[data-imprimir] .alvo-impressao td .lnk{padding:0;border:0;font-size:inherit;color:inherit}
body[data-imprimir] .alvo-impressao td > *{white-space:nowrap}
body[data-imprimir] .alvo-impressao tr{break-inside:avoid}
/* botão não aceita display:inline no Chrome: fica inline-block com a altura
   exata da linha, alinhado ao topo, e corta com reticências por dentro */
body[data-imprimir] .alvo-impressao td .lnk,body[data-imprimir] .alvo-impressao td button{
  background:none;vertical-align:top;height:6.4mm;line-height:6.4mm;max-width:100%;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body[data-imprimir] .alvo-impressao td .tag{vertical-align:middle}
.insight-zerados{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--risco);border-radius:var(--raio);
  padding:10px 12px;margin:10px 0;font-size:13px;line-height:1.6}
.insight-zerados .btn{margin:0 0 0 6px;padding:2px 8px}
.qtd-max{margin-left:3px;color:var(--txt3);font-size:11px}
.qtd-max.no-limite{color:var(--alerta);font-weight:600}
input.qtd.limitado{outline:2px solid var(--alerta);outline-offset:-1px}
.gm-remessa{fill:#7b6bb0}
.gm-sw.gm-remessa{background:#7b6bb0}
.gm-fora{opacity:.28}
.gm-faixa-sel{fill:var(--acc);opacity:.08}
.gm-hit.arrastando{fill:var(--acc);opacity:.14}
.gm-hit{cursor:col-resize}
.gm-sel-chip{background:color-mix(in srgb,var(--acc) 14%,transparent)!important;border-color:var(--acc)!important}
.gm-dica-sel{color:var(--txt3)}
.recorte-titulo{min-height:40px}

/* ---------- condições comerciais ---------- */
.condicoes{margin:12px 0}
.cond-tit{font-weight:650;font-size:14px;margin-bottom:6px} .cond-tit small{color:var(--txt3);font-weight:400;margin-left:6px}
.cond-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.cond{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 11px;display:flex;flex-direction:column;gap:2px}
.cond span{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3)}
.cond b{font-size:17px} .cond small{color:var(--txt2);font-size:11.5px;line-height:1.4}
.cond-inferido{border-left:3px solid var(--alerta)} .cond-diverge{border-left:3px solid var(--risco)}

/* seletor de colunas dos mapas */
.cols-modal{position:fixed;inset:0;background:rgba(0,0,0,.28);display:flex;align-items:flex-start;justify-content:center;padding:70px 16px}
.cols-caixa{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);box-shadow:var(--sombra);width:min(460px,100%);padding:14px 16px}
.cols-caixa header{display:flex;align-items:baseline;gap:8px;padding:0 0 8px;background:none;border:0}
.cols-caixa header small{color:var(--txt3)}
.cols-caixa header .fechar{margin-left:auto}
.cols-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.cols-lista{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}
.cols-lista label{display:flex;gap:6px;align-items:center;font-size:13px;cursor:pointer}
@media (max-width:520px){.cols-lista{grid-template-columns:1fr}}
@media print{.cols-modal{display:none!important}}

/* segregar posição (estoque) */
.seg-form{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;margin:4px 0}
.seg-campos{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.seg-campos label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--txt2)}
.seg-campos input,.seg-campos select{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 7px;color:var(--txt)}

/* potencial pouco trabalhado */
.acao.pot{border-left-color:var(--ok)}
.acao.pot .pq{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.sinal{font-size:11.5px;border-radius:99px;padding:1px 8px;white-space:nowrap}
.sinal.s-dem{background:color-mix(in srgb,var(--ok) 13%,transparent);color:var(--ok)}
.sinal.s-ate{background:color-mix(in srgb,var(--alerta) 13%,transparent);color:var(--alerta)}
.acao.pot .vl small{font-weight:400;color:var(--txt3);font-size:11px}

/* confiança do diagnóstico */
.conf{font-size:10px;border-radius:99px;padding:0 6px;border:1px solid var(--linha);color:var(--txt3);text-transform:uppercase;letter-spacing:.04em}
.conf-alta{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}
.conf-media{color:var(--alerta);border-color:color-mix(in srgb,var(--alerta) 40%,transparent)}

/* gráfico do mapa da conta: saldo na loja e trecho selecionado */
.gm-saldo{fill:none;stroke:var(--txt);stroke-width:1.8;stroke-linejoin:round;opacity:.75}
.gm-sw-s{background:none!important;border-top:2px solid var(--txt);height:0!important;margin-top:6px;opacity:.75}
.gm-eixo-s{fill:var(--txt2)}
.recorte-mapa{margin:6px 0 10px;padding:8px 12px;border-radius:var(--raio);background:color-mix(in srgb,var(--acc) 8%,var(--bg2));border:1px solid color-mix(in srgb,var(--acc) 30%,var(--linha));font-size:13px}

/* ---------- CRM ---------- */
.crm-abas{display:flex;gap:6px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.crm-abas .espaco{flex:1}
.crm-grade{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:18px;align-items:start}
.crm-grade.modelos{grid-template-columns:260px minmax(0,1fr)}
@media(max-width:980px){.crm-grade,.crm-grade.modelos{grid-template-columns:1fr}}
.sinal-card{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;margin-bottom:8px;box-shadow:var(--sombra)}
.sc-cab{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.sc-conta{font-weight:650;font-size:14px}
.sc-cab small{color:var(--txt3)}
.sc-valor{margin-left:auto;font-weight:650;font-variant-numeric:tabular-nums}
.sc-tit{margin:5px 0 2px;font-size:13.5px}
.sc-pq{margin:2px 0 6px 18px;padding:0;font-size:12.5px;color:var(--txt2)}
.sc-acoes{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.sc-acoes .espaco{flex:1}
.sc-acoes .btn{margin:0}
.tarefa{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--info);border-radius:var(--raio);padding:7px 10px;margin-bottom:6px}
.tarefa.atrasada{border-left-color:var(--risco)} .tarefa.hoje{border-left-color:var(--ok)}
.tf-tit{font-size:13px;margin:2px 0 4px}
.tf-acoes{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.tf-acoes input{flex:1;min-width:120px;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:3px 7px;font-size:12.5px}
.tf-acoes .btn{margin:0;padding:3px 9px}
.tarefa-nova{display:flex;gap:6px;margin-top:4px}
.tarefa-nova input{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 8px}
.tarefa-nova input[name="titulo"]{flex:1}
.tarefa-nova .btn{margin:0}
.msg-linha{display:flex;gap:7px;align-items:center;padding:5px 2px;border-bottom:1px solid var(--linha);cursor:pointer;font-size:13px}
.msg-linha:hover{background:var(--bg3)}
.msg-linha span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.msg-linha small{color:var(--txt3)}
.msg-anexos{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 4px}
.msg-anexos-rot{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--txt3);width:100%}
.msg-anexo{display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 9px;border:1px solid var(--linha);border-radius:var(--raio);
  background:var(--bg2);color:var(--txt);text-decoration:none;max-width:100%;transition:border-color .15s,background .15s}
.msg-anexo .ic{display:grid;place-items:center;width:26px;height:26px;border-radius:5px;background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok);font-size:15px}
.msg-anexo .nm{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-anexo small{color:var(--txt3);white-space:nowrap}
a.msg-anexo:hover{border-color:var(--acc);background:var(--bg3)}
.msg-anexo.sem{opacity:.75;border-style:dashed}
.msg-corpo{white-space:pre-wrap;font:14px/1.55 ui-sans-serif,system-ui,-apple-system,sans-serif;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:12px 14px}
.composer .cmp-rot{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3)}
.composer .cmp-rot small{text-transform:none;letter-spacing:0}
.composer .cmp-bloco{margin-bottom:10px}
.composer .cmp-bloco>.cmp-rot{display:block;margin-bottom:4px}
.composer input[name="assunto"],.composer textarea,.modelo-edit input,.modelo-edit textarea{width:100%;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 9px;color:var(--txt)}
.composer textarea,.modelo-edit textarea{font:14px/1.5 ui-sans-serif,system-ui,-apple-system,sans-serif;resize:vertical}
.composer input[name="assunto"]{font-weight:600}
/* Para / Cópia / Modelo / Assunto: rótulo à esquerda, campo à direita */
.cmp-grade{display:grid;grid-template-columns:62px 1fr;gap:8px 10px;align-items:center;margin:0 0 10px}
.cmp-grade>.cmp-rot{align-self:start;padding-top:7px}
.cmp-para,.cmp-copias{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}
.cmp-pessoa{display:inline-flex;gap:6px;align-items:center;font-size:13px;padding:4px 10px 4px 7px;border:1px solid var(--linha);border-radius:999px;background:var(--bg2);max-width:100%;min-width:0;cursor:pointer}
.cmp-pessoa:has(input:checked){border-color:color-mix(in srgb,var(--acc) 45%,var(--linha));background:color-mix(in srgb,var(--acc) 8%,var(--bg2))}
.cmp-pessoa small{color:var(--txt3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cmp-pessoa .tag{font-size:10.5px}
.cmp-pessoa.bloq{opacity:.55;cursor:not-allowed}
.cmp-para input[type="email"]{background:transparent;border:1px dashed var(--linha);border-radius:999px;padding:4px 10px;width:170px;font-size:13px;color:var(--txt)}
.cmp-para input[type="email"]:focus{border-style:solid;width:240px;background:var(--bg2)}
.cmp-copias{font-size:13px;color:var(--txt2)}
.cmp-mais-copias summary{cursor:pointer;color:var(--txt3);font-size:12.5px;padding:4px 6px;list-style:none}
.cmp-mais-copias summary::-webkit-details-marker{display:none}
.cmp-mais-copias[open]{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
.cmp-mais-copias[open] summary{flex-basis:100%;padding-left:0}
.cmp-mais-copias label{display:flex;gap:6px;align-items:center}
.cmp-mais-copias input{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 8px;width:250px;max-width:100%;color:var(--txt)}
.cmp-linha{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cmp-linha select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 7px;max-width:100%}
.btn-texto[hidden],.cmp-refazer[hidden]{display:none}
.cmp-dica{font-size:11.5px;color:var(--txt3);margin:3px 0 0}
.cmp-opcoes{display:flex;flex-direction:column;gap:5px;margin:10px 0;padding-top:10px;border-top:1px solid var(--linha);font-size:13px;color:var(--txt2)}
.cmp-hora{color:var(--alerta);margin-left:6px}
@media (max-width:560px){.cmp-grade{grid-template-columns:1fr;gap:4px}.cmp-grade>.cmp-rot{margin-top:6px}}
.cmp-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.cmp-acoes .btn{margin:0}
.modelo-item{display:block;width:100%;text-align:left;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:8px 10px;margin-bottom:6px;cursor:pointer}
.modelo-item.ativo{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc)}
.modelo-item small{color:var(--txt3)}
.crm-saude{margin-bottom:10px}
.saude-partes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px 12px;margin-top:6px}
.saude-partes span{font-size:11px;color:var(--txt3);text-transform:uppercase;letter-spacing:.04em}
.saude-partes small{display:block;font-size:11px;color:var(--txt2)}
.crm-sinais,.crm-tarefas,.crm-msgs{margin:10px 0}
.sinal-mini{font-size:13px;margin:4px 0}
.tag.saude{font-variant-numeric:tabular-nums;min-width:26px;text-align:center}

/* aviso flutuante (ação que falhou) */
.aviso{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:9999;max-width:min(560px,calc(100vw - 32px));
  padding:10px 16px;border-radius:var(--raio);box-shadow:var(--sombra);font-size:13.5px;background:var(--bg2);border:1px solid var(--linha)}
.aviso-erro{border-color:var(--risco);color:var(--risco)}
.aviso-ok{border-color:var(--ok);color:var(--ok)}

/* ficha da conta: cabeçalho, leitura e próximo passo */
.ficha-cab{flex-wrap:wrap;align-items:flex-start;position:relative;padding-right:52px}
.ficha-cab>div:first-child{flex:1 1 100%}
.ficha-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}
.ficha-acoes{display:flex;gap:6px;align-items:center;flex-wrap:wrap;width:100%;margin-top:10px}
.ficha-fechar{position:absolute;top:12px;right:14px}
.ficha-acoes .btn{margin:0}
.leitura{background:color-mix(in srgb,var(--acc) 5%,var(--bg2));border:1px solid color-mix(in srgb,var(--acc) 22%,var(--linha));border-radius:var(--raio);padding:12px 14px;margin-bottom:12px}
.leitura p{margin:0 0 10px;font-size:14px;line-height:1.6}
.leitura-passo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:9px;border-top:1px dashed var(--linha)}
.leitura-passo .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.leitura-passo span:nth-child(2){flex:1;min-width:200px}
.leitura-passo .btn{margin:0}
.minikpi .sub{font-size:11.5px;color:var(--txt2);margin-top:2px}
.minikpi .val small{font-size:12px;color:var(--txt3);font-weight:500}
/* composer */
.cmp-assuntos{display:flex;flex-direction:column;gap:4px}
.cmp-assuntos label{display:flex;gap:6px;align-items:center;font-size:13px}
.cmp-avisos{list-style:none;margin:0 0 10px;padding:7px 10px 7px 10px;border-radius:var(--raio);background:var(--bg3);font-size:12.5px;line-height:1.45;color:var(--txt2);display:flex;flex-direction:column;gap:3px}
.cmp-avisos li{padding-left:16px;position:relative}
.cmp-avisos li::before{content:"i";position:absolute;left:0;top:2px;width:11px;height:11px;border-radius:50%;background:var(--txt3);color:var(--bg);font:700 8.5px/11px ui-sans-serif,system-ui,sans-serif;text-align:center}
.cmp-avisos li.cmp-alerta{color:var(--txt)}
.cmp-avisos li.cmp-alerta::before{content:"!";background:var(--alerta)}
.cmp-refazer{margin-left:auto}
/* o cabeçalho do app é em coluna (duas linhas); o dos painéis continua em linha */
aside.painel>header{flex-direction:row;gap:12px}

/* quem está usando (assina e-mails e a trilha) — SÓ o formulário flutuante,
   por id: a classe .quem também nomeia o parceiro dentro dos cartões, e a
   regra solta jogava cada nome de cliente para o canto da tela, empilhados. */
#quem{position:fixed;right:18px;bottom:18px;z-index:9998;display:flex;gap:8px;align-items:center;flex-wrap:wrap;max-width:min(520px,calc(100vw - 32px));
  background:var(--bg2);border:1px solid var(--acc);border-radius:var(--raio);box-shadow:var(--sombra);padding:10px 12px;font-size:13px}
#quem .quem-motivo{color:var(--txt2);flex:1 1 100%}
#quem input{flex:1;min-width:160px;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 9px}
#quem .btn{margin:0}

/* ---------- pedidos ---------- */
.ped-barra{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}
.ped-barra .filtros{margin:0}
.ped-barra .btn{margin:0 0 0 auto}
.ped-board{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
@media(max-width:900px){.ped-board{grid-template-columns:1fr}}
.ped-col h3{font-size:14px;margin:0 0 2px}.ped-col h3 small{color:var(--txt3);font-weight:500}
.ped-col .dica{margin:0 0 8px}
.ped-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.ped-card{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--info);border-radius:var(--raio);padding:9px 11px;margin-bottom:8px;cursor:pointer;box-shadow:var(--sombra)}
.ped-card:hover{border-color:var(--acc)}
.ped-card.atrasado{border-left-color:var(--risco)}
.pc-cab{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.pc-cab small{color:var(--txt3)}
.pc-conta{font-weight:650;margin-top:5px}
.pc-tit{font-size:12.5px;color:var(--txt2)}
.pc-etapa{font-size:12.5px;margin-top:3px}
.pc-atend{margin-top:5px}.pc-atend small{font-size:11.5px;color:var(--txt2)}
.pc-acoes{display:flex;gap:8px;align-items:center;margin-top:6px}.pc-acoes .btn{margin:0;padding:3px 9px}
.stepper{display:flex;gap:4px;margin:6px 0 2px}
.stepper .step{flex:1;display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--txt3)}
.stepper .step i{display:block;height:5px;border-radius:3px;background:var(--linha)}
.stepper .step.feito i{background:var(--ok)} .stepper .step.atual i{background:var(--info)} .stepper .step.atrasado i{background:var(--risco)}
.stepper .step.cancelado i{background:var(--txt3);opacity:.4}
.stepper .step.atual span,.stepper .step.atrasado span{color:var(--txt);font-weight:600}
.stepper.grande{margin:4px 0 12px}.stepper.grande .step i{height:7px}
.stepper .step small{font-size:10.5px}
.ped-agora{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;margin-bottom:10px}
.ped-agora.atrasado{border-color:color-mix(in srgb,var(--risco) 45%,var(--linha))}
.ped-agora .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.ped-agora b{font-size:15px}
.ped-botoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ped-botoes .btn{margin:0}
.ped-prazo{font-size:12px;color:var(--txt2);display:flex;gap:4px;align-items:center}
.ped-prazo input{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:2px 5px}
.bloco-pedidos{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 12px;margin-bottom:12px}
.bp-cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.bp-cab .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.ped-mini{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:4px 0;border-top:1px solid var(--linha);cursor:pointer;font-size:13px}
.ped-mini:hover{background:var(--bg3)}
.novo-pedido input,.novo-pedido select,.novo-pedido textarea{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 8px;color:var(--txt)}
.novo-pedido input[name="titulo"],.novo-pedido textarea,.novo-pedido input[name="conta_busca"]{width:100%}
.nf-efeito{white-space:nowrap}

/* ---------- gestão de consignação ---------- */
.consig-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:12px;margin-top:12px}
.q-tit{font-size:13.5px;margin:0 0 8px}.q-tit small{color:var(--txt3);font-weight:400}
.idade,.rank{display:grid;grid-template-columns:120px 1fr 64px 44px;gap:8px;align-items:center;font-size:13px;padding:3px 0}
.rank{grid-template-columns:minmax(0,1fr) 110px 64px}
.rank span,.idade span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank b,.idade b{text-align:right;font-variant-numeric:tabular-nums}.idade small{color:var(--txt3);text-align:right}
.rank.clicavel{cursor:pointer}.rank.clicavel:hover{background:var(--bg3)}
.ciclo-topo{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;margin-bottom:8px}
.auto-card{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;display:flex;flex-direction:column;gap:5px;font-size:13px;max-width:420px}
.auto-card select,.auto-card input[type=number]{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:3px 6px}
.auto-card small{color:var(--txt3)}
.ciclo-barra{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
.ciclo-barra .btn{margin:0}.ciclo-barra small{color:var(--txt3)}
.ciclo-res{padding:10px 14px;margin-bottom:10px}
.res-linha{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:4px 0;border-top:1px solid var(--linha);font-size:13px}
.res-linha small{color:var(--txt2)}
tr.marcado td{background:color-mix(in srgb,var(--acc) 6%,transparent)}
.mov-card{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;margin-bottom:8px;box-shadow:var(--sombra)}
.mov-cab small{color:var(--txt3)}
.mov-grade{display:flex;flex-direction:column;gap:6px;margin:8px 0}
.mov-grade>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}
.mov-grade small{color:var(--txt2)}.mov-grade .btn{margin:0;padding:3px 9px}

/* nota: dados do Tiny; histórico do livro com o cliente */
.nf-tiny-cab{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;font-size:13px}
.nf-tiny-cab .rot,.nf-obs .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-bottom:2px}
.nf-marc{margin:8px 0;display:flex;gap:5px;flex-wrap:wrap}
.nf-obs{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 12px;margin-top:8px;font-size:13px}
.nf-obs pre{white-space:pre-wrap;margin:2px 0 0;font:14px/1.5 ui-sans-serif,system-ui,-apple-system,sans-serif;background:color-mix(in srgb,var(--alerta) 8%,var(--bg2));padding:8px 10px;border-radius:var(--raio)}
.diag-box{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:8px 12px;margin-bottom:8px;font-size:13px}
.hist-conta{margin-bottom:6px}

/* listas ordenáveis por coluna */
table.ordenavel thead th{cursor:pointer;user-select:none}
table.ordenavel thead th:hover{color:var(--txt)}
table.ordenavel thead th.ord-asc::after{content:' ▲';font-size:9px}
table.ordenavel thead th.ord-desc::after{content:' ▼';font-size:9px}
.prop-edit{background:color-mix(in srgb,var(--info) 10%,var(--bg2));border:1px solid color-mix(in srgb,var(--info) 40%,var(--linha));border-radius:var(--raio);padding:7px 10px;margin-bottom:6px;font-size:13px}
.prop-edit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px}
.prop-edit .pe-acoes{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
.ped-card.tiny{border-left-color:var(--acc);cursor:default}

/* análise do pedido importado */
.analise-tab td{vertical-align:top}
.analise-tab input.qtd{width:64px}
.analise-tab tr.lin-risco td{background:color-mix(in srgb,var(--risco) 7%,transparent)}
.analise-tab tr.lin-alerta td{background:color-mix(in srgb,var(--alerta) 6%,transparent)}
.sinal.s-risco{background:color-mix(in srgb,var(--risco) 13%,transparent);color:var(--risco)}
.sinal.s-info{background:var(--bg3);color:var(--txt2)}
.imp-ped select,.imp-ped input[type=file],.imp-ped textarea,.imp-ped input[name=conta_busca]{width:100%;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 8px;color:var(--txt)}
.imp-ped textarea{font:13px var(--mono)}
.minikpi.risco .val{color:var(--risco)}
.imp-destaque{background:color-mix(in srgb,var(--acc) 6%,var(--bg2));border:1px solid color-mix(in srgb,var(--acc) 35%,var(--linha));border-radius:var(--raio);padding:12px;margin:10px 0;display:flex;flex-direction:column;gap:8px}
.imp-destaque small{color:var(--txt3)}
.imp-destaque .btn{align-self:flex-start;margin:0}
.ou-manual{display:flex;align-items:center;gap:8px;color:var(--txt3);font-size:12px;margin:6px 0}
.ou-manual::before,.ou-manual::after{content:'';flex:1;border-top:1px solid var(--linha)}
.meta-ped{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px 14px;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;margin:8px 0;font-size:13px}
.meta-ped .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.meta-ped .largo{grid-column:1/-1}

/* mapa: cartão do ponto, editor de posição */
.mapa-pop .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.mapa-pop .leaflet-popup-content{margin:12px 14px;font:13px/1.4 var(--fonte, system-ui)}
.mp-nome{font-weight:700;font-size:14px;margin-bottom:2px}
.mp-sub{color:var(--txt2);font-size:12px}
.mp-num{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0;font-size:12px}
.mp-end{font-size:11.5px;color:var(--txt2);margin-bottom:4px}
.mp-prec{font-size:11.5px;color:var(--txt3);margin-bottom:8px}
.mp-prec.susp{color:#d0342c}
.mp-acoes{display:flex;gap:6px;flex-wrap:wrap}
.mp-acoes .btn{padding:4px 9px;font-size:12px}
.geo-ed #geoEd{height:min(58vh,520px);border-radius:var(--raio);border:1px solid var(--linha);margin:8px 0;cursor:crosshair}
.geo-end{font-size:13px;margin:0 0 8px}
.geo-end .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.geo-busca{display:flex;gap:6px}
.geo-busca input{flex:1}
.geo-res{display:flex;flex-direction:column;gap:4px;margin:6px 0}
.geo-r{text-align:left;border:1px solid var(--linha);background:var(--bg2);border-radius:8px;padding:6px 9px;cursor:pointer;font:inherit;color:inherit}
.geo-r small{display:block;color:var(--txt3)}
.geo-r:hover,.geo-r.sel{border-color:var(--acento, #8a4b2a);background:var(--bg)}
.geo-bases{display:flex;gap:6px;align-items:center;margin-top:4px}
.geo-info{font-size:12.5px;color:var(--txt2);min-height:18px}
.geo-pino span{display:block;width:26px;height:26px;border-radius:50% 50% 50% 0;background:#d0342c;transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 3px 10px rgba(0,0,0,.35)}
.geo-pino span::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;left:6px;top:6px}
.leaflet-marker-draggable.geo-pino{cursor:grab}

/* mapa: controles dentro do mapa (como no Google Maps) */
.mapa-ctl-base{display:flex;background:var(--bg2);border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.25);overflow:hidden}
.mapa-ctl-base button{border:0;background:none;padding:6px 11px;font:600 12px/1 system-ui,sans-serif;color:var(--txt2);cursor:pointer}
.mapa-ctl-base button[aria-pressed="true"]{background:color-mix(in srgb,var(--acc) 14%,var(--bg2));color:var(--acc)}
.mapa-ctl-base button:hover{background:var(--bg3)}
.mapa-ctl-fit{width:30px;height:30px;display:grid;place-items:center;background:var(--bg2);border:0;border-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.25);cursor:pointer;font-size:16px;color:var(--txt)}
.mapa-ctl-fit:hover{background:var(--bg3)}
.mp-acoes{align-items:center}
.mp-acoes .btn-texto{margin-left:auto;font-size:12px;padding:4px 6px}
/* pedido do Tiny */
.ped-card.clicavel{cursor:pointer}
.ped-card.clicavel:hover{border-color:color-mix(in srgb,var(--acc) 45%,var(--linha))}
.pc-nf{font-size:12px;margin-top:3px}
.acoes-cab{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0}
.acoes-cab .btn,.acoes-cab .btn-texto{margin-top:0}
.pt-nat{border:1px solid var(--linha);border-radius:var(--raio);padding:9px 12px;background:var(--bg2)}
.pt-nat .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.pt-nat.alerta{border-color:var(--alerta);background:color-mix(in srgb,var(--alerta) 8%,var(--bg2))}
.pt-nat p{margin:5px 0 0;font-size:12.5px}
.pt-nf{border-left:3px solid var(--ok);padding:6px 10px;margin:6px 0 10px;font-size:13px;background:var(--bg2)}
.pt-nf.alerta{border-left-color:var(--alerta)}

/* ---------- CRM: fila de trabalho ---------- */
.crm-tabs{display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid var(--linha);margin-bottom:14px}
.crm-tabs [role="tab"]{background:none;border:0;border-bottom:3px solid transparent;padding:9px 16px 8px;font:inherit;font-size:14px;font-weight:600;color:var(--txt2);cursor:pointer;border-radius:6px 6px 0 0}
.crm-tabs [role="tab"]:hover{background:var(--bg3);color:var(--txt)}
.crm-tabs [role="tab"][aria-selected="true"]{color:var(--acc);border-bottom-color:var(--acc)}
.crm-tabs .espaco{flex:1}
.crm-envio{font-size:12px;color:var(--txt3);padding-bottom:9px}
.crm-envio.ok{color:var(--ok)}
.crm-guia{position:relative;background:color-mix(in srgb,var(--info) 9%,var(--bg2));border:1px solid color-mix(in srgb,var(--info) 30%,var(--linha));border-radius:var(--raio);padding:10px 90px 10px 14px;font-size:13px;margin-bottom:12px;line-height:1.55}
.crm-guia .btn-texto{position:absolute;right:8px;top:50%;transform:translateY(-50%)}
.crm-resumo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.crm-num{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;background:var(--bg2);border:1px solid var(--linha);border-radius:10px;padding:12px 14px;cursor:pointer;font:inherit;color:inherit;box-shadow:var(--sombra)}
.crm-num:hover{border-color:color-mix(in srgb,var(--acc) 40%,var(--linha))}
.crm-num .n{grid-row:1/3;font-size:28px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.crm-num .r{font-weight:650;font-size:13.5px}
.crm-num .s{font-size:12px;color:var(--txt3)}
.crm-num.risco .n{color:var(--risco)} .crm-num.ok .n{color:var(--ok)}
@media(max-width:760px){.crm-resumo{grid-template-columns:1fr}}
.crm-sec-cab{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.crm-sec-cab h2{margin-right:auto}
.crm-ord{font-size:12px;color:var(--txt3)} .crm-ord select{margin-left:4px}
.crm-filtros{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 12px}
.crm-filtros .rot{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-right:2px}
.crm-rel{font-size:12px;color:var(--txt2);margin-left:auto;display:flex;gap:5px;align-items:center}
.crm-card{background:var(--bg2);border:1px solid var(--linha);border-radius:10px;margin-bottom:10px;box-shadow:var(--sombra)}
.crm-card:focus-within{border-color:color-mix(in srgb,var(--acc) 45%,var(--linha))}
.crm-card>header.cc-cab{display:flex;flex-direction:row;gap:12px;align-items:center;padding:11px 14px 8px;background:none;border:0;position:static;text-align:left}
.cc-n{width:24px;height:24px;border-radius:50%;background:var(--bg3);display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--txt2);flex-shrink:0}
.cc-id{flex:1;min-width:0}
.cc-nome{background:none;border:0;padding:0;font:inherit;font-size:15px;font-weight:700;color:var(--txt);cursor:pointer;text-align:left}
.cc-nome:hover{color:var(--acc);text-decoration:underline}
.cc-meta{font-size:12px;color:var(--txt3);margin-top:1px}
.cc-meta .alerta,.cc-para .alerta{color:var(--alerta);font-weight:600}
.cc-kpi{display:flex;flex-direction:column;align-items:flex-end;gap:1px;min-width:64px}
.cc-kpi .rot{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.cc-kpi b{font-size:14px;font-variant-numeric:tabular-nums}
.cc-kpi .tag small{opacity:.7;font-weight:500}
.cc-assuntos{list-style:none;margin:0;padding:2px 14px 6px 50px}
.cc-assuntos li{position:relative;padding:6px 30px 6px 0;border-top:1px dashed var(--linha)}
.cc-assuntos li:first-child{border-top:0}
.cc-assuntos label{display:flex;gap:7px;align-items:baseline;cursor:pointer}
.cc-assuntos input{flex-shrink:0;transform:translateY(1px)}
.cc-tit{font-size:13.5px;font-weight:560}
.cc-pq{font-size:12px;color:var(--txt3);margin:2px 0 0 22px}
.cc-menu{position:absolute;right:0;top:4px}
.cc-menu summary{list-style:none;cursor:pointer;padding:2px 7px;border-radius:6px;color:var(--txt2);font-weight:700;user-select:none}
.cc-menu summary::-webkit-details-marker{display:none}
.cc-menu summary:hover{background:var(--bg3)}
.cc-menu[open]>div{position:absolute;right:0;top:calc(100% + 4px);z-index:20;background:var(--bg2);border:1px solid var(--linha);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.14);padding:4px;min-width:220px;display:flex;flex-direction:column}
.cc-menu[open]>div button{background:none;border:0;text-align:left;padding:7px 10px;border-radius:6px;font:inherit;font-size:13px;color:var(--txt);cursor:pointer}
.cc-menu[open]>div button:hover{background:var(--bg3)}
.cc-menu button.perigo{color:var(--risco)}
.crm-card>footer.cc-acoes{display:flex;flex-direction:row;gap:8px;align-items:center;flex-wrap:wrap;padding:9px 14px 11px 50px;border-top:1px solid var(--linha);background:color-mix(in srgb,var(--bg3) 45%,var(--bg2));border-radius:0 0 10px 10px}
.cc-acoes .btn{margin-top:0}
.cc-cont{font-weight:500;opacity:.85;font-size:11.5px;background:rgba(255,255,255,.18);border-radius:10px;padding:1px 7px}
.cc-para{margin-left:auto;font-size:12px;color:var(--txt3)}
.crm-mais{width:100%;margin:4px 0 16px}
#crm-agenda h2{display:flex;align-items:baseline;gap:8px}
#crm-agenda h2 .btn-texto{margin-left:auto}
.ag-grupo h3{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt2);margin:10px 0 6px}
.ag-grupo.risco h3{color:var(--risco)}
.ag-item{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--info);border-radius:var(--raio);padding:8px 10px;margin-bottom:6px}
.ag-grupo.risco .ag-item{border-left-color:var(--risco)} .ag-grupo.hoje .ag-item{border-left-color:var(--alerta)}
.ag-cab{display:flex;gap:8px;align-items:baseline;font-size:12.5px}
.ag-data{font-weight:700;font-variant-numeric:tabular-nums}
.ag-tit{font-size:13px;margin:3px 0 6px}
.ag-acoes{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ag-acoes .cc-menu{position:relative;top:0}
.ag-acoes .cc-menu summary{font-weight:600;font-size:12.5px;color:var(--acc);padding:4px 8px}
.ag-acoes input{flex:1 1 100%;font-size:12.5px}
.crm-vazio{border:1px dashed var(--linha);border-radius:var(--raio);padding:12px;font-size:12.5px;color:var(--txt3);text-align:center;margin-bottom:10px}
button.msg-linha{width:100%;background:none;border:0;border-bottom:1px solid var(--linha);font:inherit;color:inherit;text-align:left}
/* painel "Estilo" do mapa */
.mapa-ctl-base{align-items:stretch}
.mapa-ctl-base [data-mapa-estilo]{border-left:1px solid var(--linha)}
.mapa-estilo{position:absolute;right:0;top:calc(100% + 6px);width:240px;background:var(--bg2);border-radius:10px;box-shadow:0 8px 28px rgba(0,0,0,.2);padding:10px 12px;font:12.5px/1.4 system-ui,sans-serif;color:var(--txt)}
.mapa-estilo .me-grupo{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}
.mapa-estilo .me-grupo:has([type=radio]){flex-direction:row;flex-wrap:wrap;gap:4px 10px}
.mapa-estilo .me-grupo:has([type=radio]) .rot{flex-basis:100%}
.mapa-estilo .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.mapa-estilo label{display:flex;gap:6px;align-items:center;cursor:pointer}
.mapa-estilo input[type=range]{width:100%}
.mapa-estilo small{color:var(--txt3)}
.leaflet-top.leaflet-right .leaflet-control:has(.mapa-ctl-base){position:relative}
/* ficha: cadastro recolhível */
.cadastro{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);margin-bottom:12px}
.cadastro>summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 12px;cursor:pointer;list-style:none;font-size:12.5px}
.cadastro>summary::-webkit-details-marker{display:none}
.cadastro>summary:hover{background:var(--bg3);border-radius:var(--raio)}
.cadastro>summary .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.cad-resumo{color:var(--txt2);min-width:0}
.cad-abrir{margin-left:auto;width:8px;height:8px;border-right:2px solid var(--txt3);border-bottom:2px solid var(--txt3);transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.cadastro[open] .cad-abrir{transform:rotate(-135deg) translateY(-2px)}
.cadastro dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;margin:0;padding:4px 14px 12px;border-top:1px solid var(--linha);font-size:13px}
.cadastro dt{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;padding-top:3px}
.cadastro dd{margin:0;min-width:0;overflow-wrap:anywhere}
.cadastro dd small{display:block;color:var(--txt3);font-size:11.5px;margin-top:2px}
.cadastro dd select{max-width:100%;padding:3px 6px}
.cadastro dd .btn-texto{padding:2px 6px;margin-left:4px}
@media (max-width:520px){.cadastro dl{grid-template-columns:1fr}.cadastro dt{padding-top:6px}}
.gm-rem-sep{fill-opacity:.28;stroke:#7b6bb0;stroke-width:1;stroke-dasharray:2 2}
.gm-nota-rem{fill:#7b6bb0;font-size:10px}
/* gráfico mensal: controles segmentados, legenda discreta */
.gm-menu{align-items:center;gap:8px 12px}
.gm-menu .seg{display:inline-flex;gap:0;border:1px solid var(--linha);border-radius:8px;overflow:hidden;background:var(--bg2)}
.gm-menu .seg .chip{border:0;border-radius:0;margin:0;background:none;padding:4px 10px;font-size:12px;color:var(--txt2)}
.gm-menu .seg .chip+.chip{border-left:1px solid var(--linha)}
.gm-menu .seg .chip[aria-pressed="true"]{background:color-mix(in srgb,var(--acc) 13%,var(--bg2));color:var(--acc);font-weight:620}
.gm-menu>.chip{font-size:12px;padding:4px 10px;border-radius:8px}
.gm-menu>.chip[aria-pressed="true"]{background:color-mix(in srgb,#7b6bb0 12%,var(--bg2));color:#5d4f95;border-color:color-mix(in srgb,#7b6bb0 40%,var(--linha))}
.gm-svg{width:100%;height:auto}
.gm-eixo{font:10.5px ui-sans-serif,system-ui,sans-serif}
.gm-eixo.gm-ano{font-size:11px;font-weight:600;fill:var(--txt2)}
.gm-leg{gap:4px 16px;font-size:11.5px;color:var(--txt2);margin-top:4px;align-items:center}
.gm-leg span{display:inline-flex;align-items:center;gap:0}
.gm-leg small{color:var(--txt3);margin-left:5px;font-size:11px}
.gm-sw{width:10px;height:10px;border-radius:2px;margin-right:6px}
.gm-sw-tracejada{background:color-mix(in srgb,#7b6bb0 25%,transparent)!important;border:1px dashed #7b6bb0}
.gm-sw-l{width:14px;height:2px;border-radius:1px}
.gm-sw-s{width:14px}
.gm-alerta{color:var(--alerta)!important}

/* ---------- Metas & vendas ---------- */
.cm-periodo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.cm-periodo .seg{display:inline-flex;border:1px solid var(--linha);border-radius:8px;overflow:hidden;background:var(--bg2)}
.cm-periodo .seg .chip{border:0;border-radius:0;margin:0;background:none;padding:5px 11px;font-size:12.5px;color:var(--txt2)}
.cm-periodo .seg .chip+.chip{border-left:1px solid var(--linha)}
.cm-periodo .seg .chip[aria-pressed="true"]{background:color-mix(in srgb,var(--acc) 13%,var(--bg2));color:var(--acc);font-weight:620}
.cm-per-rot{font-size:13px;color:var(--txt2)}
.cm-hero{background:var(--bg2);border:1px solid var(--linha);border-radius:12px;padding:16px 18px;box-shadow:var(--sombra);margin-bottom:18px}
.cm-hero-num .rot,.cm-hero-sec .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);font-weight:650}
.cm-hero-num>b{font-size:32px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.cm-hero-num small{display:block;color:var(--txt2);font-size:13px;margin-top:2px}
.cm-barra{position:relative;height:12px;border-radius:6px;background:var(--bg3);margin:12px 0 6px;overflow:visible}
.cm-barra-real{position:absolute;left:0;top:0;bottom:0;border-radius:6px;background:var(--acc)}
.cm-barra-real.ok{background:var(--ok)}
.cm-barra-proj{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--acc) 35%,transparent) 0 4px,transparent 4px 8px);border-radius:0 6px 6px 0}
.cm-barra-esp{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--txt);border-radius:1px}
.cm-hero-leg{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--txt2)}
.cm-sw{display:inline-block;width:12px;height:8px;border-radius:2px;margin-right:5px;vertical-align:0}
.cm-sw.real{background:var(--acc)} .cm-sw.proj{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--acc) 45%,transparent) 0 3px,transparent 3px 6px)} .cm-sw.esp{width:2px;background:var(--txt)}
.cm-hero-frase{font-size:14px;margin:10px 0 0}
.cm-hero-sec{display:flex;gap:28px;flex-wrap:wrap;border-top:1px solid var(--linha);margin-top:14px;padding-top:12px}
.cm-hero-sec b{font-size:16px;font-variant-numeric:tabular-nums} .cm-hero-sec b.ok{color:var(--ok)}
.cm-hero-sec small{display:block;color:var(--txt3);font-size:11.5px}
.cm-vend{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px;margin-bottom:18px}
.cm-vcard{background:var(--bg2);border:1px solid var(--linha);border-radius:10px;padding:12px 14px;box-shadow:var(--sombra);display:flex;flex-direction:column}
.cm-vcard.sem{border-style:dashed;box-shadow:none}
.cm-vcard>header{display:flex;flex-direction:row;align-items:baseline;gap:8px;padding:0;background:none;border:0;position:static}
.cm-vcard>header b{font-size:15px}
.cm-vcontas{margin-left:auto;font-size:12px;color:var(--txt3)}
.cm-vnum{margin-top:6px} .cm-vnum b{font-size:22px;font-variant-numeric:tabular-nums} .cm-vnum span{display:block;font-size:12px;color:var(--txt2)}
.cm-vcard dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:8px 0 0;font-size:12.5px}
.cm-vcard dt{color:var(--txt3)} .cm-vcard dd{margin:0;text-align:right;font-variant-numeric:tabular-nums} .cm-vcard dd small{color:var(--txt3)}
.cm-vcard>footer{display:flex;flex-direction:row;gap:4px;margin-top:auto;padding-top:8px;border-top:1px solid var(--linha);background:none;position:static}
.cm-canais .cm-barra{margin:4px 0 2px;height:8px}
.cm-part{height:8px;border-radius:4px;background:var(--bg3);margin:4px 0 2px} .cm-part i{display:block;height:100%;border-radius:4px;background:color-mix(in srgb,var(--acc) 55%,var(--bg3))}
.cm-cart{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;align-items:start}
@media(max-width:900px){.cm-cart{grid-template-columns:1fr}}
.cm-vlinha{display:flex;width:100%;align-items:center;gap:8px;background:none;border:0;border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;color:var(--txt);cursor:pointer;text-align:left}
.cm-vlinha span{margin-left:auto;color:var(--txt3);font-variant-numeric:tabular-nums}
.cm-vlinha:hover{background:var(--bg3)} .cm-vlinha.on{background:color-mix(in srgb,var(--acc) 12%,var(--bg2));color:var(--acc)}
.cm-novo-v{margin-top:8px} .cm-novo-v>summary{list-style:none;cursor:pointer} .cm-novo-v>summary::-webkit-details-marker{display:none}
.cm-form{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.cm-form label{display:flex;flex-direction:column;gap:3px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);font-weight:650}
.cm-form label small{text-transform:none;letter-spacing:0;font-weight:400}
.cm-form input,.cm-form select{font-size:13px;text-transform:none;letter-spacing:0;font-weight:400;color:var(--txt)}
.cm-form-linha{flex-direction:row;flex-wrap:wrap;align-items:flex-end}
.cm-form label.cm-chk,.cm-chk{flex-direction:row;align-items:center;gap:5px;text-transform:none;letter-spacing:0;font-weight:500;font-size:12.5px;color:var(--txt2)}
.cm-cart-barra{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px;font-size:13px}
.cm-cart-barra .espaco,.cm-metas-cab .espaco,.cm-regra-acoes .espaco,.cmp-acoes .espaco{flex:1}
.cm-metas-cab{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.cm-metas-cab .seg{display:inline-flex;border:1px solid var(--linha);border-radius:8px;overflow:hidden}
.cm-metas-cab .seg .chip{border:0;border-radius:0;margin:0;background:none;padding:5px 11px}
.cm-metas-cab .seg .chip[aria-pressed="true"]{background:color-mix(in srgb,var(--acc) 13%,var(--bg2));color:var(--acc);font-weight:620}
.rolar-x{overflow-x:auto}
.cm-grade-metas td{padding:3px 4px} .cm-grade-metas td:first-child{white-space:nowrap;font-weight:560}
.cm-meta-in{width:84px;text-align:right;font-variant-numeric:tabular-nums;padding:4px 6px;border:1px solid transparent;border-radius:5px;background:var(--bg3)}
.cm-meta-in:focus{border-color:var(--acc);background:var(--bg2);outline:none}
.cm-meta-in.mudou{background:color-mix(in srgb,var(--alerta) 14%,var(--bg2))}
.cm-dist{width:90px;padding:4px 6px}
.cm-sec td{background:var(--bg3);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);font-weight:700}
.cm-tot{font-weight:650}
.cm-com-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:start}
@media(max-width:1100px){.cm-com-grade{grid-template-columns:1fr}}
.cm-regra{background:var(--bg2);border:1px solid var(--linha);border-radius:10px;padding:10px 12px;margin-bottom:10px}
.cm-faixas{border-collapse:collapse;margin:4px 0} .cm-faixas th{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);text-align:left;padding:2px 8px 4px 0}
.cm-faixas td{padding:2px 8px 2px 0} .cm-faixas input{width:80px;text-align:right}
.cm-regra-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.btn-texto.perigo{color:var(--risco)}
.cm-camps{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.cm-camp{background:var(--bg2);border:1px solid var(--linha);border-radius:10px;padding:12px 14px;cursor:pointer;box-shadow:var(--sombra)}
.cm-camp:hover{border-color:color-mix(in srgb,var(--acc) 40%,var(--linha))}
.cm-camp>header{display:flex;flex-direction:row;gap:8px;align-items:baseline;justify-content:space-between;padding:0;background:none;border:0;position:static}
.cm-camp-meta{font-size:12.5px;color:var(--txt2);margin-top:3px}
.cm-camp p{font-size:12.5px;color:var(--txt3);margin:6px 0 0}
.cm-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.cm-chip{display:inline-flex;align-items:center;gap:4px;background:var(--bg3);border-radius:14px;padding:3px 4px 3px 10px;font-size:12.5px}
.cm-chip button{border:0;background:none;cursor:pointer;color:var(--txt3);font-size:14px;line-height:1;padding:0 4px}
.cm-camp-lista{max-height:300px;overflow:auto}
.cm-camp-res{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--linha)}
.cm-acima{color:var(--risco);font-weight:650}
.cm-camp-ed h3{margin:14px 0 4px;font-size:14px} .cm-camp-ed h3 small{color:var(--txt3);font-weight:500}
/* grade de metas */
.cm-grade-metas th[scope=row]{text-align:left;white-space:nowrap;font-weight:560;padding-right:10px}
.cm-grade-metas thead th.passado{color:var(--txt3)}
.cm-cel{padding:3px 3px!important;vertical-align:top}
.cm-cel.passado{background:color-mix(in srgb,var(--bg3) 55%,transparent);text-align:right;font-size:11.5px;line-height:1.25;min-width:76px}
.cm-cel.passado b{display:block;font-size:12.5px} .cm-cel.passado b.ok{color:var(--ok)} .cm-cel.passado b.baixo{color:var(--risco)}
.cm-cel.passado small,.cm-cel small{display:block;color:var(--txt3);font-size:10.5px}
.cm-cel.passado span{color:var(--txt2)}
.cm-meta-in::placeholder{color:var(--txt3);opacity:.7}
.cm-real-at{text-align:right}
.cm-geral th,.cm-geral .cm-meta-in{font-weight:700}
.cm-calc th{font-weight:500;color:var(--txt2);font-style:italic}
.cm-calc td{font-size:12px;color:var(--txt2)}
.cm-calc td.cm-dif,.cm-dif{color:var(--alerta);font-weight:650} .cm-calc td.cm-ok{color:var(--ok)}
.cm-status{min-width:150px;white-space:nowrap} .cm-status small{display:block;color:var(--txt3);font-size:11px}
.cm-selo{display:inline-block;border-radius:10px;padding:1px 8px;font-size:11.5px;font-weight:650}
.cm-selo.ok{background:color-mix(in srgb,var(--ok) 14%,var(--bg2));color:var(--ok)}
.cm-selo.limite{background:color-mix(in srgb,var(--alerta) 16%,var(--bg2));color:var(--alerta)}
.cm-selo.risco{background:color-mix(in srgb,var(--risco) 14%,var(--bg2));color:var(--risco)}
.cm-resumo-metas{margin:4px 0 10px}
.cm-rm{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:16px;background:var(--bg2);border:1px solid var(--linha);border-left:5px solid var(--txt3);border-radius:10px;padding:14px 16px;box-shadow:var(--sombra)}
.cm-rm.ok{border-left-color:var(--ok)} .cm-rm.limite{border-left-color:var(--alerta)} .cm-rm.risco{border-left-color:var(--risco)}
.cm-rm .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);font-weight:650}
.cm-rm b{font-size:18px;font-variant-numeric:tabular-nums} .cm-rm small{display:block;color:var(--txt2);font-size:11.5px;margin-top:2px}
.cm-rm-selo b{font-size:22px} .cm-rm.ok .cm-rm-selo b{color:var(--ok)} .cm-rm.limite .cm-rm-selo b{color:var(--alerta)} .cm-rm.risco .cm-rm-selo b{color:var(--risco)}
@media(max-width:1000px){.cm-rm{grid-template-columns:1fr 1fr}}
.cm-rm-vazio{background:var(--bg2);border:1px dashed var(--linha);border-radius:10px;padding:12px 14px;font-size:13px}
.cm-grade-metas th[scope=row]{text-transform:none;letter-spacing:0;font-size:13px;color:var(--txt);background:none}

/* ---------- Campos de formulário: base única do app ----------
   :where() mantém a especificidade baixa (regras de cada tela continuam valendo);
   as propriedades da seta do select levam !important porque várias telas usam o
   atalho `background:` (que apagaria a seta). */
:root{--campo-borda:light-dark(#d8d2c8,#3d382e); --campo-borda-hover:light-dark(#bdb5a8,#544d40)}
:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]), select, textarea){
  background-color:var(--bg2);border:1px solid var(--campo-borda);border-radius:8px;padding:6px 10px;min-height:32px;
  font-size:13px;line-height:1.35;color:var(--txt);transition:border-color .12s,box-shadow .12s,background-color .12s}
:where(input:not([type=checkbox]):not([type=radio]):not([type=range]), select, textarea):hover{border-color:var(--campo-borda-hover)}
input:not([type=checkbox]):not([type=radio]):not([type=range]):focus-visible, select:focus-visible, textarea:focus-visible,
input:not([type=checkbox]):not([type=radio]):not([type=range]):focus, select:focus, textarea:focus{
  outline:none;border-color:var(--acc)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 18%,transparent)}
::placeholder{color:var(--txt3);opacity:1}
:where(textarea){min-height:64px;resize:vertical}
select:not([multiple]){appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:28px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%23918a80' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 9px center!important;background-size:12px!important}
input[type=checkbox],input[type=radio]{accent-color:var(--acc);width:15px;height:15px;cursor:pointer;vertical-align:-2px}
input[type=range]{accent-color:var(--acc)}
input[type=search]::-webkit-search-cancel-button{cursor:pointer}
input[type=date],input[type=month]{font-variant-numeric:tabular-nums}
input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}
input[type=file]{font-size:12.5px}
input[type=file]::file-selector-button{margin-right:10px;border:1px solid var(--campo-borda);border-radius:8px;background:var(--bg2);padding:6px 12px;font:inherit;font-weight:560;cursor:pointer;color:var(--txt)}
input[type=file]::file-selector-button:hover{border-color:var(--acc);color:var(--acc)}
/* rótulo acima do campo, padrão dos formulários */
.cm-form label{gap:5px}
.cm-form input:not([type=checkbox]),.cm-form select{min-width:120px}

/* ---------- Campanha: seletor de livros ---------- */
.cp-livros{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;margin:6px 0 4px}
@media(max-width:800px){.cp-livros{grid-template-columns:1fr}}
.cp-busca input[type=search]{width:100%;min-height:36px;padding-left:34px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Ccircle cx='6' cy='6' r='4.3' fill='none' stroke='%23918a80' stroke-width='1.5'/%3E%3Cpath d='m9.3 9.3 3 3' stroke='%23918a80' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:11px center}
.cp-grupos{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:9px 0}
.cp-grupos .rot,.cp-esc-cab .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);font-weight:650;margin-right:2px}
.cp-grupo{display:inline-flex;align-items:center;gap:6px;border:1px dashed var(--campo-borda);background:var(--bg2);border-radius:16px;padding:4px 10px;font:inherit;font-size:12.5px;color:var(--txt);cursor:pointer}
.cp-grupo span{font-size:11px;color:var(--txt3);font-variant-numeric:tabular-nums}
.cp-grupo:hover{border-style:solid;border-color:var(--acc);color:var(--acc)}
.cp-res{border:1px solid var(--linha);border-radius:10px;max-height:300px;overflow:auto;background:var(--bg2)}
.cp-livro{display:grid;grid-template-columns:minmax(0,1fr) auto 26px;gap:10px;align-items:center;width:100%;border:0;border-bottom:1px solid var(--linha);background:none;padding:8px 10px;font:inherit;color:var(--txt);text-align:left;cursor:pointer}
.cp-livro:last-child{border-bottom:0}
.cp-livro:hover{background:var(--bg3)}
.cp-l-tit{font-size:13px;font-weight:560;min-width:0} .cp-l-tit small{display:block;font-weight:400;font-size:11.5px;color:var(--txt3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-l-num{font-size:12.5px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap} .cp-l-num small{display:block;color:var(--txt3);font-size:11px}
.cp-l-marca{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--campo-borda);color:var(--txt2);font-weight:700}
.cp-livro.on{background:color-mix(in srgb,var(--acc) 7%,var(--bg2))}
.cp-livro.on .cp-l-marca{background:var(--acc);border-color:var(--acc);color:#fff}
.cp-vazio{padding:14px;text-align:center;color:var(--txt3);font-size:12.5px}
.cp-escolhidos{border:1px solid var(--linha);border-radius:10px;background:var(--bg2);display:flex;flex-direction:column;min-height:0}
.cp-esc-cab{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--linha)}
.cp-esc-cab [data-cp-ntit2]{font-weight:700;font-variant-numeric:tabular-nums}
.cp-esc-cab .btn-texto{margin-left:auto}
.cp-escolhidos ul{list-style:none;margin:0;padding:0;max-height:352px;overflow:auto}
.cp-escolhidos li{display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--linha);font-size:12.5px}
.cp-escolhidos li:last-child{border-bottom:0}
.cp-escolhidos li span{flex:1;min-width:0} .cp-escolhidos li small{display:block;color:var(--txt3);font-size:11px}
.cp-escolhidos li button{border:0;background:none;color:var(--txt3);font-size:16px;cursor:pointer;border-radius:50%;width:24px;height:24px}
.cp-escolhidos li button:hover{background:var(--bg3);color:var(--risco)}
.cp-escolhidos li.vazio{color:var(--txt3);justify-content:center;padding:18px}
.cm-camp-lista{border-radius:10px}
.cm-camp-lista tr:has(input:checked){background:color-mix(in srgb,var(--acc) 6%,transparent)}
/* formulário da campanha: grade */
.cp-topo{display:grid;grid-template-columns:2fr 1fr 1fr .8fr 1fr;gap:12px 14px;margin-bottom:8px}
.cp-f{display:flex;flex-direction:column;gap:5px;min-width:0}
.cp-f>span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.cp-f>span:first-child small{text-transform:none;letter-spacing:0;font-weight:400;margin-left:4px}
.cp-f input,.cp-f textarea{width:100%}
.cp-descr{grid-column:1/-1}
@media(max-width:820px){.cp-topo{grid-template-columns:1fr 1fr}.cp-nome{grid-column:1/-1}}
.campo-afixo{position:relative;display:flex;align-items:center}
.campo-afixo input{width:100%;padding-right:30px;text-align:right;font-variant-numeric:tabular-nums}
.campo-afixo i{position:absolute;right:10px;font-style:normal;color:var(--txt3);font-size:12.5px;pointer-events:none}
.campo-afixo.pre input{padding-right:10px;padding-left:32px}
.campo-afixo.pre i{right:auto;left:10px}
.cp-cli-linha{cursor:pointer}
.cp-cli-linha:hover td{background:var(--bg3)}
.cp-res-acoes{white-space:nowrap;text-align:right}
.cp-x{border:0;background:none;color:var(--txt3);font-size:15px;cursor:pointer;border-radius:12px;min-width:24px;height:24px;padding:0 6px}
.cp-x:hover{background:var(--bg3);color:var(--risco)}
.cp-x.confirmar{background:color-mix(in srgb,var(--risco) 12%,var(--bg2));color:var(--risco);font-size:12px;font-weight:650}
.cm-cel small.cm-pont{color:var(--info);font-size:10.5px}
/* ordem: voltar ao padrão */
.ord-reset{border:0;background:color-mix(in srgb,var(--acc) 12%,var(--bg2));color:var(--acc);border-radius:10px;font-size:11px;line-height:1;padding:2px 5px;margin-left:5px;cursor:pointer;vertical-align:1px;text-transform:none}
.ord-reset:hover{background:var(--acc);color:#fff}
/* seletor de ano */
.cm-ano{display:inline-flex;align-items:center;border:1px solid var(--campo-borda);border-radius:10px;background:var(--bg2);overflow:hidden}
.cm-ano b{min-width:62px;text-align:center;font-size:15px;font-variant-numeric:tabular-nums}
.cm-ano-seta{border:0;background:none;width:32px;height:32px;font-size:18px;color:var(--txt2);cursor:pointer}
.cm-ano-seta:hover{background:var(--bg3);color:var(--acc)}
.cm-carregando-ano{position:relative}
.cm-carregando-ano>*:not(.cm-carr-aviso){opacity:.35;pointer-events:none;transition:opacity .15s}
.cm-carr-aviso{position:absolute;left:50%;top:70px;transform:translateX(-50%);z-index:5;background:var(--bg2);border:1px solid var(--linha);border-radius:16px;padding:6px 14px;font-size:12.5px;box-shadow:var(--sombra)}
/* tom de incentivo */
.cm-rm.virar{border-left-color:var(--acc)} .cm-rm.virar .cm-rm-selo b{color:var(--acc)}
.cm-selo.virar{background:color-mix(in srgb,var(--acc) 12%,var(--bg2));color:var(--acc)}
.cm-rm-barra{height:6px;border-radius:3px;background:var(--bg3);margin:5px 0 2px;overflow:hidden} .cm-rm-barra i{display:block;height:100%;background:var(--ok);border-radius:3px}
.cm-rm-un{display:inline!important;font-size:12px!important;color:var(--txt3)!important}
.cm-rm{grid-template-columns:1.5fr 1.2fr 1.2fr 1fr!important}
.cm-info{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--bg3);color:var(--txt2);font-size:10px;font-weight:700;margin-left:3px;cursor:help}
solis-loader:defined ~ main .carregando{visibility:hidden}
/* caixinha de copiar (id, chave) */
.copiavel{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--linha);background:var(--bg3);border-radius:7px;padding:2px 7px;cursor:pointer;font:inherit;color:var(--txt2);max-width:100%}
.copiavel:hover{border-color:var(--acc);color:var(--acc)}
.copiavel code{font:11px var(--mono);word-break:break-all;color:inherit}
.copiavel .cp-rot{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.copiavel .cp-ico{font-size:11px;opacity:.6}
.copiavel.copiado{border-color:var(--ok);color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--bg3))}
.nf-ids{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.cad-tipo{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.cad-tipo>select{max-width:280px}
.cad-tipo2{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.cad-tipo2 .rot{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-right:2px}
.cad-tipo2 .cp-grupo{padding:2px 9px;font-size:12px}
.cad-tipo2 .cp-grupo.on{border-style:solid;border-color:var(--acc);background:color-mix(in srgb,var(--acc) 12%,var(--bg2));color:var(--acc);font-weight:600}
.cad-canal{margin-top:4px}
.cad-canal>summary{list-style:none;cursor:pointer;font-size:12px} .cad-canal>summary::-webkit-details-marker{display:none}
.cad-canal select{margin-top:4px;max-width:260px}
.cad-obs textarea{width:100%;min-height:52px;font-size:13px}
.cad-obs-pe{display:flex;align-items:center;gap:8px;margin-top:2px}
.cad-obs-pe small{color:var(--txt3)}

/* ficha de um lead frio (livraria do universo público) */
.ficha-dados{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 16px;
  background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:12px 14px;font-size:13px;margin:10px 0}
.ficha-dados .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-bottom:2px}
.ficha-dados a{color:var(--link,#3c6e94)}
/* fila de leads frios: anotação e cadência */
.lead-form{display:flex;flex-direction:column;gap:8px;margin:14px 0 2px}
.lead-form .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.lead-form textarea{width:100%;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:8px 10px;font:inherit;font-size:13px;color:var(--txt);resize:vertical}
.lead-form textarea:focus,.lead-form input:focus{outline:2px solid var(--acc);outline-offset:-1px}
.lead-linha{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.lead-linha input[type=date]{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:5px 8px;font:inherit;font-size:12.5px;color:var(--txt)}
.lead-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}

/* tela de entrada: o app inteiro fica atrás do login */
body.sem-sessao header{display:none}
/* A porta da casa: a marca primeiro, um caminho só à vista e o resto em voz
   baixa. O botão do Google segue a forma que as pessoas já reconhecem — fundo
   claro, o "G" colorido, texto escuro —, e não a cor da nossa marca. */
/* o main já tem altura e respiro: 100vh aqui dentro sobraria e criaria rolagem */
.entrar-tela{min-height:calc(100dvh - var(--cab, 0px) - 34px);display:grid;place-items:center;padding:16px 8px}
.entrar{width:min(400px,100%);padding:32px 30px 26px;background:var(--bg2);
  border:1px solid var(--linha);border-radius:16px;box-shadow:var(--sombra);text-align:center}
.entrar-marca{display:block;height:52px;width:auto;margin:0 auto 18px}
.entrar h1{font-size:19px;margin:0 0 6px;letter-spacing:-.01em}
.entrar p{color:var(--txt2);font-size:13.5px;line-height:1.55;margin:0 0 14px}
.entrar-sub{max-width:30ch;margin-inline:auto}
.entrar-acoes{display:flex;flex-direction:column;align-items:center;gap:10px;margin:22px 0 18px}
.entrar-google{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;
  min-height:44px;padding:0 20px;border-radius:99px;text-decoration:none;
  background:light-dark(#fff,#1f1d17);border:1px solid light-dark(#dadce0,#3d382e);
  color:light-dark(#1f1f1f,#ece7dc);font-size:14px;font-weight:600;
  transition:background-color .15s,box-shadow .15s,border-color .15s}
.entrar-google:hover{background:light-dark(#f7f8f8,#26231b);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.entrar-google:active{transform:scale(.995)}
.entrar-google:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.entrar-google .g-logo{flex:none}
.entrar-outra{font-size:13px;color:var(--txt2);text-decoration:none;padding:6px 12px;border-radius:99px}
.entrar-outra:hover{background:var(--bg3);color:var(--txt)}
.entrar .entrar-erro{color:var(--risco);font-weight:600}
.entrar .entrar-conta{font-size:12.5px;color:var(--txt3)}
.entrar-pe{margin:0;font-size:11.5px;color:var(--txt3);line-height:1.5;max-width:34ch;margin-inline:auto}
/* conta aberta: iniciais no cabeçalho, com trocar e sair */
.conta-menu{position:relative;margin-left:10px}
.conta-menu summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;
  padding:3px 8px 3px 3px;border:1px solid var(--linha);border-radius:999px;background:var(--bg2)}
.conta-menu summary::-webkit-details-marker{display:none}
.conta-menu summary:hover{background:var(--bg3)}
.conta-ini{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;
  background:var(--acc);color:#fff;font-size:11px;font-weight:700}
.conta-nome{font-size:12px;color:var(--txt2)}
/* O cabeçalho quebra em telas estreitas, então o menu pode cair em qualquer
   ponto da linha: ele abre para a direita por padrão e, se não couber, o
   próprio JS vira o lado (o corpo não rola na horizontal — o que passa da
   janela some cortado). */
.conta-pop{position:absolute;left:0;right:auto;top:calc(100% + 6px);z-index:60;min-width:230px;
  max-width:min(300px,calc(100vw - 24px));
  background:var(--bg);border:1px solid var(--linha);border-radius:var(--raio);
  box-shadow:0 8px 24px rgba(0,0,0,.12);padding:6px}
.conta-quem small{overflow-wrap:anywhere}          /* e-mail longo não estica o menu */
.conta-quem{padding:8px 10px 10px;border-bottom:1px solid var(--linha);margin-bottom:4px}
.conta-quem b{display:block;font-size:13px}
.conta-quem small{display:block;color:var(--txt3);font-size:11.5px;margin-bottom:6px}
.conta-pop a{display:block;padding:7px 10px;font-size:13px;color:var(--txt);text-decoration:none;border-radius:6px}
.conta-pop a:hover{background:var(--bg3)}
.entrar-conta{background:var(--bg3);border-radius:var(--raio);padding:8px 10px;font-size:12.5px}
.entrar-acoes{display:flex;flex-direction:column;gap:8px;align-items:center}
.entrar-acoes .btn{text-decoration:none}
/* usuários e acesso */
.conta-item{display:block;width:100%;text-align:left;padding:7px 10px;font:inherit;font-size:13px;
  color:var(--txt);background:none;border:0;border-radius:6px;cursor:pointer}
.conta-item:hover{background:var(--bg3)}
.usuarios-tab td small{display:block;color:var(--txt3);font-size:11.5px}
.usuarios-tab select{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:4px 6px;font:inherit;font-size:12.5px;color:var(--txt);max-width:190px}
.usuarios-tab tr.inativo{opacity:.55}
.usuarios-tab .liga{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--txt2);white-space:nowrap}
.papeis-lista{list-style:none;margin:6px 0 0;padding:0;font-size:13px}
.papeis-lista li{padding:6px 0;border-bottom:1px solid var(--linha);color:var(--txt2)}
.papeis-lista b{color:var(--txt)}
.usuarios-tab td .tag{margin-top:3px;display:inline-block}
.usuarios-tab tr.usu-det td{background:var(--bg2);padding:12px}
.usu-alertas{display:grid;gap:6px;margin-bottom:10px}
.usu-alerta{margin:0;padding:8px 11px;border-radius:var(--raio);font-size:12.5px;line-height:1.45;color:var(--txt)}
.usu-aviso{background:color-mix(in srgb,var(--alerta) 14%,transparent);border-left:3px solid var(--alerta)}
.usu-info{background:color-mix(in srgb,var(--info) 12%,transparent);border-left:3px solid var(--info)}
.usu-aba{padding-top:10px}
.usu-filtros{margin-bottom:8px}
.usu-entradas td{font-size:12.5px;vertical-align:top}
.usu-entradas td small{display:block;color:var(--txt3);font-size:11.5px;margin-top:2px}
.usu-entradas code{font-size:11.5px;color:var(--txt2)}
.usu-cartoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.usu-cartao{border:1px solid var(--linha);border-radius:var(--raio);padding:12px 14px;background:var(--bg2)}
.usu-cartao h2{margin-top:0}
.usu-cartao h2 small{font-weight:400;color:var(--txt3);font-size:12px;margin-left:4px}
.usu-cartao form{display:grid;gap:6px}
.usu-cartao input[type=email],.usu-cartao input[type=date],.usu-cartao textarea{width:100%;box-sizing:border-box;background:var(--bg);
  border:1px solid var(--linha);border-radius:var(--raio);padding:6px 8px;font:inherit;font-size:13px;color:var(--txt)}
.usu-cartao .lead-linha{display:flex;gap:8px;flex-wrap:wrap}
.usu-cartao .lead-linha label{display:grid;gap:3px;font-size:11.5px;color:var(--txt3)}
.usu-cartao select{background:var(--bg);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 6px;font:inherit;font-size:12.5px;color:var(--txt)}
.usu-externo{border-color:color-mix(in srgb,var(--info) 45%,var(--linha))}
.usu-portoes{margin:0 0 8px;padding-left:18px;font-size:12px;color:var(--txt2);line-height:1.6}
.usu-ciente{display:flex;gap:7px;align-items:flex-start;font-size:12.5px;color:var(--txt2);margin:4px 0}
.usu-emergencia{margin-top:14px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--risco) 45%,var(--linha));border-radius:var(--raio)}
.usu-emergencia h2{margin-top:0;color:var(--risco)}
.usu-pessoa{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px}
@media (max-width:700px){.usu-pessoa{grid-template-columns:1fr}}
.usu-acoes form{display:grid;gap:6px}
.usu-acoes input,.usu-acoes textarea{width:100%;box-sizing:border-box;background:var(--bg);border:1px solid var(--linha);
  border-radius:var(--raio);padding:6px 8px;font:inherit;font-size:13px;color:var(--txt)}
.usu-mini{list-style:none;margin:4px 0 10px;padding:0;font-size:12.5px;max-height:260px;overflow:auto}
.usu-mini li{padding:5px 0;border-bottom:1px solid var(--linha)}
.usu-mini small{display:block;color:var(--txt3);font-size:11.5px;margin-top:2px}
.entrar-externo{display:block;margin-top:14px;font-size:12.5px;color:var(--txt2)}
.entrar-externo a{color:var(--acc)}
.banner-externo{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--info) 14%,var(--bg));color:var(--txt);
  font-size:12.5px;padding:6px 14px;text-align:center;border-bottom:1px solid var(--linha)}
.cm-arquivados{margin:10px 2px 0;padding:8px 10px;background:var(--bg3);border-radius:var(--raio)}
.cm-arquivados b{color:var(--txt)}
/* filtros da aba Carteiras */
.cm-cart-filtros{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 2px 4px}
.cm-cart-filtros select{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  padding:5px 8px;font:inherit;font-size:12.5px;color:var(--txt);max-width:220px}
.cm-cart-filtros select:focus{outline:2px solid var(--acc);outline-offset:-1px}
.cm-cart-filtros .espaco{flex:1}
.cm-ord{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--txt3)}
/* ponte entre o faturado da base e o que o Olist mostra */
.cm-pendente{margin:6px 0 0;padding:6px 10px;font-size:12.5px;color:var(--txt2);
  background:color-mix(in srgb, var(--alerta) 10%, transparent);border-left:3px solid var(--alerta);border-radius:4px}

/* ---------- divulgação: cortesias, formadores, ações e envios ---------- */
.dv-tipos{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.dv-tipo{display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 11px;cursor:pointer;font:inherit;color:inherit}
.dv-tipo:hover{border-color:var(--acc)}
.dv-tipo.pendente{border-style:dashed;border-color:color-mix(in srgb,var(--risco) 45%,var(--linha))}
.dv-tipo-rot{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt2);font-weight:600}
.dv-tipo b{font-size:17px;font-variant-numeric:tabular-nums}.dv-tipo small{color:var(--txt3);font-size:11.5px}
.dv-fila td{vertical-align:middle}
.dv-acoes{white-space:nowrap;text-align:right}.dv-acoes .btn{margin:0 0 0 4px;min-height:26px;padding:2px 9px;font-size:12px}
.dv-funil{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:7px 0 3px}
.dv-funil div{background:var(--bg3);border-radius:5px;padding:4px 6px;display:flex;flex-direction:column}
.dv-funil b{font-size:14px;font-variant-numeric:tabular-nums}.dv-funil small{font-size:10.5px;color:var(--txt3)}
.dv-board{grid-template-columns:repeat(3,1fr)}
@media(max-width:1100px){.dv-board{grid-template-columns:1fr}}
.dv-h2{display:flex;align-items:center;gap:8px}.dv-h2 .btn{margin:0}
.dv-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 12px;margin:6px 0}
.dv-form label{display:flex;flex-direction:column;gap:4px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);font-weight:650;min-width:0}
.dv-form label small{text-transform:none;letter-spacing:0;font-weight:400}
.dv-form label .lnk{text-transform:none;letter-spacing:0;font-weight:500;font-size:12px;align-self:flex-start;margin-left:0}
.dv-form input,.dv-form select,.dv-form textarea{width:100%;text-transform:none;letter-spacing:0;font-weight:400}
.dv-form .larga{grid-column:1/-1}
.dv-form label.cm-chk{flex-direction:row;align-items:center;text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:500;color:var(--txt2)}
.dv-dados>summary{cursor:pointer;margin:18px 0 6px;list-style:none}.dv-dados>summary::-webkit-details-marker{display:none}
.dv-dados>summary::before{content:"▸ ";color:var(--txt3)}.dv-dados[open]>summary::before{content:"▾ "}
.dv-pub{margin:6px 0 4px}.dv-pub>summary{display:inline-block;cursor:pointer;margin-bottom:6px}
.dv-linha{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:6px 0}.dv-linha input[type=search],.dv-linha input[list]{flex:1;min-width:220px}
.dv-linha .btn{margin:0}
.dv-tits{display:flex;gap:6px;flex-wrap:wrap}
.dv-chip{display:inline-flex;align-items:center;gap:2px;background:var(--bg3);border:1px solid var(--linha);border-radius:99px;padding:2px 4px 2px 10px;font-size:12.5px}
.dv-chip .btn-texto{min-height:20px;padding:0 6px}
.dv-kit table{margin-top:4px}.dv-kit td{vertical-align:middle}.dv-kit input[name=kt_livro],.dv-kit input[name=kt_desc]{width:100%;min-width:220px}
.dv-kit input.qtd{width:78px}
.dv-kit-add{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}
.dv-check{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 12px}
.dv-motivo{min-width:170px}
.dv-tipo-esc{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:12px}
.dv-tipo-op{display:grid;grid-template-columns:auto 1fr;gap:1px 8px;align-items:start;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:8px 10px;cursor:pointer}
.dv-tipo-op input{grid-row:span 2;margin-top:2px}.dv-tipo-op small{color:var(--txt3);font-size:11.5px;line-height:1.3}
.dv-tipo-op:has(input:checked){border-color:var(--acc);background:color-mix(in srgb,var(--acc) 6%,var(--bg2))}
.dv-sel-filtros select{min-width:150px}
.dv-sel-lista{max-height:calc(100vh - 240px);overflow:auto;border:1px solid var(--linha);border-radius:var(--raio)}
.dv-lote select{min-width:230px}.dv-lote .btn,.dv-lote .btn-tonal{margin:0}
.dv-nota-tipo{white-space:nowrap}.dv-nota-tipo select{min-height:26px;padding:2px 26px 2px 7px;font-size:12px}
@media(max-width:700px){.dv-funil{grid-template-columns:repeat(2,1fr)}.dv-acoes{white-space:normal}}
.dv-equipe{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:4px 0 12px}
.dv-equipe .rot{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-right:4px}
.dv-equipe .btn-tonal{min-height:26px;padding:2px 10px;font-size:12px}.dv-equipe .btn-tonal small{opacity:.7}

/* ---------- acordo do parceiro consignado ---------- */
.mapa-tab tr.linha-alerta td{background:color-mix(in srgb,var(--alerta) 8%,transparent)}
.mapa-tab td.neg,.mapa-tab td .neg,.neg{color:var(--risco)}
.ac-exc{white-space:nowrap}
.ac-exc input.qtd{width:66px;margin-right:4px}
.minikpi.ok .val{color:var(--ok)}.minikpi.risco .val{color:var(--risco)}
.cond .lnk{font-size:11px}

/* ---------- conferência do relatório do parceiro ---------- */
.conferencia .mapa-cab h1 small{font-weight:400;color:var(--txt2);font-size:16px}
.conf-barra{position:sticky;top:0;z-index:5;display:flex;gap:16px;align-items:center;flex-wrap:wrap;
  background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 14px;margin:10px 0;box-shadow:var(--sombra)}
.conf-barra .btn{margin:0}
.conf-num{display:flex;flex-direction:column;line-height:1.25}
.conf-num span{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.conf-num b{font-size:19px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.conf-num i{font-style:normal;font-size:12px;color:var(--txt2)}
.conf-num.risco b,.conf-num.risco i{color:var(--risco)} .conf-num.ok i{color:var(--ok)} .conf-num.alerta b{color:var(--alerta)}
.conf-colar{border:2px dashed var(--linha);border-radius:12px;padding:22px;text-align:center;margin:16px 0;background:var(--bg2)}
.conf-colar-tit{font-size:17px;font-weight:650}.conf-colar-tit small{display:block;font-weight:400;color:var(--txt3);font-size:12.5px;margin-top:3px}
.conf-colar textarea{width:100%;max-width:680px;margin:14px auto 0;display:block}
.conf-colar-acoes{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:12px}
.conf-colar .dica{max-width:620px;margin:10px auto 0}
.mapa-tela.arrastando-arq .conf-colar{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 6%,var(--bg2))}
.conf-lido{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--txt2);margin-bottom:12px}
.conf-lido select{min-height:26px;padding:2px 24px 2px 7px;font-size:12px}
.conf-divs{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:8px}
.conf-div{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--alerta);border-radius:var(--raio);padding:9px 11px}
.conf-div.conf-nao{border-left-color:var(--linha);opacity:.72}
.conf-div-tit{font-weight:620;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.conf-div-det{font-size:12.5px;color:var(--txt2);margin:4px 0 7px}
.conf-sn{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--txt2)}
.conf-sn .chip{padding:2px 12px}
.conf-ok{background:color-mix(in srgb,var(--ok) 10%,transparent);border:1px solid color-mix(in srgb,var(--ok) 35%,var(--linha));
  border-radius:var(--raio);padding:12px 14px;margin:10px 0;font-size:13.5px}
.conf-confere{margin:14px 0}.conf-confere>summary{cursor:pointer;color:var(--txt2);font-size:13px;margin-bottom:8px}
.conf-saidas{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.conf-lista{display:flex;flex-direction:column;gap:4px;margin-top:10px;max-height:calc(100vh - 190px);overflow:auto}
.conf-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;background:var(--bg2);border:1px solid var(--linha);
  border-radius:var(--raio);padding:7px 11px;cursor:pointer;font:inherit;color:inherit;text-align:left}
.conf-item[hidden]{display:none}
.conf-item:hover{border-color:var(--acc)}.conf-item small{color:var(--txt3);font-size:11.5px}
.conf-feito{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:color-mix(in srgb,var(--ok) 10%,transparent);
  border:1px solid color-mix(in srgb,var(--ok) 35%,var(--linha));border-radius:var(--raio);padding:12px 14px;margin:10px 0}
.conf-feito-acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-left:auto}
.conf-feito-acoes .btn{margin:0}
.pessoa-acoes{display:flex;gap:4px;align-items:center;flex-shrink:0}
.ped-card.oculto{opacity:.6;border-left-color:var(--txt3)}
.conferencia input.qtd{width:72px}
.conferencia input.qtd.corrigido{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,var(--bg2))}

/* ---------- painel do parceiro (página pública, /p/<token>) ---------- */
body.portal{background:var(--bg);padding:0}
/* `header` do app é coluna; aqui é linha — sem isto a marca fica centralizada
   e cada pedaço do cabeçalho cai numa linha. */
.pp-cab{display:flex;flex-direction:row;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 20px;
  background:var(--bg2);border-bottom:1px solid var(--linha)}
/* A marca assina a página — e é o interruptor de tema, como no app: tamanho de
   assinatura, proporção da arte (371x146) e respiro em volta. */
.pp-marca{display:inline-flex;align-items:center;padding:2px 6px 2px 0;border:0;background:none;
  cursor:pointer;border-radius:8px;-webkit-tap-highlight-color:transparent}
.pp-marca:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.pp-marca:active{transform:scale(.97)}
.pp-marca-svg{display:block;height:46px;width:auto}
/* a marca fica parada: quem viaja é a estrela, uma volta inteira a cada troca
   (mesma arte e mesmo movimento do interruptor do app) */
.pp-marca .g-star{transform:rotate(var(--giro,0deg));transform-box:view-box;transform-origin:92px 76px;
  transition:transform .95s cubic-bezier(.45,.05,.3,1)}
@media (prefers-reduced-motion:reduce){.pp-marca .g-star{transition:none}}
.pp-mod{font-size:11px;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--txt3);
  border-left:1px solid var(--linha);padding-left:14px;align-self:stretch;display:flex;align-items:center}
@media(max-width:560px){.pp-marca-svg{height:36px}.pp-mod{display:none}}
.pp-quem{margin-left:auto;text-align:right;line-height:1.35;max-width:min(46ch,60%)}
.pp-quem b{display:block;font-size:19px;letter-spacing:-.01em;line-height:1.2}
.pp-quem .pp-razao{display:block;font-size:12px;color:var(--txt2)}
.pp-quem small{display:block;color:var(--txt3);font-size:11.5px}
.pp-quem .pp-end{font-size:11px}
@media(max-width:700px){.pp-quem{margin:6px 0 0;text-align:left;max-width:100%}.pp-quem b{font-size:17px}}
.pp{max-width:1100px;margin:0 auto;padding:18px}
.pp-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:16px}
.pp-kpi{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:11px 13px;display:flex;flex-direction:column;gap:1px}
.pp-kpi span{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.pp-kpi b{font-size:21px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.pp-kpi small{color:var(--txt2);font-size:11.5px}
.pp-abas{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.pp-aba{background:var(--bg2);border:1px solid var(--linha);border-radius:99px;padding:6px 14px;cursor:pointer;font:inherit;color:var(--txt2)}
.pp-aba[aria-pressed=true]{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:620}
/* "O que está na loja" e "Notas" são telas; "Informar vendas" e "Comunicar
   fato" são coisas a FAZER — e por isso têm cara de botão, não de aba. */
.pp-aba.acao{border-color:var(--acc);color:var(--acc);font-weight:650;box-shadow:0 1px 0 color-mix(in srgb,var(--acc) 25%,transparent)}
.pp-aba.acao::before{content:"›";margin-right:6px;font-weight:700}
.pp-aba.acao:hover{background:color-mix(in srgb,var(--acc) 10%,transparent)}
.pp-aba.acao[aria-pressed=true]{background:var(--acc);color:#fff}
.pp-abas{align-items:center}
.pp-abas .pp-aba.acao:first-of-type{margin-left:6px}
.pp-aba span{margin-left:6px;background:color-mix(in srgb,var(--txt3) 25%,transparent);border-radius:99px;padding:0 6px;font-size:11px}
.pp-aba[aria-pressed=true] span{background:rgba(255,255,255,.25)}
.pp-dica{font-size:12.5px;color:var(--txt2);margin:0 0 12px;max-width:80ch}
.pp-falta{display:block;margin-top:4px;color:var(--alerta)}
.pp-quadro{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);overflow:auto}
.pp-quadro table{width:100%;border-collapse:collapse;font-size:13px}
.pp-quadro th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);padding:8px;border-bottom:1px solid var(--linha);white-space:nowrap}
.pp-quadro td{padding:7px 8px;border-bottom:1px solid color-mix(in srgb,var(--linha) 60%,transparent);vertical-align:top}
.pp-quadro td small{color:var(--txt3);font-size:11px}
.pp-quadro .n,.pp-quadro th.n{text-align:right;font-variant-numeric:tabular-nums}
.pp-quadro tfoot td{border-top:2px solid var(--linha);background:var(--bg3)}
/* sem as setinhas do campo numérico: elas aparecem ao focar/passar o mouse,
   comem uns 14px de dentro do campo e o número que a pessoa acabou de digitar
   pula para o lado. Quem digita quantidade não usa spinner. */
.pp-quadro input[type=number]{width:84px;text-align:right;appearance:textfield;-moz-appearance:textfield}
.pp-quadro input[type=number]::-webkit-outer-spin-button,
.pp-quadro input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}
.pp-lnk{background:none;border:0;color:var(--acc);cursor:pointer;font:inherit;font-size:12px;padding:0}
.pp-bug{vertical-align:-2px;margin-right:3px;opacity:.85}
.pp-link a.btn{text-decoration:none;display:inline-flex;align-items:center}
.pp-lnk:hover{text-decoration:underline}
.pp-form{display:flex;flex-direction:column;gap:10px;margin:14px 0;max-width:720px}
.pp-form label{display:flex;flex-direction:column;gap:4px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);font-weight:650}
.pp-form label small{text-transform:none;letter-spacing:0;font-weight:400}
.pp-form input,.pp-form textarea{width:100%;font-size:13px;text-transform:none;letter-spacing:0;font-weight:400;color:var(--txt)}
.pp-nova{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:14px 16px}
.pp-nova h3{margin:0}
/* Botões no espírito do Material 3: forma de pílula, altura de alvo de toque
   (40px, 48 no celular), hierarquia clara — preenchido para a ação principal,
   contornado para as secundárias — e camada de estado no hover/ativo em vez de
   trocar a cor inteira. */
.pp-btn{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--acc);color:#fff;border:0;border-radius:99px;min-height:40px;padding:0 24px;
  font:inherit;font-size:14px;font-weight:620;cursor:pointer;position:relative;overflow:hidden;
  transition:box-shadow .15s,filter .15s}
.pp-btn:hover{filter:brightness(1.06);box-shadow:0 1px 3px rgba(0,0,0,.2)}
.pp-btn:active{filter:brightness(.96);box-shadow:none}
.pp-btn:focus-visible,.pp-btn2:focus-visible,.pp-chip:focus-visible,.pp-aba:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.pp-btn[disabled]{opacity:.38;cursor:not-allowed;filter:none;box-shadow:none}
.pp-envio{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--alerta);border-radius:var(--raio);padding:10px 12px;margin-bottom:8px;font-size:13px}
.pp-envio.resolvido{border-left-color:var(--ok)} .pp-envio.recusado{border-left-color:var(--txt3)}
.pp-envio-cab{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pp-envio-cab small{color:var(--txt3);margin-left:auto}
.pp-envio-ref{color:var(--txt2);font-size:12px;margin:2px 0}
.pp-tag{font-size:10.5px;font-weight:650;border-radius:99px;padding:1px 8px;background:var(--bg3);color:var(--txt2)}
.pp-tag.novo{background:color-mix(in srgb,var(--alerta) 18%,transparent);color:var(--alerta)}
.pp-tag.resolvido{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}
.pp-anexos{margin-top:5px;font-size:12px}
.pp-resposta{margin-top:6px;padding:7px 9px;background:var(--bg3);border-radius:6px}
.pp-rodape{max-width:1100px;margin:10px auto 30px;padding:0 18px;color:var(--txt3);font-size:12px}
.pp-erro{text-align:center;padding:60px 20px}.pp-erro h2{font-size:18px}
.pp-aviso{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:var(--bg2);border:1px solid var(--risco);
  color:var(--risco);border-radius:var(--raio);padding:10px 16px;box-shadow:var(--sombra);z-index:50;max-width:90vw}
.pp-aviso.ok{border-color:var(--ok);color:var(--ok)}
@media(max-width:640px){.pp{padding:12px}.pp-quadro{font-size:12px}}

/* ---------- painel do parceiro: o acerto em primeiro lugar ----------
   O ciclo tem cor: dentro do prazo é verde, logo depois amarelo, passada a
   margem de segurança é vermelho e a página abre com o aviso. A livraria não
   precisa fazer conta para saber se está devendo o relatório. */
.pp-kpi{position:relative}
.pp-kpi .pp-sinal{font-style:normal;font-size:11px;font-weight:650;margin-top:5px;color:var(--txt2)}
.pp-kpi.pp-ok{border-color:color-mix(in srgb,var(--ok) 45%,var(--linha))}
.pp-kpi.pp-ok .pp-sinal{color:var(--ok)}
.pp-kpi.pp-atencao{border-color:color-mix(in srgb,var(--alerta) 55%,var(--linha))}
.pp-kpi.pp-atencao .pp-sinal{color:var(--alerta)}
.pp-kpi.pp-atraso{border-color:var(--risco);background:color-mix(in srgb,var(--risco) 6%,var(--bg2))}
.pp-kpi.pp-atraso .pp-sinal{color:var(--risco)}
.pp-urgente{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px;padding:13px 16px;
  border:1px solid var(--risco);border-left:4px solid var(--risco);border-radius:var(--raio);
  background:color-mix(in srgb,var(--risco) 7%,var(--bg2));font-size:13.5px;line-height:1.5}
.pp-urgente.ameno{border-color:var(--alerta);border-left-color:var(--alerta);background:color-mix(in srgb,var(--alerta) 8%,var(--bg2))}
.pp-urgente>div{flex:1;min-width:260px}
.pp-urgente .pp-btn{margin-left:auto}
.pp-urgente.ameno .pp-btn{background:var(--alerta)}

/* barra de cada aba: a explicação de um lado, o que dá para fazer do outro */
.pp-barra{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
.pp-barra .pp-dica{flex:1;min-width:280px;margin:0}
.pp-acoes{display:flex;gap:8px;flex-wrap:wrap}
.pp-btn2{display:inline-flex;align-items:center;justify-content:center;gap:7px;
  background:var(--bg2);border:1px solid var(--campo-borda,var(--linha));border-radius:99px;
  min-height:40px;padding:0 18px;font:inherit;font-size:13.5px;font-weight:600;color:var(--txt2);
  cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s}
.pp-btn2:hover{background:color-mix(in srgb,var(--acc) 8%,var(--bg2));border-color:var(--acc);color:var(--acc)}
.pp-btn2:active{background:color-mix(in srgb,var(--acc) 14%,var(--bg2))}
/* a ação mais provável do bloco ganha peso, sem virar outro botão */
.pp-btn2.forte{background:color-mix(in srgb,var(--acc) 12%,var(--bg2));border-color:transparent;color:var(--acc);font-weight:650}
.pp-btn2.forte:hover{background:color-mix(in srgb,var(--acc) 20%,var(--bg2))}
.pp-ico{flex:none;opacity:.9}
@media(max-width:600px){.pp-btn,.pp-btn2{min-height:48px}.pp-acoes{width:100%}.pp-acoes .pp-btn2{flex:1}}
.pp-lnk.forte{font-size:inherit;color:var(--txt);text-align:left;font-weight:600}
.pp-lnk.forte:hover{color:var(--acc)}

/* subir a planilha da loja */
.pp-subir{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 14px;padding:13px 15px;
  background:var(--bg2);border:1px dashed var(--campo-borda,var(--linha));border-radius:var(--raio)}
.pp-subir-tx{flex:1;min-width:260px;font-size:13px}
.pp-subir-tx small{display:block;color:var(--txt3);font-size:11.5px;margin-top:2px}
.pp-subir label.pp-btn2{margin:0}
.pp-import{flex-basis:100%;font-size:12.5px;padding:8px 10px;border-radius:6px;
  background:color-mix(in srgb,var(--ok) 10%,transparent);color:var(--ok)}
.pp-import.ruim{background:color-mix(in srgb,var(--risco) 10%,transparent);color:var(--risco)}
/* o preço que a planilha da loja calcula, quando difere do combinado */
/* divergência já respondida: fica visivelmente resolvida, sem sumir da lista —
   quem confere ainda pode mudar de ideia antes de registrar */
.conf-div.conf-decidido{border-left-color:var(--ok);background:color-mix(in srgb,var(--ok) 5%,transparent)}
.conf-efeito{font-size:11.5px;color:var(--ok);margin-left:8px}
small.conf-efeito{color:var(--txt3)}
.pp-dif{color:var(--alerta);font-weight:650}
/* o que sobra na loja depois deste acerto */
.pp-quadro td.pp-fica{color:var(--txt3)}
.pp-quadro td.pp-fica.mudou{color:var(--txt);font-weight:650}
/* cabeçalho que ordena: a seta mostra o sentido */
.pp-quadro th.pp-ord{cursor:pointer;user-select:none;white-space:nowrap}
.pp-quadro th.pp-ord:hover{color:var(--acc)}
.pp-quadro th.pp-ord[data-dir="-1"]::after{content:" ▾"}
.pp-quadro th.pp-ord[data-dir="1"]::after{content:" ▴"}

/* gaveta: o detalhe sem sair da página */
.pp-gaveta-fundo{position:fixed;inset:0;background:rgba(0,0,0,.28);z-index:80;display:flex;justify-content:flex-end}
.pp-gaveta{background:var(--bg);width:min(720px,100%);height:100%;overflow:auto;box-shadow:-2px 0 24px rgba(0,0,0,.18);
  animation:ppEntra .16s ease-out}
@keyframes ppEntra{from{transform:translateX(24px);opacity:.4}to{transform:none;opacity:1}}
.pp-gaveta header{position:sticky;top:0;display:flex;flex-direction:row;align-items:center;gap:10px;padding:13px 18px;
  background:var(--bg2);border-bottom:1px solid var(--linha);z-index:1}
.pp-gaveta header h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3)}
/* fechar: o X é o alvo, e o "esc" ao lado ensina o atalho sem ocupar espaço */
.pp-fechar{margin-left:auto;display:inline-flex;align-items:center;gap:6px;background:none;
  border:1px solid transparent;border-radius:99px;min-height:36px;padding:0 10px;line-height:1;
  color:var(--txt3);cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}
.pp-fechar:hover{color:var(--txt);background:color-mix(in srgb,var(--txt) 7%,transparent)}
.pp-fechar:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.pp-fechar kbd{font:inherit;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:650;
  border:1px solid var(--linha);border-radius:4px;padding:1px 5px;color:var(--txt3)}
@media(max-width:600px){.pp-fechar{min-height:44px}.pp-fechar kbd{display:none}}
.pp-gaveta-corpo{padding:16px 18px 40px}
.pp-gaveta-tit{font-size:18px;margin:0 0 2px}
.pp-gaveta-meta{color:var(--txt3);font-size:12px;margin-bottom:12px}
.pp-chave{font:11.5px var(--mono);word-break:break-all;letter-spacing:.02em}
.pp-chave-cx{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--bg3);border-radius:var(--raio);padding:8px 11px;margin:10px 0}
.pp-chave-cx>span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.pp-chave-cx code{flex:1;min-width:240px}
.pp-baixar{margin:12px 0}
/* o formulário que abre dentro da gaveta, logo abaixo do botão que o chamou */
.pp-inline{background:var(--bg2);border:1px solid var(--acc);border-radius:var(--raio);padding:13px 15px;margin-top:10px;max-width:none}
/* campo de arquivo: botão em português e o nome do que foi escolhido ao lado */
.pp-campo{display:flex;flex-direction:column;gap:5px}
.pp-rot{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);font-weight:650}
.pp-rot small{text-transform:none;letter-spacing:0;font-weight:400;color:var(--txt3)}
.pp-arq{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
/* o <label> herdava a coluna dos campos do formulário e empilhava ícone e
   rótulo; aqui ele volta a ser um botão: uma linha, largura do conteúdo */
.pp-arq label.pp-btn2{display:inline-flex;flex-direction:row;align-items:center;width:auto;align-self:flex-start;
  margin:0;cursor:pointer;text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--txt2)}
.pp-arq label.pp-btn2:focus-within{outline:2px solid var(--acc);outline-offset:2px}
.pp-arq-nome{font-size:12.5px;color:var(--txt3)}
.pp-arq-nome.tem{color:var(--txt);font-weight:600}
/* Uma ação principal, uma saída discreta: mesma altura, mesma linha, e o peso
   dizendo qual é qual. Antes eram duas pílulas do mesmo tamanho disputando a
   atenção, com o campo de arquivo solto acima. */
.pp-enviar{align-items:center;gap:6px;margin-top:10px}
.pp-enviar .pp-btn,.pp-enviar .pp-btn2,.pp-enviar .pp-btn-txt{min-height:40px;display:inline-flex;align-items:center}
.pp-btn-txt{background:none;border:0;border-radius:99px;padding:0 16px;font:inherit;font-size:13.5px;
  font-weight:600;color:var(--txt2);cursor:pointer;transition:background-color .15s,color .15s}
.pp-btn-txt:hover{background:color-mix(in srgb,var(--txt) 7%,transparent);color:var(--txt)}
.pp-btn-txt:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
/* o campo de documento é uma linha do formulário, com o mesmo respiro dos outros */
.pp-campo{gap:6px;margin-top:2px}
.pp-arq{gap:12px}
@media(max-width:600px){.pp-enviar{width:100%}.pp-enviar .pp-btn{flex:1}}
.pp-inline h3{font-size:14px;margin:0}
.pp-baixar a.pp-btn2{text-decoration:none;display:inline-flex;align-items:center}
.pp-gaveta-tit small{font-size:12px;color:var(--txt3);font-weight:400;margin-left:6px}
.pp-gaveta header h2{font-size:12px;text-transform:none;letter-spacing:0;color:var(--txt2);font-weight:650}
.pp-carregando{color:var(--txt3);padding:20px 0}
.pp-mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:12px 0}
.pp-mini>div{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:8px 10px}
.pp-mini span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.pp-mini b{font-size:17px;font-variant-numeric:tabular-nums}
.pp-mini .forte{border-color:var(--acc)}
.pp-gaveta .pp-btn2{margin-top:14px}

/* conversa: o que foi enviado e o que a Solisluna respondeu, lado a lado */
/* ---------- painel do parceiro: gráficos ---------- */
.pp-cartao{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:14px 16px;margin-bottom:12px}
.pp-cartao h3{font-size:14px;margin:0 0 10px}
.pp-cartao h3 small{font-weight:400;color:var(--txt3);font-size:11.5px;margin-left:6px}
.pp-colunas{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px}
.pp-graf{width:100%;height:auto;color:var(--txt)}
.pp-legenda{display:flex;gap:16px;flex-wrap:wrap;font-size:11.5px;color:var(--txt2);margin-top:4px}
.pp-legenda i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
/* título, barra e número em colunas: os produtos ficam alinhados entre si e a
   comparação se faz de relance, sem procurar onde cada barra começa */
.pp-barras{display:flex;flex-direction:column;gap:4px}
.pp-gitem{display:grid;grid-template-columns:minmax(110px,13rem) minmax(48px,1fr) minmax(140px,17rem);gap:12px;align-items:center;
  cursor:pointer;padding:5px 6px;border-radius:5px}
.pp-gitem:hover{background:color-mix(in srgb,var(--acc) 7%,transparent)}
.pp-gitem-tit{font-size:12.5px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pp-gitem-tr{background:var(--bg3);border-radius:99px;height:9px;overflow:hidden;min-width:40px}
.pp-gitem-in{height:100%;border-radius:99px}
.pp-gitem-v{font-size:11.5px;color:var(--txt2);font-variant-numeric:tabular-nums;text-align:right;line-height:1.3}
@media(max-width:620px){.pp-gitem{grid-template-columns:1fr;gap:2px}.pp-gitem-v{text-align:left}}
.pp-legenda i.fantasma{background:transparent;border:1px dashed var(--c-acerto);width:11px;height:11px}
/* período e busca */
.pp-periodo{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.pp-periodo label{font-size:11.5px;color:var(--txt3);display:flex;align-items:center;gap:5px}
.pp-periodo input[type=date]{font-size:12px;padding:4px 7px;min-height:30px}
.pp-chip{background:var(--bg2);border:1px solid var(--linha);border-radius:99px;padding:4px 12px;font:inherit;
  font-size:12px;color:var(--txt2);cursor:pointer}
.pp-chip[aria-pressed=true]{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:620}
.pp-busca{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.pp-busca input{flex:1;max-width:520px}
.pp-busca-cont{font-size:11.5px;color:var(--txt3);font-variant-numeric:tabular-nums}
/* o bichinho sozinho na linha da nota: presente, sem gritar */
.pp-so-bug{opacity:.4;padding:2px 4px}
.pp-so-bug:hover{opacity:1}
.pp-quadro td.pp-fim{text-align:right;width:34px}
/* a linha inteira abre o detalhe — não só o número da nota */
.pp-quadro tr.pp-click{cursor:pointer}
.pp-quadro tr.pp-click:hover{background:color-mix(in srgb,var(--acc) 6%,transparent)}
/* o que a nota fez com o saldo: entrou ou saiu */
.pp-quadro tr.furo td{background:color-mix(in srgb,var(--alerta) 8%,transparent)}
.pp-furo-mk{display:inline-block;width:15px;height:15px;line-height:15px;text-align:center;border-radius:50%;
  background:color-mix(in srgb,var(--alerta) 22%,transparent);color:var(--alerta);font-size:10.5px;font-weight:700;margin-left:4px;cursor:help}
.pp-quadro td.mais{color:var(--c-remessa);font-weight:650}
.pp-quadro td.menos{color:var(--c-acerto);font-weight:650}
.pp-cont{font-size:11px;font-weight:650;background:var(--bg3);color:var(--txt2);border-radius:99px;padding:1px 8px;margin-left:6px;vertical-align:middle}
.pp-envio{padding:12px 14px}
.pp-fala{border-radius:8px;padding:9px 11px;margin-top:8px;font-size:13px;line-height:1.5}
.pp-fala.nossa{background:var(--bg3)}
.pp-fala.deles{background:color-mix(in srgb,var(--ok) 9%,transparent);border:1px solid color-mix(in srgb,var(--ok) 25%,transparent)}
.pp-fala.esperando{color:var(--txt3);font-size:12.5px;padding:4px 0}
.pp-fala-quem{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:650;color:var(--txt3);margin-bottom:3px}
.pp-tag.em_analise{background:color-mix(in srgb,var(--info) 16%,transparent);color:var(--info)}
.pp-tag.recusado{background:color-mix(in srgb,var(--risco) 14%,transparent);color:var(--risco)}
@media print{
  .pp-abas,.pp-acoes,.pp-urgente,.pp-subir,.pp-form,.pp-gaveta-fundo,.pp-rodape .noprint{display:none!important}
  .pp-quadro{border:0}.pp-cab{border-bottom:1px solid #999}
}
.pp-link{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:6px 0}
.pp-link input{flex:1;min-width:260px;font-family:var(--mono);font-size:12px}
.pp-link .btn{margin:0}
.pp-envio-eq{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--alerta);border-radius:var(--raio);padding:10px 12px;margin-bottom:8px;font-size:13px}
.pp-envio-eq.resolvido{border-left-color:var(--ok)}.pp-envio-eq.recusado{border-left-color:var(--txt3);opacity:.75}
.pp-envio-eq small{color:var(--txt3);margin-left:6px}
.pp-ref{color:var(--txt2);font-size:12px;margin-top:3px}
.pp-envio-eq .cmp-acoes input{flex:1;min-width:200px}

/* ---------- quem emitiu a nota ---------- */
/* a seta diz de que lado a nota saiu: remessa e acerto vêm da Solisluna, a
   devolução física sai da loja. Cor só como apoio — o rótulo já basta. */
.pp-emissor{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--txt2);white-space:nowrap}
.pp-emissor i{font-style:normal;font-size:13px;font-weight:700;line-height:1}
.pp-emissor.nossa i{color:var(--c-remessa)}
.pp-emissor.sua i{color:var(--c-devol)}
.pp-emissor.neutro{color:var(--txt3)}

/* ---------- filtro de operação e grão do tempo ---------- */
.pp-chip span{display:inline-block;margin-left:6px;font-size:10.5px;opacity:.7;font-variant-numeric:tabular-nums}
.pp-chip[aria-pressed=true] span{opacity:.85}
.pp-chip:hover{border-color:var(--acc);color:var(--acc)}
.pp-chip[aria-pressed=true]:hover{color:#fff}
.pp-graos{margin:0 0 10px}
.pp-cartao-mini{padding:10px 12px;margin:12px 0}
.pp-cartao-mini h3{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}

/* ---------- mix do catálogo ---------- */
.pp-mix{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}
.pp-mix-l{display:grid;grid-template-columns:minmax(110px,13rem) minmax(60px,1fr) minmax(110px,9rem);
  gap:12px;align-items:center;padding:5px 6px;border-radius:5px;cursor:pointer}
.pp-mix-l:hover{background:color-mix(in srgb,var(--acc) 7%,transparent)}
.pp-mix-n{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pp-mix-b{display:flex;height:11px;border-radius:99px;overflow:hidden;background:var(--bg3)}
.pp-mix-p{display:block;height:100%}
.pp-mix-p.falta{background:repeating-linear-gradient(45deg,var(--bg3),var(--bg3) 3px,var(--linha) 3px,var(--linha) 5px)}
.pp-mix-v{font-size:11.5px;color:var(--txt2);font-variant-numeric:tabular-nums;text-align:right}
.pp-legenda i.falta{background:repeating-linear-gradient(45deg,var(--bg3),var(--bg3) 3px,var(--linha) 3px,var(--linha) 5px)}
@media(max-width:620px){.pp-mix-l{grid-template-columns:1fr;gap:2px}.pp-mix-v{text-align:left}}

/* ---------- últimos lançamentos ---------- */
.pp-lancs{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.pp-lanc{display:flex;flex-direction:column;gap:2px;background:var(--bg);border:1px solid var(--linha);
  border-radius:var(--raio);padding:11px 12px}
.pp-lanc h4{font-size:13px;margin:0;line-height:1.3}
.pp-lanc h4 .pp-lnk{font-size:13px;font-weight:650}
.pp-lanc small{color:var(--txt3);font-size:11.5px}
/* o rodapé cola embaixo: numa fileira de cartões, preço e botão ficam na
   mesma linha do olho, mesmo com títulos de tamanhos diferentes */
.pp-lanc-pe{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px}
.pp-lanc-st{font-size:11px;font-weight:650;padding:2px 8px;border-radius:99px;
  background:color-mix(in srgb,var(--c-acerto) 14%,transparent);color:var(--c-acerto)}
.pp-lanc.teve .pp-lanc-st{background:color-mix(in srgb,var(--txt) 8%,transparent);color:var(--txt3)}
.pp-lanc.falta{border-style:dashed}
.pp-lanc.falta .pp-lanc-st{background:color-mix(in srgb,var(--c-remessa) 14%,transparent);color:var(--c-remessa)}
.pp-lanc-pr{font-size:11.5px;color:var(--txt2);font-variant-numeric:tabular-nums}
.pp-lanc .pp-btn2{margin-top:8px;min-height:36px;font-size:12.5px;width:100%}
@media(max-width:600px){.pp-lanc .pp-btn2{min-height:44px}}

/* ---------- da editora: a conversa comercial ---------- */
/* clipping: veículo, data e o link para a livraria usar na própria vitrine */
.pp-imprensa{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.pp-clip{display:flex;flex-direction:column;gap:4px;background:var(--bg);border:1px solid var(--linha);
  border-radius:var(--raio);padding:11px 12px}
.pp-clip-cab{display:flex;flex-direction:column;gap:1px}
.pp-clip-cab b{font-size:13px}
.pp-clip-cab small{color:var(--txt3);font-size:11px}
.pp-clip-tits{font-size:12px;line-height:1.5;margin-top:2px}
.pp-clip-tits i{font-style:normal;font-size:10.5px;font-weight:650;color:var(--acc);
  border:1px solid var(--acc);border-radius:99px;padding:0 6px;margin-left:3px;vertical-align:1px}
.pp-clip .pp-btn2{margin-top:auto;min-height:36px;font-size:12.5px;align-self:flex-start}

/* ranking: a posição pesa mais que o número, que é nosso */
.pp-top{list-style:none;display:flex;flex-direction:column;gap:2px;margin:0;padding:0}
.pp-top-l{display:flex;align-items:center;gap:10px;padding:6px;border-radius:5px}
.pp-top-l:nth-child(odd){background:color-mix(in srgb,var(--txt) 3%,transparent)}
.pp-top-n{font-size:11.5px;font-weight:700;color:var(--acc);font-variant-numeric:tabular-nums;white-space:nowrap}
.pp-top-t{flex:1;min-width:0;font-size:13px;font-weight:600;display:flex;flex-direction:column;line-height:1.25}
.pp-top-t small{font-weight:400;color:var(--txt3);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pp-top-l .pp-btn2{min-height:32px;padding:0 14px;font-size:12.5px}
.pp-top-l .pp-lanc-st{white-space:nowrap}
@media(max-width:600px){.pp-top-l .pp-btn2{min-height:40px}}

/* pedir vários de uma vez */
.pp-quadro input[type=checkbox]{width:18px;height:18px;accent-color:var(--acc);cursor:pointer}
.pp-enviar .pp-cont{margin-left:2px}

/* ---------- montar o pedido ---------- */
/* a linha marcada se destaca sem piscar: é a lista de compras tomando forma */
.pp-quadro tr.ped-marcado{background:color-mix(in srgb,var(--acc) 6%,transparent)}
.pp-quadro tr.ped-marcado input.pp-qtd{border-color:var(--acc);font-weight:700}
.pp-quadro input.pp-qtd{width:72px}
.pp-quadro td small{color:var(--txt3);font-size:11px;line-height:1.3;display:inline-block}
.pp-quadro .tag{white-space:nowrap}

/* nota que está no ERP e nunca entrou no controle da consignação */
.t-fora{background:color-mix(in srgb,var(--txt) 9%,transparent);color:var(--txt3);border:1px dashed var(--linha)}

/* ---------- interruptor de tema do painel do parceiro ---------- */

/* ---------- dica que segue o ponteiro ---------- */
.pp-dica-flut{position:fixed;z-index:120;pointer-events:none;max-width:280px;
  background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);
  box-shadow:0 6px 20px rgba(0,0,0,.18);padding:8px 11px;font-size:12px;line-height:1.45;
  opacity:0;transform:translateY(3px);transition:opacity .12s,transform .12s}
.pp-dica-flut.ver{opacity:1;transform:none}
.pp-dica-flut b{display:block;font-size:12.5px;margin-bottom:2px}
.pp-dica-flut i{display:block;font-style:normal;color:var(--txt2);font-variant-numeric:tabular-nums}
.pp-dica-flut em{display:block;font-style:normal;color:var(--txt3);font-size:11px;margin-top:4px}
@media (hover:none){.pp-dica-flut{display:none}}   /* no toque, o clique já abre o ranking */

/* ranking da coleção */
.pp-rank{color:var(--txt3);font-weight:700;font-size:11.5px;white-space:nowrap;vertical-align:top;padding-top:10px}
.pp-rank-barra{margin-top:4px;max-width:180px}
.pp-quadro .pp-top-n{margin-left:6px}

/* confirmação curta, na própria linha do botão: sem diálogo do navegador */
.pp-confirma{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--txt2);
  background:var(--bg3);border-radius:99px;padding:4px 6px 4px 14px}
@media(max-width:600px){.pp-confirma{width:100%;border-radius:var(--raio);padding:10px}}

/* o caminho de quem não vendeu, antes da tabela e com a mesma cara de ação */
.pp-semvenda{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 12px;padding:13px 15px;
  background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--acc);border-radius:var(--raio)}
.pp-semvenda.abrindo{border-color:var(--acc)}
.pp-semvenda .pp-subir-tx{flex:1;min-width:240px}
.pp-semvenda-ret{flex-basis:100%;font-size:11.5px;color:var(--txt3)}
@media(max-width:600px){.pp-semvenda .pp-btn2,.pp-semvenda .pp-confirma{width:100%;justify-content:center}}

/* "já esteve na loja e acabou": a lista que vira reposição */
.pp-esgotou{margin-top:14px}
.pp-esg-dias{color:var(--txt3);margin-left:4px}
.pp-esgotou .pp-btn2{min-height:32px;padding:0 14px;font-size:12.5px}
.pp-esgotou .pp-btn-txt{margin-top:8px;min-height:36px}

/* --- a capa e a ficha do livro (catálogo), no painel do parceiro ----------- */
/* a capa na proporção do livro, sem corte: a altura é fixa e a largura é a dele */
.pp-capa{height:48px;width:auto;max-width:60px;object-fit:contain;border-radius:3px;background:var(--bg3);flex:none;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.pp-capa.vazia{display:inline-block;width:34px;border:1px dashed var(--linha);box-shadow:none}
.pp-capa.lanc{height:62px;max-width:76px}
.pp-capa.lanc.vazia{width:44px}
.pp-capa.grande{width:132px;max-width:none;height:auto;min-height:0;border-radius:4px;box-shadow:var(--sombra)}
.pp-capa.grande.vazia{height:180px}
.pp-tit-cel{display:flex;align-items:center;gap:10px;min-width:0}
.pp-tit-cel>div{min-width:0}
.pp-livro{display:grid;grid-template-columns:132px 1fr;gap:16px;align-items:start;background:var(--bg2);border:1px solid var(--linha);
  border-radius:var(--raio);padding:14px 16px;margin:12px 0}
.pp-livro-tx{min-width:0;font-size:13px}
.pp-livro-sub{font-weight:600;margin-bottom:2px}
.pp-livro-quem{color:var(--txt2);font-size:12px;margin-bottom:8px}
.pp-sinopse{margin:0 0 6px;line-height:1.5;white-space:pre-line}
.pp-sinopse.fechada{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.pp-temas{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}
.pp-temas span{font-size:11px;padding:2px 8px;border-radius:99px;background:color-mix(in srgb,var(--acc) 10%,transparent);color:var(--acc)}
.pp-distincoes{margin:6px 0;padding-left:18px;font-size:12px;color:var(--txt2)}
.pp-livro-ficha{font-size:11.5px;color:var(--txt3);margin:6px 0}
.pp-livro-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pp-gaveta .pp-livro-links .pp-btn2{margin-top:0}
.pp-lanc{flex-direction:row;gap:10px}
.pp-lanc-tx{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
@media(max-width:560px){.pp-livro{grid-template-columns:1fr}.pp-capa.grande{width:110px}}
@media print{.pp-livro-links{display:none!important}}

/* --- ficha do título: a camada de divulgação (catálogo) -------------------- */
/* na proporção do livro, sem corte */
.capa-mini{height:36px;width:auto;max-width:46px;object-fit:contain;border-radius:2px;background:var(--bg3);vertical-align:middle;margin-right:8px;
  box-shadow:0 1px 2px rgba(0,0,0,.2);flex:none}
.capa-mini.grande{width:120px;max-width:none;height:auto;min-height:0;border-radius:4px;margin:0;box-shadow:var(--sombra)}
.capa-mini.vazia{display:inline-block;width:26px;border:1px dashed var(--linha);box-shadow:none}
.capa-mini.grande.vazia{height:160px}
.div-livro{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:start;margin:0 0 16px}
.div-livro-tx{min-width:0}
.div-sinopse{font-size:13px;line-height:1.5;white-space:pre-line;max-height:9.5em;overflow:auto;margin:6px 0}
.div-temas{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}
.div-distincoes{margin:6px 0;padding-left:18px;font-size:12px;color:var(--txt2)}
@media(max-width:560px){.div-livro{grid-template-columns:1fr}}

/* o rascunho do pedido */
.pp-rascunho{font-size:12px;color:var(--txt3);min-height:16px;margin:4px 0 0}
.pp-rascunho:not(:empty)::before{content:'✓ ';color:var(--ok)}
.pp-rascunho.ruim{color:var(--risco)}.pp-rascunho.ruim::before{content:'! '}
.pp-envio-eq.rascunho{border-left-color:var(--txt3);border-left-style:dashed}

/* --- a vitrine da editora: o cartão do livro ------------------------------ */
.pp-livros{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.pp-lv{display:flex;gap:12px;align-items:flex-start;background:var(--bg);border:1px solid var(--linha);border-radius:var(--raio);padding:12px}
.pp-lv.falta{border-style:dashed}
.pp-lv.parado{border-color:color-mix(in srgb,var(--alerta) 45%,var(--linha));background:color-mix(in srgb,var(--alerta) 4%,var(--bg))}
.pp-capa.lv{height:92px;max-width:80px;border-radius:4px;box-shadow:var(--sombra)}
.pp-capa.lv.vazia{width:62px}
.pp-capa.top{height:40px;max-width:44px}.pp-capa.top.vazia{width:28px}
.pp-lv-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.pp-lv h4{font-size:13.5px;margin:0;line-height:1.3}
.pp-lv h4 .pp-lnk{font-size:13.5px;font-weight:650;text-align:left}
.pp-lv-quem{color:var(--txt3);font-size:11.5px}
.pp-lv-chips{display:flex;flex-wrap:wrap;gap:4px;margin:2px 0}
.pp-arg{font-size:10.5px;font-weight:650;padding:1px 7px;border-radius:99px;background:color-mix(in srgb,var(--txt) 7%,transparent);color:var(--txt2);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.pp-arg.pos{background:color-mix(in srgb,var(--acc) 12%,transparent);color:var(--acc)}
.pp-arg.novo{background:color-mix(in srgb,var(--c-remessa) 14%,transparent);color:var(--c-remessa)}
.pp-arg.premio{background:color-mix(in srgb,var(--alerta) 14%,transparent);color:var(--alerta)}
.pp-lv-sin{margin:2px 0 0;font-size:12px;line-height:1.45;color:var(--txt2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pp-lv-parado{font-size:11.5px;font-weight:650;color:var(--alerta);margin-top:2px}
.pp-lv-pe{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-top:auto;padding-top:8px}
.pp-lv-acoes{display:flex;gap:6px;margin-left:auto}
.pp-lv .pp-btn2{margin-top:0;min-height:32px;padding:0 12px;font-size:12px}
.pp-lanc-st.teve{background:color-mix(in srgb,var(--txt) 8%,transparent);color:var(--txt3)}
.pp-lanc-st.falta{background:color-mix(in srgb,var(--c-remessa) 14%,transparent);color:var(--c-remessa)}
.pp-cartao.pp-destaque{border-color:color-mix(in srgb,var(--alerta) 40%,var(--linha))}
.pp-falta-sin{display:block;color:var(--txt3);font-size:11px;line-height:1.35;margin-top:3px;max-width:34rem}
@media(max-width:600px){.pp-livros{grid-template-columns:1fr}.pp-lv .pp-btn2{min-height:40px}.pp-lv-acoes{margin-left:0;width:100%}}

/* o cartão inteiro abre a ficha: cursor, realce e um leve levantar ao passar */
.pp-lv[data-abrir]{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
.pp-lv[data-abrir]:hover{border-color:var(--acc);box-shadow:var(--sombra);transform:translateY(-1px)}
.pp-lv[data-abrir]:hover .pp-capa{box-shadow:0 4px 12px rgba(0,0,0,.28)}
.pp-top-l[data-abrir]{cursor:pointer;transition:background .15s}
.pp-top-l[data-abrir]:hover{background:color-mix(in srgb,var(--acc) 9%,transparent)}
.pp-vit-busca input{max-width:none}
.pp-vit-filtros{margin-bottom:12px}

/* --- o montador do pedido: de quem é a sugestão, e o que está filtrado ------ */
.pp-sug{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;background:var(--bg2);border:1px solid var(--linha);
  border-left:4px solid var(--acc);border-radius:var(--raio);padding:12px 16px;margin-bottom:12px}
.pp-sug.equipe{border-left-color:var(--c-acerto);background:color-mix(in srgb,var(--c-acerto) 5%,var(--bg2))}
.pp-sug-tx{flex:1;min-width:260px;display:flex;flex-direction:column;gap:2px}
.pp-sug-rot{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--acc)}
.pp-sug.equipe .pp-sug-rot{color:var(--c-acerto)}
.pp-sug b{font-size:14px}
.pp-sug small{color:var(--txt2);font-size:12px;line-height:1.45}
.pp-sug .pp-acoes{margin:0}
.pp-mostrando{font-size:12.5px;color:var(--txt2);margin:-4px 0 8px}
.pp-mostrando b{color:var(--txt)}
.pp-chip.todos{border-style:dashed;margin-left:auto}
.pp-sug-q{background:color-mix(in srgb,var(--acc) 12%,transparent);color:var(--acc);border:0;border-radius:99px;padding:2px 10px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.pp-sug-q:hover{background:color-mix(in srgb,var(--acc) 22%,transparent)}
.tag.t-novo{background:var(--acc);color:#fff;font-size:11px;padding:3px 9px;letter-spacing:.01em}
/* --- a dica do gráfico: a coluna inteira responde, e a dica mostra os três números --- */
.pp-col{fill:transparent;pointer-events:all;transition:fill .12s}
.pp-col:hover{fill:color-mix(in srgb,var(--acc) 9%,transparent)}
.pp-dica-flut{padding:9px 12px 8px;min-width:170px}
.pp-dica-flut>b{font-size:13px;margin-bottom:5px;padding-bottom:5px;border-bottom:1px solid var(--linha)}
.pp-dica-flut i{display:flex;align-items:center;gap:7px;color:var(--txt2);line-height:1.6}
.pp-dica-flut i b{display:inline;margin:0 0 0 auto;font-size:12.5px;color:var(--txt);font-variant-numeric:tabular-nums;padding-left:12px}
.pp-dica-flut s{display:inline-block;width:9px;height:9px;border-radius:2px;text-decoration:none;flex:none}
.pp-dica-flut em{margin-top:5px;padding-top:5px;border-top:1px dashed var(--linha)}
.pp-dica-flut em.alerta{color:var(--alerta);font-weight:600}

/* --- o guia do painel ----------------------------------------------------- */
.pp-ajuda{display:inline-flex;align-items:center;gap:5px;margin-left:4px;padding:6px 11px 6px 8px;border:1px solid var(--linha);border-radius:99px;
  background:var(--bg2);color:var(--txt2);font:inherit;font-size:12px;font-weight:650;cursor:pointer;transition:color .15s,border-color .15s,transform .15s}
.pp-ajuda:hover{color:var(--acc);border-color:var(--acc);transform:translateY(-1px)}
.pp-ajuda svg{flex:none}
@media(max-width:560px){.pp-ajuda span{display:none}.pp-ajuda{padding:6px}}
.pp-tour-fundo{position:fixed;inset:0;z-index:90}
.pp-tour-boas{background:rgba(20,16,10,.55);backdrop-filter:blur(3px);display:grid;place-items:center;padding:16px;animation:pp-surge .25s ease-out}
.pp-tour-cartao{background:var(--bg);border:1px solid var(--linha);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.35);padding:28px 28px 22px;
  max-width:520px;width:100%;text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center}
.pp-tour-cartao h2{font-size:20px;line-height:1.25;margin:4px 0 0}
.pp-tour-cartao p{margin:0;color:var(--txt2);font-size:14px;line-height:1.5;max-width:44ch}
.pp-tour-cartao .pp-tour-sub{color:var(--txt);font-weight:600}
.pp-tour-cartao small{color:var(--txt3);font-size:11.5px;margin-top:4px}
/* o infinito: emblema fino sobre o título. A linha, um degradê discreto da
   casa; por cima, um brilho suave que percorre a curva devagar (12 s) */
.pp-tour-inf{width:96px;height:45px;margin-bottom:2px}
.pp-inf-base{fill:none;stroke:url(#ppInfG);stroke-width:2.2;stroke-linecap:round;opacity:.72}
.pp-inf-luz{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;opacity:.45;stroke-dasharray:24 236;animation:pp-inf 12s linear infinite;mix-blend-mode:soft-light}
:root.dark .pp-inf-luz,:root[data-theme=dark] .pp-inf-luz{opacity:.55;mix-blend-mode:screen}
@keyframes pp-inf{to{stroke-dashoffset:-260}}
.pp-tour-cartao h2 em{font-style:normal;color:var(--acc)}
@keyframes pp-surge{from{opacity:0}to{opacity:1}}
.pp-tour-acoes{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:6px}
/* a luz: um recorte claro sobre o alvo, e o resto da tela escurece (a sombra
   gigante é o truque — um elemento só, que desliza de um alvo ao outro) */
/* luz e balão só aparecem depois de a página se ajeitar (.ver), e somem no
   clique do passo interativo (.some) — nada de luz correndo atrás da rolagem */
.pp-tour-luz{position:fixed;border-radius:10px;box-shadow:0 0 0 9999px rgba(20,16,10,.58),0 0 0 3px color-mix(in srgb,var(--acc) 70%,transparent);
  opacity:0;transition:opacity .22s ease-out;pointer-events:none}
.pp-tour-fundo.ver .pp-tour-luz{opacity:1}
.pp-tour-balao{position:fixed;z-index:91;width:min(360px,calc(100vw - 16px));background:var(--bg);border:1px solid var(--linha);border-radius:12px;
  box-shadow:0 14px 40px rgba(0,0,0,.3);padding:12px 16px 14px;opacity:0;transform:translateY(4px);transition:opacity .22s ease-out,transform .22s ease-out}
.pp-tour-fundo.ver .pp-tour-balao{opacity:1;transform:none}
.pp-tour-fundo.some .pp-tour-luz,.pp-tour-fundo.some .pp-tour-balao{opacity:0;transition-duration:.15s}
.pp-tour-balao::before{content:'';position:absolute;left:var(--seta,50%);width:14px;height:14px;background:var(--bg);border:1px solid var(--linha);transform:translateX(-50%) rotate(45deg)}
.pp-tour-balao[data-pos=baixo]::before{top:-8px;border-right:0;border-bottom:0}
.pp-tour-balao[data-pos=cima]::before{bottom:-8px;border-left:0;border-top:0}
.pp-tour-cab{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pp-tour-passo{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--acc)}
.pp-tour-balao .pp-fechar{position:static;width:30px;height:30px}
.pp-tour-barra{height:3px;border-radius:99px;background:var(--bg3);margin:6px 0 10px;overflow:hidden}
.pp-tour-barra i{display:block;height:100%;background:var(--acc);border-radius:99px;transition:width .32s}
.pp-tour-balao h3{font-size:16px;margin:0 0 6px}
.pp-tour-balao p{margin:0;font-size:13.5px;line-height:1.5;color:var(--txt2)}
.pp-tour-balao .pp-tour-acoes{justify-content:space-between;margin-top:12px}
.pp-tour-balao .pp-btn{min-height:38px}
@media(max-width:600px){.pp-tour-balao{left:8px!important;right:8px;top:auto!important;bottom:8px;width:auto}.pp-tour-balao::before{display:none}}
@media(prefers-reduced-motion:reduce){.pp-tour-barra i{transition:none}.pp-inf-luz,.pp-tour-luz.pulsa{animation:none}.pp-tour-boas,.pp-tour-balao{animation:none}}
@media print{.pp-tour-fundo,.pp-ajuda{display:none!important}}

/* passo interativo: a página fica livre para o clique; a luz pulsa e o balão avisa que espera */
.pp-tour-livre{pointer-events:none}
.pp-tour-livre .pp-tour-balao{pointer-events:auto}
.pp-tour-luz.pulsa{animation:pp-pulsa 1.6s ease-in-out infinite}
@keyframes pp-pulsa{50%{box-shadow:0 0 0 9999px rgba(20,16,10,.58),0 0 0 7px color-mix(in srgb,var(--acc) 45%,transparent)}}
.pp-tour-espera{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--txt2)}
.pp-tour-espera i{width:8px;height:8px;border-radius:50%;background:var(--acc);animation:pp-pisca 1.2s ease-in-out infinite}
@keyframes pp-pisca{50%{opacity:.25}}
.pp-tour-espera .pp-lnk{font-size:12.5px}

.pp-tour-teclas{margin-top:10px;padding-top:8px;border-top:1px solid var(--linha);font-size:11px;color:var(--txt3)}
.pp-tour-teclas kbd{display:inline-block;min-width:18px;padding:0 5px;margin-right:3px;border:1px solid var(--linha);border-bottom-width:2px;border-radius:4px;font:inherit;font-size:10.5px;text-align:center;color:var(--txt2);background:var(--bg2)}
.pp-btn-redondo{width:40px;height:40px;border-radius:50%;border:1px solid var(--linha);background:var(--bg2);color:var(--txt2);display:inline-grid;place-items:center;cursor:pointer;transition:color .15s,border-color .15s,transform .3s}
.pp-btn-redondo:hover{color:var(--acc);border-color:var(--acc);transform:rotate(-40deg)}
@media(max-width:600px){.pp-tour-teclas{display:none}}

/* distribuidoras: um seletor só, minimalista, e o botão de subir o mapa novo */
.dist-topo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.dist-sel{font:inherit;font-size:14px;font-weight:600;padding:8px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2);color:var(--txt);max-width:100%}
/* o girador: ação em andamento, dentro de botão ou de aviso */
.girando{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;margin-right:6px;animation:girar .8s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}

.ficha-vistas{margin:0 0 14px}
.ficha-vistas .chip[aria-pressed=true]{background:var(--acc);border-color:var(--acc);color:#fff}
.painel .pp-barras{display:flex;flex-direction:column;gap:6px}
.painel .pp-gitem{display:grid;grid-template-columns:minmax(90px,11rem) minmax(48px,1fr) minmax(120px,15rem);gap:12px;align-items:center;padding:4px 6px;border-radius:5px}
.painel .pp-gitem-tit{font-size:12.5px;font-weight:600}
.painel .pp-gitem-tr{background:var(--bg3);border-radius:99px;height:9px;overflow:hidden;min-width:40px}
.painel .pp-gitem-in{height:100%;border-radius:99px}
.painel .pp-gitem-v{font-size:11.5px;color:var(--txt2);font-variant-numeric:tabular-nums;text-align:right}
.mapa-tab tfoot td{font-weight:600;border-top:2px solid var(--linha);background:var(--bg2)}
.mapa-tab small.mais{color:var(--ok)}.mapa-tab small.menos{color:var(--risco)}
@media print{.painel .noprint,.ficha-vistas{display:none!important}}

/* título com capa: a capa à esquerda, o texto (título e ISBN copiável) à direita */
.tit-cel{display:flex;align-items:center;gap:8px;min-width:0}
.tit-cel .capa-mini{margin-right:0}
.tit-cel-tx{min-width:0}
.tit-cel .sub-isbn{margin-top:2px}
.tit-cel .copiavel{padding:0;background:none;border:0;font-size:11px;color:var(--txt3)}
.tit-cel .copiavel code{font-size:11px;color:var(--txt3)}
.tit-cel .copiavel:hover code{color:var(--acc)}
.dist-busca{font:inherit;font-size:12.5px;padding:6px 10px;border:1px solid var(--linha);border-radius:99px;background:var(--bg2);color:var(--txt);min-width:200px}

/* --- distribuição: a etiqueta "via WMF", a curva ABC dos pontos, a tela cheia --- */
.tag.tag-via{background:color-mix(in srgb,var(--acc) 16%,transparent);color:var(--acc);border:1px solid color-mix(in srgb,var(--acc) 45%,transparent);font-size:11px;padding:2px 9px;cursor:pointer;vertical-align:middle}
.tag.tag-via:hover{background:color-mix(in srgb,var(--acc) 30%,transparent)}
.tag.tag-pro{background:color-mix(in srgb,#6b4fa0 15%,transparent);color:#6b4fa0}
.abc{display:inline-block;min-width:17px;text-align:center;border-radius:4px;font-size:10px;font-weight:700;line-height:16px;padding:0 4px;margin-right:6px;vertical-align:1px}
.abc-A{background:var(--ok);color:#fff}.abc-B{background:var(--info);color:#fff}.abc-C{background:var(--bg3);color:var(--txt2)}
.mapa-parceiro .abc{font-size:12px;line-height:20px;vertical-align:3px}
.bloco.b-d{border-top-color:#6b4fa0}
.bloco-tit .lnk{font-size:11px}
.minikpi.alerta .val{color:var(--alerta)}
.dist-recs{margin:0 0 16px 20px;padding:0;font-size:13.5px;line-height:1.5}
.dist-recs li{margin:0 0 9px;padding-left:2px}
.dist-recs li::marker{color:var(--acc);font-weight:700}
.dist-tela .dist-vista{margin-top:2px}
.dist-tela .quadro{max-height:none}
@media print{ .dist-tela .crm-abas{display:none} }

/* --- pesquisa do prospect: grupos em cartão, pílulas, placar e autosave --- */
.pro-grupo{background:var(--bg2);border:1px solid var(--linha);border-radius:14px;padding:14px 16px 16px;margin-top:12px}
.pro-grupo h2{margin:0 0 12px;display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14px}
.pro-grupo h2 small{font-weight:500;color:var(--txt3);font-size:11.5px;letter-spacing:0}
.pro-grupo .pro-grade input,.pro-grupo .pro-grade select,.pro-grupo .pro-grade textarea{background:var(--bg);border-radius:10px;padding:9px 11px;font-size:14px}
.pro-grupo .pro-grade input:focus,.pro-grupo .pro-grade select:focus,.pro-grupo .pro-grade textarea:focus{outline:2px solid var(--acc);outline-offset:-1px}
.pro-grupo .pro-grade label{gap:5px}
.pro-rot{font-size:12px;font-weight:600;color:var(--txt2)}
.pro-pills{display:flex;flex-wrap:wrap;gap:6px}
.pro-pill{position:relative;display:inline-block}
.pro-pill input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.pro-pill span{display:inline-block;padding:7px 13px;border:1px solid var(--linha);border-radius:99px;background:var(--bg);font-size:13px;line-height:1.2;color:var(--txt);cursor:pointer;user-select:none;transition:background .12s,border-color .12s,color .12s}
.pro-pill span:hover{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 7%,var(--bg))}
.pro-pill input:checked+span{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:600}
.pro-pill input[type=checkbox]:checked+span::before{content:"✓ ";font-weight:700}
.pro-pill input:focus-visible+span{outline:2px solid var(--acc);outline-offset:2px}
.pro-falta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0 4px}
.pro-falta .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:600;margin-right:4px}
.pro-falta .chip{padding:3px 10px;font-size:11.5px}
.pro-realce{animation:proRealce 1.6s ease-out}
@keyframes proRealce{0%{box-shadow:0 0 0 4px color-mix(in srgb,var(--acc) 45%,transparent);border-radius:10px}100%{box-shadow:0 0 0 0 transparent}}
.pro-salvar{position:sticky;bottom:-16px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:10px 0;background:var(--bg);border-top:1px solid var(--linha)}
.pro-estado{font-size:12px;color:var(--txt2)}
.bloco-nums .aviso-via{display:block;font-size:10.5px;color:var(--risco);font-weight:500}

.pro-geo{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.pro-geo .btn{margin:0}
.pro-geo code{font-size:11.5px;color:var(--txt2)}

/* guia: o ponto brilhante "clique aqui" dos passos interativos */
.pp-tour-aqui{position:fixed;z-index:92;display:flex;align-items:center;gap:8px;transform:translateY(-50%);pointer-events:none;opacity:0;transition:opacity .2s}
.pp-tour-fundo.ver .pp-tour-aqui{opacity:1}
.pp-tour-fundo.some .pp-tour-aqui{opacity:0}
.pp-tour-aqui i{position:relative;width:14px;height:14px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 3px #fff,0 0 14px 4px color-mix(in srgb,var(--acc) 70%,transparent);flex-shrink:0}
.pp-tour-aqui i::before,.pp-tour-aqui i::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--acc);animation:pp-aqui 1.6s ease-out infinite}
.pp-tour-aqui i::after{animation-delay:.8s}
.pp-tour-aqui span{background:var(--acc);color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em;padding:4px 10px;border-radius:99px;box-shadow:0 4px 14px rgba(0,0,0,.25);white-space:nowrap;animation:pp-aqui-balanca 1.6s ease-in-out infinite}
@keyframes pp-aqui{0%{transform:scale(1);opacity:.9}100%{transform:scale(3.2);opacity:0}}
@keyframes pp-aqui-balanca{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
@media (prefers-reduced-motion:reduce){.pp-tour-aqui i::before,.pp-tour-aqui i::after,.pp-tour-aqui span{animation:none}}
.pp-tour-teclas .pp-tour-sair{font-size:inherit;padding:0}

/* painel do parceiro: catálogo público fora do ar por enquanto (CATALOGO_PUBLICO em portal.js) */
.sem-catalogo-pub .pp-catalogo-pub{display:none!important}

/* Hoje: devoluções simbólicas esperando o nosso acerto — a primeira coisa da tela */
.simb-pend{background:color-mix(in srgb,var(--risco) 6%,var(--bg2));border:1px solid color-mix(in srgb,var(--risco) 35%,var(--linha));border-left:4px solid var(--risco);border-radius:var(--raio);padding:14px 16px;margin-bottom:16px}
.simb-cab{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
.simb-cab h2{margin:2px 0 4px;font-size:17px}
.simb-cab p{margin:0;font-size:12.5px;color:var(--txt2);max-width:760px}
.simb-rot{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--risco)}
.simb-total{text-align:right}.simb-total b{display:block;font-size:24px;letter-spacing:-.02em;color:var(--risco)}.simb-total small{color:var(--txt2)}
.simb-dias{display:inline-block;min-width:38px;text-align:center;padding:2px 6px;border-radius:99px;font-size:11.5px;font-weight:700;background:var(--bg3);color:var(--txt2)}
.simb-dias.meio{background:color-mix(in srgb,var(--alerta) 18%,transparent);color:var(--alerta)}
.simb-dias.forte{background:var(--risco);color:#fff}
.simb-pend .ac{white-space:nowrap;text-align:right}.simb-pend .ac .btn{margin:0 4px 0 0}
.simb-mais{margin-top:8px;display:inline-block}
.simb-leve{display:flex;gap:10px;align-items:center;padding:8px 12px;font-size:12.5px;border-left-width:3px;background:var(--bg2)}

/* acordo: "O combinado" em cartões */
.ac-frase{background:color-mix(in srgb,var(--acc) 6%,var(--bg2));border:1px solid color-mix(in srgb,var(--acc) 25%,var(--linha));border-radius:12px;padding:10px 14px;font-size:13.5px;margin:4px 0 2px}
.ac-frase .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--acc);margin-bottom:2px}
.ac-form .pro-grupo:first-child{margin-top:10px}
.ac-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.ac-grade .larga{grid-column:1/-1}
.ac-grade label,.ac-campo{display:flex;flex-direction:column;gap:6px;min-width:0}
.ac-grade .pro-rot small,.ac-salvar .pro-rot small{font-weight:400;color:var(--txt3);margin-left:4px}
.ac-form input:not([type=checkbox]):not([type=radio]),.ac-form textarea,.ac-salvar input{width:100%;background:var(--bg);border:1px solid var(--linha);border-radius:10px;padding:9px 11px;font:inherit;font-size:14px;color:var(--txt)}
.ac-form input:focus,.ac-form textarea:focus,.ac-salvar input:focus{outline:2px solid var(--acc);outline-offset:-1px}
.ac-destaque input{font-size:20px!important;font-weight:650;max-width:200px}
.ac-sug{font-size:12px;color:var(--txt2)}
.ac-atalhos{display:flex;gap:5px;flex-wrap:wrap}.ac-atalhos .chip{padding:3px 10px;font-size:11.5px}
.ac-toggle{flex-direction:row!important;align-items:center;gap:12px!important;cursor:pointer;padding:6px 0}
.ac-toggle input{position:absolute;opacity:0;width:1px;height:1px}
.ac-switch{position:relative;flex-shrink:0;width:40px;height:22px;border-radius:99px;background:var(--bg3);border:1px solid var(--linha);transition:background .15s}
.ac-switch::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s}
.ac-toggle input:checked+.ac-switch{background:var(--ok);border-color:var(--ok)}
.ac-toggle input:checked+.ac-switch::after{transform:translateX(18px)}
.ac-toggle input:focus-visible+.ac-switch{outline:2px solid var(--acc);outline-offset:2px}
.ac-toggle small{display:block;color:var(--txt3);font-size:11.5px;font-weight:400}
.ac-salvar{position:sticky;bottom:-16px;z-index:2;display:flex;gap:12px;align-items:flex-end;margin-top:12px;padding:12px 0;background:var(--bg);border-top:1px solid var(--linha)}
.ac-salvar label{flex:1;display:flex;flex-direction:column;gap:6px}
.ac-salvar .btn{margin:0;white-space:nowrap}
@media (max-width:640px){.ac-grade{grid-template-columns:1fr}.ac-salvar{flex-direction:column;align-items:stretch}}

/* mapas integrados: a faixa que leva de um mapa ao outro */
.mapas-nav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px;padding:4px;background:var(--bg2);border:1px solid var(--linha);border-radius:12px;width:max-content;max-width:100%}
.mapas-nav-b{display:flex;flex-direction:column;align-items:flex-start;gap:1px;border:0;background:transparent;color:var(--txt);font:inherit;font-size:13px;font-weight:600;padding:6px 12px;border-radius:9px;cursor:pointer;text-align:left}
.mapas-nav-b small{font-size:10.5px;font-weight:500;color:var(--txt3)}
.mapas-nav-b:hover{background:var(--bg3)}
.mapas-nav-b[aria-current="page"]{background:var(--acc);color:#fff;cursor:default}
.mapas-nav-b[aria-current="page"] small{color:color-mix(in srgb,#fff 80%,transparent)}
.mapa-abas{margin:4px 0 12px}
/* linha do tempo inteira */
.lc{border-left:2px solid var(--linha);margin-left:8px;padding-left:0}
.lc-mes{position:relative;margin:16px 0 6px -8px;padding:2px 10px;display:inline-block;background:var(--bg3);border-radius:99px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--txt2)}
.lc-ev{position:relative;display:grid;grid-template-columns:1fr auto;gap:10px;padding:7px 10px 7px 20px;border-bottom:1px solid color-mix(in srgb,var(--linha) 60%,transparent)}
.lc-ico{position:absolute;left:-6px;top:12px;width:10px;height:10px;border-radius:50%;background:var(--txt3);box-shadow:0 0 0 3px var(--bg)}
.lc-l1{font-size:13px}.lc-l2{font-size:11.5px;color:var(--txt2);margin-top:2px}
.lc-data{font-size:11.5px;color:var(--txt3);white-space:nowrap;font-variant-numeric:tabular-nums}
.lc-email .lc-ico{background:var(--info)}.lc-conversa .lc-ico{background:var(--ok)}.lc-pedido .lc-ico{background:var(--alerta)}
.lc-painel .lc-ico{background:#6b4fa0}.lc-tarefa .lc-ico{background:var(--txt3)}.lc-trilha .lc-ico{background:transparent;border:2px solid var(--txt3)}
.lc-nf .lc-ico{background:var(--acc)}
.lc-nf.nf-remessa .lc-ico{background:var(--c-remessa,var(--acc))}.lc-nf.nf-acerto .lc-ico{background:var(--c-acerto,var(--ok))}
.lc-nf.nf-devolucao .lc-ico{background:var(--c-devol,var(--risco))}.lc-nf.nf-devolucao_simbolica .lc-ico{background:var(--c-simb,var(--info))}
.lc-nf.nf-venda .lc-ico{background:var(--c-venda,var(--ok))}

/* ---- barra do topo: uma linha só, menu rolável, ferramentas à direita ---- */
.cab-l1{flex-wrap:nowrap}
#nav{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  mask-image:linear-gradient(to right,transparent 0,#000 14px,#000 calc(100% - 22px),transparent 100%);padding:0 8px}
#nav::-webkit-scrollbar{display:none}
#nav button{flex:none}
.cab-ferr{display:flex;align-items:center;gap:4px;flex:none;margin-left:4px}
.cab-ico{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid var(--linha);
  background:var(--bg);color:var(--txt2);cursor:pointer;transition:background .12s,color .12s,border-color .12s}
.cab-ico:hover{color:var(--txt);border-color:var(--txt3)}
.cab-ico:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.cab-ico .olho-fechado{display:none}
.cab-ico[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#fff}
.cab-ico[aria-pressed="true"] .olho-aberto{display:none}
.cab-ico[aria-pressed="true"] .olho-fechado{display:block}
.cab-l2 .frescor{margin-left:auto;overflow:hidden;text-overflow:ellipsis;min-width:0}
@media(max-width:1100px){.cab-l2 .frescor{flex:1 1 100%;margin-left:0;order:9}}
header{flex-wrap:nowrap}
.cab-l1,.cab-l2{width:100%;max-width:100%}
@media(max-width:820px){
  header{padding:6px 10px 7px;flex-wrap:nowrap}
  .cab-l2 .frescor{white-space:normal}
  .cab-l2 .frescor{display:block;font-size:10.5px}
  .cab-l2{gap:6px}
  .busca-global{flex:1 1 100%;max-width:none;min-width:0} #busca{width:100%}
  .filtro-g select{max-width:34vw}
}
@media(max-width:480px){.marca-tema{padding-right:8px;margin-right:2px} #nav{padding:0 4px}}

/* ---- olho fechado: os valores ficam embaçados ---- */
.sem-valores :is(.kpi .val,.kpi .sub,.minikpi .val,.minikpi .sub,.bloco-nums b,.bloco-nums small,td.n,tfoot td,
  .simb-total,.simb-cab h2,.lc-l2,.pp-gitem-v,.ac-frase,.leitura p,.mapa-resumo,.prop,.ped-card,.msg-linha span,
  .cond b,.cond .val,.cond small,.frescor span,.pro-total b,.faixa-n,.mapas-nav-b small,.dist-recs,.prop-alerta,
  .gm-svg text,.gm-eixo,.gm-tip,.gm-resumo,.graf text,.acao .valor,.fila b,.simb-pend .sub-isbn,[title="capital protegido, não receita"],.vl){
  filter:blur(7px);user-select:none;transition:filter .15s}
.sem-valores :is(.gm-svg,.graf) :is(rect,path,circle,line,polyline){filter:blur(3px)}
@media print{.sem-valores *{filter:none!important}}

/* ---- menu em dois níveis: áreas (linha 1) e telas da área (linha 2) ---- */
#grupos{display:flex;gap:4px;flex:none}
#grupos button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--txt2);font:inherit;font-weight:600;font-size:14px;
  padding:8px 13px;border-radius:10px;cursor:pointer;white-space:nowrap}
#grupos button svg{display:none}
#grupos button:hover{background:var(--bg3);color:var(--txt)}
#grupos button[aria-current]{background:var(--acc);color:#fff}
#grupos button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.cab-l1 .busca-global{flex:1 1 260px;max-width:440px;min-width:150px;margin-left:auto}
.cab-l2{min-height:36px}
#nav{flex:0 1 auto;mask-image:none;padding:0;gap:0}
#nav button{background:none!important;color:var(--txt2);border-radius:0;padding:8px 13px 7px;border-bottom:3px solid transparent;font-weight:500}
#nav button:hover{color:var(--txt)}
#nav button[aria-current]{color:var(--txt);font-weight:650;border-bottom-color:var(--acc)}
#nav button.fora{display:none}
#nav button kbd{opacity:.45}
.cab-filtros{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.cab-l2 .frescor{margin-left:0}
.so-estreito{display:none}
@media(max-width:1100px){#grupos button{padding:8px 10px;font-size:13.5px} .cab-l2 .frescor{flex:1 1 100%}}
@media(max-width:820px){
  /* no celular as áreas descem para uma barra embaixo, ao alcance do polegar */
  #grupos{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--bg2);border-top:1px solid var(--linha);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:4px 4px calc(6px + env(safe-area-inset-bottom))}
  #grupos button{flex-direction:column;gap:2px;font-size:10.5px;padding:6px 0;min-height:46px;border-radius:8px;background:transparent!important;color:var(--txt2)}
  #grupos button svg{display:block}
  #grupos button[aria-current]{color:var(--acc)}
  #grupos button span{overflow:hidden;text-overflow:ellipsis;max-width:100%}
  main{padding-bottom:74px}
  .cab-l1 .busca-global{flex:1 1 auto;min-width:0;max-width:none;margin-left:0}
  .so-estreito{display:inline-flex}
  .cab-filtros{display:none;flex:1 1 100%}
  header.filtros-abertos .cab-filtros{display:flex}
  #nav{flex:1 1 100%;overflow-x:auto}
  header[data-grupo="hoje"] #nav{display:none}
  .cab-l2 .espaco{display:none}
}
/* ---- Hoje em três faixas ---- */
.hoje-faixa{margin-bottom:22px}
.hoje-rot{display:flex;align-items:baseline;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--txt2);margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--linha)}
.hoje-rot b{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--txt2);color:var(--bg);font-size:11px;letter-spacing:0}
.hoje-faixa.f1 .hoje-rot{color:var(--risco)} .hoje-faixa.f1 .hoje-rot b{background:var(--risco);color:#fff}
.hoje-rot small{text-transform:none;letter-spacing:0;font-weight:500;color:var(--txt3)}
.hoje-rot .lnk{text-transform:none;letter-spacing:0;font-size:12.5px}
.hoje-faixa .kpis{margin-bottom:0}
.hoje-faixa .simb-pend{margin-bottom:10px}
.rel-hoje .hoje-rot{color:var(--ok)} .rel-hoje .hoje-rot b{background:var(--ok);color:#fff}
.rh-grupo{margin-bottom:12px}
.rh-grupo h3{font-size:13px;font-weight:650;margin:4px 0 6px;color:var(--txt)} .rh-grupo h3 small{font-weight:400;color:var(--txt3)}
.acao.rh{border-left-color:var(--ok);padding-top:8px;padding-bottom:8px} .acao.rh.atrasado{border-left-color:var(--risco)}
.rh-acoes{display:flex;align-items:center;gap:10px}
.rh-mais{margin:2px 0 0}
@media (max-width:640px){.acao.rh{flex-wrap:wrap}.rh-acoes{margin-left:0;width:100%;justify-content:flex-end}}
.hoje-fila-cab{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.hoje-fila-cab .btn{margin:0}

@media(max-width:820px){
  #grupos button[data-grupo="relacionamento"] span{font-size:0}
  #grupos button[data-grupo="relacionamento"] span::after{content:"Relação";font-size:10.5px}
}

@media(max-width:820px){.quem{bottom:calc(72px + env(safe-area-inset-bottom))!important}}

.simb-dup{border-left-color:var(--alerta);display:block;font-size:12.5px}
.simb-dup-l{margin:5px 0}
.simb-dup small{color:var(--txt3)}

#grupos button kbd{font:10px var(--mono);opacity:.5;margin-left:1px}
#grupos button[aria-current] kbd{opacity:.8}
@media(max-width:1100px){#grupos button kbd{display:none}}

/* ---------- Acordo: cadastro, entrega e contatos ---------- */
.ac-form .pro-grupo{box-shadow:0 1px 2px rgba(0,0,0,.03)}
.ac-form .pro-grupo h2{align-items:center;flex-wrap:wrap}
.ac-form .pro-grupo h2 .espaco{flex:1}
.ac-form select{width:100%;background-color:var(--bg);border:1px solid var(--linha);border-radius:10px;padding:9px 11px;font-size:14px;min-height:40px}
.ac-form input:not([type=checkbox]):not([type=radio]),.ac-form select{min-height:40px}
.ac-form textarea{line-height:1.45}
.ac-form .com-botao .btn{border-radius:10px;padding:0 14px;font-size:13px}
.ac-form input:user-invalid{border-color:var(--risco)}
.ac-herda::before{content:"↳ ";color:var(--txt3)}
.ac-erro{color:var(--risco);font-weight:560}
.ac-certo{color:var(--ok);font-weight:700}
.ac-cidade-uf{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:12px}
.ac-cidade-uf label{display:flex;flex-direction:column;gap:6px;min-width:0}
.ac-mapa{align-self:flex-start;font-size:12px}
.ac-prog{background:var(--bg2);border:1px solid var(--linha);border-radius:14px;padding:12px 16px;margin-top:4px}
.ac-prog.completo{border-color:color-mix(in srgb,var(--ok) 40%,var(--linha));background:color-mix(in srgb,var(--ok) 6%,var(--bg2))}
.ac-prog-l1{display:flex;align-items:center;gap:14px;font-size:13.5px}
.ac-prog-l1 b{white-space:nowrap;font-variant-numeric:tabular-nums}
.ac-prog-barra{flex:1;height:6px;border-radius:99px;background:var(--bg3);overflow:hidden}
.ac-prog-barra i{display:block;height:100%;border-radius:99px;background:var(--acc);transition:width .3s}
.ac-prog.completo .ac-prog-barra i{background:var(--ok)}
.ac-prog small{color:var(--txt2);font-size:12px}
.ac-prog .pro-falta{margin:8px 0 0}
.ac-receita{background:color-mix(in srgb,var(--info) 7%,var(--bg));border:1px solid color-mix(in srgb,var(--info) 30%,var(--linha));border-radius:12px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;font-size:13.5px}
.ac-receita[hidden]{display:none}
.ac-receita-cab{display:flex;align-items:center;gap:8px}
.ac-receita-cab .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--info)}
.ac-receita .ac-atalhos{margin-top:4px}
.ac-salvar-cad{align-items:center;justify-content:flex-end;bottom:-16px}
.ac-estado{font-size:12.5px;color:var(--txt3);display:inline-flex;align-items:center;gap:7px;margin-right:auto}
.ac-estado::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok)}
.sujo .ac-estado{color:var(--alerta);font-weight:600}
.sujo .ac-estado::before{background:var(--alerta);box-shadow:0 0 0 4px color-mix(in srgb,var(--alerta) 22%,transparent)}
.ac-salvar-cad .btn kbd{font:inherit;font-size:11px;opacity:.75;margin-left:8px;border:1px solid rgba(255,255,255,.4);border-radius:5px;padding:1px 5px}
.ac-form:not(.sujo) .ac-salvar-cad .btn-prim{opacity:.6}
.ac-codigos{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ac-codigo{display:inline-flex;align-items:center;gap:4px;padding:6px 6px 6px 12px;border-radius:99px;background:color-mix(in srgb,var(--info) 12%,var(--bg));border:1px solid color-mix(in srgb,var(--info) 30%,var(--linha));font-family:var(--mono);font-size:13px;font-weight:600;color:var(--info)}
.ac-codigo button{border:0;background:none;color:inherit;cursor:pointer;width:22px;height:22px;border-radius:50%;font-size:15px;line-height:1}
.ac-codigo button:hover{background:color-mix(in srgb,var(--risco) 18%,transparent);color:var(--risco)}
.ac-cod-novo{max-width:300px;flex:1;min-width:220px}
.ac-contatos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.ac-contato{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--linha);border-radius:12px;background:var(--bg);min-width:0}
.ac-avatar{flex-shrink:0;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--acc) 14%,var(--bg2));color:var(--acc);font-weight:700;font-size:13px;letter-spacing:.02em}
.ac-ct{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:13.5px}
.ac-ct-vias{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:12.5px;color:var(--txt2)}
.ac-ct-vias .lnk{margin:0;overflow-wrap:anywhere}
.ac-novo-contato{margin-top:12px;border-top:1px dashed var(--linha);padding-top:10px}
.ac-novo-contato summary{cursor:pointer;font-weight:600;font-size:13px;color:var(--acc);list-style:none;display:inline-block;padding:4px 0}
.ac-novo-contato summary::-webkit-details-marker{display:none}
.ac-novo-contato[open] summary{margin-bottom:10px;color:var(--txt2)}
@media (max-width:640px){.ac-cidade-uf{grid-template-columns:minmax(0,1fr) 128px}.ac-salvar-cad{flex-direction:row;align-items:center}.ac-salvar-cad .btn kbd{display:none}}
.ac-form label:has(input:not(:placeholder-shown)) .ac-herda,.ac-form label:has(textarea:not(:placeholder-shown)) .ac-herda{display:none}

/* ---------- Mapa da conta: tabela de títulos e barra do pedido ---------- */
.tab-conta{overflow:visible;border-collapse:separate;border-spacing:0}
.tab-conta td{padding:7px 8px;vertical-align:middle;border-top:1px solid color-mix(in srgb,var(--linha) 60%,transparent)}
.tab-conta tbody tr:hover td{background-image:linear-gradient(color-mix(in srgb,var(--acc) 5%,transparent),color-mix(in srgb,var(--acc) 5%,transparent))}
.tab-conta thead th{position:sticky;z-index:4;background:var(--bg3)}
.tab-conta thead tr.grupos th{top:var(--prop-h,0px);background:var(--bg);height:22px;box-sizing:border-box}
.tab-conta thead tr:nth-child(2) th{top:calc(var(--prop-h,0px) + 22px);box-shadow:0 1px 0 var(--linha)}
.tab-conta td:first-child,.tab-conta th:first-child{width:34px;text-align:center}
.tab-conta td:first-child input{width:17px;height:17px}
.tab-conta .col-tit{min-width:260px}
.tab-conta .tit-cel{gap:10px}
.tab-conta .tit-txt{min-width:0}
.tab-conta .lnk.tit{font-size:13px;font-weight:560;color:var(--txt);text-align:left;margin:0;padding:0;line-height:1.3}
.tab-conta .lnk.tit:hover{color:var(--acc);text-decoration:underline}
.tab-conta .capa-mini{flex:none;height:40px;width:29px;max-width:29px;object-fit:cover;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.18)}
.tab-conta .capa-mini.vazia{box-shadow:none}
.giro{display:inline-flex;flex-direction:column;align-items:flex-end;gap:3px;font-variant-numeric:tabular-nums}
.giro i{display:block;width:44px;height:4px;border-radius:99px;background:color-mix(in srgb,var(--txt3) 25%,transparent);overflow:hidden}
.giro i b{display:block;height:100%;border-radius:99px;background:var(--alerta)}
.col-passo{min-width:150px;max-width:230px}
.passo-pq{display:block;color:var(--txt2);font-size:11px;line-height:1.3;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.passo-aud{font-size:11px;margin:2px 0 0;opacity:0;transition:opacity .12s}
.tab-conta tr:hover .passo-aud,.passo-aud:focus-visible{opacity:1}
@media (hover:none){.passo-aud{opacity:1}}
.prop-vazia{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.prop-vazia span{color:var(--txt2)}
.prop .btn .c{display:inline-block;margin-left:5px;padding:0 6px;border-radius:99px;font-size:11px;font-weight:700;background:color-mix(in srgb,currentColor 16%,transparent)}
@media print{.tab-conta thead th{position:static}.giro i{display:none}.passo-pq{display:block;-webkit-line-clamp:unset}}
@media (max-width:760px){.tab-conta thead th{position:static}}

/* ---------- Mapa da conta: itens do pedido (painel lateral) ---------- */
.mapa-tela.com-painel{padding-right:462px}
.prop-painel{position:fixed;top:0;right:0;bottom:0;width:440px;max-width:100vw;z-index:8;display:flex;flex-direction:column;background:var(--bg2);border-left:1px solid var(--linha);box-shadow:-8px 0 28px rgba(0,0,0,.10)}
.prop-painel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 18px 10px;background:none;border:0;position:static;height:auto}
.prop-painel>header small{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--acc)}
.prop-painel>header h3{margin:2px 0 0;font-size:17px;letter-spacing:-.01em}
.ppi-busca{padding:0 18px 10px;position:relative}
.ppi-busca input{width:100%;min-height:40px;border-radius:10px;padding:9px 12px;font-size:14px;background:var(--bg)}
.ppi-resultados{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.ppi-resultados:empty{display:none}
.ppi-lanc{display:flex;flex-direction:column;gap:2px;margin-top:8px}
.ppi-lanc>small{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--txt3);padding:0 8px 2px}
.ppi-lanc .ppi-res:first-of-type{background:none}
.ppi-resultados:not(:empty)~.ppi-lanc{display:none}
.ppi-res{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid transparent;background:none;border-radius:10px;padding:6px 8px;cursor:pointer;color:var(--txt);font:inherit}
.ppi-res:hover,.ppi-res:focus-visible{background:color-mix(in srgb,var(--acc) 7%,var(--bg));border-color:color-mix(in srgb,var(--acc) 30%,var(--linha));outline:none}
.ppi-res:first-child{background:color-mix(in srgb,var(--acc) 5%,var(--bg))}
.ppi-res span{flex:1;min-width:0;display:flex;flex-direction:column}
.ppi-res b,.ppi-txt b{font-weight:600;font-size:13px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ppi-res small,.ppi-txt small{color:var(--txt3);font-size:11px}
.ppi-res i{font-style:normal;font-size:12px;font-weight:650;color:var(--acc);white-space:nowrap}
.ppi-nada{color:var(--txt3);font-size:12.5px;padding:6px 2px}
.prop-painel .capa-mini{flex:none;height:44px;width:32px;max-width:32px;object-fit:cover;border-radius:3px;margin:0;box-shadow:0 1px 2px rgba(0,0,0,.18)}
.prop-painel .capa-mini.vazia{box-shadow:none}
.ppi-lista{list-style:none;margin:0;padding:0 10px;flex:1;overflow:auto;border-top:1px solid var(--linha)}
.ppi-lista li{display:grid;grid-template-columns:32px minmax(0,1fr) auto 84px 26px;gap:10px;align-items:center;padding:10px 8px;border-bottom:1px solid color-mix(in srgb,var(--linha) 60%,transparent)}
.ppi-txt{min-width:0;display:flex;flex-direction:column;gap:2px}
.ppi-qtd{display:inline-flex;align-items:center;border:1px solid var(--campo-borda);border-radius:10px;overflow:hidden;background:var(--bg)}
.ppi-qtd button{width:30px;height:34px;border:0;background:none;cursor:pointer;font-size:17px;line-height:1;color:var(--txt2)}
.ppi-qtd button:hover{background:var(--bg3);color:var(--acc)}
.ppi-qtd input.qtd{width:46px;height:34px;min-height:0;border:0;border-radius:0;background:none;text-align:center;padding:0;font-size:14px;font-weight:650;box-shadow:none!important;-moz-appearance:textfield;appearance:textfield}
.ppi-qtd input.qtd::-webkit-outer-spin-button,.ppi-qtd input.qtd::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ppi-total{text-align:right;font-variant-numeric:tabular-nums;font-size:13px}
.ppi-rm{width:26px;height:26px;border:0;border-radius:50%;background:none;color:var(--txt3);cursor:pointer;font-size:17px;line-height:1}
.ppi-rm:hover{background:color-mix(in srgb,var(--risco) 14%,transparent);color:var(--risco)}
.ppi-vazio{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;text-align:center;padding:24px 36px;color:var(--txt2);font-size:13px;border-top:1px solid var(--linha)}
.ppi-vazio b{color:var(--txt);font-size:14px}
.prop-painel>footer{border-top:1px solid var(--linha);padding:12px 18px 16px;background:var(--bg)}
.ppi-totais{display:flex;flex-direction:column;gap:3px;font-size:13px;font-variant-numeric:tabular-nums}
.ppi-totais div{display:flex;justify-content:space-between;gap:12px;color:var(--txt2)}
.ppi-totais .ppi-liq,.ppi-totais div b{color:var(--txt)}
.ppi-totais .ppi-liq{font-size:16px;font-weight:650;margin-top:3px}
.ppi-totais small{color:var(--txt3);font-size:11px}
.ppi-acoes{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ppi-acoes .btn{margin:0}
.ppi-acoes .btn-prim{margin-left:auto}
@media (max-width:1100px){.mapa-tela.com-painel{padding-right:22px}}
@media (max-width:640px){.prop-painel{width:100vw}.ppi-lista li{grid-template-columns:32px minmax(0,1fr) auto 26px}.ppi-total{grid-column:2/4;text-align:left}}
/* a proposta em PDF: só existe durante a impressão */
.prop-doc{display:none}
@media print{
  body[data-imprimir="proposta"]>*:not(.prop-doc){display:none!important}
  body[data-imprimir="proposta"] .prop-doc{display:block;color:#000;font-size:10.5pt;font-family:inherit}
  .pd-cab{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #000;padding-bottom:8px;margin-bottom:12px}
  .pd-cab h1{font-size:16pt;margin:0;text-align:right} .pd-cab div div{text-align:right;color:#444}
  .pd-conta{display:flex;flex-direction:column;gap:2px;margin-bottom:12px} .pd-conta b{font-size:12.5pt} .pd-conta span{color:#333}
  .prop-doc table{width:100%;border-collapse:collapse;font-size:10pt}
  .prop-doc th{text-align:left;font-size:8pt;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #000;padding:4px 6px;background:none;color:#000}
  .prop-doc td{padding:5px 6px;border-bottom:1px solid #ccc;vertical-align:top}
  .prop-doc .n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
  .pd-isbn{font-family:var(--mono);font-size:8.5pt;white-space:nowrap}
  .prop-doc tr{break-inside:avoid}
  .pd-totais{margin:12px 0 0 auto;width:62%;display:flex;flex-direction:column;gap:3px;break-inside:avoid}
  .pd-totais div{display:flex;justify-content:space-between;gap:16px}
  .pd-liq{font-size:13pt;font-weight:700;border-top:1px solid #000;padding-top:4px;margin-top:2px}
  .pd-nota{margin-top:18px;color:#555;font-size:8.5pt}
}
.prop-painel>header{flex-wrap:nowrap}.prop-painel>header>div{flex:1;min-width:0}

/* ---------- Ficha do título: estoque por depósito ---------- */
.est-deps{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:6px 0 8px}
.est-dep{background:var(--bg2);border:1px solid var(--linha);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:1px;min-width:0}
.est-dep span{font-size:11.5px;font-weight:600;color:var(--txt2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.est-dep b{font-size:20px;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.est-dep small{font-size:11px;color:var(--txt3)}
.est-dep.total{background:color-mix(in srgb,var(--acc) 7%,var(--bg2));border-color:color-mix(in srgb,var(--acc) 30%,var(--linha))}
.est-dep.total span{color:var(--acc)}
.est-dep.neg b{color:var(--risco)}
.est-dep.fora{opacity:.7;border-style:dashed}
.est-fis{margin-top:0}
.est-dep span i{font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:1px 5px;border-radius:99px;background:var(--bg3);color:var(--txt3);margin-left:3px}
.est-dep.fonte{border-color:color-mix(in srgb,var(--ok) 40%,var(--linha))}
.est-dep.fonte span i{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.est-verif{border:1px solid var(--linha);border-radius:12px;padding:9px 12px;margin:0 0 10px;font-size:12.5px;display:flex;flex-direction:column;gap:3px;background:var(--bg2)}
.est-verif div{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline}
.est-verif span,.est-verif small{color:var(--txt2)}
.est-verif.difere{border-color:color-mix(in srgb,var(--alerta) 45%,var(--linha));background:color-mix(in srgb,var(--alerta) 7%,var(--bg2))}
.est-verif.difere b{color:var(--alerta)}
.est-verif.confere b{color:var(--ok)}

/* ---------- Distribuidoras: prévia do PDF ---------- */
.pdf-diag{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.pdf-diag-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
.pdf-diag-kpis div{background:var(--bg2);border:1px solid var(--linha);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column}
.pdf-diag-kpis b{font-size:19px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.pdf-diag-kpis span{font-size:11px;color:var(--txt2)}
.pdf-diag-kpis .alerta{border-color:color-mix(in srgb,var(--alerta) 50%,var(--linha))} .pdf-diag-kpis .alerta b{color:var(--alerta)}
.pdf-diag-kpis .risco{border-color:color-mix(in srgb,var(--risco) 50%,var(--linha))} .pdf-diag-kpis .risco b{color:var(--risco)}
.pdf-diag details{background:var(--bg2);border:1px solid var(--linha);border-radius:10px;padding:8px 12px}
.pdf-diag summary{cursor:pointer;font-weight:600;font-size:12.5px}
.pdf-diag details table{margin-top:8px}
.pdf-diag ul{margin:6px 0;padding-left:18px;font-size:12.5px}

/* ---------- Pedido: pagamento ---------- */
.ped-pag{background:var(--bg2);border:1px solid var(--linha);border-radius:12px;padding:10px 14px;font-size:13.5px;max-width:460px}
.ped-pag>div{display:flex;align-items:center;gap:8px}
.ped-pag-total{margin-left:auto;font-weight:650;font-variant-numeric:tabular-nums}
.ped-pag ol{list-style:none;margin:8px 0 0;padding:8px 0 0;border-top:1px dashed var(--linha);display:flex;flex-direction:column;gap:3px}
.ped-pag li{display:flex;justify-content:space-between;gap:12px;color:var(--txt2);font-variant-numeric:tabular-nums}
.ped-pag li b{color:var(--txt);font-weight:560}

/* linha do tempo da conta: filtros e busca na mesma faixa */
.lc-topo{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;margin-bottom:8px}
.lc-topo .filtros{margin:0}
.lc-busca{display:flex;align-items:center;gap:8px;flex:1 1 240px;max-width:380px}
.lc-busca input{flex:1;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 10px;color:var(--txt);font:inherit;font-size:13px}
.lc-busca input:focus{outline:2px solid color-mix(in srgb,var(--acc) 40%,transparent);border-color:var(--acc)}
.lc-busca small{color:var(--txt3);white-space:nowrap;font-variant-numeric:tabular-nums}
.lc-ev[hidden],.lc-mes[hidden]{display:none}

/* cobrança em lote: o assunto ajustável, com a prévia de um parceiro */
.ciclo-assunto{display:flex;flex-direction:column;gap:4px;margin:6px 0 12px;font-size:12px;color:var(--txt3);text-transform:uppercase;letter-spacing:.04em}
.ciclo-assunto input{text-transform:none;letter-spacing:0;font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 10px;max-width:640px}
.ciclo-assunto small{text-transform:none;letter-spacing:0;font-size:12px}
.ciclo-assunto small b{color:var(--txt2);font-weight:600}

/* pedidos: B2B (padrão) × loja online / pessoa física, e os parados no ERP à parte */
.ped-segs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.ped-seg{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);color:var(--txt);cursor:pointer;font:inherit;text-align:left;min-width:180px}
.ped-seg b{font-size:14px}
.ped-seg span{font-size:12px;color:var(--txt3)}
.ped-seg:hover{border-color:var(--acc2)}
.ped-seg[aria-pressed="true"]{border-color:var(--acc);box-shadow:inset 0 0 0 1px var(--acc);background:color-mix(in srgb,var(--acc) 7%,var(--bg2))}
.ped-seg[aria-pressed="true"] span{color:var(--acc)}
.ped-b2c{padding:12px 14px;margin-bottom:12px}
.ped-b2c td small{color:var(--txt3)}
.ped-parados{padding:10px 14px;margin-top:14px}
.ped-parados summary{cursor:pointer;font-size:13px;color:var(--txt2);list-style-position:inside}
.ped-parados summary b{color:var(--txt)}
.ped-parados summary small{color:var(--txt3)}
.ped-parados[open] summary{margin-bottom:10px}
@media (max-width:640px){.ped-seg{min-width:0;flex:1 1 140px}}

/* cancelar pedido: a folha de confirmação no próprio painel */
.cancelar-folha{border:1px solid color-mix(in srgb,var(--risco) 45%,var(--linha));background:color-mix(in srgb,var(--risco) 5%,var(--bg2));border-radius:var(--raio);padding:14px 16px;margin:10px 0 14px;display:flex;flex-direction:column;gap:10px;animation:cf-entra .16s ease-out}
@keyframes cf-entra{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.cancelar-folha .cf-tit{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.cancelar-folha .cf-tit b{font-size:15px}
.cancelar-folha .cf-tit span{color:var(--txt3);font-size:13px}
.cancelar-folha .cf-rot{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.cancelar-folha .cf-motivos{display:flex;flex-wrap:wrap;gap:6px}
.cancelar-folha .cf-motivos .chip[aria-pressed="true"]{background:var(--risco);border-color:var(--risco);color:#fff}
.cancelar-folha textarea{width:100%;box-sizing:border-box;font:inherit;font-size:13px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 10px;resize:vertical}
.cancelar-folha .cf-aviso{font-size:13px;padding:8px 10px;border-radius:var(--raio);background:color-mix(in srgb,var(--alerta) 12%,transparent);border-left:3px solid var(--alerta)}
.cancelar-folha .cf-depois{margin:0;font-size:12px;color:var(--txt2)}
.cancelar-folha .cf-acoes{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.btn-perigo{background:var(--risco);border-color:var(--risco);color:#fff;font-weight:600}
/* o .btn:hover clareia o fundo; botão cheio mantém a cor (senão fica branco no branco) */
.btn-perigo:hover:not(:disabled){background:var(--risco);border-color:var(--risco);color:#fff;filter:brightness(1.08)}
.btn-perigo:disabled{opacity:.45;cursor:not-allowed}
.aviso .aviso-acao{margin-left:10px;background:none;border:1px solid currentColor;border-radius:999px;padding:2px 10px;color:inherit;font:inherit;font-weight:600;cursor:pointer}

/* ====================================================== funil de negócios */
.fn-abas{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:10px;scrollbar-width:thin}
.fn-aba{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);color:var(--txt);font:inherit;cursor:pointer;text-align:left;min-width:150px}
.fn-aba b{font-size:14px}.fn-aba span{font-size:12px;color:var(--txt3)}
.fn-aba:hover{border-color:var(--acc2)}
.fn-aba[aria-pressed="true"]{border-color:var(--acc);box-shadow:inset 0 0 0 1px var(--acc);background:color-mix(in srgb,var(--acc) 7%,var(--bg2))}
.fn-aba[aria-pressed="true"] span{color:var(--acc)}
.fn-barra{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-bottom:12px}
.fn-barra .filtros{margin:0}.fn-barra .espaco{flex:1}
.fn-meus{display:flex;gap:6px;align-items:center;font-size:13px;color:var(--txt2)}
.fn-resumo{font-size:13px;color:var(--txt2)}.fn-resumo .risco{color:var(--risco)}
.fn-quadro{display:flex;gap:12px;overflow-x:auto;align-items:flex-start;padding:2px 2px 12px;scroll-snap-type:x proximity;min-height:360px}
.fn-col{flex:0 0 272px;scroll-snap-align:start;background:var(--bg3);border:1px solid var(--linha);border-radius:calc(var(--raio) + 2px);display:flex;flex-direction:column;max-height:calc(100vh - 250px);transition:border-color .12s,box-shadow .12s}
.fn-col.alvo,.kb-col.alvo{border-color:var(--acc);box-shadow:0 0 0 2px color-mix(in srgb,var(--acc) 25%,transparent)}
.fn-col>header{display:flex;justify-content:space-between;gap:8px;align-items:baseline;padding:10px 12px 8px;border-bottom:1px solid var(--linha)}
.fn-col>header b{font-size:13px}.fn-col>header span{font-size:12px;color:var(--txt3);white-space:nowrap;font-variant-numeric:tabular-nums}
.fn-lista{display:flex;flex-direction:column;gap:8px;padding:10px;overflow-y:auto;min-height:56px;flex:1}
.fn-card{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 10px 8px;box-shadow:var(--sombra);cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-x pan-y;display:flex;flex-direction:column;gap:3px;transition:box-shadow .12s,transform .12s}
.fn-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.08)}
.fn-card:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.fn-card.atrasado{border-left:3px solid var(--risco)}
.fn-card.parado:not(.atrasado){border-left:3px solid var(--alerta)}
.fn-c-tit{font-weight:600;font-size:13.5px;line-height:1.3}
.fn-c-conta{font-size:12px;color:var(--txt2)}
.fn-c-val{font-size:12.5px;color:var(--txt);font-variant-numeric:tabular-nums}
.fn-c-prox{font-size:12px;color:var(--txt2)}
.fn-c-prox.atrasado{color:var(--risco)}.fn-c-prox.vazio{color:var(--txt3);font-style:italic}
.fn-c-pe{display:flex;justify-content:space-between;align-items:center;margin-top:2px}
.fn-dias{font-size:11px;color:var(--txt3);font-variant-numeric:tabular-nums}
.fn-av{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--acc) 18%,var(--bg3));color:var(--acc);font-size:10px;font-weight:700}
.fn-add{padding:0 10px 10px}
.fn-add input{width:100%;box-sizing:border-box;font:inherit;font-size:13px;color:var(--txt);background:transparent;border:1px dashed var(--linha);border-radius:var(--raio);padding:7px 9px}
.fn-add input:focus{background:var(--bg2);border-style:solid;border-color:var(--acc);outline:none}
.fn-lugar{border:2px dashed color-mix(in srgb,var(--acc) 55%,transparent);border-radius:var(--raio);background:color-mix(in srgb,var(--acc) 6%,transparent)}
.fn-origem{display:none}
.fn-fantasma{position:fixed;left:0;top:0;z-index:10000;pointer-events:none;box-shadow:0 12px 28px rgba(0,0,0,.22);opacity:.96;cursor:grabbing}
body.fn-arrastando{cursor:grabbing;user-select:none;-webkit-user-select:none}
.fn-fim{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:12px;z-index:9998;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease-out}
/* aparece já no lugar (só a opacidade anima): a zona é alvo desde o primeiro movimento */
body.fn-arrastando .fn-fim{opacity:1;visibility:visible;pointer-events:auto}
.fn-fim>div{min-width:170px;padding:16px 22px;border-radius:12px;font-weight:700;font-size:15px;text-align:center;border:2px dashed;background:var(--bg2);box-shadow:var(--sombra)}
.fn-fim .z-ok{color:var(--ok);border-color:var(--ok)}
.fn-fim .z-risco{color:var(--risco);border-color:var(--risco)}
.fn-fim .z-alerta{color:var(--alerta);border-color:var(--alerta)}
.fn-fim .z-neutro{color:var(--txt2);border-color:var(--txt3)}
.fn-fim [data-kb-zona].sobre{color:#fff;border-style:solid;transform:scale(1.06)}
.fn-fim .z-ok.sobre{background:var(--ok)}.fn-fim .z-risco.sobre{background:var(--risco)}.fn-fim .z-alerta.sobre{background:var(--alerta)}.fn-fim .z-neutro.sobre{background:var(--txt2)}
/* painel do negócio */
.fn-stepper button.step{background:none;border:0;font:inherit;color:inherit;cursor:pointer;padding:0}
.fn-stepper button.step:disabled{cursor:default}
.fn-stepper button.step:not(:disabled):hover span{color:var(--acc);text-decoration:underline}
.op-fechar{display:flex;gap:8px;align-items:center;margin:10px 0 14px}.op-fechar .espaco{flex:1}
.btn-ok{background:var(--ok);border-color:var(--ok);color:#fff;font-weight:600}
.btn-ok:hover:not(:disabled){background:var(--ok);border-color:var(--ok);color:#fff;filter:brightness(1.08)}
.btn-perigo-suave{color:var(--risco);border-color:color-mix(in srgb,var(--risco) 50%,var(--linha))}
.op-form{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:6px 0 12px}
.op-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt3)}
.op-form label.larga{grid-column:1/-1}
.op-form input,.op-form select,.op-form textarea{font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 9px}
.op-form .op-salvo{grid-column:1/-1;color:var(--ok);min-height:1em}
.op-atalhos{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.cancelar-folha.ganho{border-color:color-mix(in srgb,var(--ok) 45%,var(--linha));background:color-mix(in srgb,var(--ok) 6%,var(--bg2))}
.cancelar-folha label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt3)}
.cancelar-folha input[type="number"]{font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 9px;max-width:200px}
.fn-etapas{display:flex;flex-direction:column;gap:6px;padding-left:22px;margin:0 0 8px}
.fn-etapas li{display:flex;gap:8px;align-items:center}
.fn-etapas li input{flex:1;font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 9px}
.fn-etapas li small{color:var(--txt3);min-width:70px;font-size:12px}
@media (max-width:640px){.fn-col{flex-basis:82vw}.op-form{grid-template-columns:1fr}.fn-fim>div{min-width:130px;padding:14px 16px}}

.crm-negocios{display:flex;flex-direction:column;gap:4px;margin:10px 0}
.crm-negocios .rot{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.crm-negocios .msg-linha{cursor:pointer}
.crm-negocios .btn-texto{align-self:flex-start}

/* ajuda: "como fazer…" em passos curtos */
#btnAjuda{position:relative}
#btnAjuda .ajuda-novo{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 2px var(--bg2)}
.aj-corpo{display:flex;flex-direction:column;gap:12px}
.aj-busca{font:inherit;font-size:15px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:10px 12px;position:sticky;top:0;z-index:1}
.aj-busca:focus{outline:2px solid color-mix(in srgb,var(--acc) 35%,transparent);border-color:var(--acc)}
.aj-grupo h2{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);margin:14px 0 6px;font-weight:600}
.aj-aqui h2{color:var(--acc)}
.aj-tema{border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);margin-bottom:6px}
.aj-tema summary{cursor:pointer;padding:10px 12px;font-weight:600;font-size:14px;list-style:none;display:flex;gap:8px;align-items:baseline}
.aj-tema summary::-webkit-details-marker{display:none}
.aj-tema summary::before{content:'›';color:var(--txt3);transition:transform .12s;display:inline-block;width:10px}
.aj-tema[open] summary::before{transform:rotate(90deg)}
.aj-tema[open] summary{border-bottom:1px solid var(--linha)}
.aj-tema ol{margin:10px 14px 8px 32px;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13.5px;line-height:1.5}
.aj-tema .aj-dica{margin:0 14px 10px;font-size:12.5px;color:var(--txt2);background:var(--bg3);border-radius:var(--raio);padding:7px 10px}
.aj-tema .btn-texto{margin:0 12px 10px}
.aj-corpo kbd,.aj-atalhos kbd{font:600 11px/1 var(--mono);padding:3px 6px;border:1px solid var(--linha);border-bottom-width:2px;border-radius:5px;background:var(--bg3);color:var(--txt)}
.aj-atalhos{width:100%;border-collapse:collapse;font-size:13px}
.aj-atalhos td{padding:5px 4px;border-bottom:1px solid var(--linha);vertical-align:top}
.aj-atalhos td:first-child{white-space:nowrap;width:1%;padding-right:12px}
.aj-novidades{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px}
.aj-novidades li{display:flex;gap:10px}
.aj-novidades li>span{color:var(--txt3);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:58px}

/* ====================================================== divulgação: pessoas e envios */
.dv-abas{flex-wrap:wrap;align-items:center}
.dv-abas-sep{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);margin:0 2px 0 14px}
.dv-vis{display:inline-flex;gap:4px}
.dv-quadro .fn-col{flex-basis:258px}
.dv-col-dica{margin:0;padding:6px 12px 0;font-size:11.5px;color:var(--txt3)}
.dv-col-add{margin:0 10px 10px;font:inherit;font-size:13px;color:var(--acc);background:transparent;border:1px dashed var(--linha);border-radius:var(--raio);padding:7px 9px;cursor:pointer;text-align:left}
.dv-col-add:hover{border-color:var(--acc);background:var(--bg2)}
.dv-fc-top{display:flex;gap:9px;align-items:center}
.dv-av{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:11px;font-weight:700;color:#fff;background:var(--txt3)}
.dv-av-ig{background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af)}
.dv-av-tt{background:#111}.dv-av-yt{background:#e62117}
.dv-fc-temas{display:flex;flex-wrap:wrap;gap:4px}
.dv-fc-temas span{font-size:11px;padding:1px 7px;border-radius:999px;background:var(--bg3);color:var(--txt2)}
.dv-fora{margin-top:10px;padding:8px 12px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2)}
.dv-fora summary{cursor:pointer;font-size:13px;color:var(--txt2)}
.dv-fora-l{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.dv-vazio{text-align:center;padding:40px 20px;border:1px dashed var(--linha);border-radius:12px;background:var(--bg2)}
.dv-vazio h3{margin:0 0 6px}.dv-vazio p{color:var(--txt2);max-width:520px;margin:0 auto 14px}
/* cadastro rápido e formulários curtos */
.dv-novo-f,[data-div-env-rap],[data-div-pubf]{display:flex;flex-direction:column;gap:10px}
.dv-novo-f label,[data-div-env-rap] label,[data-div-pubf] label,.dv-contato label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt3)}
.dv-novo-f input,.dv-novo-f textarea,[data-div-env-rap] select,[data-div-env-rap] input,[data-div-pubf] input,.dv-contato textarea,.dv-contato input{font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:8px 10px}
.dv-link input{font-size:15px;padding:11px 12px;border-color:color-mix(in srgb,var(--acc) 40%,var(--linha))}
.dv-dup .dv-ok{color:var(--ok)}
.dv-linha2{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.dv-mais summary{cursor:pointer;font-size:13px;color:var(--txt2)}
.dv-mais[open]{display:flex;flex-direction:column;gap:10px}
.cf-motivos .chip[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#fff}
.cancelar-folha .cf-motivos .chip[aria-pressed="true"]{background:var(--risco);border-color:var(--risco)}
/* ficha da pessoa */
.dv-acoes-r{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}
.dv-acoes-r .espaco{flex:1}
.dv-contato{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg3);margin-bottom:10px}
.dv-sobre{font-size:13px;color:var(--txt2);line-height:1.55;margin:8px 0}

/* ====================================================== ficha do formador */
.dvf-cab{display:flex;gap:14px;align-items:flex-start}
.dvf-av{width:54px;height:54px;font-size:17px;flex:0 0 auto}
.dvf-id{flex:1;min-width:0}
.dvf-id h3{margin:0 0 2px;font-size:19px}
.dvf-sub{font-size:13px;color:var(--txt2)}
.dvf-redes{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.dvf-resp{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:13px;color:var(--txt2)}
.dvf-resp label{display:flex;align-items:center;gap:6px} .dvf-resp select{font-size:13px;padding:3px 6px;max-width:220px}
button.dvf-rede{cursor:pointer;font-family:inherit}
.dvf-rede{font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--linha);background:var(--bg2);color:var(--txt);text-decoration:none}
.dvf-rede:hover{border-color:var(--acc)}
.dvf-instagram{border-color:color-mix(in srgb,#dd2a7b 35%,var(--linha))}.dvf-tiktok{border-color:color-mix(in srgb,#111 30%,var(--linha))}
.dvf-youtube{border-color:color-mix(in srgb,#e62117 35%,var(--linha))}.dvf-wa{border-color:color-mix(in srgb,#25d366 50%,var(--linha))}
.dvf-nav{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.dvf-nav small{color:var(--txt3);font-variant-numeric:tabular-nums;white-space:nowrap}
.dvf-nav .btn-texto{font-size:20px;line-height:1;padding:2px 8px}
.dvf-nav .btn-texto:disabled{opacity:.3}
.dvf{display:flex;flex-direction:column;gap:12px}
/* relação: a trilha de seis passos */
.dvf-rel{display:flex;flex-direction:column;gap:8px}
.dvf-trilho{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.dvf-seg{font:inherit;border:0;background:none;padding:0;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:5px;color:var(--txt3)}
.dvf-seg::before{content:'';height:6px;border-radius:3px;background:var(--bg3);border:1px solid var(--linha)}
.dvf-seg span{font-size:11px;line-height:1.2}
.dvf-seg.feito::before{background:color-mix(in srgb,var(--ok) 70%,transparent);border-color:transparent}
.dvf-seg.atual::before{background:var(--acc);border-color:transparent}
.dvf-seg.atual span{color:var(--txt);font-weight:600}
.dvf-seg:not(:disabled):hover span{color:var(--acc)}
.dvf-seg:disabled{cursor:default}
.dvf-rel-txt{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:13px}
.dvf-rel-txt .espaco{flex:1}
.btn-mini{font-size:12px;padding:4px 10px}
/* próximo passo */
.dvf-passo{border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.dvf-passo.atrasado{border-color:color-mix(in srgb,var(--risco) 50%,var(--linha));background:color-mix(in srgb,var(--risco) 5%,var(--bg2))}
.dvf-passo-l{display:flex;gap:10px;align-items:center}
.dvf-passo-l input{flex:1;font:inherit;font-size:15px;color:var(--txt);background:transparent;border:0;border-bottom:1px dashed var(--linha);padding:4px 2px}
.dvf-passo-l input:focus{outline:none;border-bottom-color:var(--acc)}
.dvf-feito{flex:0 0 auto;width:28px;height:28px;border-radius:50%;border:2px solid var(--ok);background:transparent;color:var(--ok);font-weight:700;cursor:pointer}
.dvf-feito:hover{background:var(--ok);color:#fff}
.dvf-feito.off{display:grid;place-items:center;border-color:var(--linha);color:var(--txt3);cursor:default}
.dvf-passo-d{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-left:38px}
.dvf-passo-d input{font:inherit;font-size:13px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 8px}
.dvf-passo-d .chip{font-size:12px}
/* as três ações */
.dvf-acoes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.dvf-acao{font:inherit;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);cursor:pointer;text-align:left;color:var(--txt)}
.dvf-acao span{font-size:18px}.dvf-acao b{font-size:13.5px}.dvf-acao small{font-size:11.5px;color:var(--txt3)}
.dvf-acao:hover{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc) inset}
.dvf-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:1px;background:var(--linha);border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden}
/* min-width:0 e quebra: o número largo (R$ 12.345, 1,2 mi) desce de linha em vez de ser cortado */
.dvf-kpis div{background:var(--bg2);padding:8px 10px;display:flex;flex-direction:column;min-width:0}
.dvf-kpis b{font-size:clamp(14px,2.2vw,16px);font-variant-numeric:tabular-nums;line-height:1.25;overflow-wrap:anywhere}.dvf-kpis small{font-size:11px;color:var(--txt3);overflow-wrap:anywhere}
.dvf-temas{display:flex;flex-wrap:wrap;gap:5px}
.dvf-temas span{font-size:12px;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--acc) 10%,var(--bg3));color:var(--txt2)}
/* abas da ficha */
.dvf-abas{display:flex;gap:2px;border-bottom:1px solid var(--linha);margin-top:4px}
.dvf-abas button{font:inherit;font-size:13px;background:none;border:0;border-bottom:2px solid transparent;padding:8px 12px;color:var(--txt2);cursor:pointer}
.dvf-abas button[aria-selected="true"]{color:var(--txt);border-bottom-color:var(--acc);font-weight:600}
.dvf-abas .c{font-size:11px;color:var(--txt3);margin-left:3px}
.dvf-composer{display:flex;gap:8px;align-items:flex-end;margin-bottom:10px}
.dvf-composer textarea{flex:1;font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:8px 10px;resize:vertical}
.dvf-composer textarea:focus{outline:2px solid color-mix(in srgb,var(--acc) 30%,transparent);border-color:var(--acc)}
.dvf-tempo{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.dvf-ev{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--linha)}
.dvf-ev:last-child{border-bottom:0}
.dvf-ico{flex:0 0 auto;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;background:var(--bg3)}
.dvf-t-contato .dvf-ico,.dvf-t-nota .dvf-ico{background:color-mix(in srgb,var(--info) 14%,var(--bg3))}
.dvf-t-pub .dvf-ico{background:color-mix(in srgb,var(--ok) 18%,var(--bg3))}
.dvf-t-envio .dvf-ico{background:color-mix(in srgb,var(--acc) 14%,var(--bg3))}
.dvf-ev-txt{font-size:13.5px;line-height:1.45}
.dvf-ev small{font-size:11.5px;color:var(--txt3)}
.dvf-envios{display:flex;flex-direction:column;gap:6px}
.dvf-envio{font:inherit;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;text-align:left;padding:9px 12px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);color:var(--txt);cursor:pointer}
.dvf-envio:hover{border-color:var(--acc)}.dvf-envio small{width:100%;color:var(--txt3);font-size:12px}
.dvf-dados textarea{font:inherit;font-size:14px;color:var(--txt);background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 9px}
.dvf-arq{display:flex;justify-content:flex-end}
@media (max-width:640px){.dvf-acoes{grid-template-columns:1fr}.dvf-kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.dvf-trilho span{font-size:9.5px}.dvf-passo-d{padding-left:0}.dvf-cab{flex-wrap:wrap}}

/* ---------------------------------------------------------------- revisão do parceiro */
.rev-barra .rev-resp{display:flex;flex-direction:column;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;gap:2px}
.rev-barra .rev-resp input{text-transform:none;letter-spacing:0;font-weight:400;font-size:13px;width:170px}
.rev-grade{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:22px;align-items:start;margin-top:14px}
@media (max-width:1000px){.rev-grade{grid-template-columns:minmax(0,1fr)}}
.rev-itens{display:flex;flex-direction:column;gap:18px;min-width:0}
.rev-grupo{display:flex;flex-direction:column;gap:8px}
.rev-grupo h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--acc);margin:0}
.rev-grupo h2 small{color:var(--txt3);font-weight:400;letter-spacing:0}
.rev-item{background:var(--bg2);border:1px solid var(--linha);border-left:3px solid var(--linha);border-radius:var(--raio);padding:10px 13px;display:flex;flex-direction:column;gap:7px}
.rev-item[data-tom="ok"]{border-left-color:var(--ok)}
.rev-item[data-tom="alerta"]{border-left-color:var(--alerta)}
.rev-item[data-tom="risco"]{border-left-color:var(--risco)}
.rev-item p{margin:0;max-width:78ch}
.rev-item-cab{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.rev-efeito{color:var(--txt3);font-variant-numeric:tabular-nums}
.rev-tits{margin:0;padding-left:18px;font-size:12.5px;color:var(--txt2)}
.rev-ops{display:flex;gap:6px;flex-wrap:wrap}
.rev-ops .chip[aria-pressed="true"][data-tom="ok"]{background:var(--ok);border-color:var(--ok)}
.rev-ops .chip[aria-pressed="true"][data-tom="alerta"]{background:var(--alerta);border-color:var(--alerta)}
.rev-ops .chip[aria-pressed="true"][data-tom="risco"]{background:var(--risco);border-color:var(--risco)}
.rev-ops .chip:disabled{cursor:default;opacity:.7}
.rev-linha{display:flex;gap:8px}
.rev-linha textarea{flex:1;min-height:32px;resize:vertical;font-size:12.5px}
.rev-linha input{width:140px;font-size:12.5px}
.rev-quem{font-size:11.5px;color:var(--txt3)}
.rev-lado{position:sticky;top:76px;display:flex;flex-direction:column;gap:14px;min-width:0;max-height:calc(100vh - 96px);overflow:auto}
@media (max-width:1000px){.rev-lado{position:static;max-height:none;overflow:visible}}
.rev-caixa{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:13px 14px;display:flex;flex-direction:column;gap:8px}
.rev-caixa h2{font-size:14px;margin:0}
.rev-caixa p{margin:0}
.rev-email{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:12.5px;line-height:1.5;background:var(--bg);border:1px solid var(--linha);border-radius:var(--raio);
  padding:10px;margin:0}
.rev-acoes{display:flex;gap:8px;flex-wrap:wrap}
.rev-acoes .btn{margin:0}
.rev-sec{background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:9px 13px}
.rev-sec>summary{cursor:pointer;font-weight:600;color:var(--txt2)}
.rev-sec[open]>summary{margin-bottom:9px}
.rev-sec .rev-item{margin-top:7px}
.rev-rolo{overflow-x:auto}
.rev-tab{font-size:12.5px}
.rev-tab th,.rev-tab td{padding:5px 8px;border-bottom:1px solid var(--linha);text-align:left;vertical-align:top}
.rev-tab th{font-size:11px;color:var(--txt3);font-weight:650}
.rev-tab .n{text-align:right;font-variant-numeric:tabular-nums}
.rev-tab small{color:var(--txt3)}
.rev-hist{margin:0;padding-left:16px;font-size:12.5px;display:flex;flex-direction:column;gap:4px}
.rev-hist small{color:var(--txt3)}
.rev-hist-item{display:block}
.rev-imp{display:flex;flex-direction:column;gap:12px}
.rev-imp label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt2)}
.rev-imp .rev-imp-lido{margin:0;font-size:12.5px;color:var(--txt)}
.rev-aviso{background:color-mix(in srgb,var(--info) 12%,transparent)}
.rev-aviso .btn{margin:0 0 0 6px}
.rev-topo-acoes{display:flex;gap:10px;align-items:center}
.rev-apagar{color:var(--risco)}
.rev-confirma .btn{margin:0 6px}
.rev-instrucao{background:color-mix(in srgb,var(--info) 10%,transparent);border-radius:var(--raio);padding:8px 12px;margin-top:10px;font-size:13px}
.rev-quem-nome{font-size:15px!important}
.rev-chk{display:flex!important;flex-direction:row!important;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--txt)!important}
.rev-chk input{margin-top:3px}
.rev-chk small{color:var(--txt3)}
.rev-aj{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px}
.rev-aj li{display:flex;justify-content:space-between;gap:8px}
.rev-aj label{display:flex;gap:6px;align-items:flex-start;min-width:0}
.rev-aj .n{white-space:nowrap;font-variant-numeric:tabular-nums}
.rev-ajuste-feito{border-color:var(--ok)}

/* pedido do painel do parceiro: urgente */
.ped-portal{border-color:color-mix(in srgb,var(--risco) 45%,transparent);background:color-mix(in srgb,var(--risco) 6%,var(--bg2))}
.ped-portal .simb-rot{color:var(--risco)}
.ped-portal td.ac{white-space:nowrap}
.nav-urgente{display:inline-block;min-width:16px;padding:0 5px;margin-left:5px;border-radius:99px;background:var(--risco);color:#fff;font-size:10.5px;font-weight:700;line-height:16px;text-align:center;vertical-align:1px}

/* relatório do Colabore */
.cb-sec{margin-top:16px}
.cb-sec h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--acc);margin:0 0 8px}
.cb-sec h2 small{color:var(--txt3);font-weight:400;letter-spacing:0;text-transform:none}
.cb-grupo{margin-bottom:10px}
.cb-grupo-cab{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0}
.cb-grupo-cab .btn{margin:0}
.cb-acoes{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px}
.cb-acoes .btn{margin:0}
.cb-acoes .espaco{flex:1}
.cb-ref{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--txt2)}
.cb-ref input{width:120px}
tr.cb-fora td{opacity:.45}

/* ---------- Política comercial ---------- */
.cab-pol{width:auto;gap:6px;padding:0 10px;position:relative;font:inherit;font-size:12.5px;font-weight:600}
.cab-pol .ajuda-novo{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 2px var(--bg2)}
@media (max-width:900px){.cab-pol{width:34px;padding:0}.cab-pol-rot{display:none}}
.pol-faixa{display:flex;align-items:center;gap:12px;width:100%;margin:0 0 14px;padding:10px 14px;text-align:left;font:inherit;color:var(--txt);cursor:pointer;
  background:color-mix(in srgb,var(--acc) 6%,var(--bg2));border:1px solid color-mix(in srgb,var(--acc) 28%,var(--linha));border-radius:var(--raio)}
.pol-faixa:hover{border-color:var(--acc)}
.pol-faixa:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.pol-ico{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--acc);color:#fff;font-weight:700;font-size:16px}
.pol-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.pol-txt b{font-size:14px}.pol-txt small{color:var(--txt2);font-size:12px}
.pol-quando{color:var(--txt3);font-size:11.5px;white-space:nowrap}
.pol-seta{color:var(--acc);font-weight:700}
@media (max-width:640px){.pol-quando{display:none}}
.pol .mapa-cab h1{font-size:22px}
.pol-corpo{display:grid;grid-template-columns:210px minmax(0,1fr) auto;gap:32px;align-items:start;margin-top:14px}
.pol-sumario{position:sticky;top:0;display:flex;flex-direction:column;gap:2px}
.pol-sumario{min-width:0}
.pol-sumario button{text-align:left;background:none;border:0;border-left:2px solid var(--linha);padding:5px 10px;font:inherit;font-size:12.5px;line-height:1.35;color:var(--txt2);cursor:pointer;
  white-space:normal;overflow-wrap:anywhere;height:auto;min-height:0;width:100%}
.pol-sumario button:hover{color:var(--acc);border-left-color:var(--acc)}
.pol-lado-rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--txt3);margin:0 0 6px}
.pol-lado-rot small{text-transform:none;letter-spacing:0;font-weight:500}
.pol-hist{width:260px;position:sticky;top:0;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:12px}
.pol-hist ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pol-hist li{display:flex;flex-direction:column;gap:1px}
.pol-hist small{color:var(--txt3);font-size:11.5px}
.pol-hist [aria-current="true"]{color:var(--acc)}
@media (max-width:1000px){.pol-corpo{grid-template-columns:minmax(0,1fr)}.pol-sumario{display:none}.pol-hist{width:auto;position:static}}
.md-doc{max-width:860px;font-size:14.5px;line-height:1.6;color:var(--txt)}
.md-doc h1{display:none}
.md-doc h2{font-size:18px;margin:28px 0 8px;padding-top:6px;border-top:1px solid var(--linha);scroll-margin-top:12px}
.md-doc h2:first-of-type{border-top:0;margin-top:6px}
.md-doc h3{font-size:15px;margin:20px 0 6px}
.md-doc p{margin:0 0 10px}
.md-doc ul,.md-doc ol{margin:0 0 12px;padding-left:22px}
.md-doc li{margin:3px 0}
.md-doc .md-tabela{overflow-x:auto;margin:8px 0 14px}
.md-doc table{border-collapse:collapse;font-size:13.5px;min-width:60%}
.md-doc th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt2);background:var(--bg2);padding:7px 10px;border-bottom:1px solid var(--linha)}
.md-doc td{padding:7px 10px;border-bottom:1px solid var(--linha);vertical-align:top}
.md-doc tbody tr:hover td{background:color-mix(in srgb,var(--acc) 4%,transparent)}
.md-doc blockquote{margin:0 0 12px;padding:6px 12px;border-left:3px solid var(--acc);color:var(--txt2)}
.md-doc code{font-size:12.5px;background:var(--bg2);padding:1px 4px;border-radius:4px}
.md-doc a{color:var(--acc)}
.md-doc .md-interno{color:var(--txt2);border-bottom:1px dotted var(--txt3)}
.md-doc hr{border:0;border-top:1px solid var(--linha);margin:18px 0}
.pol-editor{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.pol-nota{display:flex;flex-direction:column;gap:4px;max-width:720px;font-size:12.5px;font-weight:600}
.pol-nota small{font-weight:400;color:var(--txt3)}
.pol-nota input{font:inherit;font-weight:400;font-size:14px;padding:8px 10px;border:1px solid var(--linha);border-radius:8px;background:var(--bg)}
.pol-lados{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.pol-fonte textarea{width:100%;min-height:70vh;resize:vertical;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;padding:12px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg);color:var(--txt)}
.pol-previa{border:1px solid var(--linha);border-radius:var(--raio);padding:12px 16px;max-height:76vh;overflow:auto;background:var(--bg2)}
.pol-previa .md-doc h1{display:block;font-size:20px}
@media (max-width:900px){.pol-lados{grid-template-columns:minmax(0,1fr)}}
@media print{.pol-tela{padding:0}.pol-corpo{display:block}.md-doc{max-width:none;font-size:10.5pt}.md-doc h2{break-after:avoid}.md-doc table{break-inside:avoid}}
.arquivar-folha{border-color:color-mix(in srgb,var(--info) 40%,var(--linha));background:color-mix(in srgb,var(--info) 5%,var(--bg2))}
.encerrar-faixa{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:8px 0 12px}
.encerrar-faixa>span{flex:1 1 420px;line-height:1.5}
.ajs-como{margin:0;font-size:13px;color:var(--txt2);line-height:1.45}
.ajs-ferr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.ajs-ferr input[type=search]{font:inherit;font-size:13px;padding:6px 10px;border:1px solid var(--linha);border-radius:8px;background:var(--bg2);min-width:220px}
.ajs-lista{display:flex;flex-direction:column;gap:3px;max-height:340px;overflow:auto;padding-right:2px}
.cancelar-folha .ajs-linha{display:grid;grid-template-columns:auto minmax(0,1fr) 78px 104px 52px;align-items:center;gap:10px;padding:5px 8px;border-radius:8px;background:var(--bg);font-size:13px;color:var(--txt);text-align:left}
.cancelar-folha .ajs-linha[hidden]{display:none}
.ajs-linha.mudou{background:color-mix(in srgb,var(--acc) 7%,var(--bg));box-shadow:inset 3px 0 0 var(--acc)}
.ajs-linha .ajs-tit{min-width:0;display:flex;flex-direction:column}
.ajs-linha .ajs-tit b{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ajs-linha small{color:var(--txt3);font-size:10.5px}
.ajs-sis{display:flex;flex-direction:column;align-items:flex-end;font-variant-numeric:tabular-nums}
.cancelar-folha .ajs-fica{display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-size:12px;color:var(--txt3)}
.ajs-fica input{width:84px;text-align:right;font:inherit;font-size:14px;font-weight:600;padding:5px 8px;border:1px solid var(--linha);border-radius:8px;background:var(--bg2);color:var(--txt)}
.ajs-dif{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.ajs-dif.neg,.ajs-resumo .neg{color:var(--risco)}.ajs-dif.pos,.ajs-resumo .pos{color:var(--ok)}
.ajs-resumo{font-size:13px;padding:8px 10px;border-radius:8px;background:var(--bg)}
.ajs-resumo .ajs-nada{color:var(--txt3)}
.ajs-dica{margin-top:6px;color:var(--txt2)}
.ajs-vazio{padding:10px;color:var(--txt3);font-size:13px}
@media(max-width:640px){.cancelar-folha .ajs-linha{grid-template-columns:auto minmax(0,1fr) 92px;}.ajs-sis,.ajs-dif{display:none}}
/* mapa de consignação: a linha de botões encolhe e quebra em vez de passar da tela */
.mapa-cab>.mapa-acoes{flex-shrink:1;min-width:0}
.mapa-mais{position:relative}
.mapa-mais>summary{list-style:none;cursor:pointer;user-select:none}
.mapa-mais>summary::-webkit-details-marker{display:none}
.mapa-mais[open]>div{position:absolute;right:0;top:calc(100% + 4px);z-index:30;background:var(--bg2);border:1px solid var(--linha);border-radius:10px;
  box-shadow:0 8px 24px rgba(0,0,0,.14);padding:4px;min-width:240px;display:flex;flex-direction:column}
.mapa-mais[open]>div button{background:none;border:0;text-align:left;padding:8px 10px;border-radius:6px;font:inherit;font-size:13px;color:var(--txt);cursor:pointer;white-space:nowrap}
.mapa-mais[open]>div button:hover{background:var(--bg3)}
.mapa-mais hr{border:0;border-top:1px solid var(--linha);margin:4px 6px}
@media(max-width:900px){.mapa-mais[open]>div{position:fixed;left:16px;right:16px;top:auto;bottom:16px;min-width:0}}
/* acordo de consignação baixada: faixa no topo e o resto esmaecido (é histórico) */
.baixa-faixa{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 0 14px;padding:12px 14px;border-radius:var(--raio);
  background:color-mix(in srgb,var(--txt3) 10%,var(--bg2));border:1px solid color-mix(in srgb,var(--txt3) 35%,var(--linha))}
.baixa-faixa>div{flex:1 1 420px;line-height:1.5}
.baixa-faixa small{display:block;color:var(--txt3)}
.acordo-baixado>.minikpis,.acordo-baixado>.crm-abas,.acordo-baixado .ac-form{opacity:.6}
.acordo-baixado>.minikpis:hover,.acordo-baixado .ac-form:focus-within{opacity:1}
.simb-passo{margin:6px 0 10px}
.simb-passo .btn{margin-left:6px}
.aj-link{font-size:12px;margin-left:8px;font-weight:500}
.aj-buscas th{text-align:left;font-size:11px;color:var(--txt3);font-weight:600}
.aj-buscas td.n,.aj-buscas th.n{text-align:right}

/* ---------- preços do pedido, à mão ---------- */
.pp-ed{padding:10px 12px}
.pp-todos{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:10px}
.pp-todos input{width:76px;text-align:right}
.pp-n{width:92px;text-align:right;font-variant-numeric:tabular-nums}
.pp-ed .ac-salvar{margin-top:10px}
@media (max-width:640px){.pp-n{width:72px}}
/* documento do acerto: PDF e Excel lado a lado na barra da conferência */
.bal-doc{display:inline-flex;gap:4px;align-items:center}
/* aba Conferências (Consignação) */
.conf-topo{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.conf-tab .conf-acoes{white-space:nowrap;text-align:right}
.conf-tab .conf-acoes .btn{margin:0 0 0 4px}
/* painel do contrato: nome e dados em cima, ações numa linha só embaixo (sem quebrar o texto do botão) */
.painel header.ctr-cab{justify-content:space-between}
.ctr-tit{min-width:0;flex:1}
.ctr-tit .meta{overflow-wrap:anywhere}
.ctr-acoes{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px}
.ctr-acoes .btn{margin:0;white-space:nowrap}
.ctr-acoes .lnk{margin-left:4px;white-space:nowrap}
/* link direto de cada subtítulo da política (/politica/<seção>): aparece ao passar o mouse */
.md-doc h2,.md-doc h3,.md-doc h4{scroll-margin-top:12px}
.md-ancora{margin-left:.35em;color:var(--txt3);text-decoration:none;font-weight:400;opacity:0;transition:opacity .12s;padding:0 .15em;border-radius:4px}
.md-doc h2:hover .md-ancora,.md-doc h3:hover .md-ancora,.md-doc h4:hover .md-ancora,.md-ancora:focus-visible{opacity:1}
.md-ancora:hover{color:var(--acento,var(--txt));background:var(--bg3)}
@media (hover:none){.md-ancora{opacity:.45}}
@keyframes mdAlvo{from{background:color-mix(in srgb,var(--alerta) 22%,transparent)}to{background:transparent}}
.md-doc .md-alvo{animation:mdAlvo 1.8s ease-out;border-radius:4px}
@media print{.md-ancora{display:none}}

/* campanha (Relacionamento → Campanha) */
.camp-cab{margin-bottom:6px}
.camp-grade{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:12px;align-items:start;margin-bottom:14px}
.camp-lista{padding:8px 10px;max-height:72vh;overflow:auto}
.camp-barra{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--txt2);margin-bottom:6px}
.camp-barra .espaco{flex:1}
.camp-lista tr.camp-prev td{background:color-mix(in srgb,var(--acc) 7%,transparent)}
.camp-lista tr.camp-sem{opacity:.6}
.camp-tab td{vertical-align:top}
.camp-onde{color:var(--txt3);margin-left:4px}
.camp-pq{font-size:12px;color:var(--txt2);margin-top:2px}
.camp-texto{padding:10px 12px;position:sticky;top:8px}
.camp-texto .cmp-rot{display:block;margin:8px 0 4px}
.camp-texto .cmp-rot select{margin-left:8px;text-transform:none;letter-spacing:0;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 6px;color:var(--txt)}
.camp-texto input[name="camp_assunto"],.camp-texto textarea{width:100%;background:var(--bg2);border:1px solid var(--linha);border-radius:var(--raio);padding:7px 9px;color:var(--txt)}
.camp-texto textarea{font:13.5px/1.5 ui-sans-serif,system-ui,-apple-system,sans-serif;resize:vertical}
.camp-msg{border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg);padding:10px 12px;font-size:13px;line-height:1.5;max-height:280px;overflow:auto}
.camp-msg b{display:block;margin-bottom:8px}
.camp-msg div{white-space:pre-wrap}
@media (max-width:900px){.camp-grade{grid-template-columns:1fr}.camp-texto{position:static}}

/* novo envio (Divulgação): seções numeradas, finalidade agrupada pelo objetivo */
.ne{display:flex;flex-direction:column}
.ne [hidden]{display:none!important}
.ne-sec{padding:14px 0 16px;border-bottom:1px solid var(--linha)}
.ne-sec:first-child{padding-top:4px}
.ne-tit{display:flex;align-items:center;gap:9px;margin:0 0 12px;font-size:14.5px;font-weight:650;color:var(--txt)}
.ne-tit>span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--acc);color:#fff;font-size:12px;font-weight:700;flex:none}
.ne-tit small{font-weight:400;color:var(--txt3);font-size:12.5px}
.ne-grupos{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.ne-grupo-rot{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--txt2);font-weight:700;margin:0 0 6px 2px}
.ne-grupo-rot small{text-transform:none;letter-spacing:0;font-weight:400;color:var(--txt3);font-size:11.5px;margin-left:4px}
.ne-ops{display:flex;flex-direction:column;gap:6px}
.ne-op,.ne-seg{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:start;padding:10px 12px;border:1px solid var(--campo-borda);border-radius:10px;background:var(--bg2);cursor:pointer;transition:border-color .12s,background-color .12s,box-shadow .12s}
.ne-op:hover,.ne-seg:hover{border-color:var(--campo-borda-hover)}
.ne-op input,.ne-seg input{grid-row:span 2;margin-top:2px}
.ne-op b,.ne-seg b{font-size:13.5px;font-weight:650}
.ne-op small,.ne-seg small{color:var(--txt3);font-size:12px;line-height:1.4}
.ne-op:has(input:checked),.ne-seg:has(input:checked){border-color:var(--acc);background:color-mix(in srgb,var(--acc) 7%,var(--bg2));box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 12%,transparent)}
.ne-seg.off{opacity:.55;cursor:not-allowed}
.ne-fluxo{margin:12px 2px 0;font-size:12.5px;color:var(--txt2)}
.ne-fluxo span{color:var(--txt3);margin-right:4px}
.ne-fluxo b{font-weight:550}
.ne .op-form{margin:0}
.ne .op-form textarea,.ne textarea{width:100%;font:inherit;font-size:14px}
.ne-dica{color:var(--txt3);font-size:11.5px;line-height:1.35}
.ne-origem{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.ne-nf{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt3);margin-bottom:12px}
.ne-nf select{font-size:14px;padding:7px 9px}
.ne .dv-kit table{margin-top:2px}
.ne .dv-kit-add{margin-top:6px}
.ne-pe{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;gap:10px;padding:12px 0 6px;margin-top:4px;background:var(--bg);border-top:1px solid var(--linha)}
.ne-pe .espaco{flex:1}
.ne-erro{color:var(--risco);font-size:12.5px}
.dv-kit tr.kit-fora td{background:color-mix(in srgb,var(--risco) 9%,transparent)}
.dv-kit select[name=kt_livro_sel]{width:100%;min-width:220px}
@media (max-width:640px){.ne-grupos,.ne-origem{grid-template-columns:1fr}}
/* o kit no mesmo padrão dos outros campos (quantidade e custo não ficam cinza) */
.dv-kit input:not([type=checkbox]),.dv-kit select{background-color:var(--bg2);border-color:var(--campo-borda);font-size:13.5px}

/* e-mail marketing (Relacionamento → Marketing) */
.mkt-cab{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;margin-bottom:12px}
.mkt-de{color:var(--txt3);font-size:12px}
.mkt-grade{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:14px;align-items:start;margin-bottom:16px}
.mkt-passos{padding:14px 16px}
.mkt-passos .ne-tit{margin:16px 0 10px}.mkt-passos .ne-tit:first-child{margin-top:0}
.mkt-pecas-esc{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}
.mkt-grupos-esc{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.mkt-grupos-esc small{color:var(--txt3)}
.mkt-picker{display:flex;flex-direction:column;gap:6px;position:relative}
.mkt-picker input[name=mkt_busca]{width:100%;font-size:13.5px}
.mkt-escolhidos{display:flex;flex-wrap:wrap;gap:5px}
.mkt-chip{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;background:color-mix(in srgb,var(--acc) 9%,var(--bg2));border:1px solid color-mix(in srgb,var(--acc) 30%,var(--linha));border-radius:999px;padding:2px 4px 2px 10px}
.mkt-chip small{color:var(--txt3)}.mkt-chip button{border:0;background:none;color:var(--txt3);cursor:pointer;font-size:14px;padding:0 4px}
.mkt-res{display:flex;flex-direction:column;border:1px solid var(--linha);border-radius:8px;background:var(--bg2);max-height:260px;overflow:auto}
.mkt-res-l{display:block;text-align:left;border:0;background:none;padding:7px 10px;font:inherit;font-size:13px;color:var(--txt);cursor:pointer;border-bottom:1px solid var(--linha)}
.mkt-res-l:hover{background:var(--bg3)}.mkt-res-l small{color:var(--txt3)}
.mkt-colar summary{cursor:pointer;color:var(--txt3);font-size:12.5px}
.mkt-colar textarea{width:100%;margin:6px 0}
.mkt-rec{margin-top:8px}.mkt-rec input.qtd{width:56px}
.mkt-conta{margin-top:8px;padding:8px 10px;border-radius:8px;background:var(--bg3);font-size:13px;color:var(--txt2)}
.mkt-erro-peca{color:var(--risco);margin-top:4px}
.mkt-assuntos{display:flex;flex-direction:column;gap:5px;font-size:13.5px}
.mkt-assuntos input[name=mkt_assunto_livre]{min-width:280px}
.mkt-pre{display:flex;flex-direction:column;gap:4px;margin-top:10px;font-size:12px;color:var(--txt3)}
.mkt-pre input{font-size:13.5px}
.mkt-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mkt-acoes label{font-size:12.5px;color:var(--txt3);display:flex;gap:6px;align-items:center}
.mkt-acoes .espaco{flex:1}
.mkt-erro{color:var(--risco);font-size:12.5px;margin-top:6px}
.mkt-previa{padding:0;overflow:hidden;position:sticky;top:8px}
.mkt-prev-cab{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--linha);font-size:13px}
.mkt-iframe{display:block;width:100%;height:72vh;border:0;background:#fff}
.mkt-iframe.grande{height:70vh;margin-top:12px;border:1px solid var(--linha);border-radius:8px}
.mkt-andamento{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.mkt-envio{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2)}
.mkt-envio.pausado{border-color:color-mix(in srgb,var(--alerta) 50%,var(--linha))}
.mkt-envio>div:first-child{flex:1;min-width:0}.mkt-envio small{color:var(--txt3)}
.mkt-barra{height:6px;border-radius:3px;background:var(--bg3);margin:6px 0 4px;overflow:hidden}.mkt-barra i{display:block;height:100%;background:var(--acc);transition:width .4s}
.mkt-envio-acoes{display:flex;gap:8px;align-items:center}
.mkt-pecas{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.mkt-peca{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2);cursor:pointer}
.mkt-peca:hover{border-color:var(--acc)}.mkt-peca small{color:var(--txt3);font-size:12px}.mkt-peca.arq{opacity:.6}
.mkt-up{cursor:pointer}
.mkt-ok{color:var(--ok);font-weight:600;margin:0 0 10px}
.mkt-marcas{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--alerta) 9%,var(--bg2));margin-bottom:12px}
.mkt-marcas small{color:var(--txt3);font-size:12px;margin-top:-2px}
.mkt-marca{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:12.5px;color:var(--txt2)}
.mkt-marca input[name=mkt_marca]{min-width:0}
.mkt-html summary{cursor:pointer;color:var(--txt3);font-size:12.5px;margin:6px 0}
.mkt-html textarea{width:100%;font:12px/1.4 var(--mono,ui-monospace,monospace)}
.mkt-filtro{display:flex;flex-direction:column;gap:6px}.mkt-filtro .cmp-rot{margin-top:8px}
.mkt-ops{display:flex;flex-wrap:wrap;gap:6px}
.mkt-amostra{margin:12px 0;padding:8px 10px;border-radius:8px;background:var(--bg3);font-size:13px;color:var(--txt2)}
.mkt-grupo-ed .op-form{margin-bottom:10px}
@media (max-width:980px){.mkt-grade{grid-template-columns:1fr}.mkt-previa{position:static}}

.mkt-busca-peca{min-width:280px;flex:0 1 360px}

/* grupos de contatos: lista à esquerda, pessoas à direita */
.mkt-gr{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;align-items:start}
.mkt-gr-lista{display:flex;flex-direction:column;gap:6px;position:sticky;top:8px}
.mkt-gr-novo{display:flex;gap:6px;margin-bottom:4px}
.mkt-gr-item{display:flex;flex-direction:column;gap:2px;text-align:left;padding:9px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2);cursor:pointer;font:inherit;color:inherit}
.mkt-gr-item:hover{border-color:var(--campo-borda-hover)}.mkt-gr-item small{color:var(--txt3);font-size:12px}
.mkt-gr-item.sel{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 7%,var(--bg2));box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 12%,transparent)}
.mkt-gr-det{padding:14px 16px}
.mkt-gr-cab{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.mkt-gr-cab h3{margin:0 0 2px;font-size:16px}.mkt-gr-cab small{color:var(--txt3)}
.mkt-gr-acoes{display:flex;gap:6px;flex-wrap:wrap}
.mkt-gr-add{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.mkt-gr-add input[name=mkt_gbusca]{width:100%;font-size:14px;padding:8px 10px}
.mkt-res-l2{display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--linha)}.mkt-res-l2 .mkt-res-l{flex:1;border-bottom:0}
.mkt-gr-barra{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--linha);font-size:13px;color:var(--txt2)}
.mkt-gr-barra .espaco{flex:1}.mkt-gr-barra input{min-width:200px}
.mkt-gr-pessoas{display:flex;flex-direction:column;max-height:62vh;overflow:auto;border:1px solid var(--linha);border-radius:8px}
.mkt-pessoa{display:flex;align-items:center;gap:10px;padding:7px 10px;border-bottom:1px solid var(--linha);font-size:13px}
.mkt-pessoa:last-child{border-bottom:0}.mkt-pessoa>div{flex:1;min-width:0;display:flex;flex-direction:column}
.mkt-pessoa small{color:var(--txt3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mkt-pessoa.opt{opacity:.6}
.mkt-x{border:0;background:none;color:var(--txt3);font-size:18px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:6px}
.mkt-x:hover{color:var(--risco);background:color-mix(in srgb,var(--risco) 10%,transparent)}
.mkt-tirados{margin-top:10px}.mkt-tirados summary{cursor:pointer;color:var(--txt3);font-size:12.5px;margin-bottom:6px}
.rel-grupos{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;margin:6px 0 8px;border:1px dashed var(--linha);border-radius:10px;font-size:13px;color:var(--txt2)}
.rel-grupos.ativa{border-style:solid;border-color:color-mix(in srgb,var(--acc) 40%,var(--linha));background:color-mix(in srgb,var(--acc) 5%,var(--bg2))}
.rel-grupos .espaco{flex:1}.rel-grupos small{color:var(--txt3)}
@media (max-width:860px){.mkt-gr{grid-template-columns:1fr}.mkt-gr-lista{position:static}}

/* busca de livro no kit */
.kt-livro{position:relative;min-width:240px}
.kt-livro input{width:100%}
.kt-aviso{display:block;color:var(--risco);font-size:11.5px;margin-top:3px}
.kt-sug{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);background:var(--bg);border:1px solid var(--campo-borda);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.14);max-height:340px;overflow:auto;padding:4px}
.kt-sug button{display:flex;gap:9px;align-items:center;width:100%;text-align:left;border:0;background:none;padding:6px 8px;border-radius:7px;font:inherit;color:var(--txt);cursor:pointer}
.kt-sug button:hover,.kt-sug button:focus{background:color-mix(in srgb,var(--acc) 9%,var(--bg2));outline:none}
.kt-sug button>span{display:flex;flex-direction:column;min-width:0}.kt-sug b{font-size:13px;font-weight:600}
.kt-sug small{color:var(--txt3);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kt-sug .capa-mini{width:26px;height:auto;border-radius:2px;flex:none}
.kt-sug-vazio{padding:8px 10px;color:var(--txt3);font-size:12.5px}
.dv-kit .rolar,.dv-kit,.dv-kit table.mapa-tab{overflow:visible}

/* painel do parceiro: a simbólica autorizada (ou a declaração em conferência) no alto, impossível de não ver */
.pp-simb{margin-bottom:16px;padding:18px 20px;border:2px solid var(--ok);border-radius:12px;background:color-mix(in srgb,var(--ok) 7%,var(--bg2));box-shadow:0 2px 14px color-mix(in srgb,var(--ok) 14%,transparent)}
.pp-simb.conferindo{border-color:var(--info);background:color-mix(in srgb,var(--info) 6%,var(--bg2));box-shadow:none}
.pp-simb-selo{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--ok);padding:4px 10px;border-radius:999px}
.pp-simb.conferindo .pp-simb-selo{background:var(--info)}
.pp-simb h2{margin:10px 0 6px;font-size:20px;line-height:1.25}
.pp-simb p{margin:0;font-size:14px;line-height:1.55;max-width:820px}
.pp-simb-div{margin:10px 0 0;padding-left:18px;font-size:13.5px}
.pp-simb-tot{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0}
.pp-simb-tot>div{background:var(--bg);border:1px solid var(--linha);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.pp-simb-tot span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.pp-simb-tot b{font-size:22px;font-variant-numeric:tabular-nums}
.pp-simb-tot small{color:var(--txt3);font-size:11.5px}
.pp-simb-tab{overflow-x:auto;background:var(--bg);border:1px solid var(--linha);border-radius:10px}
.pp-simb-tab table{width:100%;border-collapse:collapse;font-size:13px}
.pp-simb-tab th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--txt3);padding:8px 10px;border-bottom:1px solid var(--linha)}
.pp-simb-tab td{padding:7px 10px;border-bottom:1px solid var(--linha)}
.pp-simb-tab .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pp-simb-tab .mono{font-family:var(--mono,ui-monospace,monospace);font-size:12px;color:var(--txt2)}
.pp-simb-soma td{font-weight:700;border-bottom:0;background:color-mix(in srgb,var(--ok) 6%,transparent)}
.pp-simb-acoes{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}
.pp-simb-acoes small{color:var(--txt2)}
/* Hoje: o caminho vendas do painel → simbólica autorizada */
.simb-pend.autorizar{background:color-mix(in srgb,var(--alerta) 7%,var(--bg2));border-color:color-mix(in srgb,var(--alerta) 40%,var(--linha));border-left-color:var(--alerta)}
.simb-pend.autorizar .simb-rot{color:var(--alerta)}
.simb-pend.autorizadas{background:color-mix(in srgb,var(--ok) 7%,var(--bg2));border-color:color-mix(in srgb,var(--ok) 40%,var(--linha));border-left-color:var(--ok);margin-top:12px}
.simb-pend.autorizadas .simb-rot{color:var(--ok)}
.faixa-simb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 14px;border-radius:10px;font-size:13.5px;border:1px solid var(--linha);border-left:5px solid}
.faixa-simb .espaco{flex:1}.faixa-simb .btn{margin:0}
.faixa-simb.ok{border-left-color:var(--ok);background:color-mix(in srgb,var(--ok) 8%,var(--bg2))}
.faixa-simb.alerta{border-left-color:var(--alerta);background:color-mix(in srgb,var(--alerta) 8%,var(--bg2))}
.faixa-simb.risco{border-left-color:var(--risco);background:color-mix(in srgb,var(--risco) 7%,var(--bg2))}

/* painel do parceiro: a seleção da Solisluna (o link que a equipe manda) */
.pp-prop-faixa{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px;padding:14px 18px;border:2px solid var(--acc);border-radius:12px;background:color-mix(in srgb,var(--acc) 7%,var(--bg2))}
.pp-prop-faixa>div{flex:1;min-width:260px;display:flex;flex-direction:column;gap:3px}
.pp-prop-faixa b{font-size:15.5px}.pp-prop-faixa small{color:var(--txt2);font-size:13px}
.pp-prop-selo{display:inline-block;align-self:flex-start;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#fff;background:var(--acc);padding:3px 10px;border-radius:999px;margin-bottom:4px}
.pp-prop-cab{padding:20px 22px;border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--acc) 10%,var(--bg2)),var(--bg2));border:1px solid var(--linha);margin-bottom:16px}
.pp-prop-cab h2{margin:10px 0 6px;font-size:24px;line-height:1.2}
.pp-prop-cab p{margin:0;max-width:760px;font-size:14.5px;line-height:1.55;color:var(--txt2)}
.pp-prop-recado{margin:14px 0 0;padding:10px 14px;border-left:3px solid var(--acc);background:var(--bg);border-radius:0 8px 8px 0;font-size:15px;font-style:italic;max-width:760px}
.pp-prop-recado small{display:block;font-style:normal;color:var(--txt3);font-size:12px;margin-top:4px}
.pp-prop-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:16px}
.pp-prop-kpis>div{background:var(--bg);border:1px solid var(--linha);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.pp-prop-kpis span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.pp-prop-kpis b{font-size:22px;font-variant-numeric:tabular-nums}.pp-prop-kpis small{color:var(--txt3);font-size:11.5px}
.pp-prop-h{margin:22px 0 10px;font-size:17px}.pp-prop-h small{font-weight:400;color:var(--txt3);font-size:13px;margin-left:6px}
.pp-prop-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}
.pp-pc{display:flex;gap:14px;padding:14px;border:1px solid var(--linha);border-radius:12px;background:var(--bg2);transition:border-color .15s,box-shadow .15s}
.pp-pc.marcado{border-color:color-mix(in srgb,var(--acc) 55%,var(--linha));box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 10%,transparent)}
.pp-pc.extra{background:var(--bg);border-style:dashed}.pp-pc.extra.marcado{border-style:solid}
.pp-pc .pp-capa.pc{width:84px;min-width:84px;max-width:none;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.14)}
.pp-pc .pp-capa.vazia.pc{display:block;background:var(--bg3)}
.pp-pc-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.pp-pc-tx h4{margin:0;font-size:15px;line-height:1.3}
.pp-pc-porque{font-size:13px;font-weight:600;color:var(--acc);line-height:1.35}
.pp-pc .pp-lv-sin{font-size:12.5px;line-height:1.45;color:var(--txt2);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pp-pc-pe{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:6px}
.pp-pc-preco{font-weight:700;font-variant-numeric:tabular-nums}.pp-pc-preco small{font-weight:400;color:var(--txt3);font-size:11.5px}
.pp-pc-loja{font-size:12px;color:var(--txt3)}
.pp-pc-q{margin-left:auto;display:inline-flex;align-items:center;border:1px solid var(--linha);border-radius:999px;overflow:hidden;background:var(--bg)}
.pp-pc-q input{width:46px;border:0;text-align:center;font:inherit;font-weight:700;background:transparent;-moz-appearance:textfield}
.pp-pc-q input::-webkit-inner-spin-button{-webkit-appearance:none}
.pp-pc-b{border:0;background:none;width:32px;height:32px;font-size:18px;cursor:pointer;color:var(--txt)}
.pp-pc-b:hover{background:var(--bg3)}
.pp-pc .pp-btn2.forte{margin-left:auto}
.pp-prop-pe{position:sticky;bottom:0;z-index:5;display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px;padding:14px 16px;border:1px solid var(--linha);border-radius:12px;background:var(--bg);box-shadow:0 -6px 18px rgba(0,0,0,.08)}
.pp-prop-tot{flex:1 1 280px;font-size:13.5px}
.pp-prop-pe textarea{flex:1 1 260px;min-height:44px;font:inherit;font-size:13px}
@media (max-width:640px){.pp-prop-grade{grid-template-columns:1fr}.pp-pc .pp-capa.pc{width:64px;min-width:64px}.pp-prop-cab h2{font-size:20px}}

/* filtro do grupo de contatos: blocos (quem → tipos, relação, gostos, onde) */
.mkt-filtro{display:flex;flex-direction:column;gap:12px}
.mkt-fb{border:1px solid var(--linha);border-radius:10px;padding:12px 14px;background:var(--bg2)}
.mkt-fb h4{margin:0 0 8px;font-size:13.5px}.mkt-fb h4 small{font-weight:400;color:var(--txt3);font-size:12px;margin-left:6px}
.mkt-fams{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.mkt-fam{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.mkt-fam.on{padding:6px 8px;border-radius:9px;background:color-mix(in srgb,var(--acc) 5%,var(--bg))}
.mkt-tipos{display:flex;flex-wrap:wrap;gap:5px;padding-left:14px;border-left:2px solid color-mix(in srgb,var(--acc) 35%,var(--linha));margin-left:6px}
.mkt-tipos .cmp-pessoa{font-size:12px;padding:2px 9px 2px 6px}
.mkt-todos{color:var(--txt3);font-size:11.5px;align-self:center}
.mkt-outros{margin-top:4px;padding-top:8px;border-top:1px dashed var(--linha)}
.mkt-fb .mkt-ops+.mkt-ops{margin-top:6px}
.mkt-num{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--txt2)}
.mkt-num input{width:auto;min-width:90px}
.mkt-fb .mkt-num input[data-mkt-f=ufs]{min-width:240px}
.cmp-pessoa.on{border-color:color-mix(in srgb,var(--acc) 45%,var(--linha));background:color-mix(in srgb,var(--acc) 8%,var(--bg2))}

/* Relação: a ficha viva no topo da conta (faixa, temperatura, toque, compromissos) */
.rel-bloco{border:1px solid var(--linha);border-radius:var(--raio);padding:12px 14px;margin-bottom:12px;background:var(--bg2)}
.rel-bloco .rot{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-bottom:3px}
.rel-topo{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px dashed var(--linha)}
.rel-faixa{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rel-faixa .rot{display:inline;margin:0}
.rel-faixa select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 8px;font:inherit;color:inherit}
.rel-toque{text-align:right;font-size:13.5px;max-width:60%}
.rel-resumo{color:var(--txt2);font-size:12.5px;margin-top:2px}
.rel-prazo{font-size:12px;color:var(--txt3);margin-top:2px}
.rel-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:10px 0;font-size:13px}
.rel-pessoa{display:block;margin-bottom:3px}
.rel-pessoa a{font-size:12px;margin-left:4px}
.rel-ctx{white-space:pre-line;color:var(--txt2)}
.rel-comp{margin:4px 0 0;padding-top:10px;border-top:1px dashed var(--linha)}
.tarefa-nova select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 6px;font:inherit;color:inherit}
.tarefa .tf-cab .tag{margin-right:4px}
@media (max-width:640px){.rel-toque{text-align:left;max-width:none}.tarefa-nova{flex-wrap:wrap}}

/* Fornecedores e parceiros (organização) */
.org-tiny-lista{display:flex;flex-direction:column;gap:4px;margin:0 0 12px;max-height:240px;overflow:auto}
.org-tiny-item{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;text-align:left;padding:7px 10px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);cursor:pointer;font:inherit;color:inherit}
.org-tiny-item:hover:not([disabled]){border-color:var(--campo-borda-hover)}
.org-tiny-item[disabled]{opacity:.6;cursor:default}
.org-tiny-item small{color:var(--txt3)}
.org-tab td{vertical-align:top}
.org-tab small{color:var(--txt3)}
.org-form .painel-pe{display:flex;justify-content:flex-end;margin-top:12px}
.vazio-ajuda{padding:18px 20px}
.vazio-ajuda p{margin:0 0 10px}
.mkt-res-novo{background:color-mix(in srgb,var(--acc) 8%,var(--bg2))}
.mkt-pessoa-abre{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}
.mkt-pessoa-abre:hover b{color:var(--acc);text-decoration:underline}
.mkt-pessoa-abre small{max-width:100%}

/* Pessoas */
.pes-barra{flex-wrap:wrap;gap:8px}
.pes-barra input[type=search]{max-width:280px}
.pes-barra select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 8px;font:inherit;color:inherit}
.pes-tab td{vertical-align:top}
.pes-tab small{color:var(--txt3)}
.pes-sug{padding:10px 14px;margin-bottom:8px}
.pes-sug summary{cursor:pointer}
.pes-sug-l{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;padding:6px 0;border-bottom:1px dashed var(--linha);font-size:13px}
.pes-sug-l:last-child{border-bottom:0}
.pes-dec-l{margin:4px 0;font-size:13.5px}
.pes-dec-sug{background:color-mix(in srgb,var(--alerta) 8%,transparent);padding:4px 8px;border-radius:var(--raio)}
.pes-decide .btn{margin-top:6px}
.pes-ligar-lnk{font-size:12px}

/* Captura (WhatsApp → triagem) */
.cap-barra{flex-wrap:wrap;gap:8px}
.cap-rodando{font-size:13px;color:var(--txt2);margin:4px 0 8px}
.cap-filtros{margin:6px 0 10px;align-items:center}
.cap-filtros select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 8px;font:inherit;color:inherit}
.cap-lista{display:flex;flex-direction:column;gap:10px}
.cap-card{border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);padding:12px 14px}
.cap-card header{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.cap-card header small{color:var(--txt3)}
.cap-card h4{margin:6px 0 4px;font-size:15px}
.cap-card p{margin:0 0 6px;font-size:13.5px;line-height:1.5}
.cap-pq{color:var(--txt2)}
.cap-alvo{font-size:13px;margin:6px 0;display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}
.cap-alvo .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650}
.cap-alvo-busca{flex-basis:100%}
.cap-alvo-busca input{width:100%;max-width:360px;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 8px;font:inherit;color:inherit}
.cap-cit{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0}
.cap-chip{font-size:12px;border:1px solid var(--linha);border-radius:999px;padding:2px 8px;background:var(--bg3)}
.cap-chip small{color:var(--txt3)}
.cap-rasc,.cap-msgs{margin:6px 0;font-size:13px}
.cap-rasc summary,.cap-msgs summary{cursor:pointer;color:var(--txt2)}
.cap-rasc textarea{width:100%;margin:6px 0 4px;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:8px;font:inherit;color:inherit;resize:vertical}
.cap-rasc small{color:var(--txt3);margin-left:6px}
.cap-msg{padding:5px 0;border-bottom:1px dashed var(--linha)}.cap-msg small{color:var(--txt3)}
.cap-dec{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:8px;margin-top:6px;border-top:1px dashed var(--linha);font-size:13px}
.cap-dec select,.cap-dec input{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 6px;font:inherit;color:inherit}
.cap-dec label{display:flex;gap:4px;align-items:center}
.cap-prospect,.cap-pessoa{display:flex;gap:6px;flex-wrap:wrap;align-items:center;flex-basis:100%}
.cap-pessoa small{color:var(--txt3);flex-basis:100%}
.cap-feito{display:flex;justify-content:space-between;gap:8px;padding-top:6px;border-top:1px dashed var(--linha);margin-top:6px}
.cap-feito small{color:var(--txt3)}
.cap-tab td{vertical-align:top}.cap-tab small{color:var(--txt3)}
.cap-h{margin:18px 0 8px;font-size:14px}
.cap-form textarea{width:100%;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:8px;font:inherit;color:inherit}
.cap-l{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt3);margin:10px 0}
.cap-l small{color:var(--txt3)}
.cap-form .painel-pe,.cap-aj .painel-pe{display:flex;justify-content:flex-end;margin-top:12px}
.cap-tipos{display:flex;flex-direction:column;gap:8px}
.cap-tipo{display:grid;grid-template-columns:auto 1fr 140px;gap:6px;align-items:start;border:1px solid var(--linha);border-radius:var(--raio);padding:8px}
.cap-tipo textarea,.cap-tipo input[name="aj_t_acao"]{grid-column:1/-1}
.cap-tipo input,.cap-tipo textarea,.cap-aj textarea{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:5px 8px;font:inherit;color:inherit}
@media (max-width:640px){.cap-dec .espaco{display:none}.cap-tipo{grid-template-columns:1fr}}
.cap-card>header{flex-direction:row;justify-content:flex-start;align-items:center;text-align:left;padding:0;margin:0;border:0;background:none;position:static;min-height:0;box-shadow:none}
.cap-card [hidden],.cap-form [hidden]{display:none!important}
.cap-pan{border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);padding:10px 14px;margin:10px 0;font-size:13.5px}
.cap-pan p{margin:6px 0 0;line-height:1.5;color:var(--txt2)}

/* Carta do envio (Divulgação) */
.dv-carta{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.dv-carta textarea{width:100%;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:10px;font:14px/1.6 Georgia,"Times New Roman",serif;color:inherit;resize:vertical}
.dv-carta-ia{display:flex;gap:8px;flex-wrap:wrap}
.dv-carta-ia input{flex:1;min-width:220px;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 8px;font:inherit;color:inherit}
.dv-carta-pe{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}
.dv-carta-pe select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 6px;font:inherit;color:inherit;max-width:260px}
.dv-carta-pe label{display:flex;gap:6px;align-items:center}
.dv-carta-pdf{font-size:13px;padding:8px 10px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2)}
.dv-carta-pdf small{color:var(--txt3)}
.ass-pad{width:100%;max-width:560px;height:160px;background:#fff;border:1px dashed var(--linha);border-radius:var(--raio);touch-action:none;cursor:crosshair}
.dv-ass .as-arq{color:var(--txt3)}
.dv-carta-sau{display:flex;gap:8px;align-items:center}
.dv-carta-sau input[name="dv_saudacao"]{flex:1;max-width:420px;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:6px 8px;font:14px Georgia,"Times New Roman",serif;color:inherit}
.dv-carta-sau input:disabled{opacity:.45}
.dv-dest{border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);padding:10px 14px;margin:6px 0 14px;font-size:13px}
.dv-dest .rot{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3);font-weight:650;margin-right:6px}
.dv-dest-g{display:flex;flex-direction:column;gap:3px;margin-top:6px}
.dv-dest small{color:var(--txt3)}
.dv-sug{color:var(--alerta);font-weight:400}

/* Importar formadores (etapas) */
.dv-imp-passos{display:flex;gap:6px;list-style:none;padding:0;margin:0 0 14px;flex-wrap:wrap}
.dv-imp-passos li{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--bg3);color:var(--txt3)}
.dv-imp-passos li.atual{background:var(--acc);color:#fff;font-weight:600}
.dv-imp-passos li.feito{color:var(--txt2)}
.dv-imp-map td{vertical-align:middle}.dv-imp-map tr.fora td{opacity:.55}
.dv-imp-map select{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:4px 6px;font:inherit;color:inherit;min-width:200px}
.dv-imp-sug{color:var(--ok);margin-left:6px}
.dv-imp-h{margin:20px 0 8px;font-size:14px}
.dv-imp-l{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--linha);font-size:13px}
.dv-imp-l small{color:var(--txt3)}
.dv-imp-antigas{margin-bottom:8px}
.dv-imp-modo{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px;margin:8px 0}
.dv-imp-conf{max-height:52vh;overflow:auto;margin:8px 0}
.dv-imp-conf td{vertical-align:top}.dv-imp-conf small{color:var(--txt3)}
.dv-imp-conf tr.imp-erro td{background:color-mix(in srgb,var(--risco) 7%,transparent)}
.dv-imp-conf tr.imp-existe td,.dv-imp-conf tr.imp-repetido td{opacity:.7}

/* WhatsApp rápido */
.btn-zap{border-color:#25d366;color:#128c4a}
.zap-aviso-midia{margin:4px 0 6px;font-size:12px;color:var(--txt3)}
.zap-linhas{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 6px} .zap-linhas small{color:var(--txt3)}
.zap-linha-sel{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0;font-size:13px} .zap-linha-sel select{max-width:100%}
.btn-prim.btn-zap{background:#1fa855;border-color:#1fa855;color:#fff}
.lnk-zap{color:#128c4a}
.zap-form{display:flex;flex-direction:column;gap:10px}
.zap-para{display:flex;gap:6px;flex-wrap:wrap}
.zap-para .chip small{color:var(--txt3);margin-left:3px}
.zap-l{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--txt3)}
.zap-l input,.zap-l textarea{background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:8px;font:14px/1.5 inherit;color:var(--txt)}
.zap-form .painel-pe{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.zap-form .painel-pe small{color:var(--txt3);flex:1;min-width:200px}

/* topo da ficha: uma linha só — o menos usado vai para o "⋯" */
.ficha-acoes .btn{white-space:nowrap}
.ficha-mais{position:relative}
.ficha-mais summary{list-style:none;cursor:pointer;margin:0;font-weight:700;letter-spacing:.05em}
.ficha-mais summary::-webkit-details-marker{display:none}
.ficha-mais[open]>div{position:absolute;right:0;top:calc(100% + 4px);z-index:30;background:var(--bg2);border:1px solid var(--linha);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.14);padding:4px;min-width:200px;display:flex;flex-direction:column}
.ficha-mais[open]>div button{background:none;border:0;text-align:left;padding:8px 10px;border-radius:6px;font:inherit;font-size:13.5px;color:var(--txt);cursor:pointer}
.ficha-mais[open]>div button:hover{background:var(--bg3)}
.ficha-mais[open]>div button.perigo{color:var(--risco)}
/* novo compromisso: o botão não quebra o texto; sem espaço, a linha desce */
.tarefa-nova{flex-wrap:wrap}
.tarefa-nova input[name="titulo"]{flex:1 1 220px;min-width:0}
.tarefa-nova .btn{white-space:nowrap}

/* Conversa de WhatsApp com o contato (balões) */
.zap-form.com-chat .zap-para{order:-1}
.chat{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:var(--raio);max-height:48vh;min-height:140px;overflow-y:auto;
  background:light-dark(#efeae2,#0b141a);border:1px solid var(--linha)}
.chat-vazio{margin:auto;text-align:center;color:var(--txt3);font-size:13px;max-width:320px}
.bal{max-width:80%;padding:6px 9px 4px;border-radius:8px;font-size:14px;line-height:1.42;box-shadow:0 1px .5px rgba(0,0,0,.13);overflow-wrap:anywhere;color:light-dark(#111b21,#e9edef)}
.bal.entrada{align-self:flex-start;background:light-dark(#fff,#202c33);border-top-left-radius:2px}
.bal.saida{align-self:flex-end;background:light-dark(#d9fdd3,#005c4b);border-top-right-radius:2px}
.bal small{display:block;text-align:right;font-size:10.5px;color:light-dark(#667781,#8696a0);margin-top:2px}
.chat-dia{align-self:center;margin:8px 0 4px}
.chat-dia span{background:light-dark(#fff,#182229);color:light-dark(#54656f,#8696a0);font-size:11.5px;padding:3px 10px;border-radius:7px;box-shadow:0 1px .5px rgba(0,0,0,.1)}
.chat-nota{align-self:center;max-width:90%;text-align:center;font-size:12px;background:light-dark(#fff5c4,#2a2f20);color:light-dark(#54656f,#c8c2a0);padding:4px 10px;border-radius:7px;margin:3px 0}
.chat-nota small{color:inherit;opacity:.8}
.zap-colar{font-size:13px}.zap-colar summary{cursor:pointer;color:var(--acc)}
.zap-colar textarea{width:100%;background:var(--bg3);border:1px solid var(--linha);border-radius:var(--raio);padding:8px;font:13px/1.45 inherit;color:var(--txt);margin-top:6px}
.zap-colar-prev{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px}
.evt-zap{cursor:pointer}.evt-zap:hover .desc{color:var(--acc)}
.dv-imp-nomes{margin-top:4px;font-size:12px} .dv-imp-nomes summary{cursor:pointer;color:var(--txt3)} .dv-imp-nomes p{margin:4px 0 0;color:var(--txt2);max-height:160px;overflow:auto}
.pr-dif{white-space:nowrap;background:color-mix(in srgb,var(--alerta) 22%,transparent);color:var(--txt);padding:1px 5px;border-radius:4px;font-weight:600}
.pr-vazio{color:var(--txt3)} .pr-leve{color:var(--txt3)}
[data-tabela="precos"] td.n{white-space:nowrap}
.pr-de{color:var(--txt3);font-size:11px;white-space:normal} .pr-ok{color:var(--ok)} .pr-btn{font-size:12px;white-space:nowrap}
.pr-acao{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 10px;padding:10px 12px;border:1px solid var(--linha);border-radius:8px;background:var(--bg2)}
.mat-sec{margin:14px 0}
.mat-lista{display:flex;flex-direction:column;gap:8px}
.mat-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2);flex-wrap:wrap}
.mat-ico{display:inline-flex;align-items:center;justify-content:center;width:42px;height:50px;border-radius:6px;font-size:11px;font-weight:700;text-decoration:none;color:#fff;background:#c0392b;flex-shrink:0}
.mat-ico.mat-img{background:var(--txt3)}
.mat-tx{flex:1;min-width:180px;display:flex;flex-direction:column;gap:3px} .mat-tx small{color:var(--txt3)}
.mat-acoes{display:flex;align-items:center;gap:6px;flex-wrap:wrap} .mat-acoes .btn{margin:0}
.mat-mais{position:relative} .mat-mais summary{list-style:none;cursor:pointer} .mat-mais summary::-webkit-details-marker{display:none}
.mat-mais>div{position:absolute;right:0;top:110%;z-index:20;display:flex;flex-direction:column;min-width:200px;background:var(--bg);border:1px solid var(--linha);border-radius:8px;box-shadow:0 6px 20px rgba(0,0,0,.12);padding:4px}
.mat-mais>div button{text-align:left;background:none;border:0;padding:7px 10px;font:inherit;cursor:pointer;color:var(--txt);border-radius:6px} .mat-mais>div button:hover{background:var(--bg2)} .mat-mais hr{border:0;border-top:1px solid var(--linha);margin:4px 0}
.mat-links{margin-top:8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mat-up{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;cursor:pointer} .mat-up small{color:var(--txt3)}
.zap-mat{margin:2px 0 8px;font-size:13px} .zap-mat summary{cursor:pointer;color:var(--acento,var(--txt2))}
.zap-mat-busca{width:100%;margin:6px 0}
.zap-mat-l{max-height:180px;overflow:auto;display:flex;flex-direction:column;gap:2px;border:1px solid var(--linha);border-radius:8px;padding:4px}
.zap-mat-i{text-align:left;background:none;border:0;padding:6px 8px;border-radius:6px;cursor:pointer;font:inherit;color:var(--txt)} .zap-mat-i:hover{background:var(--bg2)} .zap-mat-i small{color:var(--txt3)}
.mat-mais>div button.perigo{color:var(--risco)}
/* --- Galpão ------------------------------------------------------------------ */
.gp-botoes{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:6px 0 14px}
.gp-grande{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:18px 16px;border-radius:14px;border:1px solid var(--linha);background:var(--bg2);color:var(--txt);font:inherit;cursor:pointer;text-align:left;min-height:96px}
.gp-grande b{font-size:20px} .gp-grande small{color:var(--txt3);font-size:12.5px}
.gp-grande:not(.off):hover{border-color:var(--acento,var(--txt2))} .gp-grande.off{opacity:.55;cursor:default}
.gp-botoes .gp-grande[data-gp="contar"]{background:color-mix(in srgb,var(--ok) 14%,var(--bg2));border-color:color-mix(in srgb,var(--ok) 45%,var(--linha))}
.gp-esc{display:flex;flex-direction:column;gap:10px}
.gp-alerta{margin:8px 0;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--risco) 12%,var(--bg2));border:1px solid color-mix(in srgb,var(--risco) 40%,var(--linha))}
.gp-h{margin:18px 0 8px;font-size:15px} .gp-h small{font-weight:400;color:var(--txt3)}
.gp-invs{display:flex;flex-direction:column;gap:8px}
.gp-inv{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2)}
.gp-inv>div:first-child{flex:1;min-width:200px;display:flex;flex-direction:column;gap:2px} .gp-inv small{color:var(--txt3)} .gp-inv.fechado,.gp-inv.cancelado{opacity:.7}
.gp-inv-a{display:flex;gap:6px}
.gp-est input,.gp-est select{font:inherit;font-size:13px;padding:3px 6px;max-width:100%} .gp-est input[type=number]{width:4.2em} .gp-est td{vertical-align:middle}
.gp-chao{color:var(--risco)}
.gp-contar{display:flex;flex-direction:column;gap:10px}
.gp-onde{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border-radius:14px;border:2px dashed var(--linha);text-align:center}
.gp-onde b{font-size:30px;letter-spacing:.5px} .gp-onde small{color:var(--txt3)}
.gp-onde.tem{border-style:solid;border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)} .gp-onde.tem b{font-size:44px;font-family:ui-monospace,monospace}
.gp-ler{display:flex;gap:8px} .gp-ler .btn{margin:0;flex-shrink:0} .gp-bipe{flex:1;min-width:0;font-size:20px;padding:12px;border-radius:10px;border:1px solid var(--linha);background:var(--bg);color:var(--txt);font-family:ui-monospace,monospace}
.gp-video{width:100%;max-height:240px;border-radius:10px;background:#000;object-fit:cover}
.gp-msg{padding:8px 12px;border-radius:8px;font-weight:600} .gp-msg.ok{background:color-mix(in srgb,var(--ok) 15%,transparent)} .gp-msg.erro{background:color-mix(in srgb,var(--risco) 18%,transparent)}
.gp-itens{display:flex;flex-direction:column;gap:6px;max-height:42vh;overflow:auto}
.gp-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--linha);border-radius:10px}
.gp-item>div:first-child{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0} .gp-item small{color:var(--txt3)}
.gp-qtd{display:flex;align-items:center;gap:8px} .gp-qtd b{font-size:22px;min-width:2ch;text-align:center} .gp-qtd .btn{margin:0;min-width:40px;min-height:40px;font-size:20px}
.gp-pe{display:flex;gap:8px;flex-wrap:wrap} .gp-pe .btn{margin:0} .gp-pe .btn-prim{flex:1;min-height:48px;font-size:16px}
.gp-dif td{background:color-mix(in srgb,var(--alerta) 8%,transparent)}
@media (max-width:640px){.gp-botoes{grid-template-columns:1fr 1fr}.gp-grande{min-height:84px;padding:14px}.gp-onde.tem b{font-size:36px}}
.gp-barra-etq{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 6px} .gp-barra-etq .btn{margin:0} .gp-barra-etq small{color:var(--txt3);font-size:12px}
/* central de impressão de etiquetas */
.painel .corpo.etq{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start;padding:18px 20px 24px}
.etq-esq{display:flex;flex-direction:column;gap:12px;min-width:0}
.etq-abas{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:var(--bg3);border-radius:10px}
.etq-abas button{font:inherit;border:0;background:none;border-radius:7px;padding:9px 12px;text-align:left;cursor:pointer;color:var(--txt2);display:flex;flex-direction:column;gap:1px}
.etq-abas button b{font-size:14px;font-weight:620} .etq-abas button small{font-size:11.5px;color:var(--txt3)}
.etq-abas button[aria-selected="true"]{background:var(--bg2);color:var(--txt);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.etq-abas button[aria-selected="true"] b{color:var(--acc)}
.etq-sec{display:flex;align-items:baseline;gap:10px;margin-top:2px} .etq-sec b{font-size:14.5px} .etq-sec>span:not(.espaco){font-size:12.5px;color:var(--txt2);font-variant-numeric:tabular-nums} .etq-sec .espaco{flex:1}
.etq-dica{font-size:12px;color:var(--txt3);line-height:1.45;margin:0}
.etq-grupos{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:8px}
.etq-grupo{border:1px solid var(--linha);border-radius:10px;background:var(--bg2);overflow:hidden}
.etq-grupo.tem{border-color:color-mix(in srgb,var(--acc) 45%,var(--linha))}
.etq-grupo-cab{font:inherit;display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:9px 11px 6px;cursor:pointer;text-align:left;color:var(--txt)}
.etq-grupo-cab b{font-size:13.5px;font-weight:620} .etq-grupo-cab small{margin-left:auto;font-size:11.5px;color:var(--txt3);font-variant-numeric:tabular-nums}
.etq-ck{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--txt3);flex:none;display:grid;place-items:center;font-size:11px;line-height:1;color:#fff}
.etq-grupo-cab[aria-pressed="true"] .etq-ck{background:var(--acc);border-color:var(--acc)} .etq-grupo-cab[aria-pressed="true"] .etq-ck::after{content:'✓'}
.etq-ck.meio{background:var(--acc);border-color:var(--acc)} .etq-ck.meio::after{content:'–'}
.etq-cods{display:flex;flex-wrap:wrap;gap:4px;padding:2px 11px 11px}
.etq-cod{font:600 12px ui-monospace,SFMono-Regular,Menlo,monospace;padding:4px 7px;border-radius:6px;border:1px solid var(--linha);background:var(--bg);color:var(--txt3);cursor:pointer;min-width:40px}
.etq-cod[aria-pressed="true"]{background:color-mix(in srgb,var(--acc) 14%,var(--bg2));border-color:color-mix(in srgb,var(--acc) 55%,var(--linha));color:var(--acc)}
.etq-cod:hover{border-color:var(--acc)}
.etq-vazio{border:1.5px dashed var(--linha);border-radius:10px;padding:16px;font-size:13px;color:var(--txt2);line-height:1.5;text-align:center}
.etq-fila{display:flex;flex-direction:column;gap:6px}
.etq-fila-i{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:12px;align-items:end;padding:10px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--bg2)}
.etq-fila-i.falta{border-color:color-mix(in srgb,var(--alerta) 60%,var(--linha))} .etq-fila-i.falta [data-etq-fq]{border-color:var(--alerta)}
.etq-fila-i .t{display:flex;flex-direction:column;gap:2px;min-width:0;align-self:center} .etq-fila-i .t b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} .etq-fila-i .t small{font-size:11px;color:var(--txt3)}
.etq-fila-i>.fechar{align-self:center}
.etq-num{display:flex;flex-direction:column;gap:3px} .etq-num>span{font-size:11px;color:var(--txt3);white-space:nowrap}
.etq-num input{width:64px;font:inherit;font-size:15px;font-weight:620;text-align:center;padding:5px 4px;border:1px solid var(--linha);border-radius:7px;background:var(--bg);color:var(--txt);font-variant-numeric:tabular-nums}
.etq-step{display:flex;align-items:center;border:1px solid var(--linha);border-radius:7px;overflow:hidden;background:var(--bg)}
.etq-step input{width:44px;border:0;border-radius:0;-moz-appearance:textfield} .etq-step input::-webkit-inner-spin-button{display:none}
.etq-step button{font:inherit;font-size:16px;width:30px;height:32px;border:0;background:var(--bg3);color:var(--txt);cursor:pointer} .etq-step button:hover{background:color-mix(in srgb,var(--acc) 18%,var(--bg3))}
.etq-busca{font:inherit;padding:9px 12px;border:1px solid var(--linha);border-radius:9px;background:var(--bg2);color:var(--txt)}
.etq-res{display:flex;flex-direction:column;border:1px solid var(--linha);border-radius:10px;overflow:hidden;background:var(--bg2)}
.etq-res>small{font-size:11px;color:var(--txt3);padding:7px 12px 3px;text-transform:uppercase;letter-spacing:.04em}
.etq-res button{font:inherit;display:flex;align-items:center;gap:10px;border:0;border-top:1px solid var(--linha);background:none;padding:8px 12px;cursor:pointer;text-align:left;color:var(--txt)}
.etq-res>small+button,.etq-res>button:first-child{border-top:0}
.etq-res button span{flex:1;display:flex;flex-direction:column;min-width:0} .etq-res button span b{font-size:13px;font-weight:560} .etq-res button span small{font-size:11px;color:var(--txt3)}
.etq-res button i{font-style:normal;font-size:11.5px;color:var(--txt2)} .etq-res button em{font-style:normal;font-weight:700;color:var(--acc);font-size:18px;width:22px;text-align:center}
.etq-res button:hover{background:color-mix(in srgb,var(--acc) 7%,var(--bg2))}
.etq-ajustes{border:1px solid var(--linha);border-radius:10px;background:var(--bg2);margin-top:4px}
.etq-ajustes>summary{list-style:none;cursor:pointer;padding:11px 14px;display:flex;align-items:center;gap:10px}
.etq-ajustes>summary::-webkit-details-marker{display:none}
.etq-ajustes>summary::before{content:'';width:7px;height:7px;border-right:2px solid var(--txt3);border-bottom:2px solid var(--txt3);transform:rotate(-45deg);transition:transform .15s;flex:none}
.etq-ajustes[open]>summary::before{transform:rotate(45deg)}
.etq-ajustes>summary span{display:flex;flex-direction:column;gap:1px} .etq-ajustes>summary b{font-size:13.5px} .etq-ajustes>summary small{font-size:11.5px;color:var(--txt3)}
.etq-ajustes[open]>summary{border-bottom:1px solid var(--linha)}
.etq-campo{display:flex;flex-direction:column;gap:8px;padding:12px 14px 4px}
.etq-rot{font-size:12.5px;font-weight:600;color:var(--txt2)} .etq-rot small{font-weight:400;color:var(--txt3);margin-left:4px}
.etq-tams{display:flex;flex-wrap:wrap;gap:6px}
.etq-tam{font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;width:70px;height:62px;padding:6px 4px;border:1px solid var(--linha);border-radius:8px;background:var(--bg);cursor:pointer;color:var(--txt2)}
.etq-tam i{display:block;background:var(--bg2);border:1.5px solid var(--txt3);border-radius:2px} .etq-tam i.outro{border:0;background:none;font-style:normal;font-size:16px;line-height:1}
.etq-tam span{font-size:11.5px;font-variant-numeric:tabular-nums;white-space:nowrap}
.etq-tam[aria-pressed="true"]{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 10%,var(--bg2));color:var(--acc);font-weight:620} .etq-tam[aria-pressed="true"] i:not(.outro){border-color:var(--acc);background:color-mix(in srgb,var(--acc) 25%,var(--bg2))}
.etq-outro{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--txt2)} .etq-outro input{width:76px;font:inherit;padding:6px 8px;border:1px solid var(--linha);border-radius:7px;background:var(--bg);color:var(--txt)} .etq-outro .btn{margin:0 0 0 4px}
.etq-disps{display:flex;gap:8px}
.etq-disp{font:inherit;display:flex;align-items:center;gap:9px;padding:7px 12px 7px 8px;border:1px solid var(--linha);border-radius:8px;background:var(--bg);cursor:pointer;color:var(--txt2);font-size:12.5px}
.etq-disp i{width:44px;height:26px;border:1.5px solid var(--txt3);border-radius:3px;background:#fff;display:flex;gap:3px;padding:3px;box-sizing:border-box}
.etq-disp i.empilhado{flex-direction:column;align-items:center} .etq-disp i.lado{flex-direction:row;align-items:center}
.etq-disp i u{display:block;background:#333;border-radius:1px} .etq-disp i s{display:block;flex:1;background:repeating-linear-gradient(90deg,#333 0 1px,transparent 1px 2.5px)}
.etq-disp i.empilhado u{width:14px;height:6px} .etq-disp i.empilhado s{width:100%}
.etq-disp i.lado u{width:10px;height:12px} .etq-disp i.lado s{height:70%}
.etq-disp[aria-pressed="true"]{border-color:var(--acc);color:var(--acc);font-weight:620;background:color-mix(in srgb,var(--acc) 10%,var(--bg2))} .etq-disp[aria-pressed="true"] i{border-color:var(--acc)}
.etq-faixa{display:grid;grid-template-columns:118px minmax(0,1fr) 54px;align-items:center;gap:10px;font-size:12.5px;color:var(--txt2)}
.etq-faixa input{width:100%;accent-color:var(--acc)} .etq-faixa b{font-variant-numeric:tabular-nums;color:var(--txt);font-weight:600;text-align:right;font-size:12px}
.etq-ajustes .cm-chk{font-size:12.5px}
.etq-fino{margin:8px 14px 12px;border-top:1px solid var(--linha);padding-top:8px} .etq-fino>summary{cursor:pointer;font-size:12.5px;color:var(--txt2);padding:4px 0}
.etq-fino[open]{display:flex;flex-direction:column;gap:9px} .etq-fino .lnk{align-self:flex-start}
.etq-dir{position:sticky;top:0;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:12px;background:color-mix(in srgb,var(--txt3) 14%,var(--bg2));border:1px solid var(--linha)}
.etq-prev-cab{display:flex;align-items:baseline;justify-content:space-between} .etq-prev-cab b{font-size:13px} .etq-prev-cab small{font-size:11.5px;color:var(--txt3)}
.etq-palco{display:grid;place-items:center;min-height:180px;padding:14px 6px;border-radius:9px;background:repeating-linear-gradient(45deg,transparent 0 8px,color-mix(in srgb,var(--txt3) 7%,transparent) 8px 16px)}
.etq-escala{overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.25),0 0 0 1px rgba(0,0,0,.06);border-radius:2px;background:#fff}
.etq-escala.vazia{display:grid;place-items:center;box-shadow:none;border:1.5px dashed var(--txt3);background:transparent;color:var(--txt3);font-size:12px;text-align:center;padding:6px}
.etq-pag{display:flex;align-items:center;justify-content:center;gap:10px}
.etq-pag>span{display:flex;flex-direction:column;align-items:center;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums;min-width:0;text-align:center}
.etq-pag>span small{font-weight:400;color:var(--txt3);font-size:11.5px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.etq-pag button{font:inherit;font-size:18px;width:32px;height:32px;border-radius:50%;border:1px solid var(--linha);background:var(--bg2);color:var(--txt);cursor:pointer;flex:none} .etq-pag button:disabled{opacity:.35;cursor:default}
.etq-teste{margin:0;align-self:stretch}
.etq-rolo{display:flex;flex-direction:column;gap:7px;padding-top:12px;border-top:1px solid var(--linha)}
.etq-rolo.novo{border:1.5px solid var(--alerta);border-radius:9px;padding:10px;background:color-mix(in srgb,var(--alerta) 8%,var(--bg2))}
.etq-rolo .etq-tams{display:grid;grid-template-columns:repeat(4,1fr);gap:5px} .etq-rolo .etq-tam{width:auto}
.etq-pe{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--linha);background:var(--bg2)}
.etq-pe small{font-size:12px;color:var(--txt3)} .etq-pe .btn{margin:0;padding:10px 22px;font-size:14.5px;font-weight:620;min-width:210px}
.etq-pe .btn:disabled{opacity:.5;cursor:default}
iframe.etq-impressao{position:fixed;right:0;bottom:0;width:0;height:0;border:0;visibility:hidden}
@media (max-width:820px){.painel .corpo.etq{grid-template-columns:1fr;padding:14px 14px 20px}.etq-dir{position:static}.etq-fila-i{grid-template-columns:auto auto 1fr auto}.etq-fila-i .t{grid-column:1/-1}.etq-pe{padding:10px 14px}.etq-pe small{display:none}.etq-pe .btn{flex:1}.etq-grupos{grid-template-columns:1fr}}
.gp-explica{margin:4px 0 10px}
.gp-zonas{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-bottom:12px}
.gp-estantes{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;align-items:start}
.gp-estante{border:1px solid var(--linha);border-radius:12px;padding:10px;background:var(--bg2)}
.gp-est-cab{display:flex;flex-direction:column;gap:2px;margin-bottom:8px} .gp-est-cab b{font-size:15px} .gp-est-cab small{color:var(--txt3)}
.gp-grade{display:grid;gap:4px;padding:6px;border-radius:8px;border:2px solid color-mix(in srgb,var(--txt3) 60%,transparent);border-top-width:4px}
.gp-lugar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:44px;padding:4px;border-radius:6px;border:1px solid var(--linha);background:var(--bg);color:var(--txt);font:inherit;cursor:pointer}
.gp-lugar b{font-size:15px;font-family:ui-monospace,monospace} .gp-lugar i{font-style:normal;font-size:11px;color:var(--ok);font-weight:600} .gp-lugar small{font-size:11px;color:var(--txt3)}
.gp-lugar:hover{border-color:var(--txt2)} .gp-lugar.vazio{border:0;background:none;cursor:default}
.gp-lugar.reserva{background:color-mix(in srgb,#e67e22 10%,var(--bg))} .gp-lugar.separacao{background:color-mix(in srgb,#7f8c8d 12%,var(--bg))}
.gp-zona{min-height:56px} .gp-zona.alerta{border-color:var(--risco);background:color-mix(in srgb,var(--risco) 12%,var(--bg))}
.gp-est-pe{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:12.5px} .gp-est-pe small{color:var(--txt3)}
.gp-ajustar,.gp-nova{width:100%} .gp-ajustar summary,.gp-nova summary{cursor:pointer;list-style:none} .gp-ajustar summary::-webkit-details-marker,.gp-nova summary::-webkit-details-marker{display:none}
.gp-nova{border:1px dashed var(--linha);border-radius:12px;padding:10px}
.gp-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-top:8px;align-items:end}
.gp-form label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--txt2)} .gp-form .larga{grid-column:1/-1}
.gp-form input,.gp-form select{font:inherit;font-size:13px;padding:5px 6px} .gp-form .btn{margin:0} .gp-form small{grid-column:1/-1;color:var(--txt3)}
.gp-lugar-gd{font:800 56px/1 ui-monospace,monospace;text-align:center;margin:6px 0 12px}
.gp-qtd-in{width:4.2em;font-size:22px;font-weight:700;text-align:center;padding:6px 2px;border:1px solid var(--linha);border-radius:8px;background:var(--bg);color:var(--txt);-moz-appearance:textfield}
.gp-qtd-in::-webkit-outer-spin-button,.gp-qtd-in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.gp-item-a{display:flex;gap:12px;flex-wrap:wrap;margin-top:3px;font-size:12.5px}
.gp-modo-cx[aria-pressed="true"]{background:color-mix(in srgb,#e67e22 22%,var(--bg2));border-color:#e67e22;font-weight:700}
.gp-msg.cx{background:color-mix(in srgb,#e67e22 14%,transparent);font-weight:400}
.gp-ler{flex-wrap:wrap} .gp-ler .gp-bipe{flex:1 1 220px}
.gp-cxs{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px} .gp-cx-chip{font:inherit;font-size:12.5px;padding:3px 8px;border-radius:999px;border:1px solid color-mix(in srgb,#e67e22 50%,var(--linha));background:color-mix(in srgb,#e67e22 12%,var(--bg));color:var(--txt);cursor:pointer}
.gp-barra{display:block;height:8px;border-radius:99px;background:color-mix(in srgb,var(--txt3) 22%,transparent);overflow:hidden;margin:4px 0 2px;max-width:420px} .gp-barra i{display:block;height:100%;background:var(--ok);border-radius:99px}
.gp-lugar.pendente{outline:2px dashed color-mix(in srgb,var(--alerta) 70%,transparent);outline-offset:-3px}
.gp-lugar.contado{outline:2px solid var(--ok);outline-offset:-3px} .gp-lugar em{font-style:normal;color:var(--ok);font-weight:800;font-size:12px;line-height:1}
.gp-leg{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px;color:var(--txt2);margin:2px 0 8px} .gp-lugar.mini{display:inline-flex;min-height:20px;width:26px;padding:0;cursor:default}

/* faixa "saiu uma versão nova": primeira coisa do cabeçalho (o --cab acompanha a altura) */
.faixa-versao{display:flex;align-items:center;gap:10px;margin:-7px -16px 2px;padding:8px 16px;
  background:color-mix(in srgb,var(--acc) 14%,var(--bg2));border-bottom:1px solid color-mix(in srgb,var(--acc) 35%,var(--linha));
  color:var(--txt);font-size:13px;line-height:1.35}
.faixa-versao>svg{flex:none;color:var(--acc)}
.faixa-versao>span{flex:1;min-width:0}
.faixa-versao .btn{flex:none;white-space:nowrap}
.faixa-versao-depois{flex:none;background:none;border:0;padding:4px 6px;color:var(--txt2);cursor:pointer;font:inherit;text-decoration:underline;text-underline-offset:2px}
.faixa-versao-depois:hover{color:var(--txt)}
@media (max-width:640px){
  .faixa-versao{flex-wrap:wrap;font-size:12.5px}
  .faixa-versao>span{flex-basis:calc(100% - 28px)}
  .faixa-versao .btn{flex:1}
}
@media print{.faixa-versao{display:none}}

/* revisão do inventário: excluir contagem e as excluídas guardadas */
.gp-rev-ac{white-space:nowrap}
.gp-rev-ac .lnk{display:block;margin:2px 0}
.lnk.perigo{color:var(--risco)}
.gp-excluidas{margin:10px 0 4px;border:1px dashed var(--linha);border-radius:var(--raio);padding:8px 12px;font-size:13px;color:var(--txt2)}
.gp-excluidas summary{cursor:pointer;color:var(--txt2)}
.gp-excluidas ul{margin:8px 0 2px;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.gp-excluidas small{color:var(--txt3)}
.simb-pend small.risco{color:var(--risco);font-weight:600}

/* armazém: estante — a grade cabe no cartão (até muitos vãos), ações como botões de verdade */
.gp-estante{min-width:0;display:flex;flex-direction:column}
.gp-est-cab .tag{align-self:flex-start;font-size:11px}
.gp-grade-rolo{overflow-x:auto;min-width:0}
.gp-grade .gp-lugar{min-width:0;padding:4px 2px}
.gp-grade .gp-lugar b{font-size:max(11px,calc(17px - var(--vaos,1) * 1px));white-space:nowrap}
@media (min-width:760px){.gp-estante.larga{grid-column:span 2}}
.gp-est-nota{display:block;margin-top:6px;font-size:12px;color:var(--txt3)}
.gp-est-acoes{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:10px}
.btn.btn-mini{min-height:28px;padding:3px 10px;font-size:12.5px;gap:5px}
.btn.btn-mini svg{flex:none;opacity:.8}
.btn.btn-mini.ativo{border-color:var(--acc);color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,var(--bg2))}
.gp-ajustar{border-top:1px dashed var(--linha);margin-top:10px;padding-top:2px}
.gp-form .cm-chk{flex-direction:row;align-items:baseline;gap:6px;font-size:12.5px;color:var(--txt)}
.gp-form .cm-chk small{grid-column:auto;color:var(--txt3)}
.gp-form-pe{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.gp-form-pe small{grid-column:auto}
/* espaços no chão: o que fica fora do inventário geral e o "+" para criar */
.gp-lugar.fora{border-style:dashed;border-color:color-mix(in srgb,var(--alerta) 60%,var(--linha))}
.gp-fora-selo{font-size:10px;line-height:1.2;color:var(--alerta);font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.gp-zona-nova{border-style:dashed;color:var(--acc);background:none}
.gp-zona-nova b{font-size:20px;font-family:inherit} .gp-zona-nova small{color:var(--acc)}
.gp-zona-nova.ativo{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,var(--bg))}
.gp-zona-nova-form{border:1px dashed var(--linha);border-radius:12px;padding:4px 12px 12px;margin:-4px 0 12px}
.gp-zona-aj{margin-top:14px;border-top:1px solid var(--linha);padding-top:10px}
.gp-zona-aj summary{cursor:pointer;color:var(--acc);font-size:13px}
.gp-fora{font-size:13px;padding:8px 10px;border-radius:var(--raio);background:color-mix(in srgb,var(--alerta) 12%,transparent);border-left:3px solid var(--alerta)}
.gp-estantes{align-items:stretch} .gp-estantes>.gp-nova{align-self:start}
.etq-margens{display:grid;grid-template-columns:1fr 1fr;gap:2px 14px}
@media (max-width:820px){.etq-margens{grid-template-columns:1fr}}
.etq-rot small{display:block;font-weight:400;text-transform:none;letter-spacing:0;color:var(--txt3);font-size:11.5px;margin-top:1px}

/* entrada e saída pela nota fiscal */
.gn-drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 16px;border:2px dashed var(--linha);border-radius:12px;cursor:pointer;text-align:center;color:var(--txt2);background:var(--bg)}
.gn-drop b{color:var(--acc);font-size:15px} .gn-drop svg{color:var(--acc)} .gn-drop:hover,.gn-drop.sobre{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 6%,var(--bg))}
.gn-h{margin:18px 0 8px;font-size:14px} .gn-h small{display:block;font-weight:400;color:var(--txt3);font-size:12px;margin-top:2px}
.gn-nota{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg);margin-bottom:10px}
.gn-nota>div:first-child{flex:1;min-width:200px} .gn-nota small{color:var(--txt3)} .gn-quem{margin-top:2px}
.gn-tot{text-align:right} .gn-tot b{font-size:22px;display:block;line-height:1} .gn-tot small{color:var(--txt3);font-size:12px}
.gn-todos{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0} .gn-todos label{font-weight:600;display:flex;gap:8px;align-items:center} .gn-todos small{color:var(--txt3)}
.gn-tab select{max-width:210px;font:inherit;font-size:13px;padding:3px 4px}
.gn-pc{width:64px;font:inherit;font-size:13px;padding:3px 5px} .gn-cx{display:block;color:var(--txt3);font-size:11.5px;margin-top:2px}
.gn-chip{display:inline-flex;gap:4px;align-items:baseline;padding:1px 7px;border-radius:10px;background:var(--bg3);font-size:12.5px;margin:1px 2px 1px 0}
tr.gn-falta td{background:color-mix(in srgb,var(--alerta) 7%,transparent)} .gn-falta-t{color:var(--alerta);font-size:12px;margin-top:3px}
.gp-alerta.ameno{border-left-color:var(--alerta);background:color-mix(in srgb,var(--alerta) 8%,var(--bg2));font-size:13px}
.gn-pe{position:sticky;bottom:0;background:var(--bg2);padding-top:10px}
.gn-feito{text-align:center;padding:30px 10px} .gn-feito b{font-size:18px;color:var(--ok)} .gn-feito p{color:var(--txt2)}
.gn-feito-a{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.gn-hist{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.gn-hist-l{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);font-size:13px}
.gn-hist-l small{color:var(--txt3)} .gn-hist-l.desfeita{opacity:.6} .gn-hist-l.desfeita b{text-decoration:line-through} .gn-desfeita{font-style:italic}
.gn-busca{width:100%;box-sizing:border-box;font:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg);color:var(--txt);margin-bottom:8px}
tr.gn-canc td{color:var(--txt3)}
.gpl-passo{border:1px solid var(--linha);border-radius:12px;padding:12px 14px;margin-bottom:12px;background:var(--bg)}
.gpl-passo>b{font-size:14px} .gpl-passo p{margin:6px 0 10px;color:var(--txt2);font-size:13px}
.gpl-drop{padding:16px} .gpl-res{margin:10px 0 6px;font-size:13px}

/* conferência por bipe (entrada/saída) e a crítica */
.gn-conf-ini{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 14px;border:1px dashed color-mix(in srgb,var(--acc) 50%,var(--linha));border-radius:12px;margin:6px 0 10px;background:color-mix(in srgb,var(--acc) 4%,var(--bg))}
.gn-conf-ini>div{flex:1;min-width:240px} .gn-conf-ini b{display:block;font-size:14px} .gn-conf-ini small{color:var(--txt2)}
.gn-conf{position:sticky;top:-14px;z-index:3;display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--acc) 45%,var(--linha));border-radius:12px;margin:6px 0 10px;background:var(--bg2);box-shadow:0 4px 12px rgba(0,0,0,.06)}
.gn-conf-l{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gn-bipe{flex:1;min-width:220px;font:inherit;font-size:16px;padding:10px 12px;border:2px solid var(--acc);border-radius:10px;background:var(--bg);color:var(--txt)}
.gn-modos{display:flex;gap:4px} .gn-modo-dan[aria-pressed="true"]{background:var(--risco);border-color:var(--risco);color:#fff}
.gn-video{width:100%;max-height:220px;object-fit:cover;border-radius:10px;background:#000}
.gp-msg.alerta{background:color-mix(in srgb,var(--alerta) 18%,transparent)}
.gn-placar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--txt2)} .gn-placar b{color:var(--txt);font-size:15px}
.gn-placar .t-info{color:var(--info);font-weight:600} .gn-placar .t-alerta{color:var(--alerta);font-weight:600}
.gn-barra{flex:1;min-width:120px;height:8px;border-radius:4px;background:var(--bg3);overflow:hidden} .gn-barra i{display:block;height:100%;background:var(--ok);border-radius:4px}
.gn-num{width:60px;font:inherit;font-size:13px;padding:3px 5px;text-align:right} .gn-num.dan{border-color:color-mix(in srgb,var(--risco) 50%,var(--linha))}
.gn-obs{display:block;width:100%;max-width:340px;margin-top:4px;font:inherit;font-size:12.5px;padding:3px 6px;border:1px solid var(--linha);border-radius:6px;background:var(--bg)}
.gn-obs-l{font-size:12px;margin-top:2px}
.gn-aqui{margin-top:4px;font-size:12.5px;color:var(--txt2);padding:4px 6px;border-radius:6px;background:color-mix(in srgb,var(--info) 8%,transparent)} .gn-aqui select{max-width:170px;font-size:12.5px}
.gn-obs-crit{display:flex;flex-direction:column;gap:4px;margin:10px 0 4px;font-size:12px;color:var(--txt2);font-weight:600}
.gn-obs-crit textarea{font:inherit;font-size:13px;font-weight:400;padding:7px 10px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg);color:var(--txt);resize:vertical}
/* recebimento: chave da DANFE e volumes; mover entre lugares */
.gn-chave-box{display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid color-mix(in srgb,var(--acc) 45%,var(--linha));border-radius:12px;background:var(--bg2);margin-bottom:6px}
.gn-chave-box b{font-size:15px} .gn-chave-box small{color:var(--txt2)} .gn-chave{font:inherit;font-size:16px;padding:10px 12px;border:2px solid var(--acc);border-radius:10px;background:var(--bg);color:var(--txt)}
.gn-passo{display:flex;align-items:baseline;gap:8px;margin:14px 0 6px;font-size:14px} .gn-passo small{font-weight:400;color:var(--txt3);font-size:12px}
.gn-passo span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--acc);color:#fff;font-size:12px;flex:none}
.gn-vol{border:1px solid var(--linha);border-radius:12px;padding:4px 14px 12px;background:var(--bg)}
.gn-vol-l{display:flex;align-items:center;gap:14px;flex-wrap:wrap} .gn-vol-nota{flex:1;min-width:240px;font-size:13.5px}
.gn-vol-q{display:flex;align-items:center;gap:8px;font-weight:600} .gn-step{display:inline-flex;align-items:center;gap:4px} .gn-step input{width:56px;text-align:center;font:inherit;font-size:15px;padding:4px}
.gn-ocorr{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px;font-size:13px} .gn-ocorr>span{color:var(--txt2);margin-right:2px} .gn-ocorr small{color:var(--txt3)}
.chip.gn-oc-on{background:color-mix(in srgb,var(--risco) 15%,var(--bg2));border-color:var(--risco);color:var(--risco)}
.gn-vol-obs{max-width:none;margin-top:10px}
.gm-rota{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:10px 0} .gm-rota label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--txt2);font-weight:600}
.gm-rota select{min-width:220px;font:inherit;font-size:14px;padding:6px} .gm-seta{font-size:22px;color:var(--acc);padding-bottom:4px}
tr.gm-sel td{background:color-mix(in srgb,var(--acc) 7%,transparent)} .gm-atalhos{display:flex;gap:8px;align-items:center;margin-top:8px}
.gn-oc-par{display:inline-flex;align-items:center} .gn-oc-par .chip{border-top-right-radius:0;border-bottom-right-radius:0}
.gn-oc-x{border:1px solid var(--risco);border-left:0;background:color-mix(in srgb,var(--risco) 10%,var(--bg2));color:var(--risco);border-radius:0 14px 14px 0;padding:0 8px;min-height:28px;cursor:pointer;font:inherit}
/* aba Etiquetas de volume da central */
.etq-abas.tres{grid-template-columns:repeat(3,minmax(0,1fr))}
.etq-saidas{display:flex;flex-direction:column;gap:6px;max-height:230px;overflow:auto;padding-right:2px}
.etq-saida{display:grid;grid-template-columns:auto 1fr auto;gap:2px 10px;align-items:baseline;text-align:left;padding:8px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--bg);color:var(--txt);font:inherit;cursor:pointer}
.etq-saida span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px} .etq-saida small{color:var(--txt3);font-size:12px}
.etq-saida[aria-pressed="true"]{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,var(--bg));box-shadow:inset 0 0 0 1px var(--acc)}
.etq-vol-campos{display:flex;flex-direction:column;gap:12px;padding:12px 14px;border:1px solid var(--linha);border-radius:12px;background:var(--bg)}
.etq-txt{font:inherit;font-size:14px;padding:7px 10px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--bg2);color:var(--txt)}
@media (max-width:820px){.etq-abas.tres{grid-template-columns:1fr}}
