:root { --content-height: 100vh; --language-height: 10vh; --bottom-height: 10vh; --nav-top: 25vh; } [is="x-ui"] { font-family: sans-serif; font-size: 1.5em; } body { margin: 0; padding: 0; } .hidden { display: none !important; } #content { display: table; padding: 0; margin: 0; width: 100%; height: var(--content-height); } #content .added { background-repeat: no-repeat; background-position: center; background-size: contain; width: 100vw; height: 100vh; } #control { position: absolute; padding: 0; margin: 0; height: var(--bottom-height); bottom: 0; width: 100%; } #control > button { position: absolute; bottom: 0.5em; outline: 0; } #control > button::-moz-focus-inner { border: 0; } #control button[name=previous] { left: 4em; } #control button[name=first] { left: 1em; } #control button[name=error] { left: 50%; transform: translate(-50%, 0); } #control button[name=next] { right: 4em; } #control button[name=last] { right: 1em; } #reasons { position: absolute; bottom: var(--bottom-height); left: 50%; transform: translate(-50%, 0); } #reasons button { width: 100%; } #nope { display: table-cell; font-weight: bold; vertical-align: middle; text-align: center; height: 100%; width: 100%; font-size: 3em; } #nav { position: absolute; right: 0; top: var(--nav-top); left: 0; } #languages { position: absolute; right: 0; top: 0; flex: 0 1 auto; text-align: right; font-size: var(--language-height); } @font-face { font-family: flag-font; src: local("BabelStoneFlags.ttf") format("truetype"); } .lang-select-item { padding-right: 0.1em; font-family: flag-font; }