/* ============================================================
   telas.css — Notas, Financeiro, Painel, Mais, nota aberta, modais e formulários.
   Sem cor escrita aqui (só tokens de tema.css): a cor da fazenda vem de --faz / --faz-fundo.
   ============================================================ */
a.botao,label.botao{text-decoration:none;cursor:pointer}
.logo-img{height:30px;width:auto;display:block}
.doc.cinza{background:var(--card-2);color:var(--tinta-2)}
.doc.etq-faz{color:#fff;flex:0 0 auto;min-width:0;padding:4px 10px;white-space:nowrap}.tabela .doc.etq-faz{display:inline-flex;padding:4px 10px}   /* etiqueta da fazenda (centro de custo) na lista de Notas */
.destino.vazio-d{border-color:var(--linha)}
.destino.vazio-d .uf{background:var(--card-2);color:var(--cinza)}
.destino.vazio-d .fora{background:var(--card-2);color:var(--tinta-2)}
.lin-q .rot,.lin-preco .rot{display:block}
.rod-aviso{color:var(--atencao-tx)}
.carga.toque{cursor:pointer}

/* ---------- filtros, abas e segmentos ---------- */
.filtros{display:flex;gap:8px;flex-wrap:wrap}
.filtros button{min-height:var(--toque-min);padding:0 14px;border:2px solid var(--linha);background:var(--card);border-radius:var(--r-pill);font-weight:800;font-size:var(--t-13);color:var(--tinta-2);cursor:pointer}
.filtros button.on{border-color:var(--marca);background:var(--card-2);color:var(--tinta)}
.seg{display:flex;gap:8px}
.seg button{flex:1;min-height:var(--toque-min);border:2px solid var(--linha);background:var(--card);border-radius:var(--r-pill);font-weight:800;font-size:var(--t-14);cursor:pointer;color:var(--tinta-2)}
.seg button.on{border-color:var(--marca);background:var(--card-2);color:var(--tinta)}
.so-pc{display:none}.so-cel{display:flex;flex-direction:column;gap:12px}
.tabela tbody tr[data-a]{cursor:pointer}
.tabela tbody tr[data-a]:hover td{background:var(--card-2)}
.tabela td .botao,.tabela td .chip{white-space:nowrap}

/* ---------- financeiro ---------- */
.mes-nav{display:flex;align-items:center;justify-content:space-between;margin:10px 0 8px}
.mes-nav b{display:block}.mes-nav b::first-letter{text-transform:uppercase}
.movs{margin-top:6px}
.mov{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--linha)}
.mov:last-child{border-bottom:0}
.mov-corpo{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:none;border:0;text-align:left;cursor:pointer;padding:8px 0;min-height:var(--toque-min)}
.mov .ic{width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:20px;flex:0 0 auto}
.mov .ic.r{background:var(--ok-bg);color:var(--ok-tx)}.mov .ic.d{background:var(--problema-bg);color:var(--problema-tx)}
.mov .t{display:block;font-weight:800;font-size:var(--t-13);overflow-wrap:anywhere}
.mov .s{display:block;font-size:var(--t-12);color:var(--cinza);font-weight:600}
.mov .vl{font-family:var(--fonte-titulo);font-weight:700;font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}
.mov .vl.r{color:var(--ok-tx)}.mov .vl.d{color:var(--problema-tx)}
em.sit{font-style:normal;font-weight:800}
em.sit.ok{color:var(--ok-tx)}em.sit.atencao{color:var(--atencao-tx)}em.sit.problema{color:var(--problema-tx)}

/* ---------- painel ---------- */
.faz-lin{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;background:none;border:0;border-bottom:1px solid var(--linha);text-align:left;cursor:pointer;padding:8px 0}
.faz-lin.soma{cursor:default;border-bottom:0;border-top:2px solid var(--linha)}
.faz-lin .cor,.faz-card .cor{width:12px;align-self:stretch;border-radius:8px;flex:0 0 auto}
.faz-lin .num,.faz-lin b.num{font-family:var(--fonte-titulo);font-weight:700;font-size:17px;white-space:nowrap}
.num.pos{color:var(--ok-tx)}.num.neg{color:var(--problema-tx)}
.barras-cat{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.bc-t{display:flex;justify-content:space-between;gap:8px;font-size:var(--t-13);font-weight:700}
.bc-b{height:10px;border-radius:99px;background:var(--linha);margin-top:4px;overflow:hidden}
.bc-b i{display:block;height:100%;border-radius:99px;background:var(--marca-2)}

/* ---------- mais ---------- */
.faz-card,.prod-lin{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--linha)}
.faz-card:last-child,.prod-lin:last-child{border-bottom:0}
.faz-card b.serif{font-size:19px}
.como{border-top:1px solid var(--linha);margin-top:12px}
.como summary{min-height:var(--toque-min);display:flex;align-items:center;font-weight:800;cursor:pointer}
.como p{font-size:var(--t-13);line-height:1.5;color:var(--tinta-2);margin:0 0 12px}
.passos{padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:var(--t-14);line-height:1.5;margin-top:10px;color:var(--tinta-2)}
.passos b{color:var(--tinta)}

/* ---------- nota aberta, DANFE, modais ---------- */
.par{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;border-bottom:1px solid var(--linha);font-size:var(--t-13)}
.par:last-child{border-bottom:0}
.par span{color:var(--cinza);font-weight:700}
.par b{text-align:right;font-weight:800}
.chave{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;font-weight:700;line-height:1.7;word-spacing:.35em;background:var(--card-2);border-radius:var(--r-s);padding:10px 12px;overflow-wrap:anywhere}
.acoes{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.acoes-linha{display:flex;gap:10px;flex-wrap:wrap}
.acoes-linha>*{flex:1;min-width:150px}
.danfe-acoes{display:flex;gap:10px;flex-wrap:wrap}
.danfe-acoes>*{flex:1;min-width:150px}
.danfe-wrap,.danfe-topo{margin:0}
.lista-op{display:flex;flex-direction:column;gap:8px}
.lin-opcao{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;border:2px solid transparent;background:var(--card-2);border-radius:var(--r-m);padding:10px 14px;cursor:pointer;text-align:left}
.lin-opcao.on{border-color:var(--marca)}
.lin-opcao b{display:block;font-size:14px;font-weight:800}
.lin-opcao span{display:block;font-size:var(--t-12);color:var(--cinza);font-weight:600}
.lin-opcao .ck{margin-left:auto;font-weight:900;opacity:0}
.lin-opcao.on .ck{opacity:1}
.campo-linha{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:10px}
.campo-busca{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}
.botao-lupa{min-height:var(--toque-min);min-width:var(--toque-min);border:0;border-radius:var(--r-m);background:var(--marca);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity var(--dur-media)}
.botao-lupa:disabled{opacity:.38;cursor:not-allowed}
.botao-lupa.ocupado{animation:pulsa 1s ease-in-out infinite}
@keyframes pulsa{50%{opacity:.55}}
.troca-botoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
#m-cnpj-aviso,#m-cnpj-troca{margin-bottom:10px}
.campo-linha-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
select.campo{appearance:auto}
.emitindo{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 8px 12px;text-align:center}
.emitindo b{font-family:var(--fonte-titulo);font-weight:700;font-size:24px}
.emitindo span{font-size:var(--t-13);color:var(--tinta-2);font-weight:600}
.spinner{width:46px;height:46px;border-radius:99px;border:5px solid var(--linha);border-top-color:var(--marca);animation:gira .8s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
body[data-rota="venda"] .toast{bottom:250px}
body[data-rota="danfe"] .toast{bottom:24px}
body[data-rota="danfe"] #nav{display:none}

@media (min-width:1024px){
  .corpo{margin:-44px 28px 0}
  .corpo.duas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
  .corpo.duas>.cheio{grid-column:1/-1}
  .so-pc{display:block}.so-cel{display:none}
  body[data-rota="venda"] .toast{bottom:24px}
  .danfe-acoes{max-width:520px}
}
@media print{
  .proto,.lateral,.nav,.nao-imprime,#modais,.toast,.tp{display:none!important}
  .corpo{margin:0!important}
  *{animation:none!important;transition:none!important}
}

/* ajustes de celular estreito */
.stats .n[data-fmt]{white-space:nowrap}
.mov{flex-wrap:wrap}
.mov-corpo{flex:1 1 100%}
.mov>.botao{margin:0 0 10px 46px}
.filtros.abas button{flex:1;padding:0 8px}
.faz-lin .mini{display:block}
.faz-lin .cresce b{display:block}
