/* ---------------- main style for all Pages ----------------- */

* {
	padding:0px;
	margin:0px;
}
.clear {
	clear:both;
}
.cent {
	text-align:center;
}
.sml {
	font:10px/normal Arial,sans-serif;
}
.bld {
	font-weight:bold;
}
.left {
	float:left;	
}
.right {
	float:right;	
}
.nobrd {
	border:none;
}
.inputborder {
	border:1px solid #888888;
}
.inputborder.focused {
	border:1px solid #4E647E;
	box-shadow:0px 1px 4px rgba(0, 0, 0, 0.4) inset;
	color:#000000;
}
html {
	overflow:hidden;
}
body {
	background:#fff;
	font:12px Arial,sans-serif;
	color:#333333;
}
a {
	color:inherit;	
}
table {
	border-spacing:0;
	border-collapse:collapse;
}

#menu {
	position:absolute;
	left:10px;
	top:10px;
	background:#ffffff url('images/menu_back.png') no-repeat;
	width:280px;
	height:44px;
	padding-top:111px;
	overflow:hidden;
	z-index:100;
	box-shadow:0px 1px 5px #000;
}
#menu_content {
	font:400 11.0333px/15.65px Arial,sans-serif;
	overflow-x:hidden;
	overflow-y:auto;
	background:#fff;
	width:700px;
}

#menu_content ul {
	list-style: none outside none;
}
#menu_content li.uber {
	padding:2px 10px 2px 5px;
	font-weight:bold;
	background:#b0bdc5;
}
#menu_content li.nosel {
	display:none;
}
#menu_content ul a {
	color:#AA001E;
	display:block;
	padding:2px 10px 2px 5px;
	text-decoration:none;
	position:relative;
}
#menu_content ul a.bright {
	background:none;
}
#menu_content ul a.dark {
	background:#EEF3F5;
}
#menu_content ul span.a {
	display:inline-block;
	width:600px;	
}
#menu_content ul span.b {
	display:inline-block;
	width:40px;
	font-weight:normal;
	text-align:center;
}
#menu_content ul span.c {
	display:inline-block;
	width:20px;
	font-weight:normal;
	text-align:center;
	color:#fff;
}
#menu_content ul li.station {
	display:none;
}
#menu_content ul li.station span.a {
	padding-left:15px;
	width:585px;
}
#menu_content ul span.BA {
	background:#004b9a;
}
#menu_content ul span.BB {
	background:#3ba42a;
}
#menu_content ul span.BC {
	background:#bf0e19;
}
#menu_content ul span.BD {
	background:#f2b800;
}
#menu_content ul li.hotspothover a {
	/*text-decoration:underline;*/
	background:#AA001E;
	color:#fff;
	box-shadow:0px 1px 5px #000;
}
#menu_content li a.focused {
	background:#CCD6DF;
}
#menu_content ul a div {
	 position:absolute;
	 top:0px;
	 height:100%;
	 width:18px;
	 background:url('images/sprites.png') -19px 1px no-repeat;
	 border:none;
	 display:none;	
}

#more {
	position:absolute;
	background:#fff;
	width:400px;
	box-shadow:0px 1px 5px #000;
	overflow:hidden;
	z-index:1;
	display:none;
}
#more_line {
	background:#ae0f0a;
	height:24px;
	line-height:24px;
	font-weight:bold;
	padding-left:8px;
	cursor:move;
	color:#fff;
	font-size:12px;
}
#more_content {
	font:400 11.0333px/15.65px Arial,sans-serif;
	overflow-x:hidden;
	overflow-y:auto;
}
div.close {
	position:absolute;
	 right:4px;
	 top:4px;
	 height:16px;
	 width:16px;
	 background:url('images/sprites.png') -59px -2px no-repeat;
	 cursor:pointer;
	 border:none;
}
#more_content ul {
	list-style: square outside none;
	margin-bottom:10px;
	margin-left:17px;
}
#more_content ul li {
	color:#AA001E;
	padding:2px 10px 2px 0px;
}
#more_content h3 {
	font:700 12px/normal Arial,sans-serif;
	padding:8px 5px 4px 5px;
	margin-bottom:4px;
	border-bottom:1px dotted #000;
}

#mouseinfo ul {
	list-style: square outside none;
	margin:4px 0px 2px 17px;
}
#mouseinfo ul li div.na {
	height:18px;
	width:23px;
	vertical-align:bottom;
	background:url('images/sprites.png') -80px 1px no-repeat;
	border:none;
	display:inline-block;
	position:relative;
	left:4px;
}


div#searchdiv {
	line-height:22px;
	border:none;
	background:#ae0f0a;
	padding:8px;
	height:28px;
}
#searchdiv div {
	color:#999999;
	position:relative;
	border:none;
}
div#searchborder {
	z-index:80;
	float:none;
	margin:0px;
	padding:0px;
	position:relative;
	background:none;
	border:1px solid #888888;
}
div#searchborder img#sb_lupe{
	position:absolute;
	right:2px;
	top:1px;
	display:block;
}

#searchdiv div.focused {
	border:1px solid #4E647E;
	box-shadow:0px 1px 4px rgba(0, 0, 0, 0.4) inset;
	color:#000000;
}
#searchdiv input {
	font:14px Arial,sans-serif;
	height:26px;
	color:inherit;
	width:254px;
	vertical-align:top;
	border:none;
	padding:0px 4px 0px 4px;
	background:none;
}
input#search_assist {
	font:14px Arial,sans-serif;
	position:absolute;
	left:1px;
	top:1px;
	color:#cccccc;
	z-index:2;
}


#lizenz_line {
	position:absolute;
	bottom:0px;
	right: 0px;
	height:20px;
	overflow: hidden;
}
#lizenz_line span {
	color:#ae0f0a;
	font-size:10px;
	line-height:14px;
	padding: 2px 4px 4px 4px;
	float: right;
	display:block;
}

/* all we need for the routing contextmenu: */
#routing_contextmenu {
	position:absolute;
    margin: 0;
    padding: 1px;
    list-style: none;
    background:#fff;
    box-shadow:0px 1px 5px #000;
    display:none;
}
#routing_contextmenu li span {
    display: block;
    text-decoration: none;
    padding: 2px 5px 2px 5px;
    cursor:pointer;
}
#routing_contextmenu li span:hover {
    background:#AA001E;
    color:#fff;
}
/* End routing context-menu */

/* for the routinginstructions */
#route_instructions {
	margin-top:10px;
}
#route_instructions td {
	padding-bottom:4px;
	padding-right:3px;	
}
#route_instructions td.pic div {
	background-image:url("images/sprites.png");
	background-repeat:no-repeat;
    width:25px;
    height:25px;
}
#route_instructions td.txt{
	padding-right:10px;
	overflow:hidden;
}
#route_instructions td.txt div {
	width:110px;
}
td.pic div.continue{
    background-position:1px -51px;
}
td.pic div.slight_right{
    background-position:-21px -51px;
}
td.pic div.right{
    background-position:-49px -51px;
}
td.pic div.sharp_right{
    background-position:-78px -51px;
}
td.pic div.sharp_left{
    background-position:-113px -51px;
}
td.pic div.left{
    background-position:-147px -51px;
}
td.pic div.slight_left{
    background-position:-172px -51px;
}
td.pic div.marker_from{
    background-position:-199px -51px;
}
td.pic div.marker_to{
    background-position:-255px -51px;
}
td.pic div.marker_interm{
    background-position:-228px -51px;
}
/* end routinginstructions */


#routing-menu {
	width:226px;
	height:350px;
	position:absolute;
	background:#fff;
	box-shadow:0px 1px 5px #000;
	z-index:100;
}
#routing-menu_line {
	background:#ae0f0a;
	color:#fff;
	height:24px;
	font-size:12px;
	line-height:24px;
	font-weight:bold;
	padding-left:8px;
	cursor:move;
}
#menu_routing_cont {
	padding:0px;
	width:226px;
	height:330px;
	overflow-x:hidden;
	overflow-y:auto;
}
#transport_select div {
	width:42px;
	height:24px;
	border:1px solid #cccccc;
	float:left;
	background:#e1e9f5 url("images/sprites.png") no-repeat;
	margin-right:2px;
	cursor:pointer;
}
#transport_select div.sel {
	background-color:#ffffff;
	border-color:#AA001E;
}
#menu_routing_cont textarea {
	font:12px Arial,sans-serif;
	height:50px;
	width:172px;
	color:inherit;
	border:none;
	padding:2px 4px 2px 4px;
	background:none;
	resize:none;
}
#menu_routing_cont #fromhere {
	background:#e1e9f5 url("images/sprites.png") no-repeat -161px -23px;
	height:22px;
	width:22px;
	border:1px solid #cccccc;
	cursor:pointer;
	margin-left:5px;
}
#menu_routing_cont button.big {
	display:block;
	height:30px;
	font-weight:bold;
	background:#ae0f0a url("images/sprites.png") no-repeat -178px 7px;
	width:155px;
	padding:0px 24px 0px 5px;
	color:#ffffff;
	border:1px solid #cccccc;
	cursor:pointer;
}
#menu_routing_cont #loading_animation {
	float:right;
	display:none;
	margin:6px 20px 0px 0px;
}
#menu_routing_cont #route_info {
	margin-top:20px;
}
#routingsearch_results {
	background:none;
	border:none;
	margin:0px;
	padding:4px 0px 4px 0px;
	position:absolute;
	width:180px;
	background:#ffffff;
	box-shadow:0px -3px 4px rgba(0, 0, 0, 0.4) inset;
	border-bottom:1px solid #4E647E;
	border-right:1px solid #4E647E;
	border-left:1px solid #4E647E;
	display:none;
}
#routingsearch_results p {
	line-height: 22px;
	color:#888888;
	cursor:pointer;
	padding:0px 4px 0px 4px;
}
#routingsearch_results p.hovered {
	background:#4E647E;
	color:#ffffff;
	font-weight:bold;	
}



#ilogo {
	position:absolute;
	left:0px;
	bottom:0px;
}
#ilogo img {
	vertical-align:bottom;
	padding-left:5px;
}
#ilogo span {
	color:#ae0f0a;
	font-size:10px;
	line-height:14px;
	padding: 2px 4px 4px 4px;
	display:block;
}

#menu-links {
	position:absolute;
	left:300px;
	top:88px;
}
	
#menu-viewsettings {
	width:0px;
	height:80px;
	position:absolute;
	left:595px;
	padding:0px 0px 4px 105px;
	top:5px;
	background:url("images/sprites.png") no-repeat 88px -78px;
	color:#000;
	overflow:hidden;
}
#menu-viewsettings h5 {
	position:absolute;
	left:4px;
	top:4px;
	font-size:10px;
	font-weight:normal;
}
#menu-viewsettings_content {
	background:#fff;
	width:190px;
	border:1px solid #ddd;
}
#menu-viewsettings_content a {
	display:block;
	height:22px;
	font:12px/22px Arial,sans-serif;
	color:#000;
	padding:4px 4px 4px 34px;
	border-bottom:1px solid #999;
	background:#fff;
	position:relative;
	text-decoration:none;
}
#menu-viewsettings_content a:hover {
	background:#eee;
	color:#ae0f0a;
}
#menu-viewsettings_content a img {
	float:right;
	height:20px;
	vertical-align:middle;
}
#menu-viewsettings_content a span {
	display:block;
	background:url("images/sprites.png") no-repeat -212px -28px;
	width:12px;
	height:10px;
	position:absolute;
	left:8px;
	top:9px;
}
#menu-viewsettings_content a.vfalse span {
	background-position:-192px -28px;
}

#impressum span, #impressum p {
	line-height: 1.5em;
	margin-bottom: 10px;
}
#impressum h1 {
	line-height: 26px;
	margin-bottom: 15px;
	font-weight: 300;
	color: #aa001e;
}
#impressum h2 {
	line-height: 26px;
	margin-bottom: 10px;
	margin-top:20px;
	font-weight: 300;
	color: #000;
}
#impressum .red {
	color:#aa001e;
	font-weight:bold;
}
#impressum .grey {
	color:#666767;
}