body {
  background: #333 !important;
  color: #fff !important;
  display: flex;
  justify-content: center;
  align-items: start;
}

p {
  margin: 0px !important;
}

i {
  font-style: normal;
}

.small {
  font-size: 1em !important
}

.jumbo {
  font-size: 8rem;
}


@media (max-width: 600px) {
  .small {
      font-size: 0.5em !important
  }
  .jumbo {
      display: none;
  }
  
}

#main {
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: center;
  font-size: 30px;
  width: 100%;
  max-width: 1200px;
}

video {
  width: 95%;
}

.pre-blob {
  display: flex;
  background: #333;
  border-radius: 50%;
  margin: 10px;
  height: 45px;
  width: 45px;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
}

.blob {
  background: rgba(231, 76, 60,1.0);
  box-shadow: 0 0 0 0 rgba(231, 76, 60,1.0);
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0px rgba(192, 57, 43, 1);
  }
  100% {
    box-shadow: 0 0 0 20px rgba(192, 57, 43, 0);
  }
}


.icon-sup-panel {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  background: #222;
  border-radius: 10px;
  padding: 5px;
  margin: 5px 0px 5px 0px;
}

.icon-sub-panel {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

#icon-panel {
  display: flex;
  width: 100%;
  justify-content: space-between;
  margin-top: 5px;
}

.icon-sub-sub-panel {
  display: flex;
  flex-direction: row;
}

.keys, #key-val {
  background: #333;
  padding: 2rem;
  margin: 5px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  cursor: pointer;
}

#key-val {
  pointer-events: none;
  background: #fff;
  color: #333;
  line-height: 1;
  font-size: 20px;
  flex-direction: column;
}

.wasd-row {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
}

#wasd {
  margin: 5px 0px 5px 0px;
  background: #222;
  border-radius: 10px;
  width: 100%;
  padding: 20px;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: stretch;

  user-select: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  touch-action: manipulation;
}

.panel {
  display: flex;
  justify-content: center;
  margin: 5px 0px 5px 0px !important;
  background: #222;
  border-radius: 10px;
  width: 100%;
  padding: 10px;
}

#ping-time, #battery {
  font-size: 25px;
}

#stop {
  display: none;
}

.plan-form {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

.details {
  display: flex;
  padding: 0px 10px 0px 10px;
}
