form {
	padding: 0;
	margin: 0;
}
input, textarea, button, select {
	font-family: "MS Sans Serif", Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size: 12px;
}
button {
	cursor: default;
}
.moz input.radio,
.moz input.checkbox {
  margin: 4px 3px 3px 4px ! important;
}


/* control */
.form table.ctrl {
  width: 100%;
}

/* label */
.form table.label td {
  padding: 3px 0;
  vertical-align: top;
}
.form table.label td label {
  /*
  for MS Sans Serif
  mozilla: padding-top:3px;
  ie: padding-top:4px;
  */
  display: block;
  padding-top:3px;
}

/* inline */
.form div.inline table.label {
  float: left;
}
.form div.inline table.label td label {
  padding-right: 4px;
  float: left;
  white-space: pre;
}

/* control vert */
.form table.ctrl.vert {
  width: 100%;
}
.form table.ctrl.vert td.caption {
  padding: 4px 2px;
}
.form table.ctrl.vert td.ctrl {
  padding: 2px;
}

/* control horz */
.form table.ctrl.horz td.caption {
	vertical-align: top;
	padding: 6px 2px;
	width: 120px;
}
.form table.ctrl.horz td.ctrl {
	padding: 2px 0;
}
.moz .form table.ctrl.horz td.ctrl input.text {
  margin-top: 1px;
}

/* multi-columns */
.form table.multi-columns {
	width: 100%;
}


span.help-message {
  display:block;
  color: #666666;
  background-color: inherit;
  font-size: 10px;
  padding: 2px 0;
}
.error-message {
  color:red;
  background-color: inherit;
}
div.error-message {
  padding: 2px 0px;
}
.inline div.error-message {
  padding: 2px 3px;
}
