form {
	button, input, select, textarea { margin: 2px 0; font-size: 13px; }
	small { color: $font-color-light; }
	hr { margin: 5px 0; }
	fieldset { vertical-align: middle; line-height: 2em; }
	fieldset.collapsed h2 { background-image: none; border-bottom: none; margin-bottom: 0; padding-bottom: 5px; }
	label {
		word-wrap: break-word; color: $font-color-light; line-height: 18px; display: inline-block; /*min-width: 160px;*/
		&.required { font-weight: bold; }
	}
	// input
	input, textarea { @include border-radius(); border: 1px solid $button-silver-dark-color;
		color: $button-silver-font-color; padding: 6px 5px; outline: none; }
	input[type="checkbox"], input[type="radio"] { border: 0; display: inline; width: auto; margin-right: 6px; }
	input[type="file"] { @include border-radius(); border: 1px solid $button-silver-dark-color;
		color: $button-silver-font-color; padding: 6px 5px; outline: none; }
	select { font-weight: normal; }
	small { margin-left: 15px; }
	.form-controls {
		text-align: right; margin: 15px 0 0 0;
		p { margin-top: 6px; }
	}
	.input-list { display: inline-block; vertical-align: top; line-height: 20px; }
	.extra {
		.right { float: right; margin-right: 10px; }
	}
	//.aligned p.help { padding-left: 100px; }
	//.aligned.wide p.help { padding-left: 55px; }
	.form-row { border-bottom-color: $line-color-ultralight; }
	.form-row:last-child { border-bottom-color: transparent; }
}
.form-row input, .form-row textarea { width: 250px; }
.inline-group .form-row input, .inline-group .form-row textarea { width: auto; }


input:valid, textarea:valid {}
input:invalid, textarea:invalid {
	@include border-radius();
}
.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid { background-color: #f0dddd; }

// buttons
button { @include button-common(); }
input[type="submit"], input[type="button"] {
	@include button-common(); padding: 8px 10px !important;
	&.default { @include button-blue(); padding: 7px 10px !important; margin-top: 1px; }
}
a.button {
	text-decoration: none; cursor: pointer; @include button-common();
	&.tab { @include border-radius(0); }
}

// date time
.form-row {
	p.datetime { line-height: 36px; }
}

// calendar
div.calendar {
	table {
		caption { @include background-image(linear-gradient($background-color-dark, $background-color-medium));
			background-color: $background-color-dark; color: $font-color-white !important; margin: 0;
			@include border-top-radius(); }
		td { padding: 0; background: #f3f3f3; }
		td a { padding: 6px 4px; }
	}
	.today a { background: $info-color-ultralight; }
}
div.calendarbox {
	width: 200px !important;
	table th, table td { line-height: 12px; }
	.calendarnav-previous, .calendarnav-next {
		background: none; color: white; text-decoration: none; padding: 4px 7px 6px;
		&:hover, &:focus { background: #666; }
	}
	.calendar-shortcuts { background: transparent; padding: 10px 0 6px 0; border-color: #ddd; }
}
div.calendarbox, div.clockbox {
	@include border-radius(); background: #f3f3f3;
	padding: 0; margin: 0; @include box-shadow(0 1px 10px rgba(0,0,0,0.1)); border: 1px solid #ccc;
	caption, h2 { font-size: 14px; }
	.calendar-cancel { @include border-bottom-radius(); background: none; margin-top: 5px !important;
		padding: 5px 0 !important; }
}
// clock
div.clockbox {
	@include border-top-radius();
	h2 { @include background-image(linear-gradient($background-color-dark, $background-color-medium));
		background-color: $background-color-dark; color: $font-color-white !important;
		@include border-top-radius(); }
	.timelist a { padding: 5px 2px; }
}
.timelist a {
	&, &:active, &:focus, &:hover { background: none !important; }
}

span.datetimeshortcuts a { color: $link-color; }

// filter horizontal
.selector {
	.selector-chooseall, .selector-clearall { line-height: 14px; }
}
