*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f4f6f8;color:#1f2937}
header{height:72px;background:#fff;border-bottom:1px solid #d8dee8;display:flex;align-items:center;justify-content:space-between;padding:0 22px;box-shadow:0 2px 8px #0001}
h1{margin:0;font-size:24px;color:#1b2b44} #status{font-size:12px;color:#6b7280}.actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
button{border:0;border-radius:8px;padding:10px 13px;background:#1f2937;color:#fff;cursor:pointer;font-weight:bold;font-size:13px}
button:hover{filter:brightness(.95)} main{display:grid;grid-template-columns:minmax(360px,42%) minmax(520px,1fr);gap:16px;padding:16px;height:calc(100vh - 72px)}
.left,.right{background:#fff;border-radius:14px;box-shadow:0 2px 12px #0001;padding:14px;overflow:auto}.right{border:2px solid #eef1f5}.left{min-width:0}.searchbar{display:flex;gap:8px;margin-bottom:12px}
input,select,textarea{width:100%;padding:13px;border:1px solid #cbd5e1;border-radius:10px;font-size:15px;background:#fff}textarea{height:70px;resize:none}
.product-table-wrap{border:1px solid #d8dee8;border-radius:12px;overflow:auto;max-height:calc(100vh - 170px)}
.product-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff}.product-table thead th{position:sticky;top:0;background:#f8fafc;border-bottom:1px solid #d8dee8;text-align:left;padding:11px;color:#344054;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.product-table td{border-bottom:1px solid #e5e7eb;padding:8px 8px;vertical-align:middle}.product-row{cursor:pointer}.product-row:hover{background:#fff8df}.product-table .code{width:92px;color:#475569;font-family:Consolas,monospace;font-size:12px}.product-table .name{font-weight:700;color:#111827}.product-table .stock{width:54px;text-align:center;color:#475569;font-size:12px}.price-cell{width:88px;font-weight:800;color:#111827;font-size:13px}.add-cell{width:76px;text-align:right}.add-cell button{padding:7px 8px;background:#c7a247;color:#111;font-size:12px}
.right h2{margin-top:0;color:#1b2b44;font-size:22px}.cart{min-height:260px;margin:10px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}
.cart-item{display:grid;grid-template-columns:1fr 88px 28px;gap:6px;align-items:center;padding:9px 0;border-bottom:1px solid #eee}
.qty{display:flex;align-items:center;gap:4px}.qty button{padding:5px 8px;border-radius:6px}.remove{background:#9b111e;color:#fff}
.totals{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.totals div{background:#111827;color:#fff;border-radius:12px;padding:12px}
.totals span{display:block;color:#cbd5e1;font-size:12px}.totals strong{font-size:24px}.finish{width:100%;background:#c7a247;color:#111;margin-top:10px}.clear{width:100%;background:#777;margin-top:8px}.payment-row{display:grid;grid-template-columns:1fr 48px;gap:8px;margin-bottom:10px}.payment-row button{background:#27a857;font-size:22px;line-height:1;padding:8px}
.modal{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;z-index:10}.modal>div{background:#fff;border-radius:16px;width:min(900px,95vw);max-height:85vh;overflow:auto;padding:18px;position:relative}.hidden{display:none}.x{position:absolute;right:12px;top:12px;background:#999}.hint{color:#64748b;margin-top:-6px}.pending-sale{border:1px solid #ddd;border-radius:10px;padding:10px;margin:8px 0}.payment-modal{width:min(760px,95vw)!important}.payment-add{display:grid;grid-template-columns:1fr 130px;gap:8px;margin:12px 0}.payment-list{border:1px solid #d8dee8;border-radius:12px;overflow:hidden}.payment-method-row{display:grid;grid-template-columns:1fr 90px;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #e5e7eb}.payment-method-row:last-child{border-bottom:0}.payment-method-row span{font-weight:600}.payment-method-row button{padding:8px 10px}
@media(max-width:1100px){main{grid-template-columns:1fr}.right{min-height:560px}.actions button{padding:8px 10px;font-size:12px}}
@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{position:absolute;left:0;top:0;width:80mm;font-family:monospace;font-size:12px} @page{size:80mm 300mm;margin:3mm}}

.payments-box{border:1px solid #e1e7ef;border-radius:12px;padding:10px;margin:10px 0;background:#fbfcfe}
.payments-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.payments-title button{padding:5px 8px;font-size:12px}
.payment-entry{display:grid;grid-template-columns:1fr 80px 80px;gap:6px}.payment-entry input{padding:9px;border:1px solid #ccd6e3;border-radius:8px}
.sale-payments{margin-top:8px;display:flex;flex-direction:column;gap:6px}.sale-payment-row{display:grid;grid-template-columns:1fr auto auto;gap:6px;align-items:center;background:white;border:1px solid #e0e6ee;border-radius:8px;padding:7px;font-size:12px}.sale-payment-row button{background:#fff0f0;color:#b42318;border:1px solid #ffd0d0;border-radius:6px;padding:4px 7px}
.payment-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;font-size:15px}
.payment-summary span{display:block;background:#fff;border:1px solid #e0e6ee;border-radius:10px;padding:10px 8px;text-align:center;font-weight:700}
.payment-summary b{display:block;font-size:22px;margin-top:3px;color:#111827;line-height:1.1}
.payment-summary .change-line{grid-column:1 / -1;background:#fff8df;border-color:#ead49a}
.sync-log-panel{position:fixed;right:14px;bottom:14px;width:370px;max-width:calc(100vw - 28px);height:230px;background:#fff;border:1px solid #d9e2ee;border-radius:14px;box-shadow:0 8px 28px rgba(15,23,42,.18);z-index:30;overflow:hidden}
.sync-log-header{height:42px;background:#f6f9fc;border-bottom:1px solid #d9e2ee;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#0f172a}
#syncBadge{font-size:12px;padding:4px 8px;border-radius:999px;background:#eef2ff;color:#1e3a8a}.sync-logs{height:188px;overflow:auto;padding:8px 10px;font-size:12px;line-height:1.25}.log-row{padding:5px 0;border-bottom:1px solid #eef2f7}.log-row .time{color:#64748b;margin-right:4px}.log-row.ok{color:#166534}.log-row.erro{color:#b42318}.log-row.info{color:#334155}
.product-row.match-exact{background:#fffbe6}.product-row.match-partial{background:#ffffff}
.product-table .code small{color:#64748b;font-size:11px}
.sync-log-panel{right:12px;bottom:12px;height:260px;width:390px}
.sync-logs{height:218px}
@media(max-width:1000px){.sync-log-panel{position:static;width:100%;max-width:100%;height:220px;margin:0 16px 16px}.sync-logs{height:178px}}

/* V6: lista de produtos mais estreita e operação de venda destacada */
.sale-payments,.payments-box,.totals{font-size:15px}
.right .finish{font-size:16px;padding:14px}
@media(min-width:1400px){main{grid-template-columns:minmax(380px,40%) minmax(620px,1fr)}}


/* V7: log integrado dentro da tela, logo abaixo do botão Limpar */
.sync-log-panel{position:relative!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:100%!important;height:185px!important;margin-top:10px!important;background:#fff;border:1px solid #d9e2ee;border-radius:12px;box-shadow:none!important;z-index:1!important;overflow:hidden}
.sync-log-header{height:36px;background:#f6f9fc;border-bottom:1px solid #d9e2ee;display:flex;align-items:center;justify-content:space-between;padding:0 10px;color:#0f172a}
.sync-logs{height:149px!important;overflow:auto;padding:7px 9px;font-size:11px;line-height:1.25}
@media(max-width:1000px){.sync-log-panel{position:relative!important;width:100%!important;max-width:100%!important;height:185px!important;margin:10px 0 0!important}.sync-logs{height:149px!important}}


/* V9: Tema visual StarNails - fundo branco com detalhes dourados */
:root{
  --sn-gold:#c7a247;
  --sn-gold-dark:#a98222;
  --sn-gold-soft:#fff8e6;
  --sn-black:#151515;
  --sn-text:#1f2937;
  --sn-border:#eadfbd;
}
body{
  background:linear-gradient(180deg,#ffffff 0%,#fbfaf7 45%,#f7f3ea 100%)!important;
  color:var(--sn-text)!important;
}
header{
  height:78px!important;
  background:#fff!important;
  border-bottom:2px solid var(--sn-gold)!important;
  box-shadow:0 3px 14px rgba(30,20,0,.10)!important;
}
.brand{display:flex;align-items:center;gap:14px;min-width:270px}
.brand-logo{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(0,0,0,.12))}
h1{color:var(--sn-black)!important;font-size:25px!important;letter-spacing:.2px}
#status{color:#7a6a40!important;font-weight:700}
.actions button{
  background:#fff!important;
  color:var(--sn-black)!important;
  border:1px solid var(--sn-gold)!important;
  box-shadow:0 2px 0 rgba(199,162,71,.24)!important;
}
.actions button:first-child,.actions button:nth-child(2){
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  border-color:#b9922c!important;
  color:#111!important;
}
main{height:calc(100vh - 78px)!important;background:transparent!important}
.left,.right{
  background:#fff!important;
  border:1px solid var(--sn-border)!important;
  border-radius:16px!important;
  box-shadow:0 8px 26px rgba(32,24,0,.08)!important;
}
.right{border:2px solid var(--sn-gold)!important;background:linear-gradient(180deg,#fff,#fffdf8)!important}
.right h2{color:var(--sn-black)!important;border-bottom:1px solid var(--sn-border);padding-bottom:8px}
input,select,textarea{
  border:1px solid #ded1a4!important;
  background:#fff!important;
  color:#1c1c1c!important;
}
input:focus,select:focus,textarea:focus{
  outline:2px solid rgba(199,162,71,.25)!important;
  border-color:var(--sn-gold)!important;
}
.searchbar button,.finish,.add-cell button{
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
}
.clear{background:#343434!important;color:#fff!important;border:1px solid #222!important}
.product-table-wrap{border:1px solid var(--sn-border)!important;background:#fff;border-radius:14px!important}
.product-table thead th{
  background:#111!important;
  color:#f7dfa1!important;
  border-bottom:2px solid var(--sn-gold)!important;
}
.product-table td{border-bottom:1px solid #eee5ca!important}
.product-row:hover{background:var(--sn-gold-soft)!important}
.product-row.match-exact{background:#fff4c9!important}
.product-table .name{color:#111!important}.price-cell{color:#111!important}.product-table .code{color:#6b5a2b!important}
.cart{border-top:1px solid var(--sn-border)!important;border-bottom:1px solid var(--sn-border)!important;background:#fffdf8;border-radius:10px;padding:0 8px}
.cart-item{border-bottom:1px solid #eee5ca!important}
.totals div{
  background:linear-gradient(180deg,#222,#111)!important;
  border:1px solid var(--sn-gold)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)!important;
}
.totals span{color:#e9d69e!important}.totals strong{color:#fff!important}
.payments-box{
  background:#fffaf0!important;
  border:1px solid var(--sn-border)!important;
}
.payments-title b{color:#111!important}.payments-title button,.payment-entry button,.payment-row button{
  background:#111!important;color:#f7dfa1!important;border:1px solid var(--sn-gold)!important;
}
.sale-payment-row{border:1px solid var(--sn-border)!important;background:#fff!important}
.sync-log-panel{border:1px solid var(--sn-border)!important;background:#fff!important}
.sync-log-header{background:#111!important;color:#f7dfa1!important;border-bottom:1px solid var(--sn-gold)!important}
#syncBadge{background:#fff3cd!important;color:#5a4200!important;border:1px solid var(--sn-gold)}
.modal>div{border:2px solid var(--sn-gold)!important;box-shadow:0 16px 42px rgba(0,0,0,.28)!important}
.x{background:#111!important;color:#f7dfa1!important;border:1px solid var(--sn-gold)!important}
.payment-list{border:1px solid var(--sn-border)!important}.payment-method-row{border-bottom:1px solid #eee5ca!important}
@media(max-width:900px){.brand-logo{width:44px;height:44px}.brand{gap:9px}h1{font-size:20px!important}header{height:auto!important;padding:10px 14px!important;align-items:flex-start}.actions{margin-left:auto}main{height:auto!important}}


/* V11: ajustes solicitados - botões dourados e pagamentos compactos */
.actions button,
.actions button:first-child,
.actions button:nth-child(2),
.actions button:nth-child(3),
.actions button:nth-child(4){
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
  box-shadow:0 2px 0 rgba(199,162,71,.24)!important;
}
.payment-entry{
  grid-template-columns:minmax(180px,50%) minmax(90px,22%) 110px!important;
  justify-content:start!important;
  align-items:center!important;
}
.payment-entry select,
.payment-entry input{height:42px!important;padding:9px!important;min-width:0!important;}
.payment-entry button{height:42px!important;padding:8px 10px!important;}
.sale-payment-row{
  width:calc(50% + 22% + 110px + 12px)!important;
  max-width:100%!important;
  grid-template-columns:minmax(180px,1fr) 90px 32px!important;
}
@media(max-width:900px){
  .payment-entry{grid-template-columns:1fr 110px!important;}
  .payment-entry button{grid-column:1 / -1!important;}
  .sale-payment-row{width:100%!important;}
}

/* V12: destaque de troco para dinheiro */
.change-line{color:#14532d!important;}
#changeTotal{color:#14532d!important;font-size:15px!important;}

/* V13: fila de vendas abertas compartilhada entre caixas */
.open-sales-panel{border:1px solid var(--sn-border,#eadfbd);border-radius:12px;background:#fff;margin-top:10px;overflow:hidden}
.open-sales-header{height:38px;background:#111;color:#f7dfa1;border-bottom:1px solid var(--sn-gold,#c7a247);display:flex;align-items:center;justify-content:space-between;padding:0 10px}
.open-sales-header button{padding:5px 10px;background:linear-gradient(180deg,#d9b95b,#c7a247)!important;color:#111!important;border:1px solid #b9922c!important}
.current-sale-info{font-size:12px;color:#5f4b12;background:#fff4cf;border-bottom:1px solid #eadfbd;padding:7px 10px;font-weight:700}
.open-sales-list{max-height:180px;overflow:auto;padding:8px;display:flex;flex-direction:column;gap:6px}
.open-sale-row{display:grid;grid-template-columns:1fr 28px;gap:8px;align-items:center;border:1px solid #eadfbd;background:#fff;border-radius:9px;padding:8px;cursor:pointer}
.open-sale-row:hover{background:#fff8e6}
.open-sale-row.active{border:2px solid #c7a247;background:#fff4cf}
.open-sale-row b{font-size:13px;color:#111}
.open-sale-row small{font-size:11px;color:#7a6a40}
.open-sale-row button{padding:4px 7px;background:#fff0f0!important;color:#b42318!important;border:1px solid #ffd0d0!important;border-radius:6px}
.pending-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px 0;padding:10px;background:#fff8e6;border:1px solid #d4af37;border-radius:12px}.pending-actions button,.pending-buttons button{background:#b88a19;color:#fff;border:0;border-radius:8px;padding:8px 10px;font-weight:700;cursor:pointer}.pending-check{display:flex;gap:8px;align-items:center;margin-bottom:6px}.pending-check input{width:18px;height:18px}.pending-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.pending-sale{background:#fff;border:1px solid #e8dcc0}.finish{font-size:18px;padding:14px 18px}


/* V15: botões separados - concluir e imprimir uma via */
.print-copy{
  width:100%;
  margin-top:8px;
  font-size:16px;
  padding:13px 18px;
  border-radius:12px;
  background:#111!important;
  color:#f7dfa1!important;
  border:1px solid var(--sn-gold,#c7a247)!important;
  font-weight:800;
  cursor:pointer;
}
.finish{width:100%;}

/* V15 ajuste final: Concluir venda e Imprimir via iguais no dourado padrão */
.finish,
.print-copy{
  width:100%!important;
  margin-top:8px!important;
  font-size:16px!important;
  padding:14px 18px!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
  box-shadow:0 2px 0 rgba(199,162,71,.24)!important;
  font-weight:800!important;
  cursor:pointer!important;
}

/* V16: botão concluir venda verde, imprimir permanece dourado */
.finish{
  background:linear-gradient(180deg,#22c55e,#16a34a)!important;
  color:#ffffff!important;
  border:1px solid #15803d!important;
  box-shadow:0 2px 0 rgba(21,128,61,.24)!important;
}
.print-copy{
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
  box-shadow:0 2px 0 rgba(199,162,71,.24)!important;
}

/* V19: status público do Bling + intervalo automático */
.bling-online-status{
  margin-top:3px;
  font-size:12px;
  color:#3f3211;
  display:flex;
  align-items:center;
  gap:5px;
  font-weight:600;
}
.bling-online-status small{color:#7a6a40;font-weight:500}
.dot{width:10px;height:10px;border-radius:50%;display:inline-block;box-shadow:0 0 0 2px rgba(0,0,0,.06)}
.dot.green{background:#16a34a}.dot.red{background:#dc2626}.dot.yellow{background:#facc15}
.auto-interval-label{
  display:flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border:1px solid #b9922c;
  border-radius:8px;
  background:#fff8e6;
  color:#111;
  font-weight:800;
  font-size:12px;
}
.auto-interval-label select{
  height:30px!important;
  padding:4px 6px!important;
  border-radius:6px!important;
  font-weight:700;
  background:#fff!important;
}

/* V21: concluir + excluir na mesma linha */
.sale-action-row{
  display:flex;
  gap:8px;
  width:100%;
  margin-top:8px;
}
.sale-action-row .finish{
  width:80%!important;
  margin-top:0!important;
}
.sale-action-row .delete-current{
  width:20%!important;
  margin-top:0!important;
  font-size:15px!important;
  padding:14px 10px!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#ef4444,#dc2626)!important;
  color:#fff!important;
  border:1px solid #b91c1c!important;
  box-shadow:0 2px 0 rgba(185,28,28,.22)!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.print-copy{
  width:100%!important;
}


/* V26: ajustes de pagamento, cliente e fila */
.payments-title{justify-content:flex-start!important;}
.payment-entry{
  grid-template-columns:minmax(260px,65%) minmax(105px,20%) 120px!important;
  gap:8px!important;
}
.sale-payment-row{
  width:100%!important;
  grid-template-columns:minmax(260px,1fr) 110px 34px!important;
  font-size:13px!important;
}
.payment-summary{
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}
.payment-summary span{
  text-align:left!important;
  padding:12px 12px!important;
  font-size:13px!important;
}
.payment-summary b{
  font-size:24px!important;
}
.payment-summary .change-line{
  grid-column:auto!important;
}
.open-sales-header{justify-content:flex-start!important;}
#customerName{margin-bottom:8px!important;}
@media(max-width:900px){
  .payment-entry{grid-template-columns:1fr!important;}
  .sale-payment-row{grid-template-columns:1fr 90px 34px!important;}
  .payment-summary{grid-template-columns:1fr!important;}
}


/* V28: pagamento visual corrigido e envio Bling robusto */
.payment-entry{
  grid-template-columns:minmax(360px,72%) minmax(130px,18%) 120px!important;
}
.payment-entry select{font-size:14px!important;font-weight:700!important;}
.payment-summary{
  grid-template-columns:1fr 1fr 1fr!important;
  gap:10px!important;
}
.payment-summary span{
  background:#fff!important;
  color:#3f3320!important;
  border:1px solid rgba(199,162,71,.35)!important;
  text-align:left!important;
  padding:12px 14px!important;
  border-radius:12px!important;
  font-size:13px!important;
  font-weight:800!important;
  box-shadow:0 2px 8px rgba(0,0,0,.05)!important;
}
.payment-summary b{
  display:block!important;
  color:#111!important;
  font-size:24px!important;
  margin-top:4px!important;
  line-height:1.05!important;
}
.payment-summary .change-line{
  grid-column:auto!important;
  display:block!important;
  background:#fff!important;
  border-color:rgba(22,163,74,.45)!important;
}
.payment-summary .change-line b{color:#15803d!important;}
.payment-add{display:none!important;}
.payment-method-row{grid-template-columns:1fr!important;}
.payment-method-row .remove,.payment-method-row button{display:none!important;}
@media(max-width:900px){
  .payment-entry{grid-template-columns:1fr 120px!important;}
  .payment-summary{grid-template-columns:1fr!important;}
}

/* V29: ajustes solicitados - troco igual, dourado nos cards e busca de clientes */
.totals div{
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
  box-shadow:0 2px 0 rgba(199,162,71,.24)!important;
}
.totals span{color:#3f3320!important;font-weight:800!important;}
.totals strong{color:#111!important;}
.payment-summary{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
}
.payment-summary span,
.payment-summary .change-line{
  grid-column:auto!important;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  background:#fff!important;
}
.payment-summary .change-line{border-color:rgba(199,162,71,.35)!important;}
.customer-search-wrap{position:relative;margin-bottom:8px!important;}
.customer-search-wrap #customerName{margin-bottom:0!important;}
.customer-suggestions{
  position:absolute;
  left:0;right:0;top:calc(100% + 4px);
  background:#fff;
  border:1px solid var(--sn-border);
  border-radius:12px;
  box-shadow:0 10px 28px rgba(15,23,42,.18);
  z-index:50;
  overflow:hidden;
  max-height:260px;
  overflow-y:auto;
}
.customer-suggestion{
  padding:10px 12px;
  border-bottom:1px solid #f1ead6;
  cursor:pointer;
  background:#fff;
}
.customer-suggestion:last-child{border-bottom:0;}
.customer-suggestion:hover{background:var(--sn-gold-soft);}
.customer-suggestion b{display:block;color:#111;font-size:14px;}
.customer-suggestion small{display:block;color:#6b5a2d;margin-top:2px;font-size:12px;}
.customer-suggestions .empty{padding:10px 12px;color:#7a6a40;font-size:12px;background:#fffdf5;}
@media(max-width:900px){
  .payment-summary{grid-template-columns:1fr!important;}
}

/* V30: ajustes visuais solicitados - cabeçalhos e pagamentos dourados */
.product-table thead th,
.open-sales-header,
.sync-log-header{
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border-bottom:1px solid #b9922c!important;
}
.open-sales-header b,
.sync-log-header b{color:#111!important;}
.payment-entry button,
.payments-title button,
.payment-row button{
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
  box-shadow:0 2px 0 rgba(199,162,71,.24)!important;
}
.payment-summary span,
.payment-summary .change-line{
  min-height:64px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.1!important;
}
.payment-summary b,
#paidTotal,
#remainingTotal,
#changeTotal{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:24px!important;
  font-weight:800!important;
  line-height:1.05!important;
  margin-top:4px!important;
}
.payment-summary .change-line b,
#changeTotal{color:#111!important;}

.price-list-entry{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:center;margin:8px 0 10px 0}
.price-list-entry label{font-size:12px;font-weight:800;color:#5c4308;text-transform:uppercase;letter-spacing:.04em}
.price-list-entry select{height:40px;border:1px solid rgba(192,151,61,.45);border-radius:12px;background:#fff;padding:0 12px;font-weight:800;color:#3d2b06;outline:none}
.price-list-entry select:focus{box-shadow:0 0 0 3px rgba(192,151,61,.22);border-color:#c0973d}


/* V33: ajustes finais de lista, carrinho, pagamento e foco */
.price-list-entry label{
  font-size:14px!important;
  font-weight:700!important;
  color:#111!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.price-list-entry select option{font-weight:700!important;}
.cart-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 96px auto 34px!important;
  gap:8px!important;
  align-items:center!important;
}
.cart-item-info{min-width:0!important;}
.cart-item-price{
  text-align:right!important;
  font-weight:800!important;
  color:#111!important;
  white-space:nowrap!important;
}
.cart-item-price small{display:block;font-size:10px;color:#6b5a2b;font-weight:700!important;}
#paymentAmount{text-align:left!important;font-weight:700!important;}
#remainingTotal.missing-value{color:#b91c1c!important;}
.payment-summary span:nth-child(2):has(#remainingTotal.missing-value){border-color:rgba(185,28,28,.35)!important;background:#fff7f7!important;}
.payment-entry button{
  background:linear-gradient(180deg,#d9b95b,#c7a247)!important;
  color:#111!important;
  border:1px solid #b9922c!important;
}
@media(max-width:900px){
  .cart-item{grid-template-columns:minmax(0,1fr) 84px auto 34px!important;}
}

.product-table thead th,.open-sales-header,.sync-log-header{background:linear-gradient(180deg,#d9b95b,#c7a247)!important;color:#111!important;border-bottom:1px solid #b9922c!important;}
.payments-title b{font-size:14px!important;font-weight:700!important;color:#111!important;}


/* V35: ajustes lista preço e impressão */
.price-list-entry label{
  font-size:14px!important;
  font-weight:700!important;
  color:#111!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.receipt80 .itemsTable thead th{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:10.5px!important;
  font-weight:700!important;
}


/* Foto do produto no bloco de busca */
.product-photo-preview{
  margin-top:14px;
  height:300px;
  min-height:300px;
  border:1px solid #e2c36f;
  border-radius:14px;
  background:#fff;
  display:flex;
  align-items:stretch;
  justify-content:center;
  padding:14px;
}
.product-photo-card{
  width:100%;
  height:100%;
  min-height:0;
  border:2px dashed #e2c36f;
  border-radius:12px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
.product-photo-card img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  display:block;
}
.product-photo-placeholder,.product-photo-info{display:none!important;}
.product-row{cursor:pointer;}

/* V43: identificação discreta do usuário/caixa no cabeçalho */
.terminal-user-badge{
  display:inline-block;
  margin:2px 0 2px 0;
  padding:2px 7px;
  border:1px solid rgba(199,162,71,.45);
  border-radius:999px;
  background:#fff;
  color:#6b4f12;
  font-size:11px;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}
.terminal-user-badge:hover{background:#fff3cf}

/* V49: compacta coluna direita para evitar rolagem nos botões */
@media (min-width: 1000px){
  main{padding:10px!important;gap:10px!important;height:calc(100vh - 78px)!important;overflow:hidden!important;}
  .left,.right{padding:10px!important;}
  .right{display:flex!important;flex-direction:column!important;overflow:hidden!important;gap:8px!important;}
  .customer-search-wrap input{height:42px!important;padding:9px 12px!important;}
  .cart{min-height:150px!important;height:clamp(150px,25vh,220px)!important;margin:0!important;overflow:auto!important;padding:0 8px!important;}
  .cart-item{padding:6px 0!important;gap:6px!important;}
  .totals{margin:0!important;gap:8px!important;}
  .totals div{padding:8px 10px!important;border-radius:10px!important;}
  .totals strong{font-size:22px!important;}
  .payments-box{margin:0!important;padding:8px 10px!important;border-radius:12px!important;}
  .payments-title{margin-bottom:6px!important;}
  .price-list-entry{margin:4px 0 8px 0!important;grid-template-columns:110px 1fr!important;}
  .price-list-entry select{height:36px!important;padding:0 10px!important;}
  .payment-entry{grid-template-columns:1fr 120px 92px!important;gap:6px!important;}
  .payment-entry select,.payment-entry input{height:36px!important;padding:7px 10px!important;font-size:14px!important;}
  .payment-entry button{height:36px!important;padding:7px 10px!important;}
  .sale-payments{margin-top:5px!important;gap:4px!important;max-height:46px!important;overflow:auto!important;}
  .sale-payment-row{padding:5px 7px!important;}
  .payment-summary{margin-top:6px!important;gap:8px!important;}
  .payment-summary span{padding:7px 8px!important;border-radius:9px!important;}
  .payment-summary b,#paidTotal,#remainingTotal,#changeTotal{font-size:21px!important;margin-top:2px!important;}
  #note{height:48px!important;min-height:48px!important;padding:10px 12px!important;}
  .sale-action-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:0!important;}
  .sale-action-row button,.finish,.delete-current{height:42px!important;margin-top:0!important;padding:9px 12px!important;font-size:14px!important;}
  .print-copy{height:38px!important;margin-top:0!important;padding:8px 12px!important;font-size:13px!important;}
  .open-sales-panel{margin-top:0!important;max-height:96px!important;overflow:hidden!important;}
  .open-sales-list{max-height:58px!important;overflow:auto!important;}
  .sync-log-panel{height:115px!important;margin-top:0!important;min-height:115px!important;}
  .sync-log-header{height:30px!important;}
  .sync-logs{height:84px!important;font-size:10.5px!important;padding:5px 8px!important;}
}
@media (min-width: 1000px) and (max-height: 850px){
  .cart{height:150px!important;min-height:130px!important;}
  .sync-log-panel{height:90px!important;min-height:90px!important;}
  .sync-logs{height:60px!important;}
  .open-sales-panel{display:none!important;}
  .print-copy{display:none!important;}
  #note{height:42px!important;min-height:42px!important;}
}

/* V50: restaurar proporção dos botões principais */
.sale-action-row{
  display:grid!important;
  grid-template-columns:4fr 1fr!important;
  gap:8px!important;
  width:100%!important;
  margin-top:8px!important;
}
.sale-action-row .finish{
  width:100%!important;
  margin-top:0!important;
}
.sale-action-row .delete-current{
  width:100%!important;
  margin-top:0!important;
  white-space:nowrap!important;
}
@media(max-width:900px){
  .sale-action-row{
    grid-template-columns:4fr 1fr!important;
  }
}

/* V51: ajustes finos dos botões e cards Itens/Total */
.sale-action-row .delete-current{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1!important;
}
.totals div{
  min-height:46px!important;
  padding:7px 10px!important;
}
.totals span{
  font-size:12px!important;
  line-height:1.1!important;
}
.totals strong{
  font-size:21px!important;
  line-height:1.05!important;
  margin-top:2px!important;
}
@media (min-width: 1000px){
  .totals div{
    min-height:44px!important;
    padding:6px 10px!important;
  }
  .totals strong{
    font-size:20px!important;
  }
}


/* V52: compacta Pago/Faltante/Troco para mesma altura visual de Itens/Total */
.payment-summary{
  margin-top:6px!important;
  gap:8px!important;
}
.payment-summary span,
.payment-summary .change-line{
  min-height:52px!important;
  height:52px!important;
  padding:6px 10px!important;
  border-radius:10px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.payment-summary b,
#paidTotal,
#remainingTotal,
#changeTotal{
  font-size:22px!important;
  line-height:1!important;
  margin-top:2px!important;
}
@media (min-width: 1000px){
  .payment-summary span,
  .payment-summary .change-line{
    min-height:50px!important;
    height:50px!important;
    padding:5px 10px!important;
  }
  .payment-summary b,
  #paidTotal,
  #remainingTotal,
  #changeTotal{
    font-size:21px!important;
    margin-top:1px!important;
  }
}

/* v53 - Status Bling movido para o lado esquerdo abaixo da foto */
.left .sync-log-panel{
  margin-top:10px;
  width:100%;
}
.left .sync-logs{
  max-height:120px;
  overflow:auto;
}
.right > .sync-log-panel{
  display:none;
}



/* V57: layout responsivo automático sem controle de zoom
   Mantém os botões da direita visíveis e deixa apenas áreas internas roláveis. */
html, body{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  overflow:hidden!important;
}
header{
  height:clamp(62px, 8vh, 78px)!important;
  min-height:62px!important;
  padding:6px 14px!important;
}
.brand-logo{
  width:clamp(42px, 5.8vh, 58px)!important;
  height:clamp(42px, 5.8vh, 58px)!important;
}
h1{
  font-size:clamp(19px, 2.2vh, 25px)!important;
  line-height:1!important;
}
#status,.terminal-user-badge,.bling-online-status{
  font-size:clamp(10px, 1.35vh, 12px)!important;
  line-height:1.15!important;
}
.actions-wrap,.actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.actions button{
  padding:clamp(6px, 1vh, 10px) clamp(8px, 1.2vw, 13px)!important;
  font-size:clamp(11px, 1.35vh, 13px)!important;
  border-radius:8px!important;
}
main{
  height:calc(100vh - clamp(62px, 8vh, 78px))!important;
  max-height:calc(100vh - clamp(62px, 8vh, 78px))!important;
  overflow:hidden!important;
  padding:clamp(8px, 1.3vh, 16px)!important;
  gap:clamp(8px, 1.2vw, 16px)!important;
  grid-template-columns:minmax(340px,42%) minmax(500px,1fr)!important;
}
.left,.right{
  min-height:0!important;
  height:100%!important;
  overflow:hidden!important;
  padding:clamp(8px, 1.3vh, 14px)!important;
}
.left{
  display:flex!important;
  flex-direction:column!important;
  gap:clamp(6px, 1vh, 10px)!important;
}
.searchbar{
  flex:0 0 auto!important;
  margin-bottom:0!important;
}
.searchbar input,.searchbar button{
  height:clamp(36px, 4.7vh, 46px)!important;
  padding:clamp(7px, 1.1vh, 13px) 12px!important;
}
.product-table-wrap{
  flex:1 1 auto!important;
  min-height:90px!important;
  max-height:none!important;
  overflow:auto!important;
}
.product-photo-preview{
  flex:0 0 clamp(105px, 17vh, 165px)!important;
  height:clamp(105px, 17vh, 165px)!important;
  min-height:105px!important;
  margin:0!important;
  background:#fff!important;
}
.sync-log-panel{
  flex:0 0 clamp(74px, 12vh, 115px)!important;
  height:clamp(74px, 12vh, 115px)!important;
  min-height:74px!important;
  margin:0!important;
}
.sync-log-header{
  height:clamp(26px, 3.4vh, 30px)!important;
}
.sync-logs{
  height:calc(100% - clamp(26px, 3.4vh, 30px))!important;
  font-size:clamp(9px, 1.2vh, 10.5px)!important;
}
.right{
  display:flex!important;
  flex-direction:column!important;
  gap:clamp(5px, .85vh, 8px)!important;
}
.customer-search-wrap{
  flex:0 0 auto!important;
}
.customer-search-wrap input{
  height:clamp(34px, 4.5vh, 42px)!important;
  padding:clamp(7px, 1vh, 12px)!important;
}
.cart{
  flex:1 1 auto!important;
  min-height:72px!important;
  height:auto!important;
  max-height:none!important;
  overflow:auto!important;
  margin:0!important;
}
.cart-item{
  padding:clamp(4px, .8vh, 9px) 0!important;
}
.totals{
  flex:0 0 auto!important;
  margin:0!important;
  gap:8px!important;
}
.totals div{
  min-height:clamp(38px, 5.2vh, 46px)!important;
  padding:clamp(5px, .8vh, 8px) 10px!important;
}
.totals strong{
  font-size:clamp(18px, 2.5vh, 21px)!important;
}
.payments-box{
  flex:0 0 auto!important;
  margin:0!important;
  padding:clamp(6px, .9vh, 10px)!important;
}
.payments-title{
  margin-bottom:clamp(3px, .6vh, 6px)!important;
}
.price-list-entry{
  margin:clamp(2px, .5vh, 4px) 0 clamp(4px, .8vh, 8px) 0!important;
}
.price-list-entry select,
.payment-entry select,
.payment-entry input,
.payment-entry button{
  height:clamp(32px, 4.1vh, 36px)!important;
  padding:clamp(5px, .8vh, 7px) 10px!important;
  font-size:clamp(12px, 1.6vh, 14px)!important;
}
.sale-payments{
  max-height:clamp(30px, 5.5vh, 46px)!important;
  overflow:auto!important;
}
.payment-summary{
  margin-top:clamp(4px, .7vh, 6px)!important;
}
.payment-summary span,
.payment-summary .change-line{
  min-height:clamp(39px, 5.5vh, 50px)!important;
  height:clamp(39px, 5.5vh, 50px)!important;
  padding:clamp(4px, .8vh, 6px) 8px!important;
}
.payment-summary b,#paidTotal,#remainingTotal,#changeTotal{
  font-size:clamp(17px, 2.45vh, 21px)!important;
}
#note{
  flex:0 0 auto!important;
  height:clamp(34px, 5.2vh, 48px)!important;
  min-height:34px!important;
  padding:clamp(7px, 1vh, 10px) 12px!important;
}
.sale-action-row{
  flex:0 0 auto!important;
  grid-template-columns:4fr 1fr!important;
  margin-top:0!important;
}
.sale-action-row button,.finish,.delete-current{
  height:clamp(38px, 5.4vh, 44px)!important;
  padding:clamp(7px, 1vh, 10px) 12px!important;
  font-size:clamp(13px, 1.8vh, 15px)!important;
}
.print-copy{
  flex:0 0 auto!important;
  height:clamp(34px, 4.9vh, 40px)!important;
  margin-top:0!important;
  padding:clamp(6px, .9vh, 9px) 12px!important;
  font-size:clamp(12px, 1.6vh, 14px)!important;
}
.open-sales-panel{
  flex:0 0 clamp(58px, 10vh, 96px)!important;
  max-height:clamp(58px, 10vh, 96px)!important;
  margin-top:0!important;
  overflow:hidden!important;
}
.open-sales-header{
  height:clamp(27px, 3.5vh, 34px)!important;
}
.current-sale-info{
  padding:clamp(3px, .6vh, 6px) 8px!important;
  font-size:clamp(10px, 1.35vh, 12px)!important;
  line-height:1.1!important;
}
.open-sales-list{
  max-height:calc(100% - clamp(27px, 3.5vh, 34px) - 20px)!important;
  overflow:auto!important;
  padding:4px 6px!important;
}
.open-sale-row{
  padding:4px 6px!important;
}
/* Em telas baixas, preserva todos os botões e compacta apenas blocos auxiliares */
@media (min-width:1000px) and (max-height:760px){
  header{height:60px!important;min-height:60px!important;}
  .brand-logo{width:40px!important;height:40px!important;}
  h1{font-size:18px!important;}
   .bling-online-status{display:flex!important;font-size:10px!important;line-height:1.05!important;margin-top:1px!important;gap:4px!important;}
  main{height:calc(100vh - 60px)!important;max-height:calc(100vh - 60px)!important;padding:7px!important;gap:8px!important;}
  .left,.right{padding:7px!important;gap:5px!important;}
  .product-photo-preview{flex-basis:88px!important;height:88px!important;min-height:88px!important;}
  .sync-log-panel{flex-basis:60px!important;height:60px!important;min-height:60px!important;}
  .sync-log-header{height:24px!important;}
  .sync-logs{height:36px!important;}
  .cart{min-height:55px!important;}
  .open-sales-panel{flex-basis:48px!important;max-height:48px!important;}
  .open-sales-list{display:none!important;}
  #note{height:30px!important;min-height:30px!important;}
}
@media(max-width:1000px){
  html,body{overflow:auto!important;height:auto!important;}
  main{height:auto!important;max-height:none!important;grid-template-columns:1fr!important;overflow:visible!important;}
  .left,.right{height:auto!important;overflow:visible!important;}
  .product-table-wrap{max-height:340px!important;}
  .cart{min-height:160px!important;}
}

/* V58: layout autoencaixe real para monitores menores / acesso em rede */
@media (min-width: 900px){
  html,body{height:100%!important;overflow:hidden!important;}
  header{height:70px!important;padding:4px 14px!important;}
  .brand-logo{width:48px!important;height:48px!important;}
  h1{font-size:20px!important;line-height:1!important;}
  #status,.bling-online-status{font-size:11px!important;line-height:1.05!important;margin-top:1px!important;}
  .terminal-user-badge{font-size:10px!important;padding:1px 6px!important;margin:1px 0!important;}
  .actions{gap:6px!important;align-items:center!important;}
  .actions button{height:34px!important;padding:6px 10px!important;font-size:11px!important;border-radius:7px!important;white-space:nowrap!important;}

  main{
    height:calc(100vh - 70px)!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:8px!important;
    gap:8px!important;
    grid-template-columns:minmax(360px,41%) minmax(520px,1fr)!important;
  }
  .left,.right{
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:8px!important;
    border-radius:12px!important;
  }
  .left{display:flex!important;flex-direction:column!important;gap:7px!important;}
  .right{display:flex!important;flex-direction:column!important;gap:7px!important;}

  .searchbar{margin:0!important;gap:6px!important;flex:0 0 auto!important;}
  .searchbar input,.searchbar button{height:38px!important;padding:7px 10px!important;font-size:12px!important;border-radius:8px!important;}
  .searchbar button{width:92px!important;flex:0 0 92px!important;}

  .product-table-wrap{
    flex:1 1 auto!important;
    min-height:120px!important;
    max-height:none!important;
    overflow:auto!important;
    border-radius:10px!important;
  }
  .product-table{font-size:11px!important;}
  .product-table thead th{padding:8px 7px!important;font-size:10px!important;}
  .product-table td{padding:6px 7px!important;}
  .add-cell button{padding:5px 7px!important;font-size:11px!important;}

  .product-photo-preview{
    flex:0 0 clamp(105px,22vh,170px)!important;
    height:auto!important;
    min-height:0!important;
    margin-top:0!important;
    padding:8px!important;
    border-radius:10px!important;
  }
  .product-photo-card{border-radius:9px!important;}

  .sync-log-panel{
    flex:0 0 clamp(78px,14vh,115px)!important;
    height:auto!important;
    min-height:0!important;
    margin-top:0!important;
    border-radius:10px!important;
    display:block!important;
  }
  .sync-log-header{height:28px!important;padding:0 8px!important;font-size:12px!important;}
  .sync-logs{height:calc(100% - 28px)!important;font-size:10px!important;padding:4px 7px!important;line-height:1.15!important;}
  .log-row{padding:3px 0!important;}

  .customer-search-wrap{flex:0 0 auto!important;margin:0!important;}
  .customer-search-wrap input{height:38px!important;padding:7px 10px!important;font-size:12px!important;border-radius:8px!important;margin:0!important;}
  .cart{
    flex:1 1 auto!important;
    min-height:105px!important;
    height:auto!important;
    margin:0!important;
    overflow:auto!important;
    padding:0 7px!important;
    border-radius:9px!important;
  }
  .cart-item{padding:5px 0!important;font-size:12px!important;}
  .cart-item-price{font-size:12px!important;}

  .totals{flex:0 0 auto!important;margin:0!important;gap:7px!important;}
  .totals div{height:44px!important;min-height:44px!important;padding:6px 9px!important;border-radius:9px!important;}
  .totals span{font-size:10px!important;line-height:1!important;}
  .totals strong{font-size:19px!important;line-height:1.15!important;}

  .payments-box{flex:0 0 auto!important;margin:0!important;padding:7px 9px!important;border-radius:10px!important;}
  .payments-title{margin-bottom:4px!important;font-size:12px!important;}
  .price-list-entry{margin:3px 0 6px 0!important;grid-template-columns:100px 1fr!important;gap:7px!important;}
  .price-list-entry label{font-size:12px!important;}
  .price-list-entry select{height:32px!important;font-size:12px!important;padding:0 8px!important;border-radius:8px!important;}
  .payment-entry{grid-template-columns:minmax(0,1fr) 104px 86px!important;gap:5px!important;}
  .payment-entry select,.payment-entry input,.payment-entry button{height:32px!important;padding:5px 8px!important;font-size:12px!important;border-radius:8px!important;}
  .sale-payments{max-height:36px!important;margin-top:4px!important;gap:3px!important;overflow:auto!important;}
  .sale-payment-row{padding:4px 6px!important;font-size:11px!important;}
  .payment-summary{margin-top:5px!important;gap:6px!important;}
  .payment-summary span{min-height:44px!important;height:44px!important;padding:5px 8px!important;border-radius:8px!important;font-size:11px!important;}
  .payment-summary b,#paidTotal,#remainingTotal,#changeTotal{font-size:19px!important;line-height:1!important;margin-top:2px!important;}

  #note{flex:0 0 36px!important;height:36px!important;min-height:36px!important;padding:8px 10px!important;font-size:12px!important;border-radius:8px!important;}
  .sale-action-row{flex:0 0 38px!important;display:grid!important;grid-template-columns:80% 20%!important;gap:7px!important;margin:0!important;}
  .sale-action-row .finish,.sale-action-row .delete-current{
    width:100%!important;height:38px!important;margin:0!important;padding:7px 10px!important;font-size:13px!important;border-radius:9px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;
  }
  .print-copy{display:block!important;flex:0 0 34px!important;height:34px!important;margin:0!important;padding:6px 10px!important;font-size:12px!important;border-radius:9px!important;}

  .open-sales-panel{display:block!important;flex:0 0 clamp(58px,11vh,86px)!important;max-height:none!important;margin:0!important;border-radius:10px!important;overflow:hidden!important;}
  .open-sales-header{height:26px!important;padding:0 8px!important;font-size:12px!important;}
  .current-sale-info{padding:4px 8px!important;font-size:10px!important;line-height:1.1!important;}
  .open-sales-list{max-height:none!important;height:calc(100% - 48px)!important;padding:4px!important;gap:3px!important;overflow:auto!important;}
  .open-sale-row{padding:4px 6px!important;border-radius:7px!important;}
  .open-sale-row b{font-size:11px!important;}
  .open-sale-row small{font-size:9px!important;}
}

@media (min-width:900px) and (max-height:720px){
  header{height:62px!important;}
  .brand-logo{width:42px!important;height:42px!important;}
  h1{font-size:18px!important;}
  .actions button{height:30px!important;padding:5px 8px!important;font-size:10.5px!important;}
  main{height:calc(100vh - 62px)!important;padding:6px!important;gap:6px!important;}
  .left,.right{padding:6px!important;gap:5px!important;}
  .searchbar input,.searchbar button,.customer-search-wrap input{height:32px!important;}
  .product-photo-preview{flex-basis:95px!important;padding:6px!important;}
  .sync-log-panel{flex-basis:62px!important;}
  .sync-log-header{height:24px!important;}
  .sync-logs{height:calc(100% - 24px)!important;font-size:9.5px!important;}
  .cart{min-height:78px!important;}
  .totals div{height:38px!important;min-height:38px!important;padding:5px 8px!important;}
  .totals strong{font-size:17px!important;}
  .payments-box{padding:5px 7px!important;}
  .payments-title{margin-bottom:2px!important;}
  .price-list-entry{margin:2px 0 4px 0!important;}
  .price-list-entry select,.payment-entry select,.payment-entry input,.payment-entry button{height:28px!important;font-size:11px!important;}
  .payment-summary span{height:38px!important;min-height:38px!important;padding:4px 7px!important;}
  .payment-summary b,#paidTotal,#remainingTotal,#changeTotal{font-size:17px!important;}
  #note{height:30px!important;min-height:30px!important;flex-basis:30px!important;padding:6px 8px!important;}
  .sale-action-row{flex-basis:34px!important;}
  .sale-action-row .finish,.sale-action-row .delete-current{height:34px!important;font-size:12px!important;}
  .print-copy{height:30px!important;flex-basis:30px!important;font-size:11px!important;}
  .open-sales-panel{flex-basis:54px!important;}
  .open-sales-header{height:22px!important;font-size:11px!important;}
  .current-sale-info{display:none!important;}
  .open-sales-list{height:calc(100% - 22px)!important;}
}

/* V59: layout flexível - cabe na tela ao abrir, mas libera rolagem quando houver muitos itens/vendas */
html, body{
  min-height:100%;
  height:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
body{
  min-height:100vh!important;
}
main{
  height:auto!important;
  min-height:calc(100vh - 78px)!important;
  overflow:visible!important;
  align-items:stretch!important;
}
.left,.right{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.right{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.customer-search-wrap input{height:40px!important;padding:8px 12px!important;}
.cart{
  min-height:150px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  flex:0 0 auto!important;
  margin:0!important;
}
.cart:empty{
  min-height:170px!important;
}
.totals{margin:0!important;}
.totals>div{min-height:52px!important;padding:8px 12px!important;}
.payment-summary{margin-top:6px!important;}
.payment-summary span{min-height:52px!important;padding:8px 12px!important;}
.payment-entry select,.payment-entry input{height:36px!important;padding:7px 10px!important;}
.payment-entry button{height:36px!important;padding:7px 10px!important;}
.price-list-entry select{height:36px!important;}
#note{height:48px!important;min-height:48px!important;}
.sale-action-row{margin-top:0!important;}
.sale-action-row button{height:42px!important;}
.print-copy{height:36px!important;margin-top:0!important;padding:7px 12px!important;}
.open-sales-panel{
  display:block!important;
  max-height:none!important;
  height:auto!important;
  margin-top:0!important;
  overflow:visible!important;
}
.open-sales-list{
  max-height:none!important;
  overflow:visible!important;
}
.product-photo-preview{
  height:clamp(170px, 28vh, 270px)!important;
  min-height:170px!important;
  background:#fff!important;
}
.sync-log-panel{
  height:clamp(95px, 16vh, 160px)!important;
  min-height:95px!important;
  margin-top:8px!important;
}
.sync-logs{
  height:calc(100% - 32px)!important;
  overflow:auto!important;
}
@media (min-width:1000px) and (max-height:850px){
  main{padding:8px!important;gap:8px!important;}
  .left,.right{padding:8px!important;}
  .product-photo-preview{height:170px!important;min-height:170px!important;}
  .sync-log-panel{height:95px!important;min-height:95px!important;}
  .cart:empty{min-height:145px!important;}
  .cart{min-height:130px!important;}
  .open-sales-panel{display:block!important;}
}
@media(max-width:1000px){
  main{grid-template-columns:1fr!important;height:auto!important;min-height:0!important;overflow:visible!important;}
}


/* V60: somente a coluna direita cresce com a venda; coluna esquerda fica estável */
@media (min-width: 1000px){
  html, body{
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  main{
    height:auto!important;
    min-height:calc(100vh - 78px)!important;
    overflow:visible!important;
    align-items:start!important;
  }
  .left{
    height:calc(100vh - 94px)!important;
    max-height:calc(100vh - 94px)!important;
    min-height:0!important;
    overflow:hidden!important;
    position:sticky!important;
    top:8px!important;
    align-self:start!important;
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .right{
    height:auto!important;
    min-height:calc(100vh - 94px)!important;
    max-height:none!important;
    overflow:visible!important;
    align-self:start!important;
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .product-table-wrap{
    flex:1 1 auto!important;
    min-height:120px!important;
    overflow:auto!important;
  }
  .product-photo-preview{
    flex:0 0 clamp(150px, 24vh, 230px)!important;
    height:clamp(150px, 24vh, 230px)!important;
    min-height:150px!important;
  }
  .left .sync-log-panel{
    flex:0 0 clamp(90px, 15vh, 145px)!important;
    height:clamp(90px, 15vh, 145px)!important;
    min-height:90px!important;
    overflow:hidden!important;
  }
  .left .sync-logs{
    height:calc(100% - 32px)!important;
    overflow:auto!important;
  }
  .cart{
    flex:0 0 auto!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .open-sales-panel,
  .open-sales-list{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}
@media (min-width:1000px) and (max-height:760px){
  .left{
    height:calc(100vh - 74px)!important;
    max-height:calc(100vh - 74px)!important;
  }
  .right{min-height:calc(100vh - 74px)!important;}
  .product-photo-preview{
    flex-basis:130px!important;
    height:130px!important;
    min-height:130px!important;
  }
  .left .sync-log-panel{
    flex-basis:80px!important;
    height:80px!important;
    min-height:80px!important;
  }
}

/* V63: botão discreto Editar cliente e modal de dados de entrega */
.customer-search-wrap{position:relative!important;}
.customer-line{display:grid!important;grid-template-columns:1fr 78px!important;gap:8px!important;align-items:center!important;}
.customer-line input{width:100%!important;}
.customer-edit-btn{height:38px!important;border-radius:9px!important;background:linear-gradient(180deg,#d9b95b,#c7a247)!important;color:#111!important;border:1px solid #b9922c!important;font-weight:800!important;cursor:pointer!important;box-shadow:0 1px 0 rgba(0,0,0,.12)!important;}
.customer-edit-btn:hover{filter:brightness(.98)!important;}
.customer-suggestions{left:0!important;right:86px!important;}
.customer-edit-modal{max-width:760px!important;width:min(760px,94vw)!important;background:#fff!important;border:2px solid var(--sn-gold)!important;border-radius:16px!important;}
.customer-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;}
.customer-edit-grid label{font-size:12px;font-weight:800;color:#2b2b2b;display:flex;flex-direction:column;gap:4px;}
.customer-edit-grid input{height:38px!important;border-radius:8px!important;padding:8px 10px!important;font-size:14px!important;border:1px solid var(--sn-border)!important;background:#fff!important;}
.customer-edit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px;}
.customer-edit-actions button{padding:10px 14px;border-radius:10px;font-weight:800;border:1px solid #b9922c;background:linear-gradient(180deg,#d9b95b,#c7a247);color:#111;cursor:pointer;}
.customer-edit-actions button:first-child{background:#fff!important;color:#8a1f1f!important;border-color:#f0c0c0!important;}
@media(max-width:700px){.customer-line{grid-template-columns:1fr!important}.customer-edit-grid{grid-template-columns:1fr}.customer-suggestions{right:0!important}}

/* V66: ajuste fonte botão Editar e largura do valor pago */
.customer-edit-btn{
  font-size:14px!important;
  font-family:inherit!important;
  font-weight:800!important;
  letter-spacing:0!important;
  line-height:1!important;
  padding:8px 12px!important;
}
.payment-entry{
  grid-template-columns:minmax(0,1fr) minmax(160px,220px) 116px!important;
}
#paymentAmount{
  width:100%!important;
  min-width:160px!important;
}
@media(max-width:900px){
  .payment-entry{grid-template-columns:minmax(0,1fr) 150px 104px!important;}
}
@media(max-width:700px){
  .payment-entry{grid-template-columns:1fr!important;}
  #paymentAmount{min-width:0!important;}
}


/* V67: fontes menores e persistência visual cliente */
.customer-edit-btn{
  font-size:12px!important;
  font-family:inherit!important;
  font-weight:800!important;
}
.price-list-entry label{
  font-size:11px!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.price-list-entry select{
  font-size:13px!important;
  font-weight:800!important;
}

/* V76: pagamentos lançados sempre visíveis, sem lista interna com rolagem */
.sale-payments{
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  margin-top:8px!important;
}
.sale-payment-row{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 110px 34px!important;
  align-items:center!important;
}
.payments-box{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  flex:0 0 auto!important;
}
@media (min-width:900px){
  .sale-payments{
    max-height:none!important;
    height:auto!important;
    overflow:visible!important;
  }
  .payments-box{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}
@media(max-width:700px){
  .sale-payment-row{grid-template-columns:minmax(0,1fr) 90px 34px!important;}
}

/* V84: cabeçalho da lista de produtos em letras normais */
.product-table thead th{
  text-transform:none!important;
  letter-spacing:0!important;
}

/* V86: ajuste tamanho intermediario dos titulos da tabela */
.product-table thead th{
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.15!important;
}
.price-list-entry select{
  font-size:12px!important;
  font-weight:700!important;
}

/* V87: centraliza o X dos horários programados */
.sync-schedule-pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:6px 9px!important;
  line-height:1!important;
}
.sync-schedule-pill button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
  border-radius:999px!important;
  text-align:center!important;
  transform:none!important;
}


/* V88: volta a mostrar status Bling abaixo do título mesmo em telas baixas */
.brand > div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;}
.brand .terminal-user-badge{display:inline-block;}
.brand #status{display:inline-block;}
.brand .bling-online-status{display:flex!important;align-items:center;white-space:nowrap;}
@media (min-width:1000px) and (max-height:760px){
  header{height:64px!important;min-height:64px!important;}
  .brand .bling-online-status{display:flex!important;font-size:10px!important;line-height:1.05!important;margin-top:0!important;gap:4px!important;}
  .brand .bling-online-status .dot{width:8px!important;height:8px!important;}
}


/* V89: status Bling na mesma linha de Produtos/Pendentes/API */
.brand > div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:1px!important;}
.brand-meta-line{display:flex!important;align-items:center!important;gap:4px!important;flex-wrap:wrap!important;font-size:clamp(10px,1.35vh,12px)!important;line-height:1.15!important;}
.brand-meta-line .terminal-user-badge{display:inline-flex!important;margin:0!important;white-space:nowrap!important;}
.brand-meta-line #status{display:inline!important;margin:0!important;white-space:nowrap!important;}
.brand-meta-line .bling-online-status{display:inline-flex!important;align-items:center!important;margin:0!important;gap:4px!important;white-space:nowrap!important;}
@media (min-width:1000px) and (max-height:760px){
  .brand-meta-line{font-size:10px!important;gap:3px!important;}
  .brand-meta-line .bling-online-status{font-size:10px!important;line-height:1.05!important;margin:0!important;gap:3px!important;}
  .brand-meta-line .bling-online-status .dot{width:8px!important;height:8px!important;}
}

/* V91: marca d'água maior e mais visível na área de retorno da pesquisa */
.product-table-wrap{
  position:relative!important;
  background:#fff!important;
}
.product-table-wrap::after{
  content:"";
  position:absolute;
  inset:42px 0 0 0;
  pointer-events:none;
  background-image:url("assets/logo-watermark-starnails.png");
  background-repeat:no-repeat;
  background-position:center center;
  background-size:min(58%, 470px) auto;
  opacity:.12;
  z-index:2;
}
.product-table-wrap:has(#products tr)::after{
  display:none!important;
}
.product-table{
  position:relative!important;
  z-index:3!important;
  background:transparent!important;
}
.product-table tbody tr,
.product-table thead th{
  position:relative!important;
  z-index:4!important;
}


/* V92: último item escaneado no topo, destacado, e lista com rolagem própria */
.cart{
  max-height:clamp(210px, 34vh, 420px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  flex:0 0 auto!important;
  scrollbar-width:thin;
}
.cart:empty{
  min-height:150px!important;
}
.cart-item-last{
  background:linear-gradient(180deg, rgba(217,185,91,.26), rgba(255,255,255,.92))!important;
  border:1px solid rgba(185,146,44,.55)!important;
  border-radius:10px!important;
  padding-left:8px!important;
  padding-right:8px!important;
  box-shadow:0 2px 8px rgba(185,146,44,.18)!important;
}
@media (min-width:900px){
  .right{overflow:visible!important;}
  .cart{
    height:auto!important;
    max-height:clamp(190px, 31vh, 360px)!important;
    overflow-y:auto!important;
  }
  .sale-action-row,
  .print-copy,
  .payments-box,
  .open-sales-panel{
    flex:0 0 auto!important;
  }
}
@media (max-height:760px) and (min-width:900px){
  .cart{max-height:clamp(150px, 26vh, 250px)!important;}
}

/* V93 - Controle completo de fechamento de caixa */
.cash-register-modal{width:min(980px,96vw)!important;max-height:88vh!important;background:#fff!important;border:2px solid var(--sn-gold,#c7a247)!important;border-radius:16px!important;}
.cash-register-modal h2{margin:0 0 12px 0!important;color:#111!important;font-size:22px!important;}
.cash-panel{background:#fffdf8;border:1px solid var(--sn-border,#eadfbd);border-radius:12px;padding:12px;margin:10px 0;}
.cash-panel h3{margin:0 0 10px 0;font-size:15px;color:#4a3a12;}
.cash-grid{display:grid;grid-template-columns:1fr 160px;gap:10px;align-items:end;}
.cash-grid label{font-weight:800;font-size:12px;color:#5b4a1d;}
.cash-grid input,.cash-movement-entry input,.cash-movement-entry select,.cash-close-entry input{height:38px!important;padding:8px 10px!important;border:1px solid #d9c98f!important;border-radius:9px!important;font-size:13px!important;background:#fff!important;}
.cash-full{grid-column:1 / -1;}
.cash-actions,.cash-close-entry{display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:10px;}
.cash-actions button,.cash-movement-entry button,.cash-close-entry button{background:linear-gradient(180deg,#d9b95b,#c7a247)!important;color:#111!important;border:1px solid #b9922c!important;border-radius:9px!important;font-size:12px!important;font-weight:800!important;padding:8px 12px!important;height:38px!important;}
.cash-status-line{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#d9b95b,#c7a247);border:1px solid #b9922c;border-radius:12px;color:#111;padding:10px 12px;font-size:13px;gap:12px;}
.cash-status-line b{font-size:15px;}
.cash-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:10px 0;}
.cash-kpis div{background:#fff;border:1px solid #eadfbd;border-radius:12px;padding:9px;text-align:center;}
.cash-kpis span{display:block;font-size:11px;font-weight:800;color:#7a6426;margin-bottom:3px;}
.cash-kpis b{font-size:16px;color:#111;}
.cash-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.cash-table{width:100%;border-collapse:collapse;font-size:12px;background:#fff;}
.cash-table th,.cash-table td{border-bottom:1px solid #f0e6c8;padding:7px 6px;text-align:left;vertical-align:top;}
.cash-table th:last-child,.cash-table td:last-child{text-align:right;}
.cash-total-row td{font-weight:900;background:#fff8e6;color:#111;}
.cash-movement-entry{display:grid;grid-template-columns:120px 130px 1fr 110px;gap:8px;margin-bottom:8px;}
.cash-close-entry{display:grid;grid-template-columns:170px 1fr 120px 120px;gap:8px;margin-top:0;}
@media(max-width:900px){.cash-kpis{grid-template-columns:repeat(2,1fr)}.cash-two-cols{grid-template-columns:1fr}.cash-grid,.cash-movement-entry,.cash-close-entry{grid-template-columns:1fr}.cash-close-entry button,.cash-movement-entry button{width:100%;}}
