body {
	font-family: Helvetica, Arial, Verdana, sans-serif;
	font-size:14px;
	background-color:#f1f7e5;
}
strong {
	font-weight:bold;
}
select {
  font-size:14px;
  margin:5px 0;
}
input[type='submit'] {
  font-size:14px;
}
a:link, a:visited {
	color:#e5901a;
	text-decoration:none;
}
a:hover, a:active {
	color:#ff9800;
	text-decoration:underline;
}
form {
  position:relative;
}
#container {
  width:967px;
  padding:0 10px;
  margin:0 auto;
  background: transparent url('images/container_bg.png') top left repeat-y;
}
#header {
	background-color: #1c5379;
	font-family: Helvetica, Arial, Verdana, sans-serif;
	height:70px;
	padding:15px;
	color:#eee;
	border-bottom:5px solid #083643;
	position:relative;
}
#header a {
  color:#a6d3eb;
}
#header .name {
	font-size:36px;
	font-weight:bold;
}
#header .stage {
	font-size:14px;
	color:#fff;
	
}
#header p {
	
}
#navigation {
  position:absolute;
  bottom:3px;
  left:0;
  right:200px;
  height:25px;
  width:100%;
  background-color:#0078a4;
}
#navigation a, #navigation a:visited {
  color:#fff;
  background-color:#0078a4;
  padding: 7px 7px 3px 7px;
  margin: 0 2px;
  /*border-top:5px solid #e5901a;*/
  height:15px;
  display:block;
  float:left;
}
#navigation a:hover, #navigation a:active {
  background-color:#fff;
  /*border-top:5px solid #bbbbfe;*/
  text-decoration:none;
  color:#1c5379;
}

#subnavigation {
  position:absolute;
  top: -50px;
  right: 200px;
  height:15px;
  width:450px;
}

#subnavigation a, #subnavigation a:visited {
  background-color:#feffff;
  padding: 5px 5px 2px 5px;
  margin: 0 2px;
  border-bottom:3px solid #083643;
  display:block;
  float:left;
}
#subnavigation a:hover, #navigation a:active {
  background-color:#fefefe;
  border-bottom:3px solid #0078a4;
  text-decoration:none;
}

#canvas_container {
	overflow:auto;
}
#canvasPan {
	overflow:auto !important;
}

table {
	padding:10px;
	min-width:350px;
}

ul {
	margin-left:15px;
}
ul li {
	list-style-type:circle;
	line-height:20px;
}
.ui-tabs li {
  list-style-type:none;
}
.ui-tabs a {
  padding: 3px 8px !important;
}
.ui-tabs-panel {
  font-size:12px;
}

#main {
	padding:20px 20px 0 20px;
	margin: 0 auto;
	position:relative;
	background-color:#fff;
	color:#263248;
}
#main h1 {
  margin-top:30px;
}
#main h1, #main h2, #main h3 {
  color:#004460;
  font-family: "Trebuchet MS";
  padding-bottom:5px;
  margin-bottom:10px;
  border-bottom:1px solid #555;
}
#main h1 {
	font-weight:bold;
	font-size:28px;
}
#main h2 {
	margin-top:20px;
	font-weight:bold;
	font-size:18px;
}
#main h3 {
	font-weight:bold;
	font-size:15px;
	border-bottom:1px solid #ccc;
	margin: 5px;
}
#main .left2col {
	width:50%;
	float:left;
}
#main .right2col {
	width:50%;
	float:right;
}
#main p {
	margin:10px 0;
	line-height:18px;
}
#main .content {
  position:relative;
}

.relative {
  clear:both;
  position:relative;
}
#home_banner {
  background: transparent url('images/vista_2.jpg') top left no-repeat;
  height: 300px;
  border:1px solid #f1f7e5;
  position:relative;
}
#home_banner .widget, #home_banner .widget_bg {
  position:absolute;
  margin:30px;
  padding:15px;
  width:450px;
  height:140px;
  z-index:2;
  font-size:14px;
}
#home_banner .sidebar, #home_banner .sidebar_bg {
  position:absolute;
  right:0;
  top:0;
  width: 350px;
  height:230px;
}
#home_banner .widget_bg {
  opacity:0.9;
  background-color:#fff;
}
#home_banner .sidebar_bg {
  opacity:0.2;
  background-color:#fff;
}
#imageinfobutton, #imagedescription {
  position:absolute;
  bottom:0;
  right:0;
  background-color:#000;
  color:#fff;
  padding:5px;
  font-size:11px;
}
#imagedescription {
  margin-right:15px;
  display:none;
}

#home_content {
  width:546px;
  padding-right:25px;
  border-right:1px solid #555;
}
#home_sidebar {
  position:absolute;
  top:0;
  right:0;
  width:330px;
  padding-left:25px;
  border-left:1px solid #555;
}
#home_sidebar .addthis_toolbox, #home_sidebar a.box {
  padding:12px;
  border:1px solid #ccc;
}
#home_sidebar a.box {
  margin-top:10px;
  display:block;
  font-weight:bold;
  color:orange;
  text-align:right;
  font-size:16px;
}
#home_sidebar a.box:hover {
  border:1px solid #eee;
}
#home_sidebar h2.first {
  margin-top:0;
}

table.route_stops {
	width:100%;
}
td {
	padding:2px 3px;
  min-height:16px;
  vertical-align:center;
}
td.imagecell {
  padding:0;
}
tr.odd {
	background-color:#e4f8ff;
}
tr.even {
}
th {
  font-weight:bold;
}

.clear {
	clear:both;	
}

.textinput_example {
	color:#888;
}


/* views */
.floatright {
	float:right;
}
.floatleft {
	float:left;
}
.stop_card {
	width:225px;
	font-size:12px;
	min-height:200px;
	margin:5px 2px 2px 2px;
	border:1px solid #eee;
}
.stop_card .header {
	background-color:#004da8;
}
.stop_card .header .bay {
	font-size:14px;
	font-weight:bold;
	color:#fff;
	padding:3px;
}
.stop_card .header img {
	width:18px;
	height:18px;
	float:right;
	margin:1px;
}
.stop_card .number {
	background-color:#eee;
	padding: 1px 3px;
	margin-bottom:3px;
	text-align:right;
	font-weight:bold;
}
.stop_card .number a {
  color:#555 !important; /* override link styles */
}
.stop_card .times_header {
	background-color:#eee;
	padding:3px;
	margin:5px 0 3px 0;
	font-weight:bold;
	color:#555;
}
.stop_card .routes {
	padding:0 3px;
}
.stop_card .nextbuses {
	padding:3px;
}
.stop_card table {
  width:100%;
  min-width: 0;
  padding:0;
}
.stop_card td.time {
  width:20px;
}
.area_map {
	padding:5px;
	font-size:12px;
}

.labels {
  margin: 3px 0;
  height:10px;
}
.labels > div {
  float:left;
  width:130px;
  padding:2px;
  margin: 0 2px;
  text-align:center;
  font-weight:bold;
}
.labels .group {
  background-color:yellow;
}
.labels .type {
  background-color:#00a841;
}
.labels .accessible {
  background: #6cbbe7 url('images/accessible_solidbg_15.png') 3px center no-repeat;
}

.alert_heading {
  padding:3px 25px;
  border-bottom:1px solid #000;
  font-weight:bold;
  margin: 0.5em 0;
  position:relative;
}
.alert_heading.alert {
  background: #f3ed7c url('images/error.png') 5px center no-repeat;
}
.alert_heading.okay {
  background: #deffde url('images/accept.png') 5px center no-repeat;
}
.alert_heading .updated {
  position:absolute;
  bottom:3px;
  right:25px;
}
.alert_item {
  padding:0 1em;
  line-height:17px;
}
.alert_feed {
  float:right;
  margin-top:-35px;
}
/* ===== */

#prefooter {
  margin-top:2em;
  padding: 3px 0;
}
#prefooter a, #prefooter a:visited {
  color:#aaa;
}
#footer {
	width:100%;
	padding:20px 0 0 0;
	border-top:5px solid #1c5379;
	background-color:#a6d3eb;
	font-size:11px;
	color:#1c5379;
}
#footer .links, #footer .credit {
	float:right;
	clear:right;
	padding: 5px 10px;
}
#footer .datasource {
	padding: 5px 10px;
}
#footer .technical {
  border-top:1px solid #0078a4;
  padding:20px 10px 10px 10px;
  margin-top:10px;
}
#debug_sql_toggle {
  margin-top:20px;
	display:block;
	background-color:#eee;
	color:#333;
	padding:2px;
	font-size:12px;
}
#debug_sql {
	display:none;
	font-size:11px;
}



#canvas .stop {
	stroke: blue;
	stroke-width: 3px;
	fill: #fff;
}
#canvas .scheduled {
	fill: orange;
}
#canvas .stop_aux {
	stroke: #777;
	stroke-width: 2px;
	fill:#fff;
}
#canvas .stop_aux.end {
	fill:red;
}
#canvas .stop_aux.start {
	fill:green;
}
/* most text attributes need to be !important to override defaults */
#canvas .stop_name {
	text-anchor: start;
}
#canvas .route_header {
	font-size:32px !important;
	fill: #eee;
	font-weight:bold !important;
	text-anchor: start;
}
#canvas .path_label {
	font-size:16px !important;
	fill: #aaa;
	text-anchor: start;
}
#canvas .route_path {
	stroke: orange;
	stroke-width:5px;
}
#canvas .route_path_aux {
	stroke: #ccc;
	stroke-width:3px;
}
#canvas .route_headsign {
	text-anchor: start;
	font-weight:bold !important;
}
#canvas .route_headsign.right {
	text-anchor: end;
}
#canvas .direction_separator {
	stroke: #ddd;
	stroke-width:1px;
}
#canvas .direction_separator_label {
	font-size:18px !important;
	text-anchor: start;
	fill: #ccc;
}
#canvas_container .moveable {
	cursor:move;
}

.timetable {
}
.timetable td {
	text-align:center;
	font-size:12px;
	border-right:1px solid #ccc;
	vertical-align:middle;
}
#timetable_customize {
  
}
#timetable_customize .related {
  position:absolute;
  width:250px;
  margin-left:350px;
  padding:10px;
}
#timetable_customize .related li {
  list-style-type: none;
}
table.sticky-header th, .timetable th {
	text-align:center;
	font-size:12px;
	min-width:90px;
	font-size:12px;
	text-align:center;
	background-color:#b8cfee;
	padding:10px 3px 3px 3px;
	vertical-align:bottom;
	border-right:1px solid #fff;
	width:100%;
}
table.sticky-header {
	top:-10px !important;
}
.timetable .headsign, table.sticky-header .headsign {
	text-align:left;
	min-width:110px;
}
.timetable tr.highlight {
	background-color:yellow;
}
.timetable td.notice {
	text-align:left;
	padding:15px;
	border-right:none;
}
/* stop name components */
.at {
	font-size:9px;
}
.stop .direction, .stop .along, .stop .at {
  color:#7e8aa2;
}
.stop .intersect {
  
}

.t24h {
	display:none;
}
.t12h {
}

td.service_group {
  padding:0 0 0 5px;
}
span.service_group {
  padding: 0 3px;
}
.service_group.noservice {
  color:#fff;
  background-color:#eee !important;
}
.service_group.mf {
  background-color:#ffcb7f;
}
.service_group.sat {
  background-color:#ffcb7f;
}
.service_group.sun {
  background-color:#ffcb7f;
}


#canvas .stopline {
	stroke: #ccc;
	stroke-width: 0.5px;
}
#canvas .tripline {
	stroke: blue;
	stroke-width: 0.5px;
}
#canvas .lineheader {
	text-anchor: start;
	font-size:9px !important;
}


#route_map {
	width:100% !important; /* overrides VE default of 600 */
	height:450px;
	margin:0;
	position:relative;
}
#stop_map {
	float:right;
	width:450px !important;
	height:350px !important;
	position:relative;
}
.hidden, .printonly {
	display:none;
}


#infowindow{
  width: 300px;
}
#infowindow_contents{
  background-color: #FFF;
  border: 1px solid  #004da8;
}
#infowindow_beak{
  width: 28px;
  height: 38px;
  background: url('images/corners/blue_beak.png') top left no-repeat transparent;
}
* html #infowindow_beak{
  /* Alpha transparencies hack for IE */
  background-image:none;
  filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/corners/blue_beak.png', sizingMethod='crop');
}
#infowindow_tl, #infowindow_tr, #infowindow_bl, #infowindow_br,
#infowindow_t,#infowindow_l,#infowindow_r,#infowindow_b{
  height: 0px;
  width: 0px;
}
.widget {
	font-size:12px;
}
.nextbus_widget table {
	min-width:0;
	width:100%;
}
.nextbus_widget .stop_id {
	text-align: left;
	font-weight:bold;
}
.nextbus_widget .stop_id a {
	color:#fff;
}
.nextbus_widget .stop_id, .nextbus_widget .stop_name {
	background-color: #004da8;
	padding:1px;
	color:#fff;
}
#nextbuses {
  clear:left;
}

.input_form {
	width:400px;
	padding:20px;
	border:1px solid #aaa;
	background-color:#e4f8ff;
	margin:2em;
}

.ui-datepicker-calendar {
  min-width:0;
}

table.grid td {
  border-right: 1px solid #ccc;
  min-width:14px;
  text-align:center;
}
table th {
  padding-right:1em;
}
table {
  background-color: #fff;
}

#powered_by {
  padding:20px;
}
#powered_by img {
  margin-right:15px;
}

.learnmore_box {
  width:700px;
  padding:5px 2em;
  margin-bottom:10px;
  font-size:13px;
  border-left:5px solid #1c5379;
}

.default_text_active {
  color:#888;
  font-style: oblique;
}

h3.direction {
  text-transform: uppercase;
}