*::-webkit-scrollbar {
    width: 3px;
    height: 3px;
}

*::-webkit-scrollbar-track {
    background: transparent;
}

*::-webkit-scrollbar-thumb {
    background-color: #00000069;
    border-radius: 3px;
}

#mobilemenu {
    display: none;
}

.bg_bleu {
    background-color: #0075FF;
}

.border_bleu {
    border-color: #0075FF;
}

.bleu {
    color: #0075FF;
}

.bg_gris {
    background-color: #BDC9D3!important;
}

.border_gris {
    border-color: #BDC9D3;
}

.gris {
    color: #BDC9D3;
}

.yellow {
    color: #F8E85D;
}

.bg_yellow {
    background-color: #F8E85D;
}

.border_yellow {
    border-color: #F8E85D;
}

.noir {
    color: #222D38;
}

.bg_noir {
    background-color: #222D38;
}

.border_noir {
    border-color: #222D38;
}

.noir2 {
    color: #2E2E2E;
}

.bg_noir2 {
    background-color: #2E2E2E;
}

.border_noir2 {
    border-color: #2E2E2E;
}

.violet {
    color: #9400EE!important;
}

.bg_violet {
    background-color: #9400EE ;
}

.border_violet {
    border-color: #9400EE ;
}

.orange {
    color: #F09D00 ;
}

.bg_orange {
    background-color: #F09D00 ;
}

.border_orange {
    border-color: #F09D00;
}

.vert {
    color: #0FAE94;
}

.bg_vert {
    background-color: #0FAE94;
}

.border_vert {
    border-color: #0FAE94;
}

body, html {
    color: #303030;
    background: white;
    margin: 0;
    padding: 0;
    font-family: HKGrotesk,sans-serif;
    box-sizing: border-box;
    scrollbar-width: thin;
}

header {
    background: #070b0f;
    padding: 0 35px;
    display: flex;
    height: 78px;
    align-items: center;
    justify-content: stretch;
    position: relative;
    gap: 50px;
    overflow: visible;
    z-index: 999;
}

header a img {
    width: 78px;
}

header a {
    color: white;
    text-decoration: none;
    font-size: 15px;
    position: relative;
    padding: 0 4px;
    /* line-height: 21px; */
    white-space: nowrap;
    transition: ease-out 0.2s color;
}

header nav {
    flex-grow: 2;
    width: 100%;
    display: flex;
    justify-content: stretch;
    /* max-width: 800px; */
    /* overflow:hidden; */
    /* line-height: 21px; */
    height: 78px;
    align-items: center;
    gap: 20px;
}

input, select, textarea,button {
    outline: none!important;
    font-family: HKGrotesk,sans-serif;
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 25px;
    appearance: none;
    border-radius: 4px;
    height: 42px;
    padding: 0 10px;
    background: #FFFFFF;
    color: #8F8F8F;
    border: 1px solid #BDC9D3;
    font-size: 15px;
    letter-spacing: -0.01em;
    font-weight: bold;
    line-height: 21px;
    -webkit-appearance: none;
    max-width: 544px;
    height: 40px;
    cursor: pointer;
}

.search {
    flex-grow: 1;
    width: 100%;
    min-width: 102px;
    width: 300px;
    position: relative;
    overflow: hidden;
    max-width: 300px;
    border: solid 1px #b5b5b5;
    border-radius: 4px;
    height: 40px;
}

.search:hover, .search:focus-within {
    border: solid 1px #2E2E2E;
}

header .search {
    border: solid 1px #2E2E2E;
    background: #2E2E2E;
    /* border: none; */
    height: 38px;
    border-radius: 4px;
    margin: 0 45px;
    color: white;
}

.search input {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background: transparent;
    border: none;
    appearance: none;
    padding-left: 46px;
    -webkit-appearance: textfield;
    box-sizing: content-box;
    z-index: 2;
    font-size: 16px;
    -webkit-appearance: none;
}

header .search input {
    color: white;
    /* background: #ffffff40; */
    border-radius: 0;
}

header .search:hover, header .search:focus-within {
    background: #ffffff2e;
    /* border: solid 1px #ffffffb0; */
}

header .search:hover input, header .search:focus-within input , header .search input:focus {
    /* background: #ffffff5c; */
}

.search::before {
    position: absolute;
    content: "";
    top: 50%;
    margin-top: -10px;
    left: 21px;
    border-radius: 100%;
    width: 12px;
    height: 12px;
    border: solid 2px #8f8f8f;
    z-index: 3;
}

.search::after {
    position: absolute;
    content: "";
    top: 50%;
    margin-top: 5px;
    left: 34px;
    transform: rotate(45deg);
    width: 5px;
    height: 2px;
    background: #8f8f8f;
    z-index: 3;
}

.search:hover::after, .search:focus-within::after {
    background: #2E2E2E;
}

.search:hover::before, .search:focus-within::before {
    border-color: #2E2E2E;
}

header .search:hover::after, header .search:focus-within::after {
    background: #ffffffa8;
}

header .search:hover::before, header .search:focus-within::before {
    border-color: #ffffffa8;
}

header .search input::placeholder {
    color: #E3E4E5;
}

header nav a.active::before {
    content: "";
    width: 100%;
    position: absolute;
    bottom: 0;
    background: #F8E85D;
    height: 5px;
    left: 0;
}

.btn, .submit_btn button.primary {
    position: relative;
    line-height: 16px;
    padding: 11px 15px 11px 15px;
    display: inline-block;
    color: white;
    background: #0075FF;
    border-radius: 4px;
    margin: 0;
    white-space: nowrap;
    cursor: pointer;
    text-decoration: none;
    justify-content: center;
    /* height: 16px; */
    font-weight: normal;
    cursor: pointer;
    position: relative;
    border-radius: 4px;
    /* border: 1px solid var(--Link-Water, #BDC9D3); */
    /* background: var(--White, #FFF); */
    /* color: var(--Dodger-Blue, #0075FF); */
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -0.15px;
    max-height: 42px;
    box-sizing: border-box;
    height: 42px!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    position: relative;
}

header span.spacer {
    width: 2px;
    background: #2e2e2e;
    height: 21px;
}

header #user {
    flex-grow: 1;
    margin: 0 25px;
    background: #ffffff5c;
    width: 28px;
    height: 28px;
    overflow: hidden;
    display: block;
    border-radius: 100%;
    min-width: 28px;
    max-width: 28px;
    text-align: center;
    line-height: 28px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 20px;
    color: white;
    cursor: pointer;
    /* display: none; */
    position: relative;
    min-width: 28px;
    max-width: 28px;
    margin: auto;
}

.btn:hover {
    opacity: 0.9;
}

.btn span {
    font-size: 22px;
    font-family: sans-serif;
    line-height: 10px;
    text-align: center;
    /* display: flex; */
    align-items: center;
    justify-content: center;
    /* height: 7px; */
    /* background: red; */
    margin-bottom: 3px;
    z-index: 99;
    /* position: relative; */
}

.flex-center {
    justify-content: center;
}

header a.logo.big img {
    width: 112px;
}

header a:hover {
    color: #9e9fa0;
}

header.login a.logo, header span.logo {
    width: 100%;
    background: #F8E85D;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    /* width: 200px!important; */
    margin-left: 200px;
    padding-left: 100px;
    position: relative;
    margin: 0;
}

header.login {
    padding-right: 0;
    height: 64px;
    padding: 0;
}

header.login a:first-child {
    position: absolute;
    top: 0;
    left: 0;
    width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    background: black;
    height: 100%;
    font-size: 15px;
    padding-left: 0;
}

header a.logo img,header span.logo img {
    width: 98px;
    /* transform: scale(1.5); */
    max-height: 100%;
}

header a span {
    color: #585858;
    margin-right: 10px;
}

div#login {
}

div#login {
    display: flex;
    background: #555 url('/img/etudiant.jpg');
    background-size: cover;
    min-height: calc(100vh - 64px);
    align-items: center;
    justify-content: center;
    background-position: center center;
    /* background: white; */
    padding: 10px 0;
}

h1 {
    padding: 0;
    line-height: 39px;
    font-size: 30px;
    font-weight: bold;
    color: #070B0F;
    margin: 0;
    letter-spacing: -0.03em;
}

label {
    display: block;
    font-weight: bold;
    font-size: 13px;
    line-height: 17px;
}

#login form {
    width: 100%;
    max-width: 346px;
    background: white;
    box-shadow: 0px 0px 50px 15px rgba(0, 0, 0, 0.05);
    border-radius: 4px;
    padding: 55px 80px;
}

button {
    height: 45px;
    appearance: none;
    background: #0075FF;
    border-radius: 4px;
    color: white;
    border: none;
    font-weight: bold;
    letter-spacing: -0.02em;
    font-size: 16px;
    white-space: nowrap;
    /* width: auto; */
}

input:active, textarea:active, select:active {
    border-color: #BDC9D3;
}

input:hover, textarea:hover, select:hover {
    border-color: #909FAC;
    color: #585858;
}

input:focus, textarea:focus, input:focus {
    border-color: #222D38;
    color: #2E2E2E;
}

textarea {
    resize: vertical;
    min-height: 100px;
    line-height: 21px;
    padding-top: 7px;
    padding-bottom: 5px;
    max-width: 100%;
}

.error {
    background: #FFF0F0;
    border-radius: 2px;
    font-weight: bold;
    font-size: 13px;
    line-height: 17px;
    /* identical to box height */
    letter-spacing: -0.01em;
    /* Burnt Sierra */
    color: #F1634A;
    padding: 4px 15px;
    margin-bottom: 25px;
    display:block;
}

header .space {
    flex-grow: 1;
}

.head {
    padding-top: 55px;
    padding-left: 80px;
    padding-bottom: 39px;
    display: flex;
    border-bottom: solid 1px #E3E4E5;
    padding-right: 35px;
    /* flex-wrap: wrap; */
    justify-content: stretch;
    align-items: flex-start;
    gap: 10px;
}

.head h1 {
    margin-right: 45px;
    /* text-transform: capitalize; */
    /* width: 100%; */
    font-weight: 700;
    font-size: 25px;
    line-height: 33px;
/* identical to box height */
    letter-spacing: -0.03em;

/* Tangaroa */
    color: #070B0F;
    padding: 0;
    margin: 0;
    /* max-width: calc(100% - 100px); */
    /* display: flex; */
    flex-grow: 1;
}

.head input {
    margin: 0;
}

.dataTables_filter {
    display: none;
}

table {
    border-spacing: 0;
    border-collapse : collapse;
    /* width: 100%; */
}

input[type="checkbox"] {
    height: 15px;
    width: 15px;
    margin: 0;
    display: inline;
    border-radius: 2px;
    box-sizing: border-box;
    appearance: checkbox;
    -webkit-appearance: checkbox;
}

h2 {
    margin: 0;
    font-weight: bold;
    font-size: 25px;
    line-height: 33px;
    letter-spacing: -0.03em;
    color: var(--Tangaroa, #070B0F);
    /* font-family: "HK Grotesk"; */
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.tdb .head {
    padding: 55px 0 39px 0;
    border-bottom: none;
    margin: 0 5px;
    align-items: center;
    justify-content: stretch;
}

table tr, table tr td {
    outline: none!important;
    max-height: 30px;
}

.cols2 {
    display: flex;
    align-items: stretch;
    justify-content: stretch;
    width: 100%;
    /* max-width: 400px; */
    /* flex-wrap: wrap; */
    min-height: calc(100vh - 78px);
}

.main {
    flex-grow: 1;
    margin: 0 55px;
}

div#table_contact_wrapper {
}

input[type=date] {
    max-width: 200px;
}

.submit_btn button {
    width: auto;
    display: inline-block;
    margin-left: 10px;
    margin-bottom: 10px;
    /* background: green; */
}

.submit_btn {
    text-align: right;
    margin-top: 20px;
}

div#config {
    margin-top: 50px;
    margin: 0;
    padding: 0;
    position: relative;
}

.submit_btn .btn {
    height: 45px;
    appearance: none;
    background: white;
    border-radius: 4px;
    /* font-weight: bold; */
    letter-spacing: -0.02em;
    font-size: 16px;
    white-space: nowrap;
    border: solid 1px #bdc9d3;
    margin: 0;
    margin-left: 10px;
    margin-bottom: 10px;
    padding: 0 10px;
    line-height: 45px;
    color: #070b10;
}

.contextMenu {
    /* White */
    background: #FFFFFF;
    /* Light Priwinkle */
    border: 1px solid #DCE1E6;
    /* Dropshadow */
    box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    position: absolute;
    top: 66px;
    padding: 15px 0;
    width: 100%;
    max-width: 238px;
    z-index: 999;
    /* display: none; */
    /* height: 0; */
    transition: transform ease-out 0.2s,opacity ease-out 0.3s;
    opacity: 0;
    transform: rotateX(90deg);
    transform-origin: top right;
    max-height: 280px;
    overflow-y: scroll;
    min-width: 238px;
    height: auto;
    min-height: 20px;
}

.contextMenu a, .contextMenu div.a, .contextMenu label {
    display: block;
    color: black;
    padding: 13px 25px;
    /* text-decoration: none; */
    /* position:relative; */
    line-height: 20px;
    font-size: 14px;
    text-align: left;
    text-decoration: none;
    border: none;
    font-weight: normal;
}
.contextMenu label,.contextMenu .triA,.contextMenu .triZ
{
    padding-left: 42px!important;
    height: auto;
    display: block;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    background: transparent;
    text-align: left;
    color: black;
    margin-bottom: 0;
    /* padding-bottom: 0; */
    display: flex;
    position: relative;
    min-height: 45px;
    /* height: auto; */
    width: 100%;
    /* background: red; */
    /* word-wrap: break-word; */
    /* max-height: 100px; */
    /* height: fit-content; */
    white-space: normal;
    line-height: 14px;
    align-items: center;
}

.contextMenu a:hover,
.contextMenu div.a:hover, .contextMenu label:hover {
    background: #f6f9fa;
    color: black;
}
.contextMenu label:before, .contextMenu .triA:before, .contextMenu .triZ:before,.check label:before {
    content:"";
    display:block;
    position:absolute;
    top:50%;
    margin-top: -13px;
    left: 10px;
    width: 20px;
    height: 20px;
    border-radius:2px;
    border: solid 1px #e3e4e5;
    line-height: 22px;
    font-size: 17px;
}
.contextMenu input:checked + label:before, .sorting_asc .contextMenu .triA:before, .sorting_desc .contextMenu .triZ:before,.check input:checked+label:before {
    content:"✓";
    /* display:block; */
    /* position:absolute; */
    /* top:50%; */
    /* margin-top:-8px; */
    /* left:0; */
    /* width:14px; */
    /* height:14px; */
    /* border-radius:2px; */
    background:#0175ff;
    border:solid 1px #0175ff;
    color:white;
    text-align:center;
    overflow:hidden;
}
.contextMenu .check
{ 
    display:none;
}
#menu_new {
    right: 45px;
}

.link:hover .contextMenu,.contextMenuOpen, header:not(.alumni) nav.contextMenuOpen {
    opacity: 1;
    transform: none;
    z-index: 999999;
}

header nav span.items {
    flex-grow: 2;
    width: 100%;
    display: flex;
    justify-content: space-between;
    line-height: 21px;
    /* max-width: 800px; */
    height: 78px;
    line-height: 78px;
    align-items: center;
    gap: 20px;
}

body .contextMenu span.spacer {
    display: block;
    height: 1px;
    width: 100%;
    background: #DCE1E6;
    margin: 10px 0;
} 

div#menu_user {
    right: 158px;
}

@media screen and (max-width: 1200px) {
    header {
        padding:0 5px;
    }

    header .search {
        margin-right: 2px;
        margin-left: 2px;
    }

    div#menu_user {
        right: 146px;
    }

    #menu_new {
        right: 15px;
    }

    .main {
        margin: 0 10px;
    }
    header #user:hover
    {
        background:transparent!important;
    }

    header #user {
        margin: 10px;
    }

    header .btn {
        margin: 0;
    }

    .head {
        padding-left: 10px;
        padding-right: 10px;
        /* overflow-y: scroll; */
    }

    body div#search_result {
        left: 120px;
        width: calc(100% - 130px);
    }
}

@media screen and (max-width: 1000px) {
    header {
        padding-right:55px;
    }

    header:not(.alumni) #user {
        margin: 0 10px;
        display: block;
        width: 100%;
        max-width: 400px;
        min-width: 100%;
        box-sizing: border-box;
        background: transparent;
        color: black;
        text-transform: none;
        font-size: 16px;
        text-align: left;
        line-height: 16px;
        margin: 0;
        height: 47px;
        font-weight: normal;
        line-height: 21px;
        border-radius: 0;
        order: 4;
    }

    #menu_new {
        right: 10px;
    }

    div#menu_user {
        right: 10px;
    }

    #mobilemenu {
        position: absolute;
        top: 0;
        width: 60px;
        height: 75px;
        z-index: 5;
        background: #070b10;
        right: 0;
        content: "â˜°";
        color: white;
        font-size: 34px;
        cursor: pointer;
        text-align: center;
        line-height: 75px;
        display: block;
    }

    header:not(.alumni) nav {
        display: flex;
        background: #FFFFFF;
        border: 1px solid #DCE1E6;
        box-shadow: 0px 5px 25px rgb(0 0 0 / 10%);
        border-radius: 4px;
        position: absolute;
        top: 66px;
        padding: 15px 0;
        width: calc(100% - 20px);
        max-width: 238px;
        z-index: 999;
        right: 10px;
        opacity: 0;
        transform: rotateX(90deg);
        transition: ease-out 0.2s all;
        transform: rotateX( 90deg);
        transform-origin: top right;
        /* display: flex; */
        height: auto;
        flex-direction: column;
    }

    header nav span.items {
        display: block;
        /* height: auto; */
        /* background: red; */
        order: 2;
        margin-top: 10px;
        padding-top: 10px;
        border-top: solid 1px #dce1e5;
        height: auto;
    }

    header nav.open {
        display: block;
    }

    body header:not(.alumni) nav .space {
        height: 1px;
        width: 100%;
        background: #DCE1E6;
        margin: 10px 0;
        padding: 0;
        order: 3;
    }

    body header nav #user:after {
        content: "Mon Profil";
        display: block;
    }

    body header nav #user .name, body header nav #user .avatar {
        display: none;
    }

    body header nav a,body header nav > div {
        display: block;
        color: black;
        padding: 13px 24px;
        margin: 10px 0!important;
        line-height: 21px;
    }

    body header nav a.active {
        border-left: solid 5px #f7e85d;
        color: black;
    }

    body header nav a:before {
        display: none;
    } 

    body header nav a:hover,body header nav > div:hover, header #user:hover {
        background: #f6f9fa;
        color: black;
    }

    header .btn {
        margin-bottom: 5px;
        /* justify-self: flex-start; */
        order: 1;
    }

    header span.spacer {
        display: block;
        height: 1px;
        width: 100%;
        background: #DCE1E6;
        margin: 10px 0;
    }
    header #main_menu .items .contextMenu
    {
        display:block!important;
        transform: none!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        opacity: 1!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        height: auto;
        z-index: 999;
        position: relative!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        /* display: block; */
        border: none;
        background: transparent!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        box-shadow: none;
        top: auto;
        left: auto!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        right: auto;
        opacity: 1;
        transform: none;
        z-index: 9999;
        padding: 0;
        margin: 0;
        max-width: 100%;
        /* overflow: hidden; */
        margin-left: -25px;
        /* margin-top: -30px; */);
        max-height: 1000px;
        gap: 0;
        border-top: solid 1px #DCE1E6;
        border-radius: 0;
        /* border-top: solid 1px #DCE1E6; */
        margin-top: 12px;
        top: 0;
    }
    header #main_menu .items .contextMenu a
    {
        margin: 0!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        padding-left: 26px;
    }
    
#main_menu .link
{ 
     padding: 13px 25px; 
    color:black; 
     display:block; 
}
    header #main_menu .items .link, header #main_menu .items > a,header #main_menu .items > #user
    {
        color:black;
        padding: 13px 25px 13px 25px;
        background-image: none;
        /* border-bottom: solid 1px; */
        /* width: 100%; */
        position: relative;
        font-weight: bolder;
        border-bottom: solid 1px #DCE1E6;
        font-size: 16px;
        gap: 0;
        margin: 0!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
        min-height: 0;
        line-height: 20px;
    }
}

.contextMenu a b {
    float: right;
    /* background: #909FAC; */
    display: inline-block;
    overflow: hidden;
    position: relative;
    width: 28px;
    height: 28px;
    text-align: center;
    line-height: 28px;
    color: white;
    border-radius: 100%;
    font-size: 14px;
}

header a.active {
    color: #f7e85d;
}

.contextMenu a.logout {
    color: #F1634A;
}

.candidatflex {
    display: flex;
    width: 100%;
    min-height: calc(100vh - 305px);
}

.parcours {
    width: 359px;
    padding-top: 45px;
    padding-left: 45px;
    box-sizing: border-box;
    border-right: solid 1px #E3E4E5;
    padding-bottom: 45px;
    padding-right: 45px;
    min-width: 359px;
}

.parcours a {
    display: block;
    border-left: solid 0 #e6e7e8;
    padding: 5px 0 5px 0;
    position: relative;
    color: #585858;
    text-decoration: none;
    font-weight: normal;
    font-size: 13px;
    line-height: 17px;
    display: flex;
    padding: 5px 15px;
    align-items: center;
    gap: 10px;
    align-self: stretch;
}

.parcours a.ok {
    border-color: #0075FF;
    font-weight: bold;
}

.parcours a b {
    display: block;
    position: absolute;
    top: 0;
    left: -14px;
    width: 28px;
    height: 28px;
    background: #8F8F8F;
    text-align: center;
    line-height: 30px;
    color: white;
    border-radius: 100%;
    overflow: hidden;
}

.parcours a.big {
    font-weight: bold;
    font-size: 18px;
    line-height: 30px;
    padding-top: 0;
}

.parcours a.active,.parcours a.active:hover {
    color: #0075FF;
    background: var(--Alice-Blue, #F0F8FF);
}

.parcours a:hover {
    /* opacity: 0.75; */
    color: black;
}

.parcours a.ok b {
    background: #0175ff;
}

.form h2 {
    margin-bottom: 20px;
    margin-top: 55px;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
}

hr {
    display: block;
    background: #E3E4E5;
    border: none;
    height: 1px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.flex2 {
    display: flex;
    width: 100%;
    align-items: stretch;
    justify-content: stretch;
    max-width: 544px;
}

.flex2>div {
    width: calc(50% - 5px);
    /* margin: 10px; */
}

.flex2>div:nth-child(2n) {
    margin-left: 10px;
}

h3 {
    margin-top: 45px;
    /* margin: 0; */
    margin-bottom: 0;
    margin-bottom: 20px;
}

div#search_result {
    display: block;
    background: #FFFFFF;
    border: 1px solid #DCE1E6;
    box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    position: absolute;
    top: 66px;
    left: 186px;
    width: calc(100% - 196px);
    max-width: 1500px;
    transition: all ease-out 0.2s;
    opacity: 0;
    transform: rotateX(90deg);
    transform-origin: top right;
    border-left: 0;
    overflow: hidden;
    z-index: 10;
}

div#search_result.visible {
    opacity: 1;
    transform: none;
}

#search_result span.close {
    position: absolute;
    top: 28px;
    right: 20px;
    width: 17px;
    height: 17px;
    background: #DCE1E6;
    line-height: 17px;
    text-align: center;
    transform: rotate(45deg);
    border-radius: 100%;
    font-size: 16px;
    cursor: pointer;
}

.space {
}

@media screen and (max-width: 520px) {
    header.login {
        padding-left: 150px;
        margin: 0;
    }

    header.login a:first-child {
        width: 120px;
    }

    #login form {
        padding: 55px 30px;
    }
}

footer {
    display: block;
    text-align: center;
    font-size: 12px;
    padding: 20px 5px;
    background: black;
    color: white;
}

footer a {
    color: white;
    text-decoration: none;
}

div#timeline {
}

.bandeau,.com > div.bandeau {
    display: flex;
    width: 100%;
    margin: 10px 0;
    padding: 10px;
    background: #f2f2f2;
    border: 1px solid #F09D00;
    background: #FFF9EA;
    box-sizing: border-box;
    border-radius: 4px;
    font-weight: bold;
    font-size: 16px;
    line-height: 21px;
    padding-left: 50px;
    position: relative;
    text-decoration: none;
    color: black;
    align-items: center;
    justify-content: space-between;
}

.bandeau:before {
    position: absolute;
    top: 50%;
    left: 15px;
    font-weight: bold;
    font-size: 20px;
    line-height: 20px;
    margin-top: -10px;
    content: "⚠";
    color: #F09D00;
}

span.bandeau.ok {
    background: #EAF8F5;
    border: 1px solid #0FAE94;
}

span.bandeau.ok:before {
    content: "✓";
    color: #0cad94
}

span.bandeau.ko {
    background: #f8eaea;
    border: 1px solid #ae0f0f;
}

span.bandeau.ko:before {
    content: "✗";
    color: #ad0c0c
}

.btn:first-child {
    margin-left: 0;
}

.head h1 small {
    display: block;
    font-size: 14px;
    font-weight: normal;
    line-height: 16px;
    max-width: 800px;
}

.btn:hover {
    opacity: 0.75;
}

.main .form small {
    /* font-weight: normal; */
    font-size: 13px;
    line-height: 17px;
    /* identical to box height */
    /* Blue Bayoux */
    color: #617080;
    font-weight: bold;
    display: block;
}

#candidatPhoto input {
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 9999;
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer;
}

div#candidatPhoto.drag, div#candidatPhoto:hover {
    background-color: #81b7f7;
    border-color: #0175ff;
    opacity: 0.9;
}

div#candidatPhoto.drag img, div#candidatPhoto:hover img {
    opacity: 0.5;
}

#candidatPhoto img {
    width: 100%;
    /* display: none; */
    transition: all ease-out 0.2s;
}

.loading {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000000;
    display: block;
    opacity: 0;
    transition: all ease-out 0.5s all;
}

.progress {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0;
    background: #0175ff;
    transition: all linear 0.2s;
}

.loading .value {
    position: absolute;
    bottom: 5px;
    right: 5px;
    font-size: 20px;
    color: white;
    text-align: right;
    font-weight: bold;
    /* width: 100%; */
}

.btn input {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    max-width: 100%;
    z-index: 9999;
}

#user span.avatar {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
}

.btn.contour {
    background: #FFFFFF;
    /* Link Water */
    border: 1px solid #BDC9D3;
    color: #070b10;
}

.nomargin {
    margin: 0;
}

input[type=radio] {
    display: none;
}

input[type=radio]:checked + label {
    background: red;
}

input[type=radio]:checked + label {
    background: #0175ff;
    color: white;
}

.radioList {
    display: inline-flex;
    margin-bottom: 20px;
    background: #F0F8FF;
    border-radius: 8px;
    /* padding: 5px; */
    width: auto;
}

.radioList label {
    font-weight: bold;
    font-size: 13px;
    line-height: 17px;
    padding: 8px 15px;
    margin: 5px;
    border-radius: 5px;
    transition: ease-out 0.2s background;
    text-align: center;
    user-select: none;
}

.radioList label:hover {
    background: white;
    cursor: pointer;
}

.piafBloc {
    display: block;
    position: relative;
    min-height: 150px;
    padding: 30px 25px;
    /* border: solid 1px; */
    border: 1px solid #BDC9D3;
    /* border-radius: 4px 4px 0px 0px; */
    border-top: none;
}

.piafBloc b {
    font-weight: bold;
    font-size: 16px;
    line-height: 21px;
    /* identical to box height */
    /* Tangaroa */
    color: #070B0F;
    /* padding-right: 130px; */
    display: block;
    /* width: 100%; */
    /* flex-grow: 1; */
    padding-right: 10px;
}

.piafBloc:first-child {
    border-top: 1px solid #BDC9D3;
    border-radius: 4px 4px 0 0;
}

.piafBloc:last-child {
    border-radius: 0 0 4px 4px;
}

.piafBloc .headerPiaf .piafBtns:after {
    content: "Pièce à fournir";
    padding: 10px 15px 11px;
    position: static;
    min-width: 84px;
    /* height: 38px; */
    right: 25px;
    top: 22px;
    /* Snow */
    background: #FFF0F0;
    border-radius: 4px;
    /* position: absolute; */
    color: #F1634A;
    font-weight: bold;
    font-weight: bold;
    font-size: 13px;
    line-height: 17px;
    transition: all ease-out 0.2s;
    display: inline-block;
    text-align: center;
}

.piafBloc .list > div {
    display: inline-block;
    width: 120px;
    height: 170px;
    background-color: #F7F9FA;
    border: 1px solid #E3E4E5;
    box-sizing: border-box;
    border-radius: 4px;
    margin: 20px 20px 0 0;
    position: relative;
    overflow: hidden;
    background-position: center center;
    background-size: contain;
    cursor:pointer;
    transition: all ease-out 0.2s;
    background-repeat: no-repeat;
}

.piafBloc .list > div:hover {
    background-color: #fef0ef;
    border: 1px solid #f1634a;
    opacity:0.9;
}

.piafBloc .list > div span {
    position: absolute;
    width: 38px;
    height: 38px;
    background-color: white;
    border-radius: 100%;
    margin-left: -19px;
    margin-top: -19px;
    left: 50%;
    top: 50%;
    line-height: 38px;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #f1634a;
    opacity: 0;
    transition: all ease-out 0.2s;
    box-shadow: 0 0 2px #00000047;
}

.piafBloc .list > div.add span {
    opacity: 1;
    color: #666666;
}

.piafBloc .list > div.add:hover span {
    opacity: 1;
}
.piafBloc .list > div:hover span {
    opacity: 1;
}

.piafBloc .list > div b {
    display: block;
    text-align: center;
    width: 100%;
    margin-top: 138px;
    font-weight: bold;
    font-size: 13px;
    line-height: 17px;
    color: #f1634a;
    opacity: 0;
    transition: all ease-out 0.2s;
}

.piafBloc input[type="file"] {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99;
    opacity: 0;
}

.piafBloc .list > div.add:hover span {
    color: #0175ff;
}

.piafBloc .list > div.add:hover b {
    color: #0175ff;
    opacity: 1;
}

.piafBloc .list > div.add b {
    opacity: 1;
    color: #666666;
}

.piafBloc .list > div:hover b {
    opacity: 0.75;
}

b {
}


.piafBloc .loading {
    background-color: #f6f9fa;
    z-index: 90;
    display: none;
    opacity: 1;
}

.wait {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #0175ff08;
    z-index: 9999;
    display: none;
}

.piafBloc.wait {
    /* border-color: #0175ff; */
    /* border-width: 2px; */
}

.piafBloc.waiting .wait {
    display: block;
}

.piafBloc .loading .value {
    font-size: 20px;
    right: 10px;
    color: #0175ff;
}

.piafBloc .progress {
    background-color: #bdd6fc;
}

.piafBloc.validation .headerPiaf .piafBtns:after {
    color: #0175ff;
    content: "En cours de validation";
    background-color: #F0F8FF;
}
.piafBloc.valide .headerPiaf .piafBtns:after {
    color: #0FAE94;
    content: "Validé";
    background-color: #EAF8F5;
}

.contenu a {
    color: #5986bb;
    text-decoration: none;
}

form .erreur label {
    color: #F1634A;
}

.erreur input {
    border-color: #F1634A;
    color: #F1634A;
    background: #FFF0F0;
}


#login .error a.btn {
    color: #3e3edd;
    /* float: right; */
    border: none;
    padding: 0;
    background: transparent;
    text-decoration: underline;
    float: right;
    margin: 0;
}


.headerPiaf {
    display: flex;
    /* background: blue; */
    width: 100%;
    justify-content: stretch;
    align-items: center;
}

.piafBtns,.diplomeBtns {
    /* width: 100%; */
    /* background: red; */
    flex-grow: 1;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: row;
}

.main .form b {
    color: #0175ff;
}

.piafBloc .piafBtns a.btn.contour {
    width: 3px;
    height: 14px;
    margin: 0;
    margin-right: 10px;
    display: inline-block;
    text-align: center;
    position: relative;
    margin-bottom: 5px;
    margin-top: 5px;
    padding: 0;
    width: 35px;
    height: 35px;
    display: inline-flex!important;!importan;!importa;!import;!impor;!impo;!imp;!im;!i;!;
    align-items: center;
    justify-content: center;
}

a.btn.contour.delete span {
    font-size: 32px;
    line-height: 34px;
}

div#findEtab small {
    display: block;
}


.btn {
}

.btn.left {
    float: left;
}

div#stat span {
    display: inline-block;
    margin: 5px;
    padding: 10px 15px 11px;
    /* position: static; */
    /* width: 264px; */
    /* height: 38px; */
    /* left: 0px; */
    /* top: 0px; */

    /* Solitude */
    background: #fef4f2;
    border-radius: 4px;
    font-weight: bold;
}

span#valide {
    background: #eaf8f5!important;
    color: #0cad94;
}

.blanc .btn {
    margin-left: 0;
    margin-top: 20px;
}

select {
    appearance: auto;
}

select#view {
    min-width: 200px;
    margin-right: 10px;
    height: 42px;
}

.head .btn:hover {
    border-color: black;
    color: black!important;
}

#ZoneGeo div:first-child b {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
}

header span.logo img {}

.bandeau.m20 {
    margin: 20px;
    width: calc(100% - 40px);
    display: flex;
}

.filesList {
    display: block;
    margin: 20px 0;
    align-items: baseline;
}

.fileList a {
    display: inline-block;
    width: 100px;
    height: 200px;
}

.filesList a {
    display: inline-block;
    width: 150px;
    margin: 0 10px 10px 0;
    color: black;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    align-items: baseline;
}

.filesList span {
    height: 34px;
    display: block;
    /* background: red; */
    overflow: hidden;
}

.filesList a:hover {
    opacity: 0.8;
    color: #0175ff;
}

.filesList a:hover img {border-color: #0175ff;}


#creneaux .creneau {
    display: block;
    padding: 25px 30px;
    /* background: red; */
    border: solid 1px #e9e9e9;
    /* margin-bottom: 10px; */
    font-style: normal;
    font-weight: bold;
    font-size: 16px;
    line-height: 21px;
    /* identical to box height */


    /* Tangaroa */
    color: #070B0F;
    border-bottom-width: 0;
    border-collapse: collapse;
    border-top-width: 1px;
    background: transparent;
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    cursor: pointer;
    text-decoration: none;
}

#creneaux .creneau:last-child {
    border-bottom-width: 1px;
}

#creneaux a.creneau:hover {
    border-color: white;
    outline: 2px solid #0075FF;
    z-index: 999;
    background: #F7F9FA;
}

div#creneaux {
    display: flex;
    flex-direction: column;
    border-collapse: collapse;
}

#creneaux .creneau:first-child {
    border-top-width: 1px;
    /* z-index: 999; */
    position: relative;
    /* background: #F7F9FA; */
}

.creneau span {
    float: right;
    display: inline-block;
    /* background: red; */
    margin-left: 5px;
    padding: 10px 15px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 13px;
    line-height: 17px;
}

.creneau b {
    flex-grow: 1;
}

.creneau span.type {
    color: #9400EE;
    background: #f4e5fe;
}

.creneau span.date {
    background: #F5F4F5;
}



img#logoCV {
    position: absolute;
    top: 0;
    left: 0;
    width: 10%;
}

.header.piaf {
    display: flex;
    background: #222D38;
    height: 60px;
    align-items: center;
    overflow: hidden;
    color: white;
    padding: 0 20px;
    justify-content: space-between;
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 26px;
    color: #FFFFFF;
}
.header.piaf small {
    flex-grow: 1;
    margin-left: 10;
    margin-left: 10px;
    font-weight: 600;
    font-size: 15px;
    line-height: 140%;
    letter-spacing: -0.01em;
    color: #BDC9D3;
}
a#close,a.close {
    display: inline-block;
    width: 30px;
    height: 30px;
    border-radius: 5px;
    border: solid 1px white; 
    position: relative;
    color: white;
    text-decoration: none;
    font-size: 25px;
    opacity: 0.75;
}

a#close span, .close span.openclose {
    transform: rotate(
           -45deg
    );
    position: absolute;
    top: 61px;
    right: 7px;
    border-left: solid 2px #61707f;
    border-bottom: solid 2px #61707f;
    width: 7px;
    height: 7px;
}
form#pdf iframe {
    width: 100%;
    height: calc(100vh - 120px);
    margin: 0;
    padding: 0;
}
#pdf .footer {
    background: #617080;
    height: 60px;
    overflow: scroll;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    position:fixed;
    bottom:0;
    width:100%;
    color: white;
    align-items: center;
    justify-content: center;
}
#pdf button {
    width: auto;
    display: inline-block;
    margin: 8px 4px;
}

#pdf button.pull-right {
    float: right;
}

#pdf button.ignore {
    border: solid 1px white;
    background: transparent;
}

#pdf button.vert.pull-right {
    background: #0cad94;
    color: white;
}

iframe {
    border: 0;
}

.bandeau a.btn {
    float: right;
    background: #f09d00;
    padding: 2px 10px;
    font-size: 14Px;
    font-weight: bold;
}


.QCMq h2 {
    font-weight: 700;
    font-size: 20px;
    line-height: 26px;
/* identical to box height */


/* Tangaroa */
    color: #070B0F;
    min-height: 30px;
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: space-between;
}

.QCMq h2 small {
    display: block;
    margin: 0;
    padding: 0;
    font-weight: 700;
    font-size: 13px;
    line-height: 17px;
/* identical to box height */


/* Blue Bayoux */
    color: #617080;
}

.QCMq {
    padding-top: 55px;
    padding-bottom: 25px;
    /* border-bottom: solid 1px #E3E4E5; */
}

.QCMq .option {
    font-weight: 700;
    font-size: 16px;
    line-height: 21px;
/* identical to box height */
    letter-spacing: -0.01em;

/* Mortar */
    color: #585858;
    display: block;
    padding: 20px 10px 20px 61px;
    border: solid 1px red;
    border: 1px solid #BDC9D3;
    border-radius: 4px;
    margin: 20px 0;
    position: relative;
}

.QCMq .option:before {
    content: "";
    box-sizing: border-box;
    width: 21px;
    height: 21px;

/* White */
    background: #FFFFFF;
/* Link Water */
    border: 1px solid #BDC9D3;
    border-radius: 2px;
    top: 50%;
    display: block;
    position: absolute;
    left: 20px;
    margin-top: -11px;
    text-align: center;
}

.QCMq .option.active:before {
    content: "✓";
}

.QCMq span.sortable {
    display: block;
    float: right;
    display: flex;
    flex-direction: column;
}

div#col3 {
    width: 100%;
    flex-grow: 2;
    max-width: 200px;
    border-left: solid 1px #e7e7e8;
}

select#video-options {
    width: 100%;
    max-width: calc(100% - 20px);
    margin: 10px;
    box-sizing: border-box;
    margin-top: 20px;
}

.QCMq .bandeau.warning {
    max-width: calc(100% - 20px);
    margin: 10px;
}

.com > div.green {
    background-image: url('/img/ok.png');
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 100px;
    background-color: #b7e4dc78;
}

.com > div.orange {
    background-image: url('/img/moyen.png');
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 100px;
    background-color: #ffa5001a;
}

.com > div.red {
    background-image: url('/img/moyen.png');
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 100px;
    background-color: #ffa5001a;
}

option {
    color: black!important;
    background: white!important;
}


div#candidatPhoto {
    width: 200px;
    height: 200px;
    background: #F7F9FA;
    background-size: cover;
    background-position: center center;
    border: 1px solid #E3E4E5;
    box-sizing: border-box;
    border-radius: 4px;
    overflow:hidden;
    position:relative;
    margin-bottom: 10px;
    transition:all ease-out 0.2s;
}

div#candidatPhoto.drag,div#candidatPhoto:hover
{
    border:solid 1px #0175ff;
    background-color:#bcdbff;
}
div#candidatPhoto.drag img
{
    opacity:0.5;
}

#candidatPhoto.noPhoto:before {
    /* background: #e3e4e5; */
    position: absolute;
    content: "";
    width: 24px;
    height: 24px;
    border: solid 5px #e3e4e5;
    border-radius: 100%;
    box-sizing: border-box;
    left: 50%;
    margin-left: -12px;
    top: 50%;
    margin-top: -29px;
    transition:all ease-out 0.2s;
}
#candidatPhoto.noPhoto:after {
    /* background: #e3e4e5; */
    position: absolute;
    content: "";
    width: 46px;
    height: 24px;
    border: solid 5px #e3e4e5;
    border-radius: 12px 12px 0 0;
    box-sizing: border-box;
    left: 50%;
    margin-left: -23px;
    top: 50%;
    margin-top: 5px;
    border-bottom:none;
    transition:all ease-out 0.2s;
}

#candidatPhoto.noPhoto.drag:before,
#candidatPhoto.noPhoto.drag:after,
#candidatPhoto.noPhoto:hover:before,
#candidatPhoto.noPhoto:hover:after
{
    border-color:#0175ff;
}


.chiffreCle .block {
    height: 280px;
    display: flex;
    width: 443px;
    border-radius: 16px;
    background: #E3CCFF;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    padding: 20px;
    box-sizing: border-box;
    color: #9400EE;
}

.chiffreCle .block:nth-child(2) {
    background: #D9FD77;
    color: #0FAE94;

}
.chiffreCle .block:nth-child(3) {
background: #77FDED;
    color: #0075FF;

}

.chiffreCle .block .descriptif {
    color: black;
font-size: 16px;
font-weight: 700;
line-height: 21px;
letter-spacing: 0em;
text-align: left;
    
}

.chiffreCle .block .chiffre {font-size: 100px;font-weight: bolder;line-height: 130px;letter-spacing: -0.03em;text-align: left;overflow: hidden;}

.chiffreCle .block div {
    display: flex;
    justify-content: space-between;
}

.chiffreCle span.type {
font-size: 13px;
font-weight: 800;
line-height: 17px;
letter-spacing: 0em;
text-align: right;
    color:black;
    text-transform:uppercase;
    
}

.chiffreCle span.source {
font-size: 11px;
font-weight: 500;
line-height: 14px;
letter-spacing: 0em;
text-align: left;

}

.chiffreCle {
    display: flex;
    gap: 20px;
    flex-wrap:wrap;
}

.chiffreCle .block div {
    overflow: hidden;
    /* display: block; */
    max-height: 20px;
}

.chiffreCle .block div .date,.chiffreCle .block div .type {
    overflow: hidden;
    max-height: 20px;
}

.chiffreCle .block .descriptif span {
    display: block;
}

.chiffreCle .block .descriptif .source span {
    display: inline-block;
}

img.img_article {
    display: block;
    width: 100%;
    background: #eee;
}

.imageBlog {
    display: block;
    height: 130px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    margin-bottom: 20px;
    width: 100%;
}

.btn.btn-secondary {
    background: #bdd1e8;
}
@media screen and (max-width:1500px)
{ 
header nav span.items {
    gap: 20px;
}
    header nav
    {
        gap:5px;
    }
    header
    {
        gap:5px!important;
    }

    header nav {
        overflow: visible;
    }
}

@media screen and (max-width:1000px)
{ 

    header
    {
        gap:50px!important;
    }

    


#passeport h1 {
    color: var(--Tangaroa, #070B0F);
    font-size: 20px;
    font-style: normal;
    font-weight: bolder;
    line-height: normal;
    padding: 20px 25px!important;
    margin: 0!important;
    position: sticky;
    top: 0;
    z-index: 999;
    background: white;
}

#passeport .btn-list {
    float: right;
    padding: 10px;
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    z-index: 1001;
    position: sticky;
    top: 0;
}

.radioList.entlist {}

#passeport .btn-list .btn {
    margin: 0;
    border: solid 1px #BDC9D3;
    background: white;
    color: #61707f;
}

td.entreprisecol {
    min-width: 300px;
    max-width: 300px;
    width: 300px;
}

td.ecolecol {
    min-width: 100px;
    max-width: 100px;
    width: 100px;
}

td.compcol {
    width: 100%;
}

label {}

.candidatflex .main#passeport form {
    max-width: 100%;
    width: 100%;
}

#passeport big {
    position: sticky;
    top: 64px;
    background: white;
    z-index: 998;
}

#passeport thead {
    position: sticky;
    top: 113px;
    z-index: 997;
}

.passObj table tbody tr:hover {
    background: #f5f4f5;
}

.head span.violet {
    color: var(--Dark-Violet, #9400EE);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

#passeport tr td a {
    text-align: left;
}

.passObj.sortable {
    padding-left: 25px;
}

.passObj.sortable big {
    padding-left: 0;
}

td {}

.head h1 small.violet {font-weight: 900;font-size: 14px;line-height: 18px;}

table {}

#config #passeport form {
    max-width: 100%;
}

.head {}

td.ecolecol span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}