@font-face {
  font-family: "Saeada";
  src: url(assets/fonts/df28054e79bbffe69ff92b76e531372e.otf) format("opentype");
}

/* =========================
   GLOBAL
========================= */
* {
  font-family: Saeada, sans-serif;
  margin: 0;
  padding: 0;
}

html,
body {
  background-color: #1f132e;
  overflow: hidden;
}

/* =========================
   THREE.JS CONTAINERS
========================= */
#webgl {
  width: 100vw;
  height: 100vh;
  pointer-events: auto;
}

#cssArcadeMachine,
#cssLeftMonitor,
#cssRightMonitor {
  pointer-events: none;
  cursor: pointer;
}

#drawing-canvas {
  background-color: #ffffff;
  display: none;
}

/* =========================
   BANNER / NAVBAR
========================= */
.banner {
  display: flex;
  background: linear-gradient(
    90deg,
    #1f132e,
    #2a1a3d,
    #3b2460
  );
  color: #eda72d;
  padding: 10px 0;
  text-align: center;
  font-size: 1.5vw;
  position: absolute;
  top: -90px;
  height: 60px;
  left: 0;
  width: 100vw;
  align-items: center;
  justify-content: space-around;
  z-index: 1;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.8);
  transition: top 0.5s ease-in-out;
}

.banner-link {
  user-select: none;
  cursor: pointer;
  margin: 0 1vw;
  transition: color 0.2s ease, transform 0.2s ease;
}

.banner-link:hover {
  color: #c084fc;
  transform: scale(1.1);
}

/* =========================
   BACK BUTTON
========================= */
.circular-button {
  position: absolute;
  bottom: 50px;
  left: 50px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background-color: #2a1a3d;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  transition: opacity 1s, visibility 1s, background-size 0.2s ease-in-out;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.8);
  z-index: 2;
  background-image: url(assets/images/72178d92e1249f02d8d66ea74bc64cfb.svg);
  background-size: 70%;
  background-position: center;
  background-repeat: no-repeat;
}

.show-back-button {
  visibility: visible;
  opacity: 1;
}

.circular-button:hover {
  background-size: 75%;
}

/* =========================
   WHITEBOARD BUTTONS
========================= */
.button-row {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  width: 100vw;
  bottom: 100px;
  display: flex;
  justify-content: center;
  z-index: 1;
  transition: opacity 1s, visibility 1s;
}

.show-button-row {
  visibility: visible;
  opacity: 1;
}

.circular-button-whiteboard {
  width: 100px;
  height: 100px;
  margin: 0 20px;
  border-radius: 50%;
  background-color: #2a1a3d;
  background-size: 70%;
  background-position: center;
  background-repeat: no-repeat;
  border: 5px solid transparent;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.8);
  transition: all 0.4s ease;
}

.circular-button-whiteboard:hover {
  background-size: 80%;
}

.whiteboard-selected {
  border-color: #eda72d;
}

/* =========================
   RUBIK MESSAGE
========================= */
.rubik-message {
  text-align: center;
  visibility: hidden;
  opacity: 0;
  color: #eda72d;
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  user-select: none;
  font-size: 1.5rem;
  transition: opacity 1s ease, visibility 1s ease;
}

.show-rubik-message {
  visibility: visible;
  opacity: 1;
}

/* =========================
   AUDIO BUTTON
========================= */
.audio-button {
  position: absolute;
  bottom: 50px;
  right: 50px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #2a1a3d;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  transition: opacity 1s, visibility 1s, background-size 0.2s ease-in-out;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.8);
  z-index: 2;
  background-image: url(assets/images/e735f2ace4717bfa3ee56b0c02d735a7.svg);
  background-size: 50%;
  background-position: center;
  background-repeat: no-repeat;
}

.show-audio-button {
  visibility: visible;
  opacity: 0.4;
}

.audio-button:hover {
  opacity: 1;
}

.audio-button-muted {
  background-image: url(assets/images/6df72fdeb4b9dbcd9aa8a33f5bdee896.svg);
}

/* =========================
   LOADING SCREEN
========================= */
.loadingScreen {
  user-select: none;
  width: 20vmin;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #2a1a3d;
  border: solid 0.5em #eda72d;
  color: #eda72d;
  display: flex;
  align-items: center;
  justify-content: space-around;
  text-align: center;
  font-size: 1.7em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 1);
  transition: visibility 1s ease, opacity 1s ease, color 1s ease,
    font-size 0.5s ease;
}

.loading-screen-hover:hover {
  font-size: 2.5em;
}

.finished-load {
  color: #2a1a3d !important;
}

.show-loading-screen {
  visibility: visible;
  opacity: 1;
}

/* =========================
   MOBILE WARNING
========================= */
.mobile-text {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  padding: 20px;
  width: 60%;
  color: #eda72d;
  z-index: 9999;
}


/*# sourceMappingURL=main.css.map*/