@media print {
    .scholar {
        --blue-text: #6f79a1;
        --purple-text: #907198;
        --paragraph-color: #707070;
        --orange-text: #8e4b18cc;
        --green-text: #54854bf5;
        --red-text: #aa605af0;
    }

    .tnw {
        --blue-text: #6e779d;
        --purple-text: #7f6386;
        --paragraph-color: #656565;
        --orange-text: #894918cc;
        --green-text: #48763ef5;
        --red-text: #a5625cee;
    }

    body {

        --sub-family: #414346da;
        --night-blue: #818bafed;
        --blue-light: #737994;
        --blue-light-2: #898ea5;
        --blue-light-3: #8b97bc;

        --blue-lighter: #9095ac;

        --grey-lighter: #b7b5b5;
        --grey-lightererer: #dfdbdb;

        --aside: rgba(243, 243, 243, 0.695);
        --aside-border-color: rgba(194, 194, 194, 0.703);
        --aside-bis: #f5f5f5;

        --green-dark: #3f784adf;
        --green-dark-2: #456e3d9e;

        --purple-soft: #764f9a94;

        --box-shadow: rgba(103, 102, 102, 0.698);
        --box-shadow-light: rgba(148, 147, 147, 0.698);
        --grey: rgb(96, 91, 91);

        --line-color: var(--grey-light);
        --column-color: var(--grey-lighter);
        --max-width: 92vw; 
        background-color: white;
        print-color-adjust: exact;
        -webkit-print-color-adjust:exact;
        overflow: hidden;
        max-width: var(--max-width);
    }

    .print-footer {
        display: block;
        position: fixed;
        bottom: 0px;           
        right: -4px;
        /* left: -50%; */

        height: 20px; 
        width: 100vh;
        text-align: center;
        font-family: 'Times New Roman', Times, serif;
        font-size: 15px;
        pointer-events: none;
        z-index: 100;
        rotate: 90deg; 
        transform-origin: 100% 100%;
        white-space: pre-line;
        div, span {
            color: rgb(200, 200, 200);
        }
        span {border-bottom: 1px solid rgb(200, 200, 200);}
    }

    @page {
        margin: 40px 8px 30px 8px; 
        max-height: 240mm;
        /* padding-top: 20px; */
        size: A4; /*portrait|landscape|A4|A3|letter|A4 landscape|10cm|420px|6in|640px 360px|20cm 15cm|auto */
        page-orientation: upright;  /* upright|rotate-left|rotate-right */
        /* margin: 1in; */
        @bottom-right {
            font-family: 'Times New Roman', Times, serif;
            font-size: 13px;
            color: rgb(160, 160, 160);
            content: counter(page) "/" counter(pages);
            border-top: 1px solid rgb(222, 222, 222);
        }
    }

    .table-container {
        overflow-x: hidden;
        max-width: 240mm;
    }

    hr {
        margin: 40px auto 40px auto;
    }

    .double-entries-table {
        --line-color: rgb(233, 232, 232);
        --column-color: rgb(218, 218, 218);
        --table-background-color: rgb(243, 243, 243);
    }

    .return, .scroll-top, .footer-container, .prev, .next, .clickables, #reading-scroll-bar {
        display: none !important;
    }


    p, tr, .title, .page-numbers, .focus {
        break-inside: avoid;
        page-break-inside: avoid;
        /* box-decoration-break: clone;  */
        orphans: 3;          /* bonus : garde au moins 3 lignes en bas */
        widows: 3;           /* bonus : garde au moins 3 lignes en haut */
    } 

    .page-break {
        clear: both;
        break-after: page;
        & + .point-title, & + .sub-family, & + .point-title + ol > li, & + .point-title + ol > li > * { 
            margin-top: 0px;
        }
    }

    img {
        break-inside: avoid;
        max-width: 100%;
        page-break-inside: avoid;
    }

    .title {
        /* border-bottom: 3.2px solid var(--grey-lighter); */
        margin-top: 0px;
    }

    .sub-family {
        border-top-width: 1.9px;
        border-bottom-width: 1.9px;
    }
 
    .point-title {
        border-bottom-width: 1.6px;
    }

    tr:nth-child(even) {background-color: rgba(228, 227, 227, 0.695);}

    .table-container.signs-table table {
        min-width: 500px;
    }
    
    .table-container.signs-table th:last-of-type {
        border-left: unset;
    }
    
    .table-container.signs-table th:not(:first-of-type):not(:last-of-type) {
        border-left: unset; border-right: unset;
    }

    /* zero column */
    .table-container.signs-table th:has( mjx-container:not( mjx-c.mjx-c221E )) {
        width: 10px !important;
    }

    .table-container.division {
        tr {
            background-color: white !important;
        }
    }
    /* .reduced-on-printing {
        overflow: visible;
        transform: rotate(90deg) translateX(33%);
        transform-origin: 50% 50%;
        transform-origin: center;
        break-before: page;
        break-inside: auto;
        position: relative; top: 0px;
    }

    .reduced-on-printing > table tr > th:first-of-type {
        display: none;
    }

    .reduced-on-printing > table tr > td:first-of-type {
        display: none;
    } */

    div[id*="tableau-recap"], *[id*="recap-formules"] {
        display: none;
    }

    div[id*="recap-table"], *[id*="formulas-recap"] {
        display: none;
    }

    .demo-img {
        filter: brightness(100%) contrast(100%);
    }

    #demos, #exemple {
        border-color: rgba(187, 180, 173, 0.736);
        max-width: 70vw;
        padding: 20px 46px;
    }

    .container { width: 140px; }
    .right::before {transform: skew(74deg); }

    .aside, .focus {
        overflow: hidden;
    }

    .aside {
        min-width: 70vw;
    }

    .landscape {
        overflow: hidden; 
        break-before: page;
        break-after: page;
          
        object-fit: cover;      /* ou contain selon le besoin */

        height: 297mm;
        table {
            transform: rotate(90deg);
            transform-origin: 50% 50%;
            translate: -10% 100%;     /* ou transform: rotate(90deg) translateY(-100%) */
        }
    }

    .reshifted {
        overflow: hidden; 
        position: relative;
        left: -10%;
        width: max-content;
        object-fit: cover;      /* ou contain selon le besoin */
        
    }
    

    /* blue: #6F79AB */
    mjx-mstyle[style="color: rgb(111, 121, 171);"] {
        color: var(--blue-text) !important;
    }

    /* green: #58814B */
    mjx-mstyle[style="color: rgb(88, 129, 75);"] {
        color: var(--green-text) !important;
    }

    /* red: #8A5757 */
    mjx-mstyle[style="color: rgb(138, 87, 87);"] {
        color: var(--red-text) !important;
    }

    /* purple: #8A6897 */
    mjx-mstyle[style="color: rgb(138, 104, 151);"] {
        color: var(--purple-text) !important;
    }

    /* orange: #8E683D */
    mjx-mstyle[style="color: rgb(142, 104, 61);"] {
        color: var(--orange-text) !important;
    }
}