.vlFormLabel{
	color: var(--form-label-color);
	display: inline-block;

	@if variable-exists(form-label-position){
		position: $form-label-position;
		top: $form-label-position-t;
		left: $form-label-position-l;
		transition: all 0.3s;
		z-index: 5;
	}
}
.vlFocusedField>.vlFormLabel{
	color: var(--form-label-color-focused);
	transition: color 0.2s ease;
}

@if variable-exists(form-label-position){
	
	//Initial state
	.vlButtonGroup, .vlLinkGroup{
		.vlFormLabel{
			top: $form-label-select-buttons-position-t;
		}
	}
	.vlCKEditor, .vlTranslatableEditor{
		.vlFormLabel{
			top: $form-label-editor-position-t;
		}
	}
	.vlTrix{
		.vlFormLabel{
			top: $form-label-trix-position-t;
		}
	}

	//Focused/Dirty state
	.vlFormField{
		&:focus-within, &.vlDirtyField, &.vlDate, &.vlTime, &.vlJson, &.vlListe, &.vlInput.vlLeftIcon{
			.vlFormLabel{
				top: $form-label-focused-position-t;
				left: $form-label-focused-position-l;
				font-size: $form-label-focused-font-size;
				@if variable-exists(form-label-focused-font-weight){
					font-weight: $form-label-focused-font-weight;
				}
				transition: all 0.2s;
				@if variable-exists(form-label-focused-color){
					background-color: $form-label-focused-color;
					padding: 0 0.3rem;
				}
			}
		}

		&.vlCheckbox,&.vlToggle,&.vlToggleInput {
			.vlFormLabel{
				position: static;
	            font-size: inherit;  
				@if variable-exists(form-label-focused-font-weight){
	            	font-weight: inherit;
	            }
	        }
        }
        &.vlButtonGroup, &.vlLinkGroup{
			&:focus-within, &.vlDirtyField{
				.vlFormLabel{
					top: $form-label-select-buttons-focused-position-t;
				}
			}
		}
		&.vlCKEditor, &.vlTranslatableEditor{
			&:focus-within, &.vlDirtyField{
				.vlFormLabel{
					top: $form-label-editor-focused-position-t;
				}
			}
		}
		&.vlTrix{
			&:focus-within, &.vlDirtyField{
				.vlFormLabel{
					top: $form-label-trix-focused-position-t;
				}
			}
		}
	}
}

.vlMultiForm>.vlFormLabel{
	position: static;
    font-size: inherit;  
    font-weight: inherit;
}

.vlHasErrors .vlFormLabel{
	color: var(--form-field-error-color);
}