html,
body {
  margin: 0;
  height: 100%;
  background: #05080f;
  overflow: hidden;
  overscroll-behavior: none;
}

body {
  display: flex;
  align-items: center;
  justify-content: center;
}

#game {
  display: block;
  cursor: none;
  touch-action: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
  box-shadow: 0 0 60px rgba(0, 0, 0, 0.6);
}

#name-entry {
  position: fixed;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5em;
  font: 900 20px "Arial Black", "Arial Bold", Arial, sans-serif;
  color: #ffe27a;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.7);
  transform: translate(-50%, 0);
  white-space: nowrap;
}

#name-entry[hidden] {
  display: none;
}

#name-entry .row {
  display: flex;
  gap: 0.4em;
}

#name-entry input,
#name-entry button {
  font: inherit;
  font-size: 1em;
  border-radius: 0.5em;
  border: 3px solid #2a1a0a;
  padding: 0.3em 0.6em;
}

#name-entry input {
  width: 11em;
  background: #fffaf0;
  color: #2a1a0a;
  text-shadow: none;
  outline: none;
}

#name-entry input:focus {
  border-color: #ffb347;
  box-shadow: 0 0 0 3px rgba(255, 179, 71, 0.45);
}

#name-entry button {
  cursor: pointer;
  background: linear-gradient(#ffe27a, #ffb347);
  color: #2a1a0a;
  text-shadow: none;
}

#name-entry button.ghost {
  background: rgba(10, 18, 35, 0.7);
  color: #dfe8ff;
  border-color: #dfe8ff55;
}

#fs-btn {
  position: fixed;
  z-index: 9;
  display: grid;
  place-items: center;
  padding: 0;
  border-radius: 12px;
  border: 2px solid rgba(223, 232, 255, 0.35);
  background: rgba(10, 18, 35, 0.6);
  color: #fff;
  cursor: pointer;
  opacity: 0.75;
  transition: opacity 0.15s, transform 0.15s;
  -webkit-tap-highlight-color: transparent;
}

#fs-btn[hidden] {
  display: none;
}

#fs-btn:hover,
#fs-btn:focus-visible {
  opacity: 1;
  transform: scale(1.08);
  border-color: #ffe27a;
  outline: none;
}

#fs-btn svg {
  width: 62%;
  height: 62%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#fs-btn .exit,
:fullscreen #fs-btn .enter {
  display: none;
}

:fullscreen #fs-btn .exit {
  display: block;
}
