/* Business document kit (invoice-generator, purchase-order; owner: Wave 2B). Same form as the quote generator, own
 * prefix vt-bz-. The preview stage and the paper controls come from css/_print-kit.css. Borders: 1px hairline. */
#visu-tools .vt-bz-top { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: flex-start; justify-content: space-between; }
#visu-tools .vt-bz-fiscal { flex: 1 1 280px; margin: 0 !important; padding: 10px 14px; border-radius: 12px; border: 1px solid var(--vt-line); background: var(--vt-bg); color: var(--vt-text); font-size: 13.5px; line-height: 1.5; }
#visu-tools .vt-bz-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--vt-line); align-items: start; }
#visu-tools .vt-bz-doc { border-top: 0; padding-top: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
#visu-tools .vt-bz-doc .vt-seg { grid-column: span 2; }
#visu-tools .vt-bz-number { display: grid; gap: 2px; justify-items: start; }
#visu-tools .vt-bz-number .vt-field { width: 100%; }
#visu-tools .vt-bz-party { display: grid; gap: 12px; min-width: 0; }
#visu-tools .vt-bz-h { margin: 0 !important; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--vt-muted); }
#visu-tools :is(.vt-bz-items, .vt-bz-taxes) { display: grid; gap: 8px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--vt-line); justify-items: start; }
#visu-tools :is(.vt-bz-items, .vt-bz-taxes) > :is(div, p) { width: 100%; margin: 0 !important; }
#visu-tools #vt-bz-rows { display: grid; gap: 8px; }
#visu-tools :is(.vt-bz-row, .vt-bz-head) { display: grid; grid-template-columns: minmax(0, 1fr) 68px 104px 72px 34px; gap: 8px; align-items: center; }
#visu-tools .vt-bz-head { font-size: 12.5px; font-weight: 600; color: var(--vt-muted); }
#visu-tools .vt-bz-cell { display: block; min-width: 0; }
#visu-tools .vt-bz-cell input { padding: 10px 10px !important; }
#visu-tools :is(.vt-bz-qty, .vt-bz-price, .vt-bz-disc) input { text-align: right; font-variant-numeric: tabular-nums; }
#visu-tools .vt-bz-cell input[aria-invalid="true"] { border-color: var(--vt-err) !important; background: #fef6f5 !important; }
#visu-tools .vt-bz-rm { width: 34px; height: 34px; padding: 0; border-radius: 50%; border: 1px solid var(--vt-line-2); background: #fff; color: var(--vt-muted); font-size: 18px; line-height: 1; cursor: pointer; }
#visu-tools .vt-bz-rm:hover { border-color: var(--vt-ink); color: var(--vt-ink); }
#visu-tools .vt-bz-tax { display: grid; grid-template-columns: minmax(0, 1fr) 120px; gap: 8px; max-width: 420px; }
#visu-tools .vt-bz-code :is(.vt-warn, .vt-hint) { margin: 0 !important; }
#visu-tools .vt-bz-nolink a { font-weight: 600; }
#visu-tools .vt-bz-look > * { grid-column: 1 / -1; }
#visu-tools .vt-bz-privacy { margin-top: 16px !important; }
#visu-tools .vt-bz-pager { display: flex; gap: 14px; align-items: center; justify-content: center; font-size: 14px; color: var(--vt-muted); }
#visu-tools .vt-bz-pager[hidden] { display: none; }
#visu-tools .vt-bz-pager button:disabled { opacity: .4; cursor: default; }
#visu-tools .vt-bz .vt-out { position: sticky; top: 16px; }
#visu-tools .vt-bz-paths .vt-path .vt-hint { margin: 0 !important; }
#visu-tools .vt-bz-paths .vt-path .vt-btn { max-width: 100%; white-space: normal; text-align: center; }
@media (max-width: 900px) {
  #visu-tools .vt-bz .vt-out { position: static; }
}
@media (max-width: 600px) {
  #visu-tools :is(.vt-bz-grid, .vt-bz-doc) { grid-template-columns: minmax(0, 1fr); }
  #visu-tools .vt-bz-doc .vt-seg { grid-column: auto; }
  #visu-tools .vt-bz-head { display: none; }
  #visu-tools .vt-bz-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) minmax(0, 1fr) 34px; padding-bottom: 10px; border-bottom: 1px solid var(--vt-line); }
  #visu-tools .vt-bz-desc { grid-column: 1 / -1; }
  #visu-tools .vt-bz .vt-seg-items { flex-wrap: wrap; overflow-x: visible; margin: 0; padding: 0; }
}
#visu-tools .vt-bz-remember { display: grid; gap: 4px; }
#visu-tools .vt-bz-remember .vt-hint { margin: 0 !important; }
#visu-tools .vt-bz-custom[hidden], #visu-tools .vt-bz-paylink[hidden], #visu-tools .vt-bz-pix[hidden], #visu-tools #vt-bz-capwrap[hidden] { display: none; }
#visu-tools .vt-bz-pix { display: grid; gap: 10px; }
#visu-tools .vt-bz-pix .vt-hint { margin: 0 !important; }
#visu-tools .vt-bz-pixgrid { margin-top: 0; padding-top: 0; border-top: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
#visu-tools .vt-bz .vt-actions { flex-wrap: wrap; }
@media (max-width: 600px) {
  #visu-tools .vt-bz-pixgrid { grid-template-columns: minmax(0, 1fr); }
}
