@media print {
.sidebar,
            .top-bar,
            .global-actions,
            .section-footer button,
            .mobile-toggle,
            .toast {
                display: none !important;
            }

            body {
                background: white;
                height: auto;
                overflow: visible;
                display: block;
            }

            .main-content,
            .scroll-area {
                width: 100%;
                padding: 0;
                margin: 0;
                overflow: visible;
            }

            .scroll-container {
                max-height: none !important;
                overflow: visible !important;
                padding-right: 0 !important;
            }

            .section-card {
                box-shadow: none;
                border: none;
                margin: 0;
                padding: 0;
                display: none;
                /* Hide all by default */
            }

            /* Only show the active section or marked section */
            .section-card.section-to-print,
            .section-card.active {
                display: block !important;
                page-break-after: always;
            }

            .card-header {
                border-bottom: 2px solid black;
                padding: 10px 0;
                margin-bottom: 20px;
            }

            .card-body {
                padding: 0;
            }

            /* Improve table density for print */
            .requirements-table td,
            .requirements-table th {
                padding: 8px;
                font-size: 11pt;
            }

            /* Force black text */
            * {
                color: black !important;
            }

            /* Ensure charts print correctly */
            #dashboard-charts {
                display: flex !important;
                flex-direction: row !important;
                page-break-inside: avoid;
            }

            #dashboard-charts canvas {
                max-height: 250px !important;
            }

            .sig-block input {
                border: none;
                border-bottom: 1px dotted black;
                background: transparent;
            }

            /* Professional Report Print Styles */
            .report-print-container {
                width: 100%;
                font-family: 'Times New Roman', Times, serif;
                color: black !important;
            }

            .report-header {
                text-align: center;
                border-bottom: 3px double #000;
                padding-bottom: 15px;
                margin-bottom: 25px;
            }

            .report-title {
                font-size: 20px;
                font-weight: bold;
                text-transform: uppercase;
                margin: 5px 0;
            }

            .report-meta {
                display: flex;
                justify-content: space-between;
                font-size: 12px;
                margin-bottom: 20px;
            }

            .stats-grid {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 20px;
                margin-bottom: 30px;
            }

            .stats-box {
                border: 1px solid #000;
                padding: 15px;
            }

            .stats-box h4 {
                margin: 0 0 10px 0;
                border-bottom: 1px solid #000;
                font-size: 14px;
            }

            .report-table {
                width: 100%;
                border-collapse: collapse;
                font-size: 11px;
            }

            .report-table th,
            .report-table td {
                border: 1px solid #000;
                padding: 6px;
                text-align: left;
            }

            .report-table th {
                background-color: #f0f0f0 !important;
                -webkit-print-color-adjust: exact;
                print-color-adjust: exact;
            }

            .text-center {
                text-align: center !important;
            }

            .text-right {
                text-align: right !important;
            }
        }

