.status-indicators {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-left: 1.2vw;
}

.signalr-status {
  display: inline-block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 2px solid rgba(255, 255, 255, 0.85);
  border-radius: 50%;
  box-sizing: border-box;
}

.signalr-status--connected {
  display: none;
  background-color: #20c05c;
}

.signalr-status--connecting,
.signalr-status--reconnecting {
  background-color: #ffc107;
}

.signalr-status--disconnected {
  background-color: #dc3545;
}

.video-playback-status {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-top: 4px;
  flex: 0 0 18px;
  border: 2px solid rgba(255, 255, 255, 0.85);
  border-radius: 50%;
  box-sizing: border-box;
  color: #ffffff;
  font-size: 9px;
  line-height: 14px;
  text-align: center;
}

.video-playback-status--allowed {
  display: none;
  background-color: #20c05c;
}

.video-playback-status--permission-required {
  background-color: #ffc107;
}

.video-playback-status--blocked {
  background-color: #dc3545;
}

.media-playback-button {
  position: fixed;
  z-index: 10002;
  left: 50%;
  bottom: 14px;
  min-height: 48px;
  padding: 8px 28px;
  transform: translateX(-50%);
  border: 2px solid rgba(255, 255, 255, 0.9);
  border-radius: 8px;
  background-color: #ffc107;
  color: #1f1f1f;
  font: 700 22px/1.2 Arial, sans-serif;
  cursor: pointer;
}

.media-playback-button:focus {
  outline: 4px solid rgba(255, 255, 255, 0.9);
  outline-offset: 3px;
}
