/* Global CSS Variable declarations */
.root{
  --card-front-bg-color: dodgerblue;
  --card-front-bg-image: none;
  --card-front-bg-image-fallback: none;
  --card-front-text-color: white;
  --card-front-border-color: dodgerblue;
  --card-back-bg-color: #f1f1f1;
  --card-back-bg-image: none;
  --card-back-bg-image-fallback: none;
  --card-back-text-color: black;
  --card-back-border-color: #ccc;
  --card-rounded-corners: 0px;
}

/* The flip card container */
.flip-card {
  container-type: inline-size;
  background-color: transparent;
  height: 12.5em;
  perspective: 62.5em;
  width: 18.75em;
  margin-bottom: 1.25em;
  margin-top: 1.25em;
}

/* This container is needed to position the front and back side */
.flip-card-inner {
  min-height: 100%;
  position: relative;
  width: 100%;
  text-align: center;
  /*will-change: transform;*/
  transform-style: preserve-3d;
  transition: transform 0.6s;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

/* Do an horizontal flip when you activate the flip box container */
.flip-card:active .flip-card-inner {
  transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front, .flip-card-back {
  backface-visibility: hidden;
  min-height: 100%;
  position: absolute;
  width: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
}

/* Style the front side */
.flip-card-front {
  background-color: var(--card-front-bg-color);
  background-image: var(--card-front-bg-image, --card-front-bg-image-fallback);
  background-size: cover;
  color: var(--card-front-text-color);
  background-position: center;
  border: 2px solid var(--card-front-border-color);
  border-radius: var(--card-rounded-corners);
}

/* Style the back side */
.flip-card-back {
  transform: rotateY(180deg);
  background-color: var(--card-back-bg-color);
  background-image: var(--card-back-bg-image, --card-back-bg-image-fallback);
  background-size: cover;
  color: var(--card-back-text-color);
  background-position: center;
  border: 2px solid var(--card-back-border-color);
  border-radius: var(--card-rounded-corners);
}
