@import url("https://fonts.googleapis.com/css2?family=Mukta:wght@200;300;400;500;600;700;800&display=swap");

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

:root {
  --bg-color: #14bdac;
  --dark-color: #0da192;
  --black-color: #545454;
  --white-color: #f2ebd3;
  --red-color: #bd022f;
}

body {
  background-image: linear-gradient(
      306deg,
      rgba(54, 54, 54, 0.05) 0%,
      rgba(54, 54, 54, 0.05) 33.333%,
      rgba(85, 85, 85, 0.05) 33.333%,
      rgba(85, 85, 85, 0.05) 66.666%,
      rgba(255, 255, 255, 0.05) 66.666%,
      rgba(255, 255, 255, 0.05) 99.999%
    ),
    linear-gradient(
      353deg,
      rgba(81, 81, 81, 0.05) 0%,
      rgba(81, 81, 81, 0.05) 33.333%,
      rgba(238, 238, 238, 0.05) 33.333%,
      rgba(238, 238, 238, 0.05) 66.666%,
      rgba(32, 32, 32, 0.05) 66.666%,
      rgba(32, 32, 32, 0.05) 99.999%
    ),
    linear-gradient(
      140deg,
      rgba(192, 192, 192, 0.05) 0%,
      rgba(192, 192, 192, 0.05) 33.333%,
      rgba(109, 109, 109, 0.05) 33.333%,
      rgba(109, 109, 109, 0.05) 66.666%,
      rgba(30, 30, 30, 0.05) 66.666%,
      rgba(30, 30, 30, 0.05) 99.999%
    ),
    linear-gradient(
      189deg,
      rgba(77, 77, 77, 0.05) 0%,
      rgba(77, 77, 77, 0.05) 33.333%,
      rgba(55, 55, 55, 0.05) 33.333%,
      rgba(55, 55, 55, 0.05) 66.666%,
      rgba(145, 145, 145, 0.05) 66.666%,
      rgba(145, 145, 145, 0.05) 99.999%
    ),
    linear-gradient(90deg, rgb(9, 201, 186), rgb(18, 131, 221));
  font-family: "Mukta", sans-serif;
  height: 100vh;
}

main {
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--black-color);
  height: 100vh;
}

span {
  color: var(--white-color);
}

h1 {
  font-size: 40px;
  word-spacing: 10px;
}

.container {
  margin: 30px 0;
  padding: 50px;
  border-radius: 25px;
  background-color: var(--bg-color);
  box-shadow: 10px 10px 40px #389087;
}

.title {
  text-align: center;
}

.status__action {
  margin-top: 30px;
  font-size: 22px;
  font-weight: 800;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.reset:hover {
  cursor: pointer;
  color: var(--red-color);
  transition: color 0.5s ease-in-out;
}

.tic__tac__toe__grid {
  margin-top: 70px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 10px;
  background-color: var(--dark-color);
}

.tic__tac__toe__cell {
  height: 100px;
  width: 100px;
  background-color: var(--bg-color);
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}

.x,
.y {
  cursor: default;
}

.x::after {
  content: "×";
  font-size: 150px;
}

.o::after {
  content: "○";
  color: var(--white-color);
  font-size: 150px;
}

.won::after {
  color: var(--red-color);
}

.danger {
  color: var(--red-color);
}

footer {
  text-align: center;
  margin-top: 30px;
}

footer p {
  color: var(--white-color);
  word-spacing: 3px;
}

footer p a {
  color: var(--red-color);
  font-weight: 800;
}

@media only screen and (max-width: 600px) {
  h1 {
    font-size: 25px;
  }

  .status__action {
    margin-top: 20px;
    font-size: 18px;
  }

  .tic__tac__toe__grid {
    margin-top: 40px;
    gap: 7px;
  }

  .tic__tac__toe__cell {
    height: 70px;
    width: 70px;
  }

  .x::after {
    font-size: 100px;
  }

  .o::after {
    font-size: 100px;
  }
}
