/* base
-------------------------------------*/

table.form tbody th {
	font-weight: normal;
	white-space: nowrap;
	vertical-align: middle;
	text-align: left;
	padding: 8px 2px 0px 0px;
}
table.form tbody td {
	vertical-align: middle;
	padding: 0px 20px 2px 0px;
}
table.form tbody td.caption,
table.form tbody td span.caption {
	font-size: 0.85em;
	line-height: 1.3em;
	color: #454545;
}
table.form tbody th.required {
	background: url(/images/field_required.gif) 0px 13px no-repeat;
	font-weight: bold;
	padding-left: 6px;
}
table.form tbody th.error {
	background: url(/images/field_error.gif) 0px 13px no-repeat;
	color: #c00;
	padding-left: 6px;
}
table.form tbody td.error input,
table.form tbody td.error select,
table.form tbody td.error textarea {
	border-color: #c00;
}
table.form tbody td.buttons {
	padding-top: 10px;
}
table.form td.top {
	vertical-align: top;
}

/* input elements
-------------------------------------*/
input,
textarea,
select {
	padding: 1px 2px;
	background-color: #fff;
	border: 1px solid #939598;
}
textarea {
	overflow: auto;
}
select {
	vertical-align: middle;
	padding-right: 1px;
}
select option {
	padding-right: 10px;
}
select.switchbox {
	width: 250px;
	height: 100px;
}
select.fixed-width  { font-family: courier; }
input.tiny          { width: 30px; }
input.sm            { width: 55px; }
input.med           { width: 220px; }
input.lg            { width: 300px; }
input.xl            { width: 466px; }
input.date          { width: 75px; }
input.phone         { width: 127px; }
input.file          { width: 250px; }
input.username      { width: 270px; }
input.password      { width: 130px; }
textarea.sm         { width: 200px; height: 75px;  }
textarea.med        { width: 220px; height: 100px;  }
textarea.lg         { width: 325px; height: 150px; }
textarea.xl         { width: 466px; height: 100px; }
select.med          { width: 180px; }
select.lg           { width: 250px; }
select.xl           { width: 472px; }
select.tall         { height: 100px; }
input.radio-button  { vertical-align: -3px; border: 0;   }
input.checkbox      { vertical-align: middle; border: 0; }

button {
	background-color: #00529c;
	border: none;
	color: #fff;
	padding: 3px 5px;
}
button.primary {
	font-weight: bold;
}
.focus {
	background-color: #efeff0;
	border-color: #009bdf;
}
