.fieldset-container {
    margin-left: 2em;
	margin-bottom:5px;
}
fieldset {
	border:1px solid #ccc;
	padding:5px 10px 10px 10px;
	margin: 0 0 10px 0; 
}
legend {
	color:#333;
	font-size:12px;
	font-weight:bold;
	padding:3px;
}
legend span {
    margin-left: -2em;
}
.sm-form select.full {
	width:100%;
}
/* Labels */
label { 
	font-weight:bold; 
	font-size:12px 
}
.sm-form label.error, .sm-form-vertical label.error, .sm-box-divider.error { color: red; }

.sm-form label {
	display:inline-block;
	float:left;
	font-weight:bold;
	margin-right:1em;
	text-align:right;
	width:30%;
}
.sm-form td label {
	margin:0;
	text-align:inherit;
}
.sm-form.left-align label {
	width:20%;
}
.sm-form .sm-right-col {
 	margin:0 0 0 32%; 
	padding-top:3px 
 }
 .sm-form-vertical .sm-left-col {
  	float:left;
}
.sm-form-vertical .sm-right-col {
	margin-left:38%
}
.sm-form-vertical label {
	display:block;
	text-align:left;
	margin:0 0 3px 0;
}
.sm-form label.required { color:#333333; }

/* Inline radio buttons are presented horizontally rather than vertically. */
.inline-radio-buttons label, .sm-form-vertical .inline-radio-buttons label { display: inline; }

/* Inline labels mingle with other inline elements, such as checkboxes, radio
* buttons, and fill-in-the-blank input boxes within phrases of text. */
.sm-form label.inline, .sm-form .inline-labels label, .sm-form-vertical label.inline {
    width: auto;
    text-align: left;
    display: inline-block;
}
.sm-form label.inline input, .sm-form .inline-labels label input { vertical-align: middle; }
/* End Labels */

/* Text boxes */
input.txtbox, input.txtbox-right, input.txtbox-calendar, select, textarea, .sm-button-upload {
	border:1px solid; 
	border-color:#7C7C7C #C3C3C3 #DDD #C3C3C3; 
	padding:3px 4px 2px 4px;
	background:#fff;
	font-size: 11px;
}
input.txtbox, textarea {
	width: 98%;
}
input.txtbox-right {
	width:230px;
}
input.txtbox-calendar {
	width:150px;
}
textarea {
	font-family: Verdana, sans-serif; 
	font-size: 11px; 
	height:150px;
}
textarea.short {
	height: 5.5em;
}
input.txtbox:focus, input.txtbox-wide:focus, textarea:focus, input.txtbox-calendar:focus {
	border:1px solid #666666; 
}
.required, input.required { background-color: #FAFAFA; }
/* End text boxes */

.sm-form .select {
	width: 57%;  
	padding:2px;
}
.sm-form-vertical .select {
	width: 100%; 
	padding:2px;
}

/* Buttons */
button.btn-img {
	background-image:url(/widgets/form/img/btn-70x32.gif);
	border:0 none;
	cursor:pointer;
	width:70px;
	height:32px;
	overflow:hidden;
	color:#fff;
	font-weight:normal;
	padding-bottom:3px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}

.sm-form button.btn-img:hover { background-position: left bottom; }

.sm-form-info-block {
	width:49%;
	margin-bottom:20px;
}
.sm-form-info-block h3 {
	border-bottom:1px solid silver;
	margin-bottom:3px;
	font-size:16px;
	padding:0 2px 2px 2px;
}
.sm-form .row {
	padding-top:2px;
	padding-bottom:2px;
	clear:both;
	border-bottom:1px solid #f1f1f1;
}
.sm-form-vertical .row {
	padding-top:2px;
	padding-bottom:2px;
}
.sm-form td {
	padding-top:2px;
	padding-bottom:2px;
	/*border-bottom:1px solid #f1f1f1;*/
	vertical-align:top;
}
.sm-red-border, input.sm-red-border, textarea.sm-red-border, select.sm-red-border {
	border:2px solid #cc0000;
}
input.sm-red-border:focus, textarea.sm-red-border:focus {
	border:2px solid #cc0000;
}
td.sm-editable, .sm-editable { background: #FFFFCF none; }

.sm-button-right {
	margin-left: 16em;
}
/*
	misc content
*/
br.break {
	clear: both;
	margin: 2em;
}
label.non-indent {
	text-align: left;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	width:auto;
}
input.zip { width:60px; }
/*
	phone number style (displays on one line)
*/
.sm-form label.phone-number, .sm-form label.phone-extension {
	display: block;
	float: left;
	padding-top: 9px;
}
.sm-form label.phone-extension {
	width: auto;
}
.sm-form label.phone-number {
	clear: left;
}
.sm-form input.phone-areacode, .sm-form input.phone-number, .sm-form input.phone-extension {
	margin: 5px;
	float: left;
}
input.phone-areacode {
	width: 30px;
}
input.phone-number {
	width: 60px;
}
input.phone-extension {
	width: 30px;
}
label span.information {
	font-weight: normal;
	font-style: italic;
}
label.plain {
	font-weight: normal;
	display:inline;
}
/*
	display form actions on the right of form
*/
div.sm-form-actions, .sm-form-actions {
	clear: both;
	width: 100%;
	height: 24px;
}
div.sm-form-actions-right, .sm-form-actions-right {
	height: 24px;
}
div.sm-form-actions-right button, div.sm-form-actions-right button, div.sm-form-actions-right a, div.sm-form-actions-right a {
	margin-left: 10px;
	float: right;
}
.sm-form th { vertical-align: middle; }
