body { margin:0px; padding:0px; background:#ffffff; overflow:hidden; }
html, body { height: 100%; }
body, body * {
	-webkit-user-select: none;
	 -khtml-user-select: none; 
	   -moz-user-select: none;  
			user-select: none; 	
}
.zoom, .firm-add, .firm-hide {
	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease;
}
#controls_conteiner { 
	position:absolute; 
	top: 5px; 
	left:5px; 
	display:none; 
	z-index:2;
	padding:5px;

	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
			border-radius: 4px;
}

.zoom { 
	margin: 10px 0 0 13px;
	
	background:rgba(255,255,255,0.85); 
	width: 28px;
	border: 1px solid #a5a5a5; 

	text-align:center; 

	-webkit-border-radius: 6px;
	   -moz-border-radius: 6px;
			border-radius: 6px; 

	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
			box-sizing: border-box;

	-webkit-box-shadow: 1px 1px 3px 1px #dcdcdcb3;
	   -moz-box-shadow: 1px 1px 3px 1px #dcdcdcb3;
			box-shadow: 1px 1px 3px 1px #dcdcdcb3;
}
.zoom > i {
	display: block;
	font-size: 15px;
	line-height: 28px;
	color: #7f7f7f; 
	font-weinght: bold;
	cursor: pointer;
}
.zoom:hover { background: #fff; }
.zoom-plus { border-bottom: 1px solid #ccc; }

.rect, .rect:hover { 
	display:block; 
	position:absolute; 
	border: 0px solid #0119ce;

	-webkit-border-radius: 3px;
	   -moz-border-radius: 3px;
			border-radius: 3px;

	z-index:1;
}
.rect:hover, .rect.hover { 
	border: 0px solid #ce7001;
	background: rgba(27,140,0,0.5);

	-webkit-box-shadow: 0px 0px 25px #ce7001;
	   -moz-box-shadow: 0px 0px 25px #ce7001;
			box-shadow: 0px 0px 25px #ce7001;


}

#conteiner { position: relative; cursor: move; z-index: 1; }
.userList, .userList * {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
			box-sizing: border-box;	
}
.userList { 
	position:absolute; 
	display:block;
	top:10px; 
	right:10px; 
	z-index:2;
	width:250px;
	height:300px;
	background:#ffffff;
	border:1px solid #a5a5a5;
	border-radius: 6px;
	opacity:0.9;

	font-size:12px; 
	line-height:15px;
}
.userList div.ulHead { position: relative; padding:2px 10px; background:#777; border-radius: 6px 6px 0 0; color:#fff; font-size:15px; line-height:20px; cursor:move; }
.userList ol, .userList ul { display:block; margin:0px; padding:0px; padding-top:8px; height:245px; overflow:auto; }
.userList li { margin-left:24px; padding:3px 0px; font-size:12px; }
.userList b { font-size:12px; line-height:15px; text-decoration:none; font-weight:normal; color:#00e; cursor:pointer; border-bottom:1px dashed #00e; }
.userList #search {
	width:100%; 
	margin:0px;
	padding:5px 24px 5px 10px;
	font-size: 12px;
	color:#333; 
	border:none;
	border-bottom:1px solid #a5a5a5;
	border-radius: 0;
}
.userList b:hover { border-bottom:none; }
.userList #searchClear { display:none; position:relative; height:0px; }
.userList #searchClear b {
	position: absolute;
	top:6px;
	right:7px;
	width:12px;
	height:12px;
	background: no-repeat right top url(/src/js/select2/select2.png);	
	cursor:pointer;
	outline:none;
	border: none;
}
.userList #searchClear b:hover { background-position: right -11px; }

.firm-add, .firm-hide { position: absolute; top: 2px; right: 3px; background: #fff; color: #777 !important; padding: 4px 6px; border-radius: 4px; line-height: 1.1; }
.firm-add { right: 30px; }
.firm-add:hover, .firm-hide:hover, .firm-hide.cur, .userList.cur .firm-hide { background: #0179d2; color: #fff !important; }

.userList.cur .firm-list, .userList.cur .input { height: 0; padding: 0; opacity: 0; overflow: hidden; visibility: hidden; }
.userList.cur { height: 0; }
.userList.cur .ulHead { border-radius: 6px; }
.userList.cur .firm-hide > i:before { content: "\f06e"; }

@media (max-width: 768px) {
	.userList {
		top: auto;
		right: 8px;
		bottom: 8px;
		left: 8px;
		width: auto;
		max-height: 45%;
	}
	.userList.cur {
		left: auto;
		width: auto;
		max-height: none;
	}
	.userList ol, .userList ul {
		height: auto;
		max-height: 180px;
	}

	/* Firm info popup inside map iframe */
	.-popup-block {
		padding: 40px 8px 12px;
		box-sizing: border-box;
	}
	.-popup-text {
		max-width: 100%;
		width: 100%;
		padding: 12px;
		box-sizing: border-box;
		overflow: hidden;
		text-align: left;
	}
	.-popup-text img {
		max-width: 100% !important;
		height: auto !important;
	}
	.-popup-text table {
		width: 100% !important;
		max-width: 100%;
		table-layout: fixed;
	}
	.-popup-text td,
	.-popup-text th {
		display: block;
		width: 100% !important;
		box-sizing: border-box;
		word-wrap: break-word;
		overflow-wrap: break-word;
		white-space: normal;
	}
	.-popup-text td[width],
	.-popup-text th[width] {
		width: 100% !important;
	}
	.-popup-close > i {
		top: 6px;
		right: 10px;
		font-size: 22px;
	}
}