@media print {
    @page {
        size: A4;
        margin: 5mm;
    }

    * {
        color: #000 !important;
        background: #fff !important;
        box-shadow: none !important;
        text-shadow: none !important;
        filter: none !important;
        border-color: #000 !important;
    }

    .pdf-url-header {
        display: block !important;
        text-align: center;
        font-size: 12pt !important;
        font-weight: bold !important;
        margin-bottom: 2mm !important;
        color: #000 !important;
        background: #fff !important;
        padding: 2mm 0 !important;
        border-bottom: 1px solid #000 !important;
    }

    html, body {
        background: #fff !important;
        color: #000 !important;
        box-shadow: none !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 210mm !important;
        max-width: 210mm !important;
        height: 297mm;
        font-size: 12pt !important;
        font-family: Arial, Helvetica, sans-serif !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    .boxes,
    .boxes.general,
    .boxes.summary {
        border: none !important;
    }

    /* hide non-essential elements */
    .navbar, footer, .carousel-box, .carousel-diag, .bouton-diag, .ring-container, .accueil, .accueil-section, .page-head, .page .info, .page a, .page hr, .page .button, .svg-responsive, .apexcharts-svg, .apexcharts-legend, .apexcharts-tooltip, .apexcharts-toolbar, .loader, #lightbox, #lightbox-image, #pan-menu, #pan-hide, .form-group, .ancre, .storage_details, .boxes.charts, .autodiag_tips, .tips, .boxes.sponsor, .summary.warning,
    button, input, select, textarea, a img, img.copy, img:not(.logo) {
        display: none !important;
    }

    /* show only useful content */
    .box, .boxes, .box.summary, .box.text, .page-content, .smart_data, .smart_data_row, .partition_list, .storage_view {
        background: #fff !important;
        color: #000 !important;
        box-shadow: none !important;
        border: 1px solid #000 !important;
        margin: 0 !important;
        padding: 4px !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    table {
        page-break-inside: avoid;
        border: 1px solid #000 !important;
        color: #000 !important;
        background: #fff !important;
        box-shadow: none !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    th, td {
        border: 1px solid #000 !important;
        color: #000 !important;
        background: #fff !important;
        box-shadow: none !important;
        padding: 4px 4px !important;
        font-size: 11pt !important;
        border-radius: 0 !important;
    }

    a {
        color: #000 !important;
        text-decoration: none !important;
        pointer-events: none !important;
        background: none !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: inline !important;
    }

    .logo {
        display: block !important;
        margin: 0 auto 10px auto !important;
        max-width: 120px !important;
        filter: none !important;
    }

    .tips_dot {
        border-bottom: none !important;
    }

    .print-page-break {
        page-break-after: always;
        break-after: page;
    }

    .box::before {
        filter: none !important;
        box-shadow: none !important;
    }

    /* 3 columns for main sections */
    .boxes.general {
        column-count: 3 !important;
        column-gap: 5px !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .boxes.general > .box.text {
        break-inside: avoid;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        display: block !important;
        margin: 0 0 5px 0 !important;
        padding: 4px !important;
        float: none !important;
    }

    .boxes.summary {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        column-count: 1 !important;
        display: block !important;
    }

    .box.summary {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 5px 0 !important;
        padding: 4px !important;
        box-sizing: border-box !important;
    }

    .list.summary summary {
        font-size: 0.7em !important;
        border-radius: 0 !important;
        padding: 1px 3px !important;
        text-indent: 0 !important;
    }

    .list.summary summary::after {
        display: none !important;
    }

    .list.summary details {
        border-radius: 0 !important;
        padding: 2px !important;
        border: 1px solid rgba(0, 0, 0, 0.35) !important;
    }

    .list.summary details p {
        padding: 2px !important;
        margin: 2px !important;
    }

    h2 {
        font-size: 0.8em !important;
        margin-bottom: 7px !important;
    }

    p {
        font-size: 0.7em !important;
        margin-top: 1.5px !important;
        margin-bottom: 1.5px !important;
    }

    .boot_bar {
        display: none !important;
    }

    .boot_windows_view,
    .modifications-btn {
        border-radius: 0 !important;
    }

    details > :not(summary) {
        display: none !important;
    }

    details summary {
        list-style: none !important;
    }

    details summary::-webkit-details-marker {
        display: none !important;
    }
}
