*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body, html {
	min-height: 100%;
	color: #000;
}

/* body, html, div, tr, td, span, p, button, input, textarea, select, h1, h2, h3, h4, h5, h6 */
* {
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-size: 14px;
}

@media (min-width: 992px) {
	* {
		font-size: 12px;
	}
}

header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

header.container {
	padding: 0;
}

@media screen and (min-width: 250px) and (max-width: 991px) {
	/*header {*/
		/*flex-wrap: wrap;*/
	/*}*/
}

h1 {
	font-size: 17px;
	color: #444;
	font-weight: bold;
	margin: 0 0 10px;
}

h2 {
	font-size: 15px;
	color: #666;
	font-weight: bold;
	margin: 10px 0 5px;
}

h1 + h2 {
	margin: -10px 0 15px;
}

h3 {
	font-size: 14px;
	color: #111;
	font-weight: bold;
	margin: 10px 0 5px;
}

h4 {
	font-size: 13px;
	color: #777;
	font-weight: bold;
	margin: 10px 0 5px;
}

h5 {
	font-size: 12px;
	color: #666;
	font-weight: bold;
	margin: 5px 0 0;
}

h6 {
	font-size: 11px;
	color: #999;
	font-weight: bold;
	margin: 5px 0 0;
}

h1 span {
	font-weight: 400;
	font-size: 17px;
	color: #555;
}

h1 em {
	font-weight: 200;
	font-size: 17px;
	color: #777;
	font-style: normal;
}

h3 > span {
	font-weight: 300;
	font-size: 1em;
}


::-webkit-input-placeholder {
	color: rgba(51, 51, 51, 0.25);
}

:-moz-placeholder {
	color: rgba(51, 51, 51, 0.25);
}

::-moz-placeholder {
	color: rgba(51, 51, 51, 0.25);
	opacity: 1; /* FF19 lowers the opacity */
}

:-ms-input-placeholder {
	color: rgba(51, 51, 51, 0.25);
}

footer {
	color: #999;
	margin: 35px 0 15px;
}

footer div, footer p {
	color: #999;
}

footer a {
	text-decoration: none;
	color: #666;
}

footer a:hover {
	color: #333;
}

footer a .fa {
	font-size: 1.25em;
}

.screen-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(250,250,250,0.95);
	padding: 50px;
	display: none;
	z-index: 3000;
}

#bug-report > div {
	position: absolute;
	width: 400px;
	max-width: 50%;
	left: 50%;
	margin-left: -200px;
}


a {
	text-decoration: underline;
	cursor: pointer;
}

a.danger {
	color: #d43f3a;
	text-decoration: none;
}

a.link {
	text-decoration: none;
	color: #666;
}

i.fa.danger, i.fal.danger, i.far.danger, i.fab.danger, i.fas.danger {
	color: #d43f3a;
}

i.fa.warning, i.fal.warning, i.far.warning, i.fab.warning, i.fas.warning {
	color: #eea236;
}

i.fa.success, i.fal.success, i.far.success, i.fab.success, i.fas.success {
	color: #4cae4c;
}

form {
	margin: 0px;
}

fieldset, div.fieldset {
	border: 1px solid #999;
	margin-bottom: 5px;
	position: relative;
	margin-left: 0;
	margin-right: 0;
}

div.fieldset {
	padding: 5px;
}

fieldset > legend, div.fieldset > legend {
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-size: 13px;
	color: #006;
	font-weight: 700;
	position: relative;
}

fieldset > legend span, div.fieldset > legend span {
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #006;
	font-weight: 300;
	position: relative;
}

fieldset > legend.subdued {
	font-size: 12px;
	color: #666;
}

fieldset > legend .label {
	color: #666;
	font-size: 0.9rem;
	text-transform: uppercase;
	display: inline-block;
	border: 1px solid #999;
	background: #fff;
	line-height: 1em;
	padding: 1px 2px;
	border-radius: 3px;
	margin-bottom: 4px;
	margin-left: 5px;
}

.id-emphasis {
	font-size: 16px; color: #306; font-weight: 700; line-height: 0.5em;
}

table.table {
	border-spacing: 0;
	border-collapse: collapse;
	border: 0px;
	width: 100%;
	margin-bottom: 5px;
}

table.table > thead > tr > th {
	vertical-align: bottom;
}

table.form {
	margin-bottom: 0px;
}

table.form tbody > tr > td, table.form > tr > td {
	padding: 2px 2px 3px;
}

table.form-tight tbody > tr > td, table.form-tight > tr > td {
	padding: 1px 2px;
}

table.form tbody > tr > td label, table.form > tr > td label {
	padding-top: 4px;
}

table.form.label-right > tbody > tr > td:first-child {
	text-align: right;
}

tr {
	vertical-align: top;
}

th[data-sort] {
	cursor: pointer;
}

table.list thead > tr > th {
	border-bottom: 1px solid #333;
	padding: 0 2px 3px;
	vertical-align: bottom;
	text-align: left;
	font-weight: 700;
	font-size: 1.1em;
	color: #333;
	line-height: 1em;
}

table.list thead > tr > th a {
	/*font-size: 1rem;*/
	/*font-weight: 400;*/
	color: #333;
	text-decoration: none;
	border-bottom: 1px dashed #666;
}

table.list thead > tr > th.pad {
	padding-left: 5px;
	padding-right: 5px;
}

table.list tbody > tr {
	vertical-align: middle;
}

table.list tbody > tr:nth-child(odd) {
	background: rgba(239,239,239,0.2);
}

table.list tbody > tr:nth-child(even) {
	background: rgba(245,245,245,0.8);
}

table.list tbody > tr > td, table.list tfoot > tr > td {
	padding-left: 2px;
	padding-right: 2px;
}

table.list-wide > thead > tr > th, table.list-wide tbody > tr > td, table.list-wide tfoot > tr > td,
table.lined-wide > thead > tr > th, table.lined-wide tbody > tr > td, table.lined-wide tfoot > tr > td {
	padding-left: 5px;
	padding-right: 5px;
}

table.list td.wide, table.lined td.wide {
	padding-left: 5px;
	padding-right: 5px;
}

table.highlight > tbody > tr.on:nth-child(odd),
table.list > tbody > tr.highlight:nth-child(odd),
table.banded.highlight > tbody > tr:nth-child(odd):hover {
	background: rgba(255,204,153,0.4);
}

table.highlight > tbody > tr.on:nth-child(even),
table.list > tbody > tr.highlight:nth-child(even),
table.banded.highlight > tbody > tr:nth-child(even):hover {
	background: rgba(255,204,153,0.6);
}




table.feature {
	overflow: hidden;
}

table.feature > tbody > tr.on:nth-child(odd) {
	background: rgba(255,204,153,0.4);
}

table.feature > tbody > tr.on:nth-child(even) {
	background: rgba(255,204,153,0.6);
}

table.feature td, table.feature th {
	position: relative;
}

table.feature tr:not(.no) td:not(.no):hover::after,
table.feature tr:not(.no) th:not(.no):hover::after {
	content: "";
	position: absolute;
	background-color: rgba(255,204,153,0.9);
	left: 0;
	top: -5000px;
	height: 10000px;
	width: 100%;
	z-index: -1;
}


table.lined > thead tr {
	border-bottom: 1px solid #666;
}

table.lined > thead > tr > th {
	border-bottom: 1px solid #666;
}

table.lined > tbody tr:not(.no) {
	border-bottom: 1px solid #ccc;
}

table.lined > tbody > tr:hover {
	background-color: rgba(207,214,254,0.66);
	/*background-color: #cfd6fc;*/
}

/*table.lined > tbody > tr.no, table.lined:not(.no-hover) > tbody > tr:hover {*/
	/*background: inherit;*/
/*}*/

table.lined > tbody > tr.no:hover {
	background: inherit;
}

table.lined > tbody tr.no-line {
	border-bottom: none;
}

table.lined > tfoot tr td {
	font-weight: 700;
	color: #333;
}

table.lined tbody tr:last-of-type {
	/*border-bottom: 1px dashed #333;*/
	border-bottom: none;
}

table.lined tr.thead > th {
	font-size: 1.2em;
	font-weight: 700;
	color: #333;
	text-align: left;
	border-bottom: 1px dashed #666;
}

table.lined tr.tfoot {
	border-bottom: none;
}

table.lined tr.tfoot > td, table.list tfoot tr.totals > td {
	font-size: 1.1em;
	font-weight: 700;
	color: #666;
}

table.banded > thead tr, table.banded > thead > tr > th {
	border-bottom: 1px solid #666;
}

table.banded > tbody tr {
	border-bottom: 1px solid #ccc;
}

table.banded > tfoot tr td {
	font-weight: 700;
	color: #333;
}

table.banded tbody tr:last-of-type, table.banded tr.tfoot {
	border-bottom: none;
}

table.banded tr.thead > th {
	font-size: 1.2em;
	font-weight: 700;
	color: #333;
	text-align: left;
	border-bottom: 1px dashed #666;
}

table.banded tr.tfoot > td, table.list tfoot tr.totals > td {
	font-size: 1.1em;
	font-weight: 700;
	color: #666;
}


table.bordered {
	border: 1px solid #ccc;
}

table.bordered > thead > tr > th {
	border: 1px solid #666;
	padding: 5px;
}

table.bordered > tbody > tr > td {
	border: 1px solid #999;
}

table.padded > tbody > tr > td {
	padding-left: 3px;
	padding-right: 3px;
}

.pillared-odd,.table.pillared tbody tr > td:nth-child(odd) {
	background-color: rgba(100,100,100,0.025);
}

.pillared-even,.table.pillared tbody tr > td:nth-child(even) {
	background-color: rgba(100,100,100,0.075);
}

/*.table.pillared tr > td:nth-child(2n+3):not(:last-child), .table.pillared tr > td:nth-child(2n+4):not(:last-child) {*/
.table.pillared tbody tr > td:not(:last-child), .table.pillared tbody tr > td:not(:first-child):not(:last-child) {
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

.table.pillared tbody tr > td:first-child {
	background-color: inherit;
}

table.nowrap tbody > tr > td, table.nowrap tbody > tr > th {
	white-space: nowrap;
}

table.striped thead > tr > th {
	border-bottom: 1px solid #999;
	padding: 0 1px 1px;
	vertical-align: bottom;
	text-align: left;
	font-weight: 700;
	color: #666;
}

table.striped thead > tr > th a {
	color: #666;
	text-decoration: none;
	border-bottom: 1px dashed #ccc;
}

table.striped tbody > tr:nth-child(odd) {
	background: rgba(239,239,239,0.4);
}

table.striped tbody > tr:nth-child(even) {
	background: rgba(239,239,239,0.8);
}

table.list tbody > tr:hover {
	background: #cfd6fc;
}

table.list tbody > tr.no {
	background: inherit;
}

table.list tbody > tr.no:hover {
	background: inherit;
}

.sort-indicator {
	margin-left: 5px;
}

select, input[type=text], input[type=number], input[type=button], button, textarea {
	/*padding: 1px 2px;*/
	font-size: 11px;
	/*line-height: 1em;*/
	min-height: 18px;
}

input[type=radio], input[type=checkbox] {
	margin: 0;
	vertical-align: middle;
	min-height: 14px;
}


hr {
	height: 1px; border: none; background: #999;
}

.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.text-left { text-align: left !important; }
.nowrap { white-space: nowrap; }

.no-records {
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
	font-weight: 300;
	font-style: oblique;
	color: #666;
}

.list-links > a {
	display: block;
	line-height: 1.33em;
	position: relative;
	padding-left: 1.25em;
}

.list-links > a:before {
	position: absolute;
	content: "\2014";
	color: #ccc;
	left: 0;
}

.list-links > a:hover {
	color: #333;
}

a img {
	border: 0;
}

label {
	font-size: 11px;
	color: #333;
	display: block;
	font-weight: 700;
	position: relative;
}

.form-inline label, label.inline, .inline label {
	display: inline-block;
}

label.minor, .formboxlabel {
	font-weight: 700;
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-size: 9px;
	color: #333;
}


label > span {
	font-weight: 300;
	font-size: inherit;
}

sublabel, label.sublabel {
	font-size: 9px;
	color: #666;
	display: block;
	font-weight: 400;
	text-transform: uppercase;
	position: relative;
}

.form-inline sublabel, sublabel.inline, .inline sublabel, .form-inline label.sublabel, label.sublabel.inline, .inline label.sublabel {
	display: inline-block;
}

table.list thead > tr > th label {
	font-size: 10px;
}

label.form-control {
	font-weight: inherit;
}

label.passthrough, label.click-through {
	font-weight: inherit;
	font-size: inherit;
	display: inline;
	color: inherit;
	cursor: pointer;
}

label .optional {
	font-weight: 400;
	color: #666;
}

.label-help {
	color: #999;
	font-weight: 300;
	line-height: 1em;
	font-size: 11px;
}

p.label-help {
	margin-top: 0;
	margin-bottom: 3px;
}

select.form-control, input[type=text].form-control, input[type=number].form-control, input[type=password].form-control, input[type=email].form-control, textarea.form-control, div.form-control {
	width: 100%;
	background-color: #fff;
	background-image: none;
	border: 1px solid #999;
	border-radius: 2px;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
	-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	vertical-align: middle;
	min-height: 20px;
	padding: 1px 2px;
}

/* wonder if there should be a unique class for this behavior */
input[type=number].form-control.decimals-only::-webkit-outer-spin-button,
input[type=number].form-control.decimals-only::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type=number].form-control.decimals-only {
	-moz-appearance: textfield;
}


div.form-control[contenteditable] {
	white-space: pre-wrap;
}

textarea.form-control {
	line-height: 1em;
}

select.form-control.inline, input[type=text].form-control.inline, input[type=number].form-control.inline, textarea.form-control.inline, .inline input.form-control, .inline select.form-control, .form-inline select.form-control, .form-inline select.form-control, .form-inline input[type=text].form-control, .form-inline input[type=number].form-control, .form-inline input[type=password].form-control, .form-inline input[type=email].form-control, .form-inline textarea.form-control {
	display: inline-block;
	width: auto;
}

select.form-control.sm, input[type=text].form-control.sm, input[type=number].form-control.sm, textarea.form-control.sm {
	min-height: inherit;
	padding: 0 1px;
}

select.form-control option:nth-child(odd) {
	background-color: rgb(240, 250, 255);
}

select.form-control option:nth-child(even) {
	background-color: #fff;
}

select.form-control[multiple] option:nth-child(odd) {
	background-color: rgb(245,245,245);
}

select.form-control[multiple] option:nth-child(even) {
	background-color: rgb(250,250,250);
}

select.form-control[disabled], input[type=text].form-control[disabled], input[type=number].form-control[disabled], textarea.form-control[disabled],
.form-control[disabled],
.form-control[readonly],
input.form-control[readonly],
button[disabled],
fieldset[disabled] .form-control {
	background-color: rgb(250,250,250);
	opacity: 1;
	border: 1px solid #bbb;
	color: #999;
	/*min-height: 20px;*/
	border-radius: 2px;
}
.form-control[disabled],
fieldset[disabled] .form-control,
button[disabled] {
	cursor: not-allowed;
}

select.form-control.missing, input[type=text].form-control.missing, input[type=number].form-control.missing, input[type=radio].form-control.missing, input[type=checkbox].form-control.missing, input[type=password].form-control.missing, input[type=email].form-control.missing, textarea.form-control.missing, div.form-control.missing {
	border: 1px solid #c00;
	/*outline: 1px dashed rgba(255,0,0,0.5);*/
	background-color: rgba(255,0,0,0.05);
	-webkit-box-shadow: 0 0 0 1px rgba(255,0,0,0.5);
	box-shadow: 0 0 0 1px rgba(255,0,0,0.5);
}

.form-control-static {
	margin: 0;
	display: inline-block;
	min-height: 20px;
	padding-top: 4px;
}

button.btn-danger[disabled], button.btn-primary[disabled] {
	background-color: #ccc;
	border-color: #999;
}

/*@-moz-document url-prefix() {*/
	select.form-control {
		padding-right: 20px;
		background-image: url("data:image/svg+xml,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' width='8px' height='8px' viewBox='0 0 1200 1000' fill='rgb(51,51,51)'><path d='M1100 411l-198 -199l-353 353l-353 -353l-197 199l551 551z'/></svg>");
		background-repeat: no-repeat;
		background-position: calc(100% - 5px) 50%;
		-moz-appearance: none;
		-webkit-appearance: none;
		appearance: none;
	}
/*}*/

select.form-control::-ms-expand {
	display: none;
}

@media (min-width: 768px) {
	.form-inline .form-group {
		display: inline-block;
		margin-bottom: 0;
		vertical-align: middle;
	}
	.form-inline .form-control {
		display: inline-block;
		width: auto;
		vertical-align: middle;
	}
	.form-inline .form-control-static {
		display: inline-block;
	}
	.form-inline .input-group {
		display: inline-table;
		vertical-align: middle;
	}
	.form-inline .input-group .input-group-addon,
	.form-inline .input-group .input-group-btn,
	.form-inline .input-group .form-control {
		width: auto;
	}
	.form-inline .input-group > .form-control {
		width: 100%;
	}
	.form-inline .control-label {
		margin-bottom: 0;
		vertical-align: middle;
	}
	.form-inline .radio,
	.form-inline .checkbox {
		display: inline-block;
		margin-top: 0;
		margin-bottom: 0;
		vertical-align: middle;
	}
	.form-inline .radio label,
	.form-inline .checkbox label {
		padding-left: 0;
	}
	.form-inline .radio input[type="radio"],
	.form-inline .checkbox input[type="checkbox"] {
		position: relative;
		margin-left: 0;
	}
	.form-inline .has-feedback .form-control-feedback {
		top: 0;
	}
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
	padding-top: 7px;
	margin-top: 0;
	margin-bottom: 0;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
	min-height: 27px;
}
.form-horizontal .form-group {
	margin-right: -15px;
	margin-left: -15px;
}
@media (min-width: 768px) {
	.form-horizontal .control-label {
		padding-top: 7px;
		margin-bottom: 0;
		text-align: right;
	}
}
.form-horizontal .has-feedback .form-control-feedback {
	right: 15px;
}
@media (min-width: 768px) {
	.form-horizontal .form-group-lg .control-label {
		padding-top: 11px;
		font-size: 18px;
	}
}
@media (max-width: 768px) {
	.form-horizontal .form-group-sm .control-label {
		padding-top: 6px;
		font-size: 12px;
	}
	.row.form-group > div[class*="col-"]:not(:last-child) {
		padding-bottom: 10px;
	}
}


.form-divider {
	border-top: 1px solid rgb(240,240,240);
	padding-top: 5px;
	margin-bottom: 5px;
	margin-top: 15px;
}

.form-divider:first-child {
	margin-top: 0;
}

.form-cluster {
	border: 1px solid #ccc;
	padding: 5px;
	background: rgba(238,238,238,0.50);
}

.form-cluster.alt {
	border: 1px solid rgb(0, 112, 184);
	border-radius: 2px;
	background: rgba(230, 245, 255, 0.5);
}

.form-cluster.subdued {
	border: none;
	border-left: 1px solid #eee;
	background: inherit;
}

.form-cluster label:not(:first-child), .form-cluster sublabel:not(:first-child), .form-cluster label.sublabel:not(:first-child) {
	margin-top: 5px;
}

.form-cluster div.row {
	margin-top: 2px;
	margin-bottom: 2px;
}

.form-cluster div.row label {
	line-height: 1em;
	margin-top: 0.5em;
}

.form-cluster-controls {
	margin-top: 10px;
	text-align: right;
}

.data-cluster {
	border: 1px solid #ccc;
	padding: 5px;
	background: rgba(218,218,218,0.125);
	border-radius: 2px;
}

.form-group:not(:first-of-type) label, .form-group label:not(:first-child), .form-group:not(:first-of-type) sublabel, .form-group sublabel:not(:first-child), .form-group:not(:first-of-type) label.sublabel, .form-group label.sublabel:not(:first-child) {
	margin-top: 10px;
}

.form-group *[class*="col-"] > label {
	margin-top: 0;
}

.row.form-group:not(:last-of-type) {
	margin-bottom: 10px;
}

.row.form-group-sm:not(:last-of-type) {
	margin-bottom: 5px;
}

.row.form-group-xs:not(:last-of-type) {
	margin-bottom: 3px;
}

.row.row-form {
	padding-bottom: 5px;
	border-bottom: 1px dashed #ccc;
	margin-bottom: 5px;
}

.row.row-divider {
	padding-top: 5px;
	border-top: 1px dashed #ccc;
	margin-top: 5px;
}


.btn, .tag {
	display: inline-block;
	padding: 2px 6px;
	margin-bottom: 0;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.25em;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	border: 1px solid #999;
	border-radius: 2px;
	text-decoration: none;
	background: #ccc;
	color: #333;
	min-height: 18px;
}

.btn-obscure {
	opacity: 0.5;
}

.btn-obscure:hover {
	opacity: 1;
}

.btn-block {
	width: 100%;
	display: block;
}

.btn-primary, a.btn-primary {
	background: #0070b8;
	border-color: #005e99;
	color: #fff;
}

.btn-primary:hover:not(:disabled), a.btn-primary:hover:not(:disabled) {
	background: #006eb3;
}

.btn-secondary {
	background: #009bff;
	border-color: #007acc;
	color: #fff;
}

.btn-secondary:hover:not(:disabled) {
	background: #008ae6;
}

.btn-tertiary {
	background: #00ceff;
	border-color: #00a3cc;
	color: #fff;
}

.btn-tertiary:hover:not(:disabled) {
	background: #00b8e6;
}

.btn-cancel {
	background: #eee;
	border-color: #ccc;
	color: #666;
}

.btn-link {
	background: #fff;
	border-color: #005e99;
	color: #0070b8;
}

.btn-link:hover {
	background: #e6f5ff;
}

.btn-alt {
	background: #fff;
	border-color: #00a3cc;
	color: #00a3cc;
}

.btn-alt:hover {
	background: rgba(0, 205, 255, 0.09);
	color: #00a3cc;
	border-color: #008eb8;
}

.btn-tool {
	background: #fff;
	border-color: #ea259d;
	color: #b80070;
}

.btn-tool:hover {
	background: rgba(237, 202, 223, 0.66);
	color: #b80070;
	border-color: #7d014d;
}

.btn-danger {
	color: #fff;
	background-color: #d9534f;
	border-color: #d43f3a;
}

.btn-danger:hover:not(:disabled) {
	background-color: #d43f3a;
	border-color: #d43f3a;
}

.btn-danger.muted {
	color: #fff;
/*	background-color: #dcc;
	border-color: #ecc; */
	background-color: #f6dddd;
	border-color: #e8d7d7;
}

.btn-warning {
	color: #fff;
	background-color: #f0ad4e;
	border-color: #eea236;
}

.btn-warning.muted {
	color: #fff;
	background-color: #f5e4d6;
	border-color: #ead4c3;
}

.btn-warning:hover:not(:disabled) {
	background-color: #eea236;
	border-color: #eea236;
}

.btn-caution {
	color: #fff;
	background-color: #ef754d;
	border-color: #ed5c2c;
}

.btn-caution.muted {
	color: #fff;
	background-color: #fbdbd0;
	border-color: #f7b7a1;
}

.btn-caution:hover:not(:disabled) {
	background-color: #ed5c2c;
	border-color: #d34312;
}

.btn-success {
	color: #fff;
	background-color: #5cb85c;
	border-color: #4cae4c;
}

.btn-success.muted {
	color: #fff;
	background-color: #b4c0b4;
	border-color: #a8bda8;
}

.btn-success:hover:not(:disabled) {
	color: #fff;
	background-color: #4cae4c;
	border-color: #4cae4c;
}

.btn-sm {
	padding: 2px 3px;
	font-size: 0.95rem;
}

.btn-xs {
	padding: 1px 2px;
	line-height: 1em;
	font-size: 0.9rem;
	min-height: initial;
}

.btn-md {
	padding: 6px 12px;
	font-size: 16px;
	line-height: 1em;
}

.btn-lg, .btn-group-lg > .btn {
	padding: 10px 16px;
	font-size: 18px;
	line-height: 1.3333333;
}


.inspector-link {
	color: #999 !important;
	line-height: 0;
	font-size: 12px;
	padding: 0 3px;
}
.inspector-link:hover {
	color: #333 !important;
}

p.form-control {
	padding: 4px 0;
	margin: 0;
}

pre {
	display: block;
	font-family: Consolas, monospace;
	white-space: pre;
	background: #eee;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 5px;
}

pre > pre {
	margin: 0px;
}

code,
kbd,
pre,
samp {
	font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}
code {
	padding: 2px 4px;
	font-size: 90%;
	color: #c7254e;
	background-color: #f9f2f4;
	border-radius: 4px;
}
kbd {
	padding: 2px 4px;
	font-size: 90%;
	color: #fff;
	background-color: #333;
	border-radius: 3px;
	-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
	box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
	padding: 0;
	font-size: 100%;
	font-weight: 700;
	-webkit-box-shadow: none;
	box-shadow: none;
}
kbd.alt {
	background-color: #999;
}
pre {
	display: block;
	padding: 9.5px;
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 1.42857143;
	color: #333333;
	word-break: break-all;
	word-wrap: break-word;
	background-color: #f5f5f5;
	border: 1px solid #ccc;
	border-radius: 4px;
}
pre code {
	padding: 0;
	font-size: inherit;
	color: inherit;
	white-space: pre-wrap;
	background-color: transparent;
	border-radius: 0;
}

.container {
	max-width: 1000px;
	position: relative;
}

.flex-container {
	min-width: 800px;
	width: 1000px;
	max-width: 100%;
	position: relative;
}

.auto-container {
	min-width: 800px;
	max-width: none;
}

@media screen and (min-width: 250px) and (max-width: 991px) {
	.row > div:not(.padless) {
		padding-bottom: 4px;
	}
}

.ui-icon.small {
	display: inline-block;
	position: relative;
	vertical-align: baseline;
	width: 12px;
	height: 12px;
}

#load-indicator {
	font-size: 1.25rem;
	color: #999;
	vertical-align: middle;
}

.fa.icon-driving-directions, .fal.icon-driving-directions {
	font-size: 1.5em; color: #ff523e; vertical-align: middle;
}

.fa.icon-driving-directions:hover, .fal.icon-driving-directions:hover {
	color: #ff7052;
}

.fa.icon-redline, a .fa.icon-redline, .fal.icon-redline, a .fal.icon-redline {
	color: #c00; vertical-align: middle; opacity: 0.5;
}

.fa.icon-redline:hover, a .fa.icon-redline:hover, .fal.icon-redline:hover, a .fal.icon-redline:hover {
	color: #e00;
}

.fa.icon-right-of-way, a .fa.icon-right-of-way,.fal.icon-right-of-way, a .fal.icon-right-of-way {
	color: #c4c; vertical-align: middle;
}

.fa.icon-right-of-way:hover, a .fa.icon-right-of-way:hover, .fal.icon-right-of-way:hover, a .fal.icon-right-of-way:hover {
	color: #e74de7;
}


.fa.icon-map-address,.fal.icon-map-address {
	font-size: 1.25em; color: #999; vertical-align: middle; margin-right: 0.33em;
}

.fa.icon-map-address:hover,.fal.icon-map-address:hover {
	color: #bbb;
}

.fas .fa, .fal .fa {
	font-size: 12px;
}


.control-box {
	padding: 5px;
	border-radius: 2px;
	border: 1px solid #ccc;
	margin-bottom: 15px;
	position: relative;
}

.control-box .ctl {
	display: inline-block;
	white-space: nowrap;
	margin: 1px;
}

.control-box > div.row.form-group {
	margin-bottom: 0;
}

.control-holder {
	border: 1px dotted #ccc;
	border-radius: 2px;
	padding: 5px;
	margin-bottom: 10px;
	line-height: 1em;
	display: block;
	position: relative;
}

.control-box + .control-holder {
	margin-top: -5px;
}

.control-box-settings {
	cursor: pointer;
	position: absolute;
	right: 0;
	top: -21px;
	font-size: 1.3rem;
	color: #555;
	border: 1px dashed #aaa;
	line-height: 1em;
	padding: 0 5px;
	border-radius: 3px;
	background: rgba(200,200,200,0.1);
}

.control-box-settings:hover {
	color: #333;
	border-style: solid;
}

.control-box-settings > span {
	text-transform: uppercase;
	font-size: 1rem;
	color: inherit;
}

.control-box-settings-box {
	position: relative; padding: 10px; border: 1px dashed #ff9500; border-radius: 5px; background: rgba(255, 149, 0, 0.25); margin: 5px 0 10px;
}

.information-box {
	position: relative; padding: 10px; border: 1px dashed #999; border-radius: 5px; background: rgba(235, 235, 235, 0.25); margin: 5px 0 10px;
}

.information-box .label, label.hint {
	line-height: 1em; font-weight: 300; color: #999; text-transform: uppercase; font-size: 8px;
}

.click-sort {
	cursor: pointer;
	text-decoration: underline;
}

.clickable:hover {
	cursor: pointer;
	text-decoration: underline;
}

.flex-box {
	display: moz-flex;
	display: ms-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.flex-box.inline {
	display: inline-flex;
}

.flex-box.flush-left {
	justify-content: flex-start;
}

.flex-box.flush-right {
	justify-content: flex-end;
}

.flex-box.flush-center {
	justify-content: center;
}

.flex-box.flex-wrap {
	flex-wrap: wrap;
}

.flex-box.align-top {
	align-items: flex-start;
}

.flex-box.align-bottom {
	align-items: flex-end;
}

.flex-box.align-middle {
	align-items: center;
}

.flex-box.align-fill {
	align-items: stretch;
}

.flex-box.flex-spaced > * {
	margin-left: 2px;
	margin-right: 3px;
}

.flex-box.flex-spaced > *:first-child {
	margin-left: 0;
}

.flex-box.flex-spaced > *:last-child {
	margin-right: 0;
}

.flex-box.flex-even > * {
	flex: 1 0;
}

.flex-bordered {
	border: 1px solid #ccc;
}

.flex-bordered > * {
	padding: 5px;
	border-right: 1px solid #ccc;
}

.flex-bordered > *:last-child {
	border-right: none;
}

.flex-pillared > * {
	padding: 0 5px;
	border-right: 1px solid #ccc;
}

.flex-pillared > *:last-child {
	border-right: none;
}

.flex-grow-even > * {
	flex-grow: 1;
}

.line-header {
	display: flex;
	flex-direction: row;
	justify-content: center;
	text-align: center;
	text-transform: uppercase;
	font-size: 0.9em;
}

.line-header:before, .line-header:after {
	background-color: #999;
	content: '\a0';
	flex-grow: 1;
	height: 1px;
	position: relative;
	top: 0.5em;
}

.line-header:before {
	margin-right: 5px;
}

.line-header:after {
	margin-left: 5px;
}

.line-header.left:before {
	flex-grow: 0;
}


.comment-slab {
	margin-top: 5px;
	margin-bottom: 10px;
}

.comment-slab-detail {
	color: #999;
	margin-top: 1px;
	border-bottom: 1px dotted #aaa;
	padding-bottom: 5px;
	margin-bottom: 5px;
}

.instruction {
	color: #999;
}

.instruction-text {
	color: #444;
	font-size: 1.2rem;
	line-height: 1.1em;
}

.only-tag, .tag-only {
	color: #999;
	font-size: 0.9rem;
	text-transform: uppercase;
	display: inline-block;
	border: 1px dotted #ccc;
	line-height: 1em;
	padding: 1px 2px;
	border-radius: 3px;
	margin: 1px 0;
}

.tag-success {
	line-height: 1em; font-weight: 700; border-radius: 3px; padding: 3px 3px; color: white; background-color: #080; border: 1px solid #0c0;
}

.tag-warning {
	line-height: 1em; font-weight: 700; border-radius: 3px; padding: 3px 3px; color: white; background-color: #856404; border: 1px solid #c99604;
}

.tag-danger {
	line-height: 1em; font-weight: 700; border-radius: 3px; padding: 3px 3px; color: white; background-color: #800; border: 1px solid #c00;
}


.alert-box {
	position: fixed;
	width: 50vw;
	max-width: 50vw;
	left: 25vw;
	top: 25px;
	z-index: 5000;
}

.alert {
	border: 2px solid #999;
	background: #eee;
	border-radius: 5px;
	padding: 10px;
	padding-right: 20px;
	width: 100%;
	margin-bottom: 10px;
	z-index: 6000;
	position: relative;
}

.alert * {
	position: relative;
	z-index: 6250;
}

.alert:after {
	content: ' ';
	display: block;
	position: absolute;
	top: -3px;
	bottom: -3px;
	left: -3px;
	right: -3px;
	border-radius: 6px;
	border: 2px dotted #666;
	opacity: 0.5;
	z-index: 4500;
}

.alert:last-child {
	margin-bottom: 0px;
}

.alert-success {
	color: #155724;
	background-color: #d4edda;
	border-color: #155724;
}

.alert-success:after {
	border-color: #0a0;
	box-shadow: 0 0 0 3px rgba(0,150,50,0.5);
}

.alert-error {
	color: #721c24;
	background-color: #f8d7da;
	border-color: #721c24;
}

.alert-error:after {
	border-color: #a00;
	box-shadow: 0 0 0 3px rgba(225,0,0,0.5);
}

.alert-warning {
	color: #856404;
	background-color: #fff3cd;
	border-color: #856404;
}

.alert-warning:after {
	border-color: #c99604;
	box-shadow: 0 0 0 3px rgba(225,175,0,0.5);
}

.alert-clear {
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 2rem;
	cursor: pointer;
	z-index: 6000;
}

.alert-persistent {
	/* persists and is not removed from page; class definition for reference only */
}

.alert-text {
	color: #f00;
}

.note-box {
	border: 2px solid #ccc; color: #666; background: rgba(250,250,250,0.5);
	font-size: 1.25em; padding: 10px; border-radius: 3px;
	margin: 5px 0 10px;
}

.note-box.note-danger {
	border: 2px solid #c00; color: #600; background: rgba(250,220,220,0.5);
}

.note-box.note-okay {
	border: 2px solid #0c0; color: #060; background: rgba(220,250,220,0.5)
}

.note-box.note-warning {
	border: 2px solid #f1c40f; color: #d4ac0d; background: rgba(241,196,15,0.25)
}

.note-box.note-information {
	border: 2px solid #00c; color: #006; background: rgba(220,220,250,0.5);
}

.text-error {
	color: #900;
}

.text-warning {
	color: #997300;
}

.text-success {
	color: #090;
}

.detail-box {
	position: relative;
	padding: 10px; border: 1px solid #0070b8; border-radius: 5px; background: rgba(230, 245, 255, 0.5);
}

.specifics-box {
	position: relative;
	padding: 10px; border: 1px solid #ff9500; border-radius: 5px; background: rgba(255, 149, 0, 0.25);
}

.contractor-correction-box {
	border-color: #900; border-width: 2px; background-color: rgba(255,0,0,0.05);
}

fieldset.contractor-correction-box legend {
	color: #c00;
}

.upload-progress {
	border-radius: 3px;
	height: 15px;
	width: 100%;
	background-color: #eee;
	margin-top: 5px;
	margin-bottom: 15px;
	position: relative;
}

.upload-progress .upload-progress-indicator {
	height: 100%;
	border-radius: 3px;
	background-color: #999;
	width: 0px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
}

.upload-progress .upload-progress-size {
	display: inline-block;
	position: absolute;
	top: 2px;
	right: 5px;
	text-align: right;
	color: #333;
	font-weight: 700;
	font-size: 1em;
}

.utag {
	opacity: 0.5;
	font-size: 0.85em;
	text-transform: uppercase;
}

.phone-link {
	text-decoration: none;
}

.result-box {
	position: absolute; border: 1px dashed #999; border-radius: 5px; padding: 5px; background: rgb(245,245,245); z-index: 1125;
}

.pagination {
	display: inline-block;
	padding-left: 0;
	margin: 0;
	border-radius: 3px;
}
.pagination > li {
	display: inline;
}
.pagination > li > a,
.pagination > li > span {
	position: relative;
	float: left;
	padding: 6px 12px;
	margin-left: -1px;
	line-height: 1.42857143;
	color: #337ab7;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #ddd;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
	margin-left: 0;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
	z-index: 2;
	color: #23527c;
	background-color: #eee;
	border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
	z-index: 3;
	color: #fff;
	cursor: default;
	background-color: #337ab7;
	border-color: #337ab7;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
	color: #777;
	cursor: not-allowed;
	background-color: #fff;
	border-color: #ddd;
}

.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
	background-color: #00ceff;
	border-color: #00a3cc;
}

.pagination>li>a, .pagination>li>span{
	color: #007acc;
}
.pagination>li>a:focus, .pagination>li>a:hover, .pagination>li>span:focus, .pagination>li>span:hover {
	color: #009bff;
}

.pagination>li>span {
	color: #666;
}

.pagination-box {
	padding: 2px;
	border: 1px dotted #ccc;
	margin-bottom: 10px;
}

.pagination-box .pagination>li>a, .pagination-box .pagination>li>span {
	line-height: 1em;
	padding: 3px 6px;
}

.help-box {
	position: relative;
	padding: 10px;
	background: rgb(250,250,250);
	border-radius: 5px;
	border: #ccc dotted 1px;
	z-index: 1;
	color: #666;
}

.help-text {
	color: #999;
	line-height: 1.1em;
}

.intro-text {
	color: #333;
	font-size: 1.25em;
	line-height: 1em;
}


.tip-box {
	position: relative;
	width: fit-content;
	height: fit-content;
	padding: 5px;
	background: #eee;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border: #7f7f7f solid 1px;
	z-index: 10055;
	box-shadow: 1px 1px 3px 2px rgba(170, 170, 170, 0.33);
}

.tip-box:after, .tip-box:before {
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.tip-box.south:after, .tip-box.south:before {
	top: 100%;
	left: 50%;
}

.tip-box.south:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #eee;
	border-width: 10px;
	margin-left: -10px;
}

.tip-box.south:before {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #7f7f7f;
	border-width: 11px;
	margin-left: -11px;
}

.tip-box.west:after, .tip-box.west:before {
	top: 50%;
}

.tip-box.west-top:after, .tip-box.west-top:before {
	left: -20px;
	top: 25%;
}

.tip-box.west:after {
	border-color: rgba(255, 255, 255, 0);
	border-right-color: #eee;
	border-width: 10px;
	margin-top: -10px;
}

.tip-box.west:before {
	border-color: rgba(127, 127, 127, 0);
	border-right-color: #7f7f7f;
	border-width: 11px;
	margin-top: -11px;
	left: -22px;
}

.tip-box.east:after, .tip-box.east:before {
	top: 50%;
}

.tip-box.east-top:after, .tip-box.east-top:before {
	right: -20px;
	top: 25%;
}

.tip-box.east:after {
	border-left-color: #eee;
	border-width: 10px;
	margin-top: -10px;
	right: -20px;
}

.tip-box.east:before {
	border-color: rgba(127, 127, 127, 0);
	border-left-color: #7f7f7f;
	border-width: 11px;
	margin-top: -11px;
	right: -22px;
}

ul.dashed {
	margin: 0;
	padding-left: 10px;
	list-style-type: none;
}

ul.dashed > li:before {
	content: "\2014\a0";
	display: block;
	float: left;
}

.picker, .tpicker {
	position: relative;
}

.picker:before {
	font-family: "Font Awesome 5 Pro", FontAwesomeLight, sans-serif;
	font-weight: 300;
	content: '\f073';
	position: absolute;
	right: 5px;
	top: 0.02em;
	font-size: 1.25rem;
	line-height: 1em;
	color: #ccc;
	z-index: 10;
}

.tpicker:before {
	font-family: "Font Awesome 5 Pro", FontAwesome, sans-serif;
	font-weight: 300;
	content: '\f017';
	position: absolute;
	right: 8px;
	top: 2px;
	font-size: 1.25rem;
	line-height: 1em;
	color: #ccc;
	z-index: 10;
}

.customer-block {
	line-height: 1.1em;
	border: 1px dotted #ccc;
	margin: 5px 0;
	padding: 7px;
	border-radius: 7px;
	background: rgba(250,250,250,0.5);
}

.customer-block h2 {
	color: #333;
	margin: 0px;
	line-height: 1em;
}

.address-block {
	text-transform: uppercase;
	display: inline-block;
}



@media screen and (min-width: 320px) and (max-width: 990px) {
	.row.col-space > div[class^="col-"] {
		padding-bottom: 10px;
	}
}


.tabs-lg {
	min-width: 100px;
	margin-right: 10px;
	padding: 5px 10px 1px;
	text-align: center;
	float: left;
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 3px 3px 0px 0px;
	border-bottom: 0;
	font-size: 12px;
	color: #000;
	background-color: #eee;
	position: relative;
	line-height: 21px;
	text-decoration: none;
}

.tabs-lg:first-child {
	margin-left: 5px;
}

.tabs-lg:last-child:after {
	clear: both;
}

.tabs-lg.active {
	/*color: #c00;*/
	font-size: 15px;
	background-color: #fff;
	font-weight: 700;
}

.tabs-lg.active:after {
	content: " ";
	border-bottom: 7px solid #fff;
	position: absolute;
	z-index: 1000;
	width: 100%;
	left: 0px;
	bottom: -7px;
}

.tabs-lg:hover {
	background-color: #ddd;
}

.tabs-lg.active:hover {
	background-color: #fff;
}

.tabs-lg a {
	color: #333;
	text-decoration: none;
	line-height: 21px;
}

.tabs-lg.active:hover a {
	color: #666;
}

.tab-container {
	display: block;
	margin-bottom: 5px;
	border-bottom: 1px solid #ccc;
}

.tabs {
	min-width: 100px;
	margin-right: 5px;
	padding: 2px 5px 5px;
	text-align: center;
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 3px 3px 0 0;
	border-bottom: 0;
	font-size: 10px;
	color: #000;
	background-color: #eee;
	position: relative;
	line-height: 21px;
	text-decoration: none;
}

.tabs:first-child {
	margin-left: 5px;
}

.tabs:last-child:after {
	clear: both;
}

.tabs.active {
	background-color: #fff;
	font-weight: 700;
}

.tabs.active:after {
	content: " ";
	border-bottom: 3px solid #fff;
	position: absolute;
	z-index: 1000;
	width: 100%;
	left: 0;
	bottom: -2px;
}

.tabs:hover {
	background-color: #ddd;
}

.tabs.active:hover {
	background-color: #fff;
}

.tabs a {
	color: #333;
	text-decoration: none;
	line-height: 21px;
}

.tabs.active:hover a {
	color: #666;
}

/* stylized toggles and checkboxes { */
.tgl-box {
   margin: 0;
   text-align: left;

   display: inline-flex;
   align-items: center;
   justify-content: center;
   vertical-align: middle;

   position: relative;
   line-height: 1;
}

.tgl-light:checked + .tgl-btn:before {
}

.tgl-box > span {
}

.tgl-box label {
	margin: 0;
}

label.tgl-btn {
	margin: 0;
	margin-top: 0!important;
}

.tgl {
	display: none;
}
.tgl, .tgl:after, .tgl:before, .tgl *, .tgl *:after, .tgl *:before, .tgl + .tgl-btn {
	box-sizing: border-box;
}
.tgl::-moz-selection, .tgl:after::-moz-selection, .tgl:before::-moz-selection, .tgl *::-moz-selection, .tgl *:after::-moz-selection, .tgl *:before::-moz-selection, .tgl + .tgl-btn::-moz-selection {
	background: none;
}
.tgl::selection, .tgl:after::selection, .tgl:before::selection, .tgl *::selection, .tgl *:after::selection, .tgl *:before::selection, .tgl + .tgl-btn::selection {
	background: none;
}
.tgl + .tgl-btn {
	outline: 0;
	display: inline-block;
	width: 30px;
	height: 10px;
	position: relative;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	margin-right: 1px;
	margin-left: 1px;
}
.tgl + .tgl-btn:after, .tgl + .tgl-btn:before {
	position: relative;
	display: inline-block;
	content: "";
	width: 12px;
	height: 12px;
	top: -2px;
	border: 1px solid #bbb;
}
.tgl + .tgl-btn:after {
	left: -2px;
}
.tgl + .tgl-btn:before {
	display: none;
}

.tgl:checked:disabled + .tgl-btn:after {
	border-color: #ecc;
}

.tgl:disabled + .tgl-btn:after, .tgl:disabled + .tgl-btn:before {
	border-color: #ecc;
}

.tgl:checked + .tgl-btn:after {
	left: calc(100% - 10px);
	border-color: #009bff;
}

.tgl-light + .tgl-btn {
	background: #ccc;
	border-radius: 2rem;
	padding: 1px;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}
.tgl-light + .tgl-btn:after {
	border-radius: 50%;
	background: #fff;
	-webkit-transition: all .1s ease;
	transition: all .1s ease;
}
.tgl-light:checked + .tgl-btn {
	background: #8ad2ff;
	position: relative;
}

.tgl-light:checked:disabled + .tgl-btn {
	background: #ecc;
}

.tgl-light:disabled + .tgl-btn {
	background: #ecc;
}

.tgl-flat + .tgl-btn {
	padding: 2px;
	-webkit-transition: all .1s ease;
	transition: all .1s ease;
	background: #fff;
	border: 4px solid #ccc;
	border-radius: 2em;
}
.tgl-flat + .tgl-btn:after {
	-webkit-transition: all .1s ease;
	transition: all .1s ease;
	background: #ccc;
	content: "";
	border-radius: 1em;
}
.tgl-flat:checked + .tgl-btn {
	border: 4px solid #7FC6A6;
}
.tgl-flat:checked + .tgl-btn:after {
	left: 50%;
	background: #7FC6A6;
}

.tgl-text-off {
	color: #999;
	font-style: oblique;
}

.tgl-text-on {
	color: #666;
	font-style: oblique;
}
/* checkbox toggles */



label.chk-box {
	margin: 0 !important;
	font-weight: 300;
	max-width: inherit;
	vertical-align: baseline;
	text-transform: none;
}

.chk-box input[type=checkbox] {
	display: none;
}

.chk-mark:before {
	content: "\f0c8";
	font-family: 'Font Awesome 5 Pro', sans-serif;
	font-size: 1.25rem;
	font-weight: 300;
	color: #666;
	line-height: 0;
	margin: 0;
	padding: 0;
	cursor: pointer;
}

.chk-box input[type=checkbox] + .chk-mark:before {
	content: "\f0c8";
	margin-right: 0.25em;
}

.chk-box input[type=checkbox]:checked + .chk-mark:before {
	content: "\f14a";
	color: #555;
	margin-right: 0.25em;
}

.chk-box input[type=checkbox]:disabled + .chk-mark:before {
	content: "\f0c8";
	color: #ccc;
	cursor: not-allowed;
}

.chk-box input[type=checkbox]:disabled:checked + .chk-mark:before {
	content: "\f14a";
	color: #ccc;
	cursor: not-allowed;
}

.chk-mark {
	line-height: 0;
	margin: 0;
	padding: 0;
	vertical-align: sub;
}
/* } */


.looooading {
	font-size: 1.1em;
	border: 1px dotted #900;
	border-radius: 3px;
	padding: 3px 6px;
	color: #fff;

	animation-duration: 3s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	animation-name: inline-shimmer;
	animation-timing-function: linear;
	background: #f00;
	background: linear-gradient(to right, #f00 10%, #c00 18%);
	background-size: 800px 104px;
}

@keyframes inline-shimmer{
	0% { background-position: -100% 0 }
	100% { background-position: 100% 0 }
}



.fa.good {
	color: #0c0;
	font-size: 1.33em;
}

.fa.bad {
	color: #c00;
	font-size: 1.33em;
}

.fa.na {
	color: #ccc;
	font-size: 1.33em;
}

.fa.fa-md, .fal.fa-md, .fas.fa-md, .fab.fa-md, .far.fa-md {
	font-size: 1.125em;
	line-height: .75em;
	vertical-align: -.05em;
}


.user-portrait {
	width: 35px;
	height: 35px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	border: 1px solid #ccc;
	background-color: #eee;
	border-radius: 50%;
	position: relative;
}

.user-portrait.none:after {
	content: "\f007";
	font-family: "Font Awesome 5 Pro", FontAwesome, sans-serif;
	font-style: normal;
	position: absolute;
	font-size: 45px;
	top: -3px;
	left: 50%;
	margin-left: -0.355em;
	color: rgba(255,255,255,0.85);
	z-index: 0;
}

.user-portrait > p {
	text-align: center;
	font-size: 1.5em;
	font-family: "Helvetica Neue", Helvetica, sans-serif;
	font-weight: 300;
	color: #333;
	line-height: 33px;
	margin: 0;
}


.rep-card {
	margin-bottom: 10px;
	display: block;
}

.rep-card .name {
	font-size: 3em; font-weight: 300; line-height: 0.85em; color: #333; letter-spacing: -1.25px;
}

.rep-card .id {
	font-size: 12px; color: #999; line-height: 1em; font-weight: 100; padding-left: 3px;
}


.user-search-box {
	position: relative;
}

.user-search-input {
	position: relative;
}

.user-search-result-row:hover {
	cursor: pointer;
	color: #ffb81c;
}

.user-search-results-box {
	position: absolute;
	z-index: 5000;
	padding: 5px;
	border: 1px solid #999;
	background-color: #fff;
	left: 0;
	top: 20px;
	right: 0;
	min-height: 20px;
	display: none;
}

.user-search-clear:hover {
	cursor: pointer;
	color: #c00;
}

.user-search-close:hover {
	cursor: pointer;
	color: royalblue;
}

.user-search-cancel {
	cursor: pointer;
	color: orange;
}


.this-is-new-box {
	margin: 10px 0 15px; border-radius: 5px; padding: 10px; border: 1px solid #900; background-color: rgba(255,0,0,0.125); font-size: 1.1em;
}

.this-is-new-box > span {
	color: #900;
}

.this-is-new-box > a {
	color: #c00; text-transform: uppercase; font-size: 0.85em;
}

.this-is-old-box {
	margin: 10px 0 15px; border-radius: 5px; padding: 10px; border: 1px solid #999; background-color: rgba(100,100,100,0.125); font-size: 1.1em;
}

.this-is-old-box > span {
	color: #999;
}

.this-is-old-box > a {
	color: #666; text-transform: uppercase; font-size: 0.85em;
}



.ui-widget-overlay {
	z-index: 10;
}

.ui-dialog {
	z-index: 100;
}


.tiny-count {
	font-size: 8px;
	color: #ccc;
}

.small-count {
	font-size: 10px;
	color: #aaa;
}

td.tiny-count, table.list-wide tbody > tr > td.tiny-count, table.list-wide tfoot > tr > td.tiny-count, td.small-count, table.list-wide tbody > tr > td.small-count, table.list-wide tfoot > tr > td.small-count {
	padding-left: 0;
	padding-right: 0;
}

table.list td .uid {
	color: #aaa;
}


@media print {
	footer {
		display: none;
	}

	.tiny-count {
		font-size: 8px !important;
		color: #ccc !important;
	}

	.do-not-print {
		display: none;
	}
}

.togglable, .faux-togglable {
	border: black;
	border-style: solid;
	border-width: thin;
}

.togglable .toggle-head, .faux-togglable .toggle-head {
	background: aliceblue;
	cursor: pointer;
	padding: 5px;
	margin: 5px;
}

.faux-togglable .toggle-head { cursor: inherit; }

.toggle-body { margin: 15px; }

.toggle-indicator { padding-right: 5px;}

.toggle-body .clear-search {
	position: absolute;
	top: 46px;
	line-height: 1em;
	right: 25px;
	color: #ccc;
	font-size: 1.4rem;
	cursor: pointer;
}


.display-section {
	padding: 10px;
	border-radius: 5px;
	border: 1px solid rgb(240,240,240);
	background: rgb(250,250,250);
}

.display-section label {
	margin-top: 15px;
	display: block;
}

.display-section label:first-child {
	margin-top: 0px;
}

.ui-dialog .ui-dialog-titlebar { background: #0070b8; }
.ui-dialog .ui-dialog-titlebar button { display: none; }
.ui-dialog { overflow: visible; }

.ui-dialog .ui-dialog-titlebar.alert-error {
	background: #f8d7da;
	border-color: #721c24;
	color: #721c24;
}


.bg-primary {
	color: #fff;
	background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
	background-color: #286090;
}
.bg-success {
	background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
	background-color: #c1e2b3;
}
.bg-info {
	background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
	background-color: #afd9ee;
}
.bg-warning {
	background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
	background-color: #f7ecb5;
}
.bg-danger {
	background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
	background-color: #e4b9b9;
}

.developer-box {
	display: none;
}