body{
	width:100%;
}
.choosestatus{
	position:absolute;
	background-color:white;
	z-index:100;
	padding:10px;
	border-radius:5px;
	border: solid 1px #ddd;

}
.centre{
	text-align:center;
	margin:0px auto;
}
.tiny{
	font-size:10px;
}
.logon{
	width:300px;
	padding-top:40px;
	margin:0px auto;
}

.header{
	padding:10px;
	background-color:#eeffd8;
}
.assetdropdown{
	border:solid #ddd 1px;
	background-color:white;
	padding:20px;
	position:absolute;
	display:none;
	z-index:1000;
}
.projects{
	overflow-y: hidden
}

.lightgrey{
	color:#9a9a9a;
}
a{
	color:#3f5f61;
}
.deactivated{
	color: #afafaf;
}
.btn-info {
    color: #ffffff;
    background-color: #3f5f61;
    border-color: #3f5f61;
}


.compact-table{
	font-size: 0.9em;
}
.compact-table td {
	padding: 2px;
}
.compact-table th {
	padding: 2px;
}
.compact-table tfoot {

}



.spinner::after {
    content: "";
    display: inline-block !important;
    margin-left: 2px;
    border: 2px solid #f3f3f3; /* Light grey */
    border-top: 2px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 12px;
    height: 12px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


.btn-info:focus, .btn-info:hover{
	    color: #fff;
    background-color: #95ca4e;
    border-color: #95ca4e;
}
.btn-info.active.focus, .btn-info.active:focus, .btn-info.active:hover, .btn-info.focus:active, .btn-info:active:focus, .btn-info:active:hover, .open > .dropdown-toggle.btn-info.focus, .open > .dropdown-toggle.btn-info:focus, .open > .dropdown-toggle.btn-info:hover {
    color: #fff;
    background-color: #014f99;
    border-color: #003c74;
}
.btn-primary {
    color: #fff;
    background-color: #003d8b;
    border-color: #080b4b;
}

.btn-primary:hover {
    color: #fff;
    background-color: #014f99;
    border-color: #003c74;
}
.btn-primary:focus, .btn-primary:hover{
	    color: #fff;
    background-color: #014f99;
    border-color: #003c74;
}
.btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover, .btn-primary.focus:active, .btn-primary:active:focus, .btn-primary:active:hover, .open > .dropdown-toggle.btn-primary.focus, .open > .dropdown-toggle.btn-primary:focus, .open > .dropdown-toggle.btn-primary:hover {
    color: #fff;
    background-color: #014f99;
    border-color: #003c74;
}
.changecontactstatus{
	display:none;
	border: solid 1px #dadada;
	padding:10px;
	margin-bottom:20px;
	position:absolute;
	z-index:100;
	background-color:white;
	width:200px;
}
.green{
	background-color:#b6f998;
  
}
.box{
	color:black;
	height:100px;
	text-align:center;
	width:120px;
	padding:10px;
	border:1px solid #c2c2c2;
	float:left;
	margin-right:10px;
	border-radius:5px;
	position: relative;
	font-size:12px;
	margin-bottom:5px;
}
.box:after {
	content: '';
	display: block;  
	position: absolute;
	left: 100%;
	top: 50%;
	margin-top: -10px;
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid #c2c2c2
}



.roundedborder{
	border-radius: 4px;
	height: 34px;
	padding: 6px 12px;
	line-height: 1.42857143;
	color: #555;
	background-color: #fff;
	background-image: none;
	border: 1px solid #ccc;
}


.navbar-default {
   
	    color: #ffffff;
   background-color: #95ca4e;
border-radius: 0px;
  border-color: #95ca4e;
}
element {

}
.navbar-default .navbar-nav > li > a {

    color: #ffffff;

}


.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:focus, .navbar-default .navbar-nav > .active > a:hover {

     background-color: #3f5f61;
    border-color: #3f5f61;
	color:white;
	border-top:1px solid rgba(0,0,0,0.2);
}
.strike td{
	text-decoration: line-through;
}

.sortabletable thead tr th {
	cursor: pointer;
}




.bankholiday{
	background-color:#e3e3e3;
}
.sortabletable thead tr th {
	cursor: pointer;
}


#calendartable td{
	width: 14%; 
	min-height: 80px;
}
#calendartableb td{
	width: 4.7%; 
	min-height: 80px;
}
#calendartablebystaff td{
	width: 6.6%;
	border:0px;
	padding: 2px;
}

#calendartable tr td:first-child::after {
	content: "";
	display: inline-block;
	vertical-align: top;
	min-height: 40px;
}

.tctable td{
	font-size: 7pt;
	vertical-align: top;
}


.today{
	background-color:#fffFD8;
}
.passed{
	
	background-color:#f3f3f3;
	color:#b7b7b7;
}
.noapproved{
	color:red;
}

.calendarcell{
	padding: 1px !important;
}


.calitem-placeholder{
	width: calc(100%-2px);
	/* background-color:#EEE; */
	height: 90px;
	padding:2px;
	margin-top:0px;
	margin-bottom:4px;
	font-size:12px;
}

.calendaritem{
	width: calc(100%-2px);
	/*height: 90px;*/
	border:solid 1px rgba(0,0,0,0.05);
	border-left:solid 1px transparent;
	border-right:solid 1px transparent;
	background-color:white;
	padding:2px;
	margin-top:0px;
	margin-bottom:4px;
	font-size:12px;
}

.calendariteminline{
	width: 100%;
	/*height: 90px;*/
	border:solid 1px rgba(0,0,0,0.05);
	border-radius: 2px;
	background-color:white;
	padding:2px;
	margin-top:0px;
	margin-bottom:2px;
	font-size:12px;
	display:inline-block;
}


.calendarcelllabel{
	background: rgba(0,0,0,0.07);
	border-bottom: 1px solid rgba(0,0,0,0.1);
	margin-left: 0px;
	margin-right: 0px;	
	margin-top: 0px;
	padding:4px;
	background-image:url('/images/bgtexture1.png');
	
}
.calendarcelllabel a{
	display: inline-block;
	width: 100%;	
	color:#444;
	text-decoration:none;
}
.calendarcelllabel a:hover{
	background: rgba(0,0,0,0.07);	
	text-decoration:none;
}


.cal-absence{
	background-color:#F8F8AA !important;
	color:#666;
	cursor:pointer;
	width: 100%;
}

.cal-absence.notapproved{
	color: red !important;
}

.cal-job{
	background-color:#FFD098 !important;
	color:#444;
	cursor:pointer;
}

.cal-job-confirmed{
	background-color:#A8FFA8 !important;
	color:#444;
	cursor:pointer;
}

.cal-jobdayservices{
	border-top: 1px solid rgba(0,0,0,0.05);
	padding-top: 2px;
	font-size: 0.9em;
}
.cal-jobdayservice{
	display:inline-block;
	padding:2px;
	padding-left:8px;
	padding-right: 8px;
	margin:2px;
	border: 1px solid rgba(0,0,0,0.1);
	border-radius:2px;
	background-color: rgba(255,255,255,0.2);
}

.cal-jobdayservice.confirmed{
	/*background-color: #A8FFA8;*/
	background-color: #C0FFC0;
}
.cal-jobdayservice.unconfirmed{
	/*background-color: #FFD098;*/
	background-color: #FFE0A8;
}
.cal-jobdayservice:hover{
	background-color: rgba(0,0,0,0.2);
}

.cal-jobdaystaff{
	border-top: 1px solid rgba(0,0,0,0.05);
	padding-top: 2px;
	font-size: 0.9em;
}


.cal-item-start{
	border-left: 4px solid rgba(0,0,0,0.1);
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
	margin-left:8px;
	width: calc(100% - 8px);
}
.cal-item-end{
	border-right: 4px solid rgba(0,0,0,0.1);
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
	margin-right:8px;
	width: calc(100% - 8px);
}

.cal-item-start.cal-item-end{
	border-left: 4px solid rgba(0,0,0,0.1);
	border-right: 4px solid rgba(0,0,0,0.1);
	border-radius: 8px;
	margin-left:8px;
	margin-right:8px;
	width: calc(100% - 16px);
}

.cal-item-highlight{
	border-color: rgba(0,0,0,0.5) !important;
	color: black !important;
	box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
}

.cal-job-highlight > .cal-job-title{
	font-weight:bold !important;
}

.cal-check{
	transform: scale(1.3);
	margin-left:4px;
	margin-right:4px;
	cursor: pointer;
	accent-color: #A8FFA8;
}

.cal-check-wrapper{
	display: inline-block;
	padding: 8px;
	border: 1px solid #CCC;
	border-radius: 4px;
}

.cal-check-label{
	cursor: pointer;
	line-height: 1em;
}


.daycaltitlerow{
	display: block;
	font-size: 0;
	text-align: left;
	height: 30px;
	box-sizing: border-box;
}

.daycaltitlecell{
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	width: 80px;
	height: 30px;
	border-left: 1px solid #E8E8E8;
	border-bottom: 1px solid #E8E8E8;
	box-sizing: border-box;
}

.daycalrow{
	display: block;
	font-size: 0;
	text-align: left;
	height: 30px;
	box-sizing: border-box;
}

.daycalstaffcell{
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	height: 30px;
	width: 140px;
	border-bottom: 1px solid #E8E8E8;
	box-sizing: border-box;
}
.daycalcell{
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	height: 30px;
	width: 40px;
	border-left: 1px solid #E8E8E8;
	border-bottom: 1px solid #E8E8E8;
	box-sizing: border-box;
}

.daycalbar{
	margin-top: 1px;
	height: 27px;
	box-sizing: border-box;
}

.daycalrightedge{
	border-top-right-radius: 14px;
	border-bottom-right-radius: 14px;
	margin-right: 1px;
}

.daycalleftedge{
	border-top-left-radius: 14px;
	border-bottom-left-radius: 14px;
	margin-left: 1px;
}

.cal-day-slot-cell{
	border-left:1px solid rgba(0,0,0,0.1);
	border-bottom:1px solid rgba(0,0,0,0.1);
}

.dayavailstaff{
	height: 100%;
	background: rgba(0,0,0,0.05);
	background: linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.0) 15%);
	border-top: 1px solid rgba(0,0,0,0.1);
	font-weight: normal;
	color: rgba(0,0,0,0.4);
	margin-top: 4px;
	margin-left: -4px;
	margin-right: -4px;
	padding-top: 4px;
}

.availstaff{
	display: inline-block;
	text-align: left;
	font-size: 0.85em;
	padding-left: 0.5em;
	padding-right: 0.5em;

}

.pipelineDeals{
 /*	background-color:#44cc44; */
	background-color:#95ca4e;
}
.pipelineWarm{
	background-color: #ffcc44;
}
.pipelineQuoted{
	background-color: #be66f8;
}

.alreadyBookedSlot{
	background-color: #FAFAFA;
	padding: 4px;
	border: 1px solid #EEEEEE;
	border-radius: 4px;
	margin-bottom: 4px;
}
.provisionalPill{
	display:inline-block;
	background-color: #FFD098;
	border: 1px solid #E5BB89;
	color: rgba(0,0,0,0.7);
	padding: 4px;
	padding-top:2px;
	padding-bottom:2px;
	border-radius: 4px;
}
.confirmedPill{
	display:inline-block;
	background-color: #A8FFA8;
	border: 1px solid #97E697;
	color: rgba(0,0,0,0.7);
	padding: 4px;
	padding-top:2px;
	padding-bottom:2px;
	border-radius: 4px;
}

.modal-wide{
	width: 1000px;
	margin: 30px auto;
}

#calendarjobinfo{
	background: #f8f8f8;
	border: 1px solid #EEEEEE;
	border-radius:4px;
	padding: 8px;
	margin-left: 2em;
}


@media (min-width: 768px) {
	.modal-xl {
		width: 90%;
		max-width:1200px;
	}
}

.tctable td{
	font-size: 7pt;
	vertical-align: top;
}

@media (min-width: 1600px){
.container {
    width: 1670px !important;
}}

.h-controls-table{
	border: none;
	background-color: #F4F4F4;
	border-radius: 4px;
}
.h-controls-table td{
	border: none;
	padding: 0.5em;
}

.printonlyblock{
	display:none;
}

.printonlyinline{
	display:none;
}

@media print
{    
    .noprint, .noprint *
    {
        display: none !important;
    }
	.printonlyblock
	{
		display: block;
	}
	.printonlyinline
	{
		display: inline;
	}
	.page-break{
		page-break-after: always;
	}
}
