@media print {
    @page {
        size: auto;
        margin: 10mm;
    }

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

    .responsive-print-document {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: #fff !important;
        color: #111 !important;
        font-family: Arial, Helvetica, sans-serif !important;
        font-size: 10pt;
        line-height: 1.35;
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }

    .responsive-print-document .modal-header,
    .responsive-print-document .modal-body,
    .responsive-print-document .box-body,
    .responsive-print-document .box-header {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 0 4mm !important;
        border: 0 !important;
        background: transparent !important;
        color: #111 !important;
    }

    .responsive-print-document .modal-title,
    .responsive-print-document .box-title {
        margin: 0 0 4mm !important;
        color: #111 !important;
        font-size: 16pt !important;
        line-height: 1.25 !important;
    }

    .responsive-print-document .row {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .responsive-print-document .responsive-print-table-container {
        width: 100% !important;
        overflow: visible !important;
    }

    .responsive-print-document table {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 4mm !important;
        border-collapse: collapse !important;
        table-layout: auto;
    }

    .responsive-print-document thead {
        display: table-header-group;
    }

    .responsive-print-document tr,
    .responsive-print-document img,
    .responsive-print-document .well,
    .responsive-print-document .print_section {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .responsive-print-document th,
    .responsive-print-document td {
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .responsive-print-document .thermal-print-hidden {
        display: block !important;
    }
}

@media print and (max-width: 100mm) {
    @page {
        margin: 3mm;
    }

    .responsive-print-document {
        font-size: 9pt !important;
        line-height: 1.25 !important;
    }

    .responsive-print-document .modal-header,
    .responsive-print-document .modal-body,
    .responsive-print-document .box-body,
    .responsive-print-document .box-header {
        padding-bottom: 2mm !important;
    }

    .responsive-print-document .modal-title,
    .responsive-print-document .box-title,
    .responsive-print-document h1,
    .responsive-print-document h2,
    .responsive-print-document h3,
    .responsive-print-document h4 {
        margin: 0 0 2mm !important;
        font-size: 12pt !important;
        line-height: 1.2 !important;
    }

    .responsive-print-document .thermal-print-hidden {
        display: none !important;
    }

    .responsive-print-document [class*="col-"] {
        float: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .responsive-print-document address,
    .responsive-print-document p,
    .responsive-print-document .well {
        margin: 0 0 2mm !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .responsive-print-document table {
        margin-bottom: 2mm !important;
    }

    .responsive-print-document table.responsive-print-table,
    .responsive-print-document table.responsive-print-table > thead,
    .responsive-print-document table.responsive-print-table > tbody,
    .responsive-print-document table.responsive-print-table > tbody > tr,
    .responsive-print-document table.responsive-print-table > tbody > tr > th,
    .responsive-print-document table.responsive-print-table > tbody > tr > td {
        display: block !important;
        width: 100% !important;
    }

    .responsive-print-document table.responsive-print-table > thead,
    .responsive-print-document table.responsive-print-table > tbody > tr.responsive-print-header-row {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    .responsive-print-document table.responsive-print-table > tbody > tr {
        margin: 0 0 2mm !important;
        padding: 1.5mm 0 !important;
        border: 0 !important;
        border-bottom: 1px dashed #777 !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .responsive-print-document table.responsive-print-table > tbody > tr > th,
    .responsive-print-document table.responsive-print-table > tbody > tr > td {
        min-height: 0 !important;
        padding: 0.6mm 0 !important;
        border: 0 !important;
        text-align: start !important;
        white-space: normal !important;
    }

    .responsive-print-document table.responsive-print-table > tbody > tr > td[data-print-label]:not([data-print-label=""]) {
        display: grid !important;
        grid-template-columns: minmax(22mm, 38%) minmax(0, 1fr);
        column-gap: 2mm;
        align-items: start;
    }

    .responsive-print-document table.responsive-print-table > tbody > tr > td[data-print-label]:not([data-print-label=""])::before {
        content: attr(data-print-label);
        font-weight: 700;
        text-align: start;
    }

    .responsive-print-document .pull-right,
    .responsive-print-document .text-right {
        float: none !important;
        text-align: end !important;
    }

    .responsive-print-document img {
        max-width: 100% !important;
        height: auto !important;
    }
}

@media print and (max-width: 65mm) {
    @page {
        margin: 2mm;
    }

    .responsive-print-document {
        font-size: 8pt !important;
        line-height: 1.2 !important;
    }

    .responsive-print-document .modal-title,
    .responsive-print-document .box-title,
    .responsive-print-document h1,
    .responsive-print-document h2,
    .responsive-print-document h3,
    .responsive-print-document h4 {
        font-size: 10pt !important;
    }

    .responsive-print-document table.responsive-print-table > tbody > tr > td[data-print-label]:not([data-print-label=""]) {
        grid-template-columns: minmax(17mm, 38%) minmax(0, 1fr);
        column-gap: 1mm;
    }
}
