/* assets/css/main.css */
body { padding-bottom: 70px; } /* espaço para footer fixo */
footer.footer-fixed { position: fixed; bottom:0; left:0; right:0; }

/* Central no navbar sem sobrepor conteúdo */
.navbar-center { flex: 1; text-align:center; }
@media (max-width: 576px){
  .navbar-center { display:none; } /* em telas muito pequenas, oculta a saudação */
 }
@media (max-width: 576px){
   .navbar .navbar-brand { font-size: 1rem; }
 }


/* ---- UX melhorias ---- */
.card-soft { border: 1px solid #e9ecef; border-radius: 1rem; box-shadow: 0 2px 10px rgba(0,0,0,.03); }
.card-soft .card-header { background: linear-gradient(180deg,#f8f9fa,#f1f3f5); border-bottom: 1px solid #e9ecef; }
.list-group.elevated .list-group-item { display:flex; justify-content:space-between; align-items:center; }
.list-group.elevated .list-group-item:nth-child(odd){ background:#fafbfc; }
.list-group.elevated .list-group-item small{ color:#6c757d; }
.table-muted tfoot th { background:#f8f9fa; }
.suggest-box { z-index:1040; max-height:260px; overflow:auto; } /* abaixo do modal (BS modal ~1055) */
.row-selected { outline: 2px solid rgba(13,110,253,.35); }
.receipt { font-size:.95rem; }
.receipt .muted { color:#6c757d; }
@media print {
  nav, footer, .btn, .navbar, .nav, .container > h5 { display:none !important; }
  .modal-dialog { box-shadow:none !important; }
}

/* ====== Cupom fiscal ====== */
.receipt-wrap { display:flex; justify-content:center; }
.receipt {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  background:#fff;
  width: 360px;                 /* + espaço p/ colunas */
  border:1px solid #e9ecef;
  border-radius: 10px;
  box-shadow: 0 2px 12px rgba(0,0,0,.04);
  padding: 10px 12px;
}
.receipt .title { text-align:center; font-weight:700; margin:4px 0; }
.receipt .sub { text-align:center; color:#6c757d; font-size:.8rem; margin-bottom:6px; }
.receipt .cut { border-top:1px dashed #adb5bd; margin:6px 0; }
.receipt table { width:100%; border-collapse:collapse; font-size:.86rem; table-layout: fixed; }
.receipt th, .receipt td { padding:3px 0; }
.receipt th { text-align:left; color:#495057; }
.receipt td.num, .receipt th.num { text-align:right; white-space:nowrap; }
.receipt .col-prod{ width:auto; }   /* expande */
.receipt .col-qtd { width: 5.2ch; }
.receipt .col-unit{ width: 8.5ch; }
.receipt .col-desc{ width: 7.0ch; }
.receipt .col-tot { width: 9.0ch; }
.receipt tfoot th, .receipt tfoot td { border-top:1px solid #e9ecef; padding-top:6px; }
.receipt .badge { display:inline-block; padding:2px 6px; border:1px solid #dee2e6; border-radius:4px; margin:2px 2px 0 0; font-size:.72rem; color:#495057; }

@media print {
  .receipt { box-shadow:none; border:none; width: 280px; padding:0; }
  .modal { position:static; }
}
.suggest-empty { padding:.5rem .75rem; color:#6c757d; background:#fff; border:1px solid #dee2e6; border-top:none; border-radius:0 0 .5rem .5rem; }

/* Badges das tags (uma única definição) */
.badge-pill{
  display:inline-block;
  border:1px solid currentColor;
  border-radius:999px;
  padding:0 .4rem;
  font-size:.75rem;
  line-height:1.2;
  margin:2px .25rem 0 0;
  background:transparent;
}
.row-tagbar { border-left:4px solid transparent; } /* compras */

/* Badge de tag com CSS custom property para cor (evita override) */
.tag-badge{
  --tag-c:#6c757d;
  color:var(--tag-c) !important;
  border-color:var(--tag-c) !important;
}
