﻿@charset "UTF-8";
/*************************************************************/
/**************** GENERIC HTML ELEMENT STYLES ****************/
/*************************************************************/
* {
  outline: none;
}
*:focus {
  outline: 2px solid #2e77ff;
}

BODY {
  background-color: white;
  width: 100%;
  height: 100%;
  padding: 0px;
  margin: 0px;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  color: #333333;
}

TABLE {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  color: #333333;
}

A {
  color: #595959;
  text-decoration: none;
}

HR {
  border: none;
  border-top: 1px solid #AAAAAA;
  height: 1px;
  color: transparent;
  background-color: transparent;
  line-height: 1px;
  padding: 0px;
  margin: 0px;
}

H1 {
  font-weight: bold;
  cursor: default;
  font-size: 2em;
  background-color: #5AAEFF;
}
H1::selection,
H1 *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}

H2 {
  font-weight: bold;
  cursor: default;
  font-size: 1.6em;
  line-height: 55px;
  margin: 5px;
  color: #2e77ff;
}
H2::selection,
H2 *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}

H3 {
  font-weight: bold;
  cursor: default;
  font-size: 1.4em;
  color: #000e3c;
  height: 20px;
  padding: 0px;
  margin: 10px 0px;
  letter-spacing: 0.5px;
}
H3::selection,
H3 *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}

INPUT {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  color: #333333;
}
INPUT[type=submit], INPUT[type=button] {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  color: #333333;
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  height: 22px;
  padding: 0px 10px;
  font-size: 12px;
  text-align: center;
  -webkit-user-select: none;
}
INPUT[type=submit]:disabled, INPUT[type=button]:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
INPUT[type=submit]:hover:not(:disabled), INPUT[type=button]:hover:not(:disabled) {
  background-color: #fcfdfe;
  border-color: #2e77ff;
}
INPUT[type=submit]:active:not(:disabled):not(.importantButtonPersonSelector), INPUT[type=button]:active:not(:disabled):not(.importantButtonPersonSelector) {
  transform: translateY(1px);
  box-shadow: 0px -1px #CCCCCC;
}
INPUT[type=checkbox] {
  color: #595959;
  border-color: #595959;
}
INPUT[type=text], INPUT[type=password], INPUT[type=number], INPUT[type=email] {
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  font-size: 12px;
  height: 26px;
  padding-left: 4px;
  color: #595959;
}
INPUT[type=text]:disabled, INPUT[type=password]:disabled, INPUT[type=number]:disabled, INPUT[type=email]:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
INPUT[type=number] {
  -moz-appearance: textfield;
  text-align: right;
}
INPUT[type=color] {
  -moz-appearance: textfield;
  border: none;
  border-color: #AAAAAA;
  border-radius: 1px;
  height: 22px;
  box-shadow: none;
  padding: 0px;
}
INPUT:disabled {
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
INPUT:not([type=checkbox]):not([type=radio]):not([type=range]) {
  -webkit-appearance: none;
}
INPUT::-ms-clear {
  color: #4274AA;
}

TEXTAREA {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  color: #333333;
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  overflow-y: hidden;
  resize: none;
  color: #595959;
}
TEXTAREA:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
TEXTAREA:disabled {
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}

SELECT {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  color: #333333;
  color: #595959;
}
SELECT[multiple] {
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
}
SELECT[multiple]:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
SELECT[multiple]:hover:not(:disabled) {
  background-color: #fcfdfe;
  border-color: #2e77ff;
}
SELECT:not([multiple]) {
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  height: 22px;
  background: url(images/DropdownArrow.png);
  background-color: white;
  background-image: url(images/DropdownArrow.svg), none;
  background-size: 15px 9px;
  background-repeat: no-repeat;
  background-position: right 2px center;
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: "";
  padding-left: 4px;
  padding-right: 20px;
}
SELECT:not([multiple]):disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
SELECT:not([multiple]):hover:not(:disabled) {
  background-color: #fcfdfe;
  border-color: #2e77ff;
}
SELECT[multiple]::selection,
SELECT[multiple] *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
SELECT::-ms-expand {
  display: none;
}
SELECT:disabled {
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}

OPTION {
  padding: 4px;
  transition: border-left-width linear 0.1s;
  border-left: 0px solid #2e77ff;
  color: #333333;
  box-sizing: border-box;
  background: white !important;
}
OPTION:hover:not(:disabled) {
  background: #F9FAFF !important;
  border-left-width: 4px;
}
OPTION:checked {
  background: #000e3c !important;
  color: white;
}
OPTION:checked:hover {
  background: #000e3c !important;
}
OPTION:disabled {
  background: #EEEEEE !important;
  color: #777777;
}

FIELDSET {
  border: none;
  padding: 5px 0px;
  margin-top: 10px;
}

LEGEND {
  /*font-style:italic;*/
  font-size: 10pt;
  color: #333333;
  background: #F0F4FF;
  padding: 5px 0px 5px 5px;
  width: 99%;
  font-size: 1.2em;
}

/*****************************************************/
/**************** UTILITY CSS CLASSES ****************/
/*****************************************************/
.measureTextSize {
  padding: 0px;
  margin: 0px;
  position: fixed;
  visibility: hidden;
  height: auto;
  width: auto;
  white-space: nowrap;
}
.measureTextSize.measureHeight {
  white-space: pre-wrap;
  word-wrap: break-word;
}

.singleInch {
  width: 72pt; /* 72pt = 1 inch */
  height: 72pt;
  display: block;
  position: absolute;
  visibility: hidden;
}

.guidebox {
  border-radius: 5px;
  box-shadow: 0px 1px 6px 1px rgba(0, 0, 0, 0.3);
  text-align: right;
  display: block;
  background-color: white;
}
.guidebox .close {
  padding: 5px;
}

.blackout {
  width: 100vw;
  height: 100vh;
  position: fixed;
  left: 0px;
  top: 0px;
  display: block;
  padding: 0px;
  margin: 0px;
  z-index: 1000;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.blackout > * {
  flex: 0 0 auto;
}
.blackout .closeMessage {
  color: white;
  margin-top: 30px;
  font-size: 2em;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
  border-radius: 20px;
  transition: opacity linear 0.2s;
  opacity: 0;
}
.blackout:hover .closeMessage {
  opacity: 0.8;
}
.blackout .videoWrapper {
  position: static;
}
.blackout .videoWrapper video {
  width: 100%;
}

/*****************************************************************************/
/**************** GENERIC CLASSES USED THROUGHOUT APPLICATION ****************/
/*****************************************************************************/
.defaultHidden {
  display: none;
}

.standardPageHeader {
  height: 20px;
  padding: 10px 0px;
  margin: 0px;
  width: 100%;
  position: relative;
}
.standardPageHeader h3 {
  text-align: center;
  /*line-height: 12px;*/
  width: 100%;
  padding: 0px;
  margin: 0px;
}
.standardPageHeader div[data-options] {
  width: 50vw;
  position: absolute;
  left: 0px;
  top: 10px;
  padding: 0px;
  margin: 0px;
}
.standardPageHeader div[data-options] fieldset {
  border: none;
  padding: 0px;
  margin: 0px;
}
.standardPageHeader .expandCollapse {
  position: absolute;
  right: 0px;
  top: 5px;
}

.partialPage {
  position: relative;
}

.capsule {
  border: 1px solid #AAAAAA;
  border-radius: 6px;
}
.capsule th {
  background-image: linear-gradient(to top, rgb(187, 187, 187) 0%, rgb(240, 245, 249) 2%, rgb(240, 245, 249) 50%, rgb(241, 246, 252) 80%, rgb(241, 246, 252) 98%);
}

.imgDelete {
  text-align: center;
  width: 12px;
  height: 12px;
  cursor: default;
}

.imgDeleteDisabled {
  text-align: center;
  width: 12px;
  height: 12px;
  opacity: 0.4;
}

input.bestoutcomeCheckbox {
  width: 0px;
  height: 0px;
  appearance: none;
  margin: 0px;
}
input.bestoutcomeCheckbox:focus {
  outline: none;
}
input.bestoutcomeCheckbox + label {
  background: url(images/checkbox-unchecked.png);
  background-image: url(images/checkbox-unchecked.svg), none;
  background-size: 16px 14px;
  background-repeat: no-repeat;
  background-position: left center;
  display: inline-block;
  height: 14px;
  padding-left: 16px;
}
input.bestoutcomeCheckbox + label::selection,
input.bestoutcomeCheckbox + label *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
input.bestoutcomeCheckbox:disabled + label {
  opacity: 0.3;
}
input.bestoutcomeCheckbox:checked + label {
  background: url(images/checkbox-checked.png);
  background-image: url(images/checkbox-checked.svg), none;
  background-size: 16px 14px;
  background-repeat: no-repeat;
  background-position: left center;
}
input.bestoutcomeCheckbox:indeterminate + label {
  background: url(images/checkbox-partial.png);
  background-image: url(images/checkbox-partial.svg), none;
  background-size: 16px 14px;
  background-repeat: no-repeat;
  background-position: left center;
}
input.bestoutcomeCheckbox:focus + label {
  outline: 2px solid #2e77ff;
}

input.bestoutcomeRadio {
  width: 0px;
  height: 0px;
  appearance: none;
  margin: 0px;
}
input.bestoutcomeRadio:focus {
  outline: none;
}
input.bestoutcomeRadio + label {
  background: url(images/radio-unchecked.png);
  background-image: url(images/radio-unchecked.svg), none;
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: left center;
  display: inline-block;
  height: 14px;
  padding-left: 16px;
}
input.bestoutcomeRadio + label::selection,
input.bestoutcomeRadio + label *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
input.bestoutcomeRadio:disabled + label {
  opacity: 0.3;
}
input.bestoutcomeRadio:checked + label {
  background: url(images/radio-checked.png);
  background-image: url(images/radio-checked.svg), none;
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: left center;
}
input.bestoutcomeRadio:focus + label {
  outline: 2px solid #2e77ff;
}

input.bestoutcomeCheckbox:not(:disabled) + label:hover,
input.bestoutcomeRadio:not(:disabled) + label:hover {
  color: #2e77ff;
}

INPUT.importantButton, Button.importantButton {
  background-color: #4888ff;
  color: white;
  border: none;
}
INPUT.importantButton:hover:not(:disabled), Button.importantButton:hover:not(:disabled) {
  background-color: #1566ff;
  /*border: $BORDER_Darker;*/
}
INPUT.importantButton:disabled, Button.importantButton:disabled {
  background-color: #D9E0E5;
  color: #777777;
  text-shadow: none;
  border-color: #999999;
}
INPUT.importantButton:active:not(.importantButtonPersonSelector), Button.importantButton:active:not(.importantButtonPersonSelector) {
  transform: translateY(1px);
  box-shadow: 0px -1px black !important;
}

input.popupImportantButton, .popupBasicButton {
  width: 60px;
}

.flash {
  box-shadow: 0px 0px 0px 3px #5AAEFF inset !important;
}

.dvPopupButtons {
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: flex-end;
  width: 100%;
  text-align: center;
  height: 35px;
  bottom: 0px;
  background-color: white;
  z-index: 5;
  margin-top: auto;
  flex-shrink: 0;
}
.dvPopupButtons input {
  margin: 0 4px;
}

.dvContent {
  overflow-y: auto;
}

.flex-column {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.fullsize {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
}

.border-top {
  border-top: 1px solid #DDDDDD;
}

.container {
  border: 1px solid #DDDDDD;
  border-radius: 3px;
  display: block;
  height: calc(100vh - 154px);
  overflow-y: auto;
}

.redText {
  color: red;
}

.tooltip:hover {
  cursor: help;
  /* If line and style not supported */
  text-decoration: underline;
  /* If line and style are supported */
  text-decoration-line: underline;
  text-decoration-style: dotted;
}

.loaderLite {
  z-index: 10;
  position: fixed;
  background-color: white;
  flex-direction: row;
  align-items: center;
  right: 10px;
  bottom: 40px;
  min-width: 160px;
  min-height: 40px;
  padding: 10px;
  text-align: left;
  border: 1px solid #CCCCCC;
  border-radius: 4px;
  color: #8E99A5;
  font-size: 1.5em;
  opacity: 1;
  cursor: wait;
  box-shadow: 0px 1px 6px 1px rgba(0, 0, 0, 0.3);
  transition: opacity linear 0.1s;
}
.loaderLite::selection,
.loaderLite *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.loaderLite.hidden {
  opacity: 0;
}
.loaderLite img {
  flex: 0;
  width: 30px;
  height: 30px;
  display: inline-block;
}
.loaderLite img.hidden {
  display: none;
}
.loaderLite span {
  flex: 1;
  display: inline-block;
  margin-left: 10px;
  margin-right: 10px;
}

.loader_icon {
  width: 40px;
  height: 40px;
  position: fixed;
  left: calc(50% - 20px);
  top: calc(50% - 20px);
}

.wrapToContainer {
  position: absolute;
}
.wrapToContainer .loader_icon {
  position: absolute;
}

@keyframes rotateRight {
  0% {
    transform: rotate(0deg);
    transform-origin: 50% 50%;
  }
  100% {
    transform: rotate(360deg);
  }
}
.loader_icon,
.animate {
  animation: 0.6s rotateRight infinite linear;
}

/***************************************************/
/**************** MENU (TAB) STYLES ****************/
/***************************************************/
.menu {
  z-index: 5;
  position: fixed;
  height: 32px;
  border-bottom: 1px solid #DDDDDD;
  background-color: #FFFFFF;
  display: block;
  width: 100vw;
  /*overflow-y: hidden;*/
}

.menu-left {
  width: 100vw;
  max-width: 800px;
  overflow: hidden;
  display: inline-block;
  left: 0px;
  line-height: 10px;
  z-index: inherit;
}
.menu-left > ul {
  list-style: none;
  font-size: 0px;
  white-space: nowrap;
  padding-left: 1px;
  margin: 0;
  background-color: transparent;
  max-height: 28px;
  overflow: hidden;
  display: table;
  border-spacing: 1px;
  table-layout: fixed;
  width: 100%;
}
.menu-left > ul > li {
  max-width: 80px;
  border-radius: 5px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  color: White;
  background-color: #000e3c;
  text-align: center;
  overflow: hidden;
  display: table-cell;
  white-space: normal;
  height: 100%;
  max-height: 31px;
  vertical-align: middle;
  position: static;
  box-sizing: border-box;
  padding: 0px 1px;
  font-size: 12px;
}
.menu-left > ul > li::selection,
.menu-left > ul > li *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.menu-left > ul > li > a {
  width: 100%;
  color: White;
  text-decoration: none;
  padding: 0px;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  cursor: default;
}
.menu-left > ul > li > a:focus {
  outline: none;
  text-decoration: underline;
}
.menu-left > ul > li > a div {
  cursor: default;
  height: 28px;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  text-align: center;
  z-index: inherit;
}
.menu-left > ul > li:not(.selected):focus-within {
  background-color: #2e77ff;
}
.menu-left > ul > li:hover {
  background-color: #2e77ff;
}
.menu-left > ul > li:hover ~ .selected {
  border-bottom: #DDDDDD;
  z-index: 2;
}
.menu-left > ul > li.selected { /* Non-subtab only subtab styles */
  /*position:absolute;*/
  background-color: #FFFFFF;
  border-top: 1px solid #000e3c;
  border-left: 1px solid #000e3c;
  border-right: 1px solid #000e3c;
  height: 32px;
  box-sizing: border-box;
}
.menu-left > ul > li.selected > a {
  color: #000e3c;
}
.menu-left > ul > li.selected .menu-subtab {
  margin-top: -1px;
}
.menu-left .dirty {
  font-style: italic;
}
.menu-left .dirty div::after {
  content: "*";
}

/*@media screen and (min-width:800px) {
    .menu-left {
        width: 80vw;
    }
}

@media screen and (min-width:1000px) {
    .menu-left {
        width: 70vw;
    }
}*/
/*:not(.isTouchDevice) { /* Only do these on devices that generate scrollbars, otherwise its going to be impossible for users to access all tabs 
    .menu-left > ul {
        max-height: $HEIGHT_HeaderTabs - 1px;
        overflow: hidden;

        &:hover {
            max-height: none;
            overflow-x: auto;
        }
    }
}*/
.menu-right {
  width: calc(45% - 4px);
  padding-right: 2px;
  float: right;
  display: inline-block;
  line-height: 30px;
  text-align: right;
  position: static;
}

.menu-subtab {
  position: absolute;
  list-style: none;
  overflow-x: hidden;
  overflow-y: visible;
  padding: 0px;
  margin: 0px;
  /*margin-top:1px;*/
  height: auto;
  width: auto;
  background-color: transparent;
  z-index: -1;
  display: flex;
  flex-direction: column;
  border: 1px solid #c7dbff;
  box-shadow: 0px 1px 6px 1px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}
.menu-subtab .menu-subtab-item {
  background: white;
  border: none;
  border-radius: 0px;
  padding: 0px;
  margin: 0px;
  line-height: 20px;
  text-align: left;
  min-width: 150px;
  max-width: 300px;
  min-height: 20px;
  display: flex;
  flex-direction: row;
  z-index: inherit;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.menu-subtab .menu-subtab-item a {
  width: 100%;
  height: 100%;
  padding: 4px 10px;
}
.menu-subtab .menu-subtab-item:hover {
  background-color: #F3F9FC;
}
.menu-subtab .menu-subtab-item.selected {
  font-weight: bold;
}
.menu-subtab .menu-subtab-item.selected div {
  flex: 1;
}
.menu-subtab .menu-subtab-item.selected div:before {
  flex: 0 0 30px;
  content: "►";
  display: inline-block;
  padding-right: 5px;
}

.contentPane {
  margin-top: 103px;
  padding-top: 33px;
  width: 100%;
  position: relative;
  display: block;
  height: calc(100vh - 154px);
  z-index: 0;
}

body[data-winforms=true] .contentPane {
  margin-top: 0px;
  padding-top: 0px;
  height: 100%;
}

/***************************/
.hideHeaderControls .toolbar,
.hideHeaderControls #dvToolStripButtonsWrapper,
.hideHeaderControls .menu {
  display: none;
}

/******************************************************************************************************/
/*

    TODO: Everything from below this point onwards is specific to individual custom controls, and
    does not really belong in the global css file. Consider moving to separate CSS files so as to keep
    things modular.


*/
/******************************************************************************************************/
.datePickerCal {
  position: relative;
  display: inline-flex !important;
  flex-direction: row;
  align-items: center;
  height: 22px;
  min-width: 108px;
  width: 108px;
}
.datePickerCal.hidden {
  height: 0px;
  width: 0px;
  min-width: 0px;
}
.datePickerCal.invalid * {
  background-color: #ffeaea;
  border-color: red !important;
}
.datePickerCal img.datePickerOpenBtn {
  height: 100%;
  box-sizing: border-box;
  width: 22px;
  flex: 0 0 22px;
  border: 1px solid #CCCCCC;
  border-right: none;
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
  cursor: pointer;
  background-color: white;
  padding: 1px;
}
.datePickerCal img.datePickerOpenBtn:hover {
  background-color: #E7EEFA;
}
.datePickerCal input.datePickerInput {
  width: 86px;
  height: 100%;
  flex: 1 1 auto;
  padding: 0px 10px 0px 5px;
  box-sizing: border-box;
  text-align: left;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  border-left: none;
}
.datePickerCal input.datePickerInput:disabled {
  background-image: none;
}
.datePickerCal.hasShiftBtns img.datePickerOpenBtn {
  border-radius: 0px;
  border-left: none;
  border-right: none;
}
.datePickerCal.hasShiftBtns input.datePickerInput {
  border-radius: 0px;
  border-left: none;
  border-right: none;
}
.datePickerCal .leftShiftBtn {
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  border-right: none;
  padding: 2px 3px 3px 2px;
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
.datePickerCal .leftShiftBtn:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
.datePickerCal .leftShiftBtn:hover:not(:disabled) {
  background-color: #fcfdfe;
  border-color: #2e77ff;
}
.datePickerCal .rightShiftBtn {
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  border-left: none;
  padding: 2px 2px 3px 3px;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.datePickerCal .rightShiftBtn:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
.datePickerCal .rightShiftBtn:hover:not(:disabled) {
  background-color: #fcfdfe;
  border-color: #2e77ff;
}
.datePickerCal.open img.datePickerOpenBtn {
  background-color: #E7EEFA;
}

/*************************************************/
/**************** COMBOBOX STYLES ****************/
/*************************************************/
.combobox {
  padding: 0px;
  position: relative;
  display: inline-block;
  width: 100%;
  height: 24px;
  cursor: default;
  box-sizing: border-box;
  vertical-align: middle;
}
.combobox input[type=text] {
  height: 100%;
  width: calc(100% - 30px);
  position: absolute;
  z-index: 2;
  font-size: 12px;
  left: 0px;
  top: 0px;
  border: none;
  box-sizing: border-box;
  background-color: transparent;
}
.combobox input[type=text]:hover {
  background-color: transparent;
}
.combobox select {
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 0px;
  box-sizing: border-box;
  color: white;
}

/*************************************************/
/************** PROGRESS BAR STYLES **************/
/*************************************************/
.progressBar {
  padding: 0px;
  background-color: white;
  color: #444444;
  border: 1px solid #DDDDDD;
  position: relative;
}

/*************************************************/
/************* RICH TEXT BOX STYLES **************/
/*************************************************/
.richbox {
  display: inline-flex;
  flex-direction: column;
  box-sizing: border-box;
  background-color: #ecf2f6;
  border: 1px solid #DDDDDD;
}
.richbox ul, .richbox li {
  line-height: normal;
}
.richbox div:not(.richBoxToolDD) > img {
  width: 20px;
  height: 20px;
  padding-top: 5px;
  margin: 0px;
}
.richbox a {
  color: #29A8E0;
}

.richbox_buttonstrip {
  width: 100%;
  flex: 0 0 30px;
  display: block;
  background-color: #ecf2f6;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  padding-left: 1px;
}
.richbox_buttonstrip img {
  opacity: 0.6;
}
.richbox_buttonstrip > div {
  box-sizing: border-box;
  height: 100%;
  min-width: 30px;
  line-height: 30px;
  background-color: #ecf2f6;
  display: inline-block;
  color: #555555;
  font-size: 11pt;
  text-align: center;
  vertical-align: middle;
  cursor: default;
  overflow: hidden;
}
.richbox_buttonstrip > span {
  box-sizing: border-box;
  height: 100%;
  min-width: 30px;
  line-height: 30px;
  background-color: #ecf2f6;
  display: inline-block;
  color: #555555;
  font-size: 11pt;
  text-align: center;
  vertical-align: middle;
  cursor: default;
  overflow: hidden;
  font-size: 12px;
  padding-left: 5px;
  padding-right: 5px;
  float: right;
}
.richbox_buttonstrip > .richBoxToolSpacer {
  width: 1px;
  min-width: 0px;
  height: 30px;
  padding: 0px;
  margin: 0px 1px;
  background: #DDDDDD;
}
.richbox_buttonstrip > .richBoxToolDD {
  width: 10px;
  min-width: 0px;
  height: 30px;
  padding: 0px;
  margin: 0px 0px 0px -8px;
}
.richbox_buttonstrip > .richBoxToolDD img {
  width: 100%;
}

.richbox:not(.disabled) .richbox_textbox {
  background-color: white;
}
.richbox:not(.disabled) .richbox_buttonstrip img {
  opacity: 1;
}
.richbox:not(.disabled) .richbox_buttonstrip > div:not(.richBoxToolSpacer):hover {
  background-color: white;
}

.richbox_textbox {
  width: 100%;
  flex: 1;
  background-color: #EEEEEE;
  display: block;
  padding: 5px;
  overflow-y: auto;
  overflow-x: auto;
  box-sizing: border-box;
  border-top: 1px solid #DDDDDD;
  line-height: normal;
  word-wrap: break-word;
  word-break: break-word;
  cursor: text;
}
.richbox_textbox::selection,
.richbox_textbox *:not(input):not(textarea)::selection {
  background-color: #29A8E0 !important;
  color: white;
  outline: #29A8E0 !important;
}
.richbox_textbox a:hover {
  background-color: #f1f4ff;
  text-decoration: underline;
  cursor: pointer;
}
.richbox_textbox * {
  margin-top: 0px;
  margin-bottom: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
}
.richbox_textbox li {
  width: calc(100% - 20px);
}

/**********************************************************/
/*************** DELIVERY STATUS SELECTOR *****************/
/**********************************************************/
.deliveryStatusLightControl {
  /*border:1px solid;*/
  background-color: white;
  display: inline-block;
  height: 92px;
  padding: 0px 10px 10px 10px;
  position: relative;
}

.deliveryStatusLightControl-left,
.deliveryStatusLightControl-right {
  display: inline-block;
  text-align: left;
  height: 100%;
  padding: 0px;
  margin: 0px;
}

.deliveryStatusLightControl-left {
  width: 100px;
  float: left;
}
.deliveryStatusLightControl-left fieldset {
  padding: 0px;
  height: 100%;
}
.deliveryStatusLightControl-left legend {
  padding: 0px 0px 0px 2px;
  width: 90px;
  margin: 0px;
  background-color: transparent;
  font-size: 1.1em;
  color: black;
}

.deliveryStatusLightControl-right {
  width: calc(100% - 100px);
  float: right;
}

.deliveryStatusLightControl-override {
  position: relative;
}
.deliveryStatusLightControl-override label {
  vertical-align: middle;
  font-style: italic;
  line-height: 14px;
  display: block;
  margin-left: 4px;
  margin-top: 2px;
  font-size: 0.95em;
}
.deliveryStatusLightControl-override input {
  left: 0px;
  position: absolute;
}

.deliveryStatusLightControl-dropdown {
  margin-top: 4px;
  margin-left: 5px;
  width: 75px;
}

.deliveryStatusLightControl-traffic {
  display: inline-block;
  width: 25px;
  height: 66px;
  padding: 5px;
  background-color: white;
  text-align: center;
  margin-top: 12px;
  /*border: 1px solid #BBBBBB;*/
}

.deliveryStatusLightControl-light {
  display: inline-block;
  border-radius: 20px;
  box-sizing: border-box;
  border: 1px solid #999999;
  width: 20px;
  height: 20px;
  background-color: white;
}
.deliveryStatusLightControl-light.closed {
  background-color: #2D2D2C;
}
.deliveryStatusLightControl-light.Red:not(.disabled):not(.closed) {
  background-color: #fc6f6d;
}
.deliveryStatusLightControl-light.Amber:not(.disabled):not(.closed) {
  background-color: #e9cd18;
}
.deliveryStatusLightControl-light.Green:not(.disabled):not(.closed) {
  background-color: #00d88a;
}

.dssCloseButton {
  position: absolute;
  z-index: 1;
  top: 1px;
  right: 1px;
}

/********************************/
/****** COLOUR PICKER LITE ******/
/********************************/
.colour_picker_lite {
  position: relative;
  width: 20px;
  height: 20px;
}
.colour_picker_lite input[type=button] {
  width: 20px;
}

.colour_picker_lite_popup {
  width: 80px;
  min-height: 50px;
  max-height: 70px;
  position: absolute;
  border: 1px solid #5D6D7E;
  display: none;
  z-index: 2;
  text-align: center;
  padding-top: 5px;
  padding-bottom: 5px;
  top: 0px;
  left: -30px;
  line-height: 0;
  background-color: white;
}
.colour_picker_lite_popup.visible {
  display: block;
}
.colour_picker_lite_popup > div {
  width: 20px;
  height: 20px;
  display: block;
  border: 1px solid #5D6D7E;
  margin: 1px;
}
.colour_picker_lite_popup > div.selected {
  border-color: #000e3c;
}

/********************************/
/********* PROGRESS BAR *********/
/********************************/
.progressBar::selection,
.progressBar *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.progressBar .pbProgress {
  padding: 0px;
  margin: 0px;
  width: 0%;
  height: 100%;
  float: left;
}
.progressBar .pbProgress div {
  display: inline-block;
  width: 100%;
  height: 100%;
}
.progressBar span {
  position: absolute;
  left: calc(50% - 50px);
  width: 100px;
  top: calc(50% - 7px);
  cursor: default;
  display: block;
  text-align: center;
}
.progressBar.allowTransition .pbProgress {
  transition: width 0.5s;
}
.progressBar.allowTransition .pbProgress div {
  transition: background 0.5s;
}

/*********************************/
/*** REPORT TEXT FIT ESTIMATOR ***/
/*********************************/
.reportTextFitEstimator {
  cursor: help;
}

/*********************************/
/********* HTML5 Video ***********/
/*********************************/
.videoWrapper {
  position: fixed;
  max-width: 1280px;
  max-height: 720px;
  width: 80vw;
  height: 45vw; /* 16: 9 aspect ratio */
  top: calc(50vh - 360px);
  left: calc(50vw - 640px);
}

/*********************************/
/********* CONTEXT MENU **********/
/*********************************/
.dvContextMenu {
  min-width: 140px;
  max-width: 300px;
  position: fixed;
  z-index: 20;
  background-color: white;
  display: block;
  border: 1px solid #5D6D7E;
  box-sizing: border-box;
  box-shadow: 5px 5px 5px rgba(93, 109, 126, 0.3);
}
.dvContextMenu .dvMenuChild {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 5px 10px 5px 20px;
  cursor: default;
  height: auto;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  color: #595959;
  box-sizing: border-box;
}
.dvContextMenu .dvMenuChild:hover:not(.disabled) {
  background-color: #F9FAFF;
  border-top: 1px solid #DAEEFF;
  border-bottom: 1px solid #DAEEFF;
}
.dvContextMenu .dvMenuChild:hover:not(.disabled) img:first-child {
  opacity: 1;
}
.dvContextMenu .dvMenuChild img:first-child {
  width: 20px;
  height: 20px;
  margin-right: 10px;
  margin-left: -10px;
  opacity: 0.6;
}
.dvContextMenu .dvMenuChild.disabled {
  opacity: 0.5;
}
.dvContextMenu .dvMenuChild span {
  flex: 1 1 auto;
  height: 100%;
  display: inline-block;
}
.dvContextMenu .dvMenuChild .childArrow {
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  margin-left: 5px;
  margin-top: -2px;
  width: 10px;
  height: 6px;
}
.dvContextMenu .noOptions {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 5px 10px 5px 20px;
  cursor: default;
  color: #8E99A5;
  font-style: italic;
}

/***************************************/
/************* MINI METER **************/
/***************************************/
meter.miniMeter {
  display: inline-block;
  width: 100px;
  height: 6px;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  /* Firefox */
  background: none; /* Required to get rid of the default background prop. */
  background-color: #DDDDDD;
}
meter.miniMeter::-webkit-meter-bar {
  background: none; /* Important to get rid of default background. */
  border-radius: 4px;
}
meter.miniMeter::-webkit-meter-optimum-value {
  transition: width linear 0.5s;
  background: none;
  border-radius: 4px;
  background-color: #5AAEFF;
}
meter.miniMeter::-moz-meter-bar {
  transition: width linear 0.5s;
  background: none;
  border-radius: 4px;
  background-color: #5AAEFF;
}

/***********************************/
/********** TOUCHTOOLTIP ***********/
/***********************************/
.touchToolTip {
  position: fixed;
  max-width: 200px;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 5px;
  color: white;
  transform: translate(-50%);
  background-color: rgba(45, 45, 44, 0.9);
  z-index: 10;
  transition: opacity linear 0.1s;
  opacity: 0;
  left: 101vw;
  top: 101vh;
}
.touchToolTip::selection,
.touchToolTip *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.touchToolTip ul, .touchToolTip ol {
  padding: 0px 0px 0px 15px;
  margin: 0px;
}
.touchToolTip.visible {
  opacity: 1;
}
.touchToolTip:before {
  content: "";
  position: absolute;
  left: calc(50% - 5px);
  top: -5px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid rgba(45, 45, 44, 0.9);
  border-top: none;
}
.touchToolTip.above:before {
  top: 100%;
  left: calc(50% - 5px);
  border-top: 5px solid rgba(45, 45, 44, 0.9);
  border-bottom: none;
}
.touchToolTip.left {
  transform: translate(0%, -50%);
}
.touchToolTip.left:before {
  left: 100%;
  top: calc(50% - 5px);
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
  border-left: 5px solid rgba(45, 45, 44, 0.9);
  border-right: none;
}
.touchToolTip.right {
  transform: translate(0%, -50%);
}
.touchToolTip.right:before {
  left: -5px;
  top: calc(50% - 5px);
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
  border-right: 5px solid rgba(45, 45, 44, 0.9);
  border-left: none;
}
.touchToolTip.tourbox {
  padding: 0px;
  display: flex;
  flex-direction: column;
  cursor: default;
}
.touchToolTip.tourbox::selection,
.touchToolTip.tourbox *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.touchToolTip.tourbox.ready {
  transition: left ease-out 0.3s, top ease-out 0.3s;
}
.touchToolTip.tourbox > div {
  padding: 8px;
}
.touchToolTip.tourbox > div.tourButtons {
  padding: 0px;
  display: flex;
  flex-direction: row;
  margin-top: 5px;
  border-top: 1px solid #666;
}
.touchToolTip.tourbox > div.tourButtons > div {
  flex: 1 1 auto;
  display: inline-block;
  opacity: 0.7;
  line-height: 20px;
  text-align: center;
  padding: 8px;
  font-size: 0.9em;
  transition: color linear 0.1s;
}
.touchToolTip.tourbox > div.tourButtons > div + div {
  border-left: 1px solid #666;
}
.touchToolTip.tourbox > div.tourButtons > div:hover:not(.disabled) {
  opacity: 1;
  color: #5AAEFF;
  cursor: pointer;
}
.touchToolTip.tourbox > div.tourButtons > div.disabled {
  opacity: 0.1;
  background-color: rgba(0, 0, 0, 0.9);
}
.touchToolTip:not(.tourbox) {
  pointer-events: none;
}

/**********************************/
/***** TAG COLLECTION EDITOR ******/
/**********************************/
.tagCollectionEditor {
  display: block;
}
.tagCollectionEditor .tagCollectionItem {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  align-content: center;
  height: 26px;
  padding: 5px;
  vertical-align: top;
  box-sizing: border-box;
  border-radius: 4px;
  margin-right: 6px;
  cursor: default;
  background-color: #2e77ff;
  color: white;
  font-weight: bold;
  width: auto;
}
.tagCollectionEditor .tagCollectionItem::selection,
.tagCollectionEditor .tagCollectionItem *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.tagCollectionEditor .tagCollectionItem.fixed {
  font-style: italic;
  background-color: #6287cb;
}
.tagCollectionEditor .tagCollectionItem .spnItem {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: inline-block;
  flex: 1 1 auto;
  width: 100%;
}
.tagCollectionEditor .tagCollectionItem .btnRemove {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0.5);
  font-size: 20px;
  font-weight: normal;
  opacity: 0.5;
  transition: all linear 0.1s;
  cursor: pointer;
  flex: 0 0 10px;
  height: 10px;
  line-height: 10px;
  margin-left: 4px;
  display: inline-block;
}
.tagCollectionEditor .tagCollectionItem .btnRemove:hover {
  opacity: 1;
}
.tagCollectionEditor .tagCollectionItem:hover:not(.fixed) {
  background-color: #2795ff;
}
.tagCollectionEditor .tagCollectionNewItem {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  align-content: center;
  height: 26px;
  padding: 5px;
  vertical-align: top;
  box-sizing: border-box;
  border-radius: 4px;
  margin-right: 6px;
  padding: 0px 3px 0px 5px;
  background-color: white;
  border: 1px solid #CCCCCC;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  width: 140px;
}
.tagCollectionEditor .tagCollectionNewItem::before {
  color: #5D6D7E;
  opacity: 0.5;
}
.tagCollectionEditor .tagCollectionNewItem .suggestbox {
  flex: 1 1 auto;
  height: 24px;
}
.tagCollectionEditor .tagCollectionNewItem .suggestbox .txtAddTagCollectionItem {
  border: none;
  height: 100%;
  box-sizing: border-box;
  padding: 0px 5px 0px 2px;
  flex: 1 1 auto;
  min-width: 0px;
  width: 100%;
  margin-right: 3px;
}
.tagCollectionEditor .tagCollectionNewItem .btnAddTagCollectionItem {
  flex: 0 0 20px;
  border: none;
  height: 20px;
  font-size: 20px;
  padding: 0px;
  opacity: 0.6;
  cursor: pointer;
  transition: all linear 0.1s;
  color: #5D6D7E;
  border-radius: 20px;
  box-sizing: border-box;
  text-align: center;
  line-height: 20px;
}
.tagCollectionEditor .tagCollectionNewItem .btnAddTagCollectionItem:hover {
  color: white;
  background-color: #5D6D7E;
}
.tagCollectionEditor .tagCollectionNewItem.button {
  display: inline-block;
  flex: 0 0 20px;
  border: none;
  height: 20px;
  width: 20px;
  font-size: 20px;
  padding: 0px;
  text-align: center;
  opacity: 0.6;
  cursor: pointer;
  transition: all linear 0.1s;
  color: #5D6D7E;
  border-radius: 20px;
  box-sizing: border-box;
  box-shadow: 0px 0px 2px black;
  text-align: center;
  line-height: 20px;
  margin-top: 3px;
}
.tagCollectionEditor .tagCollectionNewItem.button:hover {
  box-shadow: 0px 0px 2px 2px #2e77ff;
}
.tagCollectionEditor.disabled .tagCollectionItem {
  padding-right: 5px;
}
.tagCollectionEditor.disabled .tagCollectionItem .btnRemove {
  display: none;
}
.tagCollectionEditor.disabled .tagCollectionNewItem {
  display: none;
}

/**********************************/
/********** SUGGEST BOX ***********/
/**********************************/
.suggestbox {
  width: auto;
  position: relative;
}
.suggestbox .showAll {
  position: absolute;
  min-width: 100%;
  max-width: 200%;
  bottom: 100%;
  background-color: white;
  border: 1px solid #CCCCCC;
  opacity: 0;
  pointer-events: none;
  transition: opacity linear 0.1s;
  height: 25px;
  padding: 5px;
  box-sizing: border-box;
  color: #5AAEFF;
  font-weight: bold;
}
.suggestbox .suggestions {
  position: absolute;
  min-width: 100%;
  max-width: 200%;
  max-height: 225px;
  overflow-y: auto;
  top: 100%;
  background-color: white;
  border: 1px solid #CCCCCC;
  opacity: 0;
  pointer-events: none;
  transition: opacity linear 0.1s;
  z-index: 100;
}
.suggestbox .suggestions.open:not(:empty) {
  pointer-events: all;
  opacity: 1;
}
.suggestbox .suggestions.open:not(:empty) + .showAll {
  pointer-events: all;
  opacity: 1;
}
.suggestbox .suggestions .suggestion {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding: 5px;
  cursor: default;
  height: 25px;
  box-sizing: border-box;
}
.suggestbox .suggestions .suggestion:hover {
  background-color: #E7EEFA;
}
.suggestbox .suggestions .suggestion.selected {
  background-color: #000e3c;
  color: white;
}
.suggestbox .suggestions .suggestion.selected.hover {
  background-color: #4274AA;
}

/**********************************/
/********* PROGRESS BAR ***********/
/**********************************/
.bestoutcomeMeter {
  display: inline-block;
  width: 100%;
  height: 20px;
  box-sizing: border-box;
  position: relative;
  background: none; /* Important to get rid of default background. */
  border-radius: 3px;
  box-shadow: 0 5px 5px -5px rgba(93, 109, 126, 0.1) inset;
  background-color: #F0F4FF;
}
.bestoutcomeMeter .meterBar {
  box-sizing: border-box;
  display: block;
  height: 100%;
  background: none; /* Important to get rid of default background. */
  border-radius: 3px;
  box-shadow: 0 5px 5px -5px rgba(93, 109, 126, 0.1) inset;
  box-shadow: 0 5px 5px -5px rgba(93, 109, 126, 0.2) inset;
}
.bestoutcomeMeter.transition .meterBar {
  transition: width linear 0.2s;
}
.bestoutcomeMeter::after {
  content: attr(title);
  font-size: 0.9em;
  color: var(--forecolor);
  position: absolute;
  left: 50%;
  top: 50%;
  height: 15px;
  box-sizing: border-box;
  transform: translate(-50%, -50%);
}

/**********************************/
/******** DROPDOWN BUTTON *********/
/**********************************/
.dropdownButtonControl {
  background-color: white;
  border: 1px solid #CCCCCC;
  border-radius: 2px;
  position: relative;
  box-sizing: border-box;
  height: 22px;
  min-width: 60px;
  width: auto;
  display: inline-flex;
  align-items: center;
  flex-direction: row;
  vertical-align: middle;
}
.dropdownButtonControl:disabled {
  border-color: #DDDDDD;
  background-color: #f8f8f8;
  color: #aaaaaa;
  cursor: default;
}
.dropdownButtonControl:hover:not(:disabled) {
  background-color: #fcfdfe;
  border-color: #2e77ff;
}
.dropdownButtonControl * {
  box-sizing: border-box;
}
.dropdownButtonControl.importantButton .primaryButton {
  background-color: #2e77ff;
  color: white;
}
.dropdownButtonControl input[type=button].primaryBtn {
  height: calc(100% - 6px);
  display: inline-block;
  border: none;
  border-right: 1px solid #CCCCCC;
  border-radius: 0px;
}
.dropdownButtonControl input[type=button].primaryBtn:hover {
  border-right-color: #CCCCCC;
}
.dropdownButtonControl input[type=button].primaryBtn:active {
  box-shadow: none;
  transform: none;
}
.dropdownButtonControl .dropdownButton {
  display: inline-block;
  width: 20px;
  height: 100%;
  background-color: white;
  background-image: url(images/DropdownArrow.svg), none;
  background-size: 15px 9px;
  background-repeat: no-repeat;
  background-position: right 2px center;
}
.dropdownButtonControl .dropdownButton:hover {
  background-color: rgba(90, 174, 255, 0.1);
}
.dropdownButtonControl .optionContainer {
  position: absolute;
  top: 100%;
  left: -1px;
  z-index: 100;
  width: 200px;
  background-color: white;
  border: 1px solid #CCCCCC;
  padding: 10px;
  display: none;
  cursor: default;
}
.dropdownButtonControl .optionContainer::selection,
.dropdownButtonControl .optionContainer *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.dropdownButtonControl .optionContainer.active {
  display: block;
}
.dropdownButtonControl .optionContainer .option {
  padding: 5px 0px;
}
.dropdownButtonControl .optionContainer .option:hover {
  background-color: #E7EEFA;
}
.dropdownButtonControl .optionContainer .option + .option {
  border-top: 1px solid #EEEEEE;
}
.dropdownButtonControl .optionContainer .option .upper {
  color: #5D6D7E;
  font-size: 1.1em;
  font-weight: bold;
  padding-bottom: 2px;
}
.dropdownButtonControl .optionContainer .option .lower {
  font-size: 0.9em;
}

/**********************************/
/*********** USER ICON ************/
/**********************************/
.userIconControl {
  width: 40px;
  height: 40px;
  max-height: 40px;
  max-width: 40px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
}
.userIconControl .innerElem {
  width: 100%;
  height: 100%;
  display: inline-block;
  border-radius: 50%;
  vertical-align: middle;
  box-sizing: border-box;
  text-align: center;
  letter-spacing: 2px;
  font-size: 1.5em;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  color: white;
  background-size: cover;
  background-repeat: no-repeat;
  cursor: default;
}
.userIconControl .innerElem::selection,
.userIconControl .innerElem *:not(input):not(textarea)::selection {
  background: transparent;
  color: none;
  outline: none;
}
.userIconControl .innerElem.hasIcon {
  font-size: 0em !important;
}
.userIconControl .innerElem.hasIcon:not(:hover) {
  background-color: white !important;
}
.userIconControl:not(.noRollover) .innerElem.hasIcon:hover {
  font-size: 1.5em !important;
  background-image: none !important;
}
.userIconControl .approvalLight {
  position: absolute;
  width: 15px;
  height: 15px;
  bottom: -2px;
  right: -2px;
  background-repeat: no-repeat;
  background-size: 15px 15px;
  background-image: url("images/APPROVAL_B.svg");
  background-color: white;
  border-radius: 15px;
}
.userIconControl[data-status=R] .approvalLight {
  background-image: url("images/APPROVAL_R.svg");
}
.userIconControl[data-status=A] .approvalLight {
  background-image: url("images/APPROVAL_A.svg");
}
.userIconControl[data-status=G] .approvalLight {
  background-image: url("images/APPROVAL_G.svg");
}

/***********************************/
/***** PLAN PORTFOLIO SELECTOR *****/
/***********************************/
.planPortfolioSelector {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  height: 24px;
  min-width: 210px;
  padding: 5px 0px 5px 5px;
  border: 1px solid #AAAAAA;
  border-radius: 4px;
  box-sizing: border-box;
  background-color: #F9FAFF;
}
.planPortfolioSelector * {
  box-sizing: border-box;
}
.planPortfolioSelector .icon {
  flex: 0 0 26px;
  width: 24px;
  height: 24px;
}
.planPortfolioSelector .name {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  flex: 1 1 auto;
  padding: 0px 5px;
}
.planPortfolioSelector .chooseBtn {
  flex: 0 0 60px;
  border: none;
  border-radius: 0px;
  border-left: 1px solid #AAAAAA;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  box-sizing: border-box;
}
.planPortfolioSelector .chooseBtn:hover {
  border: none;
  border-left: 1px solid #AAAAAA;
}

/********************************/
/****** DATE RANGE PICKER *******/
/********************************/
.dateRangePicker .dateWrapper {
  display: inline-block;
}
.dateRangePicker .dateWrapper.endDate {
  margin-left: 5px;
}
.dateRangePicker .dateWrapper .label {
  font-size: 0.8em;
  color: #5D6D7E;
}

/********************************/
/*** GATEWAY STATUS INDICATOR ***/
/********************************/
.gatewayStatusIndicator {
  box-sizing: border-box;
}
.gatewayStatusIndicator .body {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  box-sizing: border-box;
}
.gatewayStatusIndicator .body.noGateways {
  justify-content: center;
}
.gatewayStatusIndicator .body .spEmptyGateways {
  position: absolute;
  font-size: 18px;
  font-family: Arial;
  color: #5D6D7E;
}
.gatewayStatusIndicator .body .dvGhostProgress {
  position: absolute;
  top: 35px;
  height: 36px;
  padding-left: 5px;
  width: 0px;
}
.gatewayStatusIndicator .body .dvGhostProgress:before {
  content: "";
  position: absolute;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 18px solid;
  border-left-color: inherit;
}
.gatewayStatusIndicator .body .dvGatewayStatus {
  flex: 1;
  height: 95px;
  display: inline-block;
  padding: 10px 0px 5px 0px;
  margin: 0px 0px 5px 0px;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusItem {
  display: inline-block;
  width: 100%;
  text-align: center;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusItem .spGatewayStatusLabel {
  width: auto;
  text-align: center;
  display: block;
  padding: 10px 5px 5px 5px;
  cursor: default;
  height: 1.6em;
  line-height: 1em;
  overflow: hidden;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusItem .spGatewayDateLabel {
  width: auto;
  text-align: center;
  display: block;
  padding-top: 5px;
  cursor: default;
  font-style: italic;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer {
  position: relative;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusShape {
  display: block;
  border: 2px solid white;
  width: 30px;
  height: 30px;
  margin-top: 5px;
  margin-left: calc(50% - 16px);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0.5);
  z-index: 10;
  top: 0px;
  left: 0px;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusProgress {
  position: relative;
  float: left;
  display: block;
  height: 36px;
  margin-left: 50%;
  z-index: 0;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusProgress.border {
  border: 1px solid #AAAACC;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusProgress.complete {
  width: 100%;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusProgress.inprogress {
  width: 50%;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusProgress::before {
  content: "";
  position: absolute;
  left: 100%;
  top: 0;
  z-index: 2;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 18px solid;
  border-left-color: inherit;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .gatewayStatusProgress.border::after {
  content: "";
  position: absolute;
  left: calc(100% + 1px);
  top: 0;
  z-index: 1;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 18px solid #AAAACC;
}
.gatewayStatusIndicator .body .dvGatewayStatus .gatewayStatusShapeContainer .inprogress {
  width: 50%;
}

.editableDropdown {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.editableDropdown * {
  box-sizing: border-box;
}
.editableDropdown > * + * {
  margin-left: 5px;
}
.editableDropdown .combobox {
  flex: 1 1 auto;
  height: 22px;
}
.editableDropdown input[type=button] {
  flex: 0 0 auto;
  height: 22px;
}
.editableDropdown option.hiddenOption,
.editableDropdown input[type=text].hiddenOption {
  color: lightgrey;
}
