/* V1446 — Baixa/Recebimento em lote: modal compacto, sem barra de rolagem, rodapé sempre visível. */
.fin-modal:has(.fin-lote) {
  width: min(860px, calc(100vw - 24px)) !important; max-width: 860px !important;
  max-height: calc(100vh - 20px) !important; max-height: calc(100dvh - 20px) !important; height: auto !important;
  display: flex !important; flex-direction: column !important; overflow: hidden !important; box-sizing: border-box;
}
.fin-modal:has(.fin-lote) .fin-modal-head { flex: 0 0 auto; padding: 10px 18px !important; }
.fin-modal:has(.fin-lote) .fin-modal-heading h2 { margin: 0; font-size: 19px; line-height: 1.2; }
.fin-modal:has(.fin-lote) #finModalForm { display: flex !important; flex-direction: column !important; flex: 1 1 auto; min-height: 0; overflow: hidden !important; }
.fin-modal:has(.fin-lote) .fin-modal-body { flex: 1 1 auto; min-height: 0; padding: 12px 18px !important; overflow-x: hidden !important; overflow-y: auto !important; scrollbar-width: none; -ms-overflow-style: none; }
.fin-modal:has(.fin-lote) .fin-modal-body::-webkit-scrollbar { display: none; width: 0; height: 0; }
.fin-modal:has(.fin-lote) .fin-modal-foot { flex: 0 0 auto; padding: 10px 18px !important; }

.fin-lote { display: flex; flex-direction: column; gap: 12px; }
.fin-lote-resumo { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 14px; border: 1px solid #dbe3ee; border-radius: 10px; background: #f6f8fb; padding: 12px 14px; align-items: center; }
.fin-lote-total { display: flex; flex-direction: column; gap: 2px; }
.fin-lote-total span { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .02em; color: #5b6676; }
.fin-lote-total strong { font-size: 24px; font-weight: 700; color: #16304f; font-variant-numeric: tabular-nums; }
.fin-lote-total small { font-size: 12px; color: #5b6676; }
.fin-lote-lista { list-style: none; margin: 0; padding: 0 0 0 14px; border-left: 1px solid #dbe3ee; display: flex; flex-direction: column; gap: 4px; }
.fin-lote-lista li { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; min-width: 0; }
.fin-lote-lista li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #2b3647; }
.fin-lote-lista li strong { font-variant-numeric: tabular-nums; white-space: nowrap; }
.fin-lote-lista li.fin-lote-mais span { color: #5b6676; font-style: italic; }

.fin-lote-grade { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr); gap: 8px 14px; align-items: start; }
.fin-lote-grade .fin-field { margin: 0 !important; gap: 3px !important; min-width: 0; }
.fin-lote-grade .fin-field > span { font-size: 11px; font-weight: 600; color: #66758b; line-height: 1.15; }
.fin-lote-grade .fin-field .input { min-height: 38px; height: 38px; padding: 6px 10px; font-size: 13.5px; box-sizing: border-box; width: 100%; }
.fin-lote-grade > label:has([name="comprovante"]) { grid-column: 1; }
.fin-lote-grade > label:has([name="observacoes"]) { grid-column: 2 / -1; }

@media (max-width: 720px) {
  .fin-lote-resumo { grid-template-columns: minmax(0, 1fr); }
  .fin-lote-lista { border-left: 0; padding-left: 0; border-top: 1px solid #dbe3ee; padding-top: 8px; }
  .fin-lote-grade { grid-template-columns: minmax(0, 1fr); }
  .fin-lote-grade > label { grid-column: 1 !important; }
}
