.Backdrop {
    position: fixed;
    z-index: 1040;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #000;
    opacity: 0.5;
}

.FicheDetailleeModal {
    position: fixed;
    width: 90vw;
    max-width: 1400px;
    height: 90vh;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1041;
    border: 1px solid #e5e5e5;
    background-color: white;
    overflow: auto;

    .FicheDetailleeHeader {
        width: 100%;
        padding: 0.5rem;

        position: -webkit-sticky;
        position: sticky;
        top: 0;
        left: 0;
        display: flex;
        justify-content: space-between;

        background-color: #ddd;

        h3 {
            font-size: 1.2rem;
            margin: 0;
        }

        .ExitButton {
            z-index: 1040;
            cursor: pointer;
            display: flex;
            align-items: center;
            line-height: 1;
            font-size: 1.2em;

            > svg {
                font-size: 1.7em;
                user-select: none;
            }

            > span {
                margin: 0 0 0 0.25em;
            }

            &:hover > span {
                text-decoration: underline;
            }
        }
    }

    .FicheDetailleeBody {
        padding: 0.5rem;

        h5 {
            margin: 1em 0 0 0;
            color: #0b1b7f;
            font-size: 1.15em;
            /*
        border-bottom: 1px solid #a5acda;
        padding: 0 0 2px 0;
        */
        }

        p {
            margin-top: 0.3rem;
            padding-right: 1.5rem;
        }

        hr {
            margin-bottom: 0.5rem;
            margin-top: 0.5rem;
        }

        .InfosPerso {
            margin-bottom: 1em;

            > h5:first-child {
                margin-top: 0;
            }
        }

        .TabPanel {
            margin-bottom: 1em;
        }

        .InfoColumn {
            display: flex;
            flex-direction: column;
            flex-wrap: wrap;
            flex-grow: 1;
        }

        .InfoRow {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            justify-content: space-between;

            .InfoDisplay {
                flex-grow: 1;
            }
        }

        .InfoDisplay {
            margin-top: 0.3rem;
            padding-right: 1.5rem;
        }

        .ChampHeader {
            display: flex;
            margin-top: 0.5rem;
            margin-right: 1.5rem;
            color: #0b1b7f;
        }

        .ChampTexte {
            border: 1px solid #ddd;
            height: 7vh;
            overflow: auto;
            padding: 0.3em;
        }
    }
    .administreNotation {
        margin: 0.5em 0 0 0;
        border-collapse: collapse;
        width: 100%;
    
        th,
        td {
            padding: 0.25em 0.5em;
            border: 1px solid #999;
            text-align: center !important;
            vertical-align: middle;
    
            &.vide {
                border: none;
            }
    
            &.total {
                font-weight: bold;
            }
        }
    
        th:first-child {
            width: 20%;
        }
    
        td {
            width: 8%;
        }
    
        tbody {
            th {
                text-align: left !important;
            }
        }
    }
}
