/*
@font-face {
  font-family: TypeWriter;
  src: url('../font/typewcond_regular.otf') format('opentype');
}

@font-face {
  font-family: TypeWriter;
  font-weight: bold;
  src: url('../font/typewcond_bold.otf') format('opentype');
}

@font-face {
  font-family: TypeWriter;
  font-style: italic, oblique;
  src: url('../font/typewcond_demi.otf') format('opentype');
}
*/
html, body {
	margin: 0;
	padding: 0;
  width: 100%;
  height: 100%;
}

body {
  overflow: hidden;
  background: #120a16 url(../img/ui/surface.jpg) center center no-repeat;
  background-size: cover;
}

body * {
  box-sizing: border-box;
  user-select: none;
}

#cover {
  pointer-events: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  overflow: hidden;
  z-index: 100;
}

#cover:after {
  content: '';
  display: block;
  width: 100vw;
  height: 100vh;
  background: radial-gradient(ellipse at center 30%, rgba(0,0,0,0) 0%,rgba(0,0,0,0) 60%,rgba(0,0,0,0.6) 90%,rgba(0,0,0,0.8) 100%);
  position: absolute;
  top: 0; left: 0;
}

#viewport {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 1920px;
  height: 1080px;
  background-repeat: no-repeat;
  transform: translate(-50%, -50%);
  transform-origin: center;
  z-index: 10;
}

main {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 5;
}

.ui-screen {
  position: absolute;
  width: 100%;
  height: 100%;
  transition: transform 0.2s ease-out;
}

.out--left {
  transform: translateX(-150vw) !important;
}

.out--right {
  transform: translateX(150vw) !important;
}

.out--bottom {
  transform: translateY(150vh) !important;
}

.out--top {
  transform: translateY(-150vh) !important;
}
