﻿li label {font-size: 100%; cursor: pointer;}
.formerror li label {text-decoration: underline;}
select, input, textarea {font-size: 100%; font-family: arial,helvetica,verdana,clean,sans-serif;}
label span label {font-size: 100%;}
label {color: #666;}
/* ============================= ELEMENTS ============================= */

.con-main input.field, 
.con-main textarea {
	background: #FFFFFF;
	border-top: 1px solid #727272;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	border-left: 1px solid #727272;
	background-color:#fff;
	color: #333;
	}

.con-main input.field		{width: 280px;}
.con-main input.halflength	{width: 140px;}
.con-main input.short		{width: 80px;}
.con-main input.veryshort		{width: 40px;}
.con-main textarea			{width: 280px;}

.con-main select.menu {
	background: #F8F8F8;
	border-top: 1px solid #ccd7e2;
	border-right: 1px solid #859cb3;
	border-bottom: 1px solid #859cb3;
	border-left: 1px solid #ccd7e2;
	margin: 0;
	color: #333;
	}		

/* ============================= LAYOUT ============================= */

.con-main fieldset {
	width: 630px;
	padding: 0;
	margin: 0;
	border: none;
	}
.con-main .form fieldset {
	border-top: 1px solid #fff; /* Fixes "div.required" bug in safari */
	}
.con-main .form fieldset fieldset fieldset,
.con-main .form .row fieldset {
	border: none; /* overide for the above */
	}				
legend {
	display: inline-block;
	
	}
legend span {
	display: block; 
	background: #cce6ed;
	width: 615px;
	color: #005069; 
	font-weight: bold;
	padding: 7px 5px 7px 10px;
	margin: 0px 0px 0px 0px;
	border-top: 1px solid #fff;
	line-height: 1.4em;
	}
legend.top span {
	border: none;
	}	
legend.noimage span {background-image: none;}	
.row legend {
	display: inline;
	}	
.con-main div.row {
	position:relative;
	z-index:1;
	padding: 5px 0 4px 0;
	background: url(../library/bg-form-row.png) repeat-y top left;
	border-top: 1px solid #fff;
	}
.con-main div.row:after {
	display: block;
	clear: both;
	content: ".";
	visibility: hidden;
	height: 0;
	}	
.con-main div.required {
	text-align: right;
	background: none;
	border: none;
	margin-top: -28px;
	padding: 0;
	line-height: 1.4em;
	}
.con-main div.last {
	background-color: transparent;
	padding: 10px 0 0 0;
	background-image: none;
	border-bottom: none;
	}

.con-main span.desc {float: left; display: block; width: 150px; padding: 3px 0px 4px 5px; color: #666; text-align: right;}
.con-main span.value {float: left; display: block; width: 300px; padding: 3px 0 4px 15px; color: #4d4d4d;}
.con-main span.element {float: left; display: block; padding: 2px 0 0 15px;}
.con-main span.text {float: left; display: block; font-weight: bold; padding: 3px 10px 3px 10px; color: #666; line-height: 1.4em;}
.con-main span.element span.text {float: left; display: block; padding: 3px 0 0 2px;}

.con-main span.button {padding-left: 168px;}
.con-main span.button-right {text-align: right; display: block}
.con-main span.requiredinfo {width: 180px; font-weight: normal; color: #0158a8; font-style: italic; padding: 3px 15px 8px 0px; display: block; float: right;}
.con-main strong.requiredinfo {color: #ff1717; font-size: 100%;}

/* Required indicators */
strong.required,
.requiredinfo strong {
	color: #ff1717 !important;
	height: 0;
	padding-top: 10px;
	width: 6px;
	overflow: hidden;
	display: inline-block;
	background: url(../library/icn-required.gif) 0 0 no-repeat;
	}
div.row strong.required {
	position: absolute;
	left: 160px;
	top: 10px;
	width: 6px;
	height: 0;
	padding: 9px 0px 0px 0px;
	background: url(../library/icn-required.gif) 0 0 no-repeat;
	overflow: hidden;
	}
div.row fieldset strong.required {
	left: 170px;
	padding: 9px 0 0 0;
	top: 7px;
	
	}
/* Row nested fieldset */
div.row fieldset {
	border: none;
	margin: 0;
	padding: 0 0 0 150px !important;
	width: 450px;
	}

/*see ie.css*/

div.row legend span {
	position: absolute;
	display: inline;
	float: left;
	text-align: right;
	width: 155px;
	margin-right: 15px;
	margin-left: -160px;
	background-color: transparent;
	color: #666;
	border: none;
	font-weight: normal;
	padding-top: 3px;
	white-space: normal;
	}
div.row div.row {
	float: left;
	width: auto;
	display: inline;
	min-height: 1em;
	padding: 0 5px 0 0;
	border: none;
	background-color: transparent;
	}
div.row div.row:after {
	display: none;
	clear: none;
	}
div.compact div.row label span.element {
	float: none;
	display: block;
	width: auto;
	}
div.compact div.row span.desc {
	position: absolute;
	left: -999999px;
	}




/* Checkboxlist */

fieldset.checkboxlist div.row {
	float: none;
	display: block;
	}
.con-main div.row fieldset.checkboxlist label {
	float: none;
	display: block;
	padding: 0;
	position: relative;
	}
fieldset.checkboxlist span.desc {
	text-align: left;
	float: none;
	margin-left: 32px;
	}
.con-main fieldset.checkboxlist span.element {
	width: 25px;
	position: absolute;
	top: 0;
	left: 0;
	float: none;
	}


/* Multicolumn checkbox list */

div.col:after {
	display: block;
	clear: both;
	content: ".";
	visibility: hidden;
	height: 0;
	}
div.twocol div.col {
	width: 160px;
	float: left;
	display: inline;
	}
div.twocol div.col div.row span.desc {
	width: 140px;
	}
fieldset.checkboxlist div.other,
div.twocol div.other {
	clear: left;
	margin-left: -150px;
	}
fieldset.checkboxlist div.other span.desc,
div.twocol div.other span.desc {
	text-align: right;
	float: left;
	margin-left: 0;
	}
fieldset.checkboxlist div.other span.element,
div.twocol div.other span.element {
	position: static;
	float: left;
	width: auto;
	}


/* horizontal aligned checkbox list */

div.horiz div.row {
	float: left;
	display: inline;
	padding: 0;
	}
div.horiz label {
	float: none !important;
	display: block !important;
	padding: 0 !important;
	position: relative; 
	}
div.horiz fieldset.checkboxlist span.desc {
	float: none;
	display: block;
	margin-left: 32px;
	text-align: left;
	width: auto;
	white-space: nowrap;
	}
div.horiz fieldset.checkboxlist span.element {
	position: absolute;
	top: 0;
	left: 0;
	display: inline;
	text-align: left;
	width: 18px;
	padding: 0 0 0 15px;
	}

/* text field in checkbox list */

div.horiz div.other {
	margin: 0;
	float: left;
	clear: none;
	}
div.horiz div.other label {
	white-space: nowrap;
	}
div.horiz div.other span.desc {
	text-align: right;
	width: auto;
	padding-left: 15px;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	}
div.horiz div.other span.element {
	width: auto;
	margin-left: 3em;
	position: static;
	float: none;
	display: block;
	}


/* Other */
#options {
	width: auto;
	margin-bottom: 0;
	}
#options td {
	padding: 0;
	border: none;
	padding: 3px 0px 3px 5px;
	border-top: 1px solid #fff;
	background-color: transparent;
	}

/* Checkbox styling */	
.con-main div.checkbox {
	clear: both;
	}
.con-main div.checkbox span,
.con-main div.checkbox img {
	float: left;
	}
.con-main div.checkbox span {
	padding: 3px 0px 0px 0px;
	display: block;
	}			
.con-main div.checkbox img {
	margin: 4px 0px 5px 5px;
	}
.con-main div.checkbox span.desc,
.con-main div.checkbox span.text {
	padding: 3px 0px 5px 5px;
	display: block;
	text-align: left;
	width: 290px;
	}
.con-main div.checkbox span.element,
.con-main div.checkbox span.checkbox {
	padding-left: 165px;
	padding-top: 0;
	width: 18px;
	}	
	
/* radio button layouts */	
.con-main div.row fieldset input {
	float: left;
	}
.con-main div.row fieldset label {
	float: left;
	padding: 3px 10px 3px 0;
	display: inline;
	}
.con-main div.compact fieldset input,
.con-main div.compact fieldset label {
	clear: none;
	float: left;
	}	
.con-main div.compact label {
	margin-right: 7px;
	}
		
	
/*===================================================================*/
/* --------------------------- VALIDATION -------------------------- */
/*===================================================================*/

div.formerror,
div.formsuccess {
	padding: 10px 0 10px 10px;
	display: block;
	clear: both;
	}
.fragment div.formerror,
.fragment div.formsuccess {
	margin-top: -4px;
	}	
div.formerror:after,
div.formsuccess:after {
	display: block;
	clear: both;
	content: ".";
	visibility: hidden;
	height: 0;
	}		
div.formerror, 
div.formerror h3, 
div.formerror ul,
div.formerror li, 
div.formerror p,
div.formerror label  {
	font-size: 100%;
	color: #ea1a39;
	}
div.formsuccess p  {
	margin: 0 !important;
	}	
div.formerror {
	background-color: #ffd557;
	width: 620px;
	padding-left: 10px;
	border-bottom: 1px solid #fff;
	min-height: 70px;
	}
.formsuccess {
	background-color: #b7e47e;
	padding-left: 34px !important;
	color: #527e1a;
	width: 596px !important;
	border-top: 1px solid #fff;
	}					
.formerror ul {
	margin: 0 !important;
	padding: 0 0 0 150px !important;
	}	
.formerror ul li {
	background: url(../library/bullet-error.png) no-repeat left 6px !important;
	padding: 2px 0px 2px 12px;
	}
.content div.formsuccess p	{
	margin-bottom: 0 !important;
	}		
div.formerror h3 {background-image: none; background-color: transparent; padding: 0; margin: 0; font-weight: bold;}	
div.formsuccess h3 {color:#207d0f;}	