html {
	box-sizing: border-box;
}

*,*:before,*:after {
	box-sizing: inherit;
}

body {
	margin: 0;
	padding: 0;
	background-color:white;
}

.noselect,.usabilla_live_button_container {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}


/* loading spinning 3d cube */

.logo_container {
  margin-left: auto;
  margin-right: auto;
  width: 100px;
  height: 140px;
  position: relative;
  -webkit-perspective: 400px;
  -moz-perspective: 400px;
}
.logo_container .logo{
  width: 100%;
}

#cube {
  width: 100%;
  height: 100%;
  position: absolute;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
}

#cube div {
  width: 100px;
  height: 100px;
  display: block;
  position: absolute;
  border: none;
  line-height: 100px;
  text-align: center;
  font-size: 50px;
  font-weight: bold;
}

.front {
  background: rgba(255,255,255,1.0);
}
.back {
  background: rgba(255,255,255,1.0);
  
}
.right {
  background: rgba(230,230,230,1.0);
}
.left {
  background: rgba(240,240,240,1.0);
}
.top {
  background: rgba(250,250,250,1.0);
}
.bottom {
  background: rgba(255,255,255,1.0);
}
.shadow {
  background: rgba(0,0,0,0.1);
}

#cube .front  {
  -webkit-transform: rotateY(0deg ) translateZ( 50px );
  -moz-transform: rotateY( 0deg ) translateZ( 50px );
}
#cube .back {
  -webkit-transform: rotateZ( 180deg ) rotateX( 180deg ) translateZ( 50px );
  -moz-transform: rotateZ( 180deg ) rotateX( 180deg ) translateZ( 50px );
}
#cube .right  {
  -webkit-transform: rotateY(  90deg ) translateZ( 50px );
  -moz-transform: rotateY(  90deg ) translateZ( 50px );
}
#cube .left   {
  -webkit-transform: rotateY( -90deg ) translateZ( 50px );
  -moz-transform: rotateY( -90deg ) translateZ( 50px );
}
#cube .top    {
  -webkit-transform: rotateX(  90deg ) translateZ( 50px );
  -moz-transform: rotateX(  90deg ) translateZ( 50px );
}
#cube .bottom {
  -webkit-transform: rotateX( -90deg ) translateZ( 50px );
  -moz-transform: rotateX( -90deg ) translateZ( 50px );
}
#cube .shadow {
  -webkit-transform: rotateX( -90deg ) translateZ( 80px );
  -moz-transform: rotateX( -90deg ) translateZ( 80px );
}

.usabilla_live_button_container
{
	transform: rotate(90deg);
	right: 210px !important;
    top: 18px !important;
}
@media (orientation: portrait) {
  .usabilla_live_button_container {
    display:none;
  }
}

/* Menu bar */
#top-menu-bar {
	z-index: 999;
	position: fixed;
	top: 0px;
	height: 62px;
	width: 100%;
	background-color: white;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}
.dropshadow {
	-webkit-box-shadow: 0px -1px 5px 5px rgba(0,0,0,0.1);
	box-shadow: 0px -1px 5px 5px rgba(0,0,0,0.1);
}
#top-menu-logo{
	float:left;
	height:100%;
	padding: 10px;
}
#top-menu-feature-request{
    margin: 9px;
    padding: 9px;
    color: white;
    font-weight: bold;
    background-color: #004699;
    width: 200px;
    min-height: 37px;
    position: fixed;
    z-index: 9999;
    right: 95px;
    text-align: center;
    border: 0px;
    border-radius: 8px;
	transition: 0.3s;
}
	#top-menu-feature-request form{
		display:none;
	}
	#top-menu-feature-request:hover,#top-menu-feature-request:active{
		width:280px;
		padding-bottom: 0px;
	}
	#top-menu-feature-request:hover form,#top-menu-feature-request:active form{
		display:block;
		margin: 12px;
	}

#top-menu-title a{
	color: black;
	float: left;
	line-height: 60px;
	font-size: 20px;
	font-weight: bold;
	margin-left: 20px;
}

#top-menu-hamburger {
	text-align: center;
	float: right;
	width: 30px;
	height: 30px;
	margin: 15px;
	cursor: pointer;
}
	#top-menu-hamburger img{
		height:100%;
	}
#menu {
	cursor: pointer;
	display: none;
	z-index: 998;
	position: fixed;
	top: 60px;
	right: 0px;
	width: 360px;
	background-color: white;
	animation: rotateMenu 300ms ease-in-out forwards;
	transform-origin: top center;
}

.menu-item {
	height: 50px;
	width: 100%;
	border: 1px solid #999999;
	border-top: none;
	background-color: white;
	line-height: 30px;
	padding: 10px;
}
.menu-item:hover {
	font-weight:bold;
}

@keyframes rotateMenu {
	0% {
		transform: rotateX(-90deg)
	}

	70% {
		transform: rotateX(20deg)
	}

	100% {
		transform: rotateX(0deg)
	}
}

.show {
	display: block !important;
}

#content {
	margin-top: 50px;
	width: 100%;
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	padding: 30px;
	background-color: white;
}
	#content .highlighted-block {
		background-color: #014699;
		max-width: 60%;
		padding: 20px 40px 20px 40px;
		color: white;
	}

/* Mobile notice */
#mobile-notice-container {
	width: 100%;
	height: auto;
	margin-top: -30px;
	margin-bottom: 30px;
}
	#mobile-notice-container #backdrop {
		left: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		max-width: 100vw;
		position: relative;
		right: 50%;
		width: 100vw;
	}
#mobile-notice {
	display: inline-flex;
	font-weight: bold;
	background-color: #ffffffe3;
	left: 50%;
	margin-left: -40vw;
	margin-right: -40vw;
	max-width: 80vw;
	top: 38vw;
	right: 50%;
	width: 100%;
	position: absolute;
	float: left;
	padding: 16px;
}
	#mobile-notice img {
		display: table-cell;
		vertical-align: middle;
		float: left;
		margin-right: 5%;
		width: 20%;
	}

/* Unity */
#unity-container {	position: fixed;	padding-top: 60px;background-color: #383838; }
#unity-container.unity-desktop { width: 100%; height: 100% }
#unity-container.unity-mobile { width: 100%; height: 100% }
#unity-canvas { background: #383838; }
#unity-canvas { width: 100%; height: 100% }
#unity-loading-bar { width: 200px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none }
#unity-progress-bar-empty { width: 100%; height: 100%; margin-top: 10px; background-color:grey; }
#unity-progress-bar-full { width: 0%; height: 10px; margin-top: 10px; background-color: #FFFFFF; }
#unity-mobile-warning { font-family: sans-serif; box-shadow: 4px 9px 14px 0px rgb(0 0 0 / 29%); position: absolute; left: 50%; top: 5%; transform: translate(-50%); background: white; padding: 10px; display: none }
#unity-progress-text{
	margin-top: 20px;
    color: #ffffff;
    font-family: sans-serif;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
}

/* try to handle mobile dialog */
canvas+* {
	z-index: 2;
}

.logo {
	display: block;
	max-width: 100vw;
	max-height: 70vh;
}

.progress {
	margin: 1.5em;
	border: 2px solid #e1e1e1;
	width: 300px;
	display: none;
}

.progress .full {
	background-color: #004699;
	height: 1em;
	transform-origin: top left;
}

.hiddenFollower {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 0px;
	height: 0px;
}

#copySharedURLButton {
	cursor:pointer;
	opacity: 0;
}

.hiddenFollower input {
	height: 100%;
	width: 100%;
	opacity: 0;
}

/*mobile overrides*/
@media screen and (max-width: 768px) {
	#menu {
		width: 100%;
		height: 100%;
		margin: 0;
		padding: 0;
	}

	.mobile-only{
		display: block;
	}

	.desktop-only {
		display: none;
	}

	.highlighted-block
	{
		margin-bottom: 20px;
	}

	#content .full-view-width {
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		max-width: 100vw !important;
		position: relative;
		width: 100vw;
	}
}

@media screen and (min-width: 769px) {
	.mobile-only {
		display: none;
	}

	.desktop-only {
		display: block;
	}
}