@charset "UTF-8";
/*.............................................................................
 * Titre   : exemple illustratif - retourner une carte
 * Auteur  : JSI
 * Date    : 2023-09-15
 * Version : 0.0.4.0
 *...........................................................................*/
 /* 
   Reset : réinitialisation globale des styles:
   Applique des styles de base à tous les éléments pour assurer une cohérence 
   et éliminer les styles par défaut des navigateurs
*/
*, ::before, ::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* 
   Appliquer les propriétés de style au "body".
*/
body {
    min-height: 100vh;
    font-family: Roboto, Montserrat, sans-serif;
    background-color: whitesmoke;
    padding: 20px;
  }

/* 
   En-tête du jeu
*/
h1, h2 {
  text-align: center;
  color: blue;
}
h1 {
    font-size: clamp(25px, 5vw, 40px);
}
h2 {
    font-size: clamp(18px, 5vw, 30px);
}

hr {
   margin: 20px auto;
}

.msg {
    font-size: clamp(16px, 2.5vw, 20px);
}

/* 
   Plateau de jeu
*/
.grid {
    display: grid;
    grid-template: repeat(2, 200px) / repeat(2, 200px);
    max-width: 432px;
    gap: 10px;
    margin: 10px auto 0;
  }

  /* 
    La carte
  */
  .carte {
    aspect-ratio: 1/1;
    perspective: 1000px;
    cursor: pointer;
    user-select: none;
    transition: transform 0.2s ease-out;
  }
  .carte:hover {
    transform: scale(1.02)
  }
  .cotes {
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    will-change: transform;
    transition: transform 0.6s;
    box-shadow: 0 15px 15px rgba(0,0,0,0.3);
    pointer-events: none;
    border-radius: 20px;
  }
  .face, .dos {
    position: absolute;
    width: 100%;
    height: 100%;
    pointer-events: none;
    border-radius: 20px;
    background: #f1f1f1;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }
  .dos {
    transform: rotateY(0deg);
  }
  .face {  
    transform: rotateY(180deg);
  }
  .face img, .dos img {
    width: 100%;
    border-radius: 20px;
  }

  /* 
    Retournement de la carte sélectionnée
  */
  .selectionne {
    transform: rotateY(180deg);
  }

  /* 
    Place le halo autour de la carte activée
  */
  .active {
    -webkit-box-shadow: 10px 10px 136px 0px rgba(237,245,10,1);
    -moz-box-shadow: 10px 10px 136px 0px rgba(237,245,10,1);
    box-shadow: 10px 10px 136px 0px rgba(237,245,10,1);
    box-shadow: 10px 10px 136px 0px rgba(237,245,10,1);
  }