@media print {
    /* Hide entire app shell — header, sidebar, mobile nav, MudBlazor overlays */
    .app-bar,
    .app-sidebar,
    .mobile-nav,
    .no-print,
    .mud-drawer,
    .mud-appbar,
    .mud-snackbar-provider,
    .mud-popover-provider,
    .mud-dialog-container,
    .mud-overlay {
        display: none !important;
    }

    /* Reset main content area — remove grid layout, padding, background */
    .app-layout {
        display: block !important;
    }
    .app-main {
        padding: 0 !important;
        margin: 0 !important;
        background: #fff !important;
    }
    .mud-main-content {
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Force white background, black text */
    body, html {
        background: #fff !important;
        color: #000 !important;
        font-size: 9pt;
        font-family: 'Segoe UI', Arial, sans-serif;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Show print-only elements (letterhead, print tables) */
    .print-only {
        display: block !important;
    }

    /* Report title */
    .report-title {
        text-align: center;
        font-size: 13pt;
        font-weight: bold;
        margin-bottom: 4px;
        color: #000;
    }

    .report-subtitle {
        text-align: center;
        font-size: 9pt;
        color: #555;
        margin-bottom: 10px;
    }

    /* Report tables */
    .report-table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 8pt;
        color: #000;
    }

    .report-table th {
        background: #e0e0e0 !important;
        font-weight: bold;
        padding: 3px 4px;
        border: 1px solid #999;
        white-space: nowrap;
        text-align: center;
        color: #000;
    }

    .report-table td {
        border: 1px solid #bbb;
        padding: 2px 4px;
        vertical-align: top;
        color: #000;
    }

    .report-table td.name {
        white-space: nowrap;
        min-width: 100px;
    }

    .report-table tfoot th {
        background: #d0d0d0 !important;
        font-size: 9pt;
        border-top: 2px solid #000;
        color: #000;
    }

    .report-table tbody tr:nth-child(even) {
        background: #f9f9f9;
    }

    /* Overtime highlight prints as dark red */
    .ot-highlight { color: #c62828 !important; }

    /* Prevent breaking inside rows */
    tr {
        page-break-inside: avoid;
    }

    /* Letterhead */
    .report-letterhead {
        display: flex !important;
        align-items: center;
        gap: 16px;
        margin-bottom: 12px;
        padding-bottom: 8px;
        border-bottom: 2px solid #000;
    }
    .report-letterhead img {
        width: 60px;
        height: 60px;
        object-fit: cover;
    }
    .report-letterhead .company-name {
        font-size: 14pt;
        font-weight: bold;
        color: #000;
    }
    .report-letterhead .company-address {
        font-size: 9pt;
        color: #555;
    }

    /* Page setup */
    @page {
        size: landscape;
        margin: 0.4in 0.3in;
    }
}
