.calendar_icon {
	border: 0;
	cursor: pointer;
	vertical-align:text-top;
}


/*  Price map
-------------------------------- */

#price_map_container {
	background: #e4f4fd;
	width: 590px;
	height: 400px;
	overflow: hidden;
	position: relative;
}

#price_map_container.hide_map {
	height: 1px;
}

#price_map_container.show_map {
	height: 400px;
}

#price_map_mask_container {
	position: relative;
}
#price_map_mask {
	position: absolute;
	top: 15px;
	left: 0;
	z-index: 1000;
	width: 590px;
	height: 8px;
	background: #fff;
}


/*  Search results
-------------------------------- */

#search_results, #waiting_for_search {
	position: relative;
	margin: 0;
	Xbackground: url(/images/gradient_below_tabs.png) 0 0 repeat-x;
}

#number_of_results {
	font-size: 20px;
	padding: 15px;
	padding-bottom: 5px;
	padding-left: 15px;
	margin: 0;
}

p#edit_new_search_links, .pagination_links {
	padding: 0 15px 10px 15px;
	margin: 0;
}


/*  Updating... notice
-------------------------------- */

#page.search #updating_notice {
	z-index: 1000;
	position: fixed;
	top: 35%;
	xright: 25%;
	left: 40%;
	width: 300px;
	width: 300px;
	height: 80px;
	padding: 40px;
	background: #FFEA98;
	background: transparent url(/images/updating_notice_background.png?20100310) 0 0 no-repeat;
}

#price_map_container #updating_notice {
	position: absolute;
	top: 100px;
	left: 100px;
}

#inner_updating_notice {
	padding: 0;
}



#updating_notice h2, #updating_notice p {
	margin: 0;
	padding: 0 0 0 20px;
	padding: 0;
	text-align: center;
}

#updating_notice h2 {
	font-size: 18px;
}


#update_progress {
}

#updating_notice .progress {
	position: absolute;
	bottom: 40px;
}

.progress {
  width: 300px;
  height: 28px;
}

.progress div {
	background: transparent url(/images/booking_progress_bar.gif?20100307) 0 0 no-repeat;
	height: 28px;
}

#progress_bar {
    background: transparent url(/images/booking_progress_bar.gif?20100307) 0 0 no-repeat;
    height: 28px;
}

.progress .empty {
	width: 0;
}

.progress .full {
	width: 100%;
}

/*  Search
-------------------------------- */


.search_attribute {
	background: #daeef8 url(/images/search_box_border_bottom.png) left bottom no-repeat;
	background: #e6f4fb url(/images/search_box_border_bottom.png) left bottom no-repeat;
	width: 580px;
	padding-bottom: 10px;
	margin: 3px 0;
	clear: both;
}

.search_attribute_body {
	background: transparent url(/images/search_box_border_top.png) 0 0 no-repeat;
	width: 550px;
	padding: 5px 20px 10px 10px;
	padding: 5px 20px 0 10px;
}

div.auto_complete {
}
div.auto_complete ul {
	z-index: 1000;
}
div.auto_complete li {
	z-index: 2000;
}

.search_attribute.has_errors {
	background-color: #ffe0cc;
	background-color: #ffebcb;
}

.has_errors .attribute {
	color: #f60;
	font-weight: bold;
}

div.xattribute_bottom {
	width: 580px;
	margin: 0 0 0 -10px;
	height: 10px;
	visibility: visible;
	background: transparent url(/images/search_box_border_bottom.png) 0 0 no-repeat;
}

div.attribute_bottom {
	width: 580px;
	height: 10px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.date_with_errors {
	background: transparent url(/images/field_with_errors_background_24px.png?200904212022) right top no-repeat;
	padding: 3px 20px 5px 4px;
	white-space: nowrap;
}

.value, .attribute {
	padding-top: 10px;
}

.attribute, .field_with_errors label {
	color: #434343;
}

.attribute {
	width: 90px;
	float: left;
	color: #434343;
	font-size: 16px;
	text-align: right;
	padding-right: 10px;
}

.value {
	width: 450px;
	float: left;
}

#origin .value {
	padding-top: 4px;
}

hr {
	clear: both;
	border: 0;
	visibility: hidden;
}

input.search_button:hover {
	background-position: 0 -35px;
}
input.search_button {
	background: transparent;
	border: 0 none;
	color: transparent;
	cursor: pointer;
	height: 37px;
	width: 141px;
	margin-bottom: 5px;
}


/*	Search boxes:
	------------------------------------------ */

.search_type, #ticket_type label, .value_note {
	font-size: 16px;
}

.search_type small, .notes {
	color: #216099;
}
.search_type small {
	font-size: 0.7em;
	font-size: 11px;
	line-height: 15px;
}

#ticket_type label {
	margin-right: 0.5em;
}
#ticket_type input {
}
.search_type {
	position: relative;
	margin-bottom: 8px;
}

#search_origin, input#search_destination {
	width: 100%;
	font-size: 1.4em;
}

.alternative_airport_selector {
	border: 1px solid #bbdaea;
	border-width: 0 1px 1px 1px;
	margin: 5px 0 0 10px;
	padding: 5px 5px 5px 10px;
	width: 400px;
	font-size: 12px;
}

.alternative_airport_selector li {
	vertical-align: baseline;
	list-style: none;
	line-height: 20px;
}

.alternative_airport_selector ul.many {
	position: relative;
	height: 120px;
	overflow: auto;
	width: 100%;
}
.alternative_airport_selector ul.many label {
	width: 360px;
}

.alternative_airport_range {
	background: #cfe1eb;
	background: #daeef8;
	background: #e6f4fb;
	margin-left: -17px;
	margin-left: -20px;
	margin-top: -5px;
	padding-right: 10px;
}
.alternative_airport_range select {
}

.alternative_airports {
	margin-top: 3px;
	list-style: none;
	line-height: 22px;
}

.alternative_airports li input {
	margin-top: 4px;
	margin-right: 7px;
}

legend.alternative_airport_range label, .alternative_airports label {
	vertical-align: baseline;
}

.alternative_airports input {
	clear: both;
	float: left;
}

.alternative_airports span {
	color: #216099;
	font-size: 0.8em;
}

#search_depart_on_min, #search_depart_on_max, #search_depart_on {
	width: 110px;
}

#depart_on_weekday, #return_on_weekday {
	margin: 5px 0 5px 40px;
}

.on_a_weekday_label {
	margin-top:15px;
	margin-right:5px;
	float:left;
}

#depart_on_weekday table, #return_on_weekday table {

	border: 0;
}

#depart_on_weekday table th, #depart_on_weekday table td, #return_on_weekday table th, #return_on_weekday table td {
	border: 0;
	padding: 0 4px 2px 4px;
	font-weight: normal;
	width: 18px;
	text-align: center;
}

/*	Auto complete:
	------------------------------------------ */

.value .auto_complete {
	background: #fff;
	z-index: 100;
	border: 1px solid #a8c7d9;
	border-width: 0 1px 1px 1px;
	max-height: 200px;
	height: auto;
	overflow: auto;
	width: 426px;
}

.value .auto_complete ul {
	list-style-type: none;
	margin: -2px 0 0 0;
	padding: 0;
	width: 100%;
	width: auto;
}

.value .auto_complete ul li {
	margin: 0;
	padding: 3px 5px;
	padding: 1px 0 1px 6px;
	position: relative;
	cursor: pointer;
}

.value .auto_complete ul li.selected, .value .auto_complete ul li.selected .suffix, .value .auto_complete ul li.selected .airport_code {
	color: #fff;
	background-color: #093b8b;
}

.auto_complete .suffix, .auto_complete .airport_code {
	color: #666;
}

.auto_complete .airport_code {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	height: 1em;
	width: 2.5em;
	padding: 1px 5px;
	background-color: #fff;
}

.auto_complete ul li.selected .airport_code {
	color: #CFE1EB;
}

/*	Field validation:
	------------------------------------------ */

#errorExplanation {
	display: none;
}

#origin .field_with_errors, #destination .field_with_errors {
	padding: 0;
}

#search_origin, input#search_destination, input.date {
	width: 416px;
	height: 21px;
	padding: 4px;
	font-size: 17px;
	border: 2px solid #BBDAEA;
}

.field_with_errors {
	color: #f60;
}

.field_with_errors #search_origin, .field_with_errors input#search_destination {
	background: transparent url(/images/field_with_errors_33px.png) no-repeat top right;
	padding: 6px 33px 6px 4px;
	height: 21px;
	border: 2px solid #f60;
	border-width: 0 0 0 2px;
	width: 420px;
}

.value div.field_with_errors input.date {
	padding: 4px 24px 4px 4px;
	background: transparent url(/images/field_with_calendar_and_errors_background_24px.png) no-repeat top right;
	height: 16px;
	border: 2px solid #f60;
	border-width: 0 0 0 2px;
}

input.date {
	width: 110px;
	height: 16px;
	margin: 0;
	padding: 2px;
	background: #fff url(/images/calendar_icon.png) right top no-repeat;
	font-size: 12px;
}

#return select {
	margin: 2px;
	padding: 0;
}

.field_with_errors, .field_with_errors label {
	background: transparent;
	display: inline;
}

#depart, #return {
	padding-bottom: 0;
}

#search_with_destination_false, #search_with_destination_true, .search_type_selector {
	display: block;
	position: absolute;
	left: 0;
	left: -5px;
	top: 3px;
}

#depart.has_errors .attribute, #return.has_errors .attribute {
}

.search_type_selector .field_with_errors {
	display: block;
	top: 0;
	left: 0;
	padding: 0;
}

#destination .search_type, #depart .search_type, #return .search_type {
	padding: 0 5px 10px 18px;
	width: 416px;
}

#destination .search_type {
	padding-bottom: 0;
}

.search_type_details {
}

.departure_details, .return_details {
	margin: 5px 0 0 0;
}

.departure_details, .return_details {
	font-size: 13px;
	font-weight: bold;
	width: 440px;
}