*,
*:after,
*:before {
    box-sizing: border-box;
}

html,
body {
    height: 100%;
    width: 100%;
    font-family: Helvetica, Arial;
    overflow-x: hidden;
    touch-action: pan-up;
    touch-action: pan-down;
}

body>section {
    height: 100%;
    width: 100%;
}

p {
    font-size: 1.5vw;
}

#chart {
    width: 97%;
    height: 500px;
    margin-top: 10px;
    margin-left: 1.5%;
    margin-bottom: 2%;
    background: rgb(218, 218, 218);
    font-size: smaller;
    opacity: 0.9;
    border-radius: 5px;
    border: 1px solid #2b2b2b;
    position: relative;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    font-family: Calibri;
}

#chartCourbes {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    position: relative;
    justify-content: center;
    /* center horizontally */
    align-items: center;
    /* center vertically */
}

#chart .lingraph {
    stroke: #2b2b2b;
}

#chart line.vertical-marker.now {
    stroke: #c00;
}

circle.blue-dot {
    fill: blue;
}

text.group-label {
    position: absolute;
    border-width: 2px;
    border-style: solid;
}


/* Override d3tip */

.d3-tip {
    background: white;
    color: black;
}

#conteneur {
    display: inline-table;
    background: inherit;
}

#div1 {
    float: left;
    position: relative;
    width: 14%;
    padding-bottom: 50%;
    vertical-align: top;
    overflow: hidden;
    /* background-color: brown; */
}

#div2 {
    min-width: 60%;
    min-height: 50%;
    float: left;
    /* background-color: green; */
}

.scaling-svg {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}


/* Original Icon */

.arrow {
    padding-bottom: 100%;
    vertical-align: top;
    overflow: hidden;
    height: 100%;
    width: 80%;
    margin-left: -1.5vw;
    transform: rotate(0deg);
    background-color: green;
    mask: url(/images/arrow.svg) no-repeat center / contain;
    -webkit-mask: url(/images/arrow.svg) no-repeat center / contain;
    visibility: hidden;
}

.arrow-container {
    width: 10%;
    float: left;
}

.info_dil {
    float: left;
    /* background-color: purple; */
    position: absolute;
    margin-left: 15%;
}


/* Tiny Flex Grid */

[flex] {
    display: flex;
}

[flex-fill] {
    flex: 1;
}

[flex-full-center] {
    align-items: center;
    justify-content: center;
}

[flex-direction=column] {
    flex-direction: column;
}

[flex-direction=row] {
    flex-direction: row;
}

[flex-size="40"] {
    flex: 40;
}

[flex-size="60"] {
    flex: 60;
}

.legend .legend-scale ul {
    margin: 0;
    list-style: none;
    display: inline-block;
    -moz-column-count: 3;
    -moz-column-gap: 1em;
    -webkit-column-count: 3;
    -webkit-column-gap: 1em;
    column-count: 3;
    column-gap: 1em;
    font-size: 1vw;
}

.legend .legend-scale ul li {
    font-size: 80%;
    list-style: none;
    line-height: 18px;
    margin-bottom: 2px;
}

.legend ul.legend-labels li span {
    display: block;
    float: left;
    height: 16px;
    width: 30px;
    margin-right: 5px;
    margin-left: 0;
    border: 1px solid #999;
}

.legend .legend-source {
    font-size: 70%;
    color: #999;
    clear: both;
}

.legend a {
    color: #777;
}

.legend {
    margin-left: 1%;
}

.menu {
    margin-right: 20px;
    background-color: #b6b6b6;
    margin-top: 10px;
    width: 200px
}

.containerLoader {
    font-size: 0.8vw;
    margin: 0 auto;
    margin-top: 50%;
    top: 50%;
    left: 50%;
    position: absolute;
    margin-top: -100px;
    /* Cette valeur doit être la moitié négative de la valeur du width */
    z-index: 100;
    display: none;
}

.loader {
    display: none;
    border: 16px solid #f3f3f3;
    /* Light grey */
    border-top: 16px solid black;
    /* Blue */
    border-radius: 100%;
    width: 100px;
    height: 100px;
    margin-left: -100px;
    /* Cette valeur doit être la moitié négative de la valeur du width */
    margin-top: -100px;
    left: 50%;
    top: 50%;
    animation: spin 2s linear infinite;
    margin: 0 auto;
    position: absolute;
    z-index: 100;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

#tooltip {
    background: #333;
    color: white;
    font-weight: bold;
    padding: 4px 8px;
    font-size: 10px;
    border-radius: 4px;
    word-break: keep-all;
    width: 5%;
    text-align: center;
}

.cellTabAlt {
    width: 50px;
    border-color: inherit;
}

.voyant {
    width: 4vmin;
    height: 4vmin;
    border-radius: 50%;
    border: 4px solid #aaaaaa;
    margin: 0 auto;
    margin-top: 12px;
}

.greenv {
    background: #00ff00;
}

.redv {
    background: #ff0022;
}

#login .container #login-row #login-column #login-box {
    margin-top: 120px;
    max-width: 600px;
    height: 320px;
    border: 1px solid #9C9C9C;
    background-color: #EAEAEA;
}

.table {
    padding-bottom: 50%;
}

.haut {
    font-weight: bold;
    color: black;
    background-color: #E6E6E6;
    height: 10%;
    width: 10%;
    font-size: 1vw;
    border-color: #CCCCCC;
}

.btn-secondary {
    color: black;
    background-color: #E6E6E6;
    font-size: 1vw;
    padding: 0.1% 0;
    border: 1px solid #CCCCCC; /* Ajout d'une bordure si nécessaire */
    border-radius: 0; /* Supprime les coins arrondis */
}

.ui-datepicker-calendar {
    display: none;
}

.my-custom-scrollbar {
    position: relative;
    height: 400px;
    width: 66%;
    overflow: auto;
}

.table-wrapper-scroll-y {
    display: block;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */

input[type=number] {
    -moz-appearance: textfield;
    text-align: center;
}