.invoice-doc {
  font-family: Arial, Helvetica, sans-serif;
  color: #111827;
  background: #ffffff;
  padding: 32px;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
}
.invoice-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 32px;
}
.invoice-logo { height: 48px; margin-bottom: 8px; }
.invoice-business-name { font-size: 18px; font-weight: 600; }
.invoice-muted { font-size: 13px; color: #4b5563; }
.invoice-pre { white-space: pre-line; }
.invoice-meta { text-align: right; }
.invoice-title { font-size: 24px; font-weight: 700; margin-bottom: 4px; }
.invoice-bill-to { margin-bottom: 32px; }
.invoice-label { font-size: 11px; text-transform: uppercase; color: #6b7280; margin-bottom: 4px; }
.invoice-client-name { font-weight: 600; }
.invoice-items { width: 100%; border-collapse: collapse; font-size: 13px; margin-bottom: 32px; }
.invoice-items thead tr { border-bottom: 1px solid #d1d5db; text-align: left; color: #6b7280; }
.invoice-items th, .invoice-items td { padding: 8px 4px; }
.invoice-items tbody tr { border-bottom: 1px solid #f3f4f6; }
.invoice-items .num { text-align: right; width: 110px; }
.invoice-totals { display: flex; justify-content: flex-end; margin-bottom: 32px; }
.invoice-totals-box { width: 240px; font-size: 13px; }
.invoice-totals-box .row { display: flex; justify-content: space-between; padding: 2px 0; color: #4b5563; }
.invoice-totals-box .grand-total { font-weight: 700; font-size: 15px; color: #111827; border-top: 1px solid #d1d5db; padding-top: 6px; margin-top: 4px; }
.invoice-notes { margin-bottom: 24px; font-size: 13px; color: #374151; }
.invoice-payment { border-top: 1px solid #e5e7eb; padding-top: 16px; font-size: 13px; color: #374151; }
