/* FORMS: Styles relating to forms and form elements */

form {
	margin: 0;
	padding: 15px;
	position: relative;
	display: block;
}
form.small {
	width: 30%;
}
form.medium {
	width: 60%;
}
form.centered {
	margin: auto;
}
form .info {
	margin-bottom: 15px;
}
form h2 {
	clear: both;
	padding: 15px 0;
}
.form_section {
	clear: both;
	margin-bottom: 20px;
	position: relative;
	max-width: 100%;
}
.form_item {
	clear: both;
	width: auto;
	position: relative;
}
.form_item_title {
	float: left;
	width: 25%;
	text-align: right;
	padding-right: 10px;
	min-height: 10px;
	text-transform: capitalize;
	font-weight: bold;
}
.form_item_title .form_required {
	color: red;
}
.form_item_controls {
	width: 50%;
	float: left;
}
.form_item_info {
	width: 20px;
	height: 16px;
	float: right;
	text-align: right;
}
.form_item_pad {
	position: relative;
}
.form_item_clear {
	clear: both;
	height: 2px;
}
input[type="text"], input[type="password"], select, textarea {
	border: 1px solid silver;
	margin-bottom: 2px;
	padding: 2px 3px;
}
input[type="checkbox"] {
	border: 1px solid silver;
	position: relative;
	top: 2px;
}

/* EDIT FORMS */
form.edit h2 {
	clear: both;
	color: #0872ba;
	width: 600px;
	border-top: 1px solid silver;
	padding: 15px 0;
}
form.edit .form_section {
	clear: both;
	margin-bottom: 20px;
}
form.edit .form_item {
	clear: both;
	width: 99%;
}
form.edit .form_item_title {
	float: left;
	width: 150px;
	text-transform: capitalize;
}
form.edit .form_item_title .form_required {
	color:red;
}
form.edit .form_item_controls {
	width: 200px;
	float: left;
}
/* Extra wide fields */
form.edit .form_item.wide .form_item_controls {
	width: 400px;
}
form.edit .form_item_info {
	width: 20px;
	height: 16px;
	float: right;
	text-align: right;
}
form.edit .form_item_pad {
	position: relative;
}
form.edit .form_item_clear {
	clear: both;
	height: 2px;
}
/* Design of controls on CMS edit pages */
form.edit .text, form.edit .password, form.edit .select, form.edit .submit,
form.edit textarea, form.edit .form_radio_label, form.edit .form_checkbox_label {
	color: #555;
	font-size: 10px;
	padding: 2px;
}
form.edit .text, form.edit .password, form.edit select, form.edit textarea {
	border: 1px solid silver;
	margin-bottom: 2px;
	width: 190px;
}
form.edit .checkbox {
	margin-bottom: 2px;
}
form.edit select {
	width: 196px;
}
form.edit .select[multiple] {
	height: auto;
}
form.edit .form_radio_label, form.edit .form_checkbox_label {
	position: relative;
	top: -2px;
}
form.edit .form_submit {
	text-align: right;
}
form.edit .medium {
	width: 50% !important;
}
form.edit .small {
	width: 75px !important;
}
form.edit .tiny {
	width: 50px !important;
}
/* for elements activated when clicked first time */
form.edit .unset {
	color: silver !important;
}
form.edit a.add_input {
	text-decoration: none;
	font-size: 10px;
	position: relative;
	top: -3px;
	margin-bottom: 10px;
}
form.edit hr {
	background-color: #faaf40;
	border: 0;
	height: 2px;
}


/* Highlights form errors */
form.edit .form_error {
	color: red;
	background: #FEE;
}

/* Reset form errors */
form.edit .form_ok {
	color: black;
	background: white;
}

/* Styled file uploads */
.divinputfile {
	width: 100%;
	position: relative;
	top: -2px;
}
.divinputfile .file {
	opacity: 0;
	width: 100%;
	cursor: pointer;
}
table.fakeinputfile {
	margin-top:-20px;
	margin-left:-1px;
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}
table.fakeinputfile td.upload_button {
	background:url(/images/buttons/upload-trans.png) no-repeat right 2px;
	height: 22px;
	width: 104px;
}

/* FORMS */
.user_form {
	background-color: #fcfcff;
	border: 1px solid silver;
	margin: 16px 0;
}
.user_form table {
	width: 100%;
	table-layout: fixed;
}
.user_form th {
	text-align: left;
	font-weight: 500;
	padding: 2px;
}
.user_form td {
	padding: 2px;
}
.user_form th b {
	color: red;
}

#enquiry_form {
	border: 3px solid #808080;
	padding: 15px;
	background-color: #f2f2f2;
}
form#enquiry_form h2 {
	margin-top: 0;
}

#contact_form {
	font-size: 8pt;
}
#contact_form table {
	width: 100%;
	table-layout: fixed;
}
#contact_form th {
	text-align: left;
	vertical-align: top;
	padding: 8px;
}
#contact_form td {
	text-align: left;
	vertical-align: top;
	padding: 8px;
}
#contact_form input[type='text'], #contact_form select, #contact_form textarea {
	width: 200px;
	color: #222;
	padding: 2px 4px;
	border: 1px solid silver;
	background: white url(/images/backgrounds/input_shade.gif) scroll repeat-x left bottom;
	margin: 0;
}
#contact_form select {
	width: 210px;
}

/* fix inconsistent widths on inputs */
#contact_form input, #contact_form select, #contact_form textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

/* SITE SPECIFIC */
