.mobile-only {
  display: none !important;
}

@media screen and (max-width: 1100px) {
  .non-mobile-only {
    display: none !important;
  }

  .mobile-only {
    display: initial !important;
  }

  .vsi-menu-current-page {
    background-color: rgba(255,255,0,0.5);
  }

  li > a {
    color: black !important;
  }

  .simpleButton {
    display: inline-block !important;
  }
}

html {
  height: 100%;
}

body {
  height: 100%;
}

.imageLogo {
  width: 225px;
}

table, td {
  border-collapse: collapse;
  margin: 0px;
  border: 0px;
  padding: 0px;
}




.vsi-fill-screen {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0px;
  padding: 0px;
}

.vsi-fill-parent {
  position: relative;
  height: 100%;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding: 0;
}





.vsi-left-side-bar-content-section {
  position: relative;
}

.vsi-main-content-header-logo-for-mobile {
  max-width: 75px;
  max-height: 30px;
  float: left;
}

.vsi-main-content-header-menu-for-mobile {
  margin-left: 10px;
  margin-right: 10px;
}

.vsi-left-side-bar-section {
  width: auto;
}

.vsi-right-side-section {
  width: 100%;
}

#vsi-left-side-bar-for-non-mobile {
  width: 250px !important;
}

.navigation-menu {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
}

.vsi-align-left {
  float: left !important;
}

.vsi-align-center {
  text-align: center;
}

.vsi-align-right {
  float: right !important;
}

.vsi-left-side-bar-header {
  background: radial-gradient(#1B66A1,#144A75);
  text-align: center;
  height: 100px;
}



.vsi-left-side-bar-header-company-title {
  font-size: 16px;
  font-weight: 100;
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: white;
}

.vsi-left-side-bar-content-section {
  background-color: #144A75;
}



.vsi-main-content-header-section {
  height: 50px;
  background-color: white;
  border-bottom: 1px solid #144a75;
}

.vsi-main-content-header-menu-path {
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
  color: #676a6c;
  margin-left: 0.5em;
}


.vsi-main-content-header-title {
  font-size: 34px;
  font-weight: 100;
  padding-left: 0.25em;
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #144A75;
}

.vsi-main-content-header-title-icon {
  font-size: 26px;
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #144A75;
  margin-left: 0.75em;
}

.vsi-main-content {
  box-sizing: border-box;
  padding: 0;
  border: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  padding: 8px;
}



/** datatable */

#datatable_placeholder {
  width: 100%;
  margin: auto;
}

.datatable_connectionErrorContainer {
  width: 100%;
  text-align: center;
  padding: 0.5em;
  padding-bottom: 1.0em;
}

.datatable_connectionError {
  color: red;
  font-weight: bold;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  background: white;
  padding: 0.5em;
}



/** vsi Main Content */

.vsi-main-content-header-login-details {
  color: #9ea6b9;
  font-family: "Segoe UI",Arial,sans-serif;
  font-size: 14px;
  font-weight: 600;
  padding-left: 20px;
  margin-right: 20px;
}

.vsi-main-content-header-welcome {
  color: #888888;
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
}


td.vsi-main-content-section {
  width: 100%;
  background-color: #f4f6fa;
}

.vsi-main-content-footer-section {
  height: 40px;
  font-family: "Segoe UI",Arial,sans-serif;
  font-size: 13px;
  color: #676a6c;
  border-top: 1px solid black;
}


.vsi-main-content-footer-version {
  margin-left: 10px;
}

.vsi-main-content-footer-copyright {
}

.vsi-main-content-footer-right {
  margin-right: 10px;
}




/** vsi menu */

.vsi-menu-current-page {
  background-color: rgba(255,255,0,0.25);
}

.vsi-mobile-menu {
  width: 250px;
  background-color: #f5f5f5;
  border: black 1px solid;
  border-radius: 5px;
  left: 5px;
}



/** list items */

li > a {
  color: #a7b1c2;
  font-weight: 200;
  padding: 14px 20px 14px 25px;
  position: relative;
  display: block;
  text-decoration: none;
  box-sizing: border-box;
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
  overflow-x: hidden;
  width: 100%;
}

li > a:hover {
  color: white;
  background-color: rgba(0,0,0,0.1);
}

.mm-active {
  color: white;
  background-color: rgba(0,0,0,0.1);
}

ul {
  list-style: none;
  padding: 0px;
}

ul ul ul {
  margin-left: 30px;
}

ul {
  margin-left: 10px;
}

ul ul {
  margin-left: 20px;
}

.tab_header {
  font-size: 14px;
  font-weight: 100;
  font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: bold;
  color: black;
}

.fullPage {
  background-color: white;
  position: relative;
  top: 0px;
  left: 0px;
  bottom: 0px;
  right: 0px;
  width: 100%;
  height: 100%;
  z-index: 99999;
}

.fancybutton, .fancyButton {
  box-shadow: inset 0px 1px 0px 0px #ffffff;
  background: linear-gradient(to bottom, #ffffff 5%, #f6f6f6 100%);
  background-color: #ffffff;
  border-radius: 6px;
  border: 1px solid black;
  display: inline-block;
  cursor: pointer;
  color: black;
  font-family: Arial;
  font-size: 15px;
  font-weight: bold;
  padding: 6px 24px;
  text-decoration: none;
  text-shadow: 0px 1px 0px #ffffff;
}

.fancybutton:disabled, .fancyButton:disabled {
  cursor: default;
  text-shadow: none;
  box-shadow: none;
  background: none !important;
  color: gray;
}

.fancybutton:hover, .fancyButton:hover {
  background: linear-gradient(to bottom, #f6f6f6 5%, #ffffff 100%);
  background-color: #f6f6f6;
}

.fancybutton:active, .fancyButton:active {
  position: relative;
  top: 1px;
}

.simpleButton {
  display: inline-block;
  /* a solid invisible color needs to be included, otherwise the border is ignored */
  border: 1px solid #0000;
  cursor: pointer;
  color: #666666;
  font-family: Arial;
  font-size: 15px;
  font-weight: bold;
  text-decoration: none;
}

.simpleButton:disabled {
  cursor: default;
  text-shadow: none;
  box-shadow: none;
  background: none !important;
}

.simpleButton:hover {
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  background-color: #FFFFCC;
}

.simpleButton.active {
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  background-color: yellow;
}

.select-style {
  border: 1px solid #ccc;
  width: 120px;
  border-radius: 3px;
  overflow: hidden;
}

.input-style {
  border: 1px solid #ccc;
  width: 120px;
  border-radius: 3px;
  overflow: hidden;
  padding-left: 2px;
}

.select-style select {
  padding: 5px 8px;
  width: 130%;
  border: none;
  box-shadow: none;
  background: transparent;
  background-image: none;
  -webkit-appearance: none;
}

.select-style select:focus {
  outline: none;
}

.hide-until-loaded {
  visibility: hidden;
}




radio-toolbar {
  margin: 10px;
}

.radio-toolbar input[type="radio"] {
  opacity: 0;
  position: fixed;
  width: 0;
}

.radio-toolbar label {
  display: inline-block;
  background-color: #ddd;
  padding: 10px 20px;
  font-family: sans-serif, Arial;
  font-size: 12px;
  border: 2px solid #444;
  border-radius: 4px;
}

.radio-toolbar label:hover {
  background-color: #dfd;
}

.radio-toolbar input[type="radio"]:focus + label {
  border: 2px dashed #444;
}

.radio-toolbar input[type="radio"]:checked + label {
  background-color: #bfb;
  border-color: #4c4;
}

.fancyLabel {
  font-family: sans-serif, Arial;
  font-size: 12px;
}

.fancyFont {
  font-family: sans-serif, Arial;
  font-size: 12px;
}

.largeFancyFont {
  font-family: sans-serif, Arial;
  font-size: 16px;
}

.select-css {
  display: block;
  font-size: 12px;
  font-family: sans-serif;
  font-weight: 700;
  color: #444;
  line-height: 1.3;
  padding: .6em 1.4em .5em .8em;
  width: 100%;
  max-width: 100%; /* useful when width is set to anything other than 100% */
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #aaa;
  box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
  border-radius: .5em;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. 
        for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference
        
    */
  background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
  background-repeat: no-repeat, repeat;
  /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
  background-position: right .7em top 50%, 0 0;
  /* icon size, then gradient */
  background-size: .65em auto, 100%;
}
/* Hide arrow icon in IE browsers */
.select-css::-ms-expand {
  display: none;
}
/* Hover style */
.select-css:hover {
  border-color: #888;
}
/* Focus style */
.select-css:focus {
  border-color: #aaa;
  /* It'd be nice to use -webkit-focus-ring-color here but it doesn't work on box-shadow */
  box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
  box-shadow: 0 0 0 3px -moz-mac-focusring;
  color: #222;
  outline: none;
}

/* Set options to normal weight */
.select-css option {
  font-weight: normal;
}

/* Support for rtl text, explicit support for Arabic and Hebrew */
*[dir="rtl"] .select-css, :root:lang(ar) .select-css, :root:lang(iw) .select-css {
  background-position: left .7em top 50%, 0 0;
  padding: .6em .8em .5em 1.4em;
}

/* Disabled styles */
.select-css:disabled, .select-css[aria-disabled=true] {
  color: graytext;
  background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
}

.select-css:disabled:hover, .select-css[aria-disabled=true] {
  border-color: #aaa;
}

.blackAndWhite {
  filter: grayscale(100%);
}

/*https://dev.to/dcodeyt/creating-beautiful-html-tables-with-css-428l*/
.styled-table {
  border-collapse: collapse;
  margin: auto;
  font-size: 0.9em;
  font-family: sans-serif;
  min-width: 400px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  border: 1px solid black;
}

.styled-table thead tr {
  background-color: white;
  color: black;
  text-align: left;
}

.styled-table th,
.styled-table td {
  padding: 12px 15px;
}

.styled-table tbody tr {
  border-bottom: 1px solid #dddddd;
}

.styled-table tbody tr:nth-of-type(even) {
  background-color: #f3f3f3;
}

.styled-table tbody tr:last-of-type {
  border-bottom: thin solid #144A75;
}

.styled-table tbody tr.active-row {
  font-weight: bold;
  color: #009879;
}

.menu-blocker {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  box-sizing: border-box;
  opacity: 0.3;
  background-color: black;
  text-align: center;
}




/* pulsating text from: https://www.kevinleary.net/pulsating-css3-animations/*/
.pulsate {
  -webkit-animation: pulsate 5s ease-out;
  -webkit-animation-iteration-count: infinite;
  opacity: 0.5;
  font-weight: bold;
}

@-webkit-keyframes pulsate {
  0% {
    opacity: 0.5;
  }

  25% {
    opacity: 0.75;
  }

  50% {
    opacity: 1.0;
  }

  75% {
    opacity: 0.75;
  }

  100% {
    opacity: 0.5;
  }
}
/* end pulsating text*/



/** Simple Dialog*/

/* The Modal (background) */
.simpleModal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  z-index: 30;
}

/* Modal Content/Box */
.simpleModalContent {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
  z-index: 30;
  text-align: center;
}

/* The Close Button */
.simpleModalClose {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  z-index: 30;
}

.simpleModalClose:hover,
.simpleModalClose:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
  z-index: 30;
}

.fontAwesome {
  display: block;
  width: 28px !important;
  height: 28px;
  color: black;
}

/** End Simple Dialog*/



/** Yes No Dialog */

.yesNoDialogContent {
  width: 10em;
  font-size: 1.5em;
}

.yesNoDialogTitle {
  font-size: 2em;
}

.ui-dialog .ui-dialog-buttonpane .yesNoDialogButton {
  margin-left: 0.5em;
  margin-right: 0.5em;
  font-size: 1.2em;
}

/** End Yes No Dialog */



/** Error Dialog */

.errorDialogContent {
  width: 10em;
  font-size: 1.5em;
}

.errorDialogTitle {
  font-size: 2em;
  margin-left: 0.5em;
}

.errorDialogIcon {
  color: orange;
}

/** End Error Dialog */
