/* The print layout's sheet (layouts/print): A4, a serif body, bordered tables.
   Propshaft's :app bundle pulls this file into every page too, so every rule is
   scoped under .print-body and touches nothing else. */
@page { size: A4; margin: 15mm; }

.print-body {
  margin: 0;
  padding: 16px;
  background: #fff;
  color: #000;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 12px;
  line-height: 1.4;
}
.print-body .print-actions { text-align: right; margin-bottom: 12px; }
.print-body .print-actions button { font: inherit; padding: 4px 12px; cursor: pointer; }
.print-body .print-sheet { max-width: 180mm; margin: 0 auto; }
.print-body .print-head { text-align: center; border-bottom: 2px solid #000; padding-bottom: 8px; margin-bottom: 12px; }
.print-body .print-org { font-size: 14px; font-weight: bold; letter-spacing: 0.04em; }
.print-body .print-head h1 { font-size: 18px; margin: 4px 0; }
.print-body .print-form-no { font-size: 11px; }
.print-body h2 { font-size: 13px; margin: 14px 0 6px; border-bottom: 1px solid #000; }
.print-body .print-facts { display: grid; grid-template-columns: 30% 70%; gap: 2px 8px; margin: 0 0 10px; }
.print-body .print-facts dt { font-weight: normal; color: #333; }
.print-body .print-facts dd { margin: 0; font-weight: bold; }
.print-body .print-facts dd:empty::after { content: "—"; font-weight: normal; color: #999; }
.print-body table { width: 100%; border-collapse: collapse; margin: 8px 0 12px; }
.print-body th, .print-body td { border: 1px solid #000; padding: 4px 6px; text-align: left; vertical-align: top; }
.print-body th { background: #eee; font-weight: bold; }
.print-body td.print-num { text-align: right; }
.print-body .print-sign { display: flex; justify-content: space-between; margin-top: 40px; }
.print-body .print-sign span { flex: 1; text-align: center; border-top: 1px solid #000; margin: 0 12px; padding-top: 4px; }

.print-body .print-muted { color: #555; font-size: 11px; }
.print-body .print-table th.print-num { text-align: right; }
.print-body .print-signs { display: flex; gap: 24px; margin-top: 48px; }
.print-body .print-signs .print-sign { flex: 1; display: block; margin-top: 0; padding-top: 4px; border-top: 1px solid #000; text-align: center; }

@media print {
  .print-body { padding: 0; }
  .print-body .print-actions { display: none; }
}
