@font-face {
  font-family: "DK Cool Crayon";
  src: url("./fonts/DKCoolCrayon.woff2") format("woff2"),
    url("./fonts/DKCoolCrayon.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-stack: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif,
    "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --dark-green: #274c43;
  --light-green: #bbccbf;
  --input-bg: #d0e4d4;
}

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

body {
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  line-height: 1.5;
  font-family: "DK Cool Crayon", var(--font-stack);
  background-color: var(--dark-green);
  color: var(--light-green);
}

h1 {
  text-align: center;
  margin-bottom: 20px;
}

h1 + p {
  margin-bottom: 20px;
}

.modal[open] {
  background-color: var(--light-green);
  color: var(--dark-green);
  display: flex;
  width: 350px;
  flex-direction: column;
  justify-content: center;
  padding: 20px;
  border: none;
  border-radius: 4px;
  margin: auto;
}

.modal-header {
  margin-bottom: 20px;
}

.modal-header h2 {
  margin-bottom: 8px;
}

form {
  display: flex;
  flex-direction: column;
}

form label,
form input {
  margin-bottom: 12px;
  border: none;
}

form input {
  border-radius: 4px;
  font-family: "DK Cool Crayon", var(--font-stack);
  background-color: var(--input-bg);
  color: var(--dark-green);
  padding: 8px;
}

form input:focus {
  outline: 2px solid var(--dark-green);
}

form input::placeholder {
  color: rgba(39, 76, 67, 45%);
}

button {
  background-color: var(--dark-green);
  color: var(--light-green);
  font-size: 0.9rem;
  border: none;
  border-radius: 4px;
  padding: 12px 8px 8px 8px;
  margin-top: 8px;
  font-family: "DK Cool Crayon", var(--font-stack);
  cursor: pointer;
}

button:hover {
  background-color: #1f3d36;
}

.board {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.boardRow {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 10px;
  gap: 20px;
}

.boardCell {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 200px;
  border: 4px solid var(--light-green);
  font-size: 3rem;
  cursor: pointer;
}

.restart-button {
  margin-top: 24px;
  font-size: 1rem;
  border: 2px solid #bbccbf;
  color: #bbccbf;
}

.restart-button:hover {
  background-color: #bbccbf;
  color: #274c43;
}
