﻿
/* === Report Header Styles === */

.report-container {
    width: 100%;
    max-width: 99%;
    margin: 0 auto;
    padding: 30px 40px;
    box-sizing: border-box;
}


.header-section-report {
    padding: 25px 30px;
    border-left: 6px solid #10b981; /* teal left border */
    background-color: #f9fafb;
    border-bottom: 3px solid #2c3e50;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.Customer-Section-row {
    background: #f9fafb;
    padding: 25px 30px;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}



.company-title {
    font-size: 25px;
    font-weight: bold;
    text-transform: uppercase;
}

.invoice-title {
    font-size: 30px;
    font-weight: bold;
    color: black;
    font-style: oblique;
}

.po-number {
    text-align: right;
    font-size: 16px;
    font-weight: 600;
}
.report-header {
    margin-bottom: 40px;
    border-left: 5px solid #10b981;
    padding: 20px 30px;
    background-color: #f9fafb;
    text-align: center;
   
}

.report-title {
    font-weight: 700;
    font-size: 26px;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.report-subtitle {
    font-size: 26px;
    margin-bottom: 8px;
}

.report-date-info {
    font-weight: bold;
    font-size: 16px;
}

/* === Table Base Styles === */
.report-table {
    width: 100%;
    border-collapse: collapse;
    border: 2px solid #dee2e6;
    table-layout: auto;
}

    .report-table th,
    .report-table td {
        border: 1px solid #dee2e6;
        padding: 10px;
        vertical-align: middle;
        word-wrap: break-word;
    }

/* === Table First Header Styles === */
.report-first-row-header {
    background-color: #3d4349;
    color: white;
    font-weight: 600;
    border-color: #454d55;
}

/* === Text Alignment Classes === */
.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.text-center {
    text-align: center;
}
.mt-2 {
    margin-top:5px;
}
.mb-2 {
    bottom: 5px;
}

/* === Second Row === */
.report-second-row-header {
    background-color: #4a5056 !important;
    color: white !important;
    font-weight: bold;
    font-size: 1.05em;
    border:1px solid white !important ;
}

    .report-second-row-header td {
        background-color: #343a40 !important;
        color: white !important;
        padding: 10px;
    }

/* === third Row Styles === */
.report-third-row-header {
    background-color: #f8f9fa;
}

/* === Subtotal Row Styles === */
.subtotal-row {
    font-weight: bold;
    background-color: #f8f9fa !important;
}

    .subtotal-row td {
        background-color: #f8f9fa !important;
        border-top: 2px solid #495057 !important;
        border-bottom: 2px solid #495057 !important;
    }

/* === Spacing Row === */
.spacing-row {
    height: 10px;
}

    .spacing-row td {
        border: none !important;
        background-color: white !important;
    }

/* === Grand Total Row === */
.grand-total-row {
    font-weight: bold;
    background-color: #28a745 !important;
    color: white !important;
    font-size: 1.1em;
}

    .grand-total-row td {
        background-color: #28a745 !important;
        color: white !important;
        border-top: 3px solid white !important;
        border-bottom: 3px solid white !important;
        padding: 12px 10px;
    }

/* === Status Rows === */
.status-warning-row {
    background-color: #dc3545 !important;
    color: white !important;
    font-weight: bold;
}

    .status-warning-row td {
        background-color: #dc3545 !important;
        color: white !important;
    }

.status-success-row {
    background-color: #d4edda !important;
    font-weight: bold;
}

    .status-success-row td {
        background-color: #d4edda !important;
        padding: 15px;
    }

/* === Empty State === */
.empty-state-row td {
    text-align: center;
    color: #6c757d;
    padding: 40px;
}

/* === Utility Classes === */
.font-weight-bold {
    font-weight: bold;
}

.font-weight-normal {
    font-weight: normal;
}

.text-muted {
    color: #6c757d;
}
/* === Reserve Movement Section Styles === */
.reserve-header-row {
    background-color: #17a2b8 !important;
    color: white !important;
    font-weight: bold;
    font-size: 1.05em;
}

    .reserve-header-row td {
        background-color: #17a2b8 !important;
        color: white !important;
        padding: 12px 10px;
        border-top: 3px double #343a40 !important;
    }

.reserve-detail-row {
    background-color: #e7f7f9 !important;
    font-weight: 600;
}

    .reserve-detail-row td {
        background-color: #e7f7f9 !important;
        padding: 10px;
    }

.reserve-total-row {
    background-color: #0c7489 !important;
    color: white !important;
    font-weight: bold;
    font-size: 1.05em;
}

    .reserve-total-row td {
        background-color: #0c7489 !important;
        color: white !important;
        padding: 12px 10px;
        border-bottom: 3px double #343a40 !important;
    }

/* === Hover Effects === */
.report-table tbody tr:not(.report-second-row-header):not(.subtotal-row):not(.grand-total-row):not(.spacing-row):not(.status-warning-row):not(.status-success-row):hover {
    background-color: #f8f9fa;
    transition: background-color 0.2s ease;
}

/* === Table Borders === */
.table-bordered {
    border: 2px solid #dee2e6;
}

    .table-bordered th,
    .table-bordered td {
        border: 1px solid #dee2e6;
    }

/* === Print Optimization === */
@media print {
    .report-table {
        page-break-inside: auto;
    }

    .report-second-row-header,
    .subtotal-row,
    .grand-total-row {
        page-break-inside: avoid;
    }

    body {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
