.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceHeaderMeta{
  display:grid;
  gap:8px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTopline{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:end;
  gap:18px;
  padding:4px 0 6px;
  border-bottom:1px solid #dbe4ef;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceToplineItem{
  display:grid;
  gap:5px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceToplineItem.is-right{
  justify-items:end;
  text-align:right;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceToplineItem span{
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#475569;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceToplineItem strong{
  font-size:17px;
  font-weight:900;
  color:#0d3175;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceHeaderAddresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  padding:0 0 2px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceHeaderAddress{
  min-width:0;
  padding:0;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceHeaderAddress.is-right{
  text-align:right;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceBody{
  padding:2px 20px 18px;
  display:grid;
  gap:10px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceAddressLabel{
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  color:#0d3175;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceAddressValue{
  margin-top:4px;
  font-size:17px;
  line-height:1.15;
  font-weight:900;
  color:#0f172a;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceAddressText{
  margin-top:4px;
  max-width:30ch;
  font-size:12px;
  line-height:1.35;
  color:#334155;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceHeaderAddress.is-right .bz-docInvoiceAddressText{
  margin-left:auto;
  font-size:15px;
  line-height:1.45;
  font-weight:700;
  color:#0f172a;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceSection,
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceSummaryNotes{
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:12px 14px;
  background:rgba(255,255,255,.88);
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceSection:first-of-type{
  margin-top:6px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceSection--compact{
  padding:10px 14px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceSectionTitle,
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceMetaLabel{
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#0f172a;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceMetaGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:8px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceMetaCell{
  display:grid;
  gap:4px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceMetaText{
  font-size:11px;
  line-height:1.4;
  color:#475569;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableWrap{
  position:relative;
  margin-top:10px;
  margin-bottom:0;
  min-height:180px;
  border:1.5px solid #64748b;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableGuides{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableGuide{
  position:absolute;
  top:0;
  bottom:0;
  width:1.5px;
  background:#94a3b8;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableGuide--sr{
  left:8%;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableGuide--desc{
  left:52%;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableGuide--qty{
  left:62%;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableGuide--price{
  left:80%;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable{
  position:relative;
  z-index:2;
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  height:100%;
  background:#fff;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable th{
  padding:9px 10px;
  background:#0d3175;
  color:#fff;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  position:relative;
  z-index:2;
  color:#ffffff;
  border-top:0;
  border-left:0;
  border-right:0;
  border-bottom:0;
  text-align:center;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable td{
  padding:9px 10px;
  position:relative;
  z-index:2;
  border-top:0;
  border-left:0;
  border-right:0;
  border-bottom:0;
  font-size:13px;
  color:#0f172a;
  vertical-align:top;
  background:#fff;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable th:nth-child(1),
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable td:nth-child(1),
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable th:nth-child(3),
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable td:nth-child(3){
  padding-left:6px;
  padding-right:6px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable td:nth-child(1){
  text-align:center;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable th:last-child,
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable td:last-child{
  border-right:0;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable th.is-right,
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTable td.is-right{
  text-align:right;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceItemDesc{
  font-weight:700;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceItemSub{
  margin-top:4px;
  font-size:12px;
  line-height:1.4;
  color:#64748b;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTableEmpty{
  text-align:center;
  color:#64748b;
  min-height:120px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceBlankRow td{
  height:48px;
  border-bottom:0;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceBlankRow:last-child td{
  border-bottom:0;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsStack{
  margin-top:22px;
  margin-bottom:20px;
  margin-left:auto;
  width:min(100%,260px);
  display:grid;
  gap:10px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsRow{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border:1.5px solid #64748b;
  border-radius:12px;
  background:#fff;
  position:relative;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsRow--grand{
  background:#eff6ff;
  border-color:#60a5fa;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsLabel{
  font-size:12px;
  font-weight:800;
  color:#334155;
  text-transform:uppercase;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsValue{
  font-size:14px;
  font-weight:900;
  color:#0f172a;
  padding-left:16px;
  border-left:1.5px solid #94a3b8;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsRow--grand .bz-docInvoiceTotalsValue,
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceTotalsRow--grand .bz-docInvoiceTotalsLabel{
  color:#0d3175;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceSummaryText{
  margin-top:8px;
  font-size:11px;
  line-height:1.5;
  color:#475569;
  white-space:pre-line;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoicePaymentLine{
  margin-top:8px;
  padding-top:8px;
  border-top:1px dashed #cbd5e1;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:#475569;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceFooterMeta{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:end;
  gap:16px;
  margin-top:8px;
  padding:0;
  margin-left:-8px;
  margin-right:-8px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoicePaymentFooter,
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceDueFooter{
  padding:4px 0 0;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#334155;
  white-space:nowrap;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceLeftFooter{
  display:grid;
  justify-items:start;
  gap:6px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceRightFooter{
  display:grid;
  justify-items:end;
  gap:6px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceGasSafe{
  width:84px;
  max-width:100%;
  line-height:0;
  margin-bottom:4px;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceGasSafe img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceGasSafeNum{
  font-size:7.5px;
  font-weight:700;
  color:var(--text-muted);
  text-align:center;
  margin-top:3px;
  line-height:1.3;
  letter-spacing:0.02em;
}

.bz-view-documents .bz-doc-template--invoice .bz-docInvoiceDueFooter{
  text-align:right;
}
