/* BF Gerenciador | Camada visual de clareza
   Não altera estruturas, permissões, cálculos nem campos existentes. */

/* Hierarquia clara: cabeçalhos, ações e separação entre áreas */
main .topo-pagina, main .inicio-secao-titulo { padding-bottom: 12px; border-bottom: 1px solid var(--linha); }
main .topo-pagina h1 { letter-spacing: .005em; }
main .topo-pagina p, .inicio-secao-titulo p { line-height: 1.55; max-width: 760px; }
main :is(.bloco,.quadro,.vendas-painel,.vendas-form,.vendas-historico,.fiscal-modal-conteudo) { scroll-margin-top: 86px; }
main .bloco > h2, main .bloco-titulo h2 { color: var(--tinta); }
main :is(.bloco,.vendas-form-grupo,.vendas-painel,.dev-card) { border-color: var(--linha-forte); }
main :is(.bloco,.quadro,.vendas-painel) { box-shadow: 0 4px 20px rgba(0,0,0,.12); }
main .bloco:not(.fiscal-lab) { padding: clamp(16px,2vw,24px); }
main .linha-acoes { row-gap: 10px; }
main .linha-acoes.fim { padding-top: 8px; }

/* Sinalização de ações importantes */
.btn, .btn-topo, .nav-item, .nav-grupo-titulo { transition: background-color .17s ease,border-color .17s ease,box-shadow .17s ease,transform .17s ease; }
.btn.primario, .btn.sucesso { font-weight: 700; box-shadow: 0 5px 16px rgba(48,105,255,.13); }
.btn.primario:not(:disabled):hover { box-shadow: 0 5px 20px rgba(46,110,247,.33); transform: translateY(-1px); }
.btn.perigo { font-weight: 650; }
.btn:focus-visible,.btn-topo:focus-visible,.nav-grupo-titulo:focus-visible,.inicio-atalho:focus-visible { outline: 3px solid var(--azul); outline-offset: 3px; }
:where(button,a,input,textarea,select)[disabled] { cursor: not-allowed; }

/* Campos. O ⓘ só aparece nos campos que realmente têm explicação
   (regra gerada por ajuda-ui.js); é discreto e nunca recebe clique. */
label.campo { position:relative; gap:7px; line-height:1.35; }
label.campo:focus-within { color:var(--tinta); }
label.campo input, label.campo select, label.campo textarea { min-height:43px; }
input:hover:not(:disabled), select:hover:not(:disabled), textarea:hover:not(:disabled) { border-color:var(--azul-borda); }
label.campo:focus-within > input, label.campo:focus-within > select, label.campo:focus-within > textarea { background:var(--superficie); }

/* Menu: setores bem separados, estados fechados respeitados */
.nav-lateral { gap:6px; }
.nav-grupo { margin-bottom:3px; }
.nav-grupo-titulo { min-height:46px; }
.nav-grupo-titulo:hover { background:rgba(55,119,220,.15); }
.nav-grupo.aberto > .nav-grupo-titulo { color:#fff; background:rgba(45,100,190,.16); }
.nav-grupo.ativo > .nav-grupo-titulo { border-left:3px solid #4d92ff; }
.nav-grupo:not(.aberto) .nav-sub, .nav-grupo:not(.aberto) .nav-so-ver { display:none !important; }
.nav-grupo:not(.aberto) .nav-seta { transform:rotate(45deg); }
.nav-grupo.aberto .nav-seta { transform:rotate(225deg); }
.nav-lateral .nav-sub { margin:1px 0 1px 12px; padding:10px 10px 10px 22px; border-left:1px solid rgba(115,150,200,.28); border-radius:0 9px 9px 0; }
.nav-lateral .nav-sub.ativo { border-left-color:#4b92ff; }
.marca-lateral { background:#0a111a; }

/* Botão de ajuda discreto e sempre disponível no topo */
.bf-ajuda-abrir { gap:7px; border-color:rgba(80,145,250,.4); background:rgba(39,92,169,.13); }
.bf-ajuda-abrir:hover { background:rgba(47,120,239,.21); border-color:#5b9df9; }
.bf-ajuda-simbolo { display:inline-grid; place-items:center; width:25px; height:25px; flex:none; border-radius:50%; color:#fff; background:var(--botao); font-weight:800; font-size:15px; }
.bf-ajuda-texto { font-weight:700; }

/* Dica flutuante: pequena, perto do cursor e nunca intercepta clique/digitação. */
#bf-ajuda-tooltip { position:fixed; left:0; top:0; z-index:5000; max-width:min(300px,calc(100vw - 12px)); width:max-content; pointer-events:none;
  background:#1d2733; color:#eef4fb; border:1px solid #3a4b60; border-radius:6px; padding:6px 9px; font:500 12.5px/1.4 var(--texto);
  box-shadow:0 4px 14px rgba(0,0,0,.28); overflow-wrap:anywhere; animation:bf-dica .12s ease-out; will-change:transform; }
:root[data-tema="claro"] #bf-ajuda-tooltip { background:#fffef8; color:#1f2a36; border-color:#c9d3df; box-shadow:0 4px 14px rgba(0,0,0,.14); }
#bf-ajuda-tooltip[hidden] { display:none!important; }
@keyframes bf-dica { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce){ #bf-ajuda-tooltip{animation:none} }

/* Guia lateral com explicação da tela, também para celular */
#bf-ajuda-fundo { position:fixed; inset:0; z-index:3000; background:rgba(0,0,0,.51); }
#bf-ajuda-painel { position:fixed; top:0; right:0; bottom:0; z-index:3001; width:min(420px,100vw); display:flex; flex-direction:column;
  border-left:1px solid var(--linha-forte); background:var(--superficie); color:var(--tinta); box-shadow:-12px 0 50px rgba(0,0,0,.45); }
.bf-ajuda-cab { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:22px 23px; border-bottom:1px solid var(--linha); background:var(--superficie-2); }
.bf-ajuda-cab small { display:block; color:var(--azul); font-weight:800; font-size:11px; letter-spacing:.12em; margin-bottom:6px; }
.bf-ajuda-cab h2 { font:700 22px var(--condensada); }
.bf-ajuda-fechar { border:1px solid var(--linha-forte); border-radius:9px; background:var(--superficie); color:var(--tinta); font:600 25px var(--texto); width:40px; height:40px; cursor:pointer; }
.bf-ajuda-fechar:hover { background:var(--vermelho-claro); color:var(--vermelho); }
.bf-ajuda-conteudo { padding:24px; overflow:auto; line-height:1.6; }
.bf-ajuda-intro { margin:0 0 25px; padding:15px 17px; border-left:4px solid var(--botao); border-radius:8px; background:var(--azul-claro); }
.bf-ajuda-conteudo h3 { font:700 20px var(--condensada); margin:0 0 13px; }
.bf-ajuda-conteudo ol { counter-reset:passo; list-style:none; padding:0; margin:0; display:grid; gap:14px; }
.bf-ajuda-conteudo li { display:grid; grid-template-columns:32px 1fr; gap:11px; align-items:start; }
.bf-ajuda-conteudo li::before { counter-increment:passo; content:counter(passo); display:grid; place-items:center; width:31px; height:31px;
  background:var(--azul-claro); color:var(--azul); border:1px solid var(--azul-borda); border-radius:9px; font-weight:800; }
.bf-ajuda-dica { margin-top:28px; border:1px solid var(--linha-forte); border-radius:13px; padding:14px 16px; background:var(--superficie-2); }
.bf-ajuda-dica strong { color:var(--azul); }.bf-ajuda-dica p { margin:6px 0 0; font-size:.91rem; color:var(--tinta-2); }

/* Início com fluxo guiado: atalhos > pendências > detalhe por departamento. */
.inicio-orientacao { margin:18px 0 24px; padding:20px; border:1px solid var(--linha-forte); border-radius:16px;
  background:linear-gradient(135deg,rgba(48,118,236,.11),transparent 55%),var(--superficie); }
.inicio-secao-titulo { display:flex; justify-content:space-between; align-items:flex-end; gap:15px; margin-bottom:17px; }
.inicio-secao-titulo h2 { font:700 1.75rem var(--condensada); margin:5px 0 5px; }
.inicio-secao-titulo p { margin:0; color:var(--tinta-2); font-size:.91rem; }
.inicio-sobretitulo { font:800 .69rem var(--texto); color:var(--azul); letter-spacing:.13em; }
.inicio-atalhos { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:11px; }
.inicio-atalho { display:flex; align-items:center; gap:13px; text-decoration:none; color:var(--tinta); background:var(--superficie-2);
  border:1px solid var(--linha-forte); border-radius:12px; padding:13px; min-width:0; transition:background .15s,border-color .15s,transform .15s; }
.inicio-atalho:hover { background:var(--azul-claro); border-color:var(--azul-borda); transform:translateY(-1px); }
.inicio-atalho-icone { display:grid; place-items:center; flex:none; width:40px; height:40px; border-radius:10px; color:var(--azul); background:var(--azul-claro); border:1px solid var(--azul-borda); }
.inicio-atalho > span:nth-child(2) { display:flex; flex-direction:column; gap:4px; min-width:0; flex:1; }
.inicio-atalho b { font-size:.98rem; line-height:1.1; }
.inicio-atalho small { color:var(--tinta-2); font-size:.79rem; line-height:1.4; }
.inicio-atalho-seta { color:var(--azul); font-size:19px; }
.inicio-outros-atalhos { margin-top:11px; }
.inicio-outros-atalhos summary,.inicio-mais-alertas summary { cursor:pointer; color:var(--azul); font-weight:700; padding:9px 3px; width:max-content; }
.inicio-outros-atalhos > .inicio-atalhos { margin-top:10px; }
.inicio-motivo { color:var(--tinta-2); font-size:.9rem; margin:0 0 10px!important; }
.inicio-mais-alertas ul { margin-top:8px; }
.inicio-setores-titulo { margin:24px 0 14px; }
.inicio-modulo { border:1px solid var(--linha-forte); border-radius:13px; padding:0; margin-bottom:10px; background:var(--superficie); box-shadow:0 3px 14px rgba(0,0,0,.10); overflow:hidden; }
.inicio-modulo .painel-modulo-cab { display:flex; align-items:center; justify-content:space-between; gap:13px; padding:15px 19px; margin:0; cursor:pointer; list-style:none; }
.inicio-modulo .painel-modulo-cab::-webkit-details-marker { display:none; }
.inicio-modulo .painel-modulo-cab:hover { background:var(--superficie-2); }
.inicio-modulo .painel-modulo-cab h2 { display:flex; align-items:center; gap:9px; font-size:1.37rem; }
.inicio-modulo .painel-modulo-cab h2 .ic { color:var(--azul); }
.inicio-painel-acoes { display:flex; align-items:center; gap:13px; margin-left:auto; color:var(--tinta-2); font-size:.82rem; white-space:nowrap; }
.inicio-painel-expandir { color:var(--azul); font-weight:700; }
.inicio-painel-chevron { display:inline-block; width:8px; height:8px; border-right:2px solid var(--tinta-2); border-bottom:2px solid var(--tinta-2); transform:rotate(45deg); }
.inicio-modulo[open] .inicio-painel-chevron { transform:rotate(225deg); }
.inicio-modulo[open] > summary { border-bottom:1px solid var(--linha); background:rgba(51,116,213,.055); }
.inicio-modulo .painel-modulo-interior { padding:14px 18px 20px; }
.inicio-abrir-setor { display:inline-flex; align-items:center; font-size:.87rem; font-weight:700; margin-bottom:13px; text-decoration:none; }
.inicio-abrir-setor:hover { text-decoration:underline; }
.inicio-modulo .kpis { margin-bottom:10px; }
.inicio-modulo .kpi { box-shadow:none; }

@media(max-width:1000px){ .bf-ajuda-abrir { padding:7px 9px; flex:none; } .bf-ajuda-abrir .bf-ajuda-simbolo { display:grid!important; width:24px; height:24px; } .bf-ajuda-abrir .bf-ajuda-texto { display:none!important; } }
@media(max-width:760px){
  .inicio-orientacao { padding:14px; }
  .inicio-atalhos { grid-template-columns:1fr; }
  .inicio-modulo .painel-modulo-cab { padding:12px 14px; }
  .inicio-modulo .painel-modulo-interior { padding:14px; }
  .inicio-painel-contador { display:none; }
  .inicio-modulo .painel-modulo-cab h2 { font-size:1.17rem; }
  .inicio-secao-titulo h2 { font-size:1.5rem; }
  .inicio-motivo { font-size:.86rem; }
  .bf-ajuda-cab { padding:17px; }
  .bf-ajuda-conteudo { padding:17px; }
}
@media(prefers-reduced-motion:reduce){.inicio-atalho,.btn,.btn-topo,.nav-item,.nav-grupo-titulo{transition:none!important}.inicio-atalho:hover,.btn.primario:not(:disabled):hover{transform:none}}

/* Menu inferior recolhível; usuário e sair permanecem visíveis. */
.lateral-pe{min-height:0;flex-shrink:0;}
.menu-opcoes-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;text-align:left;background:rgba(45,90,158,.11);border:1px solid #23364c;border-radius:10px;color:#dce9fb;font:700 .91rem var(--texto);cursor:pointer}
.menu-opcoes-toggle:hover{background:rgba(45,102,200,.23)}
.menu-opcoes-toggle span{flex:1}
.menu-opcoes-toggle .ic{color:#82afff}
.menu-opcoes-toggle .nav-seta{flex:none}
.menu-opcoes-toggle[aria-expanded="true"] .nav-seta{transform:rotate(225deg)}
.lateral-opcoes{display:flex;flex-direction:column;gap:3px;padding:6px 0 7px;overflow-y:auto;max-height:min(43vh,340px)}
.lateral-opcoes[hidden]{display:none!important}
.lateral-pe .usuario-lateral{margin-top:5px}
/* Banner só em telas que precisam de atualização manual para não piscar. */
#novos-dados{border-color:#4a84e6;color:#cfe3ff;background:rgba(55,115,221,.17);white-space:nowrap}
#novos-dados[hidden]{display:none!important}
#novos-dados:hover{background:rgba(55,115,221,.31)}
:root[data-tema="claro"] #novos-dados{color:#174e9a}
@media(max-width:1000px){#novos-dados{padding:8px 9px;font-size:12px}}

/* =====================================================================
   FACILIDADE DE USO — 2026-10-17 (revisão "fácil e instrutivo")
   ===================================================================== */

/* 3. Barra superior: um único botão "Ajuda"; conexão vira só um ponto. */
.ao-vivo.so-ponto.on, .ao-vivo.so-ponto:not(.off) { font-size:0; gap:0; padding:6px; }
.ao-vivo.so-ponto.off { color:var(--vermelho); font-weight:700; }
.ao-vivo.so-ponto::before { width:10px; height:10px; }
.ajuda-topo-caixa { position:relative; flex:none; }
.ajuda-topo { gap:7px; border-color:rgba(80,145,250,.4); background:rgba(39,92,169,.13); }
.ajuda-topo:hover, .ajuda-topo[aria-expanded="true"] { background:rgba(47,120,239,.24); border-color:#5b9df9; }
.ajuda-topo-texto { font-weight:700; }
.ajuda-menu { position:absolute; right:0; top:calc(100% + 8px); z-index:60; width:300px; max-width:calc(100vw - 20px); padding:6px;
  background:var(--superficie); border:1px solid var(--linha-forte); border-radius:12px; box-shadow:0 14px 40px rgba(0,0,0,.4); display:grid; gap:2px; }
.ajuda-menu[hidden] { display:none!important; }
.ajuda-menu button { display:flex!important; flex-direction:column; align-items:flex-start; gap:2px; width:100%; text-align:left; padding:9px 11px; border:0; border-radius:8px;
  background:transparent; color:var(--tinta); font:inherit; cursor:pointer; }
.ajuda-menu button:hover, .ajuda-menu button:focus-visible { background:var(--azul-claro); outline:none; }
.ajuda-menu button b { font-weight:700; font-size:.95rem; }
.ajuda-menu button small { color:var(--tinta-2); font-size:.8rem; }
@media(max-width:1000px){ .ajuda-topo { padding:7px 9px; } .ajuda-topo .ajuda-topo-texto { display:none; } }

/* 2. Menu: "Outros setores" recolhido. */
.nav-outros { margin-top:8px; border-top:1px solid rgba(115,150,200,.18); padding-top:6px; }
.nav-outros > summary { display:flex; align-items:center; gap:9px; list-style:none; cursor:pointer; padding:10px 12px; border-radius:9px; color:#9fb1c8; font-weight:700; font-size:.9rem; }
.nav-outros > summary::-webkit-details-marker { display:none; }
.nav-outros > summary:hover { background:rgba(55,119,220,.12); color:#dce9fb; }
.nav-outros > summary span { flex:1; }
.nav-outros > summary small { background:rgba(115,150,200,.18); border-radius:99px; padding:1px 8px; font-size:.75rem; }
.nav-outros[open] > summary .nav-seta { transform:rotate(225deg); }
.nav-outros:not([open]) > summary .nav-seta { transform:rotate(45deg); }

/* 1. Início: "O que fazer agora". */
.inicio-cab-simples { margin-bottom:14px; }
.inicio-tarefas { border-left-width:5px; padding:18px 20px; }
.inicio-tarefas .tarefas-cab h2 { font:700 1.6rem var(--condensada); margin:0 0 4px; }
.inicio-tarefas .tarefas-cab p { margin:0 0 12px; color:var(--tinta-2); font-size:.92rem; }
.inicio-tarefas .tarefas-vazio { margin:4px 0 0; color:var(--tinta-2); }
ol.tarefas { list-style:none; margin:0; padding:0; display:grid; gap:8px; counter-reset:tarefa; }
ol.tarefas[start="6"] { counter-reset:tarefa 5; }
.atencao ol.tarefas li.tarefa a { display:flex; align-items:center; gap:12px; padding:11px 13px; border:1px solid var(--linha-forte); border-left:4px solid var(--azul);
  border-radius:10px; background:var(--superficie-2); color:var(--tinta); text-decoration:none; }
.atencao ol.tarefas li.tarefa.vermelho a { border-left-color:var(--vermelho); }
.atencao ol.tarefas li.tarefa.ambar a { border-left-color:var(--ambar); }
.atencao ol.tarefas li.tarefa.verde a { border-left-color:var(--verde); }
.atencao ol.tarefas li.tarefa a:hover { background:var(--azul-claro); border-top-color:var(--azul-borda); border-right-color:var(--azul-borda); border-bottom-color:var(--azul-borda); }
.tarefa-icone { flex:none; display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:var(--superficie); color:var(--azul); }
.tarefa.vermelho .tarefa-icone { color:var(--vermelho); } .tarefa.ambar .tarefa-icone { color:var(--ambar); }
.tarefa-texto { flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.tarefa-texto b { font-weight:600; line-height:1.3; }
.tarefa-texto small { color:var(--tinta-2); font-size:.8rem; }
.tarefa-acao { flex:none; color:var(--azul); font-weight:700; font-size:.88rem; white-space:nowrap; }
.atencao ol.tarefas li.tarefa:first-child a { background:var(--azul-claro); border-top-color:var(--azul-borda); border-right-color:var(--azul-borda); border-bottom-color:var(--azul-borda); }
.pergunta-rapida-baixa { max-width:none; margin:0 0 24px; }
@media(max-width:760px){ .tarefa-acao { display:none; } .inicio-tarefas { padding:14px; } }

/* 4. Formulário em passos. */
.etapas-nav { list-style:none; display:flex; gap:6px; margin:6px 0 16px; padding:0; overflow-x:auto; counter-reset:none; }
.etapas-nav li { flex:1; min-width:120px; }
.etapas-nav button { width:100%; display:flex; align-items:center; gap:9px; padding:9px 11px; border:1px solid var(--linha-forte); border-radius:10px;
  background:var(--superficie-2); color:var(--tinta-2); font:inherit; cursor:pointer; text-align:left; }
.etapas-nav button span { flex:none; display:grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--superficie); border:1px solid var(--linha-forte); font-weight:800; }
.etapas-nav button b { font-weight:700; font-size:.9rem; }
.etapas-nav li.atual button { color:var(--tinta); border-color:var(--botao); background:var(--azul-claro); }
.etapas-nav li.atual button span { background:var(--botao); border-color:var(--botao); color:#fff; }
.etapas-nav li.feito button span { background:var(--verde-claro); border-color:var(--verde-borda); color:var(--verde); }
.etapas-nav li.feito button span { font-size:0; } .etapas-nav li.feito button span::before { content:'✓'; font-size:14px; }
.etapa-form[hidden] { display:none!important; }
.passo-cab { margin-bottom:12px; } .passo-cab small { color:var(--azul); font-weight:800; letter-spacing:.08em; font-size:.72rem; text-transform:uppercase; }
.passo-cab h3 { font:700 1.35rem var(--condensada); margin:3px 0 4px; } .passo-cab p { margin:0; color:var(--tinta-2); font-size:.92rem; }
.passo-cab p:empty { display:none; }
.etapa-rodape { display:flex; justify-content:space-between; gap:10px; margin-top:16px; padding-top:12px; border-top:1px solid var(--linha); }
.etapa-rodape .etapa-proximo { margin-left:auto; }
.etapa-opcional { margin-top:14px; border:1px dashed var(--linha-forte); border-radius:10px; padding:4px 12px; }
.etapa-opcional > summary { cursor:pointer; padding:8px 0; color:var(--azul); font-weight:700; }
.etapa-opcional > .grade-form { padding:6px 0 10px; }
.fiscal-config-recolhida > summary { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px; cursor:pointer; padding:4px 0; }
.fiscal-config-recolhida > summary small { color:var(--tinta-2); }
.fiscal-config-recolhida[open] > summary { margin-bottom:12px; }
.fiscal-config-recolhida > section { box-shadow:none; margin-top:10px; }

/* 5. Campo que falta: destaque até ser preenchido. */
.campo-erro, input.campo-erro, select.campo-erro, textarea.campo-erro { border-color:var(--vermelho)!important; box-shadow:0 0 0 3px var(--vermelho-claro)!important; }

/* 9. Desfazer. */
.removendo { opacity:.35; filter:grayscale(1); pointer-events:none; transition:opacity .2s; }
#avisos .aviso-desfazer { display:flex; align-items:center; gap:14px; position:relative; overflow:hidden; padding-right:10px; }
.aviso-desfazer-btn { border:0; background:transparent; color:#8fc0ff; font:800 .95rem var(--texto); cursor:pointer; padding:4px 8px; border-radius:6px; }
.aviso-desfazer-btn:hover { background:rgba(120,170,255,.15); }
:root[data-tema="claro"] .aviso-desfazer-btn { color:#1e5bb8; }
.aviso-desfazer-barra { position:absolute; left:0; bottom:0; height:3px; width:100%; background:var(--botao); transform-origin:left; animation:bf-encolher linear forwards; }
@keyframes bf-encolher { from { transform:scaleX(1); } to { transform:scaleX(0); } }

/* 7. Cores de situação iguais em todo o sistema. */
.etiqueta.ok { background:var(--verde-claro); color:var(--verde); border-color:var(--verde-borda); }
.etiqueta.aviso { background:var(--ambar-claro); color:var(--ambar); border-color:var(--ambar-borda); }
.etiqueta.erro { background:var(--vermelho-claro); color:var(--vermelho); border-color:var(--vermelho-borda); }
.pill.verde { color:var(--verde); } .pill.ambar { color:var(--ambar); } .pill.vermelho { color:var(--vermelho); } .pill.azul { color:var(--azul); }
.bf-ajuda-cores-tit { margin-top:24px!important; }
.bf-ajuda-cores { display:grid; grid-template-columns:auto 1fr; gap:8px 12px; align-items:center; font-size:.9rem; color:var(--tinta-2); }
.bf-ajuda-cores .etiqueta { justify-self:start; }
.bf-ajuda-tour { margin-top:22px; width:100%; justify-content:center; }
.bf-ajuda-gloss { margin-top:18px; width:100%; justify-content:center; }

/* Glossário */
.bf-glossario-busca { width:100%; margin-bottom:14px; }
.bf-glossario { display:grid; gap:2px; margin:0; }
.bf-glossario > div { display:grid; grid-template-columns:72px 1fr; gap:12px; padding:9px 4px; border-bottom:1px solid var(--linha); }
.bf-glossario > div[hidden] { display:none; }
.bf-glossario dt { font-weight:800; color:var(--azul); }
.bf-glossario dd { margin:0; color:var(--tinta); font-size:.92rem; }

/* 6. Tour guiado. A luz não recebe clique; clicar fora encerra. */
#bf-tour-luz { position:fixed; z-index:4500; border-radius:10px; pointer-events:none; box-shadow:0 0 0 9999px rgba(3,8,15,.55), 0 0 0 3px #5b9df9;
  transition:left .2s,top .2s,width .2s,height .2s; }
#bf-tour-caixa { position:fixed; left:0; top:0; z-index:4600; width:min(330px,calc(100vw - 20px)); padding:14px 16px; border-radius:12px;
  background:var(--superficie); color:var(--tinta); border:1px solid var(--azul-borda); box-shadow:0 16px 44px rgba(0,0,0,.45); }
#bf-tour-caixa small { color:var(--azul); font-weight:800; font-size:.72rem; letter-spacing:.08em; }
#bf-tour-caixa b { display:block; font:700 1.2rem var(--condensada); margin:3px 0 4px; }
#bf-tour-caixa p { margin:0 0 12px; color:var(--tinta-2); line-height:1.5; font-size:.93rem; }
#bf-tour-caixa div { display:flex; justify-content:space-between; gap:8px; }
@media(prefers-reduced-motion:reduce){ #bf-tour-luz{transition:none} .aviso-desfazer-barra{animation-duration:0s!important} }

/* 8. Telas vazias que ensinam. */
.bloco.vazio { text-align:center; padding:34px 20px; line-height:1.6; color:var(--tinta-2); }
.bloco.vazio strong { display:block; color:var(--tinta); font-size:1.15rem; margin-bottom:4px; }
.bloco.vazio .btn { margin-top:14px; }

/* 10. Modo bancada (Produção/Logística): maior e mais fácil de tocar. */
body.modo-operador { font-size:17px; }
body.modo-operador .btn, body.modo-operador .nav-item, body.modo-operador .nav-sub, body.modo-operador .nav-grupo-titulo { min-height:48px; font-size:1.02rem; }
body.modo-operador .bc-op, body.modo-operador .bc-linha, body.modo-operador .bc-bancada-card { min-height:64px; }
body.modo-operador .bc-filtro button { min-height:50px; font-size:1.05rem; padding:0 20px; }
body.modo-operador .busca-global { display:none; }
body.modo-operador input, body.modo-operador select, body.modo-operador textarea { font-size:17px; }
.ajuda-topo .bf-ajuda-simbolo { display:inline-grid!important; }
/* Resumo do laboratório fiscal (antes aparecia como texto solto). */
.grade-kpi { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; }
.grade-kpi > div { display:flex; flex-direction:column; gap:3px; padding:12px 14px; border:1px solid var(--linha-forte); border-radius:10px; background:var(--superficie); }
.grade-kpi small { color:var(--tinta-2); font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.grade-kpi b { font:700 1.35rem var(--condensada); }
@media(max-width:760px){ .ajuda-menu { position:fixed; top:calc(env(safe-area-inset-top,0px) + 62px); left:10px; right:10px; width:auto; max-width:none; } }
