.small{
	font-size: 10pt;
}
.alignright{
	text-align: right;
}

div#buchung_breadcrumb{
	position: relative;
	width: 100%;
	padding: 5px;
	box-sizing: border-box;
	border-bottom: 1px solid #777;
	margin-bottom: 10px;
}
div#buchung_breadcrumb a{
	text-decoration: none;
}
div#buchung_breadcrumb a:hover{
	text-decoration: none;
}


div#login{
	position: relative;
	width: 100%;
	text-align: right;
	margin-bottom: 20px;
	line-height: 1.2em;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}
div#login > div:first-child{
	width: 100%;
	margin-bottom: 5px;
}
div#login a{
	display: block;
	padding: 5px 20px 5px 20px;
	background: #888;
	color: white;
	text-decoration: none;
	text-align: center;
	margin: 0px 3px 0px 0px;
}
div#login  a:hover{
	background: #074D82;
}

a.login_active {
	background: #074D82 !important;
}

div#choose_place{
	display: flex;
}
div#choose_place a{
	display: block;
	padding: 5px 20px 5px 20px;
	background: #888;
	color: white;
	text-decoration: none;
	text-align: center;
	margin: 0px 3px 0px 0px;
}
div#choose_place a:hover{
	background: #074D82;
}
a.choose_place_active{
	background: #074D82 !important;
}





div.room_cat{
	background: #AAA;
	color: white;
	padding: 5px;
	font-weight: bold;
	margin: 5px 0px 5px 0px;
}
div.room_cat:hover{
	background: #074D82;
	cursor: pointer;
}
div.room_choose{
	padding: 20px 30px 20px 30px;
	display: none;	
	background: #DDD;
}
div.room_choose_room{
	margin: 5px 0px 5px 0px;
}	

div.room_category{
	background: #AAA;
	color: white;
	padding: 5px;
	font-weight: bold;
	margin: 5px 0px 5px 0px;
}
div.room_category:hover{
	background: #074D82;
	cursor: pointer;
}








div#room_details_container{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
div.room_details_cat{
	position: relative;
	width:100%;
	margin-bottom: 5px;
	background: #074D82;
	padding: 5px;
	color: white;
}
div.room_details{
	position: relative;
	width:100%;
	margin: 0px 0px 5px 20px;
	background: #AAA;
	padding: 5px;
	color: white;
}
div.room_details a{
	color: white;
}
div.room_details a:hover{
	color: red;
}


div#buchung_time{
	position: relative;
	width: 100%;
	display: flex;	
}
div#buchung_time > div{
	padding: 5px;
}
div#bis_text{
	font-weight: bold;
	padding-top: 7px !important;
}
div#bis_text2{
	font-weight: bold;
	padding-top: 7px !important;
	display: none;
}
div#uhrzeit_text{
	font-weight: bold;
	padding-top: 7px !important;
	display: none;
}

div#buchung_zeitraum{
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
	background: #E0E0E0;
	margin-bottom: 10px;
}

div#buchung_data{
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
	background: #E0E0E0;
	margin-bottom: 10px;
}

div#booking_container{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
div#booking_container > div{
	width: 48%;
	margin: 0px 1% 0px 1%;
}

div#buchungsdaten{	
	background: #E0E0E0;
	padding: 20px;
	box-sizing: border-box;
}
div#buchungsdaten *{
	box-sizing: border-box;
}






div#calendar{
	background: #DDD;
}

table.calendar_rooms{
	width: 100%;
	max-width: 400px;
	margin-right: 10px;
}
table.calendar_rooms th{
	background: #074D82;
	text-align: center;
	color: white;
}
table.calendar_rooms td{
	background: white;	
	text-align: center;
	color: white;
}
table.calendar_rooms td:empty{	
	background: none;
}


div#cal_legende{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
}
div#cal_legende div{
	padding: 5px 10px 5px 10px;
	margin-right: 5px;
	font-size: 10pt;
}
div#cal_legende_green{
	background: green;
	color: white;
}
div#cal_legende_red{
	background: red;		
	color: white;	
}
div#cal_legende_yellow{
	background: yellow;
	color: black;
}
	
	table.show_bookings th{
		background: #074D82;
		color: white;
		font-weight: normal;
		font-size: 10pt;
	}
	table.show_bookings{
		border-collapse: collapse;
	}
	table.show_bookings td{
		border: 2px solid white;
	}
	table.show_bookings td:nth-child(4n +1){
			border-right: 2px solid black;
	}
	
	table.show_bookings th{
		border: 2px solid white;
	}
	
	
div.mybooking_item{
	position: relative;
	width: 100%;
	margin-bottom: 10px;
	display: flex;
}
div.mybooking_item > div:first-child{
	width: 30px;
	cursor: pointer;
}
div.mybooking_item > div:nth-child(2){
	width: calc(100% - 30px);
}

div.mybooking_item_title{
	background: #D5D5D5;
	padding: 5px;
	cursor: pointer;
	
}
div.mybooking_item_content{
	display: none;
	padding: 5px;
	background: #EEE;
	font-size: 10pt;
	line-height: 1.2em;
}
div.mybooking_item_content *{
	font-size: 10pt;
}



div#public_booking_room_data_container{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	background: #DDD;
}
div#public_booking_room_data{
	position: relative;
	width: calc(100% - 300px);
	padding: 20px;
	box-sizing: border-box;
}
@media (max-width: 700px),
	(-webkit-min-device-pixel-ratio: 1.5) and (max-width: 1050px) and (orientation:portrait),
	(-webkit-min-device-pixel-ratio: 2) and (max-width: 1400px) and (orientation:portrait),
	(-webkit-min-device-pixel-ratio: 2.5) and (max-width: 1750px) and (orientation:portrait),
	(-webkit-min-device-pixel-ratio: 3) and (max-width: 2100px) and (orientation:portrait),
	(min-resolution: 1.5dppx) and (max-width: 1050px) and (orientation:portrait),
	(min-resolution: 2.0dppx) and (max-width: 1400px) and (orientation:portrait),
	(min-resolution: 2.5dppx) and (max-width: 1750px) and (orientation:portrait),
	(min-resolution: 3.0dppx) and (max-width: 2100px) and (orientation:portrait)
 {
	div#public_booking_room_data{
		width: 100%;
	}
}
div#public_booking_map{
	width: 300px;
	min-height: 300px;
	z-index: 1;
}
@media (max-width: 700px),
	(-webkit-min-device-pixel-ratio: 1.5) and (max-width: 1050px) and (orientation:portrait),
	(-webkit-min-device-pixel-ratio: 2) and (max-width: 1400px) and (orientation:portrait),
	(-webkit-min-device-pixel-ratio: 2.5) and (max-width: 1750px) and (orientation:portrait),
	(-webkit-min-device-pixel-ratio: 3) and (max-width: 2100px) and (orientation:portrait),
	(min-resolution: 1.5dppx) and (max-width: 1050px) and (orientation:portrait),
	(min-resolution: 2.0dppx) and (max-width: 1400px) and (orientation:portrait),
	(min-resolution: 2.5dppx) and (max-width: 1750px) and (orientation:portrait),
	(min-resolution: 3.0dppx) and (max-width: 2100px) and (orientation:portrait)
 {
	div#public_booking_map{
		width: 100%;
		min-height: 200px;
	}
}

.public_booking_success{
	padding: 20px;
	background: green;
	color: white;
	font-size: 14pt;
	margin: 20px 0px 20px 0px;
}

a.public_booking_denzlingen_room{
	display: block;
	padding: 5px 10px 5px 20px;
	background: #074D82;
	color: white;
	margin-bottom: 2px;
	text-decoration: none;
}
a.public_booking_denzlingen_room:hover{
	background: #DB252C;
}