/* coral.css */
html, body { height: 100%; margin: 0; padding: 0; }

#canvasDiv {
    position: relative;
    width: 100vw;
    height: 100vh;        /* hauteur explicite */
    display: flex;
    justify-content: center;
    align-items: flex-start;
    z-index: 2;
}

/* Meilleur support mobile (évite les barres d’adresse) */
@supports (height: 100dvh) {
    #canvasDiv { height: 100dvh; }
}

canvas { 
    /* supprime l’espace inline par défaut */
    display: block; 
    /* crucial sur mobile */
    touch-action: none;  
} 

#canvasDiv canvas, canvas {
    touch-action: none;           /* allow us to prevent scrolling/zoom */
    -webkit-touch-callout: none;  /* no iOS text/image callout */
    -webkit-user-select: none;
    user-select: none;
}


/* **************************************************** */
/* INFO DIV ****************************************** */
/* **************************************************** */

#infoAndTitle {
    display: flex;
    flex-direction: column;
    position: absolute;
    width: auto;
    height: auto;
    border-radius: 30px;
    border: 1px solid;
    border-color: black;
    background-color: #fbe0c5d4;
    justify-content: space-evenly;
    padding: 30px;
    margin: 20px 0px 0px 0px;
    z-index: 5;
    box-shadow:inset 0px 0px 10px 0px black;
}

#infoAndTitle.hidden { 
    display: none; 
}

#controlsCont {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-end;
    margin: 0px 0px 0px 0px;
}

#title {
    font-size: 1.4em;
    color:black;
    text-align: center;
    margin : 0px 0px 30px 0px;
}



/* **************************************************** */
/* INFO BUTT ****************************************** */
/* **************************************************** */

#infoButtContainer {
    display: flex;
    position: absolute;
    width: 100%;
    flex-direction: row;
    justify-content: flex-end;
    margin: 0px 0px 0px 0px;
    z-index: 100;
}

#infoButtDiv {
    display: flex;
    position: relative;
    align-items: flex-start;
    margin: 1% 100px 0px 0px;
}

#infoButt {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.1);
    z-index: 10;
    border-radius: 20px;
    border: 0px solid white;
    white-space: nowrap;
    padding : 8px 20px;
}

#infoButt:active:hover {
    transform: translateY(1px);
    box-shadow: 0px 0px 8px rgba(0,0,0,0.3);
}

#infoButt:hover {
    transform: scale(1.07);
    background-color: rgba(255, 255, 255, 1);
    box-shadow: 1px 1px 3px black, 1px 1px 8px rgba(192, 188, 188, 0.3);
}

#infoButt.infoIsShowing {
    transform: scale(1.07);
    background-color: rgba(255, 255, 255, 1);
    box-shadow: 1px 1px 3px black, 1px 1px 8px rgba(192, 188, 188, 0.3);
}

#infoButt:focus {
    outline: none;           /* supprime l’anneau par défaut */
    /* box-shadow: none;        certains navigateurs ajoutent un shadow */
}

/* Optionnel : garder un focus pour la navigation clavier uniquement */
#infoButt:focus-visible {
    outline: 2px solid transparent;  /* ou mets une couleur/anneau custom si tu veux */
    box-shadow: none;
}

/* Firefox historique (évite un padding bleu interne) */
#infoButt::-moz-focus-inner {
    border: 0;
}