:root{
    --black: black;
    --white: white;
    --logoPink: #e07fdc;
    --logoGreen: #28cab5;
    --logoLightGreen: rgb(230, 255, 255);
}

@font-face {
    font-family: 'Roboto Flex';
    src: url('img/fonts/RobotoFlex-VariableFont_GRAD,XOPQ,XTRA,YOPQ,YTAS,YTDE,YTFI,YTLC,YTUC,opsz,slnt,wdth,wght.ttf') format('truetype');
    font-weight: 100 900; /* Range of weights the font supports */
    font-stretch: 25% 151%; /* Range of width the font supports */
  }
  
  body {
    font-family: 'Roboto Flex', sans-serif;
    font-variation-settings: 
      'wght' 400, /* Weight */
      'wdth' 100, /* Width */
      'opsz' 16,  /* Optical size */
      'GRAD' 0,   /* Grade */
      'slnt' 0,   /* Slant */
      'XTRA' 400, /* Extra Width */
      'XOPQ' 100, /* X-height Optical Size */
      'YOPQ' 100, /* Y-height Optical Size */
      'YTLC' 500, /* Lowercase Letters Size */
      'YTUC' 700, /* Uppercase Letters Size */
      'YTAS' 750, /* Ascender Size */
      'YTDE' 250, /* Descender Size */
      'YTFI' 700; /* Figure Style */
  }
  

*{
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
}

html, body{
    height: 100%;
    width: 100%;
    font-size: 16px;
    overflow: hidden;
}

input {
    padding-left: 5px;
}
input:invalid{
    background-color: pink;
}

table{
    border-collapse: collapse;
    width: 100%;
}
table tr{
    width: 100%;
}
table td, table th{
    border: 1px solid black;
}

.gNone{
    display: none;
}
.gFrm{
  display: none;
  width: 100%;
  max-height: 100%;
  max-width: 500px;
  background-color: white;
  overflow: auto;
}
.gFullFrm{
    display: none;
    width: 100%;
    max-height: 100%;
    background-color: white;
    overflow: auto;
}
.gFrmHeader{
    display: flex;
    position: sticky;
    top: 0px;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    background-color: var(--logoPink);
    color: white;
    text-shadow: 2px 2px 3px black;
    padding: 5px 10px 5px 10px;
    font-size: 200%;
    width: 100%;
    z-index: 1;
}
.gFrmBackHeader{
    display: flex;
    flex-flow: row nowrap;
    gap:5px;
    justify-content: center;
    align-items: center;
}
.gFrmBackHeader .js_BtnBack{
    height: 30px;
    width: 30px;
}

.gFrmClose{
    height: 30px;
    cursor: pointer;
}
.gFrmEdit{
  height: 30px;
  cursor: pointer;
}
.gFrmSection{
    display: block;
    margin-top: 10px;
    margin-bottom: 5px;
    font-size: 130%;
    color: var(--darkBlue);
    text-decoration: underline;
}
.gFrmInput{
    height: 30px;
    display: block;
    border: 1px solid black;
    padding-left: 5px;
    width: 100%;
}
.gFrmSecHeader{
    display: block;
    font-size: 130%;
    font-weight: bold;
    margin-top: 10px;
    text-decoration: underline;
}

.gFrmFieldset{
    border: 1px solid black;
    padding: 5px;
    margin-top: 10px;
}
.gFrmFieldset legend{
    margin: 0px 5px 0px 5px;
}
.gLegendHeader{
    font-size: 120%;
    font-weight: bold;
}

.gFrmTabCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-around;
    border-top: 1px solid var(--logoPink);
    border-bottom: 1px solid var(--logoPink);
    padding-top: 5px;
    padding-bottom: 5px;
}
.gFrmTabCon div{
    padding: 5px;
    border: 1px solid var(--logoGreen);
}
.gFrmTabCon div.selected{
    color: white;
    background-color: var(--logoGreen);
}

.gFrmFieldset{
    border: 1px solid black;
    border-radius: 5px;
}

.gDoubleInputCon{
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-end;
    width: 100%;
    gap: 5px;
}
.gChkBox{
    display: flex;
    flex-flow: row nowrap;
    gap: 5px;
    align-items: center;
}
.gChkBox input{
    height: 25px;
    width: 25px;
}
.gBtnBox{
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    gap: 15px;
    margin: 10px 0 5px 0;
    width: 100%;
}

.gBtnSave{
    background-color: var(--logoGreen);
    color: white;
    padding: 5px 10px 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    min-width: 80px;
    text-align: center;
    box-shadow: 2px 2px 5px black;
}
.gBtnDel{
    background-color: white;
    color: red;
    padding: 5px 10px 5px 10px;
    border-radius: 5px;
    border: 1px solid red;
    cursor: pointer;
    text-align: center;
    margin-right: 10px;
    margin-left: 10px;
}
.gBtnBack{
    background-color: white;
    color: black;
    padding: 5px 10px 5px 10px;
    border-radius: 5px;
    border: 1px solid black;
    cursor: pointer;
    text-align: center;
    margin-right: 10px;
}
.gBtnFrame{
    color: var(--logoPink);
    border: 1px solid var(--logoGreen);
    padding: 5px 10px 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    min-width: 80px;
    text-align: center;
    box-shadow: 2px 2px 5px black;

}
.gBtnPhoto{
    position: relative;
    height: 50px;
    width: 50px;
    background-image: url('../img/btnPhoto.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    border: 1px solid var(--lightBlue);
    margin-top: 10px;
}

.gFlexRowBetween{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    margin-top: 10px;
}

.gMask{
    width: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 3;
    display: none;
    position: absolute;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
    text-align: center;
}
.gLoader{
    position: fixed;
    border: 8px solid var(--darkBrown);
    border-radius: 50%;
    border-top: 8px solid var(--lightBrown);
    border-bottom: 8px solid var(--lightBrown);
    width: 60px;
    height: 60px;
    top: calc(50% - 30px);
    left: calc(50% - 10px);
    margin-left: -30px;
    margin-top: -30px;
    -webkit-animation: spin 2s linear infinite; /* Safari */
    animation: spin 2s linear infinite;
}
.gFloatView{
    height: 100%;
    width: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 2;
    display: none;
    position: absolute;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
    text-align: center;
}
.gFloatScreen{
    position: absolute;
    z-index: 3;
    max-height: 83vh;
    width: 95%;
    max-width: 500px;
    background-color: rgba(255, 255, 255, 0.8);
}

.gAlignCener{
    display: flex;
    width: 100%;
    justify-content: center;
}

.gLabel{
    display: flex;
    flex-flow: column nowrap;
    gap: 1px;
    margin-top: 3px;
}
.gLabel input{
    height: 40px;
    display: block;
    border: 1px solid black;
    padding-left: 5px;
    width: 100%;
}
.gLabel select{
    height: 40px;
    display: block;
    border: 1px solid black;
    padding-left: 5px;
    width: 100%;
}

.gSideLabel{
    display: flex;
    flex-flow: row nowrap;

}

.gFrmBody{
    padding: 5px 10px 5px 10px;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.gFrmFooter{
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    width: 100%;
    padding: 10px 10px 10px 10px;
    border-top: 1px solid var(--darkBlue);
    background-color: white;
}

.gjs_textareaCon{
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.gjs_textareaCon textarea{
  resize: none;
  overflow: hidden;
  width: 100%;
  background-color: var(--white);
  box-sizing: border-box;
  min-height: 30px;
  border: var(--darkBlue) solid 1px;
  border-radius: 3px;
  padding: 7.5px;
}
.gjs_textareaCon span{
    position: absolute;
    right: 10px;
    top: 2px;
    color: black;
    font-size: 8px;
}

.gBtnOptionsCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 20px;
    margin-top: 10px;
}

.gBtnOptionsCon span{
    font-size: 120%;
    text-decoration: underline;
    color: var(--logoPink);
    text-shadow: 0.5px 0.5px 0.5px black;
}

#toolTip {
  padding: 5px;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.8);
  color: var(--white);
  display: none;
  z-index: 10;
  -webkit-transition: opacity 0.5s;
  -moz-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

#infoBox {
  width: 250px;
  background-color: white;
  border-radius: 15px;
  z-index: 4;
  display: none;
  position: absolute;
  margin: 0;
  padding: 15px;
  text-align: center;
  font-family: montserrat-light;
}
#infoBox header {
  margin-top: 15px;
  font-family: montserrat;
  font-weight: bold;
  font-size: 24px;
}
#infoBox img {
  margin-bottom: 3px;
  height: 50px;
  width: 50px;
}
#infoBox p {
  font-family: montserrat;
  font-weight: bold;
  font-size: 24px;
}
#infoBox .btnBox {
  margin-top: 10px;
  width: 100%;
  clear: both;
}
#infoBox .btnBox div {
  margin-bottom: 10px;
  color: var(--white);
  height: 40px;
  line-height: 37px;
  border-radius: 5px;
  font-size: 24px;
  cursor: pointer;
}

#dataListCon {
  position: absolute;
  display: none;
  background-color: var(--white);
  border: 1px solid var(--darkBlue);
  z-index: 4;
  max-height: 300px;
  overflow-y: scroll;
}
#dataListCon .googleLogo{
    width: 144px;
    height: 18px;
    float: right;
}
#dataList {
  width: 100%;
  height: 100%;
  text-align: left;
  overflow-y: auto;
}
#dataList tr {
  position: relative;
  height: 40px;
}
#dataList td {
  text-align: left;
  border-bottom: 1px solid var(--darkGrey);
  height: 25px;
  cursor: pointer;
  width: 100%;
  padding-left: 5px;
  vertical-align: middle;
}
#dataList td:hover {
    background-color: var(--darkBlue);
    color: white;
}
#dataList img {
  height: 20px;
  width: 20px;
  display: inline-block;
}
#dataList .btnAdd{
    background-color: var(--lightBlue);
    color: black;
    padding: 5px;
    border-radius: 5px;
    max-width: 200px;
    text-align: center;
}

#fullView{
    display: none;
    height: 100vh;
    max-width: 500px;
    grid-template-areas:
      'fullHeader'
      'fullBody';
    grid-template-rows: 100px auto;

}
#fullView .fullVHeader{
    grid-area: fullHeader;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
}
#fullView .logo{
    max-height: 100px;
    height: 20vh;
}

#fullView .fullVFrmsCon{
    grid-area: fullBody;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
    height: 100%;
    width: 100%;
}

#appView{
    display: none;
    grid-template-areas:
      'header'
      'body'
      'footer';
    grid-template-rows: 60px auto 60px;
    height: 100%;
    max-width: 500px;
}
#appView .appViewHeader{
    grid-area: header;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    gap: 5px;
    padding: 0 10px 0 10px;
}
#appView .appViewHeader .icoMenu{
    max-width: 40px;
    max-height: 40px;
    border-radius: 50%;
}

#appView .appViewHeader .logo{
    max-width: 70px;
    box-shadow: 1px 1px 5px black;
}

#appView .appViewHeader .notiCon{
    position: relative;
}
#appView .appViewHeader .notiCon img{
    width: 35px;
    height: 35px;
    transition: transform 0.2s ease-in-out;
    position: relative;
}
#appView .appViewHeader .notiCon img.left{
    transform: rotate(-15deg);
}
#appView .appViewHeader .notiCon img.right{
    transform: rotate(15deg);
}

#appView .appViewHeader .notiCon .notiCount{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    right: 0px;
    top: 5px;
    background-color: red;
    color: white;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    text-align: center;
    font-size: 60%;
}

#appView .appViewHeader ul{
    list-style: none;
}
#appView .appViewHeader ul li{
    display: inline-block;
    border-radius: 10px;
    color: black;
    padding: 5px;
    font-size: 110%;
    border: 1px solid black;
}
#appView .appViewHeader ul li.selected{
    background-color: var(--darkBlue);
    color: white;
}

#appView .appViewHeader ul li:nth-child(n+2){
    margin-left: 5px;
}
#appView .appViewHeader .userBox{
    display: flex;
    flex-flow: column nowrap;
    font-size: 60%;
}

#appView .appViewHeader .userCon{
    justify-self: end;
    width: 150px;
    height: 100%;
}

#appView .mainDropDown{
    max-height: 0px;
    position: absolute;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-around;
    background-color: var(--logoLightGreen);
    z-index: 5;
    top: 60px;
    width: 200px;
    box-shadow: 2px 2px 5px black;
    box-sizing: border-box;
    overflow: hidden;
    transition: max-height 0.5s;
    box-sizing: border-box;
}
#appView .mainDropDown div{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    gap: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
    border-radius: 5px;
    width: 50px;
    height: 50px;
    border: 1px solid var(--darkBlue);
    box-shadow: 1px 1px 3px black;
    width: 100%;
    padding: 10px;
    background-color: white;
}
#appView .mainDropDown div.disable{
    opacity: 0.4;
}

#appView .mainDropDown div img{
    max-height: 30px;
    max-width: 30px;
}
#appView .mainDropDown div span{
    font-weight: bold;
    color: var(--logoGreen);
    text-shadow: 0.5px 0.5px 0.5px black;
}



#appView .userCon .signUpCon{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-around;
    height: 100%;
    width: 98%;

}

#appView .appViewBody{
    grid-area: body;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
    height: 100%;
    width: 100%;
    padding-bottom: 10px;
}

#appView .appViewFooter{
    grid-area: footer;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-around;
    gap: 5px;
    border-top: 1px solid black;
}
#appView .appViewFooter .appViewBtn{
    display: flex;
    flex-flow: column nowrap;
    align-items: center;  
    justify-content: center;  
    border-radius: 5px;
    width: 50px;
    height: 50px;
}
#appView .appViewFooter .appViewBtn.disable{
    opacity: 0.4;
}
#appView .appViewFooter .appViewBtn img{
    max-height: 30px;
    max-width: 30px;
}
#appView .appViewFooter .appViewBtn span{
    font-weight: bold;
    color: var(--logoGreen);
    text-shadow: 0.5px 0.5px 0.5px black;
}

#appView .dropUpMenu{
    max-height: 0px;
    position: absolute;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-around;
    background-color: var(--logoLightGreen);
    z-index: 5;
    bottom: 60px;
    width: 200px;
    box-shadow: 2px 2px 5px black;
    box-sizing: border-box;
    overflow: hidden;
    transition: max-height 0.5s;
    box-sizing: border-box;
}
#appView .dropUpMenu div{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    gap: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
    border-radius: 5px;
    width: 50px;
    height: 50px;
    border: 1px solid var(--darkBlue);
    box-shadow: 1px 1px 3px black;
    width: 100%;
    padding: 10px;
    background-color: white;
}
#appView .dropUpMenu div.disable{
    opacity: 0.4;
}

#appView .dropUpMenu div img{
    max-height: 30px;
    max-width: 30px;
}
#appView .dropUpMenu div span{
    font-weight: bold;
    color: var(--logoGreen);
    text-shadow: 0.5px 0.5px 0.5px black;
}


/*FORM SELECTBOX*/
#frmSelectBox{
    position: absolute;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 3;
    overflow-y: hidden;
}
#frmSelectBox .frmBody{
    background-color: white;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    width: 90%;
    max-height: 90%;
    overflow-y: hidden;
    padding: 10px;
}
#frmSelectBox .q{
    font-size: 120%;
    text-decoration: underline;
    font-weight: bold;
}
#frmSelectBox .optionCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 10px;
    justify-content: center;
    align-items: center;
    width: 90%;
    overflow-y: auto;
    margin-top: 10px;
}
#frmSelectBox .optionCon div{
    background-color: var(--logoGreen);
    color: white;
    text-align: center;
    width: 80%;
    padding: 5px 0 5px 0;
    border-radius: 5%;
}

#frmSelectBox footer{
    margin-top: 10px;
}
#frmSelectBox .js_BtnClose{
    width: 80px;
    padding: 5px 0 5px 0;
    border: 1px solid var(--logoGreen);
    text-align: center;
    
}

/*FORM PHOTO*/
#frmPhoto .imgCon{
    display: flex;
    justify-content: center;
    padding-top: 10px;
}
#frmPhoto .img{
    max-height: 300px;
    max-width: 100%;
}

/*FORM REGESTAR USE*/
#frmRegUser .tcs{
    margin-top: 5px;
    white-space: pre-wrap;
    font-size: 80%;
    border: 1px solid black;
    height: 130px;
    overflow-y: scroll;
}

/*FORM NEW PASSOWRD*/
#frmNewPass fieldset{
    border-radius: 5px;
    border: 1px solid black;
    padding: 5px;
    box-shadow: 1px 1px 3px black;
}
#frmNewPass legend{
    padding-left: 5px;
    padding-right: 5px;
    background-color: white;
    z-index: 1;
}
#frmNewPass .critCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 3px;
    font-size: 80%;
    
}
#frmNewPass .critCon span{
    color: red;
}
#frmNewPass .critCon span.chk{
    color: green;
    text-shadow: 1px 1px 5px black;
}

/*FORM DASHBOARD SITES*/
#frmDashBoard{
    height: 100%;
    overflow: hidden;
    flex-flow: column nowrap;
}

#frmDashBoard .frmDashBody{
    padding: 5px;
    display: flex;
    flex-flow: column nowrap;
    height: 100%;
    overflow: hidden;
}

#frmDashBoard .filtersCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 100%;
}
#frmDashBoard .filtersCon div{
    border: 1px solid var(--logoGreen);
    padding: 5px;
}
#frmDashBoard .filtersCon div.selected{
    background-color: var(--logoGreen);
    color: white;
}




#frmDashBoard .custDateCon{
    margin-top: 5px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 100%;
}
#frmDashBoard .custDateCon input{
    width: 70%;
}

#frmDashBoard .mainDashCon{
    height: 100%;
    overflow-y: auto;
}

/*FORM DASHBOARD VIEW TYPE SITES*/
#frmDashBoard .sitesCon{
    display: flex;
    flex-flow: row wrap;
    gap: 10px;
}
#frmDashBoard .siteCon{
    display: flex;
    flex-flow: column nowrap;
    width: 30%;
    align-items: center;
    justify-content: center;
    background-color: var(--logoLightGreen);
    border: 1px solid var(--logoGreen);
    padding: 5px;
    border-radius: 15px;
    box-shadow: 1px 1px 5px black;
    height: auto;
}
#frmDashBoard .siteCon .siteName{
    font-size: 100%;
    font-weight: bold;
    text-decoration: underline;
}
#frmDashBoard .siteCon .totalCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: var(--logoPink);
    color: black;
    height: 90px;
    width: 90px;
    font-size: 80%;
    font-weight: bold;
}
#frmDashBoard .siteCon .rTotalLbl{
    text-decoration: underline;
}
#frmDashBoard .siteCon .rTotal{
    font-size: 150%;
}
#frmDashBoard .siteCon .tableCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    width: 100%;
    height: 90px;
}

#frmDashBoard .siteCon .col{
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: flex-end;
    width: 20%;
    
}
#frmDashBoard .siteCon .colTotal{
    font-weight: bold;
    font-size: 100%;
    height: 20px;
}
#frmDashBoard .siteCon .colBodyCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-end;
    align-items: center;
    height: calc(100% - 20px);
    position: relative;
    width: 100%;
}
#frmDashBoard .siteCon .colBody{
    height: 0;
    position: relative;
    transition: height 1s ease-in-out;
    width: 100%;
}
#frmDashBoard .siteCon .colName{
    background-image: url('../img/goldStar.png');
    background-size: contain;
    background-repeat: no-repeat;
    height: 20px;
    width: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    font-size: 60%;
}
#frmDashBoard .siteCon img{
    width: 20px;
}

/*FORM DASHBOARD VIEW TYPE SITE*/
#frmDashBoard .siteRevCon{
    width: 100%;
    height: 100%;
}
#frmDashBoard .revTblCon{
    width: 100%;
    max-height: 50%;
}

#frmDashBoard .tblRev{
    width: 100%;
    margin-top: 10px;
}
#frmDashBoard .tblRev thead{
    background-color: var(--logoLightGreen);
    font-size: 90%;
}
#frmDashBoard .tblRev thead tr:first-of-type{
    font-size: 100%;
    text-decoration: underline;
    font-weight: bold;
}
#frmDashBoard .tblRev thead img{
    width: 15px;
    height: 15px;
}
#frmDashBoard .tblRev thead th:nth-child(1) {
    width: 105px;
}
#frmDashBoard .tblRev thead th:nth-child(2) {
    width: 20px;
    text-align: center;
}
#frmDashBoard .tblRev tbody td{
    font-size: 80%;
    border: 1px solid black;
    padding: 3px;
}
#frmDashBoard .tblRev tbody td:nth-child(2){
    width: 20px;
    text-align: center;
}

/*FORM DASH VIEW TYPE SITE EMPS*/
#frmDashBoard .siteEmpsCon{
    width: 100%;
    height: 100%;
}
#frmDashBoard .tblSiteEmps td:nth-child(2){
    width: 100px;
}
#frmDashBoard .tblSiteEmps .starPresentCon{
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    width: 100%;
    height: 37px;
    z-index: 0;
}
#frmDashBoard .starPresentCon img{
    position: relative;
    width: 100%;
    z-index: 2;
}
#frmDashBoard .starPresentCon .progressCon{
    position: relative;
    width: 100%;
    height: 20px;
    background-color: lightgray;
}
#frmDashBoard .starPresentCon .progressCon div{
    position: absolute;
    top: 0;
    height: 100%;
    left: 0;
    background-color: gold;
    width: 50%;
    z-index: 1;
    transition: width 0.5s;
}

/*FORM DASH VIEW TYPE EMP*/

#frmDashBoard .tblEmp td:nth-child(1){
    width: 60px;
    text-align: center;
}
#frmDashBoard .tblEmp td:nth-child(2){
    width: 60px;
    text-align: center;
}
#frmDashBoard .tblEmp td:nth-child(3){
    padding-left: 3px;
}


/*FORM BILLING*/ 
#frmBilling .billingCard{
    display: flex;
    width: 70mm;
    height: 44mm;
    flex-flow: column nowrap;
    align-items: flex-start;
    background-image: linear-gradient(to right, gray, white);
    border-radius: 7px;
    border: 1px black solid;
    margin: 0 5px 20px 5px;
    box-sizing: border-box;
    padding: 15px;
    box-shadow: 0 0 5px gray;
}
#frmBilling .cardHead{
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
#frmBilling .cardHead h3{
font-size: 120%;
color: yellow;
padding: 0;
}
#frmBilling .cardHead span{
font-size: 80%;
cursor: pointer;
}
#frmBilling .cardHead span:hover{
color: red;
}
#frmBilling .cardNumber{
display: flex;
flex-flow: row nowrap;
color: black;
font-size: 110%;
align-items: flex-end;
flex-grow: 1;
}
#frmBilling .cardEx{
display: flex;
flex-flow: row nowrap;
flex-grow: 1;
align-items: flex-end;
}
#frmBilling .cardEx span{
margin: 0 3px 0 0;
color: white;
font-size: 80%;
}
#frmBilling .nameOnCard{
margin-top: 5px;
}
#frmBilling .setAsDefault{
width: 100%;
text-align: right;
cursor: pointer;
font-size: 12px;
margin-top: 2mm;
}
#frmBilling .asDefault{
width: 100%;
text-align: right;
cursor: pointer;
color: green;
font-weight: bold;
font-size: 12px;
margin-top: 2mm;
}
#frmBilling .setAsDefault:hover{
color: green;
}

#frmBilling .invCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 5px;
}
#frmBilling .invItem {
    display: flex;
    flex-flow: column nowrap;
    border: 1px solid black;
    padding: 5px;
}
#frmBilling .invItem .amount{
    text-align: right;
}
  

/*FORM SEARCH*/
#frmSearch .actBtnsCon{
    display: flex;
    flex-flow: row nowrap;
    width: 100%;
    gap: 5px;
    justify-content: flex-end;
    padding: 5px;
}

#frmSearch .searchTbl thead{
    background-color: var(--logoPink);
    text-align: left;
}
#frmSearch .searchTbl thead th{
    padding: 5px;
    border: 1px solid black;
}
#frmSearch .searchTbl tbody td{
    background-color: var(--logoLightGreen);
    height: 40px;
    padding: 5px;
    border: 1px solid black;
}
#frmSearch .searchTbl tr.deleted td{
    background-color: pink;
}
#frmSearch .searchTbl .chkCell{
    width: 50px;
}
#frmSearch .searchTbl tbody img{
    height: 35px;
   
}
#frmSearch .searchTbl tbody input[type='checkbox']{
    height: 30px;
    width: 30px;
}

#frmSearch .filterCon{
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    margin: 10px 0 10px 0;
    gap: 5px;
}
#frmSearch .filterCon div{
    border: 1px solid var(--logoGreen);
    padding: 5px;
    cursor: pointer;
    font-size: 80%;
    border-radius: 5%;
}
#frmSearch .filterCon div.selected{
    background-color: var(--logoGreen);
    color: white;
    text-shadow: 1px 1px 3px black;
}

#frmSearch .selectionActCon{
    display: flex;
    flex-flow: row nowrap;
    gap: 5px;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    font-size: 80%;
}
#frmSearch .selectionActCon .btnClearSelect{
    border: 1px solid red;
    padding: 2px 5px 2px 5px;
}
#frmSearch .selectionActCon .selectionBtnsCon{
    display: flex;
    flex-flow: row wrap;
    gap: 5px;
}
#frmSearch .selectionBtnsCon .btnSelection{
    background-color: var(--logoGreen);
    color: white;
    padding: 2px 5px 2px 5px;
    border-radius: 5px;
    cursor: pointer;
    min-width: 80px;
    text-align: center;
    box-shadow: 2px 2px 5px black;
    
}

#frmSearch .searchCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    gap: 3px;
    align-items: center;
    margin-top: 5px;
}
#frmSearch .searchCon .txtSearch{
    width: 50%;
}


/*FORM SITE*/
#frmSite .logoCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin-top: 10px;
}
#frmSite .logoCon .uploadHeader{
    font-size: 130%;
    text-decoration: underline;
    font-weight: bold;
}
#frmSite .logoCon img{
    max-width: 100%;
    max-height: 100px;
}
#frmSite .logoCon .btnLoadPhoto{
    border: 1px solid var(--logoGreen);
    box-shadow: 1px 1px 3px black;
    cursor: pointer;
    padding: 5px;
    width: auto;
}

#frmSite .tblHours th{
    background-color: var(--logoLightGreen);
    border: 1px solid black;
    text-align: center;
    font-size: 80%;
}
#frmSite .tblHours td{
    text-align: center;
    border: 1px solid black;
    
}
#frmSite .tblHours td:nth-child(2){
    text-align: left;
    width: 85px;
    padding-left: 3px;
}
#frmSite .tblHours tr .chkCell{
    width: 35px;
}
#frmSite .tblHours tr td input[type='checkbox']{
    width: 20px;
    height: 20px;
    background-color: green;
}




/*FORM EMPLOYEES*/

#frmEmp .photoFile{
    display: none;
}

#frmEmp .profileImgCon{
    box-sizing: border-box;
    display: flex;
    align-items: center;
    flex-flow: column nowrap;
    width: 100%;
}

#frmEmp .photoCon{
    position: relative;

}
#frmEmp .photoCon .photo{
    width: auto;
    max-width: 200px;
    max-height: 200px;
    user-select: none;
    /*user-drag: none;*/
    margin-bottom: 10px;
    user-select: none;
    -webkit-user-select: none;
}
#frmEmp .photoCon .cropBox{
    position: absolute;
    display: none;
    z-index: 2;
    background-color: transparent;
    border: 2px solid white;
    box-shadow: 2px 2px 5px black, -2px -2px 5px black;
    cursor: grab;
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;

}
#frmEmp .cropBox .flexBox{
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 90%;
}
#frmEmp .photoCon .cropBox .cropMove{
    user-select: none;
    width: 50%;
    height: 50%;
    margin-top: 10%;
    background-color: rgba(255,255,255,0.3);
    position: relative;
}
#frmEmp .btnLoadPhoto{
    border: 1px solid var(--logoGreen);
    box-shadow: 1px 1px 3px black;
    cursor: pointer;
    padding: 5px;
}

#frmEmp .qrCodeCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
}

#frmEmp .tblSite .btnSite{
    border: 1px solid var(--logoGreen);
    background-color: white;
    padding: 3px;
    text-align: center;
}
#frmEmp .tblSite .btnSite.selected{
    background-color: var(--logoGreen);
    color: white;
}

#frmEmp .tblSite .inSelect{
    width: 100%;
    height: 100%;
}

/*FORM CAMPAIGN*/
#frmCampaign .winnersCon{
    display: flex;
    flex-flow: column nowrap;
    height: 100%;
    gap: 50px;
    overflow: hidden;
}
#frmCampaign .winnersCon .tblCon{
    overflow-y: auto;
}

#frmCampaign .frmTCTextArea{
    border: 1px solid black;
}

#frmCampaign .sitesCon{
    display: flex;
    flex-flow: row wrap;
    gap: 5px;
    padding: 5px;
}
#frmCampaign .sitesCon div{
    padding: 5px;
    border: 1px solid var(--logoGreen);
}
#frmCampaign .sitesCon div.selected{
    background-color: var(--logoGreen);
    color: white;
}

#frmCampaign .previewCon .lblPreview{
    font-size: 200%;
    width: 100%;
    text-align: center;
    text-decoration: underline;
    font-weight: bold;
}

#frmCampaign .previewCon .header{
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}

#frmCampaign .previewCon .header .logoCon{
    padding: 10px;
}
#frmCampaign .previewCon .header .logo{
    height: 90px;
}

#frmCampaign .previewCon .header .campNameCon{
    display: flex;
    width: 100%;
    justify-content: center;
    background-color: black;
    color: white;
    padding: 5px;
    font-size: 150%;
} 

#frmCampaign .previewCon .header .campDescrCon{
    font-family: 'Fredoka', sans-serif;
    display: flex;
    width: 100%;
    padding: 10px;
    background-color: var(--logoPink);
    font-size: 150%;
}
#frmCampaign .previewCon .header .campDescrCon p{
    color: white;
    text-shadow: 1px 1px 3px var(--logoDarkPink);
}

#frmCampaign .previewCon .header .campDurCon{
    display: flex;
    flex-flow: row nowrap;
    width: 100%;
    justify-content: center;
    background-color: var(--logoGreen);
    padding: 5px 5px 5px 0;
}
#frmCampaign .previewCon .header .campDurCon .campDurLbl{
    font-weight: bold;
    font-size: 100%;
}

#frmCampaign .previewCon .header .howToLbl{
    position: relative;
    font-family: 'Fredoka', sans-serif;
    font-size: 170%;
    top: +20px;
}
#frmCampaign .previewCon .header .howToBorder{
    display: flex;
    flex-flow: column nowrap;
    padding: 0 5px 0 5px;
}
#frmCampaign .previewCon .header .howToCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-around;
    width: 100%;
    border-radius: 5px;
    background: linear-gradient(to right, var(--logoPink) 2px, transparent 2px) 0 0,
    linear-gradient(to right, var(--logoPink) 2px, transparent 2px) 0 100%,
    linear-gradient(to left, var(--logoPink) 2px, transparent 2px) 100% 0,
    linear-gradient(to left, var(--logoPink) 2px, transparent 2px) 100% 100%,
    linear-gradient(to bottom, var(--logoPink) 2px, transparent 2px) 0 0,
    linear-gradient(to bottom, var(--logoPink) 2px, transparent 2px) 100% 0,
    linear-gradient(to top, var(--logoPink) 2px, transparent 2px) 0 100%,
    linear-gradient(to top, var(--logoPink) 2px, transparent 2px) 100% 100%;
    background-repeat: no-repeat;
    background-size: 20px 40px;    
    padding: 20px 5px 10px 5px;
}
#frmCampaign .previewCon .header .howToCon .howItem{
    font-size: 70%;
    position: relative;
    padding: 13px 13px 20px 13px;
    width: 28%;
    background-color: var(--logoGreen);
    border-radius: 30px 30px 0 30px;
    color: white;
    position: relative;
}
#frmCampaign .previewCon .header .howToCon .howItem:nth-child(even){
    background-color: var(--logoPink);
}
#frmCampaign .previewCon .header .howToCon .howNum{
    font-family: 'Fredoka', sans-serif;
    position: absolute;
    right: -10px;
    bottom: 0;
    color: var(--logoPink);
    font-size: 250%;
    -webkit-text-stroke: 1px #fff;
    text-shadow: 1px 1px 3px black;
      
}
#frmCampaign .previewCon .header .howToCon .howItem:nth-child(even) .howNum{
    color: var(--logoGreen);
}


/*FORM PEACH ADD CARD*/

#frmPeachAddCard{
    width: 700px;
    height: auto;
    overflow: hidden;
}
#frmPeachAddCard .frmCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    height: 85vh;
}
#frmPeachAddCard .amountDetail{
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-evenly;
  align-items: center;
  width: 100%;
  height: 150px;
  box-sizing: border-box;
}
#frmPeachACAmount{
  font-size: 200%;
  font-weight: bold;
  color: var(--green);
}
#frmPeachAddCard .iFrameCon{
    position: relative;
    height: 100%;
    width: 100%;
}
#frmPeachAddCard iframe{
    height: 100%;
    width: 100%;
    overflow-y: auto;
}

/*FORM USER PIN*/
#frmUserPin .pinDisplayCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-around;
    width: 100%;
    margin-top: 10px;
}
#frmUserPin .pinDisplayCon div{
    display: flex;
    flex-flow: row nowrap;
    width: 30px;
    height: 30px;
    font-size: 200%;
    border: 1px solid black;
    border-radius: 5px;
    justify-content: center;
    align-items: center;
    color: var(--logoGreen);
}

#frmUserPin .numKeyCon{
    display: flex;
    flex-flow: row wrap;
    gap: 1%;
    margin-top: 20px;
}
#frmUserPin .numKeyCon div{
    display: flex;
    flex: 0 0 32.33333%;
    height: 80px;
    border: 1px solid black;
    font-size: 300%;
    justify-content: center;
    align-items: center;
}
#frmUserPin .numKeyCon img{
    height: 50%;
}

/*FORM QNOTE*/
#frmQA{
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    top: 0;
    z-index: 3;
}
#frmQA .disArea{
    max-height: 80vh;
    width: 90%;
    max-width: 500px;
    display: flex;
    flex-flow: column nowrap;
}

#frmQA .frmBody{
    background-color: white; 
    display: flex;
    flex-flow: column nowrap;
    height: 100%;
    width: 100%;
    padding: 10px;
}

#frmQA .ansCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 10px;
    padding: 10px;
}

/*FORM COPY LINK*/
#frmCopyLink{
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    top: 0;
    z-index: 3;
}
#frmCopyLink .disArea{
    max-height: 80vh;
    width: 90%;
    max-width: 500px;
    display: flex;
    flex-flow: column nowrap;
}

#frmCopyLink .frmBody{
    background-color: white; 
    display: flex;
    flex-flow: column nowrap;
    height: 100%;
    width: 100%;
    padding: 10px;
}


/*FORM DEPARTMETS*/
#frmDep .goalUpdateCon{
    position: relative;
    max-height: 0;
    transition: max-height 0.5s;
    overflow: hidden;
}
#frmDep .js_BtnAddGoal{
    color: var(--logoGreen);
    display: none;
}

#frmDep .tblSites td:last-of-type{
    width: 50px;
    text-align: center;
    padding: 3px;
}
#frmDep .tblSites td img{
    height: 35px;
}

#frmDep .tblGoals td:first-of-type{
    width: 45px;

}
#frmDep .tblGoals img{
    height: 35px;
}
#frmDep .tblGoals .ratingCon{
    position: relative;
    height: 100%;
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}
#frmDep .tblGoals .rating{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: transparent;
}

#frmDep .depGoalsCon{
    display: none;
}
#frmDep .tblDepGoals tBody{
    font-size: 70%;
}
#frmDep .tblDepGoals tBody td:nth-child(2){
    padding-left: 15px;
}

/*FORM FORM SENDNEWEMP*/
#frmSendNewEmp .empNameCon{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 130%;
}

/*FORM FORM USER ACCOUNTS*/
#frmUserAccs{
    overflow: hidden;
    height: 100%;
}
#frmUserAccs .filtersCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 100%;
}
#frmUserAccs .filtersCon div{
    border: 1px solid var(--logoGreen);
    padding: 5px;
}
#frmUserAccs .filtersCon div.selected{
    background-color: var(--logoGreen);
    color: white;
}

#frmUserAccs .custDateCon{
    margin-top: 5px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
    width: 100%;
}
#frmUserAccs .accsCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 10px;
    align-items: center;
    height: 100%;
}
#frmUserAccs .acc{
    border-radius: 5px;
    box-shadow: 2px 2px 5px black;
    padding: 5px;
    width: 90%;
}

#frmUserAccs  .sitesCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 10px;
    width: 100%;
    overflow: scroll;
    padding-bottom: 120px;
}
#frmUserAccs .siteCon{
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
    align-items: center;
    justify-content: center;
    background-color: var(--logoLightGreen);
    border: 1px solid var(--logoGreen);
    padding: 5px;
    border-radius: 15px;
    box-shadow: 1px 1px 5px black;
    height: auto;
}
#frmUserAccs  .siteCon .siteChartsCon{
    display: flex;
    flex-flow: row nowrap;
    gap: 10px;
    width: 100%;
}
#frmUserAccs  .siteCon .siteChartCon{
    width: 50%;
}

#frmUserAccs .siteCon .chartDescr{
    text-align: center;
}
#frmUserAccs  .siteCon .siteName{
    font-size: 100%;
    font-weight: bold;
    text-decoration: underline;
}
#frmUserAccs  .siteCon .totalCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: var(--logoPink);
    color: black;
    height: 90px;
    width: 90px;
    font-size: 80%;
    font-weight: bold;
}
#frmUserAccs  .siteCon .rTotalLbl{
    text-decoration: underline;
}
#frmUserAccs  .siteCon .rTotal{
    font-size: 150%;
}
#frmUserAccs  .siteCon .tableCon{
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    width: 100%;
    height: 90px;
    border: 1px solid lightgray;
}

#frmUserAccs  .siteCon .col{
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: flex-end;
    width: 20%;
    
}
#frmUserAccs  .siteCon .colTotal{
    font-weight: bold;
    font-size: 100%;
    height: 20px;
}
#frmUserAccs  .siteCon .colBodyCon{
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-end;
    align-items: center;
    height: calc(100% - 20px);
    position: relative;
    width: 100%;
}
#frmUserAccs  .siteCon .colBody{
    height: 0;
    position: relative;
    transition: height 1s ease-in-out;
    width: 100%;
}
#frmUserAccs  .siteCon .colName{
    background-image: url('../img/goldStar.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    height: 20px;
    width: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    font-size: 60%;
}

#frmUserAccs  .siteCon img{
    width: 20px;
}


/*FORM USER*/
#frmUser .sitesCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 10px;
}
#frmUser .secTable .siteName{
    color: black;
    text-align: center;
    font-size: 110%;
    background-color: white;
}

#frmUser .secTable thead th{
    background-color: var(--logoPink);
    color: white;
}
#frmUser .secTable thead .textLeft{
    padding-left: 5px;
    text-align: left;
}
#frmUser .secTable thead th:nth-child(n+2){
    text-align: center;
}


#frmUser .secTable tbody td{
    height: 40px;
}
#frmUser .secTable tbody td:first-of-type{
    padding-left: 5px;
}

#frmUser .secTable .btn{
    text-align: center;
}
#frmUser .secTable .allow{
    color: var(--logoGreen);
    opacity: 0.7;
    width: 80px;
}
#frmUser .secTable .allow.selected{
    opacity: 1;
    background-color: var(--logoGreen);
    color: white;
}
#frmUser .secTable .deny{
    color: red;
    opacity: 0.5;
    width: 80px;
}
#frmUser .secTable .deny.selected{
    opacity: 1;
    background-color: red;
    color: white;
}

/*FORM NOTIFICATIONS*/

#frmNotifs .filtersCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 5px;
    width: 100%;
}
#frmNotifs .filtersCon .filCon{
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    gap: 5px;
    margin-bottom: 10px;
}
#frmNotifs .filtersCon .filCon div{
    border: 1px solid var(--logoGreen);
    padding: 3px;
}
#frmNotifs .filtersCon .filCon div.selected{
    background-color: var(--logoGreen);
    color: white;
}
#frmNotifs .notifsCon{
    display: flex;
    flex-flow: column nowrap;
    gap: 15px;
}
#frmNotifs .notiCon{
    border: 1px solid black;
    box-shadow: 1px 1px 5px black;
    border-radius: 5px;
    padding: 5px;
}
#frmNotifs .notiCon .title{
    font-size: 110%;
    font-weight: bold;
}
#frmNotifs .notiCon .descr{
    white-space: pre-line;
}
#frmNotifs .btnBox{
    display: flex;
    flex-flow: row nowrap;
    gap: 5px;
    justify-content: space-between;
}
#frmNotifs .btnBox div{
    border: 1px solid var(--logoGreen);
    box-shadow: 1px 1px 3px black;
    padding: 3px;
    font-size: 80%;

}
#frmNotifs .btnBox div.selected{
    
}

#frmNotifs .notiEmpApply{
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 3px;
    width: 100%;
    font-size: 80%;
}
#frmNotifs .notiEmpApply img{
    max-width: 80px;
    max-height: 100px;
}
#frmNotifs .notiEmpApply table tr td:first-child{
    text-align: right;
    width: 100px;
    padding-right: 3px;
}
#frmNotifs .notiEmpApply table tr td:nth-child(2){
    padding-left: 3px;
}