/* User-provided invoice CSS */
.invoice-wrap {
    max-width: 850px;
    margin: 20px auto;
    padding: 25px;
    background: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #000;
}

/* Buttons */
.print-actions {
    text-align: right;
    margin-bottom: 15px;
}
.print-actions .button {
    padding: 6px 12px;
    font-size: 13px;
    border: 1px solid #000;
    background: #fff;
    color: #000;
    text-decoration: none;
}

/* Header */
.header-band {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.header-band .right {
    font-size: 22px;
    font-weight: bold;
}

/* Contact */
.contact-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}
.contact-row .line {
    margin-bottom: 4px;
}

/* Invoice number */
.tax-title {
    margin: 15px 0;
    font-weight: bold;
}

/* Customer details */
.two-col {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}
.field-line {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding: 4px 0;
}
.field-line .label {
    font-weight: bold;
}

/* Tables */
.items-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}
.items-table th,
.items-table td {
    border: 1px solid #000;
    padding: 6px;
}
.items-table th {
    font-weight: bold;
    text-align: left;
}
.items-table tr.blank td {
    height: 22px;
}

/* Bottom */
.bottom-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.bank-box {
    font-size: 13px;
}
.totals-box table {
    border-collapse: collapse;
}
.totals-box td {
    padding: 6px 10px;
    border: 1px solid #000;
}
.totals-box tr:last-child td {
    font-weight: bold;
}

/* Notes */
.note-box {
    margin-top: 15px;
    font-size: 13px;
}

/* Payments */
.payments {
    display: flex;
    gap: 20px;
    margin-top: 20px;
	justify-content: space-between;
	

}
.payments .panel {
    border: 1px solid #000;
    padding: 8px;
    font-size: 16px;
    font-family: 'Roboto', sans-serif;
    color: #333;
    width: 50%;
	 line-height: 1.8;
}

/* Credit card */
.cc-row {
    margin-top: 20px;
    border: 1px solid #000;
}
.cc-row .row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
p{
	    margin-block-end:0px!important;
}
.tm_invoice_info.tm_mb10 {
    margin-top: -10px;
    margin-bottom: 12px;
}
.cc-cell {
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 6px;
}
.cc-cell:last-child {
    border-right: none;
}

.underline {
    border-bottom: 1px solid #000;
    display: inline-block;
    min-width: 100px;
}
table td,table th {
    border: 1px solid hsla(0,0%,50%,.502);
    line-height: 1.5;
    padding: 11px;
    vertical-align: top
}

/* Print only invoice area */
@media print {
    .print-actions { display: none; }
    body * { visibility: hidden; }
    .invoice-wrap, .invoice-wrap * { visibility: visible; }
    /* Fit to A4 page width with margins */
    .invoice-wrap { position: static; width: 185mm; margin: 0 auto; padding: 0; }
    /* Slightly tighter typography to fit one page */
    .invoice-wrap { font-size: 12px; }
    .items-table tr.blank { display: none; }
    .items-table th, .items-table td { padding: 4px; }
    .payments .panel { padding: 6px; }
}

/* Define page size for print */
@page {
    size: A4;
    margin: 8mm;
}

/* Ensure colors and lines print accurately */
* {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.single-invoice {
	background-color:#f6f6f6!important;
}


.tm_container {
    max-width: 880px;
    padding: 30px 15px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.tm_invoice_wrap {
    position: relative;
}

.tm_invoice.tm_style1.tm_type1 {
    padding: 0px 50px 30px;
    position: relative;
    overflow: hidden;
    border-radius: 0;
}

.tm_invoice {
    background: #fff;
    border-radius: 10px;
    padding: 50px;
}

.tm_invoice_in {
    position: relative;
    z-index: 100;
}

.tm_invoice.tm_style1.tm_type1 .tm_invoice_head {
    height: 110px;
    position: relative;
}

.tm_invoice.tm_style1.tm_type1 .tm_logo img {
    max-height: 70px;
}

.tm_invoice.tm_style1.tm_type1 .tm_invoice_right {
    position: relative;
    z-index: 2;
}

.tm_invoice.tm_style1 .tm_invoice_head .tm_invoice_right div {
    line-height: 1em;
}

.tm_text_uppercase {
    text-transform: uppercase;
}

.tm_white_color {
    color: #fff;
}

.tm_f50 {
    font-size: 50px;
}

.tm_invoice.tm_style1 .tm_invoice_head {
    display: flex;
    justify-content: space-between;
}

.tm_align_center {
    align-items: center;
}

.tm_mb15 {
    margin-bottom: 15px;
}

.tm_accent_bg, .tm_accent_bg_hover:hover {
    background-color: var(--e-global-color-e92c620);
    color: #fff!important;
    font-size: 16px;
    line-height: 18px;
    text-align: left;
}

.tm_invoice.tm_style1.tm_type1 .tm_shape_bg {
    position: absolute;
    height: 100%;
    width: 70%;
    transform: skewX(35deg);
    top: 0px;
    right: -100px;
    overflow: hidden;
}

.tm_mb2 {
    margin-bottom: 2px;
}

.tm_primary_color {
    color: #111;
}

p {
    margin-bottom: 15px;
}

.tm_invoice_head.tm_mb10 {
    display: flex;
    justify-content: space-between;
}

.tm_table_responsive {
    overflow-x: auto;
}

.tm_table_responsive > table {
    min-width: 600px;
}

.tm_width_3 { width: 25%; }
.tm_width_4 { width: 33.33333333%; }
.tm_width_2 { width: 16.66666667%; }
.tm_width_1 { width: 8.33333333%; }

.tm_text_right {
    text-align: right;
}

.tm_semi_bold {
    font-weight: 600;
}

.tm_table.tm_style1 {
    margin-top: 0px;
}

th {
    padding: 05px 15px;
    line-height: 1.55em;
}

	
}
td {
    padding: 05px 15px;
    line-height: 1.55em;
}

.tm_invoice_footer {
    display: flex;
    justify-content: space-between;
}

.tm_border_top {
    border-top: 1px solid #dbdfea;
}

.tm_bold {
    font-weight: 700;
}

.tm_invoice_footer .tm_left_footer {
    width: 58%;
    padding: 10px 15px;
    flex: none;
}

.tm_invoice_footer .tm_right_footer {
    width: 42%;
}

.tm_invoice_footer table {
    margin-top: -1px;
}

.tm_gray_bg {
    background: #f5f6fa;
}

/* ===== FONT UPDATE ONLY ===== */

body,
.tm_container,
.tm_invoice,
td,
p {
    font-family: 'Roboto', sans-serif;
    color: #333;
}

/* Headings & Key Text */
.tm_f50,
.tm_primary_color,
.tm_semi_bold,
.tm_bold,
th {
    font-family: 'Poppins', sans-serif;
}

/* Totals / Right Numbers */
.tm_text_right {
    font-family: 'Poppins', sans-serif;
}

tr.tm_accent_bg td {
    color: #fff!important;
}

