body {
    font-family: "Marine-Rounded-Regular", sans-serif;
    font-size: 22px;
!important;
}

:root {
    --border-radius: 8px


}

/* STRUCTURE
**********************************************************************************************************************/
#wrapper {
    width: 100vw;
    min-height: 100vh;
    display: flex;
}

nav {
    flex: 0 0 250px
}

#content {
    flex: 1 1 92%;
    background: white;
    border-radius: var(--border-radius);
    margin: 10px;
    padding: 16px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, .2);
}

/* NAV
**********************************************************************************************************************/

nav .select {

}

nav .title {
    margin: 10px;
    font-size: 120%;
    background-color: rgba(255, 255, 255, .3);
    text-align: left;
    color: white;
    font-family: "Marine-Rounded-Black", sans-serif;
    border-radius: var(--border-radius);
    padding: 16px;
    position: relative;
    z-index: 1;

}

nav .title:hover {
    background: white;
    color:var(--couleur-primaire);
    box-shadow: 0 10px 10px rgba(0, 0, 0, .2);
}

nav .title .dropdown {
    display: none;
    position: relative;
}

nav .title:hover .dropdown {
    display: flex;
    flex-direction: column;
    font-family: "Marine-Rounded-Regular", sans-serif;


}

nav .menu {
    position: absolute;
    top:100px;
    width:250px;
}

nav .menu .main, nav .menu .secondary {
    display: flex;
    flex-direction: column;
    margin: 10px;
    font-size: 80%;
    background-color: rgba(255, 255, 255, .8);
    border-radius: var(--border-radius);
    padding: 4px;
}

nav .menu a {
    padding: 2px;
    border-radius: 4px;
    transition: .2s ease-in-out background-color;
}

nav .menu a:hover {
    background-color: rgba(255, 255, 255, .4);
}

nav .menu a.selected, nav .menu a.selected:hover {
    background-color: rgba(255, 255, 255, 1);
    font-family: "Marine-Rounded-Bold", sans-serif;
}

nav .menu .fa {
    font-size: 80%;
    margin-right: 4px;
}

nav hr {
    /*border-top: 1px solid rgba(0,0,0,.1);*/
    width: 100%;
    opacity: 0.3;
}
/* GRILLES
**********************************************************************************************************************/
._grid {
    width: 100%
}

._grid tr {

    border-bottom: 1px dotted silver;
    margin: 6px 0;
}

._grid td {
    padding: 8px 0;
}

._grid td ._button {
    margin: 0 4px;
}

._grid td ._button span , .esp-grid ._button span {
    display: none;
}

.esp-grid.header {
    background-color: #f0f0f0;
    padding: 4px;
    border-radius: var(--border-radius);
    top:-16px;
    left:-16px;
 width: calc(100% + 32px);
    position: relative;
    display: flex;
    justify-content: space-between;
}

.esp-grid #search-form {
    margin: 0;
}

.esp-grid.header input {
    font-size: 80%;
}

.esp-grid.header > div {
    flex: auto
}

.esp-grid .header ._button i{
    font-size: 80%;

}

.esp-grid ._button .fa {
    font-size: 80%;
}

._grid th {
    text-align: left;
}

._grid .button-column {
    min-width: 70px;
    padding:0 4px
}

._grid tr {
    transition: .2s ease-in-out background-color;
}

._grid tr:hover {
    background-color: rgba(0, 0, 0, 0.08)
}

    /* FORMULAIRES
    **********************************************************************************************************************/
._form {
    padding: 20px;
    border-radius: var(--border-radius);
    border: 2px solid var(--couleur-primaire);
    background-color: white;
}

._form fieldset legend {
    font-size: 125%;
    font-family: "Marine-Rounded-Bold", sans-serif;
    color: var(--couleur-primaire);
}

._form ._error {
    font-family: "Marine-Rounded-Bold", sans-serif;
    color: maroon;
}

#loginForm-wrapper {
    width: 100vw;
    height: 90vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#loginForm {
    display: flex;
    width: 35vw;
    justify-self: center;
    align-self: center;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

#loginForm > div {
    display: flex;
}

._button {
    border-radius: var(--border-radius);
    background-color: var(--couleur-primaire);
    color: white;
    padding: .2em 1em;
    transition: .3s ease transform, .3s ease box-shadow, .3s background-color;
}

._button ._secondary {
    background-color: silver;
}

._button:hover {
    background-color: black;
    transform: translateY(-1px);
    box-shadow: 0 1px 4px silver;
}

._form input {
    width: 100%;
}

._form input[type=radio], ._form input[type=radio] {
    width: 1em;
    border: 1px dotted red;
}

._form .field {
    margin-top: 1em;
}

._form .field label span {
    font-weight: 700;
}

._form .help_text {
    color: grey;
    font-size: 80%;
    margin-top: 4px;
}

._form .error {
    display: none;
}

._form .button-bar {
    margin-top: 1em;
    display: flex;
    justify-content: space-between;
}


