body, html { margin: 0px; padding: 0px; overflow: clip; width: 100vw; height: 100vh; } body > div { position: absolute; top: 0px; left: 0px; width: 100vw; height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; } #camview { max-width: 100vw; display: flex; flex-direction: column; align-items: center; justify-content: center; } @media (orientation:portrait) { #camview { width: 100vw; padding-left: 0px; padding-right: 0px; } } #camview.took { position: fixed; right: 0px; bottom: 0px; width: 150px; z-index: 100; display: inline-flex; background-color: white; padding: 10px; } #camview.took > button { font-size: 1em; } #video-container { max-width: 100%; } #camview > button { font-size: 2em; } #precanvas { height: 100%; max-height: 4in; max-width: 100vw; flex-shrink: 0; } #precanvas.took { position: absolute; right: 0px; top: 0px; max-height: 25vh; z-index: 7700; margin: 0px; } #preview { width: 100vw; display: inline-block; position: absolute; top: 50vh; left: 50vw; transform: translate(-50%, -50%); margin: 0px; } .offscreen { position: absolute; top: -10000px; left: -10000px; } video.unbounded { position: absolute; height: 100vw !important; width: auto; } #final { border: 1px solid black; } #picbar { position: absolute; bottom: 50px; left: 50vw; transform: translateX(-50%); z-index: 2; display: flex; flex-direction: row; width: max-content; } button { border-radius: calc(infinity * 1px); padding: 10px; font-size: 1.5em; border: none; margin: 10px; background-color: lightgrey; } button:hover { background-color: grey; } input { font-size: 1.5em; max-width: 100vw; } #details > span { font-size: 1.5em; } * { font-family: sans-serif; } #finalresult { align-items: stretch; } iframe { flex-grow: 3; } #details { overflow-y: auto; display: block; text-align: center; }