/* Thermal Printer Billing Styles (58mm and 80mm ESC/POS) */
@media screen {
    .thermal-receipt-preview {
        width: 80mm;
        margin: 0 auto;
        background: #FFF;
        color: #000;
        padding: 12px;
        box-shadow: 0 0 20px rgba(0,0,0,0.15);
        font-family:KC-Gujarati,'Courier New', Courier, monospace;
        font-size: 12px;
        line-height: 1.3;
    }
}

@page {
    size: 80mm auto;
    margin: 0mm;
}

@media print {
    html, body {
        width: 80mm !important;
        max-width: 80mm !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #FFF !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    body > *:not(#thermal-print-area) {
        display: none !important;
    }

    #thermal-print-area {
        display: block !important;
        position: static !important;
        width: 76mm !important;
        max-width: 76mm !important;
        margin: 0 auto !important;
        padding: 1mm 1.5mm !important;
        background: #FFF !important;
        color: #000 !important;
        box-sizing: border-box !important;
        visibility: visible !important;
    }

    #thermal-print-area * {
        visibility: visible !important;
    }

    .thermal-receipt-preview,
    .bill-layout-classic-thermal,
    .bill-layout-premium-thermal,
    .bill-layout-detailed-gst {
        width: 100% !important;
        max-width: 76mm !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
    }
}

/* Receipt Elements */
.receipt-header {
    text-align: center;
    margin-bottom: 8px;
}

.receipt-header h2 {
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 2px;
    letter-spacing: 0.5px;
}

.receipt-header p {
    font-size: 10px;
    margin-bottom: 2px;
}

.receipt-divider {
    border-top: 1px dashed #000;
    margin: 6px 0;
}

.receipt-double-divider {
    border-top: 1px double #000;
    margin: 6px 0;
}

.receipt-meta {
    font-size: 11px;
    margin-bottom: 6px;
}

.receipt-meta-row {
    display: flex;
    justify-content: space-between;
}

.receipt-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
    margin: 6px 0;
}

.receipt-table th {
    text-align: left;
    border-bottom: 1px dashed #000;
    padding-bottom: 3px;
    font-size: 11px;
}

.receipt-table td {
    padding: 3px 0;
}

.receipt-table th:last-child,
.receipt-table td:last-child,
.receipt-table .text-right {
    text-align: right;
    padding-right: 4px;
    font-weight: 900;
}

.receipt-table .text-center {
    text-align: center;
}

.receipt-summary-row {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    margin-bottom: 2px;
}

.receipt-grand-total {
    display: flex;
    justify-content: space-between;
    font-size: 15px;
    font-weight: 900;
    padding: 4px 0;
    border-top: 1px dashed #000;
    border-bottom: 1px dashed #000;
    margin: 6px 0;
}

.receipt-footer {
    text-align: center;
    font-size: 10px;
    margin-top: 10px;
    padding-bottom: 8px;
}
