:root {
    --module-container-margin-top-mobile: 78px;
    --module-container-margin-top-mobile-is-admin: 112px;
    --module-container-margin-top: 100px; 
    --module-container-margin-top-is-admin: 134px; 
}

body.hidden-scrollbar-y {
    overflow-y: hidden !important;
}

.woocommerce-cart #content,
.woocommerce-checkout #content {
    position: relative;
}

/* quand connecté à l'admin ajouter la hauteur de la bar à la position du module */
body.admin-bar #lafsmcc-module-container {
    top: var(--module-container-margin-top-mobile-is-admin);
}

#lafsmcc-module-container {
    position:fixed;
    top: var(--module-container-margin-top-mobile);
    left: 0px;
    width:100%;
    height: calc(100vh - var(--module-container-margin-top-mobile));
    background-color: var(--ast-global-color-5);
    z-index: 99;
    transition: opacity 1s;
}

#lafsmcc-map {
    width:100%;
}

#lafsmcc_view_step_0 {
    padding-top: 1.5em;
}

#lafsmcc_view_step_0 h4 {
    padding-bottom: 1em;
}

#lafsmcc_view_home {
    display: flex;
    flex-direction: row;
    height: 100%;
}

#lafsmcc-module-container-one {
    flex: 1;
    margin: 0;
    height:100%;
    padding: 0 1em 0 1em;
    overflow: auto;
    background-color: #fff;
    z-index: 10000;
}

#lafsmcc-module-container-two {
    position:relative;
    flex-basis: 100%;
    height:100%;
    overflow: auto;
}

#lafsmcc-map-legend {
    position:absolute;
    z-index: 1000;
    height: auto;
    top: 0px;
    left: 0px;
    background-color: white;
    padding:0.5em;
}

@media screen and (max-width: 450px) {
    #lafsmcc-map-legend { 
        bottom: 0px;
        left: 0px;
        top: inherit;
    }
}

@media screen and (min-width: 765px) {
    #lafsmcc-map-legend { 
        bottom: 44px;
        left: 0px;
        top: inherit;
    }
}

#lafsmcc-map-legend .lg-img {
    width: 30px;
    height: 30px;
}

#lafsmcc-map {
    height: 100%;
}

#lafsmcc-module-container-one.active-on-mobile, 
#lafsmcc-module-container-two.active-on-mobile {
    display:block;
}
#lafsmcc-module-container-one.inactive-on-mobile, 
#lafsmcc-module-container-two.inactive-on-mobile {
    display:none;
}

#lafsmcc-module-container-one h4{
    margin-bottom: 0.5em;
}

#lafsmcc-module-container-one h5 {
    margin-top: 0.8em;
}

span.creneau-dispo {
    margin-left:0.5em;
}

#lafsmcc-module-container.visible {
    display:flex;
    flex-direction: column;
    opacity: 100%;
    transition: opacity 1s;
}

.lafsmcc-back-btn {
    display: flex;
    align-items: center;
    cursor:pointer;
    position:absolute;
    padding:0.5em 1em;
    right: 0;
    top: 0px;
    background-color: var(--ast-global-color-4);
    z-index: 1000;
    color: var(--ast-global-color-5);
}


.lafsmcc-back-btn span {
    padding-right: 10px;
}

.lafsmcc-back-btn::after{
    display:inline-block;
    content: "";
    width: 30px;
    height: 30px;
    padding-left: 10px;
    background-image: url(../assets/img/close_round_icon.svg);
}

.lafsmcc-back-btn.simple {
    position:initial;
    width: 150px;
    margin-bottom: 1em;
    padding: 0.5em 0 0.5em 1em;
    color: var(--ast-global-color-0);
    background-color: var(--ast-global-color-1);
    font-weight: bold;
    text-decoration: underline;
}

.lafsmcc-back-btn.simple::before {
    display:inline-block;
    content: "";
    width: 30px;
    height: 30px;
    padding-left: 10px;
    background-image: url(../assets/img/return-back.svg);
    background-repeat: no-repeat;
    margin-top: 5px;
    margin-right: 1em;
}

.lafsmcc-back-btn.simple::after {
    background-image: none;
}

#lafsmcc-container-select-creneau {
    margin: 1em 2em 0em 0em;
    /*display:none;*/
}

#calendar{
    max-width: 290px;
}

#lafsmcc-links-markers h4 {
    margin-bottom:1em;
}

.link-marker {
    cursor: pointer;
    padding: 0 0 0.7em 0.7em;
}

.link-marker span {
    padding: 0.7em;
}

.link-marker.active span,
.link-marker:hover span {
    color: var(--ast-global-color-8);
    font-weight: bold;
}

/*.link-marker:hover:not(.active) span {
    background-color: var(--ast-global-color-1);
    color: var(--ast-global-color-5);
}*/

#lafsmcc-places-infos {
    position:relative;
}

#lafsmcc_view_step_1 span {
    color: var(--ast-global-color-0);
    font-weight: bold;
}

.link-marker::before,
#titre-view-place-info::before{
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

#titre-view-place-info::before {
    width: 20px;
    height: 20px;
    margin-right: 0.5em;
}

.link-marker.boutique::before,
#titre-view-place-info.boutique::before
{
    background-color: var(--ast-global-color-0);
}

.link-marker.marches::before,
#titre-view-place-info.marches::before
{
    background-color: var(--ast-global-color-2);
}

.link-marker.circuit_court::before,
#titre-view-place-info.circuit_court::before
{
    background-color: var(--ast-global-color-4);
}

#lafsmcc-places-infos .libelle {
    font-weight: 1.5em;

}


/* responsive vs desktop */

/* container-one caché par défaut (uniquement map visible) */
#lafsmcc-module-container-one {
    display:none;
}

@media (min-width: 545px) {

    body.admin-bar #lafsmcc-module-container {
        top: var(--module-container-margin-top-is-admin);
        padding: 0em 2em 0 2em;
    }
    #lafsmcc-module-container {
        top: var(--module-container-margin-top);
        padding: 0em 2em 0 2em;
    }

    .lafsmcc-back-btn {
        right: 29px;
    }
}

@media (min-width: 765px) {

    #lafsmcc-module-container.visible {
        flex-direction: row;
    }

    #lafsmcc-module-container-one.inactive-on-mobile, 
    #lafsmcc-module-container-two.inactive-on-mobile {
        display:block;
    }

    #lafsmcc-module-container-one {
        flex: 0 0 320px;
        display:block;
        padding: 0;
    }
    
    #lafsmcc-map {
        height: calc(100vh - var(--module-container-margin-top) - 2em);
    }

}

#creneaux {
    margin-top: 1em;
}

#creneaux .content > div {
    margin-top: 0.5em;
}

#creneaux-resume .content-after, 
#creneaux .content-after {
    margin-top: 1em;
}

#lafsmcc-places-infos, #creneaux-resume {
    /*display: none;*/
    /*background-color: var(--ast-global-color-6);*/
    padding: 0.5em 0em 0.5em 0.5em;
}

#creneaux-resume {
    background-color: #ff4b6a1a;
}

#lafsmcc-places-infos .libelle {
    color: var(--ast-global-color-3);
    font-weight: 700;
}

#ast-scroll-top {
    z-index: 98;
}

.lafsmcc-btn {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: 1em;
    margin-top: 1em!important;
    padding: 1em 1em 1em 3em!important;
}

#lafsmcc-btn-open-module {
    display: inline-block;
    background-image: url(../assets/img/marker-circuit_court.svg);
    background-size: 30px 30px;
    cursor: pointer;
}

#lafsmcc-btn-open-choix-creneau {
    display: inline-block;
    background-image: url(../assets/img/time-checked.svg);
    background-size: 22px 22px;
    cursor: pointer;
}

#lafsmcc-btn-choix-creneau {
    display: inline-block;
    background-image: url(../assets/img/time-checked.svg);
    margin-bottom: 5em;
    background-size: 22px 22px;
    cursor: not-allowed;
    /*border-color: var(--ast-global-color-7);*/
    opacity: 0.5;
}

#lafsmcc-btn-choix-creneau.activated {
    cursor: pointer;
    opacity: 1
}

.container-close-module-btn {
    display: flex;
    align-items: center;
    cursor:pointer;
    position:fixed;
    padding:10px;
    top:148px;
    right:28px;
    background-color: var(--ast-global-color-4);
    z-index: 1000;
}

.container-close-module-btn span {
    padding-right: 10px;
    color:var(--ast-global-color-5);
}

.container-close-module-btn::after{
    display:inline-block;
    content: "";
    width: 30px;
    height: 30px;
    padding-left: 10px;
    background-image: url(../assets/img/close_round_icon.svg);
}

.lafsmcc-container-navigation {
    position:relative;
    width:150px;
    height:100%;
    background-color: var(--ast-global-color-0);
}

.lafsmcc-container-navigation-content {
    width:150px;
    height:150px;
}

/* CALENDAR */

#jsCalendar {
    margin-top:1.5em;
}

.jsCalendar.green tbody td.jsCalendar-current {
    background-color: var(--ast-global-color-5)!important;
    border: 1px solid var(--ast-global-color-0)!important;
    color:black;
}

.jsCalendar tbody td.jsCalendar-selected {
    background-color: var(--ast-global-color-0)!important;
    cursor: pointer;
    color:var(--ast-global-color-5);
}

.jsCalendar tbody td.jsCalendar-selected:hover {
    background-color: var(--ast-global-color-1)!important;
}

.jsCalendar table {
    font-family: 'Fira Sans',sans-serif!important;
}

.jsCalendar .jsCalendar-title-name::selection,
.jsCalendar tr.jsCalendar-week-days th::selection,
.jsCalendar td::selection{
    background: var(--ast-global-color-0)!important;
}

.jsCalendar-title {
    display: flex;
    justify-content: space-between;
}

/* leaflet */ 

.leaflet-popup-content {
    font-size: 1.2em;
    font-family: 'Fira Sans',sans-serif!important;
}