body,html{
	margin:0;
	padding:0;
	border:0;
	font-family: 'Roboto', sans-serif;
	color:#ffffff;
	background-color:#0079c3;
	font-size:18px;
	/* height:100%; */
}
* {
	box-sizing:border-box;
}
#menu{
	position:fixed;
	width:100%;
	/*background-color:rgba(0,0,0,0.8);*/
	background: linear-gradient(to bottom, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 15%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	z-index:20;
}
#root{
	height:100%;
}
#main{
	height:100%;
}
@media(max-width:1024px){
	.question-container{
		padding:0 10px;
	}
}
#footer{
	position:fixed;
	bottom:0;
	left:0;
	right:0;
	background-color:rgba(255,255,255,0.0);
	font-size:0.8rem;
	padding:2px;
	text-align:center;
}
#impressum{
	text-align:left;
	width:100%;
	max-width:1000px;
	margin:0 auto;
}
/* Start / Login */
#start{
	text-align:center;
	margin:0 auto;
}
.start-login-input{
	width:420px;
	padding:15px 25px;
	background-color:#ffffff;
	border:0;
	margin-bottom:5px;
	font-size:20px;
}
.login-icon{
	position:relative;
	margin-left:-35px;
	left:-10px;
	vertical-align:middle;
}
.start-login input[type="submit"]{
	width:auto;
	padding:8px 30px;
	background:#ff962f;
	border:2px solid #000000;
	-webkit-appearance:none;
	-webkit-border-radius:6px;
	border-radius:6px;
	font-weight:700;
	color:#ffffff;
	font-size:20px;
}

.button{
	width:auto;
	padding:8px 30px;
	background-color:#ff962f;
	border:2px solid #000000;
	-webkit-appearance:none;
	-webkit-border-radius:6px;
	border-radius:6px;
	font-weight:700;
	color:#ffffff;
	font-size:20px;
	display:inline-block;
}
.start-empty{
	display:inline-block;
	height:20px;
	width:100px;
}

#logo{
	
}
@media(max-width:1024px){
	#logo{
		width:200px;
	}
}

/* Map */

#map{
	background-size:cover;
	background-position:center;
	width:100%;
	height:100%;
	position:relative;
	line-height:0;
	text-align:center;
	overflow:hidden;
}
#map canvas{
	width:100%;
	height:auto;
	margin:0 auto;
}
@media (min-aspect-ratio:16/9){
	html,body{
		height:100%;
	}
	#map canvas{
		height:100%;
		width:auto;
	}
}
#map.tutorial1 canvas{
	transform:scale(1.75);
	transform-origin:35% 20%;
}
.map-progress{
	position:absolute;
	top:20px;
	left:20px;
}
.icons-map{
	position:fixed;
	right:20px;
	bottom:20px;
}
.icons-map div{
	display:inline-block;
	cursor:pointer;
}

.icons-album{
	position:fixed;
	left:20px;
	bottom:20px;
}
.icons-map div, .icons-album div{
	display:inline-block;
	cursor:pointer;
}

.icons-category{
	position:fixed;
	bottom:23px;
	left:0;
	width:100%;
	text-align:center;
}

.album-category{
	background-color:#ffffff;
	display:inline-block;
	border:2px solid #000000;
	box-shadow:0 6px 6px rgba(0,0,0,0.3);
	padding:8px 40px;
	font-weight:700;
	font-size:28px;
	color:#000000;
}
@media(max-width:820px){
	.album-category{
		font-size:20px;
	}
}
.album-description{
	margin-top:20px;
}
.album-images{
	box-sizing:content-box;
	padding-bottom:20px;
}
.album-image{
	display:inline-block;
	width:150px;
	height:150px;
	margin:10px;
	border:4px dashed #ffffff;
	position:relative;
	background-color:#2680bd;
	cursor:pointer;
	background-size:cover;
	background-position:center;
}
.album-image.finished{
	border:4px solid #ffffff;
}
.album-image.completed{
	border:7px solid #ffc000;
	cursor:auto;
}
.album-image.locked{
	background-image:url('../images/lock.png');
	background-size:40%;
	background-repeat:no-repeat;
}
.album-images a:nth-child(3n) .album-image{
	height:320px;
}
.album-images a:nth-child(7n) .album-image{
	width:320px;
}
.album-image:hover{
	border-color:#fff15f;
}
.album-number{
	position:absolute;
	bottom:10px;
	left:10px;
	color:#9dc6e1;
	font-weight:700;
	font-size:24px;
}
.album-text{
	position:absolute;
	bottom:10px;
	left:10px;
	right:10px;
	color:#ffffff;
	font-weight:700;
	font-size:14px;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 1);
}

/* Questions */

.question-counter{
	display:inline-block;
	margin-right:20px;
	margin-top:15px;
	float:left;
}
.question-timer{
	display:inline-block;
	margin-left:20px;
	margin-top:15px;
	float:right;
}
.question-header{
	display:inline-block;
}
.question-top:after{
	content:'';
	display:block;
	clear:both;
}

.question-container{
	max-width:820px;
	margin:0 auto;
}

.question-text{
	width:100%;
	padding:10px;
	background-color:#ffffff;
	color:#000000;
	font-size:16px;
	border:2px solid #000000;
	margin: 15px 0;
	min-height:100px;
	text-align:left;
	position:relative;
}
.question-arrow{
	position:absolute;
	top:-20px;
	left:30px;
}
.question-answers{
	
}
.question-answers:after{
	content:'';
	display:block;
	clear:both;
}
.question-answer{
	display:inline-block;
	width:49%;
	float:left;
	min-height:130px;
	padding:10px;
	border:2px solid #000000;
	border-radius:6px;
	background-color:#09a9dd;
	position:relative;
	margin-bottom:20px;
	text-align:left;
	cursor:pointer;
}
.question-answer:nth-child(2n){
	float:right;
}
.question-answer.correct{
	background-color:#11ae5c;
}
.question-answer.wrong{
	background-color:#e51837;
}
.answer-text{
	color:#ffffff;
	font-size:16px;
	position:relative;
	z-index:2;
	text-align:left;
}
.answer-name{
	position:absolute;
	bottom:3px;
	left:3px;
	font-size:80px;
	font-weight:700;
	color:rgba(255,255,255,0.3);
	z-index:1;
	line-height:0.8em;
}

/* Result */

.result-table{
	margin:0 auto;
	width:100%;
	max-width:800px;
	font-size:1.3rem;
}
.result-table td{
	height:90px;
	vertical-align:middle;
}
.result-answer{
	border-bottom:1px solid #ffffff;
}

.quizresult-building1{
	background-position:33.333% 100%;
	background-image:url('../images/map/01_building.png');
	width:calc(1592px/4);
	height:calc(868px/2);
	margin:0 auto;
}
.quizresult-building2{
	background-position:33.333% 100%;
	background-image:url('../images/map/02_building.png');
	width:calc(1280px/4);
	height:calc(772px/2);
	margin:0 auto;
}
.quizresult-building3{
	background-position:33.333% 100%;
	background-image:url('../images/map/03_building.png');
	width:calc(1616px/4);
	height:calc(734px/2);
	margin:0 auto;
}
.quizresult-building4{
	background-position:33.333% 100%;
	background-image:url('../images/map/04_building.png');
	width:calc(1680px/4);
	height:calc(880px/2);
	margin:0 auto;
}
.quizresult-building5{
	background-position:33.333% 100%;
	background-image:url('../images/map/05_building.png');
	width:calc(1592px/4);
	height:calc(612px/2);
	margin:0 auto;
}
.quizresult-building6{
	background-position:33.333% 100%;
	background-image:url('../images/map/06_building.png');
	width:calc(1344px/4);
	height:calc(668px/2);
	margin:0 auto;
}

/* Overlay */
.overlay{
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:rgba(0,0,0,0.5);
	z-index:100;
	text-align:center;
	display:none;
	opacity:0;
}
.overlay-box{
	background-color:#ffffff;
	width:100%;
	max-width:400px;
	padding:10px;
	background-color:#ffffff;
	color:#000000;
	font-size:16px;
	border:2px solid #000000;
	min-height:100px;
	text-align:left;
	position:relative;
	display:inline-block;
	vertical-align:middle;
}
.overlay:after{
	content:'';
	display:inline-block;
	width:0;
	height:100%;
	vertical-align:middle;
}
.overlay-icon{
	float:left;
	margin:0 10px 10px 0;
}
.overlay-button{
	margin-top:30px;
	text-align:center;
	cursor:pointer;
}

.help-content{
	max-width:900px;
	margin:0 auto;
}

@media(max-width:1024px){
	.icons-album{
		bottom:10px;
		left:10px;
	}
	.icon-back img{
		width:50px;
	}
}

.jokers{
	position:absolute;
	top:40%;
	left:20px;
}
.joker-50, .joker-phone{
	display:inline-block;
	margin-bottom:20px;
	height:60px;
	width:80px;
	line-height:2em;
	cursor:pointer;
	
	padding:8px;
	background-color:#ff962f;
	border:2px solid #000000;
	border-radius:12px;
	font-weight:700;
	color:#ffffff;
	font-size:20px;
	display:inline-block;
	text-align:center;
}
@media(max-width:1000px){
	.jokers{
		top:10px;
		left:0;
		right:0;
		text-align:center;
		
	}
	.joker-50, .joker-phone{
		padding:4px;
		height:50px;
		width:80px;
		margin-bottom:5px;
		display:inline-block;
		vertical-align:top;
	}
	.joker-50{
		margin-right:200px;
		top:0;
	}
	.joker-phone{
		top:0;
	}
	.jokers br{
		display:none;
	}
	.map-progress canvas{
		width:50%;
		height:auto;
	}
}
@media(max-width:750px){
	#main,#root,body{
		height:auto;
	}
	html.page_map, body.page_map, .page_map #main, .page_map #root{
		height:100%;
	}
	.icons-album{
		position:relative;
		left:auto;
		bottom:auto;
		margin-left:20px;
		
	}
	.icons-category{
		position:relative;
		left:auto;
		bottom:auto;
		margin-top:30px;
		margin-bottom:10px;
	}
	.question-header{
		opacity:0;
		display:none;
	}
	#footer{
		position:static;
	}
	.result-table{
		font-size:1rem;
	}
	.jokers{
		top:10px;
		left:0;
		right:0;
		text-align:center;
	}
	.joker-50, .joker-phone{
		padding:4px;
		height:50px;
		width:80px;
		margin-bottom:5px;
		margin-right:0;
	}
	.jokers br{
		display:block;
	}
	.map-progress canvas, .map-progress br {
		display:none;
	}
	.map-progress{
		position:fixed;
		top:auto;
		bottom:20px;
	}
}
@media(max-width:400px){
	.question-answer{
		width:100%;
		min-height:0;
		padding-left:20px;
	}
	.answer-name{
		font-size:1rem;
	}
}

a{
	color:#ffffff;
	text-decoration:none;
}
a:hover{
	color:#ff962f;
	text-decoration:none;
}
