﻿* {
	box-sizing: border-box;
}
.inline {
	display: inline-block;
}
.inline-before:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: 100%;
}
.block {
	display: block;
}

.v-top {
	vertical-align: top;
}
.v-middle {
	vertical-align: middle;
}

.center-v {
	display: inline-block;
	vertical-align: middle;
	text-align: initial;
}
	.center-v.full {
		width: 100%;
	}
.center-h {
	max-width: 450px;
	margin: 0 auto;
}
	.center-h.full {
		max-width: none;
	}
.align-h {
	display: block;
	text-align: justify;
	line-height: 0;
}
	.align-h:after {
		content: "";
		display: inline-block;
		width: 100%;
		font-size: 0;
	}
	.align-h > * {
		display: inline-block;
		line-height: initial;
	}

.t-left {
	text-align: left;
}
.t-right {
	text-align: right;
}
.t-center {
	text-align: center;
}

.sep {
	display: block;
	margin: 1em 0;
	height: 1px;
	overflow: hidden;
	background: #d7e1e6;
}

.msg {
	padding: 0.5em;
	color: #fff;
	text-align: center;
	position: relative;
	color: #666;
	font-size: 0.9em;
	flex: 0 1 auto;
	height: 40px;
	width: 100%;
}
	.msg:after {
		position: absolute;
		right: 1em;
		cursor: pointer;
		content: "\f00d";
		font-family: FontAwesome;
	}
	.msg.notice {
		background: #e5ffe5;
	}
	.msg.error {
		background: #ffe5e5;
	}

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em;
}
h1 {
	xfont-size: 1.2em;
}
h2 {
	xfont-size: 1.1em;
}
h3 {
	xfont-size: 1em;
}
h4, h5, h6 {
	xfont-size: 0.9em;
	font-weight:bold;
}
a {
	outline: none;
	display: inline-block;
}

.xl_width {
	width: 350px;
}
.l_width {
	width: 230px;
}
.ml_width {
	width: 175px;
}
.m_width {
	width: 120px;
}
.s_width {
	width: 75px;
}

/* BUTTONS */
.btn {
	box-sizing: border-box;
	border: 2px solid transparent;
	outline: none;
	text-decoration: none;
	text-align: center;
	font-style: normal;
	text-transform: capitalize;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	color: inherit;
	padding: 0.5em 2em;
	background: transparent;
	line-height: 1em;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}
	.btn:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		height: 100%;
		width: auto;
	}
	.btn.auto {
		width: 100%;
		height: 50px;
	}
	.btn.large {
		width: 280px;
		height: 60px;
		font-size: 1.25em;
		line-height: 1.8em;
	}
	.btn.medium {
		width: 220px;
		height: 50px;
		font-size: 1em;
	}
	.btn.small {
		width: 140px;
		height: 40px;
		font-size: 0.875em;
	}
	.btn.add, .btn.save {
		color: #558ed5;
		border-color: #558ed5;
	}
		.btn.add:hover, .btn.save:hover {
			color: #fff;
			background: #558ed5;
		}
		.btn.add:active, .btn.save:active {
			color: #fff;
			background: #5485c9;
		}
	.btn.confirm {
		color: #4d4d4d;
		border-color: #4d4d4d;
	}
		.btn.confirm:hover {
			color: #fff;
			background: #4d4d4d;
		}
		.btn.confirm:active {
			color: #fff;
			background: #424242;
		}
		.btn.confirm.darker, .btn.confirm.darker:hover, .btn.confirm.darker:active {
			color: #fff;
			background: #222226;
			border-color: #222226;
		}
	.btn.delete, .btn.cancel {
		color: #f24f4f;
		border-color: #f24f4f;
	}
		.btn.delete:hover, .btn.delete:active,
		.btn.cancel:hover, .btn.cancel:active {
			color: #fff;
			background: #f24f4f;
		}
	.btn.search {
		color: #92d051;
		border-color: #92d051;
	}
		.btn.search:hover, .btn.search:active {
			color: #fff;
			background: #92d051;
		}
	.btn.submit {
		color: #ffc000;
		border-color: #ffc000;
	}
		.btn.submit:hover, .btn.submit:active {
			color: #fff;
			background: #ffc000;
		}
	.btn.other {
		color: #9da2a4;
		border-color: #9da2a4;
	}
		.btn.other:hover, .btn.other:active {
			color: #fff;
			background: #9da2a4;
		}
	.btn.disabled {
		background: #ebebeb;
		color: #9b9b9b;
	}
	.btn.action {
		width: 100%;
		max-width: 230px;
		height: auto;
		font-size: 1.125em;
		padding: 0.75em 0;
		border-color: transparent;
	}
		.btn.action.submit, .btn.action.add,
		.btn.action.submit:hover, .btn.action.submit:active,
		.btn.action.add:hover, .btn.action.add:active {
			background: #00a8ff;
			color: #fff;
		}
		.btn.action.cancel,
		.btn.action.cancel:hover, .btn.action.cancel:active {
			background: #616873;
			color: #fff;
		}
		.btn.action.delete,
		.btn.action.delete:hover, .btn.action.delete:active {
			background: #f24f4f;
			color: #fff;
		}
	/* INTERACTIONS */
	.btn.interaction {
		width: 100%;
		max-width: 125px;
		height: auto;
		border-color: #ebebeb;
		background: #fff;
		padding: 1.25em 0;
		color: #616873;
		font-size: 1.125em;
		line-height: 0;
	}
		.btn.interaction:before {
			font-family: FontAwesome;
			margin: 0 0.3em 0 0;
		}
		.btn.interaction:hover, .btn.interaction:active {
			background: #ebebeb;
		}
		.btn.interaction.edit:before {
			content: "\f044";
		}
		.btn.interaction.move:before {
			content: "\f047";
		}
		.btn.interaction.delete {
			color: #ff5353;
		}
			.btn.interaction.delete:before {
				content: "\f00d";
			}
		.btn.interaction span {
			display: inline-block;
			vertical-align: middle;
		}

/* FIELDS */
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="date"],
select,
textarea {
	background: #fff;
	border: 1px solid #e1e1e1;
	xpadding: 1em 0.5em;
	color: #454545;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="date"]:focus,
select:focus,
textarea:focus {
	background: #ebebeb;
	border-color: #9b9b9b;
}

form[id*="login_validate"] input[type="text"],
form[id*="login_validate"] input[type="tel"],
form[id*="login_validate"] input[type="email"],
form[id*="login_validate"] input[type="password"],
form[id*="login_validate"] input[type="search"],
form[id*="login_validate"] input[type="date"] {
	background: #454545;
	border: 4px #363636 solid;
	color: #fff;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	padding: 0.5em;
	line-height: 1em;
	font-size: 2em;
	width: 100%;
	max-width: 627px;
	/*height: 95px;*/
	box-sizing: border-box;
}
form[action*="login_validate.asp"] input[type="text"]:focus,
form[action*="login_validate.asp"] input[type="tel"]:focus,
form[action*="login_validate.asp"] input[type="email"]:focus,
form[action*="login_validate.asp"] input[type="password"]:focus,
form[action*="login_validate.asp"] input[type="search"]:focus,
form[action*="login_validate.asp"] input[type="date"]:focus {
	border-color: #fff;
	-webkit-box-shadow: 0 0 20px 0 rgba(255, 255, 255, .25);
	-moz-box-shadow: 0 0 20px 0 rgba(255, 255, 255, .25);
	box-shadow: 0 0 20px 0 rgba(255, 255, 255, .25);
}

form label {
	display: block;
	position: relative;
	margin: 0 0 1em;
}

textarea {
	resize: none;
}

/* CHECKBOXES AND RADIOS */
input[type="checkbox"],
input[type="radio"] {
	x_display: none;
}
input[type='checkbox'] ~ .checkbox,
input[type='radio'] ~ .radio {
    display:inline-block;
    width:1.55em;
    height:1.5em;
    vertical-align:middle;
	border: 1px #ccc solid;
	text-align: center;
	background: #fff;
}
	input[type='radio'] ~ .radio {
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
		border-radius: 100px;
	}
	input[type='checkbox']:checked ~ .checkbox,
	input[type='radio']:checked ~ .radio {
		border: 1px #42B4E4 solid;
		background: #42b4e4;
	}
	input[type='checkbox'] ~ .checkbox:before,
	input[type='radio'] ~ .radio:before {
		content: "";
		color: #e5e5e5;
		font-size: 1em;
		font-family: FontAwesome;
		display: inline-block;
		vertical-align: middle;
	}
	input[type='checkbox'] ~ .checkbox:hover:before,
	input[type='checkbox']:checked ~ .checkbox:before {
		content: "\f00c";
	}
	input[type='radio'] ~ .radio:hover:before,
	input[type='radio']:checked ~ .radio:before {
		content: "\f111";
	}
	input[type='checkbox']:checked ~ .checkbox:before,
	input[type='radio']:checked ~ .radio:before {
		color: #fff;
	}

/* TABLES */
table.data {
	width: 100%;
}
table.data th,table.data td {
	padding: 0.5em;
}
table.data thead {
}
table.data thead th {
	text-align: left;
}
table.data tbody {
}
table.data tbody .row {
}
table.data tbody .row.alt {
		background: #f7f7f7;
}
table.data tbody .row:hover,
table.data tbody .row:active {
	background: #ffffe5;
}
table.data tbody .row td {
}
table.data .btn.interaction {
padding: 1em 0;
max-width: 100px;
font-size: 1em;
}
table.data .btn.interaction + .btn.interaction {
	margin-left: 0.2em;
}
table.data tfoot {
}
table.data tfoot a {
	line-height: 1em;
	padding: 0.5em 0.7em;
	border: 1px solid #e7e7e7;
}
	table.data tfoot a:hover,
	table.data tfoot a:active {
		background: #f7f7f7;
	}

/* DROP-DOWN MENUS */
/*
	<ul class="dd-menu dd-right">
		<li>
			<a href="#0">Menu</a>
			<ul>
				<li><a></a></li>
			</ul>
		</li>
	</ul>
*/
ul.dd-menu {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: inline-block;
	position: relative;
	z-index: 1;
	text-align: left;
}
	ul.dd-menu > li {
		display: inline-block;
		vertical-align: middle;
	}
		ul.dd-menu > li > a {
			display: inline-block;
			color: #444;
			padding: 0.5em;
			font-size: 0.9em;
			border-color: transparent;
			border-style: solid;
			border-width: 1px;
			position: relative;
			z-index: 5;
		}
			ul.dd-menu > li > a:before {
				content: "\f0c9";
				font-family: FontAwesome;
				color: #444;
				display: inline-block;
			}
			ul.dd-menu > li > a span {
				display: inline-block;
				margin-left: 0.3em;
				pointer-events: none;
			}
		ul.dd-menu > li > ul {
			visibility: hidden;
			position: absolute;
			z-index: 4;
			left: -9999em;
			background: #fff;
			-webkit-border-radius: 2px;
			-moz-border-radius: 2px;
			border-radius: 2px;
			-webkit-box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .15);
			-moz-box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .15);
			box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .15);
			margin: 0;
			list-style-type: none;
			padding: 0.5em 1em;
			min-width: 18em;
			border: 1px #ccc solid;
		}
			ul.dd-menu > li > ul > * {
				font-size: 0.8em;
			}
			ul.dd-menu > li > ul > li a {
				padding: 0.5em 0;
				color: #444;
				display: block;
			}
				ul.dd-menu > li > ul > li a:before {
					font-family: FontAwesome;
					margin-right: 0.5em;
				}
				ul.dd-menu > li > ul > li a:hover,
				ul.dd-menu > li > ul > li a:active {
					color: #42b4e4;
				}
			ul.dd-menu > li > ul > li + li {
				border-top: 1px #ebebeb solid;
			}
	ul.dd-menu.dd-right > li > ul {
		xtext-align: right;
	}
	ul.dd-menu.open {
		background: #fff;
	}
		ul.dd-menu.open > li > a {
			border-color: #ccc #ccc #fff;
		}
		ul.dd-menu.open > li > ul {
			visibility: visible;
			left: 0;
			top: 100%;
			margin-top: -1px;
		}
		ul.dd-menu.dd-right.open > li > ul {
			visibility: visible;
			right: 0;
			left: auto;
			top: 100%;
		}