#rtd2_div .scrollable_history table {
	position: static;
}

.routes_body a {
	font-size:10px;
	font-weight: normal;
}

.modular_report_table .modular_report_table_body .highlighted .highlightable {
	background-color: #E3E3FC;
}

.routingBlockRoute .segment_body .route_title,
.routingBlockRoute .segment_body .route_distance, 
.routingBlockRoute .segment_body .route_car, 
.routingBlockRoute .segment_body .route_date, 
.routingBlockRoute .segment_body .route_driver,
.routingBlockRoute .segment_body .route_starting_time,
.routingBlockRoute .segment_body .route_targets_order {
	display: inline-block;
	height: 30px;
	line-height: 30px;
	position: absolute;
	text-align: left;
	vertical-align: middle;
}

.routingBlockRoute .segment_body .route_targets_order {
	position: static;
	padding-right: 25px;
}

/* Limit space that can be taken. */
.routingBlockRoute .segment_body .route_driver span {
	display: block;
	float: right;
	max-width: 200px;
}

.routingBlockRoute .segment_body .route_date {
	left: 74%;
	width: 120px;
}

.routingBlockRoute .segment_body .route_starting_time {
	left: 87%;
}

.route_travel_data {
	background-color: #ededed;
	color: #28445c;
	font-size: 12px;
	font-weight: bold;
	 /*114 to align with second column of the table above */
	padding: 15px 0 15px 90px;
}

.route_travel_data .summary_data {
	padding-right: 40px;
}

.route_list_stored {
	height: 100%;
	overflow: auto;
	overflow-x: hidden;
	overflow-y: auto;
	background: #fff;
}

.route_list_stored .route_list {
	position:relative;
}

.route_list_container {
	/*height: 250px;	/* This must be dynamically calculated and/or customised by the user. */
	border-top: 1px solid #cccccc;
	/*border-bottom: 1px solid #cccccc; Do not override the border of a resizable block (set by .bottom_resizable). */ 
	clear: both;
}

.routingBlockRoute .route_status {
	float: right;
	padding: 5px 0;	/* Matches the top padding of .route_block_controls. */
	font-size: 10px;
	color: #999999;
	margin-right: 6px;
}

.route_target_template,
.route_endpoint_template,
.route_ramp_template,
.route_row_between_template {
	display: none;
}

.route_targets {
	clear: both;
	position: relative;
	border: none;
	background: #f5f7f9;
	padding: 0;
}

.route_targets .route_task_address,
.route_targets .ramp_address,
.route_targets .route_endpoint_address {
	cursor:pointer;
}

.route_target_block.selected td {
	background-color:#e1ebf0;
}

.route_title .route_monitoring {
	font-size: 11px;
	font-style: italic;
	color: #365b7b;
}

.route_targets_table {
	width: 100%;
	border-collapse: collapse;
}

.route_targets_table th {
	background-color: #ededed;
	color: #686868;
	padding:2px 15px;
	text-align:left;
	text-transform: uppercase;
	border-bottom: 1px solid #9cb2cc;
}

.route_targets_table td {
	background-color: #ffffff;
	padding: 12px 15px;
}

.route_targets_table tr.route_row_between_block td {
	background-color: #f6f6f7;
	color: #28445c;
	font-weight: bold;
	line-height: 16px;
	padding: 4px 15px;
	position: relative;
	height: 17px;
}

.routingBlockRoute .segment_header .segment_name .loading {
	height:3em;
} 

.route_targets_table tr.route_row_between_block td .loading {
	height:1.4em;
	vertical-align:middle;
	margin-left:20px;
}

.route_targets_table tr.marked td {
	background: #d0e4f8;
}

.route_targets_table .target_times .edit_mode {
	white-space:nowrap;
}

.route_task_target_travel_data {
	font-size: 11px;
	padding-left: 20px;
}

.route_ramp_block .route_task_target_ramp svg {
	width:25px;
	height:25px;
}

.route_ramp_block.missing-deadline td {
	background-color:#b80011;
	color:#fff;
}

.route_ramp_block.missing-deadline svg path {
	fill:#fff !important;
}

.route_ramp_block .calculated_time {
	display:none;
}

.route_endpoint_block td.comments {
	font-style:italic;
}

/* Override the floating. */
#rtd2_div .route_targets_table {
	float: none;
}

.route_task_target_down {
	margin-right: 18px;	/* Make space for the auto-reorder icon. */
}

.routingBlockRoute .segment_header .route_block_controls,
.details_headline .routes_toggler {
	float:right;
	line-height: initial;
	width: auto;
	padding: 6px 0 6px 6px;
	display:flex;
}

.routingBlockRoute .route_details_item.route_weight,
.details_headline .route_weight_title {
	width: 80px;
}

.routing_type_item,
.routing_type_item span {
	display:flex;
}

.routing_type_item span {
	flex-direction:column;
	justify-content:center;
}

.routing_type_item svg {
	width:20px;
	flex-grow:0;
	flex-shrink:0;
	margin-right:0.5rem;
}

.routing_type_item:hover svg path {
	fill:#fff !important;
}

.routingBlockRoute .ramp_add {
	display:none;
}

.routingBlockRoute .route_capacity_info.overload svg path#path2984 {
	fill:#fff !important;
}
	
.routingBlockRoute .route_capacity_info.overload svg path#path3806 {
	fill:#b80011 !important;
}

.routingBlockRoute .route_details_item.with_carrier.route_driver select,
.routingBlockRoute .route_details_item:not(.with_carrier).route_driver select,
.routingBlockRoute .route_details_item:not(.with_carrier):not(.with_trailer).route_car select {
    width: 100%;
}

.routingBlockRoute .route_details_item.route_distance,
#routingBlock .details_headline .route_dist {
	width: 90px;
}

.routingBlockRoute .route_details_item.route_distance .distance {
	display: inline-block;
    text-align: left;
    width: calc(100% - 20px); /* 20 = width of image to the left (15px) + its margin (5px) */
}

.routingBlockRoute .route_details_item.route_car {
	width: 10%;
	min-width: 75px;
}

.routingBlockRoute .route_details_item.route_carrier_company {
	width: 8%;
	min-width: 70px;
}

.routingBlockRoute .route_details_item.route_car.with_trailer {
	width: calc(10% + 20px);
	min-width: 75px;
}
	
#routingBlock .details_headline .route_car,
#routingBlock .details_headline .route_carrier_company {
	width:10%;
	min-width:75px;
}

#routingBlock .details_headline .route_carrier_company {
	width:8%;
	min-width:70px;
}

.routingBlockRoute .route_details_item.route_driver {
	width:25%;
	min-width: 1px;
}

#routingBlock .details_headline .route_driver {
	width:9%;
	min-width: 1px;
}

.routingBlockRoute .route_details_item.route_date input {
    width: 100%;
}

.routingBlockRoute .route_details_item.route_starting_time,
#routingBlock .details_headline .route_start_time {
	width:67px;
}

.routingBlockRoute .route_details_item.route_starting_time input {
    width: 100%;
}

.routingBlockRoute .route_details_item.route_date .date_clear {
	margin-left: 5px;
	margin-right: 0;
}

.routingBlockRoute .segment_body {
	background: #ffffff;
	padding: 0;
	width: auto;	/* Override .segment_body's 100%, as it extends the block out of its container in this case. */
}

td.target_times .time_icon {
	float:left;
	margin-right:2px;
}

td.task_assignment, 
td.task_assignment span,
td.task_assignment input {
	box-sizing: border-box;
}

td.task_assignment span, 
td.task_assignment input {
	width: 100%;
}

.route_list .action_buttons {
	text-align:right;
}

.route_list .action_buttons_wrap {
	display:flex;
}

.route_list button.route_task_target_edit {
	margin-right:10px;
}

button.route_copy {
	background-image: url('../images/routing/copy_gray.png');
}

button.route_copy:hover {
	background-image: url('../images/routing/copy_blue.png');
}


div.vehicle_types{
	display: inline-block;
}

.route_list .segment_body input, .route_list .segment_body select {
	background-color: #ffffff;
}

#routingBlock .segment_controls input {
	border: none;
	outline: none;
}

#routingBlock .bottom_bar {
	overflow: hidden;	/* Because the content is floating. */
}

/* Edit mode blocks hidden by default. */
#routingBlock .edit_mode {
	display: none;
}

#routingBlock .new_routes_container {
	border-top: 1px solid #c4c427;
	background: #ffff44;
	clear: both;
	padding: 5px;
}

#routingBlock .new_routes_container .route_list {
	background: #ffff44;
	position:relative;
}

#routingBlock .bottom_bar .route_pagination {
	float: left;
	padding: 5px 0;	/* Not margin, so the overflow would cover this block fully to the bottom. */
	overflow: hidden;	/* Because the contained buttons are floating.) */
}

#routingBlock .bottom_bar .route_list_tools {
	float: right;
	padding: 5px 20px;
	overflow: hidden;
}

#routingBlock .route_pagination .page_numbers {
	float: left;
	margin-top: 5px;	/* With font size 11px and the current button design (height 22px), it is on the same level as the "previous" and "next" button labels. */
	margin-left: 10px;	/* To match the margin-left of .button . */
	font-size: 11px;
}

#routingBlock .bottom_bar .route_list_tools .route_choice {
	float: left;
	margin-top: 4px;	/* To align with the page numbers on the left. */
	margin-right: 30px;
}

#routingBlock .bottom_bar .route_list_tools .route_choice input {
	margin-top: -1px;	/* Remove the margin set by the browser, and raise 1px for better looks (at least on my computer). */
}

#routingBlock .route_pagination .button.to_first {
	background: url('../images/button_next.png') no-repeat;
}

#routingBlock .route_pagination .button.to_last {
	background: url('../images/button_next.png') no-repeat;
}

#routingBlock .route_pagination button.IS_Button.inactive {
	color: #999999;
}

#routingBlock .status_bar {
	display: none;
	margin: 0;
	padding: 5px 10px;
}

#routingBlock .segment, #routingBlock .segment_header, #routingBlock .segment_body {
	float: none;
}

#routing_control_panel_head, #routing_controls_wrapper {
	border-color: #dce4f5;
	border-style: solid;
}

#routing_control_panel_head {
	background-color: #ffffff;
	background-image: none;
	border-width: 0px 5px;
	box-sizing: border-box;
	cursor: auto;
	height: 39px;
}

#routing_controls_wrapper {
	border-width: 2px 5px 5px;
}

#routing_control_panel_head .segment_name {	
	line-height: 53px;
	color:#000;
	margin:0;
	width: calc(100% - 280px);
}

#routing_control_panel_head .segment_name .routes_title {
	font-size:19px;
	margin-left:5px;
	font-weight:normal;
}

#routing_control_panel_head .segment_controls {
	height: 39px;
	line-height: 39px;
}

#routing_control_panel_head .segment_actions {
	float:right;
	height: 100%;
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.routingBlockRoute div.segment_header, 
.routingBlockRoute div.segment_name, 
.routingBlockRoute div.segment_controls {
    height: 43px;
    line-height: 43px;
}

.routingBlockRoute div.segment_header {
	background: #ffffff;
}

.routingBlockRoute div.segment_header.has-problems .route_block_controls.left:after {
	content:'!';
	font-weight:bold;
	color:#b80011;
	font-size:1.5em;
	position:absolute;
	top:calc(50% - 0.65em);
	right:0px;
}

.routingBlockRoute div.segment_header.closed {
	background: linear-gradient(#ffffff, #c9dff3);
}

#routingBlock .notice {
	background: no-repeat 12px center;
	border-radius: 5px;
	display: none;
	font-weight: bold;
	margin: 10px 15px;
	padding: 10px 10px 10px 43px;
}

#routingBlock .new_routes_container .notice {
	display: block;
}

#routingBlock .notice.information {
	background-color: #dae7f3;
	background-image: url("../images/routing/info.png");
	color: #585858;
}

.targetDetailsList {
	border-collapse: collapse;
	list-style-type: none;
	padding: 0 40px;
}

li.targetDetailsListItem {
    display: table-row;
}

li.targetDetailsListItem.tableRow {
    display: block;
}

.targetDetailsListItem span.name {
	border-left: 1px solid #9cb2cc;
	font-weight: bold;
	display: table-cell;
	text-align: right;
	/*width: 200px;*/
}

.targetDetailsListItem span.value {
	border-right: 1px solid #9cb2cc;
	display: table-cell;
	/*padding-left: 20px;*/
	text-align: left;
	/*width: 200px;*/
}

.targetDetailsListItem span.name, .targetDetailsListItem span.value  {
	border-top: 1px solid #9cb2cc;
}

.targetDetailsListItem span.name, .targetDetailsListItem span.value  {
	border-bottom: 1px solid #9cb2cc;
}

.targetDetailsTable {
	border: 1px solid #9cb2cc;
	border-collapse: collapse;
	margin: 10px 0;
}

.targetDetailsHeaderCell {
    text-align: left;
}

.targetDetailsListItem span.name, .targetDetailsHeaderCell {
	background-color: #ededed;
    color: #686868;
    padding: 12px 15px;
    text-transform: uppercase;
}

.targetDetailsListItem span.value, .targetDetailsDataCell {
	background-color: #ffffff;
    padding: 12px 15px;
}