/* FORMS */

.styled{
	padding-bottom: 28px;
	background:  url('../images/panel-shadow.gif') left bottom repeat-x;
}
.styled fieldset{
	border: 0 none;
	margin: 0;
	margin-bottom: 8px;
	padding: 0;
}
.styled legend{
	min-height: 1.2em;
 	width: 100%;
 	margin: 0;
	padding-top: 4px;
 	margin-bottom: 4px;
 	padding-bottom: 4px;
 	color: #000;
 	font-family:Arial, Helvetica, sans-serif;
 	font-size: 1.25em;
    font-weight: bold;
    /*border-bottom: 1px solid #CCC;*/
	white-space: normal;
}
.styled textarea,
.styled input{
  	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.2em;
}
.styled label{
	text-align: right;
	float: left;
	width: 100px;
	margin-top: 4px;
	margin-right: 4px;
}

.styled .full-width-labels label, .styled .linear .full-width-labels label { /* Checkboxes */
	float: none;
	width: auto;
	display: inline;
	
	}

.styled label.mandatory, /* Deprecated */
.styled label[title~=mandatory]{
	background: url('/tfl-global/images/mandatory.gif') right no-repeat;
}

label.required-field em {
	display: inline-block;
	text-indent: -9999px;
	width: 0.893em;
	background: url("/tfl-global/images/required-field.gif") no-repeat center center;
	text-align: left;
}

.styled .linear label{
	text-align: left;
	display: block;
	float: none;
	width: auto;
}
.styled .label-help{
	font-weight: normal;
	display: block;
}
.styled legend label{
	float: none;
}
.styled em,
em.alert{
	font-style: normal;
	color: red;
}
.styled fieldset ol{
	float: left;
	margin: 0;
	padding: 0;
	margin-bottom: 19px;
}
.styled .highlight-box ol{
	float: none;
}
.styled fieldset li{
	list-style: none;
	background-image: none;
	padding-left: 0;
	border: 2px solid #FFF;
	margin-bottom: 2px;
	clear: left;
}
.styled fieldset fieldset{
	border: 0 none;
}
.styled fieldset fieldset legend{
  	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-size: 1em;
	border-bottom: 0 none;
	color: #666;
}
.styled fieldset fieldset label{
	display: block;
  	width: auto;
	margin-left: 100px;
}
.styled ol{
	margin-top: 8px !important;
}
/* grey form backgrounds */
form.grey{
	background-color: #F7F7F7;
	padding-left: 2px; padding-right: 2px;
}
.styled.grey fieldset li{
	border: 0px solid #F7F7F7;
}
/* Forms in supporting content column adopt the grey panel style */
#supporting-content .styled legend{
  	padding-top: 5px;
  	width: 182px;
  	font-family:Arial, Helvetica, sans-serif;
  	background:  url('../images/grey-panel-header.gif') repeat-x;
  	border-bottom: 0 solid;
}
#supporting-content .styled{
  	color: #666;
  	background-color: #F7F7F7;
  	margin-bottom: 0;
}
#supporting-content .styled a{
	margin-left: 8px;
	padding-left: 8px
}
/*#supporting-content .styled .button{
	margin: 0 8px;
}*/
#supporting-content .styled legend a{
	background-image: none;
	padding-left: 0;
	color: #113B92;
	display:block;
	width:174px;
	height:17px;
}

#supporting-content .styled select,
#supporting-content .styled input{
	width: 167px;
	margin-left: 8px;
	margin-bottom: 8px;
}
#supporting-content .styled input.button{
	width: auto;
}
#supporting-content .styled label{
	margin-left: 8px;
}

/* DATA PROTECTION STATEMENT */
.data-protection{
	background: url('../images/dp-padlock.gif') no-repeat right top;
}

/* SPECIFIC FORM STYLES */
/* Journey Planner */
#jpForm label{
  	position: absolute;
  	left: -1999px;
}
#jpForm fieldset{
	margin-bottom: 0;
}
#jpForm .advanced{
	padding-left: 5px;
	background:  url('../images/green-bullet.gif') 0 4px no-repeat;
	vertical-align: middle;
	line-height: 1em;
	float: left;
}
#name_destination,
#name_origin{
	width: 163px;
	margin-left: 8px;
}
/*Contact forms */
#contact-form label{
	width: 80px;
}
/* QAS Address finder */
#qas-address-finder ol{
	margin-bottom: 0;
}
#qas-address-finder #qas-house{
	width: 215px;
}
#qas-address-finder #qas-postcode{
	width: 100px;
}
#qas-address-finder #manual-entry{
	font-weight: bold
}
#qas-address-finder #qas-results{
	height: 250px;
	padding-right: 8px;
	padding-bottom: 8px;
	
	position: absolute;
	margin-top: 25px;
	margin-left: -330px;
	z-index: 100;
}
#qas-address-finder #qas-results h2{
	padding-right: 10px;
	margin-right: -7px;
}
#qas-address-finder #addresses{
	height: 250px;
	overflow: auto;
	margin-bottom: 0;
}
.qas-close{
	color: #FFF !important;
	float: right;
	margin-top: -3.3em;
}


/* Updated address finder */
.styled fieldset .address-helper ol
{
	margin-bottom: 0;
}

.address-list {
	position: relative;
	display: inline-block;
	margin-bottom: 4em;
	height: 15em;
	width: 50%;
	margin-left: 8.929em
}


.linear .address-list {
	margin-left: 0;
}

.address-list ul {
	border: 1px solid #ccc;
	max-height: 15em;
	overflow: scroll;
	display: block;
	overflow-x: hidden;
	float: left;
	margin-bottom: 1.5em;
	width: 100%;
}

.address-list .button {
	position: absolute;
	bottom: -3.5em;
	right: 0;
}

.address-list .button:active, .address-list .button:active {
	top: auto;
}



/* BUTTON STYLES */

.button-default-1,
.button-neg-1,
.button-pos-1,
.button-add-1,
.button-back-1,
.button-next-1,
.button-default-2,
.button-neg-2,
.button-pos-2,
.button-add-2,
.button-back-2,
.button-next-2{
    font-family: Arial, Helvetica, sans-serif;
	font-size: 1.2em;
	display: inline-block;
	padding: 0px 6px;
	color: #000;
	overflow: visible;
	width: auto;
}


/* Primary action style */
.button-default-1,
.button-neg-1,
.button-pos-1,
.button-add-1,
.button-back-1,
.button-next-1{
	font-weight: bold;
	border: 2px solid #666;		
	/* Safari styles*/
	-webkit-border-radius: 2px;
	-webkit-box-shadow: 0 0 5px #246CCE;	
}

/* Secondary action style */
.button-default-2,
.button-neg-2,
.button-pos-2,
.button-add-2,
.button-back-2,
.button-next-2{
	border: 1px solid #999;	
}

/* Tertiary action style */
.button-default-3,
.button-neg-3,
.button-pos-3,
.button-add-3,
.button-back-3,
.button-next-3,
.button-search-3{
	color: #246CCE;
	border: 0 solid;
	overflow: visible;
	width: auto;	
}
.grey .button-default-3,
.grey .button-neg-3,
.grey .button-pos-3,
.grey .button-add-3,
.grey .button-back-3,
.grey .button-next-3{
	background-color: #F7F7F7;	
}
.button-default-3{
	padding:0;
}

/* Nasty Safari hack so buttons heights are all the same */
@media all and (min-width: 0px) {
             body:not(:root:root) 
			 	.button-default-1,
				.button-neg-1,
				.button-pos-1,
				.button-add-1,
				.button-back-1,
				.button-next-1,
				.button-default-2,
				.button-neg-2,
				.button-pos-2,
				.button-add-2,
				.button-back-2,
				.button-next-2{ padding: 2px 6px; }
}

/* Buttons with left-aligned icons */
.button-neg-1,
.button-pos-1,
.button-add-1,
.button-back-1,
.button-neg-2,
.button-pos-2,
.button-add-2,
.button-back-2,
.button-neg-3,
.button-pos-3,
.button-add-3,
.button-back-3,
.button-search-3{
	padding-left: 19px;
}
/* Buttons with right-aligned icons */
.button-next-1,
.button-next-2,
.button-next-3{
	padding-right: 19px;
}

.button-default-1,
.button-default-2{ 
	background: #E0E0E0 url('../images/button-default.gif') left center repeat-x;
}
.button-default-3{ 
	background: none;
}
.button-neg-1,
.button-neg-2{ 
	background: #E0E0E0 url('../images/button-cross.gif') left center repeat-x;
}
.button-neg-3{ 
	background: url('../images/cross.gif') left center no-repeat;
}
.button-pos-1,
.button-pos-2{ 
	background: #E0E0E0 url('../images/button-tick.gif') left center repeat-x;
}
.button-pos-3{ 
	background: url('../images/tick.gif') left center no-repeat;
}
.button-add-1,
.button-add-2{ 
	background: #E0E0E0 url('../images/button-add.gif') left center repeat-x;
}
.button-add-3{ 
	background: url('../images/add.gif') left center no-repeat;
}
.button-back-1,
.button-back-2{ 
	background: #E0E0E0 url('../images/button-arrow-left.gif') left center repeat-x;
}
.button-back-3{ 
	background: url('../images/arrow-left.gif') left center no-repeat;
}
.button-next-1,
.button-next-2{ 
	background: #E0E0E0 url('../images/button-arrow-right.gif') right center repeat-x;
}
.button-next-3{ 
	background: url('../images/arrow-right.gif') right center no-repeat;
}


.button-search-3{ 
	background: url('../images/zoom.png') left center no-repeat;
}

.disabled{
	filter: alpha(opacity=50);
	opacity: 0.5;
}

/* button row */
.button-row{
	list-style-type: none;
	padding: 8px 0;
	margin: 0;
	position: relative;
	margin-bottom: -8px;
	width: 100%;
	border-top: 1px solid #CCC;
	height: 100%;
}

*html .button-row{
	bottom: -8px;
}
.button-row:after{content: ""; display: block; height: 0; clear: both }

.button-row li{
	float: left;
	clear: none !important;
	width: 33%;
	text-align: center;
}

.grey .button-row{
	background-color: #F0F0F0;
}

/* ALERTS */
.alert{
	text-align: center;
	color: #000;
	background-color: #FFF69F; 
	margin-bottom: 19px;
	padding: 4px;
}
.alert span{
	padding-left: 20px;
	padding-bottom: 1px;
	background: left center no-repeat;
}
.alert.positive span{
	background-image: url('/tfl-global/images/tick.gif');
}
.alert.negative span{
	background-image: url('/tfl-global/images/cross.gif');
}
.alert.validation span{
	background-image: url('/tfl-global/images/exclamation.png');
	font-weight: bold;
}

.styled li .help{
	background: #9fc3ff url('/tfl-global/images/form-help-arrow.gif') left top no-repeat;
	color: #000;
	padding: 4px;
	padding-left: 16px;
	position: absolute;
	margin-top: 2px;
  width: 184px;
}
.grey li .help{
	background-image: url('/tfl-global/images/form-help-arrow-grey.gif') !important;
}

.alert.validation{
	background-color: #FFF;
	border: 2px solid red;
	text-align: left;
}
.alert.validation ol{
	margin-top: 4px ;
	margin-bottom: 4px;
	margin-left: 28px;
}
.alert.validation li{
	margin-left: 2px;
}
.alert.validation a{
	color: #000;
}

.error-message{
	color: red;
	padding: 0 0 1px 20px;
	background: url('/tfl-global/images/exclamation.png') 3px -1px no-repeat;
	
}		 

/* OLD BUTTON STYLES (DEPRECATED) */

/*input.button,*/
input.green-button{
	font-size: 1em !important;
	background: #63B2DF url('../images/button-blue.gif') left center repeat-x;
	color: #FFF;
	font-weight: bold;
	padding: 1px;
	border: 2px groove #057AB6;
	height: 22px;
}
input.green-button{
	background: #8EC335 url('../images/button-green.gif') left center repeat-x;
	border-color: #6FA417;
}

/* Terms & Conditions */
.terms-conditions{ 
	border: 1px solid #ccc; 
	padding: .5em; 
	overflow:auto; 
}
.terms-conditions-wrapper .terms-conditions {
	height:200px;
} 
.terms-conditions-wrapper label{ 
	width:auto; 
	text-align: left; }		
.terms-conditions-noscroll label{ 
	width:auto; 
	text-align: left; 
}

/* Lists of radio buttons or checkboxes */

.listcontrol li label{
	text-align: left;
}
.listcontrol li input{
	float: left;
}
/* this resets label properties so they are auto widthed to content */
/* this shouldn't be needed */
.autoWidthLabel li label { float:none; width:auto; }
