/* =============================== */
/* CSS for control sap.m/CheckBox  */
/* Belize theme                    */
/* =============================== */

@_sap_m_CheckBox_SelectedWarningColor: darken(@sapUiFieldWarningColor, 100);

.sapMCb.sapMCbSucc .sapMCbBg {
	background-color: @sapUiFieldSuccessBackground;
	border-color: @sapUiFieldSuccessColor;
	&.sapMCbMarkChecked:before {
		color: @sapUiFieldSuccessColor;
	}
}

.sapMCb.sapMCbWarn .sapMCbBg {
	background-color: @sapUiFieldWarningBackground;
	border-color: @sapUiFieldWarningColor;
	&.sapMCbMarkChecked:before {
		color: @_sap_m_CheckBox_SelectedWarningColor;
	}
}

.sapMCb.sapMCbErr .sapMCbBg {
	background-color: @sapUiFieldInvalidBackground;
	border-color: @sapUiFieldInvalidColor;
	&.sapMCbMarkChecked:before {
		color: @sapUiFieldInvalidColor;
	}
}

.sapMCb.sapMCbInfo .sapMCbBg {
	background-color: @sapUiFieldBackground;
	border-color: @sapUiHighlight;
	&.sapMCbMarkChecked:before {
		color: @sapUiHighlight;
	}
}

.sapUiForm .sapMCbBg { /* In forms, align left with '0.0625rem(1px)' ( the focus width) */
	left: 1px; // Must be in pixels to behave correctly in IE
}

.sapUiForm .sapMCb {
	padding-left: 2.25rem; // to have right gap between checkbox and label
}

.sapMCbBg.sapMCbMarkChecked:before {
	color: @sapUiSelected;
}

/* CheckBox focus */
.sapMCb:focus {
	outline: none;
}

html.sap-desktop {
	.sapMCbBg:focus,
	.sapMCbBg:active,
	.sap-desktop .sapMCbBg.sapMCbBgDis:focus {
		-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
		outline: none;
	}

	.sapMCb:not(.sapMCbBgDis):not(.sapMCbHasLabel):focus > .sapMCbBg {
		outline-width: 1px;
		outline-style: dotted;
		outline-color: @sapUiContentFocusColor;
	}

	.sapMCb:not(.sapMCbBgDis):not(.sapMCbDisplayOnly).sapMCbHasLabel:focus:before {
		content: "";
		display: block;
		position: absolute;
		top: 0.6875rem;
		bottom: 0.6875rem;
		left: 0.6875rem;
		right: 0;
		border: 1px dotted @sapUiContentFocusColor;
	}

	.sapUiForm .sapMCb:not(.sapMCbBgDis).sapMCbHasLabel:focus:before {
		left: 0px; /* Cb in SimpleForm: left border adjustment */
	}
}

/* CheckBox in Footer Context */
.sapMFooter-CTX .sapMCb:not(.sapMCbBgDis):focus > .sapMCbBg,
.sapMFooter-CTX .sapMCb:not(.sapMCbBgDis)		> .sapMCbBg:focus {
	outline-color: @sapUiContentContrastFocusColor;
}

.sapMLIBActive .sapMCbBg,
.sapMLIBActive .sapMCbBg.sapMCbMarkChecked,
.sapMLIBActive .sapMCbBg.sapMCbBgDis,
.sapMLIBActive .sapMCbBg.sapMCbBgDis.sapMCbMarkChecked{
	border-color: @sapUiListActiveTextColor;
}

.sapMLIBActive .sapMCbBg{
	background-color: @sapUiListActiveBackground;
}

.sapMCbHoverable:hover{
	border-color: @sapUiFieldHoverBorderColor;
	background: @sapUiFieldHoverBackground;
}

.sapMCbBgDis {
	opacity: @sapUiContentDisabledOpacity;
}

.sapMLIBActive .sapMActive .sapMCbBg.sapMCbActiveStateOff.sapMCbMarkChecked:before,
.sapMLIBActive .sapMCbBg:active.sapMCbActiveStateOff.sapMCbMarkChecked:before,
.sapMLIBActive .sapMCbBg.sapMCbMarkChecked:before,
.sapMLIBActive .sapMActive .sapMCbBg.sapMCbMarkChecked:before,
.sapMLIBActive .sapMCbBg:active.sapMCbMarkChecked:before,
.sapMLIBActive .sapMCbBg.sapMCbBgDis.sapMCbMarkChecked:before{
	color: @sapUiListActiveTextColor;
}

.sapMCbBg.sapMCbBgDis.sapMCbMarkChecked:before {
	color: fade(@sapUiSelected, 25);
}

/* Compact size */
.sapUiSizeCompact{
	.sapUiForm .sapMCbBg { /* In forms, align left with '0.0625rem(1px)' ( the focus width) */
		left: 1px; // Must be in pixels to behave correctly in IE
	}
	.sapUiForm .sapMCb {
		padding-left: 1.5625rem; // to have right gap between checkbox and label
	}
}

html.sap-desktop {
	.sapUiSizeCompact {
		.sapMCb:not(.sapMCbBgDis).sapMCbHasLabel:focus:before {
			top:0.365rem;
			bottom: 0.365rem;
			left: 0.365rem;
		}

		.sapUiForm .sapMCb:not(.sapMCbBgDis):focus:before {
			left: 0px;
		}
	}
}
