

.left{
	float:left;
}
.right{
	float:right;
}
.clear{
	clear:both !important;
}

/* ----- INFO ----- */

.info{
	display:inline-block; 
	clear:both;
	border-bottom:1px dotted #ccc;
	margin:0 0 1em 0;
}
.info[class]{
	display:block;
}
.info h2{
	font-weight:normal;
	font-size:160%;
	margin:0 0 .2em 0;
	clear:left;
}
.info div{
	font-size:95%;
	line-height:135%;
	margin:0 0 1em 0;
	color:#555;
}

/* ----- SECTIONS ----- */

form hr{
	display:none;
}
form li.section{
	border-top:1px dotted #ccc;
	padding-top:.9em;
	padding-bottom:0px;
	padding-left:9px;
	width:97% !important;
	position:static;
}
form ul li.first{
	border-top:none !important;
	margin-top:0px !important;
	padding-top:0px !important;
}
form .section h3{
	font-weight:normal;
	font-size:110%;
	line-height:135%;
	margin:0 0 .2em 0;
}
form .section div{
	display:block;
	font-size:85%;
	margin:0 0 1.2em 0;
	padding:0;
}

/* ----- LIKERT SCALE ----- */

form li.likert{
	width:97% !important;
}
.likert table{
	margin:0 0 1.5em 0;
	background:#fff;
	width:100%;
	border:1px solid #dedede;
	border-bottom:none;
}
.likert caption{
	text-align:left;
	color:#555;
	font-size:95%;
	line-height:135%;
	padding:5px 0 .4em 0;
}
.likert input{
	padding:0;
	margin:2px 0;
}
.likert label{
	font-size:10px;
	display:block;
	color:#565656;
}

/* ----- Top Row ----- */

.likert thead td, .likert thead th{
	background-color:#e6e6e6;
}

/* ----- Right Side ----- */

.likert td{
	border-left:1px solid #ccc;
	text-align:center;
	padding:4px 6px;
}
.likert thead td{
	font-size:85%;
	padding:10px 6px;
}

/* ----- Body ----- */

.likert th, .likert td{
	border-bottom:1px solid #dedede;
}
.likert tbody th{
	color:#555;
	font-size:95%;
	font-weight:bold;
	padding:8px 8px;
}

.likert tbody tr.alt td, .likert tbody tr.alt th{
	background-color:#f5f5f5;
}
.likert tbody tr:hover td, .likert tbody tr:hover th{
	background-color:#FFFFCF;
}

/* ----- Likert Classes ----- */

.col1 td{width:30%;} 
.col2 td{width:25%;}
.col3 td{width:18%;}
.col4 td{width:14.5%;}
.col5 td{width:12%;}
.col6 td, .col7 td{width:10%;}
.col8 td, .col9 td, .col10 td{width:6.5%;}
.col11{width:6%;}

.hideNumbers tbody label{
	display:none;
}

/* ----- LABELS ----- */

label.desc{
	line-height:150%;
	padding:0 0 1px 0;
	border:none;
	color:#555;
	display:block;
	font-size:95%;
	font-weight:bold;
}
form li div label, form li span label{
	margin:0;
	padding-top:6px;
	clear:both;
	font-size:9px;
	line-height:9px;
	color:#444;
	display:block;
}
label.choice{
	font-size:100%;
	display:block;
	line-height:1.5em;
	margin:-1.65em 0 0 25px;
	padding:.44em 0 .5em 0;
	color:#555;
	width:88%; 
	display:block;
}

span.symbol{
	font-size:115%;
	line-height:130%;
}


/* ----- FIELDS ----- */

input.text, input.file, textarea.textarea, select.select{
	margin:0;
	font-size:100%;
	color:#333;
}
input.text, textarea.textarea, .firefox select.select{
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
	background:#fff url(/images/fieldbg.gif) repeat-x top;
}
input.text, input.file{
	padding:2px 0 2px 0;
}
input.checkbox, input.radio{
	display:block;
	line-height:1.5em;
	margin:.6em 0 0 3px;
	width:13px;
	height:13px;
}
input.other{
	margin:0 0 0 25px;
}

textarea.textarea{
	font-family:arial, sans-serif;
}

select.select{
	font-family:arial, sans-serif;
	margin:1px 0;
	padding:1px 0 0 0;
}
select.select[class]{
	margin:0;
	padding:1px 0 1px 0;
}
*:first-child+html select.select[class]{
	margin:1px 0;
}
.safari select.select{
	margin-bottom:1px;
	font-size:120% !important;
}

/* ----- BUTTONS ----- */

input.btTxt{
	padding:0 7px;
	width:auto;
	overflow:visible;
}
.buttons{
	clear:both;
	margin-top:10px;
}
.buttons input{
	font-size:80%;
	margin-right: 5px;
}

/* ----- TEXT DIRECTION ----- */

.rtl .info h2, .rtl .info div, .rtl label.desc, .rtl label.choice, 
.rtl div label, .rtl span label, .rtl input.text, 
.rtl textarea.textarea, .rtl select.select, .rtl p.instruct, 
.rtl .section h3, .rtl .section div, .rtl input.btTxt{
	direction:rtl;
}

/* ----- SIZES ----- */

.third{
	width:32% !important;
}
.half{
	width:48% !important;
}
.full{
	width:100% !important;
}

input.small, select.small{
	width:25%;
}
input.medium, select.medium{
	width:50%;
}
input.large, select.large, textarea.textarea{
	width:75%;
}

textarea.small{
	height:5.5em;
}
textarea.medium{
	height:10em;
}
textarea.large{
	height:20em;
}

/* ----- ERRORS ----- */

#errorLi{
	width:99%;
	margin:0 auto;
	background:#fff;
	border:1px dotted red;
	margin-bottom:1em;
	text-align:center;
	padding-top:4px;
	padding-left:0px;
	padding-right:0px;
}
#errorMsgLbl{
	margin:7px 0 5px 0;
	padding:0;
	font-size:125%;
	color:#DF0000;
}
#errorMsg{
	margin:0 0 .8em 0;
	color:#000;
	font-size:100%;
}
#errorMsg strong{
	background-color: #FFDFDF;
	padding:2px 3px;
	color:red;
}
form li.error{
	display:block !important;
	border-bottom:1px solid #F9B9B2;
	border-right:1px solid #F9B9B2;
	background-color: #FFDFDF !important;
}
form li.error label{
	color:#DF0000 !important;
}
form p.error{
	display:none;
	color:red;
	font-weight:bold;
	font-size:10px;
	margin:-2px 0 5px 0;
	clear:both;
}
form li.error p.error{
	display:block;
}
.leftLabel p.error, .rightLabel p.error{
	margin-left:30%;
	padding-left:15px;
}
.noI .leftLabel p.error, .noI .rightLabel p.error{
	margin-left:35%;
	padding-left:15px;
}

/* ----- REQUIRED ----- */

form .req{
	float:none;
	color:#ef3732 !important;
	font-weight:bold;
	margin:0;
}


/* ----- LABEL LAYOUT ----- */

.leftLabel li, .rightLabel li{
	width:74% !important;
	padding-top:9px;
}


.leftLabel label.desc, .rightLabel label.desc{
	float:left;
	width:29%;
	margin:2px 15px 0 0;
}
.rightLabel label.desc{
	text-align:right;
}
.leftLabel .column, .rightLabel .column{
	float:left;
}


.leftLabel .small, .rightLabel .small{
	width:17%;
}
.leftLabel .medium, .rightLabel .medium{
	width:35%;
}
.leftLabel .large, .leftLabel textarea.textarea,
.rightLabel .large, .rightLabel textarea.textarea,
.leftLabel .column, .rightLabel .column{
	width:64%;
}


* html .leftLabel .small, * html .rightLabel .small{
	width:23%;
}
* html .leftLabel .medium, * html .rightLabel .medium{
	width:55%;
}
* html .leftLabel .large, * html .leftLabel textarea.textarea,
* html .rightLabel .large, * html .rightLabel textarea.textarea{
	width:97%;
}


.leftLabel p.instruct, .rightLabel p.instruct{
	width:27%;
	margin-left:5px;
}
.leftLabel .altInstruct .instruct, .rightLabel .altInstruct .instruct{
	margin-left:29% !important;
	padding-left:15px;
	width:65%;
}


.leftLabel .buttons, .rightLabel .buttons{
	margin-left:15px;
}
.leftLabel .buttons input, .rightLabel .buttons input{
	margin-left:29%;
}
* html .leftLabel .buttons input, * html .rightLabel .buttons input{
	margin-left:22%;
}
* html .leftLabel .buttons, * html .rightLabel .buttons{
	margin-left:4px;
}
*+html .leftLabel .buttons, *+html .rightLabel .buttons{
	margin-left:7px;
}

/* ----- NO INSTRUCTIONS ----- */

.noI .instruct{
	display:none !important;
}
.noI form li, .noI form li.buttons, .altInstruct form li, .altInstruct form li.buttons{
	width:97% !important;
}
.noI form li.section, .altInstruct form li.section{
	padding-left:9px !important;
}

/* ----- NO INSTRUCTIONS LABEL LAYOUT ----- */

.noI .leftLabel label.desc, .noI .rightLabel label.desc{
	width:34%;
}
.noI .leftLabel .large, .noI .leftLabel textarea.textarea,
.noI .rightLabel .large, .noI .rightLabel textarea.textarea,
.noI .leftLabel .column, .noI .rightLabel .column{
	width:60%;
}

.noI .leftLabel .buttons input, .noI .rightLabel .buttons input{
	margin-left:34%;
}

/* ----- FIELD FLOATING ----- */

form li.leftHalf, form li.rightHalf{
	width:46% !important;
}
li.leftHalf{
	clear:left;
	float:left;
}
li.rightHalf{
	clear:none;
	float:right;
}
li.leftHalf .medium, li.rightHalf .medium,
li.leftHalf .small, li.rightHalf .small{
	width:100%;
}
