input[type="text"], input[type="email"], input[type="password"] {
	padding-left: 1em;
}
label.textfield.has-placeholder input {
	padding-top: 1em;
}
input[type="text"]:not([disabled]):hover, input[type="text"]:not([disabled]):focus,
input[type="email"]:not([disabled]):hover, input[type="email"]:not([disabled]):focus,
input[type="password"]:not([disabled]):hover, input[type="password"]:not([disabled]):focus {
	border: 1px solid #363131;
	border: 1px solid var(--maincolor-dark-hsl);
}

label.textfield {
	display: block;
	position: relative;
	margin-bottom: 0.6em;
}
label.textfield input {
	z-index: 1;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	box-sizing: border-box;
	font-family: inherit;
}
label.textfield .placeholder {
	display: none;
	z-index: 10;
	position: absolute;
	left: 0;
	top: 0;

	margin-left: 1em;
	margin-top: 0.75em;
	color: #999;
	font-size: 1em;
	cursor: text;

	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;

	-webkit-transition: margin-left 0.1s, margin-top 0.1s, font-size 0.1s;
	-moz-transition: margin-left 0.1s, margin-top 0.1s, font-size 0.1s;
	-o-transition: margin-left 0.1s, margin-top 0.1s, font-size 0.1s;
	transition: margin-left 0.1s, margin-top 0.1s, font-size 0.1s;
}
label.textfield.has-placeholder .placeholder {
	display: initial;
}
label.textfield input:focus ~ .placeholder,
label.textfield .placeholder.small {
	margin-left: 0.3em;
	margin-top: 0.05em;
	font-size: 0.7em;
}
