:root {
  --day: #ffffff;
  --night: #1d1d1d;

  --grey: #545454;
  --white: #ffffff;
  --black: #000000;
  --background-color: var(--grey);
  --text-color: var(--white);
}

body {
  background-color: var(--background-color);
  color: var(--text-color);
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14pt;
  height: 100%;
  margin: 0;
}

.title {
  margin-left: 2rem;
}
.playerName {
  margin-left: 2rem;
  font-size: 18pt;
}

#mouseOverlay {
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--background-color);
  z-index: 999; /* Ensure the overlay is on top of other content */
}

#nameInput {
  position: absolute;
  width: 9rem;
  text-align: center;
  background-color: var(--background-color);
  color: var(--text-color);
  font-size: 15pt;
}

#center-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#chart-container {
  width: 80rem;
}
.on-visibility {
  display: block;
}

.off-visibility {
  display: none;
}

.low-visibility {
  opacity: 33%;
}

.mid-visibility {
  opacity: 66%;
}

.high-visibility {
  opacity: 100%;
}

.error {
  color: rgb(235, 0, 0);
}
#arenaTop {
  /* border: solid 2px blue; */
  display: flex;
  justify-content: space-between;
}
#questParagraph {
  display: flex;
  justify-content: center;
  width: 600px;
  font-size: 30pt;
  text-overflow: clip;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#typePast {
  /* border: solid 2px rgb(0, 255, 238); */
  width: 300px;
  white-space: nowrap;
  overflow: hidden;
  direction: rtl; /*works like text-align end and puts the overflow to the front*/
}
#typePresent {
  /* border: solid 2px blue; */
  white-space: pre;
  overflow: hidden;
  text-overflow: clip;
}
#typeFuture {
  /* border: solid 2px greenyellow; */
  width: 300px;
  white-space: pre;
  overflow: hidden;
  text-overflow: clip;
}

#questLine {
  position: relative;
  /* border: solid 2px green; */
  margin-left: auto;
  margin-right: auto;
}
#textVignette {
  position: fixed;
  width: 610px;
  height: 90px;
  background: radial-gradient(
    circle,
    rgba(255, 255, 255, 0) 70%,
    var(--background-color) 90%
  );
  z-index: 998;
}

#cursor {
  font-weight: bold;
}
#timer {
  text-align: center;
  font-size: 22pt;
}

#monsterBox {
  height: 16rem;
  font-size: 20pt;
  text-shadow: 1pt 1pt 3px gray;
  /* border: solid 2px darkred; */
  padding: 10px;
}
.boxRow {
  /* border: solid 1px green; */
  display: flex;
  justify-content: center;
  align-items: center;
}
.box1 {
  border: solid 1px blue;
}
.frame,
.monster {
  margin: 0px;
}
.monbox {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.monDisplay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -59%);
}
/* vvv  KeyBoard  vvv */

#keyboard-container {
  margin-top: 5px;
  width: 60rem;
  border: solid 0.4rem rgb(70, 70, 70);
  border-radius: 15px;
}

#row {
  max-width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  background-color: rgb(70, 70, 70);
}

.activeKey {
  border-color: white;
  background-color: lightseagreen;
  color: white;
}

label {
  width: 6%;
  border: solid 0.2rem grey;
  border-radius: 10px;
  color: var(--text-color);
  background-color: var(--background-color);
  margin: 0.1rem;
  padding: 0.8rem 0.4rem;
  text-align: center;
}

#key0 {
  width: 8%;
}
#key27 {
  width: 8%;
  border-bottom-right-radius: 0px;
}

.enterMidBackR {
  border: solid 0.1rem grey;
  position: absolute;
  bottom: 40px;
  right: 0;
  width: 100%;
  height: 1.1rem;
  background-color: grey;
}
.enterMidBackL {
  border: solid 0.1rem grey;
  position: absolute;
  bottom: 40px;
  left: 0rem;
  width: 100%;
  height: 1.1rem;
  background-color: grey;
}
.enterMid {
  position: absolute;
  bottom: 38px;
  left: 0;
  width: 100%;
  height: 1.7rem;
  background-color: var(--background-color);
}
.enterBottom {
  position: relative;

  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}

.activeKey {
  border-color: white;
  background-color: lightseagreen;
  color: white;
}

#key13,
#key14 {
  width: 11%;
}
#key28 {
  width: 13%;
}

#key41, /*shift_l*/
#key54, /*ctrl_l*/
#key56, /*cmd_l*/
#key58, /*cmd_r*/
#key60 {
  /*ctrl_r*/
  width: 10%;
}

#key53 {
  /*shift_r*/
  width: 18%;
}
#key57 {
  /*space*/
  width: 50%;
  color: lightseagreen;
}
#key55, /*alt*/
#key59 {
  /*altGr*/
  width: 8%;
}

.invisible {
  border: none;
  background-color: transparent;
}

/* ########Chart js */
#canvasholder {
  /* height: 23rem; */

  border: solid 3px grey;
  border-radius: 10px;
  padding: 10px;
}

.idb-notification {
  font-size: 10pt;
}
