@media print {
    body { padding-top: 0 !important; background-color: white !important; }
    header, footer, .controls, .modal-overlay, .notifications, #fullscreen-btn, #holding-alert-bubble { display: none !important; }
    .main-content-wrapper { margin-left: 0 !important; padding: 10px !important; }
    .main-content { gap: 30px !important; width: 100% !important; }
    #print-header { display: block !important; text-align: center; margin-bottom: 20px; }
    #print-header h1 { margin: 0 0 5px 0; font-size: 1.5em; }
    #print-header p { margin: 0; font-size: 0.9em; color: #555; }
    #project-info-container { box-shadow: none !important; border: 1px solid #ccc; padding: 10px; }
    #chart-container { box-shadow: none !important; border: 1px solid #eee; padding: 15px; }

    #intervenants-container {
        box-shadow: none !important;
        border: 1px solid #eee;
        padding: 15px;
        width: 80%;
        margin: 0 auto;
    }
    .recap-item {
        box-shadow: none !important;
        border: 1px solid #eee;
        page-break-inside: avoid;
    }
    .recap-item .style-controls,
    .recap-item .icon-btn.delete,
    .recap-item .add-link-btn,
    .recap-item .focus-btn,
    .recap-item .toggle-icon {
        display: none !important;
    }
    .recap-item .details-content input {
        border: none !important;
        background-color: transparent !important;
        padding: 2px 0 !important;
        box-shadow: none !important;
        width: auto !important;
        min-width: 50px;
        text-align: left !important;
        pointer-events: none;
        color: #333 !important;
    }
    .recap-item .details-input-group label {
        margin-right: 5px;
    }

    #cy-chart { height: auto !important; min-height: 400px; border: none !important; }
    .details-content { display: block !important; border-top: 1px solid #eee !important; margin-top: 10px !important; padding-top: 10px !important; }

    body > *:not(.print-visible):not(.main-content-wrapper) {
        display: none !important;
    }
    .main-content > *:not(.print-visible) {
        display: none !important;
    }
    .print-visible { width: 100% !important; margin: 0 !important; }
}
