/* THIS IS REQURIED FOR FONT AWESOME 5.0 */
/*@import url('https://use.fontawesome.com/releases/v5.0.8/css/all.css');*/

:focus {
	outline					: none;
}

/*
				ELEMENT-LEVEL FORMATTING				

*/
html {
	font-family				: var(--font-family), 'Didact Gothic', sans-serif;
	background				: var(--html-background);
	color					: var(--html-color);
	background-size			: var(--html-background-size);
	position				: relative;
	min-height				: fit-content;
	fill					: currentColor;
	height					: 100%;
	outline					: none;
	background-attachment	: fixed;
	margin					: 0;
	box-sizing				: border-box;
	-moz-box-sizing			: border-box;
	-webkit-box-sizing		: border-box;
	overflow-y				: scroll;
}

html:before {
	font-family				: var(--font-family);
	content					: '';
	position				: fixed;
	top						: 0;
	right					: 0;
	bottom					: 0;
	left					: 0;
	width					: calc(100% + 6px);
}

*, *:before, *:after {
	box-sizing				: inherit;
	scrollbar-width			: auto;
}

html, body {
	margin					: 0;
	padding					: 0;
	overflow-x				: hidden;
}

a, a:visited, a:active, a:focus {
	color					: inherit;
	text-decoration			: none;
	border					: 0px;
	outline					: 0px;
}

ul{ 
  list-style-type			: none;
}

button {
	background-color		: initial;
	border					: 0;
}

table {
	font-size				: inherit;
}

textarea {
	color					: inherit;
	background				: none;
	border					: 1px solid var(--border-color);
}

/*
				END ELEMENT-LEVEL FORMATTING				

*/

.html-container {
	display					: flex;
	flex					: 1;
	min-height				: 100%;
	position				: relative;
	overflow				: hidden;
}

.html-footer {
	position				: absolute;
	bottom					: 0;
	width					: 100%;
	height					: 20px;   /* Height of the footer */
}

/*
		LOGIN MODAL FORMATTING

*/

#login_modal {
	background-color:rgba(0,0,0,0.65);
}

#login_modal .modal-content {
	box-shadow:0px 0px 25px 5px rgba(0,0,0,0.25);
	background-color:rgba(255,255,255,0.85);
	margin: 50px calc(50% - 175px); 
}

#login_modal button {
	box-shadow					: 0px 10px 5px -9px;
	background-color			: #f0ca00;
	cursor						: pointer;
	transition					: all 150ms ease;
}

#login_modal button:hover {
	box-shadow					: 0px 15px 6px -10px rgba(0,0,0,0.5);
    transform					: scale(1.025);
    transition					: all 150ms ease;
}

#login_modal button:active {
    box-shadow					: none;
    transform					: scale(0.975);
    filter						: brightness(0.95);
    transition					: all 150ms ease;
}

#login_modal input:hover,
#login_modal input:focus {
	background-color			: #faf2d2;
}

#login_modal .modal-close {
	filter						: brightness(30%);
}

/*
		CONTAINER FORMATTING

*/

.container {
	border-radius				: 0px !important;
}

/*	12/27/17 PS: VERTICAL NAV BAR */
.container-header {
	clear						: both;
	width						: 150px;
	height						: 100%;
	min-height					: 425px;
	position					: fixed;
	z-index						: 3;															/*	.modal IS SET TO 2, BOTH OF WHICH ARE LOWER THAN ALERTIFY */
	max-width					: 99999;
	overflow					: visible;
}

.container-header .dropdown-header:hover + .dropdown-list,
.container-header .dropdown-list:hover {
	max-height					: 350px;
}

.container-header .dropdown-list {
	width						: calc(100% - 10px);
}

.container-header .dropdown-list > li {
	white-space					: nowrap;
	padding						: 5px;
}


.container-header span.username {
	display						: block;
	text-align					: center;
	overflow					: hidden;
	font-weight					: bold;
}

.container-header span.vw-menu {
	color						: #FFFFFF99;
	cursor						: pointer;
	margin-bottom				: 10px;
	transition					: color 250ms ease;
}

.container-header span.vw-menu:hover,
.container-header span.vw-menu:hover i {
	cursor						: pointer;
	color						: #fefefe;
	transition					: color 250ms ease;
}

#account_select:not(:hover) + #account_list {
	border						: none !important;
}

div#main_header_logo {
	width						: 100%;
	height						: 29px;
    border						: 0;
    outline						: 0;

}

.hrefLink {
	text-decoration				: underline;
	color						: var(--href-link-color) !important;
}

.expired {
	text-decoration				: line-through;
	color						: orange;
	opacity						: 0.6;
}

/* 12/8/18 PS: STYLING enduser_meter_table HERE */
.admin-table tbody > tr.active {
	font-weight					: bold;
}

#enduser_meter_table tr > *,
#adminSolarList tr > * {
	text-align					: left;
}

#enduser_meter_table tr > :nth-child(n - 7) {
	width						: calc(100% / 8 + 35px / 8);
}

#enduser_meter_table tr > :nth-child(4) {
	max-width					: 95px;
}

#enduser_meter_table tr > :nth-child(5) {
	max-width					: 50px;
}

#enduser_meter_table tr > :nth-child(9) {
	min-width					: 300px;
}

#adminSolarList tr > :last-child,
#enduser_meter_table tr > :last-child {
	min-width					: 35px;
	max-width					: 35px;
	text-align					: center;
}

#adminSolarList tr > :nth-child(2) {
	min-width					: 40%;
}

#adminSolarList tr > :nth-child(3) {
	max-width					: 90px;
}

#adminSolarList tr > :nth-child(4) {
	padding-right				: 10px;
	text-align					: center;
	min-width					: 70px;
}

#adminSolarList tr > :nth-child(5) {
	text-align					: right;
}

#adminSolarList tr > *:nth-child(6) {
	text-align					: right;
	padding-right				: 10px;
}


#adminSolarList tr > :first-child,
.numbered-table tr > :first-child,
.edit-table tr > :last-child {
	min-width					: 30px;
	text-align					: center !important;
	padding-right				: 0px !important;
	max-width					: 30px;
}

#acctSystemTable tr > :last-child {
	max-width					: initial;
	text-align					: right !important;
	padding-right				: 15px !important;
	max-width					: 120px;
}

#enduser_meter_table tbody > tr,
#adminSolarList tbody > tr > td {
	cursor						: pointer;
}

/* 12/8/18 PS: END enduser_meter_table STYLING */

/* 12/11/18 PS: adminSolarMetaDetail STYLING */

#adminSolarMetaDetail > .inner-div-admin > div > div {
	display						: flex;
	overflow					: hidden;
	padding-left				: 3px;
}

#adminSolarMetaDetail > .inner-div-admin > div > div:hover {
	background-color			: var(--tab-hover-background);
}

#adminSolarMetaDetail > .inner-div-admin > div > div > span {
	flex						: 0 0 105px;
	font-weight					: bold;
	line-height					: 25px;
	white-space					: nowrap;
}


#adminSolarMetaDetail > .inner-div-admin > div > div > input {
	padding-left				: 3px;
}

#adminSolarMetaDetail > .inner-div-admin > div > div > select,
#adminSolarMetaDetail > .inner-div-admin > div > div > input {
	flex						: 0 0 calc(100% - 100px);
	background					: none;
	border						: none;
	border-bottom				: 1px solid;
}

#adminSolarMetaDetail > .well-head > i {
	opacity						: 0.5;
	transition					: opacity 150ms ease;
}

#adminSolarMetaDetail > .well-head > i:hover {
	opacity						: 1.0;
	transition					: opacity 150ms ease;
}

/* 12/11/18 PS: END adminSolarMetaDetail STYLING */

/* 12/13/18 PS: adminSolarDates STYLING */

#adminSolarDates tr > :first-child,
#adminSolarDates tr > :nth-child(2),
#adminSolarDates tr > :nth-child(6) {
	min-width					: 55px;
	max-width					: 10%;
	text-align					: center;
}

#adminSolarDates tbody > tr > td:nth-child(5) {
	text-align					: center;
}

#adminSolarDates tbody > tr > td:nth-child(5) > input {
	width						: 20px;
}

#adminSolarDates tr > td {
	line-height					: 27px;
}

#adminSolarDates tr > td > span {
	display						: block;
	padding-right				: 23px;
	text-align					: right;
}

.trueUpMonth {
	border-top					: 1px solid;
	height						: 27px !important;
}


/* 12/13/18 PS: END adminSolarDates STYLING */

/* 12/14/18 PS: NEM YEAR DATES AND METERS EDIT MODAL STYLING */

#solarMeterDateYear > div {
	display						: flex;
	margin-bottom				: 5px;
}

#solarMeterDateYear > div > * {
	flex						: 1 0 125px;
	padding						: 5px;
	min-width					: 0px;
}

#solarMeterDateYear > div > span:first-child {
    background-color			: var(--modal-header-background);
    color						: var(--modal-header-color);
}

#solarMeterDateYear > div > :nth-child(2) {
	text-align					: right;
}

#solarMeterDateYear > div > span:nth-child(2) {
	cursor						: default;
}

/* 12/14/18 PS: END NEM YEAR DATES AND METERS EDIT MODAL STYLING */

#enduser_utility_table td:first-child > a {
	color						: #CCC !important;
}

#enduser_utility_table td:first-child > a:hover {
	color						: #222 !important;
}
.container-body {
	border-radius				: 0px !important;
	padding-left				: 150px;
}


.container-footer {
	width						: 100%;
	text-align					: right;
	font-size					: 12px;
	margin						: 0 auto;
	margin-bottom				: 0px;
	padding						: 0px 10px;
}

.container-footer,
.container-footer > a {
	color						: rgba(255,255,255,0.8);
	text-shadow					: 1px 1px 2px rgba(0,0,0,0.5);
}

#meterSourceDataModal table tr > td:nth-of-type(n + 3) {
	text-align					: right;
	padding-right				: 5px;
}

#meterSourceDataModal td > span {
    margin						: 0px 3px;
    cursor						: pointer;
}


/*
		END CONTAINER FORMATTING

*/

.tab-pane {
	display				: none;
}

.tab-pane.active {
	max-width			: calc(100vw - 155px);
	display				: flex;
	flex-direction		: column;
	flex				: 1;
}

/*
	PARTNER PORTAL: TICKETING

*/

#ticketListBody > div > span:nth-of-type(n - 3) {
	width				: 80px;
	white-space			: nowrap;
}

#ticketListBody > div > span:nth-of-type(3) {
	width				: calc(100% - 250px);
	padding-left		: 10px;
}

#ticketListBody > div {
	font-size			: 11pt;
	height				: 30px;
	display				: flex;
	padding-top			: 5px;
	padding-left		: 10px;
}

#ticketListBody > div:nth-of-type(2n) {
	background			: rgba(255,255,255,0.1);
}

#ticketListBody > div.active {
	border				: 1px solid yellow;
}

/*
	PARTNER PORTAL: ACCOUNTS & USERS FORMATTING

*/

#accountTable tbody > tr > td:nth-of-type(2),
#accountTable thead > tr > th:nth-of-type(2) {
	min-width			: 220px;
}

#accountTable td:nth-last-of-type(-n + 3) {
	text-align			: right;
	padding-right		: 10px;
}

#accountTable tbody > tr {
	cursor				: pointer;
}

#userTable tr > :nth-of-type(2),
#userTable tr > :nth-of-type(3) {
	text-align			: left;
}

#userTable tr > :nth-child(4) {
	flex				: 0 0 85px;
	text-align			: right;
	padding-right		: 20px;
}

#adminUtilityCredentialsTable tr > :nth-child(2) {
	max-width			: 100px;
}

#adminUtilityCredentialsTable tr > :nth-child(2),
#adminUtilityCredentialsTable tr > :nth-child(3) {
	text-align		: left;
}

#adminUtilityCredentialsTable tr > :nth-child(4) {
	max-width		: 100px;
	text-align		: right;
	padding-right	: 15px;
}

#accountNotes {
	display			: flex;
}

#accountNotes table > tbody > tr,
#updateEmailModal table > tbody > tr {
	cursor			: pointer;
}

#accountNotes table tr > :nth-child(2) {
	text-align		: left;
	max-width		: 35px;
}

#accountNotes table tr > :nth-child(3),
#accountNotes table tr > :nth-child(4) {
	text-align		: right;
	max-width		: 90px;
	padding-right	: 15px;
}

#accountNotes table tr > :nth-child(5) {
	max-width		: 1000px;
	text-align		: left !important;
}

#updateEmailTable tr > :nth-child(1) {
	width			: 90%;
}

.fa-tag,
.fa-sticky-note,
.fa-envelope {
	font-size		: 16pt;
	color			: white;
	opacity			: 50%;
	filter			: drop-shadow(3px 7px 3px #555);
	cursor			: pointer;
	transition		: all 200ms ease;
}

.fa-tag:hover,
.fa-sticky-note:hover,
.fa-envelope:hover {
	opacity			: 90%;
	color			: yellow;
}

#user_login_log td:first-child {
	text-align		: right;
	padding-right	: 10px;
}

.tagIcon,
.plugIcon,
.sunIcon,
.alertIcon {
	cursor			: pointer;
}

.tagIcon:before,
.plugIcon:before,
.sunIcon:before,
.alertIcon:before {
	font-family		: "Font Awesome 5 Free";
	font-weight		: 600;
	font-size		: 18px;
}

.tagIcon:before {
	content			: '\f02b';
}

.plugIcon:before {
	content			: '\f1e6';
}

.sunIcon:before {
	content			: '\f185';
}

.alertIcon:before {
	content			: '\f06a';
}


/* PARTNER PORTAL ACCOUNTS & USERS ICONS - PENCIL AND DELETE */
.pencil {
	display			: block;
	text-decoration	: none !important;
	opacity			: 0.4;
	cursor			: pointer;
	transition		: opcity 150ms ease;

}

.pencil:after {
	font-family		: "Font Awesome 5 Free";
	font-weight		: 600;
	content			: '\f303';
	font-size		: 16px;
}

.pencil:hover {
	opacity			: 0.85;
	transition		: opacity 150ms ease;
}

.trashCan {
	cursor			: pointer;
}

.trashCan:after {
	font-family		: "Font Awesome 5 Free";
	font-weight		: 600;
	content			: '\f2ed';
	cursor			: pointer;
	opacity			: 0.4;
	transition		: opacity 150ms ease;
}

.trashCan:hover:after {
	opacity			: 0.9;
	transition		: opacity 150ms ease;
}

/* 
	END PARTNER PORTAL: ACCOUNTS & USERS FORMATTING

*/


/*

	PARTNER PORTAL - EDIT METER GROUP MODAL FORMATTING

 */

#edit_system_modal input[type=date] {
	width				: initial;
}

#edit_system_modal .input-section > div > span {
	flex				: 1 0 50%;
}

input, textarea, select, button {
	font-family			: inherit;
}

input {
	border				: initial;
	color				: inherit;
}

td > input:not([type=checkbox]) {
	height				: 26px;
}

input:disabled {
	background-color	: #B8B8B8 !important;
	color				: #444;
	cursor				: default !important;
}


input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button, 
input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-out-spin-button { 
  -webkit-appearance	: none;
  margin				: 0;
  cursor				: pointer;
}

input[type=date]::-webkit-calendar-picker-indicator {
	display				: none;
}

#adminSolarDates input[type=date]::-webkit-calendar-picker-indicator,
#updateEmailModal input[type=date]::-webkit-calendar-picker-indicator,
#batchApproveModal input[type=date]::-webkit-calendar-picker-indicator,
#sysInverterMetrics input[type=date]::-webkit-calendar-picker-indicator {
	display				: initial !important;
}

::-webkit-clear-button
{
    display: none; /* Hide the button */
    -webkit-appearance: none; /* turn off default browser styling */
}

input,
input:hover {
	cursor				: text;
}

input[type=range]{
	-webkit-appearance	: none;
	outline				: 0px;
	border				: 0px;
	cursor				: pointer;
}

input[type=range]::-webkit-slider-runnable-track {
	width				: 300px;
	height				: 10px;
	border				: none;
	background-color	: #ddd;
}

input[type=range]::-webkit-slider-thumb {
	-webkit-appearance	: none;
	border				: none;
	height				: 20px;
	width				: 15px;
	
	margin-top			: -5px;
}

input[type=range]::-webkit-slider-thumb:hover {
	-webkit-appearance	: none;
	border				: none;
	height				: 20px;
	width				: 15px;
	margin-top			: -5px;
}

input[type=range]::-ms-track {
  width					: 100%;
  height				: 6px;
  cursor				: pointer;
  background			: transparent;
  border-color			: transparent;
  border-width			: 5px 0;
  color					: transparent;
}
input[type=range]::-ms-fill-lower {
  background			: #EEEE33;
  border				: 0.2px solid #010101;
  box-shadow			: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
}

input[type=range]::-ms-fill-upper {
  background			: #ffffff;
  border				: 0.2px solid #010101;
  box-shadow			: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
}
input[type=range]:focus::-ms-fill-upper {
  background			: #ffffff;
}

input[type=range]::-ms-thumb {
  border				: 0px solid #000000;
  height				: 25px;
  width					: 15px;
  cursor				: pointer;
}

input[type=checkbox] {
	cursor				: pointer;
	box-shadow			: none !important;
}

H5, H4, H3, H2 {
	margin-top			: 10px;
}

H4 {
	margin-bottom		: 5px;
	font-weight			: bold;
}

table {
	border-collapse		: collapse;
}


select {
	height				: 25px;
	border				: none;
}


input[type=date],
select:hover:not(:disabled) {
	cursor				: pointer;
}

select option {
	background-color	: white;
}

select:active, select:focus {
	box-shadow			: 0;
}

/*
		NO SELECTING

*/


divhead,
.tray-title
.tray-container,
.tray-head,
.tray,
.tray-sub,
.div-header,
.nav,
.vw-menu,
.vw-menu-drop {
  -webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none; /* Safari */
	 -khtml-user-select: none; /* Konqueror HTML */
	   -moz-user-select: none; /* Firefox */
		-ms-user-select: none; /* Internet Explorer/Edge */
			user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
}

/*
	BLACKOUT

*/

.blackOut {
	display				: none;
	position			: fixed;
	left				: -1000px;
	min-width			: 5000px;
	width				: 300%;
	top					: -1000px;
	min-height			: 5000px;
	height				: 500%;
	z-index				: 3;
	background-color	: rgba(0,0,0,0.65);
}

.select-one-meter {
  background			: rgba(0,0,0,0.5) !important;
  transition			: background-color 0.5s ease;
  position				: absolute;
  overflow				: hidden;
  width					: 100%;
  height				: 100%;
  top					: 0;
  left					: 0;
  border				: 0;
  padding-top			: 100px !important;
  text-align			: center;
}

.select-one-meter:hover {
  background			: rgba(0,0,0,0.3);
}

/*
	BLUR CLASS

*/

.blurSome {
	filter				: blur(3px) !important;
	overflow			: hidden;
}

.blurMore {
	filter				: blur(5px) !important;
	overflow			: hidden;
}

/*
	LOADING DIV

*/

.unavailable {
	background			: var(--background-color-half);
	text-align			: center;
}

.apiOnlyCover,
.unavailable,
.loading-div {
	padding-top			: 100px;
	position			: absolute;
	width				: 100%;
	height				: 100%;
	z-index				: 1;
}

@keyframes updateLoading {
	25% {
		content			: "Loading";
		color			: var(--loading-bright);
		transtion		: color 375ms ease;
	}
	50% {
		content			: "Loading.";
		color			: var(--loading-dim);
		transtion		: color 375ms ease;
	}
	75% {
		content			: "Loading..";
		color			: var(--loading-bright);
		transtion		: color 375ms ease;
	}
}

.apiOnlyCover::after,
.loading-div::after {
	width				: 100%;
	height				: 100%;
	display				: block;
}

.loading-div::after {
	padding-left		: calc(50% - 50px);
	content				: "Loading...";
	animation			: updateLoading 1.5s linear infinite;
	transtion			: color 375ms ease;
}

.apiOnlyCover {
	background-color	: rgba(0,0,0,0.75);
}

.apiOnlyCover::after {
	text-align			: center;
	content				: "Not Availabe for API accounts.";
	font-size			: 35px;
}


/*
	END LOADING DIV

*/


/*	CURRENTLY USED EXCLUSIVELY FOR DOWNLOAD / EXPORT IN E&D AND C&S */
.circ-div {
	cursor				:pointer;
	border-radius		:50%;
	position			: absolute;
    background-color	: rgb(255, 255, 255);
    opacity				: 0.35;
    width				: 40px;
    height				: 40px;
    text-align			: center;
    right				: 7.5;
    top					: 7.5;
    z-index				: 1;

    transition			:opacity 150ms ease;
}

.circ-div:hover {
	opacity				:0.8;
	transition			:opacity 150ms ease;
}

.circ-div > i {
	margin-top			: 10;
    font-size			: 16pt;
}


.admin-table {
	width				: calc(100% + 1px);
	border				: 0 !important;
	height				: 100%;
	overflow			: hidden;
}

.admin-table thead {
	background-color	: rgba(0,0,0,0.3);
}

.admin-table thead,
.admin-table tbody {
	display				: block;
	width				: 100%;
}

.admin-table tbody {
	height				: calc(100% - 26px);
	overflow-y			: scroll;
}

.admin-table thead > tr {
	width				: calc(100% - 6px);
}

.admin-table tr {
	display				: flex;
}

.admin-table tbody > tr {
	min-height			: 26px;
}

.admin-table.spreadsheet tbody > tr {
	height			: 26px;
	padding				: 0px;
}

.admin-table td,
.admin-table thead > tr:last-child > th,
#datesRatesBillTable thead > tr > th {
	overflow			: hidden;
	white-space			: nowrap;
	width				: 100%;
}

.admin-table th {
	text-align			: center;
	cursor				: default;
	white-space			: nowrap;
}

.admin-table td {
	text-overflow		: ellipsis;
}

.admin-table th:last-child,
.admin-table td:last-child {
	border-right		: 0;
}

.admin-table tbody tr:hover {
	cursor				: default;
}

/* INPUT TABLE */

.input-table input:not(:disabled),
.input-table select:not(:disabled) {
	box-shadow			: 0px 0px 8px 2px #DDD inset, 0px 0px 0px #FFF !important;
}

.input-table input:hover:not(:disabled),
.input-table select:hover:not(:disabled) {
	border				: 1px solid #BBB !important;
	box-shadow			: 0px 0px 8px 2px #CCC inset, 0px 0px 0px #FFF !important;
	
}


.input-table {
	border				: 0;
	font-size			: 16px;
	width				: 100%;
	height				: 100%;
	table-layout		: fixed;
}

.input-table th,
.input-table td {
	white-space			: nowrap;
	overflow			: hidden;
	text-overflow		: hidden;
	width				: 100%;
	padding				: 8px;
	border				: 1px solid lightgray;
	background-color	: #EFEFEF;
}

.input-table td:nth-child(2),
.input-table td:nth-child(2) > input {
	text-align			: right;
}

.input-table input,
.input-table select {
	border				: 1px solid lightgray;
	padding				: 5px 10px;
	width				: 100%;
	height				: 100%;
	text-align			: right;
	outline				: 0px;
}
/* END INPUT TABLE */

.text-box {
	height				: 25px;
	padding				: 5px 5px;
	margin				: 5px;
	vertical-align		: center;
	font-family			: arial;
	font-size			: 13px;
	line-height			: 1.2;
	text-align			: center;
}

/* FALSE TABLES FOR FIXED HEADERS */
.table-header-row {
	display				: flex;
}

.table-header {
	font-weight			: bold;
	font-size			: 12px;
	text-align			: center;
	line-height			: 25px;
	height				: 25px;
	white-space			: nowrap;
}

.table-header-2 {
	font-weight			: bold;
	font-size			: 12px;
	text-align			: center;
	line-height			: 25px;
	height				: 25px;
	white-space			: nowrap;
}

.table-body {
	width				: 100%;
	overflow-y			: auto;
}


.account-entry-table {
	min-width			: 385px;
	border-collapse		: collapse;
	padding				: 15px;
}

.account-entry-table td {
	white-space			: nowrap;
	padding				: 2px 5px;
	width				: 200px;
	font-size			: 13px;
}

.account-entry-table input,
.account-entry-table select {
	text-align-last		: right;
}

.account-entry-table option {
	direction			: rtl;
}

.account-entry-table input {
	font-size			: 13px;
	padding				: 3px;
	max-width			: 100%;
	float				: right;
}

.account-entry-table select {
	font-size			: 13px;
	padding				: 1px;
	max-width			: 100%;
	float				: right;
}


/* SLIDER SWITCH */

.switch {
  position				: relative;
  display				: inline-block;
  width					: 18px;
  height				: 29px;
}

/* Hide default HTML checkbox */
.switch input {
	display				: none;
}

/* The slider */
.slider {
  position				: absolute;
  cursor				: pointer;
  top					: 0;
  left					: 0;
  right					: 0;
  bottom				: 0;
  -webkit-transition	: .4s;
  transition			: .4s;
}

.slider:before {
  position				: absolute;
  content				: "";
  height				: 12px;
  width					: 12px;
  left					: 2px;
  bottom				: 2px;
  -webkit-transition	: .4s;
  transition			: .4s;
}

input:checked + .slider:before {
	-webkit-transform	: translateY(-11px);
	-ms-transform		: translateY(-11px);
	transform			: translateY(-11px);
}

::-webkit-scrollbar {
	width				: 6px;
	height				: 6px;
	background-color	: rgba(255,255,255,0.25);
	margin-top			: -1px;
	border				: 0px;
}

::-webkit-scrollbar-thumb {
	background-color	: rgba(255,255,255,0.35);
	cursor				: pointer;
}

::-webkit-scrollbar-thumb:hover {
	cursor				: grab;
	background-color	: rgba(255,255,255,0.5);
}


/* END SLIDER SWITCH */

.form-control {
	border-radius		: 0px !important;
}

.btn-header {
	border-radius		: 0px !important;
	margin-right		: 5px !important;
	margin-bottom		: 1px !important;
	font-size			: 14px !important;
	font-weight			: bold !important;
	border				: 0px !important;
	padding				: 5px !important;
}

.btn-header:hover {
	margin-right		: 5px !important;
	margin-top			: -1px !important;
	margin-bottom		: 0px !important;
}

.btn-header:active {
	margin-right		: 5px !important;
	margin-top			: 0px !important;
	margin-bottom		: 1px !important;
}

.btn-primary {
	height				: 25px;
	margin				: 0px 0px 1px 0px;
	padding				: 0px 15px;
	border				: 0px;
	outline				: 0px !important;
	background-color	: rgba(0,0,0,0.2);
	color				: #EFEFEF;
	-webkit-appearance	: none;
	border-radius		: 0px !important;
	cursor				: pointer;
	line-height			: 1;
	text-shadow			: 1px 1px 0 rgba(0,0,0,.5);
	box-shadow			: 0px 5px 5px -4px rgba(0,0,0,0.5);
	-webkit-appearance	: none;
	transition			: background-color 150ms ease, color 150ms ease;
}

.btn-primary:active {
	margin				: 1px 0px 0px 0px;
	box-shadow			: none;
}

.btn-primary:hover {
	border-radius		: 0px !important;
	background-color	: rgba(255,255,255,0.15);
	transition			: background-color 150ms ease, color 150ms ease;
}

.disabled-link, .disabled-link:hover, .disabled-link:focus, .disabled-link:active, .disabled-link:focus:hover {
	opacity				: 0.85;
	filter				: saturate(10%);
	text-decoration		: none;
	cursor				: not-allowed;
	pointer-events		: none;
}

.disabled-btn, .disabled-btn:hover, .disabled-btn:focus, .disabled-btn:active, .disabled-btn:focus:hover {
	border				: 0 !important;
	background-color	: #00000026 !important;
	color				: #D8D8D8 !important;
	cursor				: not-allowed;
	box-shadow			: 0 0 0 white !important;
	-moz-box-shadow		: 0px !important;
	-webkit-box-shadow	: 0px !important;
}


/*
		HAMBURGER MENU STYLING

*/

/* 8/16/17 PS: ADDED TODAY SPECIFICALLY FOR THE DATA PROCESSING DROPDOWN MENU */
.vw-menu {
	cursor				: pointer;
	font-size			: 18px;
	text-align			: center;
	display				: inline-block;
}

.vw-menu-drop {
	display				: none;
	position			: absolute;
	margin				: 2px 5px 0px 0px;
	cursor			 	: default;
	min-width			: fit-content;
	z-index				: 2;
}

.vw-menu-drop.menu-flex {
	display				: flex;
}

.vw-menu-drop.menu-flex > div {
	position			: relative;
}

.vw-menu-drop a {
	display				: flex;
	width				: 100%;
	white-space			: nowrap;
	text-align			: left;
	padding				: 10px;
	cursor				: pointer;
	transition			: all 150ms ease;
	-webkit-transition	: all 150ms ease;
}

.vw-menu-drop.adminMenu a {
	justify-content		: space-between;
}

.vw-menu-drop i {
	margin-left			: 15px;
}

.vw-menu-drop .disabled-link,
.vw-menu-drop .disabled-link * {
	color				: #888 !important;
}

.vw-menu-drop > a.header {
	cursor				: default;
	padding				: 5px;
}

.add_mon_csv,
.get_solar_monitoring_data,
.downloadMonitoringData,
.get_utility_api_data,
.upload_utility_intervals,
.gen_est_ints,
.dl-csv {
	cursor				: pointer;
}

/*		
		kiloBlockED <nav>

*/

nav[mega] {
	top					: 0px;
    left				: 0px;
    height				: 100%;
    width				: 100%;
    background-color	: rgba(255, 255, 255, 0.35);
    z-index				: 2;
    display				: block;
    padding				: 10%;
    font-size			: 13pt;
    font-weight			: bold;
    color				: black;
    text-align			: left;
    display				: none;
}



/*
		OPTION BUTTON FORMATTING (BOTH RADIO AND CHECK)

*/

.btn-group {
	display				: flex;
}

.btn-group label {
	border-radius		: 0px;
	outline				: 0;
	height				: 25px;
	font-size			: 13px;
	cursor				: pointer;
	font-weight			: normal;
	font-size			: 10pt;
	background-color	: rgba(0,0,0,0.25);
	text-align			: center;
	box-shadow			: 0px 3px 5px -2px rgba(100,100,100,0.5);
	color				: #c2c2c2;
	line-height			: 24px;
	margin-left			: 1 ;
}

.btn-group label:hover {
	background-color	: rgba(255,255,255,0.1);
	border-radius		: 0px;
}

.btn-group label:active {
	box-shadow			: 0;
	box-shadow			: inset 0px 0px 5px #222222;
}

.btn-group label.active {
	color				: #e9e9e9;
}

.btn-group label.active:hover {
	color				: white;
}

/*		THIS GETS RID OF THE CIRCLE AND SQUARES NEXT TO RADIO AND CHECKBOX INPUTS 		*/
.btn-group input[type="checkbox"],
.btn-group input[type="radio"],
input[type="radio"] {
	display				: none;
	margin				: 0 auto;
}

/*
		OPTION BUTTON FORMATTING (BOTH RADIO AND CHECK)

*/



/*
		DROP DOWN MENUS

*/

button.dropdown-header {
	padding				: 1px 3px;
	white-space			: nowrap;
}

button.dropdown-header:after {
	content				: '\25BC';
	font-size			: 7pt;
	float				: right;
	margin-top			: 2px;
	padding-left		: 5px;
	transform			: scaleY(0.75);
}

button.dropdown-header,
ul.dropdown-list {
	background-color	: inherit;
	color				: inherit;
	cursor				: pointer;
	font-size			: inherit;
}

ul.dropdown-list {
	max-height			: 0px;
	margin				: 0px;
	position			: absolute;
	padding				: 0px 5px !important;
	z-index				: 3;							/* 7/21/20 PS: UPDATED TODAY BECAUSE INFO BOX WAS OVER COMPARE DROP-DOWN ON FRONT-END DATA ANALYSIS */
	overflow			: hidden;
	transition			: max-height 250ms ease, padding 250ms ease;
}


button.dropdown-header:hover + .dropdown-list,
.dropdown-list:hover {
	max-height			: 200px;
	padding				: 5px 5px !important;
	height				: fit-content;
	overflow			: auto;
	filter				: drop-shadow(0px 3px 5px rgba(0,0,0,1));
	transition			: max-height 250ms ease, padding 250ms ease, filter 250ms ease;
	animation			: 500ms delay-overflow;
}


/* 10/14/18 PS: DELAYS THE OVERFLOW PROPERTY SO THAT IF THE LIST IS LONG ENOUGH, THE SCROLLBAR NEVER SHOWS WHILE RENDERING THE 250ms EASE OUT */
@keyframes delay-overflow {
	from {
		overflow : hidden;
	}
}



.btn-group label.active {
	box-shadow			: inset 0 3px 7px rgba(0, 0, 0, .4);
	transition			: background-color 150ms ease, color 150ms ease;
}

.btn-group label:not(.active):hover {
	color				: white;
	transition			: background-color 150ms ease, color 150ms ease;
}

/* DROP-DOWN LIST WITH CHECKBOXES */
.drop-check ul > li.unchecked > a {
	color				: #868686 !important;
}

.drop-check ul > li {
	position			: relative;
}

.drop-check ul > li > a:first-child {
	position			: absolute;
	left				: 5;
	top					: 7;
}



/*
		END DROP DOWN MENUS

*/

/*
	JQUERY UI TOOLTIP

*/

.ui-tooltip {
    text-align			: center;
    box-shadow			: none;
    opacity				: 1;
    border				: 0;
    padding				: 0;
}

.ui-tooltip-content {
	background-color	: rgba(0,0,0,0.7);
	color				: #EFEFEF;
	padding				: 3 5;
}

.ui-tooltip-content::after, .ui-tooltip-content::before {
    content				: "";
    position			: absolute;
    border-style		: solid;
    display				: block;
    left				: calc(50% - 10px);
}

.bottom .ui-tooltip-content::before,
.top .ui-tooltip-content::before {
    opacity				: 0;
}

.bottom .ui-tooltip-content::after {
    bottom				: -10px;
    border-color		: rgba(0,0,0,0.7) transparent;
    border-width		: 10px 10px 0;
}


/*
	END JQUERY UI TOOLTIP
*/


.tooltipx {
	position			: relative;
	display				: inline-block;
	white-space			: nowrap;
}

.tooltipx .tooltiptextx {
	visibility			: hidden;
	text-align			: left;
	padding				: 5px 5px;
	
	/* Position the tooltip */
	position			: absolute;
	z-index				: 111;
	bottom				: 100%;
	width				: 260px;
	margin-left			: -130px;
	font-size			: 11px;
	box-shadow			: 0px 15px 10px -10px #aaaaaa;
	opacity				: 0;
	transition			: opacity 1s;
}

.tooltipx:hover .tooltiptextx {
	visibility			: visible;
	opacity				: 0.95;
}

.tooltiptextx {
	white-space			: normal !important;
}

/*
		INFO FORMATTING

*/

.info-icon {
	cursor				: pointer;
	display				: inline-block;
	margin				: 1px 10px 0px 0px;
	color				: blue !important;
	border-radius		: 20px;
	background-color	: white;
	width				: 23px;
	text-align			: center;
	border				: 1px solid darkgray;
	font-size			: 21px;
	vertical-align		: top;
}

.info-pane-container {
	display				: none;
	position			: fixed;
	padding				: 25px;
	top					: 0;
	left				: 0;
	width				: 100%;
	height				: 100%;
	background-color	: rgba(0,0,0,0.5);
	z-index				: 99999;
}

.info-close {
	float				: right;
	line-height			: 0.5;
	color				: #efefef;
	font-size			: 40px;
	text-shadow			: 0px 0px 10px black;
	cursor				: pointer;
}

.info-close:after {
	content				: "\2612";
}

.info-pane {
    margin				: 25;
    padding				: 20px;
    background-color	: lightgray;
    width				: calc(100% - 50px);
    height				: calc(100% - 50px);
    min-width			: 600px;
    min-height			: 400px;
}

.info-title {
	font-size			: 18px;
	font-weight			: bold;
}

.info-pane-content {
	font-size			: 15px;
	padding				: 20px;
	height				: calc(100% - 28px);
	width				: 100%;
	overflow-x			: hidden;
	overflow-y			: scroll;
	background-color	: #efefef;
	z-index				: 100000;
}

.info-pane-content ul > li {
	line-height			: 2;
}

/*		
		END INFO FORMATTING

*/


/*
		MAIN HEADER BAR IN EACH SECTION 

*/

.section-header { 
	display				: flex;
	height				: 41px;
	background-color	: rgba(255,255,255,0.2);
	flex-wrap			: wrap;
	width				: 100%;
	z-index				: 2;
	justify-content		: space-between;
}

.section-header > div {
	padding:8px;
}

.section-header > span {
	font-weight:bold;
}

/*
		END MAIN HEADER BAR

*/



/*		
		MAIN WELL FORMATTING

*/

.well-main {
	flex				: 1;
	flex-wrap			: wrap;
	display				: flex;
	min-height			: fit-content;
	padding				: 5px;
}

.well {
	display				: flex;
	min-width			: 0;
	overflow			: hidden;
	flex-direction		: column;
	margin				: 5px;
}

.well > div:nth-child(2) {
	padding				: 5px;
}

span.well-head {
	display				: flex;
	position			: relative;
	background-color	: rgba(0,0,0,0.4);
	justify-content		: space-between;
	align-items			: center;
	height				: 30px;
	min-height			: 30px;
	padding				: 5px;
	transition			: background-color 150ms ease;
}

span.well-head > .fa-angle-double-right {
	font-size			: 21pt;
	line-height			: 0.7;
}

.well:hover span.well-head {
	transition			: background-color 150ms ease;
}

span.well-head + div {
	position			: relative;
	height				: calc(100% - 30px);
	width				: 100%;
	padding				: 0;
	border				: 0;
	display				: flex;
}

span.well-head > a {
	display				: flex;
	align-items			: center;
	text-overflow		: ellipsis;
	overflow			: hidden;
	white-space			: nowrap;
	max-width			: 100%;
}

div.well-head {
	position			: relative;
	background-color	: rgba(0,0,0,0.25);
	display				: flex;
	flex				: 0 0 35px;
	max-height			: 35px;
	justify-content		: space-between;
	padding				: 8px 10px;
	width				: 100%;
	margin-top			: -1px;
}


.well-inner {
	padding				: 0px;
	display				: flex;
}

.well-main > div {
	transition			: background-color 150ms ease;
}

.detail-well {
	filter				: opacity(1);		/* 	NO IDEA WHY, BUT THIS FILTER IS ALLOWING DROP-DOWN MENUS TO BE PROPERLY POSITIONED */
	position			: relative;
}

/*
		END WELL FORMATTING

*/

/* 	WELL TRAY HANDLE FORMATTING */

.tray-handle {
    height: 30px;
    width: 15px;
    right: -15px;

    top: calc(50% - 30px);
    border: 0 !important;
    position: absolute;
    background-color:rgba(255,255,255,0.2);
    cursor:pointer;
    z-index:1;

    transition: width 500ms ease, right 250ms ease;
}

.tray-handle.long {
	width: 290px;
	transition: width 500ms ease, right 250ms ease;
}


.tray-handle:hover {
	background-color:rgba(255,255,255,0.3);
	transition:background-color 150ms ease;
}

.tray-handle > span {
    font-size: 16pt;
    text-align: right;
    display: block;
    width: 10px;
    white-space: nowrap;
    color: #FFFFFF44;
    line-height: 28px;
    width:calc(100% - 5px);
    transform:rotate(180deg);
    padding:5 0;
 }


.tray-handle > span:before {
	font-family: "Font Awesome 5 Free";
	content: "\f0da";
	font-weight:bold;
	line-height:20px;
}
/*  END WELL TRAY HANDLE FORMATTING


span.progress {
	height:20px;
	background-color:#d6d6d6;
	box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5) inset;
	display:flex;
	width:100%;
	padding:0;
}

span.progress > span {
	width:0%;
	height:100%;
	background: repeating-linear-gradient(
	  135deg,
	  #28a745,
	  #28a745 8px,
	  #63bf79 8px,
	  #63bf79 16px
	);
	padding-left:3px;
	color:white;
	font-weight:bold;
	text-shadow:1px 1px 1px #0c440e;
	text-align:center;

	transition:width 350ms ease;
}

.bottom-float-parent {
	-moz-transform:rotate(-90deg);
	-webkit-transform:rotate(-90deg);
	-o-transform:rotate(-90deg);
	-ms-transform:rotate(-90deg);
	filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

.bottom-float-child {
	-moz-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	-o-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);	
}

/*
		MAIN NAVIGATIONAL TAB FORMATTING

*/

.nav {
	padding				: 0px;			/* BOOTSTRAP'S .nav HAS PADDING LEFT SET TO 0, INITIAL AND INHERIT DIDN'T GET RID OF THAT */
}

.nav-tabs {
	border				: 0;
}

.nav-tabs > li {
	white-space			: nowrap;
	text-align			: right;
	direction			: rtl;
	padding				: 10px 8px;
	cursor				: pointer;
	transition			: background-color 150ms ease;
}

.nav-tabs > li:hover {
	border-radius		: 0px !important;
	transition			: background-color 150ms ease;
}

.nav-tabs > li.active {
	font-weight			: bold;
	transition			: background-color 250ms ease-out;
}

.database-table:table {
	border				: 10px !important;
	border-collapse		: collapse;
}

.th-chart {
	padding				: 2px;
}

.td-chart {
	text-align			: center;
}

/* 3/16/17 PS: FORMATTING FOR NEM SCRAPE TABLE */
.scrape_table {
	width				: 100%;
	text-align			: right;
	font-size			: 12px;
}

.scrape_table th {
	text-align			: center;
}

.scrape_table td, .scrape_table th {
	padding				: 4px;
	cursor				: default;
	white-space			: nowrap;
	overflow			: ellipsis;
}

.scrape_table tr:last-child td {
	border-bottom		: none;
}

.scrape_table td:first-child {
	text-align			: left !important;
}

.scrape_table_skip td {
	background-color	: transparent !important;
}

.scrape_table_total td {
	font-weight			: bold;
}

/* 
		DIV TABLE FORMATTING

*/

.div-table {
	position			: relative;
	width				: 100%;
	white-space			: nowrap;
}

.div-table div {
	cursor				: default;
}

.div-body span {
	position			: relative;
	min-width			: 0;
	text-align	 		: right;
	margin				: 0;
	overflow			: hidden;
	text-overflow		: ellipsis;
	line-height			: 1.8rem;
}

.div-body a {
	text-decoration		: none;
	position			: absolute;
	top					: 50%;
	left				: 50%;
	transform			: translate(-50%, -50%);
	text-align			: inherit;
	width				: 100%;
}

.div-body > div {
	display				: flex;
    width				: 100%;
    max-height			: 30px;
    padding				: 0;
	/*font-size			: 13px;
    line-height			: 30px;*/
    cursor				: default;
    height				: calc(6.6666667%);
    min-height			: 24px;
}

.div-table span:first-child {
	text-align			: left;
}


/* HEADER AND FOOTER DETAIL */
.div-header {
	display				: flex;
	flex				: 0 0 35px;
	padding-right		: 12px;
	font-size			: 12px;
	width				: 100%;
	max-width			: 100%;
	height				: 30px;
	line-height			: 30px;
	overflow			: hidden;
}

.div-footer {
	display				: flex;
	padding-right		: 12px;
	height				: 25px;
	width				: 100%;
	font-weight			: bold;
	text-align			: right;
}

.div-header span,
.div-footer span {
	display				: inline-block;
	padding				: 2px 0px;
	white-space			: nowrap;
	overflow			: hidden;
}

.div-body span:first-child a {
	text-align			: left;
}

/* BODY DETAIL */

.div-body {
	position			: relative;
	font-size			: 0.85rem;
	margin				: 5px 0px;
	padding				: 0px;
	height				: calc(100% - 48px);
	overflow-x			: hidden;
	overflow-y			: scroll;
}


/* 		TRAY FORMATTING 			*/
divhead,
.tray-title {
	display				: block;
	margin				: 0px;
    background-color	: rgba(0,0,0,0.4);
    padding				: 2px 5px;
    width				: calc(100% + 2px);
    color				: #EFEFEF;
    font-size			: 12pt;
    line-height			: 15pt;
}

.tray-container {
	min-height			: fit-content !important;
    height				: fit-content !important;
    max-height			: fit-content !important;
    flex-direction		: column;
	margin-top			: 2px;
	background-color	: transparent !important;
	padding				: 0px;
	white-space			: nowrap;
}

/* KEEPING ALL PADDING TO THE SPAN AS WE CAN THEN FORMAT BORDERS, ETC BASED ON SPAN */
.tray-head span:first-child a,
.tray-sub span:first-child a {
	padding-left:5px;
}

.tray-head span:last-child a,
.tray-sub span:last-child a {
	padding-right		: 5px;
}

.tray-container span {
	padding				: 0px 2px;
	display				: inline-block;
}

.tray-head {
	display				: flex;
	position			: relative;
	flex				: 1;
	cursor				: pointer;
	transition			: background-color 150ms ease, color 150ms ease;
}

.tray-head:hover {
	cursor				: pointer;
}

.tray-head.tray-open {
	display				: block;
    height				: 30px;
    max-height			: 30px;
	box-shadow			: 0px 7px 6px -4px rgba(0,0,0,0.5);
	transition			: background-color 150ms ease, color 150ms ease;
}

.tray {
	transition			: max-height 500ms ease;
	position			: static;
	margin-bottom		: 10px;
}

.tray-sub {
	display				: flex;
	height				: 35px;
	border				: 0;
	border-right		: 4px solid transparent;
	border-left			: 4px solid transparent;
	background-clip		: padding-box !important;
	cursor				: pointer;
}

.sub-head {
	font-weight			: bold;
	background-color	: #dfdfdf;
}

.tray.tray-closed {
	max-height			: 0;
	transition			: max-height 500ms ease;
}

.tray.tray-open-1 {
	max-height			: 35px;
}

.tray.tray-open-2 {
	max-height			: 70px;
}

.tray.tray-open-3 {
	max-height			: 105px;
}

.tray.tray-open-4 {
	max-height			: 140px;
}


/*
			END DIV TABLE 

*/


/*
		FONT AWESOME FORMATTING

*/

.fa-exclamation-triangle:before {
    padding-right	: 10;
    color			: orange;
}

.fa-sort,
.fa-sort-up,
.fa-sort-down,
.fa-sort:before,
.fa-sort-up:before,
.fa-sort-down:before {
	font-size		: 13px;
}

.fa-plus,
.fa-sort {
	opacity			: 0.5;
	cursor			: pointer;
	transition		: opacity 150ms ease;
}

.fa-plus:hover,
.fa-sort:hover {
	opacity			: 0.9;
	transition		: opacity 150ms ease;
}

.fa-save,
.fa-calendar-alt,
.fa-plus,
.fa-arrow-right {
	font-size		: 18px;
}

.well-head > .fa-plus {
	margin-right	: 5px;
}

/*
		END FONT AWESOME FORMATTING

*/


/*
			DATA DETAIL SPECIFIC FORMATTING

*/

.clarify-table .div-header span:nth-child(n + 3) {
	text-overflow		: ellipsis;
}

.clarify-table .div-header span:nth-child(2) {
	text-align			: center;
}

.clarify-table .div-header span:nth-of-type(1) a {
	text-align			: left;
	padding				: 0;
}

.clarify-table .div-header span:nth-of-type(1) {
	width				: 40px;
}

#monthlyGraphHeader {
	transition			: flex 500ms ease;
}

#clarify_link {
	font-size			: 18pt;
	cursor				: pointer;
}

#clarify_link.inactive {
	opacity				: 0.4;
}

#clarify_table div > span:last-of-type {
	transition			: max-width 250ms ease;
}

#clarify_table div.div-body > div.hovered {
	background-color	: #96c8fc47;
	transition			: background-color 150ms ease;

}

#clarify_table .div-body > div {
	padding-right		: 6px;
}

#clarify_table div.div-body > div > span,
#clarify_table div.div-footer > span {
	white-space			: nowrap;
    text-overflow		: ellipsis;
    overflow			: hidden;
}

.nem-divider {
	background			: rgba(0,0,0,0.2) !important;
	max-height			: 30px;
	overflow			: hidden;
}

.nem-divider:hover {
	cursor				: default !important;
}

.nem-divider > span:nth-of-type(1) {
	display				: block;
    flex				: 1 !important;
    text-align			: left !important;
    padding-left		: 5px;
    text-decoration		: underline;
    font-weight			: bold;
    cursor				: default !important;
}

#clarify_table div.div-body > div > span:nth-of-type(1),
#clarify_table div.div-footer > span:nth-of-type(1),
#clarifyTableHeader > span:nth-of-type(1) {
    display				: flex;
    justify-content		: center;
    align-items			: center;
    flex				: 0 0 30px;
	text-align			: center;
	cursor				: pointer;
}

#clarify_table div.div-body > div > span:nth-of-type(2),
#clarify_table div.div-footer > span:nth-of-type(2),
#clarifyTableHeader > span:nth-of-type(2) {
	flex				: 1 100px;
	text-align			: left;
	overflow-x			: hidden;
	padding-left		: 5px;
}

#clarify_table div.div-body > div > span:nth-of-type(n + 3),
#clarify_table div.div-footer > span:nth-of-type(n + 3),
#clarifyTableHeader > span:nth-of-type(n + 3) {
	flex				: 1 70px;
}

#clarifyTableHeader span {
	white-space			: normal;
}


#clarifyTableHeader > span:nth-child(n + 3) {
	line-height			: 1em;
    font-size			: 0.8em;
    text-align			: right;
    display				: flex;
    justify-content		: flex-end;
    align-content		: flex-end;
    padding				: 2px 2px;
}

#clarifyTableHeader > span:nth-child(n + 3) > a {
	display				: flex;
    flex-direction		: column;
    justify-content		: center;
    overflow			: hidden;
}

#clarifyTableHeader > span:nth-child(n + 2) > i {
	height				: 100%;
    display				: inline-block;
    width				: 10px;
    line-height			: 24pt;
    font-size			: 12pt;
    cursor				: pointer;
}

.clarify-table .div-body {
	position			: initial;
}

#clarify_table div.div-footer {
	font-size			: 11pt;
}

/* DATE RANGE SLIDER */
.date_slider {
    position			: relative;
    width				: calc(100% - 200px);
    height				: 6px;
    top					: 0;
    padding				: 0;
    border				: 0;
    margin-left			: 5px;
    box-shadow			: 0px 0.5px 3px 1px inset rgba(50,50,50,0.7);
}

.date_slider .tick {
	position			: absolute;
	background			: transparent;
	font-size			: 8pt;
	white-space			: nowrap;
	border				: none;
	padding-top			: 10px;
	z-index				: 2;
}

.ui-corner-all {
	border-radius		: 0;
}

.ui-slider-range {
	height				: 10px;
	top					: -1px;
	box-shadow			: 1px 0px 7px 4px inset rgba(0, 0, 0, 0.18);
}

.ui-slider-horizontal .ui-slider-range {
	top					: 1px;
	height				: 5px;
}

.ui-slider-handle {
    border				: none !important;
    background			: rgba(255,255,255,0.5);
	box-shadow			: 0px 1px 5px rgba(0,0,0,0.5);
	cursor				: pointer !important;
	background-size		: 2.4em 2.4em !important;
    transition			: background 150ms ease;
	z-index				: 1 !important;
}

.ui-slider-handle:hover {
	background			: rgba(255,255,255,0.75);
	transition			: background 150ms ease;
}

.date-selectors {
	min-width			: 0px;
	flex				: 1 0 80px;
	border				: 1px solid lightgray;
	box-shadow			: inset 0 3px 7px rgba(0, 0, 0, 0.4);
	cursor				: default !important;
	text-align			: center;
}

.slidePane {
	display				: flex;
	position			: fixed;
	max-height			: calc(100% - 100px);
	overflow			: auto;
	z-index				: 4;
	margin-top			: 40px;
}

.slidePane > div {
	padding				: 10px;
	filter				: drop-shadow(0px 5px 5px #000000FF);
}

.slidePane > div:nth-child(n + 2) {
	background-clip		: padding-box;
}

#dataSelectPane {
	height				: initial;
	margin-left			: -1000px;
	transition			: margin-left 500ms ease;
}

#dataSelectPane > div {
	position			: relative;
	filter				: initial;
}

#dataSelectPane.active {
	margin-left			: 20px;
	transition			: margin-left 500ms ease;
}

#dataSelectPane .dropdown-header {
	font-weight			: bold;
}

#dataSelectPane .dropdown-list > li {
	min-width			: 100px;
	white-space			: nowrap;
	margin				: 2px;
	padding-right		: 4px;
}

#detailGroupPane,
#meterLevelPane,
#rateAnalysisPane,
#billAcctPane {
	right				: -250px;
	transition			: right 500ms ease;
}

#billManPane {
	right				: -425px;
	transition			: right 500ms ease;
}

#billAcctPane.active {
	right				: 20px;
	transition			: right 500ms ease;
	filter				: drop-shadow(4px 12px 5px #00000066);
}

#detailGroupPane.active,
#meterLevelPane.active,
#rateAnalysisPane.active,
#billManPane.active {
	right				: 20px;
	transition			: right 500ms ease;
}

#clarify_data_labels {
    flex				: 1 0 603px;
    display				: flex;
    justify-content		: space-between;
}

#clarify_data_labels > span {
    display				: flex;
    flex				: 1 0 30%;
    margin				: 0 10;
    color				: black;
    transition			: opacity 150ms ease, filter 150ms ease;
}

#clarify_data_labels > span.inactive > *:not(.keepOpaque) {
	filter				: saturate(0);
	opacity				: 0.4;
	transition			: opacity 150ms ease, filter 150ms ease;
}

#clarify_data_labels > span {
	font-size			: 10pt;
	line-height			: 18pt;
	max-height			: 25px;
	max-width			: 300px;
}

#clarify_data_labels > span > k {
	width				: 35px;
	margin-left			: 2px;
	background-color	: rgba(255,255,255,0.5);
	color				: black;
	text-align			: center;
	font-weight			: bold;
	cursor				: pointer;
	opacity				: 1;
	transition			: opacity 150ms ease;
}

#clarify_data_labels > span.energy > k {
	flex				: 1 0 52.5px;
}

#clarify_data_labels > span.dollar > k {
	flex				: 1 0 35px;
}

#clarify_data_labels > span > n {
	display				: flex;
	justify-content		: center;
	flex				: 0 150px;
	min-width			: 0;
	font-weight			: bold;
	padding				: 0px 5px;
	text-align			: center;
	margin-left			: 2px;
	white-space			: nowrap;
	cursor				: pointer;
}

#clarify_data_labels > span > n > l {
	min-width			: 0;
}

#clarify_data_labels > span > k.inactive:not(.keepOpaque) {
	opacity				: 0.3;
	transition			: opacity 150ms ease;
}


#date-range-selector a:not(.header):hover {
	font-weight			:bold;
}

.slider-tip {
    display				: block;
    width				: 100px;
    padding				: 2px;
    background-color	: rgba(0,0,0,0.7);
    color				: #EFEFEF;
    margin-top			: 25;
    right				: -45;
    position			: absolute;
    text-align			: center;
    box-shadow			: 0px 5px 5px -3px rgba(0,0,0,0.5);
}

/*
			END DATA DETAIL SPECIFIC FORMATTING

*/

/*
			RATE OPTIMIZATION SPECIFIC FORMATTING

*/


.rate-warning:after,
.rate-optimal:after,
.rate-suboptimal:after {
	text-align			: center;
	padding-right		: 5px;
	display				: block;
	font-size			: 1.4em;
    line-height			: 1.3em;
}

#rate_table_div .div-body span:nth-of-type(1):not(.rate-warning) {
	padding-left		: 13px;
	cursor				: pointer;
}

#rate_table_div .tray-head > span:nth-of-type(1):not(.rate-warning):before {
	font-family			: "Font Awesome 5 Free";
	content				: "\f002";
	font-weight			: 600;
	font-size			: 15px;
	line-height			: 30px;
}

.rate-warning > a {
	font-size			: 18px;
	padding-left		: 10px !important;
}


/*		FORMAT INDIVIDUAL COLUMNS 				*/

#rate_table_div span {
	text-align			: right;
}

#rate_table_div span:nth-of-type(2) {
	text-align			: left;
}

#rate_table_div .div-header {
	display				: block;
}

#rate_table_div span:nth-of-type(n + 2) {
	overflow			: hidden;
	white-space			: nowrap;
}

/*		"Best?"										*/
#rate_table_div span:first-child {
	position			: relative;
	text-align			: left;
	width				: 7%;
	padding				: 0;
	text-overflow		: ellipsis;
	overflow			: visible;
	height				: 30px;
}

#rate_table_div .tray-open > span:nth-of-type(1):not(.rate-warning) {
	top					: -9px;
	/*bottom				: calc(50% - 0.4em);*/
}


/*		"Meter Number"								*/
#rate_table_div span:nth-child(2) {
	width				: 18%;
	text-align			: left;
	padding-left		: 5px;
}

#rate_table_div .div-body span:nth-child(2) a {
	padding-left		: 10px;
	text-align			: left;
	text-overflow		: ellipsis;
	overflow			: hidden;
}

/*		"Dates Analyzed"							*/
#rate_table_div span:nth-child(3) {
	width				: 17%;
}


/*		"Current Rate"								*/
#rate_table_div span:nth-child(4) {
	width				: 10%;
}

/*		"Cost on Current"							*/
#rate_table_div span:nth-child(5) {
	width				: 12%;
}

/*		"Alternate Rate"							*/
#rate_table_div span:nth-child(6) {
	width				: 12%;
}

/*		"Alternate Cost"							*/
#rate_table_div span:nth-child(7) {
	width				: 12%;
}

/*		"Savings"									*/
#rate_table_div span:nth-child(8) {
	width				: 12%;
	padding-right		: 10px;
}

/*		FOOTER PADDING TO ALIGN TOTALS WITH COLS 	*/
#rate_table_div .div-footer span:nth-child(7) {
	padding-right		: 5px;
}

/*		HEADER CURSOR ON HOVER						*/
#rate_table_div .well-head span > i {
	cursor				: pointer;
}

#rate_table_div div.div-body > .tray-container > .tray-open > .tray-sub:nth-last-of-type(1) {
	box-shadow			: 0px 10px 10px -10px black;
}

#rate_table_div div.div-footer {
	padding-right		: 0px;
}

/* 3/11/19 PS: RATE DETAIL MODAL					*/

#rateOpDetailTable tbody td:nth-of-type(n + 2) {
    text-align			: right;
}

#rateOpDetailTable thead tr:nth-of-type(1) {
	font-size			: 1.2em;
}

#rateOpDetailTable thead tr:nth-of-type(2) {
	border-bottom		: 1px solid;
}

#rateOpDetailTable thead th:nth-of-type(1) {
	text-align			: left;
}

#rateOpDetailTable thead tr:nth-of-type(1) > th:nth-of-type(2n + 2),
#rateOpDetailTable thead tr:nth-of-type(2) > th:nth-of-type(6n + 2),
#rateOpDetailTable thead tr:nth-of-type(2) > th:nth-of-type(6n + 3),
#rateOpDetailTable thead tr:nth-of-type(2) > th:nth-of-type(6n + 4),
#rateOpDetailTable tbody td:nth-of-type(6n + 2),
#rateOpDetailTable tbody td:nth-of-type(6n + 3),
#rateOpDetailTable tbody td:nth-of-type(6n + 4) {
	background-color	: var(--rate-column-highlight);
}

#rateOpDetailTable td {
    padding				: 0px 4px;
	white-space			: nowrap;
}

/*#rateOpDetailTable tr:nth-of-type(7),*/
/*#rateOpDetailTable tr:nth-of-type(14),*/
/*#rateOpDetailTable tr:nth-of-type(16),*/
/*#rateOpDetailTable tr:nth-of-type(20) {*/
	/*border-top			: 1px solid;*/
	/*font-weight			: bold;*/
/*}*/

/*#rateOpDetailTable tr:nth-of-type(18) {*/
	/*border-top			: 4px double;*/
	/*font-weight			: bold;*/
/*}*/

#rateOpDetailTable .rateSave {
	color				: green;
}

#rateOpDetailTable .rateCost {
	color				: red;
}

#rateOpHyperDetail tr > :nth-of-type(2n) {
	border-right		: 1px dotted;
	padding-right		: 10px;
}

#rateOpHyperDetail .modal-content {
	transition			: width 0.25s ease;
}

/*
			END RATE OPTIMIZATION SPECIFIC FORMATTING

*/

/*
			SOLAR PERFORMANCE SPECIFIC FORMATTING

*/

#solarTableOne .div-body > div {
	display				: flex;
	justify-content		: space-between;
	padding				: 0px 5px;
	line-height			: 22pt;
	height				: 30px;
	cursor				: pointer;
}

#solarTableOne .div-body > div.active {
	padding				: 0px 3px;
}

#solarTableOne .div-body > div > span:first-child {
	flex				: 0 0 30px;
}

#solarTableOne .div-body > div > span:first-child > a {
	display				: block;
	width				: 20px;
	height				: 20px;
}

#solarTableOne .div-body > div > span:first-child > a.statusUgly {
	background-color	: red;
}

#solarTableOne .div-body > div > span:first-child > a.statusBad {
	background-color	: orange;
}

#solarTableOne .div-body > div > span:first-child > a.statusGood {
	background-color	: #00ca00;
}

#solarTableOne .div-body > div > span:nth-child(n + 2),
#solarTableOne .div-header > span:nth-child(n + 2) {
    flex				: 1;
    text-align			: right;
}

#solarTableOne .div-footer > span {
	flex				: 1;
}

#solarChartPrimeDiv .well-head a {
	opacity				: 0.5;
	cursor				: pointer;
	transition			: opacity 150ms ease;
}

#solarChartPrimeDiv .well-head a:hover {
	opacity				: 0.85;
	transition			: opacity 150ms ease;
}

#solarChartPrimeDiv .well-head a.active {
	opacity				: 1.00;
	font-weight			: bold;
	transition			: opacity 150ms ease;
}

#solarChartPrimeDiv .ui-slider-handle {
	width				: 150px;
	height				: 18px;
	top					: 1px;
	margin-left			: -75px;
	border-radius		: 0px;
	background			: gold;
	box-shadow			: 0px 2px 5px rgba(0,0,0,0.75) inset;
	cursor				: hand !important;
}

#solarChartPrimeDiv .ui-slider-range {
	background			: transparent;
	height				: 0;
}

#solarChartPrimeDiv .ui-slider {
	height				: 20px;
	background			: rgba(0,0,0,0.25);
	border				: 0px;
	box-shadow			: 0px 2px 5px inset rgba(0,0,0,0.5);
}


/*
			END SOLAR PERFORMANCE SPECIFIC FORMATTING

*/

/*
			BILL MANAGEMENT SPECIFIC FORMATTING

*/


#billManAcctDiv > div.well-head > div > span {
	text-align			: right;
}

#billManAcctTable > div.div-body > div {
	display				: flex;
	justify-content		: space-between;
}

#billManAcctTable span:first-child {
	flex				: 0 0 20px;
	padding-left		: 5px;
	text-overflow		: initial;
}

#billManAcctTable span:nth-of-type(n + 2) {
	flex				: 0 0 calc(33.33333% - 20px / 3);
	text-align			: right;
	padding-right		: 2px
}

#billManAcctTable span:nth-of-type(2) {
	text-align			: left;
	padding-left		: 10px;
}

#billManAcctTable .div-body > div {
	padding-right		: 5px;
}

#billManAcctTable .div-body > div > span:first-child {
	cursor				: pointer;
}

#billManMeterTable span:first-child {
	cursor				: pointer;
	flex				: 0 0 20px;
    padding-left		: 5px;
}


#billManMeterTable span:nth-of-type(2) {
	/*flex				: 0 0 calc(25% - 5px);*/
	flex				: 0 0 calc(50% - 10px);
	text-align			: left;
	padding-left		: 5px;
}

#billManMeterTable span:nth-of-type(n + 3) {
	flex				: 0 0 calc(25% - 5px);
	padding-right		: 5px;
	/*flex				: 0 0 calc(18.75% - 5px);*/
	text-align			: right;
}



#billManAcctTable .div-body > div.active,
#solarTableOne .div-body > div.active {
	line-height			: var(--active-line-height);
    font-size			: 13pt;
}

#billManAcctTable .div-body > div.active > span:nth-of-type(2) {
	padding-left		: 5px;
}


/*
			END BILL MANAGEMENT SPECIFIC FORMATTING

*/


/*
			DOWNLOAD NEM BILL TO LOCAL MACHINE SPECIFIC FORMATTING

*/

#download_by_meter_table td,
#download_by_date_table td,
#downloadMeterDateHeader th {
	width				: 20%;
}

#download_by_meter_table td:nth-child(2),
#download_by_date_table td:nth-child(2),
#downloadMeterDateHeader th:nth-child(2) {
	width				: 40%;
}

#download_by_account_table td,
#downloadAccountHeader th {
	width				: 25%;
}

#download_by_account_table td:nth-child(-n + 2) {
	text-align			: right;
	padding-right		: 10%;
}

#downloadAccountHeader {
	background-color	: #666;
}

#sum_pdf_manage_modal th,
#sum_pdf_manage_modal td {
	width				: 20.0%;
}

#sum_pdf_manage_modal td:nth-of-type(2) {
	text-align			: right;
	padding-right		: 5%;
}

#sum_pdf_manage_modal td:nth-of-type(n + 3) > i {
	cursor				: pointer;
}

.fa-cloud-download-alt {
	cursor				: pointer;
}


/*
			DASHBOARD-SPECIFIC FORMATTING

*/

/*
			3.0

 */

nav.alert {
	display				: flex;
	margin-bottom		: 5px;
	width				: 100%;
	padding				: 5px;
	cursor				: default;
	transition			: background-color 150ms ease;
}

nav.alert > span:nth-of-type(1) {
	flex				: 0 0 25px;
}

nav.alert.redAlert > span:nth-of-type(1) {
	background-color	: red;
}

nav.alert.orangeAlert > span:nth-of-type(1) {
	background-color	: orange;
}

nav.alert.greenAlert > span:nth-of-type(1) {
	background-color	: #00ca00;
}

nav.alert > span:nth-of-type(n + 2) {
	flex				: 1 0;
	font-size			: 12pt;
	padding				: 2px 5px;
	white-space			: nowrap;
	overflow			: hidden;
	text-overflow		: ellipsis;
}

nav.alert > span:nth-of-type(2) {
	flex-basis			: 35%;
}

nav.alert > span:nth-of-type(3) {
	flex-basis			: 50%;
}

.alertToggle {
	flex				: 0 0 20px;
	height				: 20px;
	cursor				: pointer;
	opacity				: 0.5;
	border-radius		: 10px;
	height				: 15px;
	flex				: 0 0 15px;
	margin				: 2.5px;
	transition			: opacity 150ms ease, border-radius 250ms ease, flex 250ms ease, height 250ms ease, margin 250ms ease;
}

.alertToggle.active {
	opacity				: 1.0;
	border-radius		: 0px;
	height				: 20px;
	flex				: 0 0 20px;
	margin				: 0;
	transition			: opacity 150ms ease, border-radius 250ms ease, flex 250ms ease, height 250ms ease, margin 250ms ease;
}

.well-main.dashboard > div {
	flex				: 1 1 505px;
	/*flex-wrap			: wrap;*/
	height				: calc(50vh - 35px);
	min-width			: calc(33.333333% - 10px);
	min-height			: 300px;
	max-height			: calc(50% - 20px);
	transform			: rotate(0deg);
	transition			: background-color 150ms ease, margin 150ms ease, transform 150ms ease, filter 150ms ease !important;
}

.well-main.dashboard > div > div.content {
	display				: flex;
	flex				: 1 0;
	max-width			: 100%;
}

.adminList,
.dragDropList {
	display				: flex;
	flex-direction		: column;
	flex				: 1 0;
	padding				: initial;
	margin				: 0;
	overflow-y			: auto;
}

.adminList > li,
.dragDropList > li {
	padding				: 5px;
	margin				: 2px;
	background-color	: rgba(0,0,0,0.25);
}

.dragDropList > li {
	cursor				: grab;
}

.dragDropList > li:active {
	cursor				: grabbing;
}

.dragDropList > li.unSortable {
	background-color	: rgba(0,0,0,0.5);
	cursor				: not-allowed;
}

.being-dragged {
	filter				: drop-shadow(0px 0px 5px rgba(255,255,255,0.3));
	transform			: rotate(5deg) !important;

	transition			: all 150ms ease !important;
}

.being-dragged > div.content {
	box-shadow			: 0px 25px 15px -15px rgba(0,0,0,0.25);
	transition			: box-shadow 150ms ease !important;
}

#editCredentialsModal .deleteItem {
	font-size			: 18px;
	float				: right;
	margin-top			: 1px;
	color				: rgba(255,255,255,0.65);
	cursor				: pointer;
}

#editCredentialsModal .deleteItem:hover {
	color				: rgba(255,255,255,0.9);
}

.dashFilter {
	opacity				: 0.5;
	cursor				: pointer;
	height				: 15px;
	margin				: 2.5 0 0 7.5;
	transition			: opacity 150ms ease;
}

.dashFilter:hover {
	opacity				: 0.85;
	transition			: opacity 150ms ease;
}

.filterMenu {
	display				: inline-flex;
	/*height				: 100%;*/
	padding				: 5px;
	font-size			: 12pt;
	background-color	: rgba(0,0,0,0.8);
	cursor				: default;
	z-index				: 1;
}

.filterMenu > div > a {
	padding				: 5px;
	margin				: 3px;
	width				: auto;
	font-size			: 11pt;
	overflow			: hidden;
	text-overflow		: ellipsis;
}

.filterMenu > div > a:before {
	margin-right		: 5px;
}

.wmySelector {
	display				: flex;
	justify-content		: space-between;
	align-items			: center;
	flex				: 0 0 75px;
}

.wmySelector > span {
	font-weight			: bold;
	cursor				: pointer;
}

.dashReSize {
	position			: absolute;
	bottom				: 10;
	left				: 10;
	color				: rgba(255,255,255,0.4);
	cursor				: pointer;
}

.dashReSize:hover {
	color				: rgba(255,255,255,0.75);
}

.divGrip {
	position			: absolute;
	width				: 30px !important;
	margin				: 0px calc(50% - 25px);
	top					: 8px;
	opacity				: 0.4;
	transition			: opacity 150ms ease;
	cursor				: move;
}

.divGrip:hover {
	opacity				: 0.75;
	transition			: opacity 150ms ease;
}

#dashBillManagement nav {
	display				: flex;
	flex				: 1;
	justify-content		: space-between;
	align-items			: center;
	padding				: 0px 10px;
	margin				: 2.5px;
	cursor				: default;
}

#dashBillManagement span {
	flex				: 0 0 33.3333%;
	text-align			: right;
}

#dashBillManagement span:nth-child(1) {
	text-align			: left;
}

#dashRateSavingsSpan {
	color				: var(--rate-savings-color);
}


.dashboard .fa-angle-double-right {
	margin-right		: 10px;
	transition			: margin-right 150ms ease;
}

.dashboard .well:hover .fa-angle-double-right {
	margin-right		: 0px;
	transition			: margin-right 150ms ease;
}

.dashboard .well-head > .fa-exclamation-triangle {
	margin-right		: 15px;
	transition			: margin-right 150ms ease;
}
.dashboard .well:hover .fa-exclamation-triangle {
	margin-right		: 25px;
	transition			: margin-right 150ms ease;
}

div.overview-row {
	width				: 100%;
	display				: flex;
	border				: none;
	border-top			: 2px solid transparent;
	border-bottom		: 2px solid transparent;
	cursor				: default;
}

div.overview-row:first-child {
	border-top			: none;
}

div.overview-row:last-child {
	border-bottom		: none;
}

.overview-row span {
	height				: 100%;
	font-size			: 14pt;
	padding				: 5px 10px;
	white-space			: nowrap;
	display				: flex;
	align-items			: center;
}

.overview-row span:first-child {
	width				: 60%;
	color				: #EFEFEF;
	background-color	: #444;
}

.overview-row span:nth-child(n + 2) {
	width				: 40%;
	color				: #222;
	background-color	: white;
	justify-content		: flex-end;
	text-align			: right;
}

/*		ENDUSER DASHBOARD SUMMARY BILL WELL FORMATTING 		*/

#overview_sum_div > div {
	flex-direction		: column;
	width				: 100%;
}

#overview_sum_div > div > div {
	flex				: 1 0 25%;
	height				: 25%;
	width				: 100%;
	display				: flex;
	flex-direction		: row;
}

#overview_sum_div > div > div > span {
	flex				: 1 0 33%;
}

#overview_energy_div .well-inner > div {
	position			: relative;
	flex				: 1 0 200px;
}

#overview_energy_div .compare-chart {
	position			: absolute;
	width				: 100%;
	height				: calc(100% - 5px);
	filter				: drop-shadow(0px 0px 3px rgba(0,0,0,0.7));
}

#overview_energy_div .compare-chart + span {
	position			: absolute;
	width				: 100%;
	padding-left		: 40px;
	bottom				: 0;
	font-size			: 8pt;
	text-align			: center;
	color				: #DEDEDE;
	cursor				: pointer;
}

#overview_energy_div .compare-chart + span.ready:after {
	content				: 'details';
}

#overview_energy_div div.well-inner > div.usage-alert {
	animation-name				: usageBlink;
	animation-duration			: 1000ms;
	animation-timing-function	: ease;
	animation-direction			: alternate;
	animation-iteration-count	: infinite;
	animation-play-state		: running;
}

@keyframes usageBlink {
	from { filter				: brightness(90%) }
	to { filter					: brightness(130%) }
}

/*		END ENDUSER DASHBOARD SUMMARY BILL WELL FORMATTING 		*/

#sys_overview_overview .overview-row:nth-child(5) span {
	font-size					: 22pt !important;
}

#sys_overview_system div.div-header span {
	width						: calc(100% / 9);
}

#sys_overview_system div.div-body span {
	width						: calc(100% / 9);
	text-align					: right;
}

#sys_overview_system div.tray-head a,
#sys_overview_meter div.tray-head a {
	padding						: 5px;
	text-overflow				: ellipsis;
	overflow					: hidden;
}

#sys_overview_meter div.tray-head,
#sys_overview_meter div.tray-head:hover,
#sys_overview_system div.tray-head,
#sys_overview_system div.tray-head:hover {
	min-height					: initial;
	max-height					: initial;
	height						: 35px;
	cursor						: default;
}

/*		OVERVIEW - METER TABLE					*/
#sys_overview_meter span {
	width						: calc(85% / 9);
}

#sys_overview_meter span:nth-of-type(4) {
	width						: 15%;
}

#sys_overview_meter .tray-head span:nth-of-type(4) {
	text-align					: left;
	padding						: 0;
}

#sys_overview_meter .tray-head span:nth-of-type(4) a {
	text-align					: left;
	text-overflow				: ellipsis;
	overflow					: hidden;
}

/*		END OVERVIEW - METER TABLE				*/

.group-icon {
	height						: 22px;
	margin-right				: 3px;
	filter						: brightness(0);
}

/*
	8/12/18 PS: CUSTOM SVG ICONS

*/

object::before {
	cursor						: pointer;
}

svg {
	fill						: currentColor;
	font-family					: var(--font-family), sans-serif !important;
}

svg:not(.highcharts-root) {
	height						: 1em;
	width						: 1em;
}

.highcharts-tooltip span {
	max-height					: 250px;
	overflow					: hidden;
}

.icon-inactive > svg {
	opacity						: 0.4;
	transition					: color 150ms ease, opacity 150ms ease;
}

.icon-inactive.vw-icon:hover > svg {
	opacity 					: 0.65;
	transition 					: opacity 150ms ease;
}

/*			TESTING BLINKING DIVS TO DRAW USER'S ATTENTION TO UPDATES OR WARNINGS 			*/

.alert-yellow {
	background-color			: #f0d419 !important;
	color						: black !important;
}

.alert-yellow > img {
	filter						: brightness(0);
}

.blink-red {
	animation-name				: blinkRed;
	animation-duration			: 500ms;
	animation-timing-function	: ease;
	animation-direction			: alternate;
	animation-iteration-count	: infinite;
	animation-play-state		: running;
	color						: white !important;
}

.blink-red > img.group-icon {
	filter						: none;
}

@keyframes blinkRed {
	from { background-color		: #880000; }
	to { background-color		: #FF1111; }
}


.blink {
	animation-name				: blinkMild;
	animation-duration			: 1s;
	animation-timing-function	: ease;
	animation-direction			: alternate;
	animation-iteration-count	: infinite;
	animation-play-state		: running;
}

@keyframes blinkMild {
	from { background-color		: #e6be07; }
	to { background-color		: #fff62f; }
}

.blinking-text {
	animation-name				: blinkText;
	animation-duration			: 750ms;
	animation-timing-function	: linear;
	animation-direction			: alternate;
	animation-iteration-count	: infinite;
	animation-play-state		: running;
}

@keyFrames blinkText {
	from { filter				: brightness(65%); }
	to { filter					: brightness(135%); }
}

/*			END BLINKING																	*/


/*
			END DASHBOARD-SPECIFIC FORMATTING

*/


/*
			ADMIN / PARTNER PORTAL ID-SPECIFIC FORMATTING

*/

/*			SERVER CONSOLE (ERROR LOG) FORMATTING											*/
#server_cons td:nth-of-type(1),
#server_cons th:nth-of-type(1) {
	width						: 15%;
}


/*			END SERVER CONSOLE FORMATTING													*/

/*			METER BILLING FORMATTING														*/

#datesRatesBillTable > thead > tr:nth-of-type(2) > th:first-child,
#datesRatesBillTable tbody > tr > td:first-child {
	text-align					: center;
	min-width					: 38px;
	max-width					: 38px;
	padding-right				: 5px;
}

#datesRatesBillTable > thead > tr:nth-of-type(2) > th:nth-of-type(2),
#datesRatesBillTable > thead > tr:nth-of-type(2) > th:nth-of-type(3),
#datesRatesBillTable > thead > tr:nth-of-type(2) > th:nth-of-type(4),
#datesRatesBillTable td:nth-of-type(2),
#datesRatesBillTable td:nth-of-type(3),
#datesRatesBillTable td:nth-of-type(4) {

	min-width					: 90px;
	max-width					: 90px;
}

#datesRatesBillTable > thead > tr:nth-of-type(2) > th:nth-of-type(n + 5):nth-of-type(-n + 8),
#datesRatesBillTable td:nth-of-type(n + 5):nth-of-type(-n + 8) {
	min-width					: calc(8% - 29px);
	max-width					: calc(8% - 29px);
}

#datesRatesBillTable > thead > tr:nth-of-type(2) > th:nth-of-type(n + 9):nth-of-type(-n + 16),
#datesRatesBillTable td:nth-of-type(n + 9):nth-of-type(-n + 16) {
	min-width					: calc(8.5% - 29px);
	max-width					: calc(8.5% - 29px);
}


/*	8/3/19 PS: UPDATING FOR A FIRST ROW ABOVE MAIN ROW */
#datesRatesBillTable > thead > tr:nth-of-type(1) > th:nth-of-type(1) {
	min-width					: 308px;
	max-width					: 308px;
}

#datesRatesBillTable > thead > tr:nth-of-type(1) > th:nth-of-type(2) {
	min-width					: calc(24% - 87px);
	max-width					: calc(24% - 87px);
}

#datesRatesBillTable > thead > tr:nth-of-type(1) > th:nth-of-type(3) {
	min-width					: calc(8% - 29px);
	max-width					: calc(8% - 29px);
}

#datesRatesBillTable > thead > tr:nth-of-type(1) > th:nth-of-type(4) {
	min-width					: calc(25.5% - 87px);
	max-width					: calc(25.5% - 87px);
}

#datesRatesBillTable > thead > tr:nth-of-type(1) > th:nth-of-type(5) {
	min-width					: calc(42.5% - 145px);
	max-width					: calc(42.5% - 145px);
}

#datesRatesBillTable > thead > tr:nth-of-type(1) > th:nth-of-type(6) {
	min-width					: 40px;
	max-width					: 40px;
}


#datesRatesBillTable thead > tr {
	padding						: 0px;
}

#datesRatesBillTable thead > tr > th {
	padding						: 2px 0px;
}


#datesRatesBillTable tbody > tr > td:nth-child(7),

#datesRatesBillTable td:nth-of-type(n + 5) > input {
	text-align					: right;
}

#datesRatesBillTable tbody > tr > td:nth-child(3 + n) > input {
	font-size					: 0.85em !important;
	padding						: 3px;
}

#datesRatesBillTable thead > tr:first-child > th:nth-child(1),
#datesRatesBillTable thead > tr:first-child > th:nth-child(2),
#datesRatesBillTable thead > tr:first-child > th:nth-child(3),
#datesRatesBillTable thead > tr:first-child > th:nth-child(4),
#datesRatesBillTable thead > tr:first-child > th:nth-child(5),

#datesRatesBillTable thead > tr:nth-of-type(2) > th:nth-child(4),
#datesRatesBillTable thead > tr:nth-of-type(2) > th:nth-child(7),
#datesRatesBillTable thead > tr:nth-of-type(2) > th:nth-child(8),
#datesRatesBillTable thead > tr:nth-of-type(2) > th:nth-child(11),
#datesRatesBillTable thead > tr:nth-of-type(2) > th:nth-child(15),
#datesRatesBillTable thead > tr:nth-of-type(2) > th:nth-child(16),

#datesRatesBillTable tbody > tr > td:nth-child(4),
#datesRatesBillTable tbody > tr > td:nth-child(7),
#datesRatesBillTable tbody > tr > td:nth-child(8),
#datesRatesBillTable tbody > tr > td:nth-child(11),
#datesRatesBillTable tbody > tr > td:nth-child(15),
#datesRatesBillTable tbody > tr > td:nth-child(16) {
	border-right				: 1px solid;
}

#datesRatesBillTable select {
    background					: none;
    color						: inherit;
    height						: 26px;
    transition					: none;
}

#datesRatesBillTable option {
	color						: black;
}

#datesRatesBillTable tbody > tr > td:last-child {
	max-width					: 40px;
	text-align					: center;
    font-size					: 30px;
    opacity						: 0.7;
}

#datesRatesBillTable tbody > tr > td:last-child.canDelete {
	background-color			: rgba(255,0,0,0.15);
    cursor						: pointer;
    line-height					: 26px;
}

#datesRatesBillTable tbody > tr > td:last-child.canDelete:hover {
	opacity						: 1.0;
}

/*			END METER BILLING FORMATTING															*/


/*
			DATA PROCESSING TABLE FORMATTING

*/

#dataProcTable tr > :nth-child(2),
#dataProcTable tr > :nth-child(3) {
	text-align					: left;
}

#dataProcTable tbody > tr > td:nth-child(6),
#dataProcTable tbody > tr > td:nth-child(7),
#dataProcTable tbody > tr > td:nth-child(10) {
	text-align					: right;
}

#dataProcTable tbody > tr > td:nth-child(8),
#dataProcTable tbody > tr > td:nth-child(9) {
	text-align					: center;
}


#dataProcTable tr > :nth-child(10) {
	padding-right				: 5px;
	min-width					: 175px;
}

#compare_kwh_modal table > tbody > tr > td {
	text-align					: right;
	padding-right				: 10px;
}

#compare_kwh_modal tr > :nth-child(1) {
	white-space					: nowrap;
}

#compare_kwh_modal tr > :nth-child(3),
#compare_kwh_modal tr > :nth-child(6),
#compare_kwh_modal tr > :nth-child(8){
	border-right				: 1px solid;
}

#compare_kwh_modal th,
#compare_kwh_modal td {
	padding						: 2px 10px;
}

#daysSinceApprovedTable td {
	white-space					: nowrap;
}

#daysSinceApprovedTable tbody > tr > td:nth-of-type(2) {
	padding-left				: 5px;
}

#daysSinceApprovedTable tbody > tr > td:nth-of-type(n + 3) {
	text-align					: right;
	padding-right				: 5px;
}

/* SOLAR PROCESSING TABLE 																																				*/
#solarProcTable tr > :nth-child(2) {
	text-align					: left;
}

#solarProcTable tbody > tr > td:nth-child(4),
#solarProcTable tbody > tr > td:nth-child(5),
#solarProcTable tbody > tr > td:nth-child(6) {
	text-align					: right;
}

#solarProcTable tbody > tr > td:nth-child(3),
#solarProcTable tbody > tr > td:nth-child(7),
#solarProcTable tbody > tr > td:nth-child(8),
#solarProcTable tbody > tr > td:nth-child(9) {
	text-align					: center;
}



/*
			END DATA PROCESSING TABLE FORMATTING

*/


/*
			END ADMIN / PARTNER PORTAL ID-SPECIFIC FORMATTING

*/


.table-cre-data {
	table-layout				: fixed;
	padding						: 0;
	min-width					: 100%;
	border-top					: 0px;
	border-left					: 0px;
	border-right				: 0px;
	border-bottom				: 0px;
	margin						: 0px auto;
	max-height					: 100%;
	border-collapse				: collapse;
}

.table-cre-data tbody, .table-cre-data thead {
	min-width					: 100%;
}

.table-cre-data th  {
	text-align					: center;
	white-space					: nowrap;
	overflow					: hidden;
	padding						: 2px 2px;
}
	
.table-cre-data td {
	height						: 10px;
	padding						: 3px 5px;
	text-align					: right;
	font-size					: 14px;
}

.table-cre-data td:last-child {
	padding-right				: 15px;
}

.table-cre-data td:hover,
.table-cre-data th:hover {
	cursor						: default;
}


.table-cre-data > tbody > tr:last-child {
	font-weight					: bold;
}


.clickable-month tr:last-child > td {
	background-image			: none;
}

.clickable-month tr:last-child > td:hover {
	cursor						: default;
	text-decoration				: none;
	background-image			: none;
}

.non-clickable-month td:first-child, .non-clickable-month td:nth-child(2) {
	text-align					: left;
	font-size					: 12px;
	font-weight					: bold;
	text-decoration				: underline;
	background-image			: none;
}

.non-clickable-month > td, .non-clickable-month > td:hover {
	cursor						: default !important;
	background-image			: none !important;
	background-color			: #efefef !important;
}

.table-no-break tr td:nth-child(n) {
	white-space					: nowrap;
}

.table-cre-no-total > tbody > tr:last-child {
	font-weight					: normal;
	border-top					: 1px white;
}

.rate-analysis td {
	text-align					: left;
	width						: 17%;
}

.rate-analysis td:first-child,
.rate-analysis td:nth-child(3), 
.rate-analysis td:nth-child(5), 
.rate-analysis td:nth-child(6) {
	text-align					: right;
}

.rate-analysis td:nth-child(2) {
	text-align					: right;
}

.rate-analysis tbody tr {
	display						: table;
	width						: 100%;
}

.rate-analysis th {
	text-align					: right;
}

/*
		ENDUSER ACCOUNT OVERVIEW FORMATTING

*/

.overview-table {
	min-width					: 100%;
	border-collapse				: collapse;
	font-size					: 13px;
	white-space					: nowrap;
	text-overflow				: ellipsis;
	text-align					: right;
	border-style				: hidden;
	height						: calc(100% + 1px);
}

.overview-table th {
	padding						: 3px 6px;
}

.overview-table td {
	padding						: 2px 6px;
}

.overview-table th,
.overview-table td {
	border						: 1px solid lightgray;
	text-align					: right;
}

.overview-table td:first-child,
.overview-table th:first-child {
	font-weight					: bold;
}

.overview-table td:nth-child(2n+1) {
	background-color			: #EFEFEF;
}

.overview-table tr:hover:not(.no-hover) > td {
	background-color			: #FDFFBC;
}

.overview-table td:hover,
.overview-table th:hover {
	cursor						: default;
}

.overview-table th:last-child,
.overview-table td:last-child {
	border-left					: 1px solid lightgray;
}

#sys_overview_system tr {
	height						: 10%;
}

#all_meter_table tr {
	height						: 20px;
}


/*
		END ENDUSER ACCOUNT OVERVIEW FORMATTING

*/

.no-hover td {
	padding				: 0px;
	font-size			: 2px;
}

/* 5/8/17 PS: CREATED TODAY FOR SYSTEM IMAGE */

.fill img {
	object-fit			: cover;
	width				: 100%;
	height				: 100%;
}

.table-smaller-type {
	font-size			: 12px;
}

/*.inner-div-admin {*/
	/*background-color	: rgba(255,255,255,0.1);*/
    /*box-shadow			: 0px 5px 5px -5px rgba(0,0,0,0.75);*/
    /*filter				: drop-shadow(1px 1px 3px rgba(0,0,0,0.5));*/
/*}*/

/*
		METER SELECT TABLE FORMATTING

*/

#monthly_energy_table.noComp > #clarifyTableHeader > span:last-child,
#monthly_energy_table.noComp #energy_table_div > .div-body > div > span:last-child,
#monthly_energy_table.noComp > div.div-footer > span:last-child {
	display				: none;
}


#energy_table_div.interval-data > div.div-body > div:hover > span {
	cursor				: pointer;
	opacity				: 0.75 !important;
}



#monthly_energy_table.meter-series #energy_table_div > div.div-body > div {
	cursor				: pointer;
}

#monthly_energy_table.meter-series #energy_table_div > div.div-body > div > span:nth-of-type(1):after {
	font-size			: 17px;
	display				: block;
	height				: 100%;
	content				: "\2718";
	background-color	: transparent;
}

#monthly_energy_table.meter-series #energy_table_div > div.div-body > div.cre-checked > span:nth-of-type(1):after {
	content				: "\2714";
}

#monthly_energy_table.meter-series #clarifyTableHeader > span:nth-child(1) > a {
	display				: block;
	width				: 15px;
	height				: 15px;
	border-radius		: 15px;
	border				: 2px solid;
	background-color	: rgba(255,255,255,0.0);
	transition			: background-color 150ms ease;

}

#clarifyTableHeader > span:nth-of-type(2).meterOrTag {
	cursor				: pointer;
	text-decoration		: underline;
}

.cre-not-checked {
	color				: rgba(255,255,255,0.4);
}

.cre-cust-table {
	border-collapse		: collapse;
	width				: 100%;
}

.cre-cust-table td, .cre-cust-table th {
	padding				: 1px 5px;
	text-align			: center;
	max-width			: 190px;
	text-overflow		: ellipsis;
	overflow			: hidden;
	white-space			: nowrap;
	cursor				: default;
}

.cre-cust-table td {
	text-align			: left;
	font-size			: 14px;
	padding				: 3px;
}

.cre-cust-table th {
	border-top			: 0;
}

.table-font-10,
.table-font-10 > tr,
.table-font-10 > tr td {
	font-size			: 12px !important;
}

.table-font-10 th {
	font-size			: 14px !important;
}

.bold-underline > td {
	font-weight			: bold;

}

/*
cre-expandable-row USED MAINLY (EXCLUSIVELY??) FOR THE NEM BILLING TABLE

*/

.cre-expandable {
	min-width			: 100%;
}

.cre-expandable tr td {
	height				: 30px;
	padding				: 0px 5px;
	font-size			: 14px;
}

.cre-expandable > tbody > tr:nth-child(n+1) > th {
	text-align			: left;
	cursor				: pointer;
	border-right		: 0px;
	border-left			: 0px;
}

.cre-expandable > tbody > tr:nth-child(n+1):hover > th {
	border-right		: 0px;
	border-left			: 0px;
}

.cre-expandable > tbody > tr:nth-child(2n+1) > td,
.cre-expandable > tbody > tr:nth-child(n+1) > td {
	min-width			: 0px;
}

.cre-expandable-row > td, .sum-expandable-row td {
	cursor				: pointer !important;
}

.cre-expandable-row td, .sum-expandable-row td {
	border				: none;
	border-bottom		: 1px solid darkgray;
	border-top			: 1px solid darkgray;
}

.cre-expandable tr:not(.sum-expandable-row)  {
	text-align			: right;
}

.cre-expandable tr.no-hover td {
	height				: 5px;
	font-size			: 2px;
}

.cre-expandable tr.sum-sub-header td {
	height				: 30px;
	font-size			: 13px;
}

.cre-expandable tr:not(.sum-sub-header):not(.sum-expandable-row):not(.no-hover) td {
	height				: 25px;
}


/* 
END cre-expandable-row 

*/


.green_row  td {
	text-align			: right;
	padding				: 2px 5px 0px 5px;
	white-space			: nowrap;
	font-size			: 12px;
}

.white_row td {
	text-align			: right;
	padding				: 2px 5px 0px 5px;
	white-space			: nowrap;
	font-size			: 12px;
}

.white_row:hover td,
.green_row:hover td {
	cursor				: default;
}

.right-align td {
	padding				: 1px 10px 1px 2px;
	text-align			: right;
}

/* FIXED TABLE HEADER */

.fixed-table-container {
	width				: 100%;
	height				: 436px;
	margin				: 0px auto;
	margin-top			: 1px;
	position			: relative;
	padding-top			: 24px;
	display				: block;
	overflow			: hidden;
}

.sum-header-background {
	height				: 24px;
	position			: absolute;
	padding-top			: 0px;
	top					: 0;
	right				: 0;
	left				: 0;
	display				: block;
	border-bottom		: 1px solid;
}

.fixed-table-container-inner {
	overflow-x			: hidden;
	overflow-y			: auto;
	height				: 100%;
}

.th-inner {
	position			: absolute;
	top					: 0;
	margin-right		: -10px;
	line-height			: 24px;
	text-align			: left;
	padding-left		: 5px;
	padding				: 0px 0px 5px calc(3%);
	text-align			: right !important;
	display				: table-cell;
	font-size			: 13px;
	white-space			: nowrap;
}

/* END FIXED TABLE HEADER */

.data-entry-table {
	background-color	: white;
	font-size			: 13px;
	white-space			: nowrap;
	margin				: 10px 0px;
}

.data-entry-table td {
	height				: 25px;
	width				: 130px;
}

.data-entry-table td > input {
	max-width			: 100%;
}

.data-entry-table td:nth-child(1n) {
	text-align			: right;
}

.data-entry-table td:nth-child(2n) {
	width				: 0px;
	max-width			: 130px;
}

.dates-and-rates {
	font-size			: 13px;
	white-space			: nowrap;
	margin-top			: 10px;
}

.dates-and-rates td, .dates-and-rates th {
	font-size			: 13px;
	text-align			: center;
	min-width			: 100px;
	max-width			: 150px;
}

.dates-and-rates td:nth-child(2) {
	border-right		: 1px solid;
}

.dates-and-rates td {
	border-top			: 1px solid;
}

.dates-and-rates tr, .dates-and-rates td {
	min-height			: 45px !important;
	line-height			: 1.8;
}


.prop-calc-table {
	font-size			: 13px;
	margin				: 10px auto;
}

.prop-calc-table td {
	max-width			: 120px;
}

.prop-calc-table > tbody > tr:last-child > td {
	border-top			: 1px solid;
	height				: 25px;
	font-size			: 14px;
}

.nem-table {
	border-collapse		: collapse;
}

.nem-table th {
	min-width			: 100px;
	border				: 1px solid;
	text-align			: center;
}

.nem-table td {
	text-align			: center;
	border				: 1px solid;
	max-width			: 130px;
}

.fixed-header-div {
	padding				: 0px;
	border-bottom		: 1px solid;
}

.fixed-header th {
	border-bottom		: 0px solid !important;
	
}

.fixed-header th:last-child {
	border-right		: 1px solid !important;
}

.vw-account-table td:first-child:hover {
	text-decoration		: underline;
	cursor				: pointer !important;
}

.data-management-table {
	min-width			: 100%;
	border				: 0 !important;
	width				: 100%;
	overflow-x			: scroll;
	display				: block;
}


.data-management-table tbody,
.data-management-table thead {
	display				: block;
}

.data-management-table tbody {
	overflow-y			: scroll;
	overflow-x			: hidden;
	height				: 250px;
}

.data-management-table th {
	text-align			: center;
	padding				: 6px 6px;
	cursor				: default;
	white-space			: nowrap;
	font-size			: 13px;
}

.data-management-table br {
	display				: block;
	content				: " ";
	margin				: 8px;
}

.data-management-table td {
	text-overflow		: ellipsis;
	overflow			: hidden;
	white-space			: nowrap;
	padding				: 0px 5px;
	line-height			: 20px;
	min-height			: 20px !important;
	height				: 20px;
	font-size			: 12px;
}

.data-management-table td:last-child {
	border-right		: 0px;
}

.data-management-table tr:hover > td, 
.data-management-table > tbody > tr:nth-child(2n+1):hover > td {
	cursor				: default;
}

.data-management-table tr:last-child > td {
	border-bottom		: 1px solid;
}

.spreadsheet input {
	min-width			: 0px !important;
	width				: 100%;
	font-size			: 13px;
	background			: transparent;
	height				: 19px;
	border				: 1px;
	text-align			: right;
	padding				: 0;
	padding-right		: 5px;
}

.spreadsheet td {
	padding				: 0px;
	min-width			: 0px;
}

.modal-body .spreadsheet td input {
	color				: inherit;
	background			: transparent;
}

#deliveryTableModal table:nth-of-type(2) td {
	width				: 10%;
	padding				: 0px 8px;
	text-align			: right;
}

#deliveryTableModal table:nth-of-type(2) td:nth-of-type(3),
#deliveryTableModal table:nth-of-type(2) td:nth-of-type(7) {
	border-left			: 1px solid;
}

#generationTableModal table:nth-of-type(1) tr:nth-of-type(2) th {
	width				: 11.1111111%;
	display				: inline-block;
	height				: 26px;
    line-height			: 26px;
}

#generationTableModal table:nth-of-type(1) thead tr:nth-of-type(1) th {
    height				: 26px;
    line-height			: 26px;
}

#generationTableModal table:nth-of-type(2) td {
	width				: 8.33%;
    padding				: 0px 8px;
    text-align			: right;
    display				: inline-block;
    height				: 26px;
    line-height			: 26px;
}

#generationTableModal table:nth-of-type(2) td:nth-of-type(3),
#generationTableModal table:nth-of-type(2) td:nth-of-type(7),
#generationTableModal table:nth-of-type(2) td:nth-of-type(8),
#generationTableModal table:nth-of-type(2) td:nth-of-type(9),
#generationTableModal table:nth-of-type(2) td:nth-of-type(12)  {
	border-left			: 1px solid;
}

#generationTableModal tr {
    min-width			: calc(100% - 6px);
    display				: block;
    white-space			: nowrap;
    height				: 26px;
}

#generationTableModal table:nth-of-type(2) td > select {
	width				: 100%;
	background			: none;
	color				: inherit;
	direction			: ltr;
	padding-left		: 40%;
}


.spreadsheet select:hover,
.spreadsheet select:focus,
.spreadsheet input:hover,
.spreadsheet input:focus {
	box-shadow			: none;
	background-color	: rgba(255,220,0,0.75) !important;
	color				: black !important;
	font-weight			: bold;
}

.nem_bill_table td:first-child,
.nem_bill_table td:nth-child(2) {
	padding-right		: 4px;
	font-size			: 12px;
}

.nem_bill_table input {
	text-align			: right;
	font-size			: 12px;
}

.nem_bill_table td:nth-child(2) {
	border-right		: 1px solid gray;
}

.table-expand td,
.table-expand th {
	max-width			: inherit !important;
}

.centered td,
.centered td:first-child,
.centered th:first-child {
	text-align			: center;
}

.min-100 td,
.min-100 th {
	min-width			: 70px;
}

.no-input {
	border				: 1px solid;
	text-align			: left !important;
}

.kw-input {
	border				: 0px;
	padding-top			: 1px;
	margin				: 0px;
	width				: 50px;
	display				: inline-block;
	height				: 25px;
	text-align			: center;
	color				: black;
}

.kw-input:focus {
	outline				: 0px;
}

.kw-input::-webkit-inner-spin-button {
	/* display: none; <- Crashes Chrome on hover */
	-webkit-appearance	: none;
	margin				: 0; 		/* <-- Apparently some margin are still there even though it's hidden */
}

.kw-input::-webkit-outer-spin-button  {
	-webkit-appearance	: none;
	margin				: 0;
}

/*
		DRILL DOWN DETAIL MODAL FORMATTING

*/

#drillDownDiv {
	z-index				: 4;
	position			: fixed;
	filter				: none;
	width				: 85%;
	height				: 85%;
	box-shadow			: rgba(0,0,0, 0.95) 0px 0px 75px 10px;
	margin				: 0 auto;
}

#drillDownTypeToggle {
	font-size			: 12px;
	display				: flex;
	justify-content		: space-between;
	flex				: 0 360px;
}

#drillDownTypeToggle > span {
	cursor				: pointer;
	padding				: 3px 10px;
	line-height			: 17px;
	white-space			: nowrap;
	opacity				: 0.8;
}

#drillDownTypeToggle > span.selected {
	opacity				: 1.0;
}

#drillDownTypeToggle > span > i {
	margin-right		: 10px;
}

.drillDownLists {
	flex				: 1;
	min-width			: 100px;
	padding				: 0px;
	margin				: 5px;
	position			: relative;
	max-height			: initial;
	z-index				: initial;
	max-width			: 150px;
	max-height			: calc(100% - 24px);
	overflow-y			: auto;
}

.drillDownLists > li {
	padding				: 5px;
	margin				: 2px;
	white-space			: nowrap;
	cursor				: pointer;
}

span.drillDownError {
	display				: block;
	width				: 100%;
	text-align			: center;
	padding				: 50px;
	font-weight			: bold;
	font-size			: 16pt;
}

/*
		END DRILL DOWN DETAIL FORMATTING

*/

/*
		HEAT MAP TABLE FORMATTING

*/

#drillDownHeatTable {
	border-right		: 1px solid var(--heat-border-color);
	border-bottom		: 1px solid var(--heat-border-color);
	table-layout		: fixed;
	width				: 100%;
}

#drillDownHeatTable > * > * > :first-child {
	border-right		: 2px solid var(--border-color);
}

#drillDownHeatTable thead {
	border-bottom		: 2px solid var(--border-color);
}

#drillDownHeatTable thead > tr > th {
	font-size			: 10px;
	padding				: 5px 1px;
	text-overflow		: ellipsis;
}

#drillDownHeatTable tbody > tr > td {
	text-align			: center;
	font-size			: 10px;
}

#drillDownHeatTable tr > * {
	overflow		: hidden;
}

#drillDownHeatTable tbody > tr > td:nth-of-type(n + 2):hover {
	display				: block;
	padding				: 5px;
	position			: absolute;
	max-width			: 120px;
	width				: 120px;
	height				: 50px;
	margin-top			: -12.5px;
	margin-left			: -30px;
	line-height			: 38px;
	font-size			: 18pt;
	opacity				: 0.925;
	outline				: 2px solid var(--heat-border-color);

	transition			: font-size 250ms ease;
	cursor				: none;
}

.heat-border-right {
	border-right	: 1px solid var(--heat-border-color);
}

.heat-border-top {
	border-top		: 1px solid var(--heat-border-color);
}



/*
		END HEAT MAP TABLE FORMATTING

*/

/*
		METER BILL TABLE FORMATTING

 */

#drillDownMeterBillTable {
	display				: flex;
	flex-direction		: column;
}

#drillDownMeterBillTable > div {
	display				: flex;
	justify-content		: space-between;
	align-items			: center;
	padding				: 2px 5px;
}

#drillDownMeterBillTable > div > span {
	flex				: 1 0 calc(100% / 6);
	text-align			: right;
	min-width			: 0;
    text-overflow		: ellipsis;
    overflow			: hidden;
}

#drillDownMeterBillTable > div > span:nth-of-type(1) {
	text-align			: left;
}

#drillDownMeterBillTable > div.header {
	font-weight			: bold;
}

#drillDownMeterBillTable > div.sub-footer,
#drillDownMeterBillTable > div.footer {
	padding				: 4px;
	border-top			: 1px solid;
	margin-bottom		: 5px;
	white-space			: nowrap;
}

#drillDownMeterBillTable > div.footer {
	font-weight			: bold;
}

#drillDownMeterBillTable .smallerFont	{
	font-size			: 13px;
}

#drillDownMeterList > li {
	max-width			: 100%;
	overflow			: hidden;
	text-overflow		: ellipsis;
}




#drillDownDiv.minimized {
	min-width			: 0px !important;
	width				: 200px !important;
	height				: 43px !important;
	resize				: none !important;
	color				: transparent;
	fill				: transparent;
	top					: initial;
	left				: 153px;
	bottom				: 5px;
	box-shadow			: 0px 0px 30px 10px rgba(0,0,0,0.75);
}

#drillDownDiv.minimized > .modal-header > #drillDownTypeToggle {
	visibility			: hidden;
}

#drillDownDiv.minimized .fa-expand {
	display				: block !important;
}

.resize:hover {
	cursor				: resize;
}

/*
		END METER BILL TABLE FORMATTING

 */

.alertify-cover {
    background-color	: rgba(0,0,0,.75);
}

.alertify {
	width				: 400px;
	left				: calc(50% - 200px);
}

/*
.alertify-alert .alertify-dialog {
	border				: 5px solid black;
	background-color	: white;
}
*/

.alertify-button {
	box-shadow			: none;
	padding				: 5px 10px;
	color				: white;
	font-weight			: bold;
	cursor				: pointer;
	min-width			: 80px;
	margin				: 5px;
}

.alertify-button-cancel,
.alertify-button-ok {
	background-color	: #444;
	border				: 3px solid #444;
	transition			: background-color 150ms ease;
}

.alertify-button-cancel:hover {
	background-color	: red;
	transition			: background-color 150ms ease;
}

.alertify-button-ok:hover {
	background-color	: #00b300;
	transition			: background-color 150ms ease;

}

/*
		9/24/18 PS: ASSET MANAGEMENT SPECIFIC FORMATTING

 */

.aManTable {
	width				: 100%;
	display				: flex;
	flex-direction		: column;
	padding				: 5px;
}

.aManTable span {
	white-space			: nowrap;
	overflow			: hidden;
	flex				: 1 0;
	padding				: 5px;
}

.aManHeader {
	display				: flex;
	flex-direction		: row;
	overflow			: hidden;
	padding-right		: 6px;
	line-height			: 1.4;
	align-items			: center;
}

.aManBody {
	flex-direction		: column;
	overflow-x			: hidden;
	overflow-y			: auto;
	height				: 100%;
	font-size			: 0.85rem;
	margin-top			: 5px;
}

.aManBody > div {
	width				: 100%;
	display				: flex;
	flex				: 0 0;
	cursor				: default;
}

.aManBody > div:nth-of-type(2n + 1) {
	background-color	: rgba(0,0,0,0.1);
}

.aManBody > div > span:nth-of-type(1) > a {
	opacity				: 0.5;
	transition			: opacity 150ms ease;
	cursor				: pointer;
	line-height			: 14pt;
}

.aManBody > div > span:nth-of-type(1) > a:hover {
	opacity				: 1.0;
	transition			: opacity 150ms ease;
}

/*
		1/3/18 PS: MODAL FORMATTING

		<div class="modal">						//	DARKENS BACKGROUNS, FIXES POSITION, REMOVES SCROLLING
			<div class="modal-content">			//	POSITIONING AND CONTAINER OF CONTENT WITHIN DIALOG BOX, BROKEN DOWN INTO 1) HEADER AND 2) BODY
				<div class="modal-header">		//	CLOSE FLOATS TO THE RIGHT.  NO OTHER <div> IN HERE, JUST SPAN OR IMAGE
					<span class="modal-close">	//	HAS 'x' AS CONTENT
				<div class="modal-body">		//	MAIN CONTENT OF MODAL


*/

/*		MAIN DIV AND DARKENED BACKGROUND				*/
.modal {
	display				: none;
	position			: fixed !important;
	z-index				: 4;							/*	.container-header IS SET TO 3, BOTH OF WHICH ARE LOWER THAN ALERTIFY 	*/
	left				: 0;
	top					: 0;
	width				: calc(100% + 6px);				/* 6/25/19 PS: ACCOUNTS FOR THE VERTICAL SLIDER							*/
	height				: 100%;
	overflow			: hidden;
	background-color	: rgba(0,0,0,0.5);
}

/* 		ALL CONTENT (HEAD AND BODY) AND FORMATTING		*/
.modal-content {
	overflow			: hidden;
	margin				: 50px auto 0px auto;
    padding				: 10px;
    background-color	: var(--modal-content-background);
    border				: var(--modal-content-border);
    box-shadow			: rgb(0 0 0 / 50%) -25px 25px 15px;

    /*filter				: drop-shadow(0px 0px 20px rgb(0,0,0,1));*/

}

/*		MODAL HEADER									*/
.modal-header {
	position			: relative;
	font-size			: 13pt;
    font-weight			: bold;
    margin				: -10 0 10 -10;
    width				: calc(100% + 20px);
    background-color	: var(--modal-header-background);
    color				: var(--modal-header-color);
    padding				: 10;
	cursor				: move;
}

.modal-header span:nth-of-type(1) {
	display				: inline-block;
}

/*		CLOSE MODAL										*/
.fa-expand,
.modal-minimize,
.modal-close,
.modal-content-close {
    float				: right;
	font-weight			: 600;
	cursor				: pointer;
    margin-right		: 10;
    color				: rgba(255,255,255,0.5);
    transition			: color 150ms ease;

}

.modal-close:before,
.modal-content-close:before {
	font-family			: "Font Awesome 5 Free";
	font-size			: 20px;
	content				: '\f00d';
	margin-right		: -5px;
}

.fa-expand:hover,
.modal-minimize:hover,
.modal-close:hover,
.modal-content-close:hover {
	color				: rgba(255,255,255,0.85);
	transition			: color 150ms ease;
}

.modal-footer {
	padding				: 10px;
}


/*		MODAL TOGGLE												*/
.modal-toggle {
	cursor				: pointer;
}

/*
		TABS

 */

.tab {
	margin				: 5px;
	padding				: 5px;
	display				: inline-block;
	opacity				: 0.5;
	cursor				: pointer;
}

.tab.active {
	border-top			: 1px solid;
	opacity				: 1.0;
}


/*
		MODAL TABLE STYLING WITH DIVS AND SPANS

*/

.input-modal button:not(.dropdown-header) {
	height				: 30px;
	background-color	: #444;
	color				: #EFEFEF;
	min-width			: 80px;
	cursor				: pointer;
	line-height			: 0;
	transition			: background-color 150ms ease;
}

.input-modal button:not(.dropdown-header):hover,
.input-modal button:not(.dropdown-header):focus {
	/*color				: #222;*/
	transition			: background-color 150ms ease;
}

.input-section {
	display				: flex;
	flex-direction		: column;
}

.input-section > div {
	display				: flex;
	flex-direction		: row;				/* NOT NECESSARY TO CALL OUT EXPLICITLY, BUT SINCE OUTER DIV IS 'COLUMN', CALLING OUT ANYWAY */
	flex				: 1 0 30px;
	max-height			: 50px;
	border				: 2px solid transparent;
}

.input-section span {
	white-space			: nowrap;
}

.input-section > div > span:nth-of-type(1) {
	flex				: 0 40%;
	display				: flex;
	align-items			: center;
	padding				: 5px;
	background-color	: var(--modal-span-back);
	color				: var(--modal-span-color);
}

.input-section > div > span:nth-of-type(n + 2) {
	flex				: 0 60%;
	display				: grid;
}

.input-section option {
	font-size			: inherit;
	line-height			: inherit;
}

#acctContactTable th,
#acctContactTable td {
	max-width			: initial;
	padding				: 2px 5px;
}

#acctContactTable th:nth-of-type(1),
#acctContactTable td:nth-of-type(1) {
	width				: 30%;
}

#acctContactTable th:nth-of-type(2),
#acctContactTable td:nth-of-type(2) {
	width				: 25%;
}

#acctContactTable th:nth-of-type(3),
#acctContactTable td:nth-of-type(3) {
	width				: 40%;
}

#acctContactTable th:nth-of-type(4),
#acctContactTable td:nth-of-type(4) {
	width				: 5%;
}

#acctSystemGroupList {
	display				:flex;
	flex-direction		:column;
	flex				:1;
	padding				:2.5px;
	overflow-y			:auto;
}

#acctSystemGroupList > div {
	margin				: 2.5px;
	height				: 32px;
	background-color	: var(--modal-span-back);
	color				: var(--modal-span-color);
	display				: flex;
	justify-content		: space-between;
	cursor				: default;
}

#acctSystemGroupList > div > span {
	margin				: 6px;
}

#acctSystemGroupList > div > span:nth-of-type(1) {
	flex				: 0 calc(50% - 30px / 4);
}

#acctSystemGroupList > div > span:nth-of-type(2) {
	flex				: 0 calc(20% - 30px / 4);
}

#acctSystemGroupList > div > span:nth-of-type(3) {
	flex				: 0 calc(10% - 30px / 4);
	text-align			: center;
}

#acctSystemGroupList > div > span:nth-of-type(4) {
	flex				: 0 calc(20% - 30px / 4);
	text-align			: right;
	padding-right		: 15px;
}

#acctSystemGroupList > div > span:nth-of-type(5) {
	flex				: 0 22px;
	position			: relative;
	background-color	: black;
	border				: 1px solid black;
	margin-right		: 15px;
	margin-left			: 15px;
	cursor				: pointer;
}

#apiGroupTable tr > th:nth-of-type(1),
#apiGroupTable tr > td:nth-of-type(1) {
	width				: 25px;
	text-align			: right;
}

#apiGroupTable tr > th:nth-of-type(2),
#apiGroupTable tr > td:nth-of-type(2),
#apiGroupTable tr > th:nth-of-type(4),
#apiGroupTable tr > td:nth-of-type(4) {
	width				: 20%;
}

#apiGroupTable tr > th:nth-of-type(3),
#apiGroupTable tr > td:nth-of-type(3) {
	width				: 25%;
}

#apiGroupTable tr > td:nth-of-type(3) {
	display				: block;
	padding				: 4px;
	text-align			: right;
}

#apiGroupTable tr > th:nth-of-type(5),
#apiGroupTable tr > td:nth-of-type(5) {
	width				: 30%;
}

#apiGroupTable tr > th:nth-of-type(6),
#apiGroupTable tr > td:nth-of-type(6) {
	width				: 50px;
}




button.btn-cancel,
button.btn-save,
button.btn-action {
	box-shadow			: 0px 5px 5px -4px rgba(0,0,0,0.5);
	transition			: background-color 150ms ease, color 150ms ease;
	margin				: 2.5px;
}

button.btn-action:not(.disabled-btn):hover,
button.btn-action:not(.disabled-btn):focus {
	background			: #FFBE00;
	color				: black;
	font-weight			: bold;
	transition			: background-color 150ms ease, color 150ms ease;
}

button.btn-cancel:hover,
button.btn-cancel:focus {
	background-color	: darkred;
	color				: #FAFAFA;
	font-weight			: bold;
	transition			: background-color 150ms ease, color 150ms ease;
}

button.btn-save:hover,
button.btn-save:focus {
	background-color	: darkgreen;
	color				: #FAFAFA;
	font-weight			: bold;
	transition			: background-color 150ms ease, color 150ms ease;
}

button.btn-action:active {
	background-color	: gold;
}

button.btn-save:active {
	background-color	: #03A703;
}

button.btn-cancel:active {
	background-color	: red;
}

button.btn-save:not(.disabled-btn):active,
button.btn-cancel:not(.disabled-btn):active,
button.btn-action:not(.disabled-btn):active {
	box-shadow			: none;
}

/* 6/3/18 PS: CREATED THIS TODAY JUST FOR */
.modal-table {
	width				: 100%;
}

.modal-table > thead {
	color				: white;
	font-weight			: bold;
}

.modal-table > thead > tr {
	background-color	: #666;
}

.modal-table tr {
	height				: 30px;
}

.modal-table > tbody td {
	text-align			: center;
	width				: 1000px;
}


/*
		END MODAL TABLE STYLING WITH DIVS AND SPANS

*/


/* 
		SLIDESHOW FORMATTING

*/
.slideshow {
  position				: relative;
  width					: 100%;
  height				: 100%;
  display				: flex;
  justify-content		: center;
  align-items			: center;
  overflow				: hidden;
}

.slideshow > div {
  position				: absolute;
  width					: 100%;
  top					: 0;
}

.slideshow > div > img {
	width				: 100%;
}


/*
		END SLIDESHOW FORMATTING

*/

/* 
		POPOVER FORMATTING 

*/

.infoBox {
	font-family				: var(--font-family);
	position				: absolute;
	z-index					: 2;
	max-width				: 250px;
	top						: 50;
	width					: fit-content;
	text-align				: left;
	line-height				: initial;
	padding					: 7px;
	border					: 1px solid rgba(255,255,255,0.75);
	background-color		: rgba(0,0,0,0.85);
	box-shadow				: 0px 10px 10px -5px rgba(0,0,0,0.75);
	font-weight				: normal;
	font-size				: 0.8rem;
	white-space				: initial;
	color					: #EFEFEF;
	opacity					: 0;
	transition				: opacity 250ms ease;

}

.infoBox.active {
	opacity					: 1;
	transition-property		: opacity;
	transition-duration		: 250ms;
	transition-delay		: 500ms;
}

/*.hasInfo {
	position				: relative;
}*/

/*.hasInfo:after {*/
    /*display					: inline-block;*/
    /*padding-left			: 7px;*/
    /*font-family				: "Font Awesome 5 Free";*/
    /*content					: '\f128';*/
    /*opacity					: 0.5;*/
    /*cursor					: help;*/
    /*font-size				: 9px;*/
/*}*/

/*.hasInfo:hover:after {*/
	/*opacity					: 0.75;*/
/*}*/

div.popover {
	min-width				: 120px;
	width					: fit-content;
	border-radius			: 0px;
	font-size				: 0.8rem;
	outline					: 0;
	display					: none;
	position				: absolute;
	height					: fit-content;
	z-index					: 100;
	background-color		: #333 !important;
	color					: #EFEFEF;
	box-shadow				: 0px 8px 9px -4px rgba(0,0,0,0.6);
}

div.popover div {
	cursor					: default !important;
}

div.pop-top {
	top						: 100%;
}

div.pop-left {
	right					: calc(100% + 10px);
}

div.pop-inner {
	width					: 100% !important;
	display					: flex;
	flex-direction			: column;
	background-color		: #333 !important;
	height					: auto;
}

div.pop-inner > .pop-head {
    background-color		: rgba(255,255,255,0.1) !important;
    color					: #EFEFEF !important;
    font-weight				: bold;
    display					: block;
    height					: fit-content;
    border					: 0 !important;
    width					: 100% !important;
    text-align				: left;
    line-height				: 12pt;
    padding					: 3px;
}

div.pop-inner > .pop-head:after {
	content					: '';
}

div.pop-inner a {
	position				: initial;
	text-decoration			: none;
	padding					: 5px;
	background-color		: transparent;
	color					: #EFEFEF !important;
	transition				: all 250ms ease;
	transform				: none;
	text-align				: left;
	line-height				: initial;
}

div.arrow-right {
	width					: 0;
	height					: 0;
	border-top				: 10px solid transparent;
	border-bottom			: 10px solid transparent;
	border-left				: 10px solid #333;
	top						: calc(50% + 0px);
	left					: 100%;
	position				: absolute;
}

div.arrow-left {
	width					: 0;
	height					: 0;
	border-top				: 10px solid transparent;
	border-bottom			: 10px solid transparent;
	border-right			: 10px solid #333;
	top						: calc(50% + 0px);
	right					: 100%;
	position				: absolute;
}

div.arrow-bottom {
	width					: 0;
	height					: 0;
	border-top				: 10px solid #333;
	border-left				: 10px solid transparent;
	border-right			: 10px solid transparent;
	top						: 100%;
	right					: calc(50% - 5px);
	position				: absolute;
}

a.pop-detail {
	display					: block;
	max-width				: 100%;
	margin					: 0;
	padding					: 3px 5px 3px 5px;
	text-align				: left;
	background-color		: #444;
	color					: white;
}

a.pop-detail > x {
	float					: right;
	text-align				: right;
	margin-left				: 10px;
}

a.pop-detail i {
	float					: right;
	vertical-align			: middle;
	line-height				: 16px;
	margin-left				: 10px;
}

/* DISABLED <a> AND <span> ELEMENTS */
a.disabled,
a.disabled:hover,
span.disabled {
	color					: #9E9E9E;
	cursor					: default !important;
}

div.popover:not(.pop-info) a:hover {
	background-color		: gold;
	color					: #222 !important;
	font-weight				: bold;
	transition				: all 250ms ease;
	cursor					: pointer;
}

div.pop-warning {
	max-width				: 500px;
	background-color		: gold !important;
	color					: black !important;
}

/*
		END POPOVER FORMATTING 

*/

/* The Close Button */
.close {
	float					: right;
	font-size				: 28px;
	font-weight				: bold;
	opacity					: 0.3;
}

.close:hover,
.close:focus {
	text-decoration			: none;
	cursor					: pointer;
}

button.close {
	padding					: 0px 8px;
}

.noSelect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

::selection {
	color					: black;
	background-color		: #FFDC00;
}

::-webkit-input-placeholder, 			/* Chrome/Opera/Safari */
::-moz-placeholder, 					/* Firefox 19+ */
:-ms-input-placeholder,  				/* IE 10+ */
:-moz-placeholder {						/* Firefox 18- */
	color					: #DDD;
}
