@charset "utf-8";

/* Selection highlighting color */
::selection {
	background: #f88; /* WebKit/Blink Browsers */
}
::-moz-selection {
	background: #f88; /* Gecko Browsers */
}
p, blockquote, ul, ol {
	margin-bottom: 18px;
	margin-right: 0px;
	line-height: 1.8em;
	text-align: left;
	color: #000000;
}
div.emailform blockquote {
	margin-left: 0;
	border-left: 5px solid #bbb;
	padding-left: 7px;
}
#overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
    height: 100%;
    width: 100%;
    background-color: rgba(0,0,0,0.7);
}
#update_confirmation {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9;
    background-color: #BEE5F4;
	border-style: solid;
    border-width: 1px;
	border-color: #2BABE2;
	padding: 10px;
}
#update_confirmation a {
	color: #000;
    text-decoration: none;
}
#notification_area {
	display: none;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 9;
    background-color: #fff;
	border-style: solid;
    border-width: 1px;
	border-color: #007FFF;
	padding: 10px;
}
#unread_messages {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 9;
    background-color: #fff;
	border-style: solid;
    border-width: 1px;
	border-color: #007FFF;
	padding: 10px;
	cursor: pointer;
}
#close_cross {
	color: black;
	text-decoration: none;
	cursor: pointer;
}
#unread_line {
	width: 100%;
}
#left_half {
	width: 50%;
	display: inline-block;
}
#right_half {
	width: 50%;
	display: inline-block;
	text-align: right;
}
.hidden {
	display: none;
}

#ext_links {
	margin-right: 0px;
	float: right;
	text-align: right;
}

#overlay p {
	position: absolute;
	width: 200px;
	top:50%;
	left: 50%;
    margin-top:-150px;
    margin-left: -100px;
    margin-right: -100px;
    font-size: large;
	color: #fff;
	text-align: center;
}

#container {
	min-width:1045px;
	width:100%;
	margin:0px;
	border:0px;
	background: #fff;
	padding: 0px 0px;
}

#content {
	position: relative;
	width: 95%;
	min-height: calc(100vh - 171px);
	margin: 0px auto;
	background: #fff;
	padding: 0px;
}

#login_content {
	width:95%;
	min-height: calc(100vh - 110px);
	margin:0px auto;
	background: #fff;
	padding: 0px;
}

#invoicetable {
	margin-bottom: 5em;
}

#logout {
	float: right;
	margin-right: 0px;
	margin-top: 10px;
	text-align: right;
}

#toplinks {
	display: inline-block;
	vertical-align: top;
	margin-top: 10px;
	margin-bottom: 10px;
}

#download_files {
	margin-bottom: 20px;
}

#project_info {
	margin-right: 20px;
	width: 300px;
}

.template_column {
	float: left;
	min-width: 200px;
	min-height: 30px;
	margin-bottom: 20px;
}

.left {
	clear: left;
}

.inline {
	display: inline;
}

.tooltip {
	border-bottom: 1px dotted;
}

.ckeditor_div {
	width: 500px;
	margin-right: 30px;
}

sup {
	font-size: 0.7em;
	position: relative; 
	vertical-align: baseline;
	top: -0.5em;
}

form {
	height: auto;
	display: inline-block;
	overflow: visible;
	width: 100%;
}

table.wo {
	table-layout: fixed;
    width: 600px;
	margin-bottom: 20px;
}

table.filter {
	width: 100%;
}

table.sortable {
	table-layout: fixed;
    width: 100%;
	margin-bottom: 10px;
}

table.sortable.narrow {
	table-layout: fixed;
    width: 500px;
	margin-bottom: 10px;
}

table, th, td {
	border: 1px solid black;
	border-collapse: collapse;
	background-color: #DEDEDE;
	font-size: 12px;
}
/* For zebra effect:
tr:nth-child(even) {
	background-color: #DEDEDE;
}

tr:nth-child(odd) {
	background-color: #EDEDED;
}
*/
tr.filter {
	display: none;
}

th.filter {
	text-align: left;
}

table.sortable th, th.filter, .pointer {
	cursor: pointer;
}

table.sortable th.sorttable_nosort {
	cursor: default;
}

table.sortable th.filterable {
	background-color: white;
}

td.filter {
	background-color: white;
}

td.filter select, .filter label {
	width:302px;
}

th, td {
	padding-top:3px;
	padding-bottom:3px;
	padding-right:10px;
	padding-left:10px;
}

td {
	vertical-align: top;
}
tr.unread td {
	background-color: white;
}
table.noborder, table.noborder tr, table.noborder th, table.noborder td {
	border: 0px;
	background-color:#fff;
}
.update_triangle::after {
	content: " ▾";
}
.p3 {
	width: 3%;
}
.p4 {
	width: 4%;
}
.p5 {
	width: 5%;
}
.p6 {
	width: 6%;
}
.p7 {
	width: 7%;
}
.p8 {
	width: 8%;
}
.p9 {
	width: 9%;
}
.p10 {
	width: 10%;
}
.p11 {
	width: 11%;
}
.p12 {
	width: 12%;
}
.p13 {
	width: 13%;
}
.p14 {
	width: 14%;
}
.p15 {
	width: 15%;
}
.p16 {
	width: 16%;
}
.p17 {
	width: 17%;
}
.p18 {
	width: 18%;
}
.p20 {
	width: 20%;
}
.p25 {
	width: 25%;
}
.p30 {
	width: 30%;
}
.p35 {
	width: 35%;
}
.p40 {
	width: 40%;
}
.p35left {
	width: 35%;
	text-align: left;
}
.p75 {
	width: 75%;
}
.head {
	margin-bottom: 5px;
	overflow: auto;
}
.alignright {
	text-align: right;
}

.aligncenter {
	text-align: center;
}

th.alignleft, td.alignleft {
	text-align: left;
}

tr.hidden {
	display: none;
}

label, input {
	display: block;
}

label, div.split {
	min-height: 19px;
	clear: left;
	padding-top: 2px;
}

label.inline {
	display: inline;
}

select:not(.multiline), input[type=text], input[type=password] {
	height: 21px;
}

option.gray {
	color: #999;
}

input[type=text][disabled], input[type=file][disabled], select[disabled], textarea[disabled] {
	color: #555;
	background-color: #eee;
}

label input[type="radio"], input[type="checkbox"] {
	display: inline-block;
	vertical-align: top;
}

.template_column .split {
	width: 330px;
}

.split span:not(.underline) {
	/* display:block; */
	float:right;
	border:0px;
	padding:0px;
	text-align:right;
}

div.split span, label.split span {
	margin-right: 20px;
}

label.split span.flush, .filter label.split span {
	margin-right: 0px;
}

td span {
	float: left;
	clear: both;
	width: 100%;
}

td span.alignright {
	float: right;
}

th span {
	display: inline;
}

/* <br /> in table cells are only for correct display in CSV files */
.sortable td br {
	display: none;
}

label.cat_discounts {
	display: inline-block;
	float: left;
	clear: left;
	width: 100px;
	text-align: left;
	padding-top: 8px;
	vertical-align: bottom;
}

label.right {
	display: inline-block;
	float: left;
	width: 70px;
	text-align: right;
	clear: right;
	padding-top: 8px;
}

label.check {
	display: inline;
}

input.cat_discounts {
	width: 70px;
	margin: 5px;
	padding: 0px;
	text-align: right;
	display: inline-block;
}

.wide, input.dtpickerwide {
	width: 310px;
	padding: 1px;
	margin-right: 20px;
}

label.wide {
	padding: 0px;
}

input.xwide, textarea.xwide {
	width: 500px;
	padding: 1px;
}

p.narrow {
	width: 500px;
}

select.narrow, input.narrow, input.dtpickernarrow, textarea.narrow {
	width: 222px;
	padding: 1px;
}

input[type=text].xnarrow, select.xnarrow, textarea.xnarrow {
	width: 120px;
}

input[type=text].xxnarrow, select.xxnarrow, textarea.xxnarrow {
	width: 60px;
}

input[type=text], input[type=password], input[type=file], input[type=number], select, textarea {
	border:1px solid rgb(169, 169, 169);
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	background-color: #FDF6D2;
	font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 1em;
}

input.button, input.buttonright {
	float: left;
	width: 120px;
	margin-top: 10px;
	margin-right: 5px;
	margin-bottom: 20px;
	font-size: 13px;
	border: 1px solid #aaa;
	padding: 6px;
	border-radius: 4px;
}

input.buttonwide {
	width: 150px;
}

input.buttonright {
	display: inline-block;
	float: right;
	width: 120px;
	margin-right: 0px;
}

input.textboxright {
	display: inline-block;
	float: right;
	width: 120px;
	margin-right: 50px;
}

label.labelright {
	display: inline-block;
	float: right;
	margin-right: 20px;
	margin-top: 5px;
}

input.checkbox {
	display: inline;
	text-align: center;
}

input.checkboxleft {
	margin: 10px 10px 20px 0px;
	display: inline;
	float: left;
	clear: left;
}

input.alignleft {
	margin-left: 0px;
}

.popup {
	position: fixed;
	z-index: 6;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	background: rgba(0,0,0,0.7);
}

.emailform, .cloneform, .assignment_form {
	background: #fff;
	margin: 0px auto;
	padding: 30px;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	max-height: calc(100% - 60px);
	overflow-y: scroll;
}

.emailform {
	width: 500px;
}

.cloneform, .assignment_form {
	width: 1010px;
}

.formelement {
	float: left;
	margin-right: 10px;
}

.formelement.left {
	margin-bottom: 15px;
}

.searchformleft {
	display: inline-block;
	float: left;
	margin-right: 20px;
	clear: left;
	width: 310px;
}

.searchform {
	display: inline-block;
	float: left;
	margin-right: 20px;
	width: 310px;
}

.searchformright {
	display: inline;
	float: left;
	margin-right: 4px;
}

.searchform.smallbuttons {
	width: 25px;
}

.formwide {
	width: 520px;
	margin-right: 20px;
	display: inline-block;
	float: left;
}

div.buttons {
	clear: left;
	overflow: auto;
	width: 100%;
}

.filelist {
	width: 310px;
	padding: 0px;
	margin-right: 20px;
	margin-bottom: 10px;
}

.indented {
	margin-left: 47px;
}

.underline, a:hover {
	text-decoration: underline;
}

.divBox a, .divBox span {
    width: 100%;
    height: 100%;
    display: block;
}

.divLine a {
	width: 100%;
	display: block;
}

canvas.sonic {
	position:fixed;
	z-index:11;
	left:50%; 
    top:50%;
    margin-left:-50px; /* image width/2 */
    margin-top:-50px;
}

div.chart {
	float: left;
	width: 50%;
	margin-bottom: 20px;
}

canvas.chart {
	
}

#menu, #menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#menu {
	/* width: 960px; */
	margin: 0px auto 10px auto;
	border: 0;
	/* border: 1px solid #222; */
	background-color: #111;
	background-image: linear-gradient(to bottom, #111 0%, #ccc 100%);
	/* background-image: linear-gradient(#444, #111); */
	/* border-radius: 6px; */
	box-shadow: 0 1px 1px #777, 0 1px 0 #666 inset;
}

#menu:before,
#menu:after {
	content: "";
	display: table;
}

#menu:after {
	clear: both;
}

#menu {
	zoom:1;
}

#menu li {
	float: left;
	/* border-right: 1px solid #222; */
	box-shadow: 0; /* 1px 0 0 #555; */
	position: relative;
}

#menu a {
	float: left;
	padding: 18px 30px;
	max-height: 15px;
	color: #fff;
	/* text-transform: uppercase; */
	font: bold 13px normal small Verdana, Arial, Helvetica, sans-serif;
	text-decoration: none;
	/* text-shadow: 0 1px 0 #000; */
	
	font-weight: 700;
	color: #ffffff;
	letter-spacing: 1px;
}

#menu a.home {
	padding: 13px 30px 13px 30px;
	max-height: 25px;
}

#menu li:hover > a {
	background: rgba(0, 0, 0, 0.1);
	/* color: #fafafa; */
}

*html #menu li a:hover { /* IE6 only */
	/* color: #fafafa; */
}

#menu ul {
	border: 1px solid #ccc;
	margin: 20px 0 0 0;
	_margin: 0; /*IE6 only*/
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 45px;
	left: 0;
	z-index: 11;   
	background: #fff; /* #444 */
	/* background: linear-gradient(#444, #111); */
	box-shadow: 0 -1px 0 rgba(255,255,255,.3);	
	border-radius: 5px;
	transition: all .2s ease-in-out;  
}

#menu li:hover > ul {
	opacity: 1;
	visibility: visible;
	margin: 0;
}

#menu ul ul {
	top: 0;
	left: 150px;
	margin: 0 0 0 20px;
	_margin: 0; /*IE6 only*/
	box-shadow: -1px 0 0 rgba(255,255,255,.3);		
}

#menu ul li {
	float: none;
	display: block;
	border: 0;
	_line-height: 0; /*IE6 only*/
	/* box-shadow: 0 1px 0 #111, 0 2px 0 #666; */
}

#menu ul li:last-child {   
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;    
}

#menu ul a {    
	padding: 10px 16px;
	width: 200px;
	_height: 10px; /*IE6 only*/
	display: block;
	white-space: nowrap;
	float: none;
	text-transform: none;
	
	color: #777;
	font: 13px normal small Verdana, Arial, Helvetica, sans-serif;
	text-decoration: none;
}

#menu ul a:hover {
	color: #000;
	/* background-color: #fff; #0186ba */
	/* background-image: linear-gradient(#04acec, #0186ba); */
}

#menu ul li:first-child > a {
	border-radius: 3px 3px 0 0;
}

#menu ul li:first-child > a:after {
	content: '';
	position: absolute;
	left: 40px;
	top: -6px;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	/* border-bottom: 6px solid #444; */
}

#menu ul ul li:first-child a:after {
	left: -6px;
	top: 50%;
	margin-top: -6px;
	border-left: 0;	
	/* border-bottom: 6px solid transparent; */
	border-top: 6px solid transparent;
	border-right: 6px solid #3b3b3b;
}

#menu ul li:first-child a:hover:after {
	/* border-bottom-color: #04acec; blue triangle */
}

#menu ul ul li:first-child a:hover:after {
	border-right-color: #0299d3; 
	border-bottom-color: transparent;
}

#menu ul li:last-child > a {
	-moz-border-radius: 0 0 3px 3px;
	-webkit-border-radius: 0 0 3px 3px;
	border-radius: 0 0 3px 3px;
}

/* Mobile */
#menu-trigger {
	display: none;
}

/* Override jquery-ui styling */
div.ui-widget-overlay {
	background:#000;
	opacity:.7;
}

.resumable_file_upload {
	cursor: pointer;
	text-decoration: underline;
	background-color: #007FFF;
    color: white;
    padding: 10px 20px;
    border-radius: 10px;
    line-height: 50px;
}
.pre-line {
	white-space: pre-line;
}

/* Dashboard WO foldout */
#wo_foldout {
	position: fixed;
	width: 100%;
	display: none;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
	left: 0;
	top: 0;
	z-index: 6;
	display: none;
}

#wo_foldout_table {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	margin: 0 auto;
	width: 95%;
}

#project_head_row {
	height: 50px;
}