:root{
    --black:black;
    --white:white;
    --vert:#069b06;
    --rouge:red;


    --principale:#ffcb06;
    --secondaire:#45276d;

    --principal-fonce:#ddaf04;
    --vert-fonce:#027802;
    --rouge-fonce:rgb(188, 3, 3);

    --fond-black-transparent : rgba(0,0,0,0.8);
    --blanc-shadow : rgba(255,255,255,0.8);
}

html{
    height: 100%;
}
body {
    font-family: Arial, sans-serif;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    background: url(../../img/fond-rev-cartes.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    margin:0px;
    position:relative;
}

#behind-container{
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    background-color: var(--fond-black-transparent);
    z-index:1;
}

#message-bandeau {
    height:20px;
    text-transform: uppercase; 
    letter-spacing: 2px; 
    font-size: 10px; 
    font-weight: bold;
    width:100%;
    background:var(--black);
    color:var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    margin:0px;
}



.container {
    padding:30px 0px 20px 0px;
    z-index:2;
    width:100%;
    max-width: 600px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    box-sizing: border-box;
    max-height: 700px;
    overflow-x: hidden;
    position: relative;
    box-shadow: 0 0 15px 2px var(--blanc-shadow);
    border-radius: 10px;

}

.carte-container{
    width:100%;
}
#contain-img-info{
    display: flex;
    justify-content: center;
    align-items: stretch;
    width:100%;
}

#contain-carte-image{
    position: relative;
    margin:0 20px;

}
#carte-image {
    width: 100%;
    max-width: 300px;
    min-width:100px;
    height: auto;
    border-radius:15px;
    background-color: var(--white);
    padding:1px;
    box-shadow: 0 0 15px 2px var(--blanc-shadow);
}

#info-div{
    background: var(--blanc-shadow);
    border:1px var(--white) solid;
    border-radius:20px;
    width:280px;
    margin-right: -280px;;
    opacity:0;
    transition: 0.3s ease-in-out;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}

#info-div h3{
    font-size:30px;
    color: var(--secondaire);
    text-transform: uppercase;
}
#info-div p{
    font-weight: bold;
}
#info-div p, #info-div h3{
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 90%;
    gap : 10px;
    margin:5px;
}
#contain-bl-sr-jpn, #contain-en-nbr{
    width:100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#info-div .drapeau-info{
    width:30px;
    border-radius:5px;
}

#contain-en-nbr p{

    font-size:20px;
}




/*QUERY TEL*/
@media(max-width:400px)
{
    
    .container{
        box-shadow: none !important;
        border-radius: 0px !important;
    }
    #info-div p, #info-div h3
    {
        text-align: center;
        font-size:14px;
        gap:5px;
    }
    #info-div h3
    {
        font-size:16px;
        display: none;
    }
    #contain-en-nbr p
    {
        font-size:14px;
    }
    #info-div p
    {
        font-weight: normal;
    }

    #info-div .drapeau-info
    {
        width:20px;
    }
    .drap-jpn{
        display: none;
    }
    #info-div p.contain-nom-en{
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-size:16px;
        font-weight: bold;
    }
}

#nom-fr {
    opacity: 0;
    font-size: 25px;
    margin-top: 30px;
    text-align: center;
    color: var(--white);
    transition: 0.3s ease-in-out;

}
.affiche-qualite{
    color:var(--principale);
    margin-left:10px;
}



/*BOUTONS*/
#contain-btns{
    width: 100%;
}
#contain-btns .boutons>div{
    display: flex;
    justify-content: center;
    align-items: center;
}
#contain-btns .boutons {
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    padding: 0 15px;
}

.boutons button{
    margin: 10px;
    padding: 10px 20px;
    font-size: 18px;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius:10px;
    border:none;
}

.boutons button img{
    width: 20px;
}

/*STYLE DES BOUTONS*/
#btn-settings{
    background:var(--black);
    transition: 0.3s ease-in-out;
}
#btn-settings:hover{
    background:#2c2c2c;
}

#btn-info{
    background:var(--white);
    transition: 0.3s ease-in-out;
    color: var(--black);
}
#btn-info:hover{
    background:lightgray;
}

#btn-reveal{
    background:var(--principale);
    transition: 0.3s ease-in-out;
    color: var(--black);
}
#btn-reveal:hover{
    background:var(--principal-fonce);
}

#btn-next{
    background:var(--vert);
    color: var(--white);
    transition: 0.3s ease-in-out;
}
#btn-next:hover{
    background:var(--vert-fonce);
}


/*PARAMETRAGE*/
#settings-div {
    display: none;
    width:100%;
    height: 100%;
    overflow-y: scroll;
    position: absolute;
    top:0;
    left: 0;
}
#contain-form-param
{
    padding:20px;
    width:100%;
    height: 100%;
    box-sizing: border-box;
    overflow-y: scroll;
}
#settings-div form{
    box-shadow: 0 0 15px 2px var(--blanc-shadow);
    border-radius: 15px;
    background-color: var(--white);
    overflow-y: scroll;
    height: 100%;

}
::-webkit-scrollbar {
    display: none;
}


fieldset {
    border: none;
    margin-bottom: 10px;
    padding:20px;
}

.choix-rapide{
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-bottom: 20px;;
}
.choix-rapide div{
    display: flex;
    gap:20px;
}
#check-all, #uncheck-all{
    padding:8px 15px;
    border:none;
    border-radius:10px;
    font-size:14px;
    transition: 0.3s ease-in-out;
    color: var(--white);
    cursor: pointer;
}
#check-all{
    background: var(--vert);
}
#check-all:hover{
    background: var(--vert-fonce);
}
#uncheck-all{
    background: var(--rouge);
}
#uncheck-all:hover{
    background: var(--rouge-fonce);
}

#contain-label-choix{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#contain-label-choix label{
    width:45%;
    padding:10px;
    font-size:13px;
}

@media(max-width:400px)
{
    #contain-btns{
        padding-bottom:30px;
    }
    .choix-rapide{
        flex-direction: column;
        gap:20px
    }
    #contain-label-choix label{
        width:100%;
        padding:10px;
        font-size:16px;
    }
}


#field-camo{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#field-camo legend{
    width: 100%;
    text-align: center;
}

#choix-camo{
    display: flex;
    justify-content: center;
    align-items: center;
    gap:30px;
}

legend {
    font-weight: bold;
    font-size:16px;
}

label {
    display: block;
    margin-bottom: 5px;
}

#contain-btn-param{
    width: 100%;
    display: flex;
    justify-content: center;
    padding-bottom: 20px;
}
#contain-btn-param button{
    padding:10px 20px;
    border:none;
    border-radius:10px;
    font-weight: 500;
    font-size:16px;
    transition: 0.3s ease-in-out;
    color: var(--white);
    cursor: pointer;
    background-color:var(--vert)
}
#contain-btn-param button:hover{
    background-color:var(--vert-fonce)
}


#cache-donnee {
    position: absolute;
    bottom: 10px;
    left: 25px;
    font-size: 14px;
    font-weight: bold;
    color: var(--black);
	width:100px;
	height:30px;
    margin-top: 10px;
	background:var(--white);
    text-align: center;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}




#largeur-ecran{
    z-index: 100;
    color:white;
}

@media(max-width:400px)
{
    #contain-carte-image{
        width:75%
    }





    /*#contain-img-info{
        flex-wrap:wrap;
    }
    #info-div{
        margin-left:20px;
        margin-top:20px;
    }*/
    #contain-carte-image{
        margin: 0 30px;
    }


    /*Modification fonctionnement INFO*/
    #contain-img-info{
        position:relative;
    }
    #carte-image, #cache-donnee{
        opacity: 1;
        transition: 0.3s ease-in-out;
    }
    #info-div{
        position:absolute;
        top:0;
        left: 50%;
        transform: translateX(-50%);
        height: 100%;
        box-sizing: border-box;
        width:calc(100% - 60px);
        opacity:0 ;
    }



    
}

@media(max-width:350px)
{
    #nom-fr{
        margin-top:15px;
        font-size:18px;
    }

    .boutons button
    {
        margin: 7px;
        padding: 8px 15px;
        font-size: 15px;
        font-weight: 500;
    }
}