.checkbox-indeterminate { padding-left: 22px; margin-bottom: 0; .font-size-normal(); font-weight: normal; position: relative; min-height: 1em; input[type=checkbox] { display: none; + label { width: 14px; height: 14px; background: #fff; border: 1px solid @gray; border-radius: 2px; position: absolute; left: 0; margin-top: auto; } &:checked:not(:indeterminate) { + label { &::before { content: ''; position: absolute; border: solid @gray-deep; border-width: 0 2px 2px 0; transform: rotate(45deg); width: 5px; height: 9px; left: 4px; } } } &:indeterminate { + label { &::before { content: ''; position: absolute; border: 1px solid @gray-deep; background: @gray-soft; width: 8px; height: 8px; left: 2px; top: 2px; } } } &.disabled, &:disabled { opacity: .4; + label { &::before { opacity: .4; } } } } }