/**
 * Master Schedule form
 */

/* controls container */
div#CRUD-controls.Overtime {

}

	/* filters container */
	div#CRUD-controls.Overtime > #filters {

	}
		/* filters container */
		div#CRUD-controls.Overtime > #filters > button.info.filter-block-label {
			margin-left: 15px !important;
			width: 75px;
			text-align: center;
		}

			/* data contents */
			div#CRUD-controls.Overtime > #filters > button.info > span {
				font-weight: bold;
			}

		/* guaranteed hours */
		div#CRUD-controls.Overtime > #filters > button.info.guaranteed {
			background-color: #BBF !important;
		}

		/* overtime limits */
		div#CRUD-controls.Overtime > #filters > button.info.overtime {
			background-color: #FBB !important;
		}

/* priority hiliting */
.OT-priority01 {
	background-color: rgb(184,233,245) !important;
	/* border: 3px solid rgb(0,0,175) !important; */
}
.OT-priority02 {
	background-color: rgb(150,200,150) !important;
	/* border: 3px solid rgb(0,175,100) !important; */
}

/* form */
form#CRUDForm-Overtime {

}


	/* CRUD table */
	form#CRUDForm-Overtime > table.CRUD {

	}

		/* header cell */
		form#CRUDForm-Overtime > table.CRUD tr > th {
			padding-top: 4px !important;
			padding-bottom: 4px !important;
		}

			/* special styling for overage cells */
			form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"] {
				cursor: pointer !important;
			}
				/* click on overage cell */
				form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"]:active {
					background: rgb(0,134,147);
				}
				/* overage cell finalized */
				form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized="1"],
				form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized="true"] {
					color: rgba(255,255,255,.75);
					background-color: rgb(0,125,150);
				}

				/* add psuedo element for icon in overage headers */
				form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"]::before {
					position: absolute;
					margin: 2px 0px 0px -16px;

					font-family: 'FontAwesome';
					font-size: 12px;
				}
					/* icon when excluded=0 */
					form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized="0"]::before,
					form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized="false"]::before,
					form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized=""]::before {
						content: '';
						display: none;
					}
					/* icon when excluded=1 */
					form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized="1"]::before,
					form#CRUDForm-Overtime > table.CRUD tr > th[calculationMatrix-role="overage"][calculationMatrix-finalized="true"]::before {
						color: white;
						text-shadow: 1px 1px 0px rgba(0,0,0,.5);
						/* fa-check */
						content: "\f00c";
					}

		/* header label cell */
		form#CRUDForm-Overtime > table.CRUD tr > th.header-label {
			padding-right: 5px !important;
			font-weight: bold;
			text-align: right !important;
		}

		/* day or date header cell */
		form#CRUDForm-Overtime > table.CRUD tr > th.day-date {
			width: 70px;
			text-transform: none !important;
		}

		/* stat date */
		form#CRUDForm-Overtime > table.CRUD tr > th.StatDate {
			background-color: rgb(255,255,0) !important;
		}

		/* rowspanned header cell */
		form#CRUDForm-Overtime > table.CRUD tr > th[rowspan] {
			vertical-align: middle;
		}

		/* total cell */
		form#CRUDForm-Overtime > table.CRUD tr > .total {
			width: 100px;
			font-weight: bold;
		}

			/* total hours cell containing + */
			form#CRUDForm-Overtime > table.CRUD tr > .total.hours.blue {
				color: blue;
				text-shadow: 1px 1px 0px rgba(255,255,255,.5);
			}
			/* total hours cell containing - */
			form#CRUDForm-Overtime > table.CRUD tr > .total.hours.red {
				color: rgb(175,0,0);
				text-shadow: 1px 1px 0px rgba(255,255,255,.5);
			}
			/* total hours cell containing - */
			form#CRUDForm-Overtime > table.CRUD tr > .total.hours.zero {
				color: rgba(0,0,0,.5);
			}

			/* "distinguish" total cell for visual reasons */
			form#CRUDForm-Overtime > table.CRUD tr > .total.hours.distinguish {
				background-color: rgb(0,175,180);
			}

			/* totals containing adjustment input */
			form#CRUDForm-Overtime > table.CRUD tr > .total.hours.input {
				padding: 0px !important;
			}

				/* totals adjustment input */
				form#CRUDForm-Overtime > table.CRUD tr > .total.hours.input > input[name*="OvertimeCorrectedTotals"] {
					margin: 0px;
					position: relative;
					width: calc( 100% - 5px );
					padding: 0px 5px 0px 0px;

					text-align: right;
					font-weight: bold;
					font-size: 13px;

					background: transparent;
					border: 0px;
				}

		/* data section header */
		body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section {
			padding: 2px 5px 2px 5px;

			text-transform: none;
			text-align: left;
			font-weight: bold;
			font-size: 13px;
			line-height: 1.5;
		}

			/* clickable section header */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.clickable:hover {
				background: rgb(25,235,255) !important;
				cursor: pointer !important;
			}

			/* timesheet buttons container */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section > div.timesheet-buttons {
				float: right;
			}
				/* buttons */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section > div.timesheet-buttons > button {
					border: 0px;
					opacity: .8;
					cursor: pointer;
				}
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section > div.timesheet-buttons > button:hover {
						opacity: 1;
					}
					/* icon in button */
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section > div.timesheet-buttons > button > .fa {
						font-size: 14px;
  						vertical-align: baseline;
					}
			
			/* icons directly inside container */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section > div.timesheet-buttons > .fa {
				vertical-align: baseline;
			}

			/* data section header cell with icon */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section.control-icons {
				text-align: center;
			}

				/* icons */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section.control-icons > .fa {
					text-shadow: 1px 1px 0px rgba(255,255,255,.5);
					vertical-align: text-top;
				}

				/* warning-type icons */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > th.data-section.control-icons > .fa.warning {
					color: red;
				}

		/* paycode cell */
		body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.Paycode {
			min-width: 200px;
			padding: 10px 0px 10px 5px;
		}

		/* general cell */
		body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td {
			padding: 5px 3px 5px 5px;
			vertical-align: top;

			font-family: Roboto Mono;
			font-size: 13px !important;
		}

		/* data cells */
		/* full selector path to override previously defined rules */
		body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input {
			vertical-align: top;
			padding: 0px;
			width: 75px;

			font-family: Roboto Mono;
			font-size: 13px;
			cursor: default;
		}

		/* data cells containing non-OT hours */
		body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other {
			margin: 0px;
			opacity: .8;
		}
			/* when in the same cell as OT hours */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other:not(:first-child) {
				border-top: 1px solid rgb(190,190,190);
			}
			/* hover on non-OT cell data wrapper */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other:hover {
				cursor: pointer;
				opacity: 1;
			}

			/* data containers */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other > data {
				display: inline-block;
				position: relative;
				width: 40%;
				padding: 4px 1px 4px 1px;
			}
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other > data.Hours {
				text-align: left;
			}
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other > data.ReleaseBankAbbr {
				text-align: center;
			}
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other > data.ReleaseBankAbbr:not(:empty) {
				background: yellow;
			}
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours.input > div.hours-other > data.Banked {
				text-align: center;
				font-size: 14px;
				color: rgba(0,0,0,.65);
			}

			/* stat day cells */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.StatDate {
				vertical-align: middle !important;

				text-align: center !important;
				font-family: Open Sans !important;
				font-size: 12px !important;
				color: rgba(0,0,0,.5);
				line-height: 1.5;
				text-shadow: 1px 0px 0px white;

				background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAHElEQVQImWP4/5/hPwMCSCEzpBiQZZBVIstIAQAc8waXomBfsQAAAABJRU5ErkJggg==);
			}

				/* stat days cells with hours worked */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.StatDate.WorkedHrsOT {
					background: rgb(255,255,165);
					color: rgba(0,0,0,.8);
				}
					/* hover on stat days cells with hours worked */
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.StatDate.WorkedHrsOT:hover {
						color: black;
						background: rgb(255,255,51);
						cursor: pointer;
					}

				/* hr in stat date cell */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td > hr {
					width: 75%;
					height: 1px;
					border: none;
					border-top: 1px solid rgb(200,200,200);
				}

			/* data in cells */
			body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours > data {
				display: block;
				width: auto;
				padding: 6px 3px 6px 6px;
				text-align: right;

				font-family: Roboto Mono;
				font-size: 13px;
				cursor: pointer;
			}

				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.hours > data:hover {
					background-color: rgb(225,225,225);
				}

				/* open timesheet icon */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td > data > .fa.timesheet {
					float: left;
					margin: 1px;
				}

				/* hours input */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td > input {
					text-align: right;
					width: calc( 100% - 8px );
					padding: 5px 3px 5px 5px;
					border-top: 1px solid rgb(190,190,190) !important;
				}
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td > input:disabled {
						color: rgba(0,0,0,.15);
					}

				/* hours input when set */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td > input:focus {
					background-color: rgb(150,200,150);
				}

				/* control icons container */
				body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.input > .control-icons {
					display: block;
					padding: 3px;
					text-align: center;
					border-top: 1px solid rgb(190,190,190);
				}
					/* all icons */
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.input > .control-icons > .fa {
						width: 15px;
						text-shadow: 1px 1px 0px rgba(0,0,0,.15);
					}

					/* readonly icon */
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.input > .control-icons > .fa[readonly] {
						color: rgb(100,125,150);
						background: transparent;
					}
					/* icon with empty value */
					body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.input > .control-icons > .fa:not(.entered) {
						opacity: .2;
					}
						/* subicon for private notes when notes entered*/
						body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > td.input > .control-icons > .fa.entered.subicon-embed > .fa {
							color: white;
						}

		/* hours */
		body#ViewWrapper-Timesheets > main > form#CRUDForm-Overtime > table.CRUD tr > .hours {
			text-align: right !important;
			padding: 5px 5px 0px 0px;
			font-size: 13px;
		}

		/* note icon when empty */
		input[type="hidden"][value=""].NotesUI ~ .fa {

		}
			/* note icon when empty: fa-sticky-note-o */
			input[type="hidden"][value=""].NotesUI ~ .fa.NotesUI:before {
				content: "\f24a";
			}

		/* note icon when has contents */
		.NotesUI-container input[type="hidden"].NotesUI:not([value=""]) ~ .fa.NotesUI {
			color: rgb(100,125,150);
		}
			/* note icon when has contents: fa-sticky-note */
			input[type="hidden"].NotesUI:not([value=""]) ~ .fa.NotesUI:before {
				content: "\f249";
			}