/* Fix152 Rev4: preserve original invoice template and add safe printable right margin.
   Goal: stop right-edge clipping/cut-off in print preview/PDF while keeping the
   original invoice layout intact. */
@page {
  size: A4 portrait;
  margin: 8mm 10mm 10mm 10mm;
}

@media print {
  html, body {
    width: auto !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  /* Constrain the whole invoice to a safe printable width and center it. */
  .print-invoice-commercial,
  .print-area .print-invoice-commercial,
  .invoice-print-page .print-invoice-commercial {
    width: 190mm !important;
    max-width: 190mm !important;
    margin: 0 auto !important;
    padding: 0 1.5mm 0 0.5mm !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  /* Prevent inner blocks/tables from overflowing the printable page width. */
  .print-invoice-commercial *,
  .print-invoice-commercial *::before,
  .print-invoice-commercial *::after {
    box-sizing: border-box !important;
  }
  .print-invoice-commercial table,
  .print-invoice-commercial .print-invoice-items,
  .print-invoice-commercial .print-invoice-summary,
  .print-invoice-commercial .print-invoice-signatures,
  .print-invoice-commercial .print-payment-box,
  .print-invoice-commercial .print-bank-box,
  .print-invoice-commercial .print-invoice-totals,
  .print-invoice-commercial .print-amount-box {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Add a tiny breathing room for the final column on the right. */
  .print-invoice-commercial table th:last-child,
  .print-invoice-commercial table td:last-child,
  .print-invoice-commercial .print-invoice-totals > *:last-child,
  .print-invoice-commercial .print-summary-right > *:last-child {
    padding-right: 1.5mm !important;
  }

  /* Original stable meta layout from Rev3. */
  .print-invoice-commercial .print-invoice-meta {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 54mm !important;
    align-items: center !important;
    gap: 4mm !important;
    min-height: 27mm !important;
    padding: 3mm 4mm !important;
    border: .3mm solid #d8dee6 !important;
    border-radius: 4mm !important;
    background: #fff !important;
    overflow: visible !important;
  }

  .print-invoice-commercial .print-invoice-meta > .print-invoice-meta-main,
  .print-invoice-commercial .print-invoice-meta > .print-delivery-phone {
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  .print-invoice-commercial .print-invoice-meta > .print-invoice-meta-main {
    position: static !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-content: center !important;
    gap: 2.3mm !important;
    padding: 0 !important;
  }
  .print-invoice-commercial .print-invoice-meta > .print-invoice-meta-main::before,
  .print-invoice-commercial .print-invoice-meta > .print-delivery-phone::before {
    content: none !important;
    display: none !important;
  }

  .print-invoice-commercial .print-invoice-meta-row {
    display: grid !important;
    position: static !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 3mm !important;
  }
  .print-invoice-commercial .print-invoice-meta-row-top {
    grid-template-columns: minmax(34mm, 1.35fr) minmax(24mm, .8fr) minmax(38mm, 1fr) !important;
    align-items: start !important;
  }
  .print-invoice-commercial .print-invoice-meta-row-bottom {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .print-invoice-commercial .print-invoice-meta .meta-customer,
  .print-invoice-commercial .print-invoice-meta .meta-phone,
  .print-invoice-commercial .print-invoice-meta .meta-date,
  .print-invoice-commercial .print-invoice-meta .meta-address {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: baseline !important;
    column-gap: 2mm !important;
    row-gap: 0 !important;
    position: static !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .print-invoice-commercial .print-invoice-meta .meta-customer::before,
  .print-invoice-commercial .print-invoice-meta .meta-phone::before,
  .print-invoice-commercial .print-invoice-meta .meta-date::before,
  .print-invoice-commercial .print-invoice-meta .meta-address::before {
    content: none !important;
    display: none !important;
  }
  .print-invoice-commercial .print-invoice-meta span {
    color: #4b5563 !important;
    font-size: 8.8px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }
  .print-invoice-commercial .print-invoice-meta strong {
    color: #111827 !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
    min-width: 0 !important;
  }

  .print-invoice-commercial .print-delivery-phone {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 1mm !important;
    min-height: 20mm !important;
    padding: 3mm 3mm 3mm 18mm !important;
    border: .35mm solid #e3a11a !important;
    border-radius: 3.5mm !important;
    background: #fff !important;
    text-align: center !important;
  }
  .print-invoice-commercial .print-delivery-phone span {
    display: block !important;
    max-width: 32mm !important;
    color: #334155 !important;
    font-size: 8.5px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }
  .print-invoice-commercial .print-delivery-phone strong {
    display: block !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }
  .print-invoice-commercial .print-delivery-phone .ov-fix134-ship-icon {
    position: absolute !important;
    left: 3mm !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 12mm !important;
    height: 12mm !important;
    max-width: 12mm !important;
    max-height: 12mm !important;
    object-fit: contain !important;
    display: block !important;
  }
}
