/* START Foundation and UI overrides ********************************************************************/
*{ outline: none; font-family: 'Myriad Pro'; }
*{
  -webkit-tap-highlight-color: transparent;
  /* -webkit-touch-callout: none; */
  /* -webkit-user-select: none; */
  /* -khtml-user-select: none; */
  /* -moz-user-select: none; */
  /* -ms-user-select: none; */
  /* user-select: none; */
}
.ui-checkboxradio-radio-label .ui-icon-background {
  display: none;
}
.ui-tooltip.ui-widget-content{
  max-width:none;
  padding: 3px;
}
.ui-widget-content a{
  color: #2199e8;
}
.ui-widget{
  font-size: 14px;
}

.ui-tooltip table{
  margin:0;
}
body {
  font-family: 'Myriad Pro';
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #f1f2f2;
}
header{
  height: 60px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 1;
}

.logo{
  width: 40px;
  aspect-ratio: 1;
  border-radius: 50%;
  box-shadow: 0px 0px 10px 5px #fff;
}

.mob_menu{
  position: absolute;
  right: 10px;
  top: 8px;
  height: 40px;
  width: 40px;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 0 8px -5px #000;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: width 150ms ease-out,
              height 150ms ease-out 150ms,
              box-shadow 150ms;
  z-index: 1;
}
.mob_menu.expand{
  width: 150px;
  height: 250px;
  box-shadow: 0 0 20px -5px #000;
  transition: width 150ms ease-out,
              height 150ms ease-out 150ms,
              box-shadow 150ms;
}

.mob_menu .menu_icon .fa{
  position: absolute;
  font-size: 25px;
  transform: rotate(180deg);
  transition-duration: 300ms;
  top: 8px;
  line-height: 1;
}
.menu_icon{
  height: 40px;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background: #0074ff;
  color: #fff;
  cursor: pointer;
}
.mob_menu .menu_icon>b{
  position: absolute;
  top: 9px;
  left: 10px;
  font-size: 20px;
  opacity: 0;
}
.mob_menu.expand .menu_icon>b{
  opacity: 1;
  transition: opacity 150ms linear 150ms;
}
.mob_menu .fa-bars-staggered{
  right: 8px;
}
.mob_menu .fa-times{
  right: 10px;
}

.mob_menu .fa-bars-staggered,
.mob_menu.expand .fa-times{
  opacity: 1;
}
.mob_menu.expand .fa-bars-staggered,
.mob_menu .fa-times{
  opacity: 0;
}

.mob_menu.expand .menu_icon .fa{
  transform: rotate(360deg);
  transition-duration: 300ms;
}

.menu_list{
  position: absolute;
  bottom: 0;
  left: 0;
  height: calc(100% - 40px);
  width: 100%;
  display: flex;
  flex-direction: column;
}
.mob_menu .menu_list>div {
  cursor: pointer;
  font-size: 15px;
  height: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  opacity: 0;
  transition-duration: 150ms;
  padding: 0 10px;
}
.mob_menu .menu_list>div:hover {
  background: #eee;
}
.mob_menu.expand .menu_list>div {
  opacity: 1;
  transition-duration: 300ms;
}

.logout{
  color: #003b81;
  padding: 7px 6px 7px 9px;
  border-radius: 50px;
  background: #fff;
  line-height: 1;
  box-shadow: 0 0 8px -5px #000;
}

#main_body{
  height: 100%;
  position: absolute;
  top: 0;
  display: flex;
  overflow-y: auto;
  justify-content: center;
}

pre{
  font-family: 'Myriad Pro';
  font-size: 15px;
}
.right_shad{
  position:fixed;
  top:0;
  height:100%;
  width: 14px;
  right: 0px;
          box-shadow: 0 0 8px rgba(0,0,0,0.6);
      -ms-box-shadow: 0 0 8px rgba(0,0,0,0.6);
     -moz-box-shadow: 0 0 8px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0 0 8px rgba(0,0,0,0.6);
}
h1,h2,h3,h4,h5,h6{
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
  margin-top: 0;
}
h1 {
  font-size: 24px;
  font-weight: 500;
  color : #002755;
}
h2 {
  color: #003b81;
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 20px 0;
}
h3 {
  color: #002755;
  font-size: 16px;
  font-weight: 500;
  margin: 0 0 5px 0;
  position:relative;
}
h4 {
  color: #002755;
  font-size: 14px;
  font-weight: 500;
  margin: 0 0 5px 0;
  position:relative;
}
h2.align_middle{
  margin: 11px 0 0 0;
}
h3.status_title{
  font-size: 25px;
}
h2.page_header{
  position: sticky;
  margin: 0 0 20px 0;
  top: -5px;
  background: #fff;
  border-bottom: 2px solid #003b81;
  z-index: 2;
  padding: 10px 5px;
}
div.page_header{
  position:absolute;
  margin: 0 0 20px 0;
  top:-30px;
}
h2 .case_add_link{
  color:#5bb85c;
  margin-left:30px;
  cursor:pointer;
}
h2.list_h{
  padding-top: 10px;
}
.big{
  font-size: 40px;
}
.popup_cont{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(2px);
  z-index: 200;
}
.popup{
  max-height: 100%;
  overflow-y: auto;
  background: #fff;
  padding: 5px;
  display: inline-block;
  position: absolute;
  z-index: 200;
  border: 1px solid #004495;
  border-radius: 20px;
}
  .w_3_cols{ width:98%; margin: 0  1%; /*max-width:1400px;*/}
  .w_2_cols{ width:98%; margin: 0  1%; max-width:576px;     }
  .w_1_cols{ width:98%; margin: 0  1%; max-width:510px;     }

@media screen and (min-width: 40em){
  .w_3_cols{ width:98%; margin: 0  1%; /*max-width:1400px;*/}
  .w_2_cols{ width:90%; margin: 0  5%; max-width:820px;     }
  .w_1_cols{ width:80%; margin: 0 10%; max-width:700px;     }
}

@media screen and (min-width: 64em){
  .w_3_cols{ width:98%; margin: 0  1%; /*max-width:1400px;*/}
  .w_2_cols{ width:80%; margin: 0 10%; max-width:1400px;    }
  .w_1_cols{ width:70%; margin: 0 15%; max-width:700px;     }
}
.popup_form{
  background:#fff;
  cursor:default;
  position:relative;
  padding: 5px;
}
.mail_paste_div{
  cursor:default;
  left:150px;
  top:0px;
  background:#fff;
  border:5px solid #eee;
  display:none;
  position:absolute;
  padding:20px;
  z-index:200;
          box-shadow: 0 0 8px rgba(0,0,0,0.6);
      -ms-box-shadow: 0 0 8px rgba(0,0,0,0.6);
     -moz-box-shadow: 0 0 8px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0 0 8px rgba(0,0,0,0.6);
}
a {
  display:inline-block;
}
a:focus, a:hover {
  color: #23527c;
  text-decoration:none;
}
table tbody {
  box-shadow: inset 0px 9px 8px -10px #6e6e6e, inset 0px -9px 8px -10px #6e6e6e;
}
table tbody,     tfoot, table thead {
  border: 1px solid #ddd;
  background-color: #fefefe;
}
table thead tr{
  /*background:#777;*/
  /*white-space:nowrap;*/
  vertical-align:bottom;
}
table thead tr th{
  background:#fff;
}
thead tr.group_head th{
  text-align:center;
  border-bottom:1px solid #ddd;
}
thead tr.group_head th:nth-child(n+2){
  border-left:1px solid #ddd;
}
thead tr.group_head {
  vertical-align:bottom;
}
thead tr.head_lvl_0 th {
  background:#fff;
}
thead tr.head_lvl_1 th {
  background:#fff;
}
thead tr.head_lvl_2 th {
  background:#fff;
}
thead tr.head_lvl_3 th {
  background:#fff;
}
thead tr.head_lvl_4 th {
  background:#fff;
}
thead tr.filters th{
  padding-top : 0;
  padding-bottom : 0;
  /*position:relative;*/
  vertical-align:top;
}
thead tr th{
  /***************/
  /* POSITION STICKY breaks where multiple headings are used*/
  position: sticky;
 /* top: -30px;*/
  z-index: 1;
/*  background: #777;
  /***************/
  color:#003b81;
}
table tbody td, table tbody th{
  padding: 3px 5px;
  position:relative;
  height:40px;
}
#fltr_active_yn{
  padding: 15px 14px 0px 9px;
  background-position: 200% 40%;
}
/*
table thead td:nth-child(n+2), table thead th:nth-child(n+2){
  border-left:1px solid #999;
}
*/
table.report tbody td:nth-child(n+2), table tbody th:nth-child(n+2){
  border-left:1px solid #ddd;
}
.step_th{
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  white-space: nowrap;
  width: 42px;
  text-align: right;
}
.rot90deg{
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  white-space: nowrap;
}
.step_tr{
  background-color: #939393 !important;
  position: sticky;
  top: 0;
}
.step_tr .fa.fa-edit{
  color: #7e7e7e;
  font-size: 30px;
  position: absolute;
  right: 10px;
  top: 5px;
}
.step_th > div{
  position: relative;
  top: 0px;
  height: calc(100% - 40px);
}
.ui-datepicker-calendar td{
  height:25px;
}
table.nopad, table.nopad tr, table.nopad th, table.nopad td {
  padding:0;
  margin:0;
}

hr{
  border-bottom: 2px solid #eee;
  margin:5px 0 5px;
  max-width:100%;
}
hr.eq_spc{
  margin:0 0 15px;
}
hr.dble{
  border-bottom: 4px solid #777;
}
table tbody tr:nth-child(even) hr.alt{
  border-bottom: 2px solid #fff;
}
.info_label{
  font-weight:bold;
  background:transparent;
  color:inherit;
  display:inline-block;
}
.border_left{
  border-left:2px solid #eee;
}
.border_right{
  border-right:2px solid #eee;
}
.copy_msg{
  position: absolute;
  top: 116px;
  left: 714.375px;
  width: auto;
  z-index: 100;
  background: #ffffffbf;
  padding: 3px 9px;
  border-radius: 5px;
}
.debug_msg{
  font-family: inherit;
  border: 1px dotted #0f0;
  font-size: 10px;
  float: left;
  background: #001800;
  background-size: 100% auto;
  color: #0d0;
  padding: 5px;
  position: absolute;
  z-index: 100000;
}
.debug_msg::-moz-selection { background-color: #333; color: #fff; }
.debug_msg::selection      { background-color: #333; color: #fff; }
.terminus{
  font-family: courier new;
  border:1px dotted #0f0;
  font-size:10px;
  float:left;
  background:#001800;
  background-size:100% auto;
  color:#0d0;
}
.terminus:focus{
  font-family: courier new;
  border:1px dotted #0f0;
  float:left;
  background:#001800;
  background-size:100% auto;
  color:#0d0;
}
.terminus:focus ~ label{
  background:#001800 !important;
  color: #fff !important;
}
.terminus.filled{
  background:#001800 !important;
  color:#0d0 !important;
}
.terminus.filled ~ label{
  background:#001800 !important;
  color:#fff !important;
}
.terminus::-moz-selection { background-color: #333; color: #fff; }
.terminus::selection      { background-color: #333; color: #fff; }
.terminus::spelling-error  {
  text-decoration: none;
}
.var_export{
  font-family:inherit;
  font-size:inherit;
  max-width:1000px;
  white-space: pre-wrap;
  max-height:500px;
  overflow-y:scroll;
  border:1px dotted #000;
}
.succ_msg{
  background: #f6fff6;
  color: #050;
  padding: 10px 20px;
  white-space: nowrap;
  font-weight: bold;
  border: 1px solid #050;
}
.succ_msg{
  background: #f6fff6;
  color: #050;
  padding: 10px 20px;
  white-space: nowrap;
  font-weight: bold;
  border: 1px solid #050;
}
.del_succ_msg{
  background: #ffe4e4;
  color: #790000;
  padding: 10px 20px;
  white-space: nowrap;
  font-weight: bold;
  border: 1px solid #f00;
}
#arrow_up{
  background-color: rgba(00, 39, 85, 0.5);
  color: #fff;
  position: fixed;
  top: 80%;
  right: 0px;
  display: none;
  font-size: 40px;
  width: 40px;
  height: 40px;
  text-align: center;
  z-index:250;
  border-radius:10% 0 0 10%;
          box-shadow: 3px 3px 4px rgba(0,0,0,0.6);
      -ms-box-shadow: 3px 3px 4px rgba(0,0,0,0.6);
     -moz-box-shadow: 3px 3px 4px rgba(0,0,0,0.6);
  -webkit-box-shadow: 3px 3px 4px rgba(0,0,0,0.6);
}
.fa-spinner.fa-pulse{
  font-size: 100px;
  color: #aaa;
}
.textinput.fa-spinner.fa-pulse{
  font-size: 40px;
}
.help{
  display:inline-block;
  position:absolute;
  height:0;
  width:0;
  z-index:1;
}
.input_rem{
  font-size: 30px;
  padding-top: 5px;
  cursor: pointer;
}
.help .fa-question{
  font-size: 16px;
  border:2px solid #060;
  color: #060;
  width:20px;
  height:20px;
  position:relative;
  text-align:center;
  border-radius:50%;
  left:5px;
  top:-2px;
}
.cal_help .help .fa-question{
  top: 10px;
}
h3[required] .help .fa-question{
  left:10px;
}
[type=checkbox]+label[for]{
  position: relative;
  height: 35px;
  background-color: #fff;
  border: 2px solid #0074ff;
  width: 45px;
  padding: 0;
}
[type=radio]+label[for]{
  position: relative;
  top: 0;
  left: 0;
  padding: 8px 40px 5px 10px;
  height: 35px;
  color: #333;
  background-color: #fff;
  border: 2px solid #0074ff;
  box-shadow: none;
  font-weight: bold;
  font-family: inherit;
  font-size: 14px;
  white-space: nowrap;
  line-height: normal;
  margin: 0;
  width: 100%;
}
.rpt_btnset [type=checkbox]+label[for], .rpt_btnset [type=radio]+label[for] {
  margin: 0 0 0.1rem 0; /* Need a small margin at bottom for 'wrapping' */
}
[type=checkbox]+label[for]:hover, [type=radio]+label[for]:hover{
  border: 2px solid #0074ff;
  font-weight:bold;
  color:#000;
  background:#fff;
}
input[type=checkbox]:disabled+label[for],
input[type=radio]:disabled+label[for]{
  border: 2px solid #88beff;
  background: #ddd;
  color: #777;
  opacity:1;
}
.radio_btn:first-child label{
  border-radius: 3px 0 0 3px;
}
.radio_btn:last-child label{
  border-radius: 0 3px 3px 0;
}
.textinput input[type=checkbox]+label[for]{
  position: relative;
  top: 0;
  left: 0;
  padding: 8px 40px 5px 10px;
  height: 35px;
  color: #333;
  background-color: #fff;
  border: 2px solid #0074ff;
  box-shadow: none;
  font-weight: bold;
  font-family: inherit;
  font-size: 14px;
  white-space: nowrap;
  line-height: normal;
  margin: 0;
  width: 100%;
}
input[type=checkbox]+label[for] .fa-check, input[type=radio]+label[for] .fa-check{
  color: #ddd;
  position: absolute;
  right: 10px;
  font-size: 25px;
  top: 3px;
}
input[type=checkbox]+label[for].ui-state-active .fa-check, input[type=radio]+label[for].ui-state-active .fa-check{
  color: #1500ff;
}
.textinput input:disabled[type=checkbox]+label[for], .textinput > input:disabled[type=radio]+label[for] {
  border: 2px solid #88beff;
  background: #ddd;
  color: #777;
  opacity:1;
}
input[type=checkbox]+label[for].ui-state-active.ui-state-disabled .fa-check,
input[type=radio]+label[for].ui-state-active.ui-state-disabled .fa-check{
  color: #9289ff;
}

button:disabled, button.disabled {
  background-color: #bbb!important;
  color: #f6f6f6!important;
  box-shadow: unset !important;
}
h1.warn_msg{
  color:#f00;
  position:absolute;
  z-index:10000;
  font-size:25px;
  font-weight:bold;
  text-shadow:0px 0px 2px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff;
}
.err_msg, .popup_err{
  color:#800;
}
.popup_err{
  display:inline-block;
}
.popup_err:after{
  font-weight:bold;
  border: 1px solid #800;
  content:"An error has occurred. Please refresh your screen and retry.";
  padding:10px 20px;
  background:#fff6f6;
  position:absolute;
          box-shadow: 0 0 8px rgba(0,0,0,0.6);
      -ms-box-shadow: 0 0 8px rgba(0,0,0,0.6);
     -moz-box-shadow: 0 0 8px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0 0 8px rgba(0,0,0,0.6);
  z-index: 1000;
  white-space:nowrap;
}
.bord_red{
  color:#800;
  font-size:11px;
  background:#fee;
  border:1px dotted #800;
  padding:2px 5px 0;
  text-align:center;
}
.bord_grn{
  color:#080;
  font-size:11px;
  background:#efe;
  border:1px dotted #080;
  padding:2px 5px 0;
  text-align:center;
}
/* END Foundation overrides **********************************************************************/
/* START RESPONSIVE containers *******************************************************************/
.container-fluid .row {
  max-width: 100%;
  background-color: rgba(255, 255, 255, 0.7);
  padding: 5px;
}
.container-fluid>.row {
  height: 100%;
}
.popup .row{
  max-width: unset;
  position:relative;
}
/*
.container-fluid > .row{
  margin-left: -1rem;
  margin-right: -1rem;
}
*/
/* TEMP OVERRIDE - JUST TO SEE HOW IT WORKS - ADDED 2019-05-31
(If you remove this ... uncomment the last one above !!!!)
*/
.row .row{
  margin-left: -.5375rem;
  margin-right: -.5375rem;
}
.column, .columns {
  padding-left: 0.5375rem;
  padding-right: 0.5375rem;
}
/* END TEMP OVERRIDE */
/* END TEMP OVERRIDE */
/* END TEMP OVERRIDE */
.separator{
  display: inline-block;
  width: 0px;
  height: 100%;
  position: absolute;
}
.separator.full{
  height: calc(100% + 7px);
  margin-top: -7px;
}
.separator:after{
  content: "";
  background-color: #eee;
  position: absolute;
  width: 2px;
  height: 100%;
  left: -1px;
}
/* END Responsive containers *********************************************************************/



/* START Main layout *********************************************************************/
.scr_group{
  padding: 10px 20px;
  background: #fff;
  border-radius: 20px;
}

.to_edit_btn{
  position: relative;
  right: -15px;
  font-size: 22px;
  border-radius: 5px;
  height: 29px;
  padding: 0px 10px 0 14px;
}
.to_edit_btn .fa-plus{
  padding: 1px 5px 0 0;
}
.dropzone .dz-preview .dz-error-message{
  width: auto;
}
.dropzone .dz-preview .dz-error-mark{
left: 25%;
top: 85%;
}
.dropzone .dz-preview .dz-error-mark svg{
  width: 30px;
  height: 30px;
}
.dropzone .dz-preview .dz-remove{
  top:-26px;
}
.basic_info_dz{
  height: 35px;
  white-space: nowrap;
  background-color: #f0f0f0;
  border: 1px dashed #ccc;
  border-radius: 3px;
}
.basic_info_dz .dropzone{
  height: 40px;
  border: 0;
  background-color: transparent;
}
.basic_info_dz .dropzone .dz-message{
  margin: 1px auto;
  font-size: 12px;
  white-space: break-spaces;
  height: 95%;
  overflow: hidden;
}
.basic_info_dz:hover .dz-message>.tohide{
  display: none;
}
.upld_cont{
  height: 35px;
  white-space: nowrap;
  background-color: #f0f0f0;
  border: 1px dashed #ccc;
  border-radius: 3px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2px;
}

/* END Main layout *********************************************************************/

/* START Buttons **********************************************************************************/
.rpt_btnset {
  white-space:nowrap;
  height: 40px;
  margin: 0;
  height: 35px;
}
.rpt_btnset .btn:nth-child(n+2){
  margin-left:2px;
}
.rpt_btnset a{
  vertical-align:top;
}
.rpt_btnset a:hover, .rpt_btnset a:focus, .rpt_btnset a:active{
  color:#fff;
}
.rpt_btnset .textinput{
  display:inline-block;
}
.rpt_btnset .textinput:nth-child(n+2){
  margin-left:2px;
}

.btn_group {  /* for radio buttons (more labels than buttons actually) */
  position: relative;
  display: flex;
  width: 100%;
  /* margin-left:20px; */
  /*background:#fff;*/
}
.btn_group > div{
  display:inline-block;
  width:100%;
}
.btn_group > div:nth-child(n+2){
  margin-left:2px;
}

.btn, button {
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font-size: 16px;
  font-weight: 700;
  padding: 1px 20px 0;
  height: 35px;
  border-radius: 20px !important;
  border-style: solid;
}
.btn .fa{
  margin-left: 10px;
}
.panel_buttons{
  position:absolute;
  right:15px;
  top:-41px;
}
.btn-invisible{
  cursor:default;
  color:transparent;
  background:transparent;
}
.txt_password{
  -webkit-text-security:disc;
}
.passw_tog{
  position: absolute;
  right: 5px;
  height: 36px;
  width: 30px;
  z-index: 1;
  display: flex;
  align-items: center;
  font-size: 20px;
  color: #777;
  justify-content: center;
}
.passw_chk{
  position: absolute;
  right: 5px;
  top: 0;
  width: 30px;
  z-index: 1;
  display: flex;
  align-items: center;
  font-size: 15px;
  justify-content: center;
}
.btn-success {
  color: #fff;
  background-color: #008f00;
}
.btn-success:hover {
  background-color: #007000;
  box-shadow: 0px 0px 5px 1px #000;
}
.btn-default {
  background-color: #eee;
  color: #333;
}
.btn-default.current{
  background-color: #7f8184;
  color:#eee;
}
.btn-default:hover {
  background-color: #ccc;
  color:#000;
}
.btn-primary {
  background-color: #004495;
  color:#fff;
}
.btn-primary:hover {
  background-color: #002552;
  box-shadow: 0px 0px 5px 1px #000;
}
.btn-secondary {
  background-color: #777;
  color:#fff;
}
.btn-secondary:hover {
  background-color: #444;
  box-shadow: 0px 0px 5px 1px #000;
}
.btn-tersiery {
  background-color: #a90097;
  color:#fff;
}
.btn-tersiery:hover {
  background-color: #610057;
  box-shadow: 0px 0px 5px 1px #000;
}
.btn-warn {
  background-color: #ff7500;
  color:#fff;
}
.btn-warn:hover {
  background-color: #b36a00;
  box-shadow: 0px 0px 5px 1px #000;
}
.btn-danger {
  background-color: #D63F3A;
  color:#fff;
  transition: color 0.2s, box-shadow 0.2s;
}
.btn-danger:hover {
  background-color: #a92926;
  box-shadow: 0px 0px 5px 1px #000;
}

.conf_del_med_aid{
  background: #fff;
  color: #000;
  box-shadow: unset!important;
  border: 2px solid #000;
  transition: color 0.2s, box-shadow 0.2s;
}

.conf_del_med_aid:hover{
  background: #fff;
}

.small-btn{
  height: 21px;
  padding: 2px 18px;
}
/* END Buttons ************************************************************************************/

/* START Login Form Stuff ************************************************************************/

.form_signin h2 {
  font-size: 22px;
  margin-bottom: 14px;
}
.form_signin a {
  font-size: 14px;
  font-weight: 700;
  margin-top:10px;
}
.signin_msg, .form_signin {
  max-width: 400px;
}
.signin_msg{
  margin: 0 auto;
}
input:-webkit-autofill {
  -webkit-text-fill-color: #000;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
}
input:-webkit-autofill:focus {
  -webkit-text-fill-color: #000;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
}
/* END Login Form Stuff **************************************************************************/


/* START Pagination Stuff ************************************************************************/
ul.pager{
  list-style:none;
  padding:0;
  margin:0;
}
.foot_pager{
  padding: 10px 10px 5px 10px;
}
li.page_no{
  float:left;
  border:1px solid #ddd;
  padding:5px 12px 2px ;
  font-size:14px;
  font-weight:normal;
  cursor:pointer;
  text-align:center;
}
li.page_no:not(.inactive):not(.active):hover{
  background-color:#eee;
}
li.page_no.inactive{
  cursor:not-allowed;
  color:#aaa;
}
li.page_no.active{
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
  cursor: default;
}
div.items_sel{
  display:inline-block;
  white-space:nowrap;
  font-weight:normal;
  margin:0 0 0 10px;
}
div.items_sel .textinput{
  display:inline-block;
  height:20px;
  padding:0;
}
div.items_sel .textinput select{
  padding: 7px 10px;
  height: 31px;
  width: 50px;
}
div.row_count{
  float:right;
  font-weight:normal;
  margin: 6px 0 0 10px;
}
/* END Pagination Stuff **************************************************************************/


/* textinput stuff to get smart-placeholders to work *********************************************/
.textinput {
  position: relative;
  margin:0 0 1rem;
  min-width: 55px;
}
.textinput input[type=number]::-webkit-inner-spin-button,
.textinput input[type=number]::-webkit-outer-spin-button{
  -webkit-appearance:none;
  margin:0;
}
.textinput input,
.textinput textarea,
.textinput select {
  cursor: text;
  font-size: 14px;
  font-weight: normal;
  padding: 15px 9px 0px 9px;
  position: relative;
  transition: all 0.15s ease;
  height: 35px;
  margin: 0;
  border-radius: 5px;
}
.textinput input.no_label,
.textinput textarea.no_label,
.textinput select.no_label {
  padding: 2px 9px 0px 9px;
}
.textinput input[isdate=yes]{
  text-align:center
}
.textinput input:focus,
.textinput textarea:focus,
.textinput select:focus {
  border-color: #0074ff;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
}
.textinput label {
  cursor: text;
  font-size: 14px;
  padding: 10px 9px 0px 9px;
  left: 0;
  position: absolute;
  transition: all 0.15s ease;
  width: calc(100%);
  color: #ccc;
  top: 0px;
  font-weight: bold;
  white-space: nowrap;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
}
.textinput input.hide ~ label,
.textinput textarea.hide ~ label,
.textinput select.hide ~ label {
  display: none;
}
td.required:after,label[required]:after, .textinput [required] ~ label:after, h3[required]:after {
  content: "*";
  color: #a00;
  margin: 0 0 0 3px;
  font-size: 14px;
  position:absolute;
}
.textinput_inline .textinput{
  display:inline-block;
}
td > .textinput label{
  width:auto;
}
.textinput textarea {
  height:96px;
  padding: 13px 9px 2px 9px;
  resize:vertical;
}
.textinput textarea.lines_x_3{
  height:152px;
}
.textinput textarea.formula_text{
  height:216px;
}

/* Duplicated below for other labels - but breaks for some browsers when included in one - see @*@*@*@ */
.textinput input:-internal-autofill-previewed ~ label,
.textinput input:-internal-autofill-selected ~ label,
.textinput textarea:-internal-autofill-previewed ~ label,
.textinput textarea:-internal-autofill-selected ~ label,
.textinput select:-internal-autofill-previewed ~ label,
.textinput select:-internal-autofill-selected ~ label{
  font-size: 12px;
  font-weight: 400;
  display: inline-block;
  width: auto;
  position: absolute;
  top: 1px;
  left: 1px;
  padding: 0px 5px 0 5px;
  color: #333;
  background: rgba(255,255,255,0.7);
  line-height: 1;
}
/* Duplicated ABOVE for other labels - but breaks for some browsers when included in one - see @*@*@*@ */
.textinput input.filled ~ label,
.textinput input:focus ~ label ,
.textinput textarea.filled ~ label,
.textinput textarea:focus ~ label ,
.textinput select ~ label {
  font-size: 12px;
  font-weight: 400;
  display: inline-block;
  width: fit-content;
  position: absolute;
  top: 3px;
  left: 3px;
  padding: 0px 10px 0 5px;
  color: #333;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}
.textinput input.filled ~ label,
.textinput textarea.filled ~ label,
.textinput select.filled ~ label {
  color: #888;
}
.textinput textarea.filled,
.textinput input[type="text"].filled,
.textinput input[type="number"].filled:valid,
.textinput input[type="password"].filled:valid,
.textinput input[type="email"].filled:valid {
  background: #fff;
}
.textinput button[search] {
  position: absolute;
  right: 0;
  background: 0 0;
  border: none;
  padding: 10px 10px 4px;
  color: #D0D2D3;
  font-size: 21px;
  top: 0;
}
.textinput button[search]:hover {
  color: #002755;
}
.textinput .err_msg, .btn_group .err_msg{
  display:none;
  font-size:11px;
  background:#fee;
  border:1px dotted #800;
  padding:2px 5px 0;
  text-align:center;
}
.textinput .warn_msg, .btn_group .warn_msg{
  font-size:11px;
  background: #feb;
  border: 1px dotted #570;
  padding:2px 5px 0;
  text-align:center;
}
.report_table_wrap table {
  border-collapse: unset;
}
.report_cont{
  text-align: center;
  max-height: 100%;
  overflow-y: auto;
}
.report_table_wrap{
  display: inline-block;
  border: 1px solid #00387a;
  box-shadow: 0 0 8px 1px rgba(0,0,0,0.3);
  margin: 30px 5px 5px 5px;
}
.popup .report_cont{
  padding-top: 0px;
}
.popup .report_cont .report_table_wrap{
  min-width: 100%;
}
table.report{
  margin: 0;
  /* box-shadow: 0 0 8px rgba(0,0,0,0.6); */
}
.pat_edit_div>table.report{
  margin-top: 5px;
}
.res_tbl table tr td{
  white-space: nowrap;
}
.res_tbl{
  width: 500px;
}
thead .textinput input,
thead .textinput textarea,
thead .textinput select {
  margin:0;
}
table.report tfoot{
  background:#fff;
}
table.report tfoot, table.report tfoot tr, table.report tfoot td{
  border:0;
  padding: 0;
}
table.report tfoot.bal_avail td{
  height:40px;
  padding: 5px 10px;
  border:1px solid #ddd;
  background:#e6e6e6;
  font-weight:700;
}
table.report tfoot.bal_avail td.neg{
  color:#800;
  background:#dbb;
}
table.dbl_row tbody tr:nth-child(4n+1),
table.dbl_row tbody tr:nth-child(4n+2){
  background-color: #fff;
}
table.dbl_row tbody tr:nth-child(4n+3),
table.dbl_row tbody tr:nth-child(4n+4){
  background-color: #f1f1f1;
}
table.report tr.current td{
  color:#f80;
}

table.report .fa-exclamation-triangle{
  position:relative;
  top:-5px;
  left:5px;
}
.stick_tr{
  position: sticky;
  top: 0px;
  z-index: 1;
  background-color: #0074ff !important;
  color: #fff;
}
tr.collapsor{
  background: #7f7f7f !important;
  color: #fff;
  font-size: 15px;
  cursor: s-resize;
  border: 1px solid #fff;
}
tr.collapsor .fa{
  float: right;
  font-size: 22px;
}
td.uncollapse_head{
  background: #7f7f7f !important;
  color: #fff;
  font-weight: bold;
}
.panel_header .fa-exclamation-triangle{
  position:absolute;
  font-size:20px;
  top:-5px;
  right:-30px;
}
.fa.show_num{
  position:relative;
}
.fa.show_num .num{
  color: #070;
  font-size: 14px;
  position: absolute;
  font-weight: bold;
  font-family: 'Myriad Pro';
  left: 25px;
}
.textinput.remove:after{
  content : " ";
  position:absolute;
  height:100%;
  width:100%;
  top:0;
  left:0;
  background-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cg%20style%3D%22stroke%3Argb(138%2C0%2C0)%3B%20stroke-width%3A3%22%3E%3Cline%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%2220%22%20y2%3D%2220%22%20%2F%3E%3Cline%20x1%3D%2220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%2220%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
  background-size:100% 100%;
  opacity:0.3;
}

.textinput .thousands, .textinput .right, .textinput .tens{
  text-align:right;
}
.inp_no_marg>.textinput{
  margin: 0;
}
/* .textinput .thousands{ background:#ff8!important;  color:#808!important; } */

input:disabled,
input[readonly],
select:disabled,
select[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #f6f6f6!important;
  color: #5f5e5e!important;
  cursor: not-allowed;
}

/* END textinput stuff for smart-placeholders to work *********************************************/

/* START section and panel stuff ******************************************************************/
.button.disabled:hover{
  color:inherit;
  background : #ddd;
}
/* END section and panel stuff */

.error_msg{
  padding: 15px 30px 15px 15px;
  background-color: #f2dede;
  color: #a94442;
  border: 1px solid #ebccd1;
  border-radius: 4px;
  font-weight:bold;
  position:relative;
}
.close_x{
  position:absolute;
  top:18px;
  right:15px;
  cursor:pointer;
  width:10px;
  height:10px;
  background: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cg%20style%3D%22stroke%3Argb(138%2C%20138%2C%20138)%3B%20stroke-width%3A3%22%3E%3Cline%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%2220%22%20y2%3D%2220%22%20%2F%3E%3Cline%20x1%3D%2220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%2220%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
  opacity:0.3;
  background-size:cover;
}
.close_x:hover{ opacity:1; }
.popup .close_x{
  position: sticky;
  width: 20px;
  height: 20px;
  top: 10px;
  float: right;
  z-index: 3;
}
.conf_pop{
  position: absolute;
  background: #fff;
  padding: 5px;
  border: 1px solid #0f0;
  border-radius: 10px;
  z-index: 1000;
}
.exp_conf{
  position: absolute;
  background: #fff;
  padding: 15px;
  border: 1px solid #004495;
  border-radius: 10px;
  z-index: 10;
}



.scroll_cont{ overflow:auto; }
.scroll_x { overflow-x: scroll; }
.scroll_y { overflow-y: scroll; }

.flex_table table{ width:auto; }
.abs{position:absolute;}
.rel{position:relative;}
.flr{float:right;}

.h3_top{ margin-top:22px;}

.row.hover_hi:hover{
  background: rgba(255,255,150,0.5);
}

.invisible{
  visibility: hidden;
  height: 0;
  position: absolute;
}
.bbl{
  position: absolute;
  display: inline-block;
  background:#ed7d31;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  left:calc(50% - 10px);
  top:15px;
}

.bbl_line_top, .bbl_line_mid, .bbl_line_bot{
  position: absolute;
  display: inline-block;
  background:#631;
  width:6px;
  left:calc(50% - 3px);
}

.bbl_line_top{
  height:calc(50% + 5px);
  top:50%;
}
.bbl_line_mid{
  height:calc(100% + 10px);
  top:0;
}
.bbl_line_bot{
  height:calc(50% + 5px);
  top:0;
}

.font25{ font-size: 25px; }

.t10{ top: 10px; }

.r10{ right: 10px; }

.f20{ font-size: 20px }
.f30{ font-size: 30px }
.f40{ font-size: 40px }

.mw60{ min-width:60px; }
.mw70{ min-width:70px; }
.mw80{ min-width:80px; }
.mw90{ min-width:90px; }
.mw100{ min-width:100px; }
.mw200{ min-width:200px; }
.mw220{ min-width:220px; }
.mw400{ min-width:400px; }

.mx70{ max-width:70px; }
.mx100{ max-width:100px; }
.mx200{ max-width:200px; }
.mx300{ max-width:300px; }
.mx400{ max-width:400px; }
.mx500{ max-width:500px; }

.overhid{ overflow: hidden;}
.overell{
  overflow: hidden;
  text-overflow: ellipsis;
}

.vat{ vertical-align:top;}

.w100p{ width:100%; }
.mx100p{ max-width:100%; }
.w10{ width:10px; }
.w60{ width:60px; }
.w70{ width:70px; }
.w80{ width:80px; }
.w90{ width:90px; }
.w100{ width:100px; }
.w300{ width:300px; }
.h20{height:20px !important;}
.h40{height:40px !important;}
.h500{height:500px;}

.hfit{height: fit-content;}

.h100p{ height: 100%;}
.h75p{ height: 75%;}
.h66p{ height: 66.6%;}
.h50p{ height: 50%;}
.h33p{ height: 33.3%;}
.h25p{ height: 25%;}

.pad0 { padding:0 !important;  }
.pad3{ padding:3px !important; }
.pad5{ padding:5px !important; }
.pad10{ padding:10px !important; }
.pad20{ padding:20px; }
.pad_l7{ padding-left:7px; }
.pad_l15{ padding-left:15px; }
.pad_l20{ padding-left:20px; }
.pad_r15{ padding-right:15px; }
.pad_r20{ padding-right:20px; }
.pad_r35{ padding-right:35px; }
.pad_r60{ padding-right:60px; }
.pad_r70{ padding-right:70px; }
.pad_r100{ padding-right:100px; }
.pad_s{ padding-top:0; padding-bottom:0;}
.pad3_t{ padding: 3px 0 0 0;}
.pad15_t{ padding-top: 15px;}
.pad_h3_top{ padding-top:22px; }
.semi_trans{
  opacity:0.2;
  transition:0.3s
}
.vam { vertical-align:middle;}
.bad_err{ background:#ff0; color:#b00; }

.wht{ color:#fff; }
.red{ color:#b00; }
.redim{ color:#b00 !important;}
.blu{ color:#00a; }
.gre{ color:#bbb; }
.grn{ color:#0a0; }
.dgrn{ color:#080; }
.amb{ color:#f80; }
.bold{ font-weight: bold;}


.hilite {box-shadow: 0 0 5px 3px #9f0;}
.lite_head{ color:#aaa;}
.hiliter{ background:#3f3;}

.nowrap{ white-space:nowrap;  }
.wrap{   white-space:normal;  }
.pre{    white-space:pre-wrap;}

.al {text-align:left;  }
.ac {text-align:center;}
.ar {text-align:right; }
.fll{float:left;}

.ib{ display: inline-block; }
.flex{ display: flex; }
.if{ display: inline-flex; }

.sp_btw{ justify-content: space-between; }
.sp_evn{ justify-content: space-evenly; }
.f_cen{ justify-content: center; }

.fwrap{ flex-wrap: wrap; }
.fcol{ flex-direction: column; }

.fas{ align-items: flex-start; }
.fac{ align-items: center;     }
.fae{ align-items: flex-end;   }

.pad_bot_40{ padding-bottom: 40px; }

.marg_bot_min_10 { margin-bottom : -10px; }
.marg_bot_1 { margin-bottom : 1rem; }
.marg_bot_2 { margin-bottom : 2rem; }

.marg_top_min_10 { margin-top : -10px; }
.marg_top_1 { margin-top    : 1rem; }
.marg_top_2 { margin-top    : 2rem; }


.marg_0{ margin:0!important;}
.marg_auto{ margin:auto!important;}

.bg_grey{background-color:rgba(200,200,200,0.2);}
.bg_head{
  background:#777;
  color:#fff;
  padding:10px 0 10px 0;
}
.exportdiv {
  float: right;
  padding-right: 20px;
}
.hov_point{
  cursor: pointer;
}


/* Small only */
@media screen and (max-width: 39.9375em) {
  .border_left_sm{
    border-left:2px solid #eee;
  }
}

/* Medium and up */
@media screen and (min-width: 40em) {
  .border_left_mu{
    border-left:2px solid #eee;
  }

  /* ::-webkit-scrollbar {
    width: 16px;
  } */
}

/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
}

/* Large and up */
@media screen and (min-width: 64em) {
  .border_left_lu{
    border-left:2px solid #eee;
  }
}

/* Large only */
@media screen and (min-width: 64em) and (max-width: 74.9375em) {
}

@media only screen and (max-width: 40em)  {

  table.respond,
  table.respond thead,
  table.respond tbody,
  table.respond th,
  table.respond tr,
  table.respond td {
		display: block;
	}

	table.respond thead{
    display: none;
  }

  table.respond tbody tr{
    border: 1px solid #eee;
    border-radius: 3px;
    margin: 20px 5px;
  }

  table.respond tbody td:nth-child(1) {
    display: none;
  }

  table.respond tbody td:nth-child(1) {
    display: none;
  }

  table.respond tbody td[data-label] {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
	}

  table.respond td[data-label]:before {
    content: attr(data-label);
    font-weight: bold;
  }
}


.indent_l_0, .indent_l_1, .indent_l_2, .indent_l_3 {
  display:inline-block;
  height:40px;
  vertical-align: middle;
  background: transparent url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20width%3D%2240%22%20height%3D%2240%22%3E%3Cg%20style%3D%22stroke%3Argb%28100%2C100%2C100%29%3B%20stroke-width%3A2%3B%20stroke-linecap%3Around%3B%22%3E%3Cline%20x1%3D%2220%22%20y1%3D%220%22%20x2%3D%2220%22%20y2%3D%2220%22%20%2F%3E%3Cline%20x1%3D%2220%22%20y1%3D%2220%22%20x2%3D%2235%22%20y2%3D%2220%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E') no-repeat;
  background-position:right;
  background-repeat: no-repeat;
}
.indent_l_0{ width:0px; }
.indent_l_1{ width:40px; }
.indent_l_2{ width:80px; }
.indent_l_3{ width:120px; }

.test_editor{
  display: block;
  position: absolute;
  white-space: pre-wrap;
  left: 0;
  background: #fff;
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #000;
  z-index: 10000;
}

::-webkit-scrollbar {
  width: 18px;
}
::-webkit-scrollbar-track {
  background-color: transparent;
  width: 100%;
}
::-webkit-scrollbar-thumb {
  background-color: #d6dee1;
  border-radius: 20px;
  border: 6px solid transparent;
  background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover {
  background-color: #a8bbbf;
}
::-webkit-scrollbar-corner{
  background-color: transparent;
}


.row.offer_item {
  background: #84fda5;
  border-radius: 7px;
  margin-top: 7px;
  text-align: right;
}

.row.offer_head {
  font-weight: bold;
  text-align: center;
  background: #e9e9e9;
  border-radius: 7px;
}