@media print {
    @page {
        size: 58mm auto;
        margin: 0;
    }
    html, body {
        width: 58mm !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
    body > *:not(#receipt-modal) {
        display: none !important;
    }
    #receipt-modal {
        position: static !important;
        display: block !important;
        width: 58mm !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    #receipt-modal > div {
        box-shadow: none !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        width: 58mm !important;
        max-width: 58mm !important;
    }
    #receipt-print-area {
        display: block !important;
        visibility: visible !important;
        width: 58mm !important;
        max-width: 58mm !important;
        padding: 1mm 1.5mm 4mm 1.5mm !important;
        margin: 0 !important;
        font-family: 'Tahoma', 'Leelawadee UI', Arial, sans-serif !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        color: #000000 !important;
        line-height: 1.25 !important;
    }
    #receipt-print-area * {
        color: #000000 !important;
        background-color: transparent !important;
        border-color: #000000 !important;
        opacity: 1 !important;
        filter: none !important;
        -webkit-text-stroke: 0px !important;
    }
    #rc-voucher-barcode {
        shape-rendering: crispEdges !important;
        max-width: 100% !important;
    }
    #receipt-print-area table {
        width: 100% !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
    }
    #receipt-print-area th:nth-child(1),
    #receipt-print-area td:nth-child(1) {
        width: 55% !important;
        text-align: left !important;
        word-break: break-word !important;
    }
    #receipt-print-area th:nth-child(2),
    #receipt-print-area td:nth-child(2) {
        width: 15% !important;
        text-align: center !important;
        white-space: nowrap !important;
    }
    #receipt-print-area th:nth-child(3),
    #receipt-print-area td:nth-child(3) {
        width: 30% !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
    #receipt-print-area .border-dashed {
        border-top: 1px dashed #000000 !important;
        border-left: none !important;
        border-right: none !important;
        border-bottom: none !important;
    }
    .no-print, button {
        display: none !important;
    }
}