/* -- base & map ----------------------------------------------------------- */

body.map {
	overflow: hidden;
}

body.content .dialog .addthis_toolbox {
	float: none;
	width: auto;
}



.map-wrap {
	width: 100%;
	height: 100%;
}
	.map-wrap .map {
		width: 100%;
		height: 100%;0
	}

	.map-wrap .map-loader {
		display: none;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 64px;
		height: 64px;
		margin: -32px 0 0 -32px;
		text-align: center;
		color: #707172;
		background-color: rgba(255, 255, 255,.8);
		z-index: 100;
		box-shadow: 0 0 8px 0px #707172;
		pointer-events: none;
		
	border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-pie-border-radius: 50%;

	}
		.map-wrap .map-loader .fa {
			font-size: 32px;
			line-height: 64px;
		}

.map-wrap .action-fold {
	cursor: default;
}

.map-wrap .helper {
	display: none;
}

.map-wrap .helper.animate-travelplanner {
	position: fixed;
	z-index: 100;
	opacity: 1;
	transition-duration: 0s;
	font-family: 'dzt-icon-font';
	color: black;
	pointer-events: none;
	
	/*font-size: 32px;*/
	/*line-height: 32px;*/
	/*width: 32px;*/
	/*height: 32px;*/
	/* border: 3px solid red; */
	/* border-radius: 50%; */
	/*top: 219px;*/
	/*left: 632px;*/
	
	border-radius: 50%;
	transition-timing-function: ease-in-out;
	background-color: rgba(170, 170, 170, .5) !important;
	border: 0px solid transparent;
	box-shadow: 0 0 3px 3px rgba(170, 170, 170, .5);
}
	.map-wrap .helper.animate-travelplanner:before {
		content: "\c014";
	}


/* -- header --------------------------------------------------------------- */

.map-wrap .header {
	position: absolute;
	top: 0px;
	height: 40px;
	width: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	color: #FFF;
	z-index: 60;
}

	.map-wrap .header .control-links { 
		position: relative;
		top: 10px;
		left: 15px;
	}
		.map-wrap .header a {
			padding:5px;
			color: #FFF;
		}
		.map-wrap .header a:hover {
			color: #F00;
		}
		.map-wrap .header a.close-button {
			position: absolute;
			right: 140px;
			top: -5px;
		}
		.map-wrap .header a.close-button:hover {
			color: #FFF;
		}

	.map-wrap .header .logo {
			position: absolute;
			right: 0px;
			top: 0px;
			width: 280px;
			height: 90px;
			background-color: #FFF;
			border-radius: 0px 0px 0px 15px;
			z-index: 60;
		}
			.map-wrap .header .logo img {
				position: relative;
				right: -50px;
				top: -3px;
			}

/* -- close box ------------------------------------------------------------ */

.map-wrap .box-close {
	position: fixed;
	top: 50px;
	left: 0px;
	background-color: #FFF;
	color: #000;
	height: auto;
	box-shadow: 2px 2px 4px #797878;
	z-index: 60;
	line-height: 1;
	
	border-radius: 0 5px 5px 0;
	-o-border-radius: 0 5px 5px 0;
	-ms-border-radius: 0 5px 5px 0;
	-moz-border-radius: 0 5px 5px 0;
	-webkit-border-radius: 0 5px 5px 0;
	-pie-border-radius: 0 5px 5px 0;

	    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
	.map-wrap .box-close a {
		padding: 15px;
		display: block;
	}
	.map-wrap .box-close .btn-close {
		cursor: pointer;
		color: white;
		background: black;
		display: inline-block;
		padding: 3px;
		vertical-align: sub;
		
	border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-pie-border-radius: 50%;

	}
	.map-wrap .box-close .close-map-label {
		margin-left: 10px;
		font-size: 1.1em;
		display: inline-block;
		color: black;
	}
	
	
/* -- zoom box ------------------------------------------------------------ */

.map-wrap .box-zoom {
	position: fixed;
	bottom: 40px;
	left: 20px;
	background-color: #FFF;
	color: #000;
	height: auto;
	z-index: 60;
	overflow: hidden;
	box-shadow: 2px 2px 4px #797878;
	
	border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-pie-border-radius: 5px;

	    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
	.map-wrap .box-zoom .dzt,
	.map-wrap .box-zoom .dzt-label,
	.map-wrap .box-zoom .fa {
		display: inline-block;
		line-height: 1;
		cursor: pointer;
		padding: 6px 8px;
		border-right: 1px solid #ddd;
	}
		.map-wrap .box-zoom .dzt:hover,
		.map-wrap .box-zoom .fa:hover {
			background-color: #eee;
		}
	.map-wrap .box-zoom .dzt:last-child,
	.map-wrap .box-zoom .fa:last-child {
		border: 0;
	}
	
	.map-wrap .box-zoom .label-terrain,
	.map-wrap .box-zoom.mode-satellite .label-satellite {
		display: none;
	}
	.map-wrap .box-zoom.mode-satellite .label-terrain {
		display: inline-block;
	}


/* -- info box left -------------------------------------------------------- */

.map-wrap .box-info {
	position: absolute;
	top: 120px;
	left: 20px;
	z-index: 70;
	display: none;
	width: 270px;
}
	.map-wrap .box-info.is-visible {
		display: block;
	}

.map-wrap .info-content {
	background-color: #FFF;
	width: 270px;
	height: auto;
	margin-bottom: 10px;

	z-index: 60;
	border-radius: 5px;
	box-shadow: 0px 0px 8px -3px #000;

	transition-duration: 1s;
}
	.map-wrap .box-info.flash .info-content {
		background-color: #FFEED5;
		transition-duration: 0s;
	}
	.map-wrap .info-content .info-head {
		padding: 4px 4px 4px 15px;
		min-height: 26px;
	}
		.map-wrap .info-content .info-head .theme-icon {
			float: left;
		}
		.map-wrap .info-content .info-head .theme-icon img {
			vertical-align: sub;
		}
		.map-wrap .info-content .info-head .btn-close {
			position: absolute;
			top: 4px;
			right: 4px;
			cursor: pointer;
			font-size: 11px;
			border-radius: 50%;
			background-color: #707172;
			padding: 4px;
			color: white;
		}
		.map-wrap .info-content .info-head .name {
			margin: 0;
			padding: 0 23px 0 18px;
			display: block;
		}

	.map-wrap .info-content .info-teaser-image {
		width: 100%;
		position: relative;
		margin-bottom: 10px;
	}
		.map-wrap .info-content .info-teaser-image img {
			width: 100%;
			/*
			width: 270px;
			height: 180px;
			*/
		}
		.map-wrap .info-content .info-teaser-image .link-gallery {
			position: absolute;
			bottom: 3px;
			left: 15px;
			color: white;
			text-shadow: 0px 0px 2px black;
		}
	.map-wrap .info-content .info-body {
		padding: 10px 15px 15px;
	}
		.map-wrap .info-content .info-body .headline {
			font-weight: bold;
			font-size: 15px;
			line-height: 1.3em;
			margin-bottom: 10px;
		}
		.map-wrap .info-content .info-body .introtext {
			max-height: 20vh;/*200px;*/
			overflow-y: auto;
		}
		.map-wrap .info-content .info-body .link {
			margin-top: 5px;
		}
	.map-wrap .info-content .content-footer {
		border-top: 1px solid #eceded;
	}
		.map-wrap .info-content .content-footer:after {
			content: "";
			display: block;
			clear: both;
		}

		.map-wrap .info-content .content-footer .dzt-32 {
			font-size: 32px;
			line-height: 40px;/*56px;*/
			border-radius: 50%;
			margin: 8px auto 0;
			display: block;
			width: 40px;
			height: 40px;
		}
		.map-wrap .info-content .content-footer .btn-action .dzt-32:hover {
			background-color: #9c9e9f;
			color: white;
		}
		.map-wrap .info-content .content-footer .btn-action.btn-zoom .btnZoomOut {
			display: none;
		}
			.map-wrap .info-content .content-footer .btn-action.btn-zoom.is-near .btnZoomOut {
				display: block;
			}
			.map-wrap .info-content .content-footer .btn-action.btn-zoom.is-near .btnZoomIn {
				display: none;
			}


	.map-wrap .info-content .content-footer .btn-action {
		width: 25%;
		height: 56px;
		float: left;
		cursor: pointer;
		text-align: center;
	}
		.map-wrap .btn-action.btn-travelplanner .btn-remove,
		.map-wrap .btn-action.btn-travelplanner.is-added .btn-add {
			display: none;
		}
		.map-wrap .btn-action.btn-travelplanner.is-added .btn-remove {
			display: block;
		}
		
		.map-wrap .info-content .content-footer .btn-action .info-content {
			display: none;
		}
		

		.map-wrap .info-content .content-footer .btn-weather .btn-dummy {
			color: #cccccc;
		}
		.map-wrap .info-content .content-footer .btn-weather .btn-live {
			display: none;
		}
			.map-wrap .info-content .content-footer .btn-weather.is-live .btn-dummy {
				display: none;
			}
			.map-wrap .info-content .content-footer .btn-weather.is-live .btn-live {
				display: block;
			}
		



	.map-wrap .info-content .media-gallery {
		width: 100%;
		height:	80px;
		background-color: #FFF;
		margin-top: 22px;
	}
	.map-wrap .media-wrapper h5 {
		padding-top: 10px;
	}
	.map-wrap .info-content .media-gallery .media-wrapper {
		width: 90%;
		margin: 0px auto;
	}

	.map-wrap .info-content .media-gallery img {
		width: 50px;
		height: 30px;
	}

	.map-wrap .info-content .media-gallery .media-controls {
		position: relative;
		float: left;
		top: 7px;
		cursor: pointer;
	}

		.map-wrap .info-content .media-gallery .media-controls.previous {
			left: -5px;
		}

		.map-wrap .info-content .media-gallery .media-controls.next {
			right: -5px;
		}

		.map-wrap .info-content .media-gallery .image-slider {
			float: left;
		}

	.map-wrap .box-info .info-tooltip-wrap {
		position: relative;
	}
	.map-wrap .box-info .info-tooltip {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 10;
	}
	.map-wrap .box-info .info-tooltip,
	.map-wrap .box-info .info-container {
		border-radius: 3px;
		box-shadow: 2px 3px 5px #AAA;
		background-color: #FFF;
		padding: 5px;
		display: none;
		margin-bottom: 10px;
	}
		.map-wrap .box-info .info-tooltip .info-tooltip-text {
			display: block;
			text-align: center;
			font-size: 12px;
			font-weight: bold;
		}
	
	.map-wrap .info-container {
		padding: 0px;
	}
		.map-wrap .info-container .info-header {
			padding: 0 5px 5px;
			border-bottom: 1px solid #ECEDED;
			text-align: center;
			font-weight: bold;
		}
		.map-wrap .info-container .info-header .btn-close {
			position: absolute;
			right: 5px;
			cursor: pointer;
		}

		.map-wrap .info-container .weather-type {
			/*display: none;*/

			float: left;
			width: 64px;
			height: 64px;
			margin: 10px 0 0 10px;
		}
			.map-wrap .info-container .weather-type .dzt-32 {
				font-size: 64px;
			}
		.map-wrap .info-container .weather-body {
			margin: 10px 0 10px 85px;
		}
			.map-wrap .info-container .weather-body .temperature {
				font-weight: bold;
			}
			.map-wrap .info-container .weather-body .digits {
				font-size: 18px;
				padding-right: 4px;
			}
			.map-wrap .info-container .weather-body .weather-text {
				font-weight: bold;
			}
			.map-wrap .info-container .weather-body .wind-speed {
				color: #9c9e9f;
			}

		.map-wrap .info-container .weather-link {
			background-color: #777;
			border-radius: 4px;
			color: white;
			display: inline-block;
			font-size: .9em;
			line-height: 1;
			padding: 2px 4px;
		}
		
		
		.map-wrap .info-container .info-info-content .forecast {
			padding-top: 10px;
		}
		.map-wrap .info-container .info-info-content .icon {
			width: 30%;
			float: left;
		}
		.map-wrap .info-container .info-info-content .temperature b {
			font-size: 1.5em;
		}


/* -- menu box right ------------------------------------------------------- */

.map-wrap .box-menu {
	position: fixed;
	top: 150px;
	right: -280px;
	width: 280px;
	background-color: #FFF;
	min-height: 150px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	-webkit-transition: right 250ms ease-in;
	-moz-transition: right 250ms ease-in;
	-ms-transition: right 250ms ease-in;
	-o-transition: right 250ms ease-in;
	transition: right 250ms ease-in;
	padding-bottom: 10px;/*25px;*/
	z-index: 60;
}
	.map-wrap .box-menu.is-open:after {
		content: "\f021";
		text-align: center;
		margin: 20px 0;
		display: block;
		font-family: FontAwesome;
		font-size: 2em;
		position: absolute;
		top: 50%;
		left: 50%;
		margin-left: -25px;
		width: 50px;
		z-index: -1;
		-webkit-animation: fa-spin 2s infinite linear;
		-moz-animation: fa-spin 2s infinite linear;
		-o-animation: fa-spin 2s infinite linear;
		animation: fa-spin 2s infinite linear;
	}

.map-wrap .box-menu.is-open {
	right: 0px;
}

	.map-wrap .box-menu .menu-loader {
		display: none;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		text-align: center;
		color: #E0E0E0;
		background: rgba(0,0,0,.25);
	}
		.map-wrap .box-menu .is-loading .menu-loader {
			display: block;
		}
		.map-wrap .box-menu .menu-loader .fa {
			position: absolute;
			top: 50%;
			left: 50%;
			margin: -0.5em 0 0 -0.5em;
			font-size: 2em;
			text-shadow: 0px 0px 2px #000000;
		}



	.map-wrap .box-menu .menu-header {
		background-color: #eceded;
		border-top-left-radius: 5px;
		padding: 5px 5px 5px 15px;
	}
		.map-wrap .box-menu .menu-header .dzt-16 {
			color: white;
			background-color: #707172;
			cursor: pointer;
			padding: 3px;
			font-size: 12px;
			vertical-align: middle;
			
	border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-pie-border-radius: 50%;

		}
		
		
		
		.map-wrap .box-menu .menu-search {
			padding: 10px 2px 10px 10px;
			position: relative;
		}
			.map-wrap .menu-search .search-input {
				width: 224px;
				position: relative;
				left: 5px;
				height: 30px;
				border-radius: 5px 0px 0px 5px;
				padding: 5px;
				border: 1px solid #000;
			}
			.map-wrap .menu-search .button-search {
				width: 40px;
				height: 30px;
				background-color: #000;
				color:white;
				border-radius: 0px 5px 5px 0px;
				left: -5px;
			}
	
	
	
	.map-wrap .box-menu .menu-body {
		padding: 2px;
		max-height: 45vh;
		overflow-y: auto;
		background: white;
		    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	}
		/* -- default visibility -- */
		.map-wrap .menu-body .menu-content {
			position: relative;
			display: none;
			overflow-x: hidden;
		}
		.map-wrap .menu-body .menu-content.active {
			display: block;
		}
		
		
		
		/* -- search -- */
		
		.map-wrap .content-search .search-header {
			background-color: #707172;
			color: white;
			padding: 2px 6px;
		}
			.map-wrap .content-search .search-header .dzt-16 {
				float: right;
				font-size: 12px;
				padding-top: 3px;
				cursor: pointer;
			}
			.map-wrap .content-search em {
				background-color: #eceded;
			}
			
		.map-wrap .content-search .search-filter {
		}
			.map-wrap .search-filter .filter-headline {
				cursor: pointer;
				padding: 4px 0;
				border-bottom: 1px solid #d9dadb;
				margin-bottom: 4px;
				text-align: center;
				color: #c00;
			}
			.map-wrap .search-filter .filter-headline .dzt-16 {
				vertical-align: middle;
			}
			.map-wrap .search-filter .filter-content {
				display: none;
			}
			.map-wrap .search-filter .filter-headline .icon-up,
			.map-wrap .search-filter.is-open .filter-headline .icon-down {
				display: none;
			}
			.map-wrap .search-filter.is-open .filter-headline .icon-up {
				display: inline;
			}

			.map-wrap .content-search .search-footer {
			}
				.map-wrap .content-search .search-footer .btn-more {
					background: #9c9e9f;
					color: white;
					text-align: center;
					padding: 4px;
					display: block;
					cursor: pointer;
				}
			
			
			.map-wrap .search-result-item {
				cursor: pointer;
				padding: 1px 2px 2px 4px;
				border-bottom: 1px dotted #D9DADC;
			}
				.map-wrap .search-result-item:hover,
				.map-wrap .search-result-item.is-hovering {
					background: #eeeeee;
				}

				.map-wrap .search-result-item .theme-icon {
					/*width: 15px;
					height: 15px;*/
					display: block;
					float: left;
				}
				.map-wrap .search-result-item .headline {
					display: block;
					padding-left: 20px;
				}

		.map-wrap .search-content-location {
			display: none;
		}
		.map-wrap .search-content-location .location-header {
			font-weight: bold;
			margin-top: 15px;
			text-align: center;
			border-bottom: 1px solid #D9DADC;
			cursor: default;
		}
			.map-wrap .search-content-location .search-result-item .headline {
				padding: 0;
			}

		
		
		
		.map-wrap .box-menu .content-nearby {
			margin: 0 2px 5px;
			color: #707172;
			position: relative;
		}
			.map-wrap .box-menu .content-nearby .nearby-header {
				background-color: #707172;
				color: #ffffff;
				padding: 5px 5px 5px 15px;
				line-height: 1;
			}
				.map-wrap .box-menu .content-nearby .nearby-header .dzt-12 {
					float: right;
					cursor: pointer;
					font-size: 12px;
				}
			.map-wrap .box-menu .content-nearby .nearby-body {
				padding-bottom: 5px;
			}
			.map-wrap .box-menu .partial-mode .buttons-mode {
				border-bottom: 1px solid #707172;
				text-align: center;
				margin-bottom: 10px;
				cursor: pointer;
			}
				.map-wrap .box-menu .partial-mode .buttons-mode .btn-mode {
					display: inline-block;
					padding: 15px;
					position: relative;
				}
					.map-wrap .box-menu .partial-mode .buttons-mode .btn-mode .dzt-32 {
						width: 32px;
						height: 32px;
						font-size: 32px;
						line-height: 1;
					}
					.map-wrap .box-menu .partial-mode .buttons-mode .btn-mode.active {
					}
					.map-wrap .box-menu .partial-mode .buttons-mode .btn-mode.active:after {
						content: "";
						display: block;
						width: 10px;
						height: 10px;
						margin-left: -5px;
						position: absolute;
						left: 50%;
						bottom: -5px;
						background-color: #ffffff;
						border: 1px solid #707172;
						border-right: 0;
						border-bottom: 0;
						transform: rotate(45deg);
					}
			.map-wrap .box-menu .content-nearby .buttons-time {
				text-align: center;
			}
				.map-wrap .box-menu .content-nearby .buttons-time .btn-time {
					padding: 0 5px;
					cursor: pointer;
				}
				.map-wrap .box-menu .content-nearby .buttons-time .btn-time:nth-child(2) {
					border: 1px solid #707172;
					border-top: 0;
					border-bottom: 0;
				}
				.map-wrap .box-menu .content-nearby .buttons-time .btn-time.active {
					font-weight: bold;
					color: #000000;
				}
			
			
			
			
		.map-wrap .box-menu .partial-filter .section {
			margin-bottom: 1px;
		}
			.map-wrap .box-menu .partial-filter .inactive {
				color: #bbb;
			}
			.map-wrap .box-menu .partial-filter .inactive img {
				opacity: .5;
			}
		.map-wrap .box-menu .partial-filter .counter {
			font-size: .8em;
			display: none;
		}
			.map-wrap .box-menu .content-search .partial-filter .counter,
			.map-wrap .box-menu .content-nearby .partial-filter .counter {
				display: inline;
			}
			.map-wrap .box-menu .partial-filter .section-headline {
				background-color: #eceded;
				padding: 5px 5px 5px 5px;/*15px;*/
				cursor: pointer;
			}
				.map-wrap .box-menu .content-filter .partial-filter .section-headline .check {
					display: inline-block;
				}
				.map-wrap .box-menu .partial-filter .section-headline .check {
					display: none;
					border: 1px solid #aaa;
					color: #333;
					width: 18px;
					height: 18px;
					font-size: 16px;
					line-height: 1;
					vertical-align: bottom;
					background: white;/* #F7F7F7;*/
				}
					.map-wrap .box-menu .partial-filter .section-headline .check .icon-check {
						display: none;
					}
					.map-wrap .box-menu .partial-filter .section-headline .check.is-selected .icon-check {
						display: block;
					}
					.map-wrap .box-menu .partial-filter .section-headline .check.is-partial .icon-check {
						display: block;
						color: #C1C1C1;
					}
				
				.map-wrap .box-menu .partial-filter .section-headline .icon-down,
				.map-wrap .box-menu .partial-filter .section-headline .icon-up {
					float: right;
				}
				.map-wrap .box-menu .partial-filter .section-headline .icon-up {
					display: none;
				}
			.map-wrap .box-menu .partial-filter .section.is-open .section-headline {
				background-position: 96% -20px;
			}
				.map-wrap .box-menu .partial-filter .section-headline.is-open .icon-down {
					display: none;
				}

				.map-wrap .box-menu .partial-filter .section-headline h6 {
					margin: 0px;
				}
				
				.map-wrap .box-menu .partial-filter .section .section-body {
					display: none;
				}

				.map-wrap .box-menu .partial-filter .section.is-open .section-body {
					display: block;
				}
				.map-wrap .box-menu .partial-filter .section-body .filters {
					padding-left: 5px;
				}

					.map-wrap .box-menu .partial-filter .section-body .theme-filter .dzt-check-16,
					.map-wrap .box-menu .partial-filter .section-body .resource-filter .dzt-check-16 {
						display: none;
						position: absolute;
						left: 0;/*-20px;*/
						top: 5px;
					}

					.map-wrap .box-menu .partial-filter .section-body .theme-filter.active .dzt-check-16,
					.map-wrap .box-menu .partial-filter .section-body .resource-filter.active .dzt-check-16 {
						display: block;
					}

					.map-wrap .box-menu .partial-filter .section-body .filters li {
						padding-left: 20px;
						cursor: pointer;
						position: relative;
					}

					.map-wrap .box-menu .partial-filter .section-body .filters li .theme-label {
						vertical-align: middle;
					}
					.map-wrap .box-menu .partial-filter .section-body .filters li .theme-label-wrap {
						border-bottom: 1px dotted #AAA;
						padding: 3px 0;
						display: block;
					}
						.map-wrap .box-menu .partial-filter .section-body .filters li:last-child .theme-label-wrap {
							border-bottom: 0;
						}
						


		.map-wrap .box-menu .partial-filter li.resource-filter .resource-icon {
			width: 15px;
			height: 15px;
			display: inline-block;
			vertical-align: middle;
		}
			.map-wrap .box-menu .partial-filter li.resource-filter.resource-vartaguide .resource-icon {
				background-image: url(//s2.germany.travel/media/layout/mapicon/MapIcon_Restaurants_15px.png);
			}


.map-wrap .box-menu .menu-buttons {
		position: absolute;
		left: -32px;
		top: 34px;
	}
		.map-wrap .menu-buttons .popover,
		.map-wrap .menu-buttons .popover .popover-content {
			white-space: nowrap;
		}
		.map-wrap .box-menu .menu-buttons .menu-button {
			cursor: pointer;
			font-size: 32px;
			background: #CFD0D2;
			width: 32px;
			height: 32px;
			margin-bottom: 3px;
			border-top-left-radius: 3px;
			border-bottom-left-radius: 3px;
			position: relative;
			text-align: center;
		}
							/* todo: temporary 'til real icons */
							.map-wrap .box-menu .menu-buttons .btn-nearby,
							.map-wrap .box-menu .menu-buttons .btn-search {
								font-size: 24px;
								line-height: 32px;
								/*opacity: .33;*/

								display: none;
							}

			.map-wrap .box-menu .menu-buttons .menu-button.is-animated {
				transition-duration: 1s;
			}
			.map-wrap .box-menu .menu-buttons .menu-button:hover,
			.map-wrap .box-menu .menu-buttons .menu-button.highlight {
				background: #707172;
				color: #ffffff; 
			}
		
		.map-wrap .box-menu .menu-buttons .menu-button.active,
		.map-wrap .box-menu .menu-buttons .menu-button.active.highlight,
		.map-wrap .box-menu .menu-buttons .menu-button.active:hover {
			background: #ffffff;
			color: #000000;
		}
		
		.map-wrap .menu-buttons .menu-button.dzt-marker-empty-32 .counter {
			position: absolute;
			top: 8px;
			left: 0;
			width: 100%;
			font-size: 10px;
			text-align: center;
			padding-left: 2px;
			font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, sans-serif;
		}
		


.content-planner {
	min-height: 240px;
}
	.content-planner .planner-headline {
		padding: 0 40px 0 7px;
		position: relative;
	}
		.content-planner .planner-headline .route-name {
			display: block;
			/*font-weight: bold;*/
			font-size: 14px;
			cursor: pointer;
		}
			.content-planner .planner-headline .route-name:hover {
				background-color: #ECEDED;
			}
			.content-planner .planner-headline .route-name .dzt-16 {
				display: none;
				vertical-align: middle;
				float: right;
			}
			.content-planner .planner-headline .route-name:hover .dzt-16 {
				display: inline-block;
			}
		.content-planner .planner-headline .route-count {
			padding-right: 4px;
			margin-right: 4px;
			border-right: 1px solid #333;
		}
		.content-planner .planner-headline .route-count,
		.content-planner .planner-headline .route-length,
		.content-planner .planner-headline .route-duration {
			font-size: 11px;
		}
		.content-planner .planner-headline .route-duration {
			display: block;
		}


		.content-planner .planner-headline .menu-wrap {
			position: absolute;
			top: 0;
			right: 0;
			width: 40px;
			height: 100%;

			/*display: none;*/
		}
		.content-planner .planner-headline .menu-wrap:hover {
			background-color: #707172;
			color: white;
		}
		.content-planner .planner-headline .dzt-menu-24:before {
			position: absolute;
			top: 50%;
			left: 50%;
			margin: -.5em 0 0 -.5em;
		}
			.content-planner .planner-headline .menu-wrap .planner-menu {
				height: 0px;
				overflow: hidden;
				transition-duration: .5s;
				position: absolute;
				top: 100%;
				right: 0;
				width: 275px;
				z-index: 10;
			}
			.content-planner .planner-headline .menu-wrap:hover .planner-menu {
				height: auto;
			}

	.content-planner .mode-error {
		background: #F3C094;
		font-size: 10px;
		line-height: 1.2em;
		padding: 5px;
		color: #673F32;
		border: 1px solid #D0A783;
		text-align: center;
		margin-top: -4px;
		display: none;
	}
	
	.content-planner .route-empty {
		text-align: center;
		padding: 35px 0;
		color: #999;
	}
	
	.content-planner .route-more {
		margin: 15px 0 0;
		text-align: center;
	}

	.content-planner .planner-menu {
		background-color: #707172;
		color: white;
	}
	.planner-menu li {
		cursor: pointer;
		padding: 1px 5px;
		border: 1px solid #707172;
		font-size: 11px;
		line-height: 20px;
	}
		.planner-menu li.btn-new,
		.planner-menu li.btn-load {
			background-color: #9c9e9f;
			border: 1px solid #9c9e9f;
		}
	.planner-menu li:hover {
		background-color: white;
		color: black;
	}
	.planner-menu .dzt-16 {
		vertical-align: middle;
		line-height: 16px;
	}





	.content-planner .headline {
		padding: 2px 7px;
		background-color: #eceded;
	}
	.content-planner .route {
		margin-top: 5px;
	}
	.content-planner .route-list {
		counter-reset: route-counter;
		margin-top: 3px;
	}
	.content-planner .route-list li:nth-child(1) {
		border-top: 1px dotted #707172;
	}
	/*
	.content-planner .route-list .ui-sortable-placeholder:nth-child(2) {
		visibility: visible !important;
		border-top: 1px dotted black;
	}
	*/
	.content-planner .route-list li {
		cursor: pointer;
		position: relative;
		border-bottom: 1px dotted #707172;
		background-color: white;
	}
		.content-planner .route-list li:hover,
		.content-planner .route-list li.is-hovering {
			background-color: #eceded;
		}
	.content-planner .route-list li.ui-sortable-helper {
		border-top: 1px dotted #707172;
	}
		.content-planner .route-list .index {
			position: absolute;
			top: 50%;
			left: 12px;
			font-size: 10px;
			margin: -9px 0 0 -6px;
			border-radius: 50%;
			border: 1px solid #eceded;
			background-color: white;
			text-align: center;
			width: 18px;
			height: 18px;
			line-height: 17px;
		}
			.content-planner .route-list .index:before {
				counter-increment: route-counter;
				content: counter(route-counter, decimal);
			}
		.content-planner .route-list .theme-icon {
			position: absolute;
			top: 50%;
			left: 45px;
			width: 15px;
			height: 15px;
			margin: -9px 0 0 -12px;
		}
		.content-planner .route-list .name {
			display: block;
			padding: 5px 20px 5px 55px;
		}

		.content-planner .route-list .btn-sort {
			display: none;
			position: absolute;
			left: 0px;
			height: 100%;
			width: 30px;
			z-index: 10;
		}
			.content-planner .route-list li:hover .btn-sort,
			.content-planner .route-list li:hover .btn-remove {
				display: block;
			}

			.content-planner .route-list .btn-up {
				position: absolute;
				top: 0;
				left: 7px;
				margin-top: -4px;
			}
			.content-planner .route-list .btn-down {
				position: absolute;
				bottom: 0;
				left: 7px;
				margin-bottom: -4px;
			}
			
		.content-planner .route-list .btn-index,
		.content-planner .route-list .btn-sort {
			cursor: ns-resize;
			cursor: move;
		}



		.content-planner .route-list .btn-remove {
			right: 4px;
			width: 16px;
			height: 100%;
			position: absolute;
			display: block;
			top: 0;
			display: none;
		}
			.content-planner .route-list .btn-remove span {
				position: absolute;
				top: 50%;
				left: 50%;
				margin: -.5em 0 0 -.5em;
			}

	.content-planner .route-suggestion {
		margin-top: 10px;
		display: none;
	}


	/* -- planner content styling -- */
	body.content .content-planner {
		min-height: auto;
	}
	body.content .content-planner .route-length,
	body.content .content-planner .route-duration,
	body.content .content-planner .planner-mode,
	body.content .content-planner .route-more,
	body.content .content-planner .route-suggestion
	{
		display: none;
	}
	body.content .content-planner .route-count {
		border: 0;
	}
	
	body.content .content-planner .planner-headline .menu-wrap .planner-menu {
		width: 235px;
	}
	
	body.content .content-planner .route-list {
		overflow: hidden;
		max-height: 240px;
	}






/* -- mtk stuff ------------------------------------------------------------ */

.mtk-marker,
.mtk-marker-shadow {
	transition-duration: .1s;
}
.mtk-marker.is-small {
	background-size: 65% !important;
	background-position: 7px 19px !important; /*9px 26px*/
	background-repeat: no-repeat !important;
}
.mtk-marker.is-hovering {
	transform: translate(0px, -7px);
	transition: z-index 0s;
	z-index: 10001 !important;
}
.mtk-marker-shadow.is-small {
	background-size: 65% !important;
	background-position: 7px 23px !important; /*11px 28px*/
	background-repeat: no-repeat !important;
}
.mtk-marker.is-active,
.mtk-marker-shadow.is-active {
	z-index: 10001 !important;
}
.mtk-marker.is-inactive,
.mtk-marker-shadow.is-inactive {
	opacity: .5 !important;
}

.mtk-marker-label,
.gm-style div.mtk-marker-label {
	position: absolute;
	top: -8px;
	left: -8px;
	border-radius: 50%;
	border: 1px solid #eceded;
	background-color: white;
	width: 17px;
	height: 17px;
	text-align: center;
	font-size: 9px !important;
	line-height: 16px;
	box-shadow: 0px 0px 6px -2px black;
}
	.mtk-marker-label:empty {
		display: none;
	}
	.mtk-marker.is-teaser .mtk-marker-label {
		top: 0;
	}

.mtk-cluster-bg {
	position: absolute;
	border-radius: 50%;
	color: white;
	border: 0;
	left: 0;
	top: 0;
	opacity: 1 !important;
	width: 100% !important;
	height: auto !important;
	padding-top: 100% !important;
	background: rgba(255, 255, 255, .80) !important;
	box-shadow: 0px 0px 11px -4px black;
}

.mtk-cluster-text {
	display: block !important;
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	font-size: 12px;
	text-align: center;
	color: black;
	height: 100%;
	margin-top: 42%;
}

.mtk-cluster img {
	display: none;
}







/* -- dialogs / print dropdown -- */

.dialog-wrapper {
	display: none;
}
.dialog-bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 500;
	background-color: rgba(255,255,255,.35);
}
.dialog {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 400px;
	z-index: 501;
	background-color: white;
	box-shadow: 0px 0px 8px -3px #000;
	
	border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-pie-border-radius: 4px;

}
	.dialog-header {
		border-bottom: 1px solid #CFD0D2;
		padding: 4px 4px 4px 15px;
		
		cursor: default;
		user-select: none;
		-o-user-select: none;
		-ms-user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
	}
	.dialog-header .dialog-title {
		font-size: 14px;
		font-weight: bold;
		padding: 0 23px 0 24px;
	}
	.dialog-header .dialog-icon {
		float: left;
	}
	.dialog-header .dialog-close {
		cursor: pointer;
		float: right;
	}
.dialog-body {
	padding: 15px 15px 5px 15px;
}
.dialog-buttons {
	padding: 15px;
	text-align: right;
}
.btn-dialog {
	padding: 2px 10px;
}

.dialog.route-share .sharing-label {
	margin: 0 0 5px 0;
}
.dialog.route-share .sharing-wrap {
	margin: 15px 0 0;
}

.dialog input[type="text"] {
	border: 1px solid #707172;
	display: block;
	width: 100%;
	padding: 1px 4px;
}

.dialog .route-list {
	margin-top: 10px;
	max-height: 250px;
	overflow-y: auto;
}
	.dialog .route-list li {
		cursor: pointer;
		padding: 5px;
		border-top: 1px dotted #707172;
	}
	.dialog .route-list li:last-child {
		border-bottom: 1px dotted #707172;
	}
	.dialog .route-list li:hover {
		background-color: #eceded;
	}
	.dialog .route-list li.active {
		background-color: #dddddd;
	}
	.dialog .route-list li.is-loading {
		cursor: default;
		padding: 5px;
		border: 0;
		text-align: center;
		font-size: 1.5em;
	}
	
.dialog .url {
	word-wrap: break-word;
}





body.map .dropdown {
	cursor: pointer;
}
body.map .dropdown .caption {
	background-color: #9b9d9e;
	padding: 4px;
	color: white;
}

body.map .dropdown .caption:after {
	content: "\a004";
	display: block;
	float: right;
	font-family: 'dzt-icon-font';
}
	body.map .dropdown.is-open .caption:after {
		content: "\a007";
	}

body.map .dropdown .list {
	background-color: #9b9d9e;
	color: white;
	padding: 5px;
	position: absolute;
	width: 100%;
	display: none;
}

body.map .dropdown .item {
	border-bottom: 1px dotted white;
	margin-bottom: 3px;
	padding-bottom: 3px;
	cursor: pointer;
}
	body.map .item:before {
		content: "";
		font-family: 'dzt-icon-font';
		display: block;
		float: left;
		width: 18px;
		height: 18px;
		background-color: white;
		text-align: center;
		margin-right: 4px;
		border-radius: 3px;
		color: red;
		vertical-align: middle;
		font-size: 16px;
		text-indent: -2px;
	}
	body.map .item[data-checked="checked"]:before {
		content: "\a009";
	}
	body.map .item span {
		display: block;
		margin-left: 25px;
	}

body.map .dropdown .item:last-child {
	border: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}
