/*********************************************
 ****** MENU-EXPRESS ************************
 *********************************************/

.menu-express-container {
    display: inline-block;
    width: 158px;
    max-height: 85%;
    overflow-y: hidden;
    overflow-x: hidden;
    vertical-align: top;
    position: absolute;
    top: 38px;
    right: 12px;
    z-index: 1002;
    pointer-events: auto;
}
#slct-day-prevision-express{
    background-color: #fff;
    margin-left: 0px;
    margin-top: 0px;
    border-radius: 5px;
    padding-bottom: 3px;
    padding-top: 3px;
    width: 100%;
}

/*********************************************
 ****** MENU-MODE ****************************
 *********************************************/
div.menu-mode-mobile,
div.menu-mode {
    display: inline-block;
    width: 158px;
    vertical-align: top;
    position: absolute;
    top: 0px;
    right: 12px;
    z-index: 1002;
    pointer-events: auto;
    background-color: white;
    border-radius: 0 5px 5px 5px;
}
div.menu-mode-mobile a,
div.menu-mode a {
    display: block;
    width: 50%;
    font-size: 12px;
    line-height: 21px;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    padding: 5px 0px 5px 0px;
    float: left;
    color: #102e6f;
    font-weight:600;
    background-repeat: no-repeat;
}
div.menu-mode-mobile a:hover,
div.menu-mode-mobile a.active,
div.menu-mode a:hover,
div.menu-mode a.active{
    color:#fff;
    text-decoration:none;
}
div.menu-mode-mobile a.express:hover,
div.menu-mode-mobile a.express.active,
div.menu-mode a.express:hover,
div.menu-mode a.express.active{
    background-color:#00994e;
    border-radius: 0 0 0 5px;
}
div.menu-mode-mobile a.complet:hover,
div.menu-mode-mobile a.complet.active,
div.menu-mode a.complet:hover,
div.menu-mode a.complet.active{
    background-color:#1a3989;
    border-radius: 0 0 5px 0;
}

/*********************************************
 ****** MENU-MAP ****************************
 *********************************************/

#menu-map-container .menus {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: rgba(0, 0, 0, 0);
    pointer-events: auto;
    overflow-y: hidden;
    overflow-x: hidden;
}

#menu-map-container .menus .menu {
    position: absolute;
    top: 6px;
    row-gap: 20px;
    z-index: 9998;
    line-height: 1;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: calc(100% - 20px);
    margin-left: 10px;
    padding: 10px;
    transform: translateX(130%);
    color: #3e5463;
    background-color: #fff;
    transition: all .5s ease-in-out;
    border-radius: 8px;
    height: calc(100% - 160px);
    align-content: flex-start;
    user-select: none
}

@media only screen and (min-width: 768px) {
    #menu-map-container .menus .menu {
        width: 320px !important;
        bottom: 165px !important;
        top: 40px;
        height: auto;
        border-radius: 8px 0px 0 8px;
        right: 0;
        min-height: unset;
    }
}

#menu-map-container .menus .menu ul.measurements {
    width: 100%;
    height: calc(100% - 100px);
    font-size: 16px;
    padding: 5px 0 0;
}

#menu-map-container .menus .menu ul.measurements::-webkit-scrollbar {
    width: 3px;
    height: 3px
}

#menu-map-container .menus .menu ul.measurements::-webkit-scrollbar-thumb {
    background-color: #adadad
}

#menu-map-container .menus .menu ul.measurements li {
    width: 100%;
    list-style: none;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 10px;
    cursor: pointer;
}

#menu-map-container .menus .menu ul.measurements li.actived {
    margin-bottom: 16px;
    margin-top: -5px;
    height: 45px;
    background-color: #1958de17;
    border-radius: 5px;
}

#menu-map-container .menus .menu ul.measurements li .arrow {
    display: none;
}

#menu-map-container .menus .menu ul.measurements li.sub-menu .arrow {
    display: block;
}

#menu-map-container .menus .menu ul.measurements li span.label {
    flex: 1
}

#menu-map-container .menus .menu ul.measurements li .icon {
    margin-right: 20px
}

#menu-map-container .menus .menu ul.measurements li .arrow {
    padding-right: 10px
}

#menu-map-container .menus .menu ul.measurements li .arrow svg {
    width: 15px;
    height: 15px
}

#menu-map-container .menus .menu .close-title {
    display: flex;
    width: 100%;
    height: 40px;
    align-items: center
}

#menu-map-container .menus .menu .close-title .close,
#menu-map-container .menus .menu .close-title .back {
    position: absolute;
    left: 20px
}

#menu-map-container .menus .menu .close-title .close .icon,
#menu-map-container .menus .menu .close-title .back .icon {
    width: 30px;
    height: 30px;
    padding: 3px;
    cursor: pointer;
    border-radius: 20px;
    background-color: #fff;
    box-shadow: 0px 2px 5px 0px rgb(0 0 0 / 10%);
}

#menu-map-container .menus .menu .close-title .title {
    display: block;
    font-size: 16px;
    font-weight: 700;
    width: 100%;
    text-align: center;
    margin-left: -5px
}

#menu-map-container .menus .menu .icon {
    width: 36px;
    height: 36px;
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto
}

#menu-map-container .menus .menu svg {
    width: 36px;
    height: 36px
}

#menu-map-container .menus .menu label {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: flex-start;
    padding: 5px 0px 2px 0px;
    cursor: pointer
}

#menu-map-container .menus .menu label span:first-child {
    position: relative;
    margin-right: 10px;
    width: 35px;
    height: 20px;
    border-radius: 15px;
    background: rgba(170, 170, 163, .84);
    transition: all .3s
}

#menu-map-container .menus .menu label span:first-child::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 2px;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    background-color: #fff;
    border-radius: 50%
}

#menu-map-container .menus .menu#menu-maps ul.measurements {
    padding-top: 5px
}
#menu-map-container .menus .menu.open {
    visibility: visible;
    transform: translateX(0);
}

/*Filter**/
#filter-map-container .filters {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: rgba(0, 0, 0, 0);
    pointer-events: auto;
    overflow-y: hidden;
    overflow-x: hidden;
}

#filter-map-container .filters .filter {
    border-radius: 8px 0px 0 8px;
    right: 0;
    position: absolute;
    top: 100px;
    row-gap: 20px;
    z-index: 9997;
    line-height: 1;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    margin-left: 10px;
    padding: 5px 12px 5px 5px;
    transform: translateX(130%);
    color: #3e5463;
    background-color: #c5c5c566;
    transition: all .5s ease-in-out;
    border-radius: 0px 0px 0px 10px;
    user-select: none;
    cursor: pointer;
    text-align: center;
    width: 70px;
    height: calc(100% - 265px);
}

#filter-map-container .filters .filter.open {
    visibility: visible;
    transform: translateX(0);
}

#filter-map-container .filters .filter ul {
    width: 100%;
    height: calc(100%);
    font-size: 0.7em;
    /*font-size: 1em; resp */
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin: 0;
}
#filter-map-container .filters .filter ul li{
    width: 100%;
    list-style: none;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    height: 100%;
    max-height: 50px;
    /*max-height: 68px; resp*/
    flex-direction: row;
    border-radius: 5px;
    color: #1a3989;
    font-weight: 600;
}
#filter-map-container .filters .filter ul li:last-child{
    margin-bottom: 0;
}
#filter-map-container .filters .filter ul li.actived,
#filter-map-container .filters .filter ul li:hover{
    background: #1a3989;
    color: white;
}
#filter-map-container .filters .filter > i {
    position: absolute;
    left: -25px;
    top: 0px;
    font-size: 15px;
    background-color: #c5c5c566;
    padding: 10px 0px 10px 10px;
    border-radius: 10px 0px 0px 10px;
    color: #1a3989;
}
@media only screen and (min-width: 768px) {
    #filter-map-container .filters .filter {
        padding: 10px 12px 10px 10px;
        width: 100px;
    }
    #filter-map-container .filters .filter ul {
        font-size: 1em;
    }
}


/*Parameter*/

#parameter-map-container .parameters {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: rgba(0, 0, 0, 0);
    pointer-events: auto;
    overflow-y: hidden;
    overflow-x: hidden;
}

#parameter-map-container .parameters .parameter {
    position: absolute;
    top: 61px;
    right: 0;
    row-gap: 20px;
    z-index: 9996;
    line-height: 1;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: 10px;
    padding: 5px 10px 5px 10px;
    transform: translateX(130%);
    color: #3e5463;
    background-color: #ffffffc7;
    transition: all .5s ease-in-out;
    font-size: 0.8em;
    align-content: flex-start;
    user-select: none;
    cursor: pointer;
    text-align: center;
    box-shadow: 3px 1px 3px 0px #55555582;
}
#parameter-map-container .parameters #p_station_issep{
    padding: 10px 12px 10px 10px;
}

#parameter-map-container .parameters .parameter.open {
    visibility: visible;
    transform: translateY(0);
}

#parameter-map-container .parameters .parameter > i {
    position: absolute;
    left: -25px;
    top: 0px;
    font-size: 15px;
    background-color: #ffffffc7;
    padding: 5px 0px 5px 5px;
    border-radius: 10px 0px 0px 10px;
    color: #1a3989;
    box-shadow:-2px 2px 3px 0px #5555554d;
    width: 25px;
    display: block;
}

#parameter-map-container .parameters .parameter label{
    margin-bottom: 0;
    font-weight: 600;
}
/*Pour ne pas modifier les labels des checkbox*/
#parameter-map-container .parameters .parameter .customLabel label{
    color: #1a3989;
}

@media only screen and (min-width: 768px) {
    #parameter-map-container .parameters .parameter {
        top: unset;
        bottom: 0px;
        transform: translateY(130%);
        right: calc(50% - 100px);
        width: 200px;
        border-radius: 0px 10px 0px 0px;
        font-size: 1em;
    }

}


/*Class title current*/
#title-current{
    position: absolute;
    top: 6px;
    right: 13px;
    z-index: 9998;
    pointer-events: auto;
    cursor: pointer;
    background-color: #ffffffc7;
    border-radius: 5px 30px 30px 8px;
    height: 42px;
    display: flex;
    align-items: center;
    padding: 0 57px 0px 10px;
    font-weight: 600;
    color: #1a3887;
    display: flex;
    box-shadow: -2px 2px 3px 0px #5555554d;
}
#title-current div {
    display: flex;
    flex-direction: column;
}
#title-current .icon{
    position: relative;
    width: 25px;
    height: 25px;
    transition: transform 0.5s;
    margin-right: 10px;
}

#title-current .title {
    font-size: 16px;
    margin-right: 10px;
}
#title-current .sub-title {
    font-size: 12px;
    color: #58595b;
}

/*Class button menu burger*/
#btn-menu-map {
    position: absolute;
    top: 5px;
    right: 10px;
    z-index: 9998;
    pointer-events: auto;
    cursor: pointer;
    background-color: #fff;
    border-radius: 50%;
}
.menu-icon{
    position: relative;
    width: 54px;
    height: 54px;
    transition: transform 0.5s;
}
.menu-icon span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
    width: 25px;
    height: 4px;
    background-color: #102e6f;
    transition: background 0.5s;
}
.menu-icon span::before, .menu-icon span::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-7px);
    display: block;
    width: 25px;
    height: 4px;
    background-color: #102e6f;
    transition: transform 0.5s;
}
.menu-icon span::after {
    transform: translateY(7px);
}
.menu-icon.is-opened span { background: transparent; }
.menu-icon.is-opened span::before { transform: translateY(0) rotate(45deg); }
.menu-icon.is-opened span::after { transform: translateY(0) rotate(-45deg); }
.menu-icon.is-opened { transform: rotate(180deg); }

@media only screen and (min-width: 768px) {
    #title-current{
        top: 40px;
        right: 13px;
    }
    #btn-menu-map {
        top: 40px;
        right: 10px;
    }
}



/*Class SVG*/
.cls-svg {
    fill: #102e6f;
    stroke-width: 0px;
}
.cls-svg-arrow {
    fill: none;
    stroke: #102e6f;
    stroke-width: 1.67px;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.cls-svg-arrow-left {
    fill: #102e6f;
}