div.form input,
div.form textarea,
div.form select {
	margin: 0.2em 0 0.5em 0;
}

div.form fieldset {
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 16px;
	margin: 0 0 16px 0;
}

div.form label {
	font-weight: 600;
	font-size: 13px;
	color: #374151;
	display: block;
	margin-bottom: 4px;
}

div.form .row { margin: 8px 0; }
div.form .hint { margin: 0; padding: 0; color: #94a3b8; font-size: 12px; }
div.form .note { font-style: italic; }
div.form span.required { color: #dc2626; }

div.form div.error label:first-child,
div.form label.error,
div.form span.error { color: #dc2626; }

div.form div.error input,
div.form div.error textarea,
div.form div.error select,
div.form input.error,
div.form textarea.error,
div.form select.error {
	background: #fef2f2;
	border-color: #fca5a5;
}

div.form div.success input,
div.form div.success textarea,
div.form div.success select,
div.form input.success,
div.form textarea.success,
div.form select.success {
	background: #f0fdf4;
	border-color: #86efac;
}

div.form .errorMessage {
	color: #dc2626;
	font-size: 12px;
	margin-top: 2px;
}

div.wide.form label {
	float: left;
	margin-right: 10px;
	position: relative;
	text-align: right;
	width: 100px;
}

div.wide.form .row { clear: left; }

div.wide.form .buttons,
div.wide.form .hint,
div.wide.form .errorMessage {
	clear: left;
	padding-left: 110px;
}
