
/* 

******* FORMS - Modify as needed ******* 

Constants:
#DEFAULT_FLDSIZE = 17.95em
#HOR_INDENT = 80px
#HOR_INDENT_LVL2 = 80px

*/

form { 
	margin:0; 
	padding:0;
}
	fieldset {
		margin:0;
		padding:10px 0;
		border:0;
	}
	fieldset h2,
	fieldset h3 {
		margin-top:0; 
		margin-bottom:.333em; 
		font-size:1.16667em; 
		line-height:1.333em;
	}
		fieldset fieldset { margin:0.5em 0 0 0; padding:0 0 10px 0; }
		legend { display:none; }
	
/* areas containing buttons and the buttons/links themselves */
.actions {
	padding:0 10px 20px 10px;
}
.box_container .actions,
.tab_container .actions {
	padding-left:10px;
}
.dialog .actions {
	padding-bottom:0;
}
.article .actions {
	padding-top:20px;
	border-top:1px dotted #B7B6B6;
}
.actions .submit { 
	margin-left:0.8em;
}
.actions .cancel,
.actions .action { 
	float:left;
	margin-left:0;
	margin-right:1.25em;
}
.actions .button_label {
	float:left;
	margin-right:15px;
	color: #666;
	font-size:.916667em;
	line-height:25px;
}
	
/* labels and fields (in general: grouping a label and a form field)  */

input,
textarea,
select {
	font-size:1em;
	font-family:Arial, sans-serif;
	vertical-align:middle;
}
select { margin:-0.05em 0 0.25em 0; }
input.text,
input.password,
input.file,
textarea {
	width:173px; /* #DEFAULT_FLDSIZE */
	margin:-0.05em 0 0.25em 0;
}
/* labeled fields */
input.labeled,
textarea.labeled { color:#999; }

/* misc input styling */
input.replaced {
	position:absolute;
	left: -9000px;
	width:1px;
}

input.blurred,
textarea.blurred {
	color:silver;
}

.disabled,
input.disabled {
	position:relative;
	top:1px;
	background:#fff;
	border:none;
	color:#a0a0a0;
}

/* disabled/readonly fields */
/*
form .readonly,
form .disabled { opacity:0.4; }
	form .readonly  .readonly,
	form .disabled  .disabled { opacity:1; }
*/
select { 
	width:180px; /* #DEFAULT_FLDSIZE + 0.65em */
	margin:0 0 0.25em 0;
}
td select {
	width:160px;
	margin-top:.5em;
}
	/* option { padding:0.12em 3px; } FF menu...? */
	
div.field {
	clear:both;
	position:relative;
	margin:0;
	padding:3px 00 0 0;
}
div.field_autocomplete {
	z-index:1;
}
div.field_text {
	padding:1.5em 0 0 0;
}
div.field_agreement {
	padding-top:1.5em;
}
div.field .submit {
	position:relative;
	top:-3px;
}
div.field:after {
	content:".";
	display:block;
	clear:both;
	visibility:hidden;
	height:0;
}
	label,
	.label,
	body .vertical label,
	body .vertical .label {
		width:auto;
		float:none;
		display:block;
		margin:0 0 0.12em 0;
		font-weight:normal;
		font-size:1em;
	}
		/* reset labels within */
		.label label,		
		body .vertical .label label {
			display:inline;
			margin:0;
		}
	.labeled_value label {
		position:absolute;
		left:-3000em;
	}
	
/* form fields/menus of various widths */
/* Note: SELECT is generally about 0.65 ems longer than INPUT/TEXTAREA of the same class */

input.digit { width:1.75em; }
select.digit { width:2.4em; }
input.short { width:4.5em; }
select.short { width:5.15em; }
input.medium,
textarea.medium { width:8.55em; }
select.medium { width:9.2em; }
input.long,
textarea.long { width:12.5em; }
select.long { width:13.15em; }
input.extended,
textarea.extended { width:30.7em; }
select.extended { width:31.35em; }
input.auto,
textarea.auto,
select.auto { width:auto; }
input.full,
textarea.full { width:98.5%; }
select.full { width:99.85%; }
	
/* radios/checkboxes and lists of them */

input.radio,
span.optionlist input { margin:0 0.25em 0.25em 0.17em; }
input.checkbox { margin:0 0.25em 0.25em 0.25em; }
	
div.field ul.optionlist,
body .vertical div.field ul.optionlist,
body .horizontal div.vertical ul.optionlist {
	margin:0.25em 0 .5em 0;
	list-style:none;
}
ul.horizontal ul,
ul.horizontal li {
	display:inline;
	margin:0;
}
	div.field ul.optionlist li.option {
		position:relative;
		margin:0; 
		padding:0 0 0 2em;
	}
	div.field ul.optionlist li.indent {
		margin-left:1em;
	}
		div.field ul.optionlist li.indent_double {
			margin-left:2em;
		}
		div.field ul.optionlist li.option .radio,
		div.field ul.optionlist li.option .checkbox {
			position:absolute;
			left:0; top:0;
		}
		div.field ul.optionlist li.option p { margin:0; }
		/*  reset labels within */
		div.field .optionlist label {
			float:none;
			display:inline;
			width:auto;
			margin:0;
		}
		div.field span.optionlist label {
			display:inline;
			float:none;
			margin:0;
			width:auto;
		}
/* horizontal optionlist */
div.field ul.horizontal li.option {
	display:inline;
	margin:0;
	padding:0 0.75em 0 0;
}
	body div.field ul.horizontal li.option .radio,
	body div.field ul.horizontal li.option .checkbox { position:static; }

/* stacking compositions */

.stacked .stack {
	position:relative;
	display:block;
	margin:0;
	background:red;
}	
.stacked.horizontal .stack {
	margin-left:88px; /* #HOR_INDENT + 8px */
	background:green;
}
.stacked .stack:after {
	content:".";
	display:block;
	clear:both;
	visibility:hidden;
	height:0;
}
	.stacked .stack div.field,
	.stacked .stack.single div.field {
		width:98%;
		margin-left:0;
		margin-right:0;
		padding-left:1%;
		padding-right:1%;
		float:left;
		background:orange;
	}
	.stacked .stack.half div.field,
	form .stacked .stack div.field.half { width:48%; }
	.stacked .stack.third div.field,
	form .stacked .stack div.field.third { width:31.3333%; }
	form .stacked .stack div.field.twothird { width:66.6666%; }
	.stacked .stack.fourth div.field,
	form .stacked .stack div.field.fourth { width:23%; }
	form .stacked .stack div.field.threefourth { width:73%; }
	.stacked .stack.fifth div.field,
	form .stacked .stack div.field.fifth { width:18%; }
	form .stacked .stack div.field.twofifth { width:38%; }
	form .stacked .stack div.field.threefifth { width:57.75%; }

	.stacked.horizontal .stack label {
		display:block;
		float:none;
		width:auto;
	}

	.stacked .stack input.full,
	.stacked .stack textarea.full { width:90%; } /* very doubtful :( */




/* horizontal form layout variation */

.horizontal label,
.horizontal .label,
.vertical .horizontal label,
.vertical .horizontal .label {
	width:170px; /* #HOR_INDENT */
	float:left;
	padding:0 5px 0 0;
}
.cleared label {
	width:auto;
}
	/* reset labels within */
	.horizontal .label label,
	.vertical .horizontal .label label {
		width:auto;
		float:none; 
		padding:0;
		display:inline;
	}
.horizontal div.field ul.optionlist,
fieldset div.horizontal ul.optionlist,
.vertical .horizontal div.field ul.optionlist { 
	margin-left:175px; /* #HOR_INDENT + 8px */
} 

/* one level deeper (standard fieldsets within optionlists, optionlists within optionlists) */

div.field ul.optionlist fieldset label,
div.field ul.optionlist fieldset .label {
	width:auto;
	float:none;
	display:block;
	margin:0 0 0.12em 0;
}
	/* reset labels within */
	div.field ul.optionlist fieldset .label label {
		display:inline;
		margin:0;
	}
body div.field .horizontal .vertical ul.optionlist {
	margin:0 0 0.25em 0;
	list-style:none;
}
	body div.field ul.horizontal li.option .radio,
	body div.field ul.horizontal li.option .checkbox { position:static; }
/* horizontal variation */
div.field ul.optionlist .horizontal label,
div.field ul.optionlist .horizontal .label {
	width:80px; /* #HOR_INDENT_LVL2 */
	float:left;
	padding:0 8px 0 0;
}
	/* reset labels within */
	div.field div.field ul.optionlist label,
	div.field ul.optionlist .horizontal .label label {
		float:none;
		display:inline;
		width:auto;
		margin:0;
		padding:0;
	}
	
	
	
			
/* comments and explanations */
	
label em,
.label em {
	/* 'required'/'optional' note */
	color:#ed193c;
	font-style:bold;
}
label em strong,
.label em strong {
	position:absolute;
	left:-999em;
	width:0;
	height:0;
	overflow:hidden;
}
.output {
	float:left;
	width:250px;
}
.vertical .output {
	float:none;
	width:auto;
}
	
/* confirmation and error notes */		

.error_notification,
.confirmation {
	clear:both;	
	margin:0 0 1em 0; 
	padding:0.5em 15px 1px 15px;
	background:url("../images/error_bg.gif") #fff000;
	border:1px solid #ffcc00;
	color:#c00;
}
.confirmation { 
	background:#090; 
	border-color:#090;
	color:#fff;
}
	.error_notification p,
	.confirmation p { margin-bottom:0.5em; }
form .error_notification,
form .confirmation { margin:0 -1% 1em -1%; } 
	.error_notification strong,
	.confirmation strong { display:block; }
	.error_notification label {
		display:inline;
		float:none;
		width:auto;
		margin:0;
		padding:0;
		text-decoration:underline;
		cursor:pointer;
	}
	.error_notification label:hover { color:#000; }
/* next to, or around the form fields */
div.error {
	background:url("../images/error_bg.gif") #fd0 !important;
	color:#c00;
}	
	div.error em { color:#c00; }
	div.error input,
	div.error select,
	div.error textarea { 
		border-color:#c00; 
		color:#c00;
	}
/* a list of what went wrong next to, or below the form fields */
ul.error_list {
	color:#c00;
	list-style:disc outside;
}

/* focussed groups */
div.focussed { background-color:#ff0 !important; }


/* help icons and popups */

a.help img { 
	margin:-0.225em 0 0 0;
	border:0;
	vertical-align:middle; 
}
.help_content {
	position:absolute;
	left:-3000em;
	width:1px;
}
#help_popuplayer {
	position:absolute;
	left:-3000em;
	width:20em;
	margin:-1px 0 0 20px;
	padding:10px;
	background:#fff;
	border:1px solid #000;
	color:#000;
	font-size:1.2em;
}

/* calendar popups */

a.calendar img { 
	margin:-0.225em 0 0 0;
	border:0;
	vertical-align:middle; 
}
#calendar_popuplayer {
	position:absolute;
	left:-3000em;
	width:20em;
	margin:-1px 0 0 20px;
	padding:10px;
	background:#fff;
	border:1px solid #000;
	color:#000;
	font-size:1.2em;
}

/* password strength meter */

.pw_strength_meter {
	position:relative;
	display:-moz-inline-stack;
	display:inline-block;
	width:12em;
	margin:0 0 0 0.5em;
	border:1px solid #666;
	font-size:0.84em;
	line-height:1.25;
	text-align:center;
	color:#666;
	background:#eee;
}
	.pw_strength_meter em {
		position:relative;
		z-index:99; 
		font-style:normal; 
	}
	.pw_strength_meter span {
		position:absolute;
		left:0; top:0;
		z-index:98;
		width:0;
		height:100%;
		background:#bbb;
	}

/* filter */
.filter {
	position:relative;
	z-index:1;
	min-height:37px;
	margin-bottom:-1px;
	padding:8px 10px 6px 10px;
	background:#fff no-repeat 0 0;
	border-bottom:1px solid #dedede;
}
.tab_container .filter {
	margin:0 -10px -2px -10px;
	padding:8px 10px 6px 10px;
}
.tab_container .filter .search {
	right:10px;
}
.half .filter {
	background-image:url('../images/backgrounds/filter_half.gif');
}
.filter fieldset {
	margin:0;
}
.filter .field {
	padding:0;
}
.filter label,
.filter .label {
	width:30px;
	font-weight:bold;
}
.filter .label {
	color:#ed193c;
}
.filter label {
	font-size:.8333em;
	text-transform:uppercase;
}
.filter .horizontal ul.optionlist {
	margin-left:40px;
}
.filter div.field ul.horizontal li.option {
	padding:0;
}
.filter .actions {
	padding-top:10px;
	padding-left:42px;
}
.js .filter .actions {
	display:none;
}
.filter div.field ul.horizontal li.divider {
	padding-left:5px;
}
.filter div.field ul li.divider {
	background:transparent url('../images/backgrounds/divider_vertical.gif') repeat-y 0 0;
}
.box_container .filter {
	padding:0;
	border:none;
}
.box_container .filter li,
.tab_container .filter li {
	display:block;
	float:left;
}
.box_container .filter fieldset ul.horizontal li.divider {
	padding-left:30px;
}
.box_container .filter li li,
.tab_container .filter li li {
	width:191px;
}
.filter .search {
	position:absolute;
	right:0;
	bottom:12px;
	width:220px;
}
.filter .search .field {
	float:right;
}
.filter .search input.text {
	width:150px;
}
.filter .horizontal ul.optionlist {
	margin-left:10px;
}
.filter_messages .label {
	width:123px;
}

/* box_container */
.search {
	padding:10px 0 0 0;
}
.search .field {
	padding:0;
}
.search input.text {
	width:120px;
}
.inline_submit .button {
	margin-right:0;
	margin-bottom:-.6em;
}
.search_top {
	padding:0 0 10px 0;
}
.search_top input.text {
	width:174px;
}
.search_criteria {
	padding-bottom:0;
}
.search_criteria .label,
.search_top label {
	display:block;
	margin:2px 0 3px;
	color:#ed193c;
	font-size:1.16667em;
	font-weight:bold;
	line-height:1.333em;
}
.search_criteria .label {
	font-size:1.4em;
}
.search_criteria div.field {
	border-bottom:1px dotted #ccc;
	font-size:0.8333em;
}
.search_criteria label {
	color:#333333;
	font-weight:bold;
	text-transform:uppercase;
}
.search_criteria .optionlist_box,
.search_criteria .optionlist {
	margin-bottom:10px;
	padding-bottom:5px;
}
.search_criteria .optionlist {
	margin:0;
	padding:10px 10px 0 10px;
}

	.search_criteria .optionlist .optionlist {
		padding: 0;
	}
	
		.search_criteria .optionlist .optionlist .optionlist {
			padding: 2px 0 0 20px;
		}
		
	.search_criteria .optionlist .optionlist .toggle {
		border: 1px solid #ccc;
		float: right;
		height: 15px;
		padding: 0;
		vertical-align: top;
		width: 15px;
	}
		
.search_criteria .focus .optionlist_box,
.search_criteria .focus .optionlist {
	/*background:#efefef url('../images/backgrounds/search_optionlist_box.gif') no-repeat 0 100%;*/
	
}
.search_criteria .focus .optionlist {
	background-position:0 0;
}

/* field_box */
div.field_box,
div.field_box_container {
	position:relative;
	background:#efefef url('../images/backgrounds/field_box.gif') no-repeat 0 0;
}
div.field_box {
	margin:4px -4px 4px -3px;
	padding:4px 0 0 0;
}
div.field_box_container {
	padding:15px 20px;
	background-position:0 100%;
}
div.field_document .label {
	width:180px;
	padding-right:0;
}
div.field_document .text {
	width:351px;
}
div.field_document .add,
div.field_document .remove {
	top:15px;
	right:8px;
}

/* risk */
.rie_risk_divider {
	border-bottom:1px dashed #CCCCCC;
}
.rie_risk h6,
.list_measures .rie_risk h6 {
	margin:0 0 13px 0;
	border-bottom:1px dashed #ccc;
	color:#ed193c;
	font-weight:bold;
}
.rie_risk .label,
.list_measures .rie_risk .label {
	float:left;
	margin:0 0 0.12em;
	padding:0;
	width:auto;
}
.rie_risk label,
.list_measures .rie_risk label {
	font-weight:bold;
}
.rie_risk .field,
.list_measures .rie_risk .field {
	float:left;
	clear:none;
	margin:0;
	padding:3px 0 0;
	border:none;
}
.field_box_container .submit {
	float:left;
	left:10px;
}
.rie_risk .optionlist_box,
.rie_risk .optionlist_box .optionlist,
.list_measures .rie_risk .optionlist_box,
.list_measures .rie_risk .optionlist_box .optionlist {
	float:left;
	position:relative;
	min-height:25px;
	margin:0;
	background:#fff url('../images/backgrounds/rie_risk.gif') no-repeat 0 0;
	line-height:25px;
	
}
.rie_risk .optionlist_box,
.list_measures .rie_risk .optionlist_box {
	top:-3px;
	left:4px;
	margin:0 6px 0 0;
	padding-right:5px;
	background-position:100% 0;
}
.rie_risk .optionlist_box .optionlist,
.list_measures .rie_risk .optionlist_box .optionlist {
	padding-left:5px;
}
.rie_risk .risk_large label,
.list_measures .rie_risk .risk_large label {
	color:#ff0000;
}
.rie_risk .risk_small label,
.list_measures .rie_risk .risk_small label {
	color:#66cc00;
}
.rie_risk div.field ul.horizontal li.option,
.list_measures .rie_risk div.field ul.horizontal li.option {
	display:inline;
	float:none;
	width:auto;
	margin:0;
	padding:0 2px 0 0;

}
.rie_risk div.field ul.horizontal li.option ,
.rie_risk .option span,
.list_measures .rie_risk div.field ul.horizontal li.option ,
.list_measures .rie_risk .option span {
	background:none;
	height:auto;
}
.rie_risk .option span,
.list_measures .rie_risk .option span {
	display:inline;
	float:none;
	height:auto;
	padding:00;
	font-size:1em;
	line-height:normal;
	text-transform:none;
	white-space:nowrap;
}
.rie_risk .optionlist_box span.radio input,
.list_measures .rie_risk .optionlist_box span.radio input,
.list_measures_details span.radio input {
	margin:0 0.25em 0.25em 0.17em;
}

/* indent */
.indent {
	padding-left:190px;
}

ul.optionlist.indent {
	padding-top:5px;
	padding-left:175px;
}

/* instruction */
.instruction {
	display:block;
	padding:0 0 5px 175px;
	font-size:.916667em;
}

/* profile */
.profile_image {
	display:block;
	width:78px;
	height:78px;
	overflow:hidden;
	padding:1px;
	border:1px solid #cecece;
}

/* option_highlight_container */
.filter div.field ul.horizontal li.option_highlight,
.option_highlight_container {
	background:#e7e7e7 url('../images/backgrounds/option_highlight_container.gif') no-repeat 100% 0;
}
.filter div.field ul.horizontal li.option_highlight {
	position:relative;
	left:-10px;
	margin-bottom:15px;
	padding-right:10px;
	line-height:33px;
}
.option_highlight_container {
	display:inline-block;
	padding:0 10px;
	background-position:0 0;
}

/* icon labels */
.icon span {
	padding-left:20px;
	color:#666;
	font-size:.66667em;
	font-weight:normal;
}
div.field ul.optionlist li.icon {
	margin:0.3333em 0 0.77778em;
	background:none;
	line-height:31px;
}
div.field ul.optionlist li.icon .radio, 
div.field ul.optionlist li.icon .checkbox {
	top:8px;
}
div.field ul.optionlist li.icon label {
	display:block;
	padding-left:40px;
	background:transparent url('../images/icons/icons.png') no-repeat 0 0;
}
div.field ul.optionlist li.icon_agenda label {
	background-position:0 -700px;
}
div.field ul.optionlist li.icon_rie label {
	background-position:0 -1800px;
}
div.field ul.optionlist li.icon_safety label {
	background-position:0 0;
}
div.field ul.optionlist li.icon_health label {
	background-position:0 -100px;
}
div.field ul.optionlist li.icon_arbo label {
	background-position:0 -200px;
}
div.field ul.optionlist li.icon_admin label {
	background-position:0 -500px;
}

/* form_deadline */
.form_deadline div.field {
	margin-bottom:1em;
	padding-left:39px;
}

.form_deadline div.field_inline {
	margin-bottom:1em;
	padding-left:39px;
	clear:none;
	float:left;
}

/* form_user_profile */
.form_user_profile label, 
.form_user_profile .label {
	width:135px;
}
.form_user_profile .actions {
	padding:5px 0 8px 135px;
}
.form_user_profile div.field ul.optionlist {
	margin-left:135px;
}

/*AutoComplete flyout */

.autocomplete_completionListElement 
{  
	margin : 0px!important;
	background-color : #ffffff;
	color : windowtext;
	border : buttonshadow;
	border-width : 1px;
	border-style : solid;
	cursor : 'default';
	overflow : auto;
	height : 100px;
    text-align : left; 
    list-style-type : none;
    z-index : 1000;
    
}

/* AutoComplete highlighted item */

.autocomplete_highlightedListItem
{
	background-color: #ffff99;
	color: black;
	padding: 1px;
}

/* AutoComplete item */

.autocomplete_listItem 
{
	background-color : window;
	color : windowtext;
	padding : 1px;
}

/* maxlength_status */
.maxlength_status {
	padding:0 0 10px 0;
}
.horizontal .maxlength_status {
	padding:0 0 10px 175px;
}
.maxlength_notification {
	background-color:#FFCDCD;
	border-color:#f00;
}

/* clearfix */
fieldset.actions:after,
div.actions:after,
.field_box_container:after {
	display: block;
	height: 0;
	visibility: hidden;
	clear: both;
	content: ".";
}