label.required::after {
	font-size: 0.7em;
	content: ' *';
	vertical-align: super;
	color: #e23;
}

.required_look::after {
	font-size: 1em;
	content: '*';
	vertical-align: super;
	color: #e23;
}

.info_icon {
	color: #553355;
	transition: text-shadow 0.5s;
	&:hover {
		/* color: #cc11cc; */
		text-shadow: 0 0 10px #664466;
	}
}

.rem_count {
	font-size: 0.8em;
	&.dangerously_low_chars_left {
		color: red;
	}
	&::before {
		content: '(Chars remaining: ';
		color: initial;
	}
	&::after {
		content: ')';
		color: initial;
	}
}

select:user-valid,textarea:user-valid,input:not([id=pass1_el]):not([type=checkbox]):user-valid {
	box-shadow: 0 0 3px 1px #7FFF00;
	background-color: rgba(144, 238, 144, 0.2);
}

select:user-invalid,textarea:user-invalid,input:not([id=pass1_el]):not([type=checkbox]):user-invalid {
	box-shadow: 0 0 3px 1px #CD5C5C;
	background-color: rgba(250, 128, 114, 0.2);
}

