* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.container {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
}

.local-video-container {
  display: flex;
  justify-content: center;
}

#group-id {
  position: absolute;
  width: 100%;
  top: 0;
  color: #fff;
  font-size: 20px;
  text-align: center;
  background: #3b3b3b4d;
  z-index: 101;
}

video#localVideo {
  position: relative;
  top: 0;
  width: 100%;
  max-width: 800px;
  height: 30vh;
  background: #000;
  transition: 0.3s;
}

video#localVideo.calling {
  position: absolute;
  top: 0px;
  right: 50%;
  transform: translateX(50%);
  width: 100%;
  max-width: 800px;
  height: 100vh;
}

video#localVideo.calling.joined {
  position: absolute;
  top: 32px;
  right: 10px;
  max-width: 200px;
  height: fit-content;
  border-radius: 10px;
  transform: translateX(0);
  border: 1px solid #3b3b3b;
  box-shadow: rgba(255, 255, 255, 0.24) 0px 3px 8px;
  background-color: rgb(73, 73, 73);
  z-index: 100;

  @media screen and (max-width: 425px) {
    top: 48px;
    max-width: 100px;
  }
}

video#remoteVideo {
  display: none;
  width: 100%;
  height: 100vh;
  aspect-ratio: contain;
  background-color: black;
}

video#remoteVideo.joined {
  display: block;
  width: 100%;
  height: 100vh;
  aspect-ratio: contain;
  background-color: black;
}

.action-calling {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: none;
}

.action-zoom {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.action-zoom input {
  text-align: center;
  height: 40px;
  border-radius: 12px;
  border: 1px solid #3b3b3b;
}

.action-zoom button {
  height: 40px;
  border-radius: 12px;
  border: 1px solid #3b3b3b;
  background-color: #3b3b3b;
  color: white;
  cursor: pointer;
}