ui|checkboxgroup {
	display: block;
	padding-bottom: 2px;
	margin-bottom: 3px;
	margin-left: 3px;

	ui|labelbox {

		&.invalid {
			margin: 0 0 5px 3px;
			width: 100%;

			ui|labeltext {
				font-weight: bold;
				color: @field-error-color;
			}
		}
	}
}

ui|checkbox {
	display: block;
	width: 100%;
	padding: 2px;

	ui|datalabeltext {
		float: none;
		margin-left: 18px;
	}
}

ui|checkbutton {

	ui|labelbox {
		height: 18px;
		padding-left: 18px;
		position: relative;
	}

	ui|labelbody {
		&:before {
			box-sizing: border-box;
			position: absolute;
			top: 0px;
			left: 0px;
			content: '';
			width: 16px;
			height: 16px;
			background: #ffffff;
			border: 1px solid @field-border-color;
			border-radius: 3px;
		}
	}

	&.hover {
		ui|labelbody:before {
			border-color: @primary-color;
		}
	}

	&[ischecked='true'] ui|labelbody {
		&:before {
			background: @primary-color;
			border-color: @primary-color;
		}
		&:after {
			position: absolute;
			content: "";
			top: 1px;
			left: 5px;
			height: 8px;
			width: 4px;
			border-bottom: 2px solid @btn-primary-color;
			border-right: 2px solid @btn-primary-color;
			-ms-transform: scale(0.9, 1) rotate(40deg);
			transform: scale(0.9, 1) rotate(40deg);
		}
	}
}

ui|checkbox {
	&.focused{
		ui|checkbutton ui|labelbody:before {
			border-color: @primary-color;
		}

		&[ischecked='true'] ui|labelbody:before{
			border:  1px dotted @field-border-color;
		}
	}
}