/* FICHIER STYLE.CSS */
html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

main {
    flex: 1;
}

.sidebar {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.footer {
    background-color: #FBB1FC;
}

#resultat,
.myEditor {
    width: 500px;
    height: 200px;
    border: 1px solid black;
    padding: 5px;
    overflow: auto;
    text-align: left;
}

.myEditorMobile {
    width: 360px;
    height: 200px;
    border: 1px solid black;
    padding: 5px;
    overflow: auto;
    text-align: left;
}

.center-table {
    margin-left: auto;
    margin-right: auto;
}

.table-left-align-elements td {
    text-align: left;
    padding-left: 8px;
}

.table-center-align-elements td {
    text-align: center;
}

/* pour afficher une image de fond en superposition et 100% taille */
#background {
    position: absolute;
    width: 100%;
    height: 100%;
}

.boxForClassement {
    /*border: 1px dotted black;*/
    border: none;
    /*    width: 110px;
*/ display: inline-block;
    height: auto;
    padding: 0 0;
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 20px;
    vertical-align: middle;
}

/*.boxForClassement_mobile {
    border: 1px dotted black;
    width: auto;
    display: inline-block;
    height: auto;
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 20px;
}*/

#custom-alert {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px;
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

/* container qui va etre superpose a l'image en type background */
#scroller {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: auto;
    position: absolute;
}

/* container en position absolue */
#fixed {
    position: absolute;
    top: 25px;
    left: 10px;
    width: 150px;
    z-index: 10;
    color: #567;
    border: 1px solid #000;
    padding: 10px;
}

/* cadre_haut représente le cadre du haut avec le dégradé; */
#cadre_haut {
    height: 105px;
}
    #cadre_haut h1 {
        color: #c58201;
        padding-left: 10px;
        padding-top: 10px;
    }

.top-row {
    /*    background-color: #f7f7f7;*/
    border-bottom: 1px solid #d6d5d5;
    height: 5rem;
    text-align: center;
    background-color: rgb(254,254,254,0.95);
    /*    background-color: rgb(240,240,240,0.95);*/
    /*    border-bottom: 1px solid #d6d5d5;*/
}

.my-left-menu {
    position: sticky;
    top: 30px;
    height: 800px;
    width: 135px;
}

.top_line_bar {
    background-color: rgb(240,240,240,0.3);
    border-bottom: 1px solid #d6d5d5;
    height: 1.5rem;
    position: sticky;
    top: 0;
    z-index: 2;
}

.top_line_bar_mobile {
    background-color: rgb(240,240,240,0.85);
    border-bottom: 1px solid #d6d5d5;
    height: 3.0rem;
    position: sticky;
    top: 0;
    z-index: 2;
}

.content {
    padding-top: 2rem;
    min-height: 800px;
}

/* couleur adoucie du bouton */
.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.primary-tooltip {
    --bs-tooltip-bg: var(--bs-primary);
}

.secondary-tooltip {
    --bs-tooltip-bg: var(--bs-secondary);
}

.success-tooltip {
    --bs-tooltip-bg: var(--bs-success);
}

.danger-tooltip {
    --bs-tooltip-bg: var(--bs-danger);
}

.warning-tooltip {
    --bs-tooltip-bg: var(--bs-warning);
    --bs-tooltip-color: var(--bs-black);
}

.light-tooltip {
    --bs-tooltip-bg: var(--bs-light);
    --bs-tooltip-color: var(--bs-black);
}

.info-tooltip {
    --bs-tooltip-bg: var(--bs-info);
    --bs-tooltip-color: var(--bs-black);
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}


/* POUR AFFICHAGE DE BOX */
/* box styles */

.box {
    background-image: url("../images_site/nm/m1.jpg");
    margin-bottom: 0.5em;
    padding-bottom: 0.1em;
    /*width: 82%; */
    width: auto;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    margin-left: 5px;
    margin-right: 5px;
    font-size: .813em;
}

    .box h3 {
        margin-left: -5px;
        margin-right: -5px;
        margin-top: 0px;
        margin-bottom: 0.5px;
        font-size: 14px;
        font-variant: small-caps;
        background: #66CC33;
        text-align: center;
        text-decoration: underline;
    }

    .box a {
        display: block;
        color: black;
        padding-left: 0px;
        padding-bottom: 0px;
        font-size: 14px;
        text-decoration: none;
    }

        .box a:hover {
            text-decoration: underline;
        }

/* POUR AFFICHAGE DE POPUP */

#popx {
    display: none;
    position: absolute;
    left: 320px;
    top: 200px;
    z-index: 200;
    border: 5px red double;
    background: #f5f5dc;
    cursor: pointer;
    font-size: 80%;
}

    #popx p {
        margin: 0 0.3em;
    }

    #popx h1 {
        font-size: 110%;
        margin: 0 0 0.5em 0;
        border-bottom: 1px solid black;
        /*background: white url("../cl/top.gif") left top repeat-x;*/
        color: black;
        text-align: center;
    }

.fermer {
    margin: 0.5em 0 0 0;
    border-top: 1px solid black;
    /*background: white url("../cl/bottom.gif") left top repeat-x;*/
    color: black;
    text-align: center;
}

.roundBoxBottom_light {
    margin-bottom: -5px;
    margin-right: -5px;
    background: #FFD788;
}

/* pour menus */
#nav, #nav ul { /* toutes les listes */
    padding: 0;
    margin-left: 10;
    list-style: none;
    line-height: 1.5;
}

    #nav a {
        display: block;
        width: 11em;
    }

    #nav li { /* tous les items de liste */
        float: left;
        /*width: 11em; /* largeur obligatoire, sinon opera devient fou */
    }

        #nav li ul { /* listes de deuxieme niveau */
            position: absolute;
            background: #CC99CC;
            width: 11em;
            left: -999em; /* on met left plutot que display pour cacher les menus parce que display: none n'est pas lu par les lecteurs d'&eacute;cran */
        }

        #nav li:hover ul, #nav li.sfhover ul { /* listes imbriquees sous les items de listes survoles */
            left: auto;
            margin-left: 0em;
        }

#boxstory {
    background-color: rgba(255,255,255,0.1);
}

#boxgo {
    background-color: rgba(0,255,0,0.1);
}

.pcomment {
    text-wrap: normal;
    word-break: break-all;
    hyphenate: auto;
    word-wrap: break-word;
}

.boxform {
    width: 600px;
    background: #ccc;
    margin: 0 auto;
    padding: 20px;
    border: 1px solid black;
}

.preview img {
    height: 64px;
    order: 1;
}

.story {
}

    .story form ol {
        padding-left: 0;
    }

    .story form li, div > p {
        background: #eee;
        display: flex;
        justify-content: space-between;
        margin-bottom: 10px;
        list-style-type: none;
        border: 1px solid black;
    }

    .story form img {
        height: 64px;
        order: 1;
    }

    .story form p {
        line-height: 32px;
        padding-left: 10px;
    }

    .story form label, form button {
        background-color: #7F9CCB;
        padding: 5px 10px;
        border-radius: 5px;
        border: 1px ridge black;
        font-size: 0.8rem;
        height: auto;
    }

        .story form label:hover, form button:hover {
            background-color: #2D5BA3;
            color: white;
        }

        .story form label:active, form button:active {
            background-color: #0D3F8F;
            color: white;
        }

    .story #left {
        float: left;
        margin-left: -100%;
        width: 120px;
        height: auto;
        padding-top: 5px;
        text-align: center;
    }

    .story #popx {
        display: none;
        position: absolute;
        left: 180px;
        top: 120px;
        z-index: 200;
        border: 3px double black;
        background: #f5f5dc;
        cursor: pointer;
        font-size: 80%;
    }

        .story #popx p {
            margin: 0 0.3em;
        }

        .story #popx h1 {
            font-size: 110%;
            margin: 0 0 0.5em 0;
            border-bottom: 1px solid black;
            /*background: white url("../cl/top.gif") left top repeat-x;*/
            color: black;
            text-align: center;
        }

    .story #right {
        float: left;
        margin-left: -120px;
        width: 120px;
        height: auto;
        padding-top: 5px;
        text-align: center;
    }

.cacher {
    display: none;
}

.logo_site_mobile {
    height: 85px;
}

.logo_card_style {
    display: inline-block;
    vertical-align: middle;
}

/*@media (max-width: 640.98px) {*/ 
@media (max-width: 800.98px){
.mobile {
        display: block;
    }

    .desktop {
        display: none;
    }
}

/*@media (min-width: 641px) {*/
@media (min-width: 801px){
.mobile {
        display: none;
    }

    .desktop {
        display: block;
    }
    /* affiche les menus au passage de la souris */
    .dropdown:hover > .dropdown-menu {
        display: block;
    }

    .dropdown > .dropdown-toggle:active {
        /*Without this, clicking will make it sticky*/
        pointer-events: none;
    }
}

.size-1 {
    font-size: .625em; /* 10px */
}

.size-2 {
    font-size: .813em; /* 13px */
}

.size-3 {
    font-size: 1em; /* 16px */
}

.size-4 {
    font-size: 1.25em; /* 20px */
}

.size-5 {
    font-size: 1.5em; /* 24 px */
}

.size-6 {
    font-size: 2em; /* 32px */
}

.size-7 {
    font-size: 2.5em; /* 40px */
}

.box57{
    display: inline-block;
    padding-left: 10px;
}

.box57_mobile {
    display: inline-block;
    margin-right: 10px;
    background-color: #33ffbe;
}
.box57_mobile:last-child{
    margin-right: 0px;
}

.center {
    text-align: center;
}

.centered-element {
    margin-left: auto;
    margin-right: auto;
}

.centered-div, .centered-span {
    /* width: 100%; */
    justify-content: center;
    display: flex;
}

.gras, .bold {
    font-weight: bold;
}

.barre {
    text-decoration: line-through;
}

.souligne, .underline {
    text-decoration: underline;
}

.italique, .italic {
    font-style: italic;
}

.underlineRed {
    text-decoration: underline red;
}

.rouge, .red {
    color: red;
}

.noir, .black{
    color:black;
}

.bleu, .blue {
    color: blue;
}

.jaune, .yellow {
    color: yellow;
}

.vert, .green {
    color: green;
}

.blanc, .white {
    color: white;
}

.gris, .grey, .gray {
    color: grey;
}

.bleu-clair {
    color: #6666ff;
}

.rose, .pink{
    color: #c469bf;
}

.font-0 {
    font-family: 'Source Code Pro';
}

.font-1 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
}

.font-2 {
    font-family: 'MS Gothic';
}

.font-3 {
    font-family: cursive;
}

.font-4 {
    font-family: Verdana;
}

.font-5 {
    font-family: 'Trebuchet MS';
}

.font-6 {
    font-family: fantasy;
}

.font-7 {
    font-family: 'Times New Roman';
}

.font-8 {
    font-family: Consolas;
}

.font-9 {
    font-family: 'Comic Sans MS';
}

/* affichage de la liste des catégories pour les classements */
.basic-card-menu {
    float: left;
    padding: 5px;
    height: 180px;
    width: 130px;
    background-color: #E4E8EF;
    overflow: hidden;
    text-align: center;
}

.basic-card-menu-mobile {
    float: left;
    padding: 5px;
/*    height: 180px;
    width: 130px;
*/    background-color: #E4E8EF;
    overflow: hidden;
    text-align: center;
}

.custom-radio-input {
    display: none;
}

.custom-radio-label {
    display: inline-block;
    padding: 0.375rem 0.75rem;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    background-color: #fff;
    cursor: pointer;
    margin-right: 0.5rem;
    /*line-height: 1;*/ /* ajuster la hauteur du texte pour éviter que le texte du bouton soit tronqué */
}

.custom-radio-input:checked + .custom-radio-label {
    background-color: #007bff;
    color: #fff;
    border-color: #007bff;
}
.form-control.d-flex {
        height: auto; /* Ajuster la hauteur */
}
