.psm {
	position: relative;
	margin: 0.5em 0;
}
.psm:before, .psm-verdict:before {
	display: inline;
}
.psm-verdict {
	position: relative;
}
.psm-progress {
	/*position: absolute;
	right: 0; bottom: 0; left: 0;*/
	height: 0.28571em;
	background-color: rgba(0, 0, 0, 0.15);
}
.psm-bar {
	height: 100%;
	width: 0;
	max-width: 100%;
	transition: width 200ms;
}

.psm-requirement {
	padding: 3px 0;
	line-height: 18px;
}
.psm-requirement:before {
	content: "\e14c";
	display: inline-block;
	font-family: "Material Icons";
	font-size: 18px;
	width: 24px;
	vertical-align: middle;
	color: #e20031;
	position: relative;
	top: -2px;
}

.psm-req-length .psm-requirement.psm-length:before,
.psm-req-upper .psm-requirement.psm-upper:before,
.psm-req-lower .psm-requirement.psm-lower:before,
.psm-req-numbers .psm-requirement.psm-numbers:before,
.psm-req-symbols .psm-requirement.psm-symbols:before {
	content: "\e5ca";
	color: #6cbe4e;
}

.psm-requirement + .psm-progress {
	margin-top: 0.5rem;
}

.psm-invalid .psm-verdict { color: #b81530; }
.psm-invalid .psm-bar { background-color: #e20031; }

.psm-very-weak .psm-verdict { color: #b81530; }
.psm-very-weak .psm-bar { background-color: #e20031; }

.psm-weak .psm-verdict { color: #b7491e; }
.psm-weak .psm-bar { background-color: #f58026; }

.psm-good .psm-verdict { color: #c6910d; }
.psm-good .psm-bar { background-color: #ffc423; }

.psm-strong .psm-verdict { color: #0086a5; }
.psm-strong .psm-bar { background-color: #00afdd; }

.psm-very-strong .psm-verdict { color: #188738; }
.psm-very-strong .psm-bar { background-color: #6cbe4e; }
