:root {
		--main-color: #3298cc;
		--link-color: #3298cc;
}

* { margin:0; padding:0;box-sizing:border-box;outline:none;}
body {font-family: 'Roboto',Arial,sans-serif;font-size:14px;background:#fff;color:#000;}
html, input, textarea {font-family: 'Roboto',Arial,sans-serif;outline:none;font-weight:300;}
b,strong {font-weight:bold;}
a {color:var(--link-color);}
a img {border:0}




html,body {height:100%;}

#header {border-bottom:1px solid #ccc;height:100px;}

#header .head{height:100%;display:flex;align-items:center;padding-left:20px;}
#header .head .logo {width:62px;height:62px;background:url(img/logo.png) no-repeat 0 0/100%;margin-right:30px;}
#header .head .titles {max-width:320px;}
#header .head .title {font-weight: bold;font-size: 17px;line-height: 17px;letter-spacing: -0.05em;margin-bottom:10px;}
#header .head .subtitle {font-size:12px;}


#content {display:flex;position:absolute;top:100px;left:0;bottom:0;right:0;}

#sidebar {overflow-y:auto;position:absolute;left:0;top:0;bottom:0;width:400px;background:#f0f0f0;}

#map-content {position:absolute;left:400px;top:0;right:0;bottom:0;}
#map {height:100% !important;}
#menu ul {z-index:10}


.mapHint {
            display: block;
            padding: 3px;
            position: relative;
			font-size: 12px;
			background: #fff;
			border: 1px solid #333;
			//font-weight:bold;
            color: #333333;
            text-align: center;
            vertical-align: middle;
			box-shadow:3px 3px 10px #000;
        }

.mapclose {position:absolute;right:30px;top:30px;width:30px;height:30px;display:block;}
.mapclose:before {content:'';display:block;width:40px;height:3px;background:#fff;transform:rotate(45deg);position:relative;top:14px;left:-5px;}
.mapclose:after {content:'';display:block;width:40px;height:3px;background:#fff;transform:rotate(-45deg);position:relative;top:11px;left:-5px;}


#sidebar  {
	padding:14px 15px 5px;
}

#sidebar .control {
	height:100%;
	display:flex;
	flex-direction:column;
	scrollbar-width:thin;
}
#sidebar .control::-webkit-scrollbar {width:7px;}
#sidebar .control::-webkit-scrollbar-thumb {background:var(--main-color);border-radius:7px;}

#sidebar .clear {margin-bottom:5px;text-align:right;}

#sidebar .search {margin-bottom:10px;}
#sidebar .search input {font-size:18px;border:var(--main-color) solid 1px;border-radius:5px;display:block;width:100%;padding:3px 40px 3px 12px;}

#sidebar .list-wrapper {flex:1 1;overflow-y:auto;width:100%;display:none;}
#sidebar .list {}
#sidebar .list .item {padding:5px 10px 5px 30px;font-size:14px;cursor:pointer;min-height: 22px;position:relative;}
#sidebar .list .item:before {content:'';display:block;width:8px;height:8px;border-radius:100%;background:#2F78E4;position:absolute;top:12px;left:12px;transform:translate(-50%,-50%);}
#sidebar .list .item:hover {color:var(--main-color);}
#sidebar .list .sel{color:var(--main-color);}
#sidebar .list::-webkit-scrollbar {width: 10px;}
#sidebar .list::-webkit-scrollbar-thumb {background:var(--main-color);border-radius:13px;border:4px solid transparent;background-clip: content-box;}

#sidebar .list .item.category-1:before {background:#2F78E4;}
#sidebar .list .item.category-2:before {background:#3AD179;}
#sidebar .list .item.sel:before {background:#FF727A;}
#sidebar .list .item:hover:before {background:#FF727A;}

#sidebar .control .regions {margin-bottom: 13px;}
#sidebar .control .categ {overflow:hidden;margin-bottom: 13px;}

#sidebar label.cb {display:block;font-size:16px;margin-bottom:10px;overflow:hidden;margin-bottom:9px;    line-height: 27px;cursor:pointer;}
#sidebar label.cb input {display:none;}
#sidebar label.cb input[type="checkbox"] + span {content:'';width:24px;height:24px;display:block;float:left;cursor:pointer;border:1px solid var(--main-color);border-radius:3px;background:#fff;margin-right:10px;position:relative;}
#sidebar label.cb input[type="checkbox"]:checked  + span:before {content:'';display:block;width:14px;height:14px;border-radius:3px;background:var(--main-color);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
#sidebar label.cb.top input[type="checkbox"]:checked  + span + span.title {font-weight:bold;}

#sidebar label.radio {display:block;font-size:16px;margin-bottom:10px;overflow:hidden;margin-bottom:9px;    line-height: 20px;cursor:pointer;}
#sidebar label.radio input {display:none;}
#sidebar label.radio input[type="radio"] + span {content:'';width:18px;height:18px;display:block;float:left;cursor:pointer;border:1px solid var(--main-color);border-radius:100%;background:#fff;margin-right:10px;position:relative;}
#sidebar label.radio input[type="radio"]:checked  + span:before {content:'';display:block;width:12px;height:12px;border-radius:100%;background:var(--main-color);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}

#sidebar .filters {margin-left:10px;display:none;}
#sidebar .filters label.cb {line-height:23px;font-size:14px;}
#sidebar .filters label.cb input[type="checkbox"] + span {width:20px;height:20px;}
#sidebar .filters label.cb input[type="checkbox"]:checked  + span:before {display:block;width:12px;height:12px;}

#sidebar .checkboxes label.cb {float:left;margin-right:10px;}
#sidebar .checkboxes {overflow:hidden;}

#sidebar .radios label.radio {float:left;margin-right:10px;}
#sidebar .radios {overflow:hidden;}



/*
.formcontent .field .checkbox label{padding-left: 16px;line-height:normal;height:auto;}
.formcontent .field .checkbox input[type="checkbox"] {display:none}
.formcontent .field .checkbox input[type="checkbox"] + span {display:block;width:16px;height:16px;background:#f85d1d;position:absolute;margin-left:-36px;margin-top:3px;}
.formcontent .field .checkbox input[type="checkbox"]:checked + span:before {content:'';display:block;width:7px;height:3px;border:2px solid #fff;border-width:0 0 2px 2px;transform:rotate(-45deg);position: absolute;margin-left: 4px;margin-top: 5px;}



#sidebar label.cb .checkbox {width:24px;height:24px;float:left;cursor:pointer;border:1px solid var(--main-color);border-radius:3px;background:#fff;position:relative;}
#sidebar label.cb .title {padding-top:2px;display:block; width:222px;margin-left: 34px;cursor:pointer}
#sidebar label.cb .count {float:right;color:var(--main-color);width:26px;padding:2px;text-align:center;}
#sidebar label.cb.selected .checkbox:before 
#sidebar label.cb.selected .title {font-weight:bold;}
#sidebar label.cb.selected .count {font-weight:bold;}


#sidebar .control .filter {display:none;margin:20px 0;}
#sidebar .control .filter.visible {display:block;}
*/
#sidebar .control .filter .ftitle {font-weight:bold;font-size:16px;margin-bottom:10px;}
#sidebar .control .filter .range {display:flex;justify-content:space-between;}
#sidebar .control .filter .range .rng {margin-right:10px;}
#sidebar .control .filter .range input {width:80px;border:1px solid var(--main-color);padding:3px 5px 1px;border-radius:3px;font-size:16px;line-height:22px;}


.ui-slider {border:0 !important;background:#ccc;height:3px;margin:20px 0;}
.ui-slider-horizontal { }
.ui-slider .ui-slider-range {}
.ui-slider-horizontal .ui-slider-range {background:var(--main-color);}
.ui-slider-horizontal .ui-slider-range-min {}
.ui-slider .ui-slider-handle {background:var(--main-color);border:0;width:15px;height:15px;border-radius:100%;}
.ui-slider-horizontal .ui-slider-handle {}
.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range {filter:inherit}

#sidebar .control .filter.area {}
#sidebar .control .filter.area .radioButtons{display:flex;justify-content:space-between;margin-bottom:20px;}
#sidebar .control .filter.area .radioButtons .item {border:1px solid var(--main-color);text-align:center;padding:5px 10px;color:var(--main-color);font-size:14px;border-radius:5px;text-decoration:none;white-space:nowrap;}
#sidebar .control .filter.area .radioButtons .item.selected {background:var(--main-color);color:#fff;}



#map-content {display:flex;}

#map-content .maplinks {position:absolute;right:20px;top:20px;}
#map-content .maplinks  a {display:block;font-size:16px;font-weight:400;color:#fff;background:var(--main-color);border-radius:5px;width:200px;padding:10px 20px;text-decoration:none;text-align:center;margin-bottom:10px;}

#map {flex:1 1;}

.info {	
	background-color: #fff;
	border-radius: 3px;
	padding:20px;
	/*box-shadow: 0 0 20px rgba(0,0,0,0.5);*/
	border:1px solid var(--main-color);
	font-size:14px;
	display:none;
	flex:0 0 500px;
	
	/*
	left:0;
	bottom:0px;
	top:0;
	position:absolute;
	z-index:20;
	*/
	position: relative;
}
.info .close {display:block;width:25px;height:25px;background:url(img/map-info-close.png) no-repeat;position:absolute;top: 20px;right:20px;}
.info .title {font-size:18px;line-height:24px;font-weight:bold;margin-bottom:22px;margin-top:9px;margin-right: 30px;}
.info .text {overflow:auto;}
.info .text p {margin-bottom:1em;}
.info .text a {font-weight:normal;}
