/* Print Styles for Purchase Report */

@media print {
    /* STEP 1: Hide EVERYTHING first */
    body * {
        visibility: hidden !important;
    }

    /* STEP 2: Show only the print area and its children */
    .print-area,
    .print-area * {
        visibility: visible !important;
    }

    /* STEP 3: Position print area at top of page */
    .print-area {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
    }

    /* Hide unnecessary elements even inside print area */
    .no-print,
    .rz-paginator,
    .rz-grid-pager,
    .rz-toolbar,
    button,
    input[type="text"],
    input[type="search"],
    .rz-textbox,
    .rz-checkbox,
    .rz-label,
    .rz-button,
    .rz-splitbutton,
    .no-print-button,
    .rz-card.no-print {
        display: none !important;
        visibility: hidden !important;
    }

    /* Hide MainLayout elements specifically */
    .rz-sidebar,
    .rz-sidebar-content,
    .rz-layout,
    .rz-header,
    aside,
    nav,
    header,
    footer {
        display: none !important;
        visibility: hidden !important;
    }

    /* Ensure the grid is visible and full width */
    body {
        margin: 0;
        padding: 10mm;
        background: white;
    }

    /* Make content area full width */
    .rz-content,
    .row,
    .col-md-12 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Grid styling for print */
    .rz-datatable,
    .rz-grid {
        width: 100% !important;
        border-collapse: collapse;
        page-break-inside: auto;
    }

    /* Table cells */
    .rz-datatable-data td,
    .rz-datatable-data th {
        border: 1px solid #ccc !important;
        padding: 4px 8px !important;
        font-size: 10pt !important;
        page-break-inside: avoid;
    }

    /* Group headers */
    .rz-group-header {
        background-color: #f0f0f0 !important;
        font-weight: bold !important;
        page-break-after: avoid;
        page-break-inside: avoid;
        border: 1px solid #999 !important;
        padding: 6px 8px !important;
    }

    /* Footer totals */
    .rz-datatable-footer {
        font-weight: bold;
        background-color: #f5f5f5 !important;
        page-break-inside: avoid;
    }

    /* Remove background colors that don't print well */
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
        color-adjust: exact !important;
    }

    /* Remove the aqua background from grid */
    .rz-datatable {
        background-color: white !important;
    }

    /* Page break control */
    tr {
        page-break-inside: avoid;
        page-break-after: auto;
    }

    thead {
        display: table-header-group;
    }

    tfoot {
        display: table-footer-group;
    }

    /* Title styling */
    .rz-heading {
        font-size: 18pt;
        margin-bottom: 10px;
        text-align: center;
        page-break-after: avoid;
    }

    /* Filter info section - visible in print */
    .print-filter-info {
        page-break-after: avoid;
        margin-bottom: 15px;
    }

    .print-filter-info .rz-card {
        border: 1px solid #1e5180 !important;
        padding: 10px !important;
        background-color: #f8f9fa !important;
        print-color-adjust: exact !important;
        -webkit-print-color-adjust: exact !important;
    }

    /* Hide group expand/collapse icons */
    .rz-group-toggle {
        display: none !important;
    }

    /* Ensure proper column widths */
    table {
        table-layout: auto !important;
    }

    /* Print header (optional - browser will add this) */
    @page {
        margin: 15mm;
    }
}

/* Screen styles for print button */
@media screen {
    .print-button-container {
        margin-bottom: 10px;
        display: flex;
        justify-content: flex-end;
    }
}
