/* web/css/print.css - Precision A4 Print Stylesheet */
@media print {
  @page {
    size: A4 portrait;
    margin: 12mm 15mm;
  }

  html, body {
    background: #ffffff !important;
    color: #000000 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    font-size: 11pt;
  }

  /* 非印刷要素の完全非表示（ヘッダー、フッター、警告バナー、操作UI、モーダル） */
  header,
  footer,
  .sidebar,
  .nav-tabs,
  .btn,
  .modal-overlay,
  .badge-wasm,
  #outdatedWarningBanner,
  #dateMismatchAlert,
  #termsModalOverlay,
  #rcpModalOverlay {
    display: none !important;
  }

  .app-container {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  .preview-stage {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    overflow: visible !important;
    height: auto !important;
  }

  .sheet-a4 {
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    min-height: auto !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
  }

  .invoice-table th {
    background-color: #f1f5f9 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .grand-total-box {
    background-color: #f8fafc !important;
    border: 2px solid #000000 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .tax-summary-table th {
    background-color: #f8fafc !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}
