p {
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0; }

body, html {
  margin: 0;
  padding: 0;
  background-color: black;
  font-family: "Source Code Pro", monospace;
  font-size: 20px; }

button {
  border-width: 0;
  text-align: center;
  padding: 5px 10px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.container {
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  justify-content: space-around; }
  @media screen and (min-width: 801px) {
    .container {
      height: 100vh; } }
  @media screen and (max-width: 800px) {
    .container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      flex-direction: column; } }

.menu {
  font-family: "Source Code Pro", monospace;
  padding: 5px 10px;
  color: green;
  background-color: black;
  text-align: center; }
  @media screen and (min-width: 801px) {
    .menu {
      border: 2px solid green;
      border-radius: 20px;
      position: fixed;
      top: 10px;
      left: 10px; } }
  @media screen and (max-width: 800px) {
    .menu {
      border-bottom: 2px solid green;
      width: 100%;
      margin-bottom: 3vh; } }
  .menu__list {
    padding: 10px; }
    .menu__list__item {
      margin-top: 15px;
      background-color: green;
      font-family: "Source Code Pro", monospace;
      color: black;
      font-size: 20px; }

.player {
  background-color: green;
  font-family: "Sriracha", cursive;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  justify-content: space-around;
  border-radius: 20px; }
  @media screen and (min-width: 1140px) and (min-height: 650px) {
    .player {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      flex-direction: column;
      width: 16vw;
      height: 16vw; } }
  @media screen and (min-width: 980px) and (max-width: 1139px) and (min-height: 650px) {
    .player {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      flex-direction: column;
      width: 19vw;
      height: 15vw; } }
  @media screen and (min-width: 980px) and (max-height: 649px) {
    .player {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      flex-direction: column;
      width: 23vw;
      height: 15vw; } }
  @media screen and (max-width: 979px) {
    .player {
      padding: 10px 7px;
      width: 80vw;
      margin-bottom: 15px; } }
  .player__input-name {
    height: 30px;
    border-width: 0;
    background-color: black;
    color: green;
    text-align: center; }
    @media screen and (min-width: 801px) and (max-height: 649px) {
      .player__input-name {
        width: 90%; } }
    @media screen and (min-width: 801px) {
      .player__input-name {
        margin-top: 4vmin;
        margin-bottom: 5px; } }
    .player__input-name::-webkit-input-placeholder {
      text-align: center;
      font-family: "Source Code Pro", monospace; }
    .player__input-name::-moz-placeholder {
      text-align: center;
      font-family: "Source Code Pro", monospace; }
    .player__input-name:-ms-input-placeholder {
      text-align: center;
      font-family: "Source Code Pro", monospace; }
    .player__input-name::-ms-input-placeholder {
      text-align: center;
      font-family: "Source Code Pro", monospace; }
    .player__input-name::placeholder {
      text-align: center;
      font-family: "Source Code Pro", monospace; }
    .player__input-name:invalid {
      background-color: maroon;
      color: black; }
  .player__button {
    font-family: "Source Code Pro", monospace;
    background-color: black;
    color: green; }
    @media screen and (min-width: 801px) and (min-height: 650px) {
      .player__button {
        margin-bottom: 15px; } }
  @media screen and (min-width: 801px) and (min-height: 650px) {
    .player__name, .player__status {
      font-size: 25px; } }
  @media screen and (min-width: 801px) and (max-height: 649px) {
    .player__name, .player__status {
      font-size: 22px; } }
  @media screen and (max-width: 800px) {
    .player__name, .player__status {
      font-size: 16px; } }
  .player__operator {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    line-height: 1; }
    @media screen and (min-width: 801px) and (min-height: 650px) {
      .player__operator {
        font-size: 50px; } }
    @media screen and (min-width: 801px) and (max-height: 649px) {
      .player__operator {
        font-size: 40px; } }
    @media screen and (max-width: 800px) {
      .player__operator {
        font-size: 30px; } }

.wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: center;
  align-items: center; }

.scoreboard {
  color: green; }
  @media screen and (min-width: 801px) and (min-height: 650px) {
    .scoreboard {
      font-size: 50px;
      margin-bottom: 10%; } }
  @media screen and (min-width: 801px) and (max-height: 649px) {
    .scoreboard {
      font-size: 35px;
      margin-bottom: 5%; } }
  @media screen and (max-width: 800px) {
    .scoreboard {
      font-size: 30px;
      margin-bottom: 15px; } }

.field {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr 1fr;
  -webkit-box-align: center;
  align-items: center;
  justify-items: center; }
  @media screen and (min-width: 801px) and (min-height: 650px) {
    .field {
      width: 50vmin;
      height: 50vmin;
      margin-bottom: 10%; } }
  @media screen and (min-width: 801px) and (max-height: 649px) {
    .field {
      width: 60vmin;
      height: 60vmin;
      margin-bottom: 5%; } }
  @media screen and (max-width: 800px) {
    .field {
      width: 70vmin;
      height: 70vmin;
      margin-bottom: 15px; } }
  .field__cell {
    text-align: center;
    width: 85%;
    height: 85%;
    background-color: green;
    border-radius: 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-family: "Sriracha", cursive; }
    @media screen and (min-width: 801px) {
      .field__cell {
        font-size: 10vmin;
        line-height: 14vmin; } }
    @media screen and (max-width: 800px) {
      .field__cell {
        font-size: 13vmin;
        line-height: 17vmin; } }

.restart {
  font-family: "Source Code Pro", monospace;
  background-color: green;
  color: black; }
  @media screen and (min-width: 801px) and (min-height: 650px) {
    .restart {
      font-size: 30px; } }
  @media screen and (min-width: 801px) and (max-height: 649px) {
    .restart {
      font-size: 25px; } }
  @media screen and (max-width: 800px) {
    .restart {
      font-size: 20px;
      margin-bottom: 15px; } }

.helper {
  font-family: "Source Code Pro", monospace;
  padding: 10px 15px;
  position: fixed;
  background-color: black;
  color: green;
  text-align: center; }
  @media screen and (min-width: 801px) and (max-height: 649px) {
    .helper {
      font-size: 12px; } }
  @media screen and (min-width: 801px) {
    .helper {
      bottom: 10px;
      right: 10px; } }
  @media screen and (max-width: 800px) {
    .helper {
      top: 45%;
      border: 2px solid maroon; } }

.leaderboard {
  width: 255px;
  margin: 0 auto 15px;
  border-radius: 20px;
  padding: 15px 25px;
  background-color: green;
  font-family: "Source Code Pro", monospace;
  text-align: center; }
  .leaderboard__name {
    margin-bottom: 10px; }
  .leaderboard__field {
    text-align: left;
    margin: 0 auto 10px 33px;
    line-height: 25px;
    font-size: 20px; }
  .leaderboard__button {
    margin: 7px;
    width: 120px;
    color: green;
    background-color: black; }
  .leaderboard__reset {
    border: 2px solid maroon; }
