/* 正文共享毫米版式；屏幕保留纸张孔边，打印适配现有 A4 纵向任务。 */
.invoice-print-component {
  min-width: 0;
}

.invoice-print-screen-actions {
  margin-bottom: 12px;
}

.invoice-print-root {
  background: #fff;
  box-shadow: 0 0 0 1px #d9d9d9;
  box-sizing: border-box;
  color: #000;
  font-size: 10pt;
  line-height: 1.3;
  font-family: SimSun, '宋体', 'Noto Sans CJK SC', sans-serif;
  margin: 0 auto;
  padding: 4mm 20.5mm 4mm;
  width: 241mm;
}

.invoice-print-sheet {
  margin: 0;
  padding: 0;
  width: 100%;
}

.invoice-print-header {
  text-align: center;
}

.invoice-print-store {
  font-size: 16pt;
  font-weight: 700;
  letter-spacing: 1mm;
  line-height: 1.2;
}

.invoice-print-header h1 {
  font-family: inherit;
  font-size: 12pt;
  font-weight: 700;
  letter-spacing: 1mm;
  line-height: 1.2;
  margin: 1mm 0 1mm;
}

.invoice-print-meta,
.invoice-print-signs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2mm;
  font-size: 10.5pt;
  line-height: 1.35;
}

.invoice-print-meta {
  margin-bottom: 1mm;
}

.invoice-print-meta > :nth-child(2),
.invoice-print-signs > :nth-child(2) {
  text-align: center;
}

.invoice-print-meta > :last-child,
.invoice-print-signs > :last-child {
  text-align: right;
}

.invoice-print-meta span,
.invoice-print-extra-meta span {
  overflow-wrap: anywhere;
}

.invoice-print-extra-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1mm 4mm;
  font-size: 9.5pt;
  line-height: 1.3;
  margin-bottom: 1mm;
}

.invoice-print-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.invoice-print-table th,
.invoice-print-table td {
  border: 0.25mm solid #000;
  font-size: 10pt;
  height: 5.5mm;
  line-height: 1.3;
  padding: 0.7mm 0.7mm;
  overflow-wrap: anywhere;
}

.invoice-print-table th {
  font-weight: 700;
  text-align: center;
}

.invoice-print-summary {
  display: flex;
  flex-wrap: nowrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 2mm;
  font-size: 9.5pt;
  line-height: 1.4;
  margin-top: 2mm;
}

.invoice-print-signs {
  margin-top: 1mm;
}

.invoice-print-copies {
  display: flex;
  justify-content: center;
  gap: 6mm;
  font-size: 9pt;
  line-height: 1.3;
  margin-top: 2mm;
  white-space: nowrap;
}

.invoice-print-root,
.invoice-print-root * {
  box-sizing: border-box;
}

.invoice-print-summary > *,
.invoice-print-signs > * {
  white-space: nowrap;
}

@media print {
  @page invoice-receipt {
    /* 仅作用于本系统单据，不改变 Windows 打印机的默认配置。 */
    size: A4 portrait;
    margin: 0;
  }

  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  .invoice-print-root {
    page: invoice-receipt;
    /* 200mm 正文居中输出，沿用现有 A4 纵向任务，不旋转或缩放。 */
    width: 210mm;
    padding: 4mm 5mm 4mm;
    margin: 0;
    box-shadow: none;
    break-inside: avoid;
    break-after: page;
  }

  .invoice-print-root:last-child {
    break-after: auto;
  }

  .invoice-print-screen-actions {
    display: none;
  }
}

.invoice-print-sheet + .invoice-print-sheet { break-before: page; page-break-before: always; }
.invoice-print-page-number { font-size: 8pt; text-align: right; }
.invoice-print-remark { font-size: 9pt; line-height: 1.2; overflow-wrap: anywhere; margin: 1mm 0; }
.invoice-print-signs { display: flex; justify-content: space-between; }
.invoice-print-summary { flex-wrap: wrap; gap: 1mm 3mm; }
