/* shared tags =======================================================*/
html, body {
	margin: 0px;
	border: 0px;
	padding: 0px;
}

body {
	background: url("/FILE/Apps/FixedRoute/CustomerInfo/images/background-pattern.gif") repeat-x scroll left top #99cb65;
	font-family: Arial, Helvetica, sans-serif; /* note that buttons have their own font-family  under '.button' */
}

hr { /* TODO: are all of these attributes needed? */
	border-style: inset;
	border: 1px solid #808080;
	display: block;
	margin-bottom: 5px;
	margin-left: 0px;
	margin-top: 5px;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}

table {
	border-collapse: collapse;
}

li {
	list-style: none;
}

input {
    margin: 3px 2px;
}

input, select, option {
	font-family: Arial, "Lucida Grande", Verdana, Lucida, Helvetica, sans-serif;
	font-size: 1em;
	vertical-align: middle;
}

select{
	font-size: 1.2em;
}

a {
	color: #3F7120;
}

textnodes {
	display: none;
}

/* end of shared tags ================================================*/
/* shared page elements ==============================================*/

/* page footer -------------------------------------------------------*/
#pageFooter {
	font-size: 0.688em;
	padding-bottom: 10px;
	height: 82px;
}

/* footer right side links */
#footerLinks {
	color: #ffffff;
	line-height: 20px;
	float: right;
	padding-top: 17px;
}

.footerLinkRow a {
	color: #ffffff;
	font-weight: bold;
}

/* divider between links */
.divider {
	padding: 0 3.5px;
}

.footerLinkRow {
	float: right; /* use <br/>s to allow each line to float right */
	margin-right: 20px;
}

/* footer language selection */
.footerLinkRow select {
	cursor: pointer;
	font-weight: bold;
	vertical-align: middle;
	border-color: black;
}

/* the text at the very bottom of the screen */
#copyrightInfo {
	margin-bottom: 5px;
	font-size: 10px;
	text-align: center;
}

#copyrightInfo a, #copyrightInfo a:hover {
	color: #000000;
}

/* page header -------------------------------------------------------*/
#pageHeader {
	color: #ffffff;
	height: 80px;
}

#pageHeaderLogo {
	float: left;
	padding-left: 14px;
}

#pageHeaderText {
	font-size: 1.500em;
}

#headerNavigationBar {
	font-size: 0.813em;
	float: right;
	padding-top: 40px;
	margin: 0;
}

#headerNavigationBar li {
	display: inline-block;
	margin-right: 15px;
}

#headerNavigationBar li a{
	color: #ffffff;
	font-weight: bold;
	text-decoration: none;

}

#headerNavigationBar li a:hover {
	color: #faf8cc;
}


/* end of shared page elements =======================================*/
/* shared classes ====================================================*/

/* shared layout and sizing classes ----------------------------------*/
.pageWidth {
	width: 960px;
}

.sidePadded {
	padding: 0px 10px;
}

.centredHorizontal {
	margin: 0px auto;
}

.displayInline {
	display: inline;
}

.leftGap {
	margin-left: 20px;
}

.minimalHeaderSpacing {
	margin: 0px;
	padding-bottom: 0.6em;
	padding-top: 0.5em;
}

.paddedOptions option {
	margin: 5px 0px; /* pads items in a select one list box */
}

.centredTextBlock { /* for single cells */
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.shortGap {
	height: 5px;
}

.gap {
	height: 15px;
}

.smallSpace {
	padding-left: 0.500em; /* use padding so that spacer spans can be empty */
}

.mediumSpace {
	padding-left: 1.000em; /* use padding so that spacer spans can be empty */
}

.breakWordWrap {
	word-wrap: break-word;
}

.floatLeft {
	float: left;
}

.floatRight {
	float: right;
}

.clear {
	clear: both;
}

/* borders - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/

.thickBorder {
	border-width: 7px;
}

/* widths - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ 
.oneThirdWidth {
	width: 33%;
}

.oneQuarterWidth {
	width: 25%;
}

.fullWidth {
	width: 100%;
}

.smallInputWidth {
	width: 15em;
}

.inputWidth {
	width: 20em;
}

.largeInputWidth {
	width: 25em;
}

.fullInputWidth{
	width: 494px;
}

.dropdown{
	font-size: 1em;
    max-width: 425px;
}

.dropdown option{
	font-size: 1em;
    max-width: 415px;    
}

/* tables - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ 
.centredCells td { /* for entire tables */
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.maxCellSize100 th, .maxCellSize100 td {
	word-wrap: break-word;
	max-width: 100px;
}

.topAlignedCells td { /* for entire tables */
	vertical-align: top;
}

.leftAlignedHeader th{
	text-align: left;
}

/* buttons - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
/* don't alter the layout or font-size of calendar buttons */
.calendar .button {
	display: table-cell;
	font-size: 1em;
}

.button {
	cursor: pointer; /* for psudeo-buttons */
	display: inline-block;
	font-weight: bold;
	overflow: visible;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
	
	margin: 2px;
    border-image: none;
    border-radius: 4px 4px 4px 4px;
    border-style: solid;
    border-width: 1px;
	height: 2em;
}

.button.disabled,
.button[disabled],
fieldset[disabled] .button {
  pointer-events: none;
  cursor: not-allowed;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: .65;
}

.largeButton {
	font-size: 1.25em;
}

.spacedButton {
	margin: 10px 2px;
}

/* table buttons should follow the table's size */
.tableButton {
	font-size: 1em;
}

.imageButton {
	cursor: pointer;
    vertical-align: middle;
}

/* shared font/text classes ------------------------------------------*/
.indentedText {
	padding-left: 10px;
}

.unstyledLink {
	text-decoration: none;
}

.underlinedText {
	text-decoration: underline;
}

.italicisedFont {
	font-style: italic;
}

.boldFont {
	font-weight: bold;
}

.smallFont {
	font-size: 11px;
}

.p900em {
	font-size: 0.900em;
}

.p880em {
	font-size: 0.880em;
}

.smallFontInput input, .smallFontInput select, .smallFontInput textarea {
	font-size: 11px;
}

.smallerFont {
	font-size: 75%;
}

.unstyledLink a {
	text-decoration: none;
}

/* recaptcha widget --------------------------------------------------*/
#recaptcha_widget
{
}

#recaptcha_image {
	width: 300px;
	height: 57px;
	margin-right: 12px;
	float:left;
}

#recaptcha_background {
	padding-left: 9px;
	padding-top: 7px;
	height: 100px;
	width: 425px;
}

#recaptcha_options {
	margin-bottom: 6px;
}

#recaptcha_options a {
	line-height: 18px;
	font-weight: bold;	
}

/* progress bar pop-up -----------------------------------------------*/
#hiddenPrompt {
	background-color:rgba(64,64,64,0.75);
	height:100%;
	left:0;
	position:fixed;
	top:0;
	width:100%;
	z-index:1000;
}

#overflowWindow {
	background:url(../images/progress_bar.gif) center #ffffff;
	margin:150px auto;
	overflow:auto;
	min-height:100px;
	width:280px;
	z-index:1001;
	text-align: center;
	border-radius:5px;
}

/* arrows ------------------------------------------------------------*/
.arrow {
	cursor: pointer;
	border-style: solid;
	height: 0;
	width: 0;
}

.arrowUp {
	border-width: 0px 9px 17px 9px;
}

.arrowRight {
	border-width: 9px 0px 9px 17px;
}

.arrowDown {
	border-width: 17px 9px 0px 9px;
}

.arrowBesideText {
	float: left;
	margin-left: 3px;
}

.arrowTD {
	padding-left: 4px;
}

/* other shared rules ------------------------------------------------*/
.borderedCells td, .borderedCells th {
    border: 1px solid #6e6e6e; /* table grid colour */
}

.unselectable {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* used for messages beside input boxes (passwords match on registration page, for example */
.formMessage 
{
	padding: 3px 9px;
	width: 15em;
	border: 1px solid #cbceab;
	display: inline-block;
	vertical-align: top;
}

.hidden {
	display: none;
}

.visible {
	display: inline;
}

/* duplicate of home page icon which appears on various pages */
.pageIcon {
	width: 66px;
	height: 66px;
	padding: 0px 10px 0px 0px;
	float: left;
}

.bulletlessList {
	list-style: none;
	list-style-image:none;
	padding: 0;
	margin: 0;
}

.center {
	text-align: center;
}

.half-size-bigger 
{
	font-size: 1.5em;
}

.help-sub-title
{
	font-weight: bold;
}

.next-bus-on-time
{
	color: Black;
}

.next-bus-late
{
	color: Red;
}

.next-bus-early
{
	color: #00C800
}

/* end of shared classes =============================================*/

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}