* { box-sizing: border-box; }

html, body {
  margin: 0;
  height: 100%;
  background: #000;
  color: #fff;
  overflow: hidden;
  overscroll-behavior: none;
  touch-action: none;
}

body {
  position: fixed;
  inset: 0;
  height: 100dvh;
  font-family: system-ui, sans-serif;
}

video-rtc {
  position: absolute;
  inset: 0;
  display: block;
  background: #000;
}

video-rtc video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  pointer-events: none;
  background: #000;
}

#note, #journal, #message {
  position: absolute;
  z-index: 2;
  margin: 0;
  text-shadow: 0 1px 4px #000;
}

#note {
  top: calc(12px + env(safe-area-inset-top));
  left: 16px;
  right: 96px;
  font-size: 14px;
}

#journal {
  top: calc(12px + env(safe-area-inset-top));
  right: 16px;
  color: #fff;
  font-size: 15px;
  text-decoration: none;
}

#message {
  left: 16px;
  right: 16px;
  bottom: calc(96px + env(safe-area-inset-bottom));
  text-align: center;
  font-size: 18px;
}

#open {
  position: absolute;
  z-index: 2;
  left: 16px;
  right: 16px;
  bottom: calc(16px + env(safe-area-inset-bottom));
  height: 64px;
  border: 0;
  border-radius: 16px;
  background: #fff;
  color: #111;
  font: 600 22px/1 system-ui, sans-serif;
}

#open:disabled {
  background: #cfcfcf;
}

#open[hidden], #message[hidden], #journal[hidden], video-rtc[hidden] {
  display: none !important;
}
