/* Page defaults
----------------------------------------------------------*/

body {
    color: #3c3c3c;
    font: 13px Segoe UI,Helvetica Neue,Helvetica,Droid Sans,Tahoma,Geneva,sans-serif;
    margin: 0px;
    padding: 0px;
}

/* Timetrak default elements
----------------------------------------------------------*/

.tt-loading-panel {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.tt-hand-cursor {
    cursor: pointer;
}

.tt-table, .tt-table-100, .tt-table-fill, .tt-table-center, .tt-table-right {
	border-spacing: 0px;
	border-collapse: collapse;
}

.tt-table-100 {
	width: 100%;
}

.tt-table-fill {
	width: 100%;
	height: 100%;
}

.tt-table-spacing:first-child {
    padding-left: 0;
}

.tt-table-spacing:last-child {
    padding-right: 0;
}

.tt-table-spacing td {
    padding-left: 5px;
    padding-right: 5px;
}

.tt-table-right {
	float: right;
}

.tt-table-center {    
	margin-left: auto;
	margin-right: auto;
}

.tt-cell, .tt-cell-center, .tt-cell-right, tt-cell-total, .tt-cell-top {
	padding: 0px;
}

.tt-cell-center {
	text-align: center; 
}

.tt-cell-right {
    text-align: right;    
}

.tt-cell-total {
	text-align: right;    
	border-top: solid 1px #696969;
	border-bottom: double 3px #696969;
}

.tt-cell-top {
    vertical-align: top;
}

.tt-tab-icon {
    display: inline-block;
    width: 12px;
    height: 12px;
    vertical-align: middle;
    margin-bottom: 3px;
}

/* Totals table
----------------------------------------------------------*/

.tt-totals-table td {
    text-align: right;
}

.tt-totals-table td:first-child {
    padding-right: 5px;
}

.tt-totals-table thead tr td:not(:first-child) {
    font-weight: bold;
}

.tt-totals-table tr.__total td:not(:first-child) {
    border-top: 1px solid black;
}

.tt-totals-table tr.__margin td {
    color: green;
}

.tt-totals-table tr.__margin.__negative td {
    color: red;
}

.tt-totals-table tr.__spacing td {
    padding-top: 10px;
}

/* Common page elements
----------------------------------------------------------*/
.site-header {
    height: 35px;
    color: white;
    background-color: #4B79AD;
    padding: 10px 20px 10px 20px;
}

.site-header .header-text {
	color: white;
}

.header-bar {
	height: 38px;
	color: #4d4d4f;
	background: #f7f7f7;
	border-bottom: 1px solid #868b91;
}

/* Content pane
----------------------------------------------------------*/
.pane-header {
	top: 0px;
	left: 0px;
	height: 40px;
	color: #4d4d4f;
	z-index: 1000;
	position: fixed;
	padding-left: 10px;
	padding-right: 10px;
	white-space: nowrap;
	background-color: #f7f7f7;
	vertical-align: middle;
	width: calc(100% - 20px);   
	border-bottom: 1px solid #868b91;
}

.pane-header-text {
	font-size: 15pt;
	font-weight: bold;
	vertical-align: middle;
	font-family: 'Roboto Condensed', sans-serif;
}

.pane-header-actions {
	text-align: right;
	padding-left: 10px;
}

.pane-toolbar-img img {
	padding-top: 4px;
	padding-left: 6px;
}

.pane-contents {
	top: 41px;
	left: 0px;
	right: 0px;
	bottom:0px;
	position: fixed;
	overflow-x: hidden;
	overflow-y: auto;    
	padding: 10px;
	vertical-align: top;
}

.dxpnlControl.dockedpane-header {
	background-color: #f7f7f7;
}

.dxpnlControl.dockedpane-sidemenu {	
	background-color: #f7f7f7;
}

.dxpnlControl.dockedpane-header .header-text {
	font-size: 15pt;
	font-weight: bold;
	vertical-align: middle;
	font-family: 'Roboto Condensed', sans-serif;
}
td.action-buttons {
    text-align: right;
}

.action-buttons:not(td) {
    float: right;
}

/* Form
----------------------------------------------------------*/

.form-label-small {
    width: 60px;
    /*height: 20px;*/
    padding-top: 4px;
    vertical-align: top;
    padding-right: 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form-label-short {
	width: 88px;
	max-width: 110px;
	/*height: 20px;*/
	padding-top: 4px;
	vertical-align: top;
	padding-right: 5px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}


.form-label
{
	width: 100px;
	max-width: 130px;
	/*height: 18px;*/
	padding-top: 4px;
	/*vertical-align: top;	
	padding-right: 3px;*/
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.form-label-long {
    width: 150px;
    max-width: 180px;
    /*height: 18px;*/
    /*padding-top: 4px;*/
    /*vertical-align: top;*/
    padding-right: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form-label-nowidth
{
	/*height: 20px;*/
	padding-top: 6px;
	vertical-align: top;	
	padding-right: 10px;
	white-space: nowrap;
}

.form-label-task {
	width: 115px;
	max-width: 115px;
	/*height: 20px;*/
	padding-top: 4px;
	vertical-align: top;
	padding-right: 5px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.form-field
{       
	/*height: 19px;*/
	vertical-align: top;
}

.form-field-right {
	/*height: 24px;*/
	vertical-align: top;
	text-align: right;
}

.form-field-multiline {
	min-height: 24px;
	padding-bottom: 4px;
	vertical-align: top;
}

.form-field-label {
	/*height: 20px;*/
	padding-top: 2px;
	padding-bottom: 2px;
	vertical-align: top;
}

.form-label .required:after, .required .dx-vam:after {
	content: ' *';
	color: #FF4200;
}

.form-label-short .required:after, .required .dx-vam:after {
	content: ' *';
	color: #FF4200;
}

.form-label-task .required:after, .required .dx-vam:after {
	content: ' *';
	color: #FF4200;
}

.form-field .required .dxic, .form-field .required input, .form-field .required textarea, .form-field .required select, .txt-field .required textarea{
	background-color: #FEFFC7 !important;
}

.form-error 
{
	color: Red;
	padding-top: 4px;
	vertical-align: top;    
}

.form-note
{
	color: #4B79AD;
	padding-top: 4px;
	vertical-align: top;    
}

.form-buttons
{
	padding-top: 10px;
}

.form-header
{
	font-size: 9pt;
	font-weight: bold;
	padding-bottom: 10px;
}

.form-selection 
{
	width: 200px; 
	vertical-align: top; 
	background-color: #FFFFFF; 
	border: 1px solid #9E9E9E;
}

.form-content
{
	padding-left: 20px;
	vertical-align: top;
}

.form-image-button {
	width: 22px;
	text-align: right;
}

.form-action {	
    padding: 5px 5px 0px 0px;
}

.form-info-table {
	width: 100%;
	display: none;
	border-collapse: collapse;
}

.form-info-image {
	width: 16px;
	padding-top: 2px;
	padding-bottom: 0px;
	padding-right: 4px;
	vertical-align: top;
}

.form-info-label {
	padding-top: 1px;
	padding-bottom: 0px;
	vertical-align: top;
}

.field-hidden, .field-toggle {
	display: none;
}

/* Layout
-----------------------------------------------------------*/

.ellipsis
{
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.clip
{
	overflow: hidden;
	white-space: nowrap;    
	text-overflow: clip;    
}

.wrap {    
	white-space: normal !important;    
}

/* Page
-----------------------------------------------------------*/
.page-content {
	margin: 20px;
}

.page-footer {   
	width: 100%;
	height: 30px;
	bottom: 0px;
	position: fixed;    
	z-index: 999999;
	padding-top: 10px;
	padding-left: 20px;
	padding-right: 20px;
	background-color: white;
}

/* Layout
-----------------------------------------------------------*/

.content-header, .content-main, .content-footer {
	padding: 9px 12px 10px 12px;
}

.content-header {
	color: #000000;
	background-color: #F9FFF2;
	border-bottom: solid 1px #CCDECC;
}

.content-footer {
	background-color: #ECFBFF;
	border-top: solid 1px #A8D1DF;
	border-bottom: solid 1px #A8D1DF;
}

.content-hidden {
	display: none;
}

.content-panel {
	background-color: #f7f7f7;
}

/* Component
-----------------------------------------------------------*/
.component-content {   
    left: 10px;
	top: 10px; 
	right: 10px;
	bottom: 45px;
	position: fixed;
	z-index: 15000 !important;
}

.component-tab-content, .component-grid-content {
	overflow-y: auto !important;
}

.component-buttons {    
    left: 10px;
    right: 10px;
	bottom: 10px;
	position: fixed;   
	background-color: white; 
}

.component-buttons table tr td {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

/* Text
-----------------------------------------------------------*/
.header-panel {
	height: 48px;
	vertical-align: top;
}

.popup-header-panel {
	height: 32px;
	vertical-align: top;
}

.header-text {
	font-size: 18pt;
	font-weight: bold;    
	vertical-align: top;
	font-family: 'Roboto Condensed', sans-serif;
}

.subtext {
	color: #A4A3A3;
	font-size: 10px;
}

.subheader-text {
	font-size: 12pt;
	font-weight: bold;    
	vertical-align: top;
	font-family: 'Roboto Condensed', sans-serif;
}

.popup-header-text {
	font-size: 14pt;
	font-weight: bold;    
	vertical-align: top;
	font-family: 'Roboto Condensed', sans-serif;
}

.popup-subheader-text {
	font-size: 12pt;
	font-weight: bold;    
	vertical-align: top;
	font-family: 'Roboto Condensed', sans-serif;
}

.sup {
	font-size: 6pt;
	padding-left: 2px;
	vertical-align: super;
}

/* Text
-----------------------------------------------------------*/
.text-link, .text-link:link, .text-link:visited {
	color: black;
	text-decoration: none;
}

/* Override devexpress styles
-----------------------------------------------------------*/

.dxeHyperlink_TimeTrak2018:link, .dxeHyperlink_TimeTrak2018:visited {
	color: #5a9ddb !important;
}

.dxscHorizontalResourceHeader_TimeTrak2018, 
.dxscVerticalResourceHeader_TimeTrak2018 {
	padding: 0px;
}

.dxsc-timeline-resourcesTable {
    border-collapse: separate !important;
}

.loading-panel img {
    font-size: 10pt;
    padding-right: 10px;
}



/* devexpress grids
-----------------------------------------------------------*/

.timetrak-grid-row {
	height: 28px;
}

.timetrak-grid-row-hover {
	cursor: pointer;
	background-image: none;
	background-color: #FEFFC4;	
}

.timetrak-grid-row-selected {
	background-color: #fef39b;	
}

.timetrak-grid-actions {
    text-align: right;
}

.timetrak-single-row {
    max-height: 1.5em;
    line-height: normal;
    overflow: hidden;
}

/* Scheduler 
-----------------------------------------------------------*/

.dxscApt {
    overflow: visible;
}

.dxscAppointment_TimeTrak2018 {
    margin-left: -1px;
}

.dxscAptSelDiv {
    margin-left: -1px;
}

.dxscGroupSeparatorVertical_TimeTrak2018 {
    width: 0;
    display: none;
}

.dxscGroupSeparatorHorizontal_TimeTrak2018 {
    height: 0;
    display: none;
}

.dxscHorizontalResourceHeader_TimeTrak2018 {
    border-left-width: 1px !important;
}

.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-row {
    margin-bottom: 5px;
}

.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-tab,
.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-activeTab {
    background-color: transparent !important;
}

.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-tab .dxtc-link,
.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-activeTab .dxtc-link {
    margin: 0px 2px 0 2px;
    background-color: #f9f9f9;
}

.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-tabHover .dxtc-link {
    background-color: #EEF0F4;
}

.dxtcLite_TimeTrak2018 > .dxtc-stripContainer .dxtc-activeTab .dxtc-link {
    background-color: #ffe4c8;
}

.dxscSel {
    opacity: 0.5;
    filter: alpha(opacity=5);
    background-color: #404040 !important;
}

#watermark {
    z-index: 1000000000000;
    position: fixed;
    right: 20px;
    bottom: 20px;
    pointer-events: none;
    opacity: 0.05;
    font-size: 200px;
}

/* Loading overlay
-----------------------------------------------------------*/

#MainContent_Calendar_cpCalendar_calendarLoadingPanel,
.dxlpLoadingPanel_TimeTrak2018 {
    position: absolute;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(255,255,255,0.5) !important;
    border: none;
}

#MainContent_Calendar_cpCalendar_calendarLoadingPanel .dxlpLoadingPanel_TimeTrak2018 {
    background-color: transparent;
}

.dxlpLoadingPanel_TimeTrak2018 td:last-child {
    display: none;
}


/*Css to fix dev express timehands from displaying 53px to the left, this is fixed in 19.2 onwards
-----------------------------------------------------------*/
.dxEditors_edtDETSHourHand_TimeTrak2018, .dxEditors_edtDETSMinuteHand_TimeTrak2018, .dxEditors_edtDETSSecondHand_TimeTrak2018 {
    left: 114.5px !important;
    z-index: auto;
}