@font-face {
  font-family: 'PixelatedElegance';
  src: url('../font/Pixeboy-z8XGD.ttf') format('truetype');
}

body {
  color: white;
  margin: 0;
  display: flex;
  height: 100svh;
  place-items: center;
  background: repeating-conic-gradient(from 45deg,
      #7FB196 0% 25%,
      #3C425A 0% 50%);
  background-size: max(10vw, 10svh) max(10vw, 10svh);

  font-family: 'Roboto', sans-serif;

  align-self: center;
  justify-content: center;
  flex-direction: column;

  justify-content: space-evenly;

  gap: 1rem;

  font-family: 'PixelatedElegance', monospace;
  font-size: 1.5rem;
}

main {
  display: flex;
  align-self: center;
  justify-content: center;
  flex-direction: row;
}

.container {
  gap: 1rem;
  display: flex;
  flex-direction: row;
}

.tetris {
  width: 300px;
  height: 600px;
}

.frame {
  padding: 10px;
  margin: 0px;

  border-radius: 10px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6);

  background: #414241a0;
  position: relative;
  /* Nécessaire pour le positionnement du pseudo-élément */

  p {
    padding: 0px;
    margin: 0px;
  }
}

.frame::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #4E4F4DA0;
  border-radius: 10px;
  /* Même border-radius que le parent */
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  /* Pour Safari */
  z-index: -1;
  /* Assure que le fond est derrière le contenu */
}

.first {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: end;
  width: 100px;
}

.last {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: start;
  width: 100px;
  justify-content: space-between;
}

.main-menu {
  height: 100%;

  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  justify-content: center;
}

.load-menu {
  height: 100%;

  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  justify-content: center;

  color: white;
}

.icon.play-pause {
  border: 0;
  background: transparent;
  box-sizing: border-box;
  width: 0;
  height: 37px;
  /* Réduit de moitié (était 74px) */

  border-color: transparent transparent transparent #74dc74;
  transition: 100ms all ease;
  cursor: pointer;

  border-style: solid;
  border-width: 18.5px 0 18.5px 30px;
  /* Réduit proportionnellement (était 37px 0 37px 60px) */

  &.paused {
    border-style: double;
    border-width: 0px 0 0px 30px;
    /* Réduit (était 60px) */
    border-color: transparent transparent transparent #ff5e5e;
  }
}

.icon.play-pause.play::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.pauseContainer {
  width: min-content;
  height: min-content;
}

.loader {
  width: 48px;
  height: 48px;
  border: 5px solid #FFF;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  position: relative;
  animation: pulse 1s linear infinite;
}

.loader:after {
  content: '';
  position: absolute;
  width: 48px;
  height: 48px;
  border: 5px solid #FFF;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  animation: scaleUp 1s linear infinite;
}

@keyframes scaleUp {
  0% {
    transform: translate(-50%, -50%) scale(0)
  }

  60%,
  100% {
    transform: translate(-50%, -50%) scale(1)
  }
}

@keyframes pulse {

  0%,
  60%,
  100% {
    transform: scale(1)
  }

  80% {
    transform: scale(1.2)
  }
}

.scoreboard {
  width: 200px;
  height: 600px;

  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}

.options {
  width: 200px;
  height: 600px;
}

.button {
  background: #4E4F4DA0;
  border-radius: 10px;
  padding: 10px;
  margin: 0px;

  cursor: pointer;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6);

  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}

.menu {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  justify-content: center;

  height: 100%;
  width: 100%;

  color: white;
}

.hidden {
  display: none;
}