*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    background-color: darkslategrey;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 20px;
}

.startScreen{
    height: 50vh;
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
    gap: 50px;
    top: 30px;
}

.startScreen h1{
    font-size: clamp(3rem, 10vw, 4rem);
    background: linear-gradient(to top, red, orange, white);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: all 0.3s ease-in;
    text-align: center;
}

.startScreen button{
    padding: 10px 20px;
    background-color: transparent;
    color: white;
    font-size: clamp(1.5rem, 8vw, 3rem);
    border: 4px solid;
    border-image: conic-gradient(from 65deg, red, orange, white);
    border-image-slice: 1;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.startScreen button:hover{
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
    transform: scale(1.05);
}

.gameScreen{
    visibility: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    width: 0;
    height: 100%;
    transition: all 0.3s ease-in;
    color: white;
    position: relative;
}

.gameScreen h1.warning{
    position: absolute;
    bottom: -50px;
    font-size: clamp(1.5rem, 4vw, 2.5rem);
    text-align: center;
    width: 100%;
}

.gameScreen p.score{
    font-size: clamp(1rem, 3vw, 1.5rem);
}

.container{
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.5);
    background-color: black;
    padding: 10px;
    border-radius: 15px;
    display: grid;
    grid: repeat(3, 1fr) / repeat(3, 1fr);
    gap: 10px;
    width: 90vw;
    max-width: 450px;
    aspect-ratio: 1/1;
}

.container button{
    font-size: clamp(2rem, 15vmin, 5rem);
    border: none;
    border-radius: 15px;
    background-color: #f0f0f0;
}

.container button:disabled {
  color: #333;
  cursor: not-allowed;
}

.win{
    background-color: #8af78b !important;
}

.draw{
    background-color: #f7f78a !important;
}

@media (max-width: 768px) {
  .gameScreen {
    flex-direction: column;
    justify-content: center;
    gap: 20px;
  }

  .gameScreen h1.warning {
    position: static;
    order: 3;
    margin-top: 10px;
  }
  
  .score.player1 {
      order: -1;
  }
}