/* ---------- General ---------- */

#scene {
	position: absolute;
	top: 0;
	left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
	box-shadow: 0 0 10px grey;
}

.rowHighlight {
	background-color: darkred;
}

.text-label {
	cursor: pointer;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 20px;
	font-weight: bold;
	padding: 12px;
}

.text-label:hover {
	background-color: black;
	opacity: 0.7;
	color: white;
	border-radius: 2px;
}

.landmarkButton {
	position: absolute; 
	top: 40%; 
	right: -10%; 
	height: 150px; 
	width: 30px; 
	background-color: black; 
	box-shadow: 0 0 10px rgb(0, 0, 0); 
	z-index: 1; 
	border-top-left-radius: 30px; 
	border-bottom-left-radius: 30px; 
	opacity: 0.7; 
	transition: right 2s ease-in;
}

#renderCanvas {
	display: block;
    width: 100%;
    height: 100%;
    background-color: black;
    z-index: 0;
}

#helpTable {
	font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
	border-radius: 5px;
  border-collapse: collapse;
	width: 100%;
	font-size: 11px;
}

#scene:fullscreen #helpTable {
	font-size: 13px;
}

#helpTable td, #helpTable th {
  border: 1px solid #ddd;
  padding: 8px;
}

#helpTable tr:nth-child(even) {
	background-color: #818181;
}

#helpTable th {
  padding-top: 12px;
  padding-bottom: 12px;
  text-align: left;
  background-color: rgb(255,255,255);
}

.tableHeader {
	color: black;
	font-weight: bold;
	font-size: 15px;
	float: left;
	transform: translate(0%, 50%);
}

.treeview {
	position: absolute;
	top: 0; 
	left: 0; 
	height: 100%; 
	box-shadow: 0 0 10px rgb(0, 0, 0);
	z-index: 1; 
	background-color: black; 
	opacity: 0.7; 
	overflow: auto; 
	width: 0%; 
	transition: width 0.5s ease-in; 
	scrollbar-width: thin; 
	scrollbar-color: white black;
}

.treeview::-webkit-scrollbar {
	width: 5px;
	height: 5px;
	background-color: black;
}

.treeview::-webkit-scrollbar-thumb {
	background: white;
}

.landmarkList {
	list-style: none;
}

.landmarkList li {
	position: relative;
	background-color: rgb(32, 32, 32);
	color: white;
	padding: 3px;
	margin: 5px;
	border: 1px black;
	border-radius: 5px;
	width: 80%;
	white-space: nowrap;
	text-align: center;
}

.landmarkList li:hover {
	background-color: white;
	color: black;
	cursor: pointer;
}

.attributes {
	position: absolute;
	width: 25%;
	height: 40%;
	bottom: 50%;
	left: 50%;
	background-color: black;
	color: white;
	opacity: 0.7;
	border-radius: 7px;
	z-index: 1;
	padding: 5px;
	box-shadow: 0 0 10px black;
}

.attBody {
	overflow-y: auto;
	height: 90%;
	scrollbar-width: thin; 
	scrollbar-color: white black;
}

.attBody::-webkit-scrollbar {
	background-color: black;
	width: 5px;
	height: 5px;
}

.attBody::-webkit-scrollbar-thumb {
	background: white;
}

input[type=text] {
	width: 100%;
	padding: 12px;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box;
	resize: vertical;
}

label {
	padding: 12px 12px 12px 0;
	display: inline-block;
}

button {
	background-color: #4CAF50;
	color: white;
	padding: 12px 20px;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	float: right;
	margin-top: 5px;
}

.container {
	border-radius: 5px;
	padding: 20px;
}

.col-50 {
	float: left;
	width: 50%;
	margin-top: 6px;
}

.row:after {
	content: "";
	display: table;
	clear: both;
}

.error-box {
	position: fixed; 
	top: 20px; 
	left: 20px; 
	right: 20px; 
	padding: 20px;
	border-radius: 5px;
	background-color: #f7a7a3;
	border-left: 5px solid #8f130c;
	opacity: 0.9;
	box-shadow: 0 0 15px 5px #ccc;

	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.error-list {
	display: flex;
	flex-direction: column;

	font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
	font-size: 16px;
}

.error-list span {
	font-weight: bold;
}
.error-list table {
	padding-left: 10px;
}

.error-close {
	display: flex;
	justify-content: center;
	align-items: center;

	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 1px solid darkslategray;

	font-size: 24px;
	color: darkslategray;
	cursor: pointer;
}

/* ---------- Progress bar ----------*/

@supports (-ms-ime-align: auto) {
	.overlay {
		position: absolute;
		background-color: white;
		width: 100%; 
		height: 100%;
		opacity: 1;
		z-index: 2;
	}
}

@supports not (-ms-ime-align: auto) {
	.overlay {
		position: absolute;
		background-color: white;
		width: 100%; 
		height: 100%;
		opacity: 1;
		z-index: 2;
		transition: opacity 1s linear, z-index 1s 1s linear;
	}
}

.overlay h3 {
	font-family: Arial, Helvetica, sans-serif;
	position: absolute;
	top: 40%;
	left: 40%;
}

.hidden {
	opacity: 0 !important;
	z-index: -5 !important;
}

.slider-div {
	position:absolute;
	top: 50%;
	left: 10%;
	width: 80%;
	height:5px;
	overflow-x: hidden;
}
  
  .line{
	position:absolute;
	opacity: 0.4;
	background:#4a8df8;
	width:150%;
	height:5px;
  }
  
.subline {
	position:absolute;
	background:#4a8df8;
	height:5px; 
}

.inc {
	animation: increase 5s infinite;
}

.dec {
	animation: decrease 5s 0.5s infinite;
}

@keyframes increase {
	from { left: -5%; width: 5%; }
	to { left: 130%; width: 100%;}
}
@keyframes decrease {
	from { left: -80%; width: 80%; }
	to { left: 110%; width: 10%;}
}

/* ---------- Flex container ---------- */

.flex-container {
	display: none;
	flex-direction: row;
	justify-content: center;
	position: absolute; 
	bottom: 2%; 
	left: 30%;
	right: 30%;
	/* width: 40%;  */
	padding: 5px;
	background: black; 
	opacity: 0.6;
	border-radius: 20px;
	/* min-width: 370px; */
	z-index: 1;
}

.flex-container .button {
	display: inline-block;
	z-index: 1;
	margin: auto;
	width: 24px;
  height: 24px;
	border-radius: 5px;
	background-size: cover;
	background-repeat: no-repeat;
}

@media screen and (max-width: 1500px) {
	.flex-container {
		left: 10%;
		right: 10%;
	}
	#helpTable td, #helpTable th {
		border: 1px solid #ddd;
		padding: 4px;
	}
	/* .flex-container .button {
		width: 16px;
		height: 16px;
	} */
}

/* ---------- Images for control bar ---------- */

#home {
	background-image: url('../img/Home24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#home:hover {
	background-image: url('../img/Home_black24.png');
}

#arrow-down {
	background-image: url('../img/web-down24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#arrow-down:hover {
	background-image: url('../img/web-down24_black.png');
}

#arrow-up {
	background-image: url('../img/web-up24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#arrow-up:hover {
	background-image: url('../img/web-up24_black.png');
}

#arrow-left {
	background-image: url('../img/web-left24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#arrow-left:hover {
	background-image: url('../img/web-left24_black.png');
}

#arrow-right {
	background-image: url('../img/web-right24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#arrow-right:hover {
	background-image: url('../img/web-right24_black.png');
}

#rotate-left {
	background-image: url('../img/Rotate_left24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#rotate-left:hover {
	background-image: url('../img/Rotate_left24_black.png');
}

#rotate-right {
	background-image: url('../img/Rotate_right24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#rotate-right:hover {
	background-image: url('../img/Rotate_right24_black.png');
}

#zoom-in {
	background-image: url('../img/Zoom_in24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#zoom-in:hover {
	background-image: url('../img/Zoom_in24_black.png');
}

#zoom-out {
	background-image: url('../img/Zoom_out24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#zoom-out:hover {
	background-image: url('../img/Zoom_out24_black.png');
}

#ego {
	background-image: url('../img/Ego24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#ego:hover {
	background-image: url('../img/Ego24_black.png');
}

#plane.on {
	background-image: url('../img/Flymode_On24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#plane.on:hover {
	background-image: url('../img/Flymode_On24_black.png');
}

#plane.off {
	background-image: url('../img/Flymode_Off24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#plane.off:hover {
	background-image: url('../img/Flymode_Off24_black.png');
}

#orbit {
	background-image: url('../img/Perspektive24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#orbit:hover {
	background-image: url('../img/Perspektive24_black.png');
}

#help {
	background-image: url('../img/Web-help24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#help:hover {
	background-image: url('../img/Web-help24_black.png');
}

#shadow.off {
	background-image: url('../img/Shadow_Off24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#shadow.off:hover {
	background-image: url('../img/Shadow_Off_black24.png');
}

#shadow.on {
	background-image: url('../img/Shadow_On24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#shadow.on:hover {
	background-image: url('../img/Shadow_On_black24.png');
}

#fullscreen {
	background-image: url('../img/Fullscreen_On24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#fullscreen:hover {
	background-image: url('../img/Fullscreen_On24_black.png');
}

#auto-rotation.off {
	background-image: url('../img/Autorotate_Off24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#auto-rotation.off:hover {
	background-image: url('../img/Autorotate_Off24_black.png');
}

#auto-rotation.on {
	background-image: url('../img/Autorotate_On24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#auto-rotation.on:hover {
	background-image: url('../img/Autorotate_On24_black.png');
}

#download {
	background-image: url('../img/Screenshot24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#download:hover {
	background-image: url('../img/Screenshot24_black.png');
}

#elevator-up {
	background-image: url('../img/Elevator_up24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#elevator-up:hover {
	background-image: url('../img/Elevator_up24_black.png');
}

#elevator-down {
	background-image: url('../img/Elevator_down24.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#elevator-down:hover {
	background-image: url('../img/Elevator_down24_black.png');
}


/* ---------- Fullscreen / General ---------- */

#scene:fullscreen {
    border: none;
}

/* ---------- Fullscreen / Flex container ---------- */

#scene:fullscreen .flex-container .button {
	width: 32px;
	height: 32px;
}

@media screen and (max-width: 1500px) {
	#scene:fullscreen .flex-container .button {
		width: 22px;
		height: 22px;
	}
}

/* ---------- Fullscreen / Images for control bar ---------- */

#scene:fullscreen #home {
	background-image: url('../img/Home32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #home:hover {
	background-image: url('../img/Home_black32.png');
}

#scene:fullscreen #arrow-down {
	background-image: url('../img/web-down32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #arrow-down:hover {
	background-image: url('../img/web-down32_black.png');
}

#scene:fullscreen #arrow-up {
	background-image: url('../img/web-up32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #arrow-up:hover {
	background-image: url('../img/web-up32_black.png');
}

#scene:fullscreen #arrow-left {
	background-image: url('../img/web-left32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #arrow-left:hover {
	background-image: url('../img/web-left32_black.png');
}

#scene:fullscreen #arrow-right {
	background-image: url('../img/web-right32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #arrow-right:hover {
	background-image: url('../img/web-right32_black.png');
}

#scene:fullscreen #rotate-left {
	background-image: url('../img/Rotate_left32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #rotate-left:hover {
	background-image: url('../img/Rotate_left32_black.png');
}

#scene:fullscreen #rotate-right {
	background-image: url('../img/Rotate_right32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #rotate-right:hover {
	background-image: url('../img/Rotate_right32_black.png');
}

#scene:fullscreen #zoom-in {
	background-image: url('../img/Zoom_in32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #zoom-in:hover {
	background-image: url('../img/Zoom_in32_black.png');
}

#scene:fullscreen #zoom-out {
	background-image: url('../img/Zoom_out32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #zoom-out:hover {
	background-image: url('../img/Zoom_out32_black.png');
}

#scene:fullscreen #ego {
	background-image: url('../img/Ego32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #ego:hover {
	background-image: url('../img/Ego32_black.png');
}

#scene:fullscreen #plane.on {
	background-image: url('../img/Flymode_On32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #plane.on:hover {
	background-image: url('../img/Flymode_On32_black.png');
}

#scene:fullscreen #plane.off {
	background-image: url('../img/Flymode_Off32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #plane.off:hover {
	background-image: url('../img/Flymode_Off32_black.png');
}

#scene:fullscreen #orbit {
	background-image: url('../img/Perspektive32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #orbit:hover {
	background-image: url('../img/Perspektive32_black.png');
}

#scene:fullscreen #help {
	background-image: url('../img/Web-help32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #help:hover {
	background-image: url('../img/Web-help32_black.png');
}

#scene:fullscreen #shadow.off {
	background-image: url('../img/Shadow_Off32.png');
	-webkit-transition: background-immage 0.2s ease-in-out;
	transition: background-immage 0.2s ease-in-out;
}

#scene:fullscreen #shadow.off:hover {
	background-image: url('../img/Shadow_Off_black32.png');
}

#scene:fullscreen #shadow.on {
	background-image: url('../img/Shadow_On32.png');
	-webkit-transition: background-immage 0.2s ease-in-out;
	transition: background-immage 0.2s ease-in-out;
}

#scene:fullscreen #shadow.on:hover {
	background-image: url('../img/Shadow_On_black32.png');
}

#scene:fullscreen #fullscreen {
	background-image: url('../img/Fullscreen_Off32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #fullscreen:hover {
	background-image: url('../img/Fullscreen_Off32_black.png');
}

#scene:fullscreen #auto-rotation.off {
	background-image: url('../img/Autorotate_Off32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #auto-rotation.off:hover {
	background-image: url('../img/Autorotate_Off32_black.png');
}

#scene:fullscreen #auto-rotation.on {
	background-image: url('../img/Autorotate_On32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #auto-rotation.on:hover {
	background-image: url('../img/Autorotate_On32_black.png');
}

#scene:fullscreen #download {
	background-image: url('../img/Screenshot32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #download:hover {
	background-image: url('../img/Screenshot32_black.png');
}

#scene:fullscreen #elevator-up {
	background-image: url('../img/Elevator_up32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #elevator-up:hover {
	background-image: url('../img/Elevator_up32_black.png');
}

#scene:fullscreen #elevator-down {
	background-image: url('../img/Elevator_down32.png');
	-webkit-transition: background-image 0.2s ease-in-out;
	transition: background-image 0.2s ease-in-out;
}

#scene:fullscreen #elevator-down:hover {
	background-image: url('../img/Elevator_down32_black.png');
}


/* ---------- Tooltips ---------- */

[data-tip] {
	position:relative;
}

[data-tip]:before {
	content:'';
	/* hides the tooltip when not hovered */
	display:none;
	content:'';
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid #1a1a1a;	
	position:absolute;
	bottom: 125%;
	left: 30%;
	z-index:8;
	font-size:0;
	line-height:0;
	width:0;
	height:0;
}

[data-tip]:after {
	display:none;
	content:attr(data-tip);
	position:absolute;
	bottom:150%;
	left: 0;
	padding:5px 8px;
	background:#1a1a1a;
	color:#fff;
	z-index:9;
	font-size: 0.75em;
	height:18px;
	line-height:18px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	white-space:nowrap;
	word-wrap:normal;
}

[data-tip]:hover:before,
[data-tip]:hover:after {
	display:block;
}