:root { color-scheme: dark; background: #000; }
* { box-sizing: border-box; }
html, body { margin: 0; width: 100%; height: 100%; overflow: hidden; background: #000; }
body { position: fixed; inset: 0; }
video { display: block; width: 100%; height: 100%; object-fit: cover; background: #000; opacity: 0; outline: none; }
video[data-playing="true"] { opacity: 1; }
video::-webkit-media-controls { display: none !important; }
body[data-idle="true"] { cursor: none; }
.sound-button {
  position: fixed;
  top: calc(16px + env(safe-area-inset-top, 0px));
  right: calc(16px + env(safe-area-inset-right, 0px));
  z-index: 1;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 16%);
  border-radius: 50%;
  background: rgb(0 0 0 / 28%);
  color: rgb(255 255 255 / 78%);
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.sound-button[hidden] { display: none; }
.sound-button:hover { background: rgb(0 0 0 / 45%); color: #fff; }
.sound-button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.sound-button svg { pointer-events: none; }
