diff --git a/src/index.html b/src/index.html
index 2d5eeaf..4bafd66 100644
--- a/src/index.html
+++ b/src/index.html
@@ -63,8 +63,8 @@
.meta-select { cursor: pointer; }
/* ── MAIN 2 COLUMNS — single scroll, no internal scrollbars ──────────── */
- .main { flex: 1; display: grid; grid-template-columns: 1fr 1fr; overflow: visible; }
- .col { padding: 12px 16px; overflow: visible; }
+ .main { flex: 1; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; min-height: 0; }
+ .col { padding: 12px 16px; overflow: hidden; }
.col-left { border-right: 1px solid var(--border); }
.col-right { background: var(--surface); display: flex; flex-direction: column; }
.col-right .section { flex-shrink: 0; }
@@ -1981,9 +1981,11 @@ async function tauriCarregarRascunho() {
// ─── Confirm Modal ────────────────────────────────────────────────────────
function openConfirmModal() {
console.log('[DEBUG] openConfirmModal chamado');
- const operador = val('f-operador').trim();
- const turno = val('f-turno').trim();
- const loja = val('f-loja').trim();
+ // Usa estado (que o boot fixou para builds fixas) em vez de ler DOM
+ // — o DOM pode estar vazio se o select está disabled/hidden
+ const operador = estado.operador.trim();
+ const turno = estado.turno.trim();
+ const loja = estado.loja.trim();
console.log('[DEBUG] openConfirmModal campos:', {operador, turno, loja});
if (!operador || !turno || !loja) {
console.log('[DEBUG] openConfirmModal: campos faltando, alert');
@@ -2051,8 +2053,7 @@ document.getElementById('confirm-print').addEventListener('click', async () => {
alert('Erro ao montar dados do recibo.');
return;
}
- // Fecha modal APÓS gerar preview (não antes)
- closeConfirmModal();
+ // NÃO fecha o modal — o preview de impressão abre POR CIMA (depois de imprimir e fechar, continua no confirm)
openPrintPreview(data, 'report');
});