#article fieldset { margin: 5px 0; padding: 4px; }
#article fieldset label { 
	width: 170px;
	display: inline-block;
	text-align: right;
	padding-right: 5px;
	white-space: nowrap;
}
#article fieldset legend { margin-bottom: 10px; padding: 0 10px 0 0; }
#article label { vertical-align: top; }
#article fieldset input, fieldset select { margin: 0 0 2px 0; }
#article input, #article select {
	border: 1px solid #AAA;
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	padding: 0.2em 0.3em;
}
#article input { z-index: 0; }
#article input[type=submit] { margin-top: 1em; }


form label { margin-bottom: 0.3em; }
form label.required { font-weight: 600; }
form .responsivrow > *, form .fullwidthrow > * {
	display: block;
	width: 100%;
}
form .responsivrow label, form .fullwidthrow label { margin-top: 0.3em; }
form *.hide { display: none; }

#article form#inputformsmall {
	border: thin solid #AAA;
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	margin: 2em auto 0;
	padding: 2em;
	text-align: center;
	width: 100%; max-width: 450px;
}

.alert { display: none; }
.alert, .msgerror, .msg {
	border: 1px solid transparent; border-radius: 4px;
	margin-bottom: 20px;
	padding: 1em;
}
.alert.alert-danger, .msgerror {
	background-color: #f2dede;
	border-color: #ebccd1;
}
.alert.alert-danger, .msgerror, .msgerror h2, .msgerror a { color: #a94442; }
.alert.alert-danger a, .msgerror a { border-bottom: 1px solid #a94442; }
.alert.alert-success, .msg {
	background-color: #dff0d8;
	border-color: #d6e9c6;
}
.alert.alert-success, .msg, .msg h2, .msg a { color: #3c763d; }
.alert.alert-success a, .msg a { border-bottom: 1px solid #3c763d; }

@media screen and (min-width: 550px) {
	#article .inputxl { width: 350px; }
	#article .inputl { width: 250px; }
	#article .inputs { width: 110px; }
	#article .inputxs { width: 40px; }
	
	form .responsivrow {
		clear: both;
		margin: 0.3em 0;
		overflow: auto;
	}
	form .responsivrow label {
		margin-top: 0; margin-right: 12px;
		text-align: right;
		width: 180px;
	}
	form .responsivrow > * {
		display: inline-block;
		float: left;
	}
	form .responsivrow input, form .responsivrow select, form .responsivrow textarea { width: auto; }
	form .fullwidthrow input, form .fullwidthrow select, form .fullwidthrow textarea { width: 100%!important; }
}