/***
*
* Core Framework CSS Rules
* Site-wide Stylesheet: All Pages
*
**/
/******************************************************
* Global
******************************************************/
/**
*FIX: Changes in padding/margin were causing tabs to move around when new tabs were selected.
*/
.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
	padding-bottom: 0px!important;
	margin-bottom: 1px!important;
}

.addbottomborder {
	border-bottom: 1px solid #efefef!important;
}

.modaloverlay .fieldcontainer-outer {
	clear:both;
}

/**
* Fix for iphones to disable auto font scaling in some cases
*/
*
{
	-webkit-text-size-adjust: none;
}

/******************************************************
* Overrides
******************************************************/
.ui-jqgrid tr.jqgrow td {
	font-size:12px;
	padding:8px 3px;
	word-wrap: break-word;
	vertical-align: top;
}

.ui-jqgrid tr.jqgrow td.jqgrid-rownum {
	color:#333;
	font-size:1em !important;
}

option.notselectable {
	font-style:italic;
	font-weight:bold;
	font-size:90%;
	text-decoration: underline;
	padding-bottom:4px;
	color:#888;
}

/******************************************************
* Container
******************************************************/
#container-wrapper-for-quirks-mode {
	/* as per http://blog.extjs.eu/know-how/how-to-center-an-element-in-quirks-mode */
	text-align:center;
	padding:0px;
	margin:0px;
}

#container {
	font-family:Arial;
	width:100%;
	text-align:left;
}

/******************************************************
* Header
******************************************************/
@media (min-width: 970px) {
	#header {
		/* margin-bottom:8px; causes jumpiness */
		min-width:970px;
	}
}

#header-upper {
	height:83px;
	position:relative;
}

#header-upper-logo {
	position:relative;
	top:18px;
	left:10px;
}

#header-upper-logo img {
	max-height:50px;
}

.headernav-homelink-icon {
	margin-left:-5px;
	margin-right:8px;
	width:32px;
	height:32px;
}

#header-upper-logo-subtext {
	font-size:.98em;
	color:#9999a3;     /* 2022-12-07.1025 */
	width:100%;
	padding:.1em;
	text-align:center;
	background:white;
	font-weight:bold;
}

@media (max-width:750px)
{
	#header-upper-logo-subtext {
	font-size:.8em;
	}
}

#header-upper-account a {
	padding-left:4px;
}

#header-upper-account span {
	margin-right:5px;
}

#header-upper-menu {
	position:absolute;
	top:15px;
	right:10px;
	padding-right:20px;
	padding-top:5px;
	font-size:.95em;
	background-position:right top;
}

#header-upper-menu li {
	float:left;
	display:inline;
	padding:0 4px;
	border-left:1px solid #666666;
}

#header-upper-menu li a {
	color:#666666;
}

#header-upper-menu li.first {
	border-left:none;
}

#header-navigation {
	height:23px;
	padding:0px 10px 0 12px;
}

#header-navigation a.right {
	padding-left:28px;
	padding-right:0px;
	text-align:right !important;
}

#header-navigation a {
	float:left;
	text-align:center;
	border-right:1px solid #ffffff;
	padding-right:28px;
	color:#535353;
	font-weight:bold;
	font-size:.95em;
}

#header-navigation-end {
	float:right !important;
	border-right:0px !important;
	border-left:1px solid white;
}

/******************************************************
* Pre-content
******************************************************/
#precontent {
	clear:both;
	text-align:left;
}

#precontent-title {
	font-size:1.25em;
	color:rgb(89,89,89);
	margin-top:15px;
	margin-bottom:15px !important;
	font-weight:300;
	display:none;
}

/******************************************************
* Content
******************************************************/
#content {
	clear:both;
	text-align:left;
	position:relative;
	top:0px;
	left:0px;
	padding:0;
}

#content > div {
	margin-bottom:4px;
}

@media (max-width: 650px) {
	#content > div {
		margin-bottom:0;
	}
}

#content-sidebar-right {
	position:relative;
	top:0px;
	left:0px;
	font-size:95%;
}

#content-sidebar-right-content {
	float:right;
}

#content-button-bar div {
	padding:15px 3px 15px 0px;
	margin-right:5px;
}

/******************************************************
* Post-content
******************************************************/
#postcontent {
	clear:both;
	text-align:left;
	margin-bottom:4px;
	padding-left:8px;
	padding-top:12px;
}

#postcontent > div {
	margin-bottom:4px;
}

/******************************************************
* Footer
******************************************************/
#footer {
	display:none;
	clear:both;
	text-align:center;
	margin-top:20px;
	margin-bottom:15px;
	font-size:95%;
}

#footer, #footer a {
	color:rgb(159,159,189);
}

/******************************************************
* Login page
******************************************************/
.newdesign .loginpages #content {
	/* width:350px;  causes probs */
	min-width: 350px;
}

.newdesign .loginpages #content, .newdesign .loginpages #content {
	padding:0;
}

.loginpage #precontent-title, .resetpasswordpage #precontent-title {
	text-align:center;
	color:#0769DD;
	display:none!important;
}

.loginpages #precontent {
	display:block!important;
	width:auto;
	min-width:auto;
}

#messages, .messageslist {
	display:block;
}

#container.loginpages {
	background:none;
}

.loginpage #precontent, .resetpasswordpage #precontent {
	margin-top:15px;
}

.loginpages .buttonRow {
	margin-top:15px;                  /* 2022-10-19.1234 */
	padding-left: 4px;
	padding-bottom:0;
}

.loginpages .buttonRow.extraspaced {
	margin-top:25px;
	margin-bottom:20px;
}

.loginpages .buttonRow .button,
#overlay-logbackin form .button {
	margin-bottom:8px;                  	/* 2022-10-19.1234 */
	width:100%;
}

.loginpages #splash {
	margin-top:8px;
}

.loginpage #loginpagesubsplashhtml {
	text-align:center;
	margin-top:12px;
	font-size:1.3em;
	font-weight:bold;
	color:#333;
}

.loginpage .loginbuttonsordivider,  #overlay-logbackin .loginbuttonsordivider {
	display: flex;
	align-items: center;
	text-align: center;
	text-transform: uppercase;
	margin-top:25px;
	margin-bottom: 25px;
}

.loginbuttonsordivider:before, .loginbuttonsordivider:after {
		content: "";
		display: block;
		border-bottom: 1px solid #ccc;
		width: 50%;
}

.loginpage .loginbuttonsortext {
	color: var(--cu-grey500);
	margin: 0 10px;
}

.loginpage #loginpagesubsplashhtml div {
	padding-top:2px;
}

.loginpages #content form, #overlay-logbackin #loginform {
	margin:20% auto 0 auto; /* jp: replace with true vertical centering */
	padding:10px 15px;
	border-radius:10px;       /* 2022-10-18.1535 fix */
	background-color: #f2f2f5;
}

.loginpages #content form, #overlay-logbackin #loginform, .loginpages #content .footer {
	margin:24px auto; /* jp: replace with true vertical centering */
	max-width:350px;
}

.loginpages #content #completepasswordresetform {
	max-width:380px;
}

.loginpages #completepasswordresetform #id {
	border:0;
	padding-top:0.2em!important;
	min-height:0;
}

.loginpages span#title, #overlay-logbackin span#title {
	position:relative;
	bottom:10px;
}

.loginpages form fieldset:first-child {
		padding-top:20px;
}

.loginpages form fieldset:last-child {
		border-radius: 0 0 10px 10px;
}

.loginpagebody {
	background-size: 100% 100%;
	height:80%
}

#loginform .buttonRow  {
	margin-top:0;
}

.loginpages #stage {
	padding:35px 0 0 0 !important;
}

.loginpages #footer {
	position:fixed;
	bottom:0;
	background:none repeat scroll 0 0 rgb(3, 64, 130);
	width:100%;
	margin:0;
	padding:0;
	text-align:left;
}

.loginpages #footer div {
	padding:10px;
}

.loginpages #footer, .loginpages #footer a {
	color:white;
	vertical-align:baseline;
}

.loginpages #content input:not(.hidden,.button), .loginpages #content input:focus {
	display:block;
	width:100%;
	font-size:13px;
	text-align:center;
}

.loginpages #content input {
	border-width:1px !important;
	padding: 10px 6px 10px 6px!important;
}

.loginpages #id:not(.enabletwoinputmode), #overlay-logbackin #id {
	border-bottom:0;
}

.loginpages #content input.button:hover {
	display:block;
	width:100%px;
	/*OC: font-size:16px;*/
}

.loginpages #content input.button:hover {
	/* OC: border:1px solid #157efb!important; */
}

.loginpages input.email, .loginpage input.password {
	margin-bottom:0;
	margin-top:0;
	height:30px;
}

.loginpages #content #pagetext {
	color:#333;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	padding-bottom:20px;
}

.loginpages #content fieldset {
	padding:10px 20px;
	background-color:transparent !important;
}

.loginpage .loginblocklink, #overlay-logbackin .loginblocklink {
	text-align: center;
	display: block;
	margin: 24px auto;
	font-size:14px;		/* 2024-10-23 */
}

.loginpage .addoncontentblock {
	border-top: 1px solid #cbd2d6;
	padding:1.5em 0 .7em;
	margin:0 1em;
}

.loginpage #createaccount {
	background-color: #E1E7EB!important;
	color: #2C2E2F!important;
}

.loginpage input.button, .loginpage input.button:hover, #overlay-logbackin input.button, #overlay-logbackin input.button:hover {
	border:none!important;
	min-height:30px!important;
}

.loginpage input.button:hover, #overlay-logbackin input.button:hover {
	text-decoration: underline;
}

.loginpage .footer li {
	display:inline-block;
	padding-left:5px;
}

.loginpage .footer a {
	margin-right:5px;
	color: #666;
}

.loginpage .footer {
	text-align:center;
	margin-top:24px;
}

.loginpages #footer, .registerpage #header{
	display:none;
}

.loginpages #header {
	box-shadow:none;
}

.loginpage .showhidepasswordicon {
	position: absolute;
	right: 0.2em;
	top: 0.25em;
	font-size: 1.2em;
	height: 3em;
	padding: 1em 0.5em;
	box-sizing: border-box;
}

.loginpages #loginlogincontainer {
	text-align: center;
}

@media (max-width: 650px) {
	.loginpages #loginform input, .loginpages #loginform button, .loginpages #loginform a, #overlay-logbackin #loginform input, #overlay-logbackin #loginform button, #overlay-logbackin #loginform a {
		width:280px;
		margin-left:auto !important;
		margin-right:auto !important;
	}
	.loginpages .showhidepasswordicon {
		right:1.8em;
	}
}

/******************************************************
* Edit Account Page
******************************************************/
.editaccountpage .buttonRow {
	padding-left:5em !important; /* 2022-10-18.1616 redesign */
	text-align:center;
}

.editaccountpage .showhidepasswordicon,
.completepasswordresetpage  .showhidepasswordicon {
	font-size:1.2em;
	padding:1em 0.5em;
	position:absolute;
	right:0;
}

/******************************************************
* Admin page
******************************************************/
#admin-content-links {
	height:20px;
}

#admin-content-tabs {
	width:99.5%;
	margin-top:8px;
	min-height:600px; /* fixes tabs moving due to scroll bar showing/hiding */
}

#admin-content-stats th {
	white-space:nowrap;
	color:#3789BA;
}

#admin-content-stats td, #admin-content-stats th {
	padding:3px 10px 3px 5px;
}

#admin-content-stats-content {
	margin-top:.8em;
	margin-bottom:1.5em;
}

.adminpage .show-hide-toggle .ui-icon, .adminpage .showhide .ui-icon {
	top:3px !important;
}

.adminpage #tabs-recent-activity div {
	max-width:900px;
	margin:10px;
}

.adminpage #header-navigation-viewasmenu {
	display:none;
}

.adminpage #tabs-systemlog .ui-jqgrid tr.jqgrow td, .adminpage #tabs-adminlog .ui-jqgrid tr.jqgrow td {
	vertical-align:top;
}

#is_public_for_roles {
	min-width:200px;
}

/******************************************************
* System Status Page
******************************************************/
/* relocated locally within template */

/******************************************************
* Help page
******************************************************/
.helppage h4, .helppage #content > div {
	margin-bottom:12px;
}

.helppage h4 {
	margin-top:20px;
	border-bottom:1px dotted #eaeaea;
}

.helppage .heading {
	margin-top:15px;
}

/******************************************************
* Log Back In Overlay
******************************************************/
#overlay-logbackin {
	background:transparent;
}

#overlay-logbackin #loginform {
	margin-top:20%; /* jp: replace with true vertical centering */
}

#overlay-logbackin span#title {
	position:relative;
	bottom:10px;
}

#overlay-logbackin .intro {
	margin:10px 30px 0;
	line-height:1.3em;
}

#overlay-logbackin #loginform fieldset:first-child {
	border-radius: 10px;
}

#overlay-logbackin .buttonRow {
	padding-left: 4px;
}

#overlay-logbackin #id {
	border-bottom:0;
}

#overlay-logbackin input.email {
	margin-bottom:-2px;
	margin-top:0;
	height:30px;
	border-radius:4px 4px 0 0;
}

#overlay-logbackin input.password {
	margin-top:0;
	border-radius:0 0 4px 4px;
	border-top:0;
}

#overlay-logbackin input.button, #overlay-logbackin input.button:hover {
	border:none!important;
	/* height:30px!important; */
}

#overlay-logbackin input.button:hover {
	text-decoration: underline;
}

@media (max-width: 650px) {
	#overlay-logbackin #loginform input, #overlay-logbackin #loginform button, #overlay-logbackin #loginform a {
		width:280px;
	}
}

#overlay-logbackin .modaloverlaycontent {
	width:400px;
	box-sizing: content-box;
	margin: auto;
}

#overlay-logbackin form {
	background:#f2f2f5;
	border-radius:10px;
	padding:25px;
}

#overlay-logbackin input {
	font-size:16px;
	text-align:center;
}

#overlay-logbackin .overlay-title {
	display:none !important
}

#overlay-logbackin fieldset {
	padding:10px 0;
}

#overlay-logbackin {
	overflow:hidden;
}

#overlay-logbackin #splash {
	text-align:center;
	padding-left:1.5em;
	padding-right:1.5em;
}

#overlay-logbackin #splash img {
	max-width:80%;         /* 2022-09-19.1015 */
}

/******************************************************
* Reporting Page
******************************************************/
#section-graphcontent-filters {
	background:#f3f3f3;
	border:1px solid #ccc;
	padding:8px;
	margin:10px 0;
}

#report-filter-fieldgroup label {
	width:auto;
}

#report-filter-fieldgroup {
	text-align:center;
}

.page-systemreportpage .systemreport {
	margin-top:1.3em;
}
.reportingpage li.ui-tabs-tab[aria-controls="tabs-adhoc-reporting"] {
	float:left;
	margin-right:3px;
}

.reportingpage .ui-tabs-panel .loadingThrobber  {
		position: absolute;
}

.systemreport .systemreportbody {		 /* 2023-05-10.1848 */
	font-size:1.1em;
}

.systemreport table.tablesorter th.tablesorter-headerSortDown, .systemreport table.tablesorter th {
	background-color: #dcdcdc!important;
	border-left:none!important;
	border-right:none!important;
	border-bottom: 1px solid #A9A9A9!important;
	border-top: 1px solid #A9A9A9!important;
}

.systemreport table.tablesorter tr.odd td, .systemreport table.tablesorter tr.even td, .systemreport table.tablesorter tr td {
		background-color: rgb(250, 250, 250)!important;
}

.systemreport table.tablesorter td {
	border-left:0; 	/* !important is preventing overriding in system report extracss */
	border-right:0; 	/* !important is preventing overriding in system report extracss */
	font-size:inherit;
	color: rgb(34, 34, 34);
}

.systemreport table.tablesorter tr:not(.subtotal_row):not(.subtotal_num_rows):not(.grandtotal_num_rows) td {
	border:0; /* this is preventing overiddingin system report code !important */

}

.systemreport table.tablesorter {
	border:0!important;
	font-size:inherit;
}

.systemreport table.tablesorter:last-child {
	margin-bottom:0!important;
}

/******************************************************
* System Ad Hoc Report Results Page
******************************************************/
.system_adhoc_reports_tab {
	padding:10px 0 !important;
}

.system_adhoc_reports_tab td,
.system_adhoc_reports_tab th {
	border:1px solid #ccc !important
}

.system_adhoc_reports_tab table.lined th,
.system_adhoc_reports_tab table.lined tr:nth-child(2n) td,
.system_adhoc_reports_tab table.lined tr.even td {
		background: none repeat scroll 0 0 #FBFCFD !important;
}

#section-report-title {
	font-weight:bold;
	font-size:16px;
	margin-top:12px;
}

#section-report-description {
	font-size:12px;
	margin-top:6px;
	padding:4px 0;
	border-bottom:1px solid #eee;
}

.systemadhocreportpage td,
.systemadhocreportpage th {
	border:1px solid #ccc !important;
}

.systemadhocreportpage th {
	background:#F9FAFB;
}

.system_dynamic_table_selection_screen {
	padding:0 0 15px 0 !important;
	margin:12px 0 20px 0 !important;
	border-bottom:1px solid #ddd;
	/* border-top:1px solid #ddd; */
}

.system_dynamic_table_selection_screen.horizontal label, .systemreport .variablespanel.horizontal label {
	width:auto !important;
}

.system_dynamic_table_selection_screen.horizontal .fieldcontainer-outer, .sytemreport .variablespanel .fieldcontainer-outer {
	display:inline-block;
	margin-right:20px;
}

.systemadhocreportpage #section-report-title, .systemadhocreportpage #section-report-description {
	text-align:center;
}

#overlay-systemreport-form .fw-fc-name-sql_query textarea {
	min-height:185px;
}

/******************************************************
* Admin Page
******************************************************/
.adminpage #overlay-uploadnewfile #new-file-form label {
	width: 220px;
}

.adminpage #overlay-uploadnewfile #new-file-form #has_headers {
	margin-right:130px;
}

.adminpage #entity-select-column-settings fieldset {
	overflow:initial;
}

.adminpage #entity-select-column-settings .fieldgroup {
	white-space: nowrap;
}

.adminpage #overlay-selectfilecolumnsettings .modaloverlaycontent,
.adminpage #overlay-selectentityfilecolumnsettings .modaloverlaycontent {
	overflow-x:scroll;
	width:100%;
}

.adminpage #overlay-selectfilecolumnsettings .fieldgroup {
		white-space: nowrap;
}

.adminpage #overlay-selectfilecolumnsettings .column-example_data {
		max-width: 100px;
		white-space: wrap !important;
		vertical-align: top;
}

.adminpage #overlay-selectfilecolumnsettings .fieldgroup label {
		vertical-align: middle;
}

.adminpage #entity-select-column-settings .fieldcontainer-table_name {
	margin:auto;
	max-width:400px;
}

.adminpage #entity-select-column-settings .fieldcontainer-upload_data label {
	width:200px;
}

.adminpage #entity-select-column-settings .fieldcontainer-has_headers label{
	width:220px;
}

.adminpage #entity-select-column-settings .fieldcontainer-upload_data,
.adminpage #entity-select-column-settings .fieldcontainer-has_headers {
	width:260px;
	margin:auto;
}

.adminpage #overlay-selectfilecolumnsettings .column-example_data {
	display:inline-block;
	min-width:180px;
	padding-top:2em;
}

.adminpage-viewjobdetails td,
.adminpage-viewjobdetails th {
	border:1px solid #ccc !important;
}

.adminpage-viewjobdetails th {
	background:#F9FAFB;
}

/********************************
* Printing styles
*********************************/
@media print {
	* {
		font-family:Calibri !important;
		font-size:9px !important;
	}

	#header, #precontent, #postcontent, #footer, #dialogs, .ui-tabs-nav, button, input[type="submit"],
	.jqgrid-nav, .ui-search-toolbar, .footrow, .ui-tabs-hide *, .ui-jqdialog * {
			display:none !important;
	}

	input, textarea {
		border:0px !important;
	}

	.ui-jqgrid-hdiv, .ui-jqgrid-bdiv, .ui-jqgrid-sdiv {
		width:660px !important;
	}

	.noprint {
		display:none !important;
	}

	.printtitle {
		font-size:13px !important;
		display:block !important;
	}

	.section-title {
		font-weight:bold !important;
		margin:12px 0 8px 0 !important;
		border-bottom:1px solid #666;
	}

	table.lined, div {
		margin:12px 0 !important;
	}

	table {
		width:100% !important;
		border-collapse:collapse;
		border-spacing: 0;
		border-bottom: 1px solid #aaa !important;
		page-break-inside: avoid;
	}

	table.lined tr {
		border-top: 1px solid #aaa !important;
	}

	table.lined td, table.lined th {
		margin: 0px !important;
		padding:3px !important;
		border: 1px solid #aaa !important;
		border-top: 0px !important;
		border-bottom: 0px !important;
		vertical-align:top;
	}

	table.lined tr:nth-child(odd) td, table.lined tr.odd td, .jqgrow:nth-child(odd) td {
		background:#f6f6f6 !important;
	}

	.jqgrow td {
		border:1px solid #aaa !important;
		padding:3px !important;
	}

	.labelcol {
		width:250px;
	}

	.valcol {
		width:70px;
	}

	.notecol {
		width:auto;
	}

	a {
		text-decoration:none !important;
		color:#111 !important;
	}

	.modaloverlaycontent td {
		padding:1px !important;
	}
	.modaloverlaycontent input, .modaloverlaycontent textarea, .modaloverlaycontent select {
		margin-bottom: 0 !important;
	}

}