*, *::before, *::after {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

html, body {
    /* mobile font-size bugfix */
    -ms-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -o-text-size-adjust: none;
    -webkit-text-size-adjust: none;
}

body {
	font-family:Arial, Helvetica, sans-serif;
    font-size: 13px;
	line-height: 18px;
	
	color: #333333;
	margin: 0px;
	padding: 0px;
	background: #ffffff;
}

.popupBody {
    margin:0 3px 0 0;
}
.popupBody #fullContent {
    overflow:auto;
}


.maxwidth
{
    width:100%;
    max-width:1248px;
    min-width:750px;
}


#wrapper
{
    padding:0;
    margin:0;
    width:auto;
    z-index:0;
}
#wrapper > div
{
    min-width:100%;
    float:left;
}
#wrapper .wrapperinner
{
    margin:0 auto;
}
#wrapper .wrapperinnerpadding
{
    margin:0 auto;
    padding:0 20px;
}

.clearboth
{
    clear:both;
}


#background
{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background-color:#fafafa;
    z-index:-1000;
}
#background #backgroundcontent
{
    background-color:#fff;
    height:100%;
    box-shadow: 0 0 6px rgba(0,0,0,0.2);
}


/* Header top text */
#header
{
    background-color:#40386B;
}
#headertext
{
	height: 55px;
	padding: 10px 5px 0 0;
	font-size: 25px;
	line-height: normal;
	font-weight: normal;
	text-align:right;
	color: #ffffff;
}


/* Header banner message */
#headerbanner
{
    color:#000;
    text-align:center;
    background-color:#fa8072;
}
#headerbanner .wrapperinner
{
    padding:5px;
    display:table;
}
#headerbanner p
{
    margin:0;
}
#headerbanner #headerbannertext
{
    display:table-cell;
    vertical-align:top;
}
#headerbanner #headerbannerhide
{
    display:table-cell;
    width:150px;
    vertical-align:middle;
}


/* Container to hold static header information */
#staticcontainer
{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:200;
}
#staticcontainerfade
{
    display:none;
    height:15px;
}
#staticcontainerfadeinner
{
    background:url(../../../../images/shared/topfade15.png) repeat-x left center transparent;
    height:15px;
}
#staticcontainerfade.staticheader
{
    display:block;
}



/* Header top menu */
#topmenu
{
    background-color:#7C7C7C;
    min-height:28px;
    padding-top:1px;
	vertical-align: top;
    color:#fff;
    overflow:hidden;
}
#topmenu a
{
    color:#fff;
    text-decoration:none;
}
#topmenu ul
{
    list-style:none;
    margin:0;
    padding:0;
}
#topmenu ul li
{
    display:inline-block;
}
#topmenu #topmenuleft
{
    float:left;
    margin-left:6px;
}
#topmenu #topmenuleft li:hover
{
    background-color:#999;
}
#topmenu #topmenuleft li a
{
    display:inline-block;
    padding:4px 5px 5px;
}
#topmenu #topmenuright
{
    float:right;
    margin-right:6px;
}
#topmenu #topmenuright li
{
    padding-right:10px;
    padding:4px 5px 5px;
}


/* Nav menu */
#dynamicmenu
{
	background-color: #F0F0F0;
    box-shadow: 0 3px 3px rgba(0,0,0,0.2);
}
#dynamicmenu.staticheader
{
    z-index:300;
    position:relative;
}
#dynamicmenu ul
{
    float:left;
    display:block;
    list-style:none;
    margin:0;
    padding:0;
	background-color: #F0F0F0;
}
#dynamicmenu #dynamicmenulistright
{
    float:right;
}
#dynamicmenu li
{
	border-right: 1px solid #dfdfdf;
    display:inline-block;
    position:relative;
	background-color: #F0F0F0;
}
#dynamicmenu li:first-child
{
	border-left: 1px solid #dfdfdf;
}
#dynamicmenu li a
{
    text-decoration:none;
	color:#333;
    padding:5px 10px;
    display:inline-block;
    white-space:nowrap;
}
#dynamicmenu li a:hover
{
    color:#fff;
    background-color: #999;
}
/* Nav menu - sub menus */
#dynamicmenu ul ul
{
    display:none;
    position:absolute;
    min-width:160px;
    left:-1px;
    z-index:200;
    -webkit-box-shadow: 2px 2px 3px 0 rgba(0,0,0,.3);
    box-shadow: 2px 2px 3px 0 rgba(0,0,0,.3);
}
#dynamicmenu ul ul li
{
    border-right: 0;
	border-left: 1px solid #dfdfdf;
	border-top: 1px solid #dfdfdf;
    width:100%;
    position:relative;
}
#dynamicmenu ul ul li a
{
    display:block;
}
#dynamicmenu ul ul li a.dynamicsubmenu {
    padding-right: 20px;
    position: relative;
}
#dynamicmenu ul ul li a.dynamicsubmenu::after
{
    content: ">";
    position: absolute;
    right: 5px;
}
/* Nav menu - sub-sub menus*/
#dynamicmenu ul ul ul
{
    top:-1px;
    left:100%;
}

/* Saving status */
#dynamicmenu .wrapperinner
{
    position:relative;
}
#dynamicmenustatus
{
    display:none;
    position:absolute;
    bottom:-28px;
    right:10px;
    line-height:28px;
    height:28px;
    padding:0 10px;
    background-color:#F0F0F0;
    color:#E00;
    -webkit-box-shadow: 2px 2px 3px 0 rgba(0,0,0,.3);
    box-shadow: 2px 2px 3px 0 rgba(0,0,0,.3);
    white-space:nowrap;
}
/* Padding */
#wrapper #dynamicmenupadding
{
    display:none;
}
#wrapper #dynamicmenupadding.staticheader
{
    display:block;
    margin:0 auto;
}


#message
{
    margin:5px 0 10px;
    line-height:normal;
}
#message p
{
    margin:7px 0;
}
#message p:first-child {
    margin-top:0px;
}
#message p:last-child {
    margin-bottom:0px;
}

.warning
{
    color:#E00;
}


#validation
{
    margin:5px 0 10px;
}


#content
{
    margin-top:10px;
    margin-bottom:100px;
}
#content p, #content ul, #content ol
{
    font-size:13px;
}
#content p.pDisplayMessage {
    margin:10px 0 0;
}


/* Content header at the top of most pages */
#contentHeader
{
    display:table;
}
#contentHeader.staticheader
{
    z-index:290;
    position:relative;
}
#contentHeader #contentHeaderInner
{
    background-color:#fff;
    display:table-row;
    overflow:hidden;
}
#contentHeader #contentTitle
{
    display:table-cell;
    padding:10px 0;
	font-size: 18px;
    font-weight: bold;
	color: #006699;
    line-height: normal;
}
#contentHeader #contentTitle img
{
    vertical-align:middle;
}
#contentHeader #contentButtons
{
    display:table-cell;
    white-space:nowrap;
    width:1%;
    padding:3px 0;
    vertical-align: top;
    text-align:right;
}
#contentHeader #contentButtons input[type="image"],
#contentHeader #contentButtons a,
#contentHeader #contentButtons .waitSpinner
{
    vertical-align: top;
    margin:0 2px 0 15px;
    display:inline-block;
}
#contentHeaderPadding
{
    display:none;
}
#contentHeaderPadding.staticheader
{
    display:block;
}


.homepagePendingList {
    margin-top:10px;
}
.homepagePendingList h2 {
    margin:0 0 5px 0;
}
.homepageNormalDropdown
{
    display:inline-block;
    margin:3px 5px 8px 0;
}



input, select, textarea {
	background-color:White;
	font-family:Arial, Tahoma;
    font-size: 13px;
}

textarea {
	resize: vertical;
}

select {
    max-width:100%;
}

input[type="text"][readonly], textarea[readonly], select[disabled] {
    color: slategray;
}

input::-webkit-input-placeholder
{
    color:black !important;
    opacity:0.54 !important;
}


/*input[type="submit"], input[type="button"] {
	border:1px solid black;
	background-color: buttonface;
}*/

h1 {
	font-size: 18px;
	color: #006699;
}

h2 {
	font-size: 15px;
    line-height: 15px;
	color: #006699;
}

h3 {
	font-size: 13px;
	color: #006699;
}

div.sectionHeader {
    padding:4px 6px 4px 0;
    margin-bottom:4px
}
div.sectionHeader h2 {
    display:inline;
}

a:link, a:active, a:visited, a:hover {
    color:#006699; 
    text-decoration: underline; 
}


br {
	clear: left;
}


.standaloneFrame {
	width:auto;
	clear:left;
}


.searchFilterContainer {
    margin:10px 0;
}
.searchFilterHeader {
    overflow:hidden;
}
.searchFilterHeader h2 {
    display:inline-block;
    margin: 0 20px 5px 0;
}
.searchFilterHeader #showHideFilter,
.searchFilterHeader #spnFilterActive {
    display:inline-block;
}
.searchFilterOuter {
	width:auto;
	clear:left;
}
.searchFilterTable {
    display:table;
    width:100%;
    border:1px solid #ccc;
}
.searchFilterRow {
    display:table-row;
    background-color:#F0F0F0;
}
.searchFilterRow > div {
    padding:4px 8px;
    display:table-cell;
}
.searchFilterRow:first-child > div {
    padding-top:8px;
}
.searchFilterRow:last-child > div {
    padding-bottom:8px;
}
.searchFilterRow > div:nth-child(1) {
    width:120px;
}
.searchFilterRow > div:nth-child(3) {
    width:10px;
    white-space:nowrap;
}

.tabBodyOuter input, .standaloneFrame input {
	background-color:Transparent;
	margin:0px;
}

.tabBodyOuter .whiteBackground, .standaloneFrame .whiteBackground {
	background-color:#ffffff;
}


tr.headerRow {
	background-color: #898eb6 !important;
	color: #ffffff;
}
tr.subHeaderRow {
	background-color: #a1bbc5 !important;
	font-weight:bold;
}


.fixedColourTable {
    width:100%;
    border:0;
    border-spacing:0;
    border-collapse:collapse;
}
.fixedColourTable td,
.fixedColourTable th {
    padding:4px;
    text-align:left;
}
.fixedColourTable tbody tr.itemRow {
	background-color: #ddebf6;
}
.fixedColourTable tbody tr.itemRowAlt {
	background-color: #ccdfe6;
}
.fixedColourTable.fixedColourTableHover tbody tr:hover {
 	background-color: #99cccc;
}
.fixedColourTable.fixedColourTablePointer tbody tr:hover {
    cursor: pointer;
}


.autoColourTable {
    width:100%;
    border:0;
    border-spacing:0;
    border-collapse:collapse;
}
.autoColourTable td,
.autoColourTable th {
    padding:4px;
    text-align:left;
}
.autoColourTable > tbody > tr:nth-child(odd) {
	background-color: #ddebf6;
}
.autoColourTable > tbody > tr:nth-child(even) {
	background-color: #ccdfe6;
}
.autoColourTable.autoColourTableHover > tbody > tr:hover {
 	background-color: #99cccc;
}
.autoColourTable.autoColourTablePointer > tbody > tr:hover {
 	cursor:pointer;
}


.colourTableBlockPointer {
    cursor:default !important;
}


#progressGrid .progressTable {
    display:table;
    width:100%;
}
#progressGrid .progressTable > div {
    display:table-cell;
    padding:5px;
}
#progressGrid .progressTable:not(.altRow) > div {
    background-color:#ddebf6;
}
#progressGrid .progressTable.altRow > div {
    background-color:#ccdfe6;
}
#progressGrid .progressTable > div:nth-child(2),
#progressGrid .progressTable > div:nth-child(3) {
    width:128px;
}
#progressGrid .progressTable > div:nth-child(4) {
    display:none;
}
#progressGrid.messages .progressTable > div:nth-child(4) {
    display:table-cell;
    width:26px;
}
#progressGrid .progressRound {
    margin-top:10px;
}
#progressGrid .progressRoundFirst {
    margin-top:0;
}
#progressGrid .progressHeader.progressTable > div {
    background-color:#898eb6;
    color:#fff;
}
#progressGrid .progressClick {
    cursor:pointer;
}
#progressGrid .progressExpand {
    display:none;
}
#progressGrid .progressExpand.progressExpandShow {
    display:block;
}
#progressGrid .progressExpand .progressTable > div {
    background-color:#f0f0f0;
}
#progressGrid .progressExpand .progressTable > div:first-child {
    padding-left:10px;
}
#progressGrid .progressExpand .progressTable.progressIndent > div {
    padding-left:20px;
}
#progressGrid .progressExpand .progressTable.progressIndentNotes > div {
    padding-left:63px;
    text-indent:-43px;
}
#progressGrid .progressTable.progressApproved > div {
    background-color: #a1bbc5;
    font-weight:700;
}
#progressGrid .progressApproverLink {
    display:inline-block;
    padding-right:20px;
}


.requestGridNoTabHeader {
    display:inline-block;
}
.requestGridTable td:not(.suffixColumn) a {
    text-decoration:none;
    color:inherit;
}
.requestGridTable thead a:hover {
    text-decoration:underline;
}

.defaultJobGridSystemRow {
    display:inline-block;
    font-style:italic;
    padding:3px;
    min-height:24px;
}

/* Templates grid */
.templateGridTable td.templateHide {
    display:none;
}
.templateGridTable td.notInUseIndicator > span {
    display:none;
}
.templateGridTable tr.templateNotInUse td:nth-last-child(n+3) {
    text-decoration:line-through;
}
.templateGridTable tr.templateNotInUse td.notInUseIndicator > span {
    display:inline-block;
    color:#f00;
}

/* Create grid */
.createGridTable td.createHide {
    display:none;
}




.requestDetailsTable {
	background-color: #eeeeee;
    width:100%;
    border:0;
    border-spacing:0;
    border-collapse:collapse;
}
.requestDetailsTable td {
	vertical-align:top;
	padding:4px 5px;
    line-height:21px;
}
.requestDetailsTable tr.headerRow b {
    font-weight:normal;
}

.requestDetailsTable td .requestDetailsTableLimitedWidth {
    width:auto;
    max-width:1000px;
    margin:0 auto;
}
.requestDetailsTable td .requestDetailsTableLimitedWidthDescr {
    width:auto;
    max-width:900px;
    margin:10px auto;
}

/* Popup help in details table */
.requestDetailsTable td .popupHelp .contextHelpPopup > div > div {
    line-height:18px;
}



td.cthin {
	width:1%;
	text-align: center;
}

td.thin {
	width:1%;
}

td.c {
	text-align: center;
}

td.r {
	text-align: right;
}



#decisionButtons {
    text-align:center;
}
#decisionButtons input[type="image"],
#decisionButtons a {
    vertical-align: top;
    margin:1px 10px;
    display:inline-block;
}

div.requestTabOuter {
	float: left;
	width: 780px;
}

div.requestFrameDivOuter {
	float: left;
}

div.requestTabEnd, div.requestTabSelEnd {
	float: left;
	height: 22px;
	padding: 0px 0px 0px 0px;
	margin: 8px 0px 0px 0px;
	border-left: 1px solid #a0a0a0;
	width: 0px;
}

div.requestTabSelEnd {
	margin-top: 0px;
	height: 30px;
}

div.requestTab, div.requestTabSel {
	float: left;
	height: 22px;
	margin-top: 8px;
	border-top: 1px solid #a0a0a0;
	width: auto;
	background-color: #e0e0e0;
}

div.requestTabSel {
	margin-top: 0px;
	border-top: 5px solid #ffb502;
	background-color: #ffffff;
}

a.requestTab {
	padding: 0px 10px 4px 10px;
}

iframe.requestTabFrame {
	width:100%;
	height:100px;
}

#repeateritem {
	background-color: #f0f0f0;
}

#repeateraltitem {
}

.bluetext  {
	color: #006699;
	font-weight:bold;
}

.redtext  {
	color: #ff0000;
	font-weight:bold;
}
	
.whitetext, a.whitetext, a:visited.whitetext {
	color: #ffffff;
}

.gridMessageSmall {
	font-size:0.8em;
	line-height:normal;
}

.generalPaddedDiv {
	border: solid 1px #a0a0a0;
	padding: 5px 5px 5px 5px;
}

.stageUserDetailsRow {
	padding: 3px 0 !important;
	background-color: #f0f0f0;
}
.stageUserDetailsRowSub td {
	border-top:solid 1px #e0e0e0;
}



.helpPopupIcon {
	height:16px;
	width:16px;
}



.selectUserOuter{
	float:left;
	margin-right:20px;
	background-color:#FFFFFF;
	border:1px solid #51626A;
	color:#333333;
	font-size:0.9em;
}
.selectUserInner{
	padding:2px 5px 2px 5px;
}
.selectUserSearch{
	float:left;
	padding:3px;
	margin-right:5px;
}
.selectUserSearch a, .selectUserInner a{
	font-size:0.9em;
}


.picklistctrl
{
	margin: 0px 0px 0px 0px;
	overflow: auto;
	padding: 0px 0px 0px 0px;
	height: 100px;
	border: 1px solid black;
	background-color: white;
}
.picklistctrl .row
{
	padding: 2px 2px 2px 2px;
}
.picklistctrl .checkbox
{
	float:left;
	width:20px;
}
.picklistctrl input
{
	border:0px;
	background-color: white;
}
.picklistctrl .descr
{
	float:left;
	padding-top:3px;
}
.picklistctrl .value
{
	float:right;
}
.picklistctrl .valuectrl
{
	border:solid 1px black;
	width:60px;
}


#requestContentFooter
{
    overflow:hidden;
	padding-top:10px;
}
#requestContentFooterLeftButtons
{
	margin-right:10px;
	float:left;
}
#requestContentFooterShowAll
{
	float:left;
    margin-left:20px;
}
#requestContentFooterRightButtons
{
	float:right;
}


#messagesDiv
{
	height:100%;
}

#messagesDivText
{
	width:98%;
	height:10px;
	border:1px solid #a0a0a0;
	overflow:scroll;
	overflow-x:hidden;
	padding:2px;
}

#messagesDivText a 
{
	font: inherit;
}

#messagesDivSend
{
	width:98%;
	height:100px;
	position:absolute;
	top:100px;
	left:10px;
	right:10px;
}

/* Force UpdateProgress message of "Loading... please wait" onto same line as title" */
.requestListProgress[style*="display: block;"] {
     display:inline !important;
}



#divStatus {
    float:right;
}



.editContentContainer
{
    position:relative;
    min-height:25px;
}
.editContentContainerHighlight
{
    background-color:rgba(255,0,0,0.3);
}
.editContentEdit
{
    position:absolute;
    top:0;
    right:0;
    border:1px dotted #c0c0c0;
    margin-bottom:2px;
}
.editContentEdit img
{
    margin:3px 0 3px 3px;
    display:block;
}



/* Sortable */
.drag-handle 
{
    color: #5f9edf;
    cursor: ns-resize;
    font: bold 16px sans-serif;
    width:20px;
    text-decoration:none;
}
/* Give background colour while being dragged */
.ui-sortable-helper {
    background-color:#eeeeee;
}
/* Hide while being dragged */
.ui-sortable-helper .drag-hidden {
    display:none;
}


/* FontAwesome */
.far {
    color:#444;
    font-size:16px;
}
.fa-mar-r {
    margin-right:5px;
}
.fa-mar-l {
    margin-left:5px;
}
.fa-red {
    color:#D00;
}
.fa-green {
    color:#080;
}
.fa-blue {
    color:#5f9edf;
}


/* Radio list */
.listwithproperwrap input {
    float: left;
    margin-top:3px;
}
.listwithproperwrap label {
    margin-left: 25px;
    display: block;
}
.listwithproperwrap br {
    margin:3px 0px;
    line-height:4px;
    content:" ";
    display:block;
}

/* Wait spinner container */
.waitSpinner {
    display:inline-block;
    text-align:center;
    overflow:hidden;
}



/* Auto-saving */
#autoSaveLoggedOut {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0,0,0,0.2);
    text-align: center;
}
#autoSaveLoggedOut > div {
    display: inline-block;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 0 10px;
    margin: 0 10px;
    background-color: #fff;
    box-shadow: rgba(0,0,0,0.2) 10px 10px 10px;
    text-align:left;
}
#autoSaveLoggedOut > div > div:first-child {
    color: #fff;
    font-weight: 700;
    background-color: #898eb6;
    margin: -1px -11px 0;
    padding: 10px;
    border-radius: 5px 5px 0 0;
}

/* Step Down */
@media screen and (max-width:1279px)
{
    .maxwidth
    {
        max-width: 992px;
    }
    #wrapper .wrapperinnerpadding
    {
        padding:0 1.2%;
    }

    #contentHeader #contentButtons input[type="image"],
    #contentHeader #contentButtons a,
    #contentHeader #contentButtons .waitSpinner
    {
        margin-left:5px;
    }
}
