:root {
    --primary-color: #00AABF;
    --secondary-color: #DA291C;
    --tetriary-color: #1C4B81;
    --danger-color: #EC262C;

    --schedule-date-color: #00AABF;
    --plus-btn-bg-color: #00AABF;
    --timesheet-date-bg-color: #00AABF;
    --timesheet-summary-color: #00AABF;

    --timesheet-check-box-color: #00AABF;
    --timesheet-bank-side-bar-color: #00AABF;
    --navigation-tab-active-color: #DA291C;
    --navigation-tab-background-color: #FFFFFF;
    --bottom-tab-bar-active-color: #DA291C;
    --chat-send-message-btn-bg-color: #00AABF;
    --action-btn-bg-color: #00AABF;
    --toggle-active-color: #00AABF;
    --dashboard-card-action-text-color: #00AABF;
    --dashboard-chat-icon-color: #00AABF;
    --dashboard-map-icon-color: #00AABF;
    --team-timesheet-employee-checked-color: #00AABF;

    --main-font: Montserrat, Arial, Helvetica, sans-serif !important;
    --gh-font-color: #292F48;
    --gh-bar-color: #f4f6f9;
    --desaturated-blue: #2a2f48;
    --gh-teal: #00AABF;
    --gh-gray: #F4F6F9;

    --status-waiting-for-approval: #FFDC83;
    --status-approved: #A0E9A7;
    --status-not-submitted: #CDD1D3;
    --status-rejected: #FF5772;

    --vh: 1vh;

}


.gh_loader {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: #fff;
    background-image: url("/v4/img/loader.gif");
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1000;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    filter: alpha(opacity=80);
    opacity: 0.8;
}




/*color set*/
.bg-desaturated-blue {
    background-color: var(--desaturated-blue);
}


/*color set*/

/*width*/
.max-width-80 {
    max-width: 80% !important;
}


/*util color*/



.seperator-gap {
    width: 100%;
    height: 15px;
    background-color: #F4F6F9;
}

.teal-font {
    color: var(--gh-teal);
}


/**/





.letter-spacing-sm {
    letter-spacing: 1px;
}

.header-right-button {
    margin-left: -20px;
}

.page-body {
    width: 100%;
    height: calc(var(--vh, 1vh) * 100 - 45px);
    color: #2a2f46;
}








.minimized-item {
    width: 0;
    height:0;
    font-size: 0;
    z-index: -1;
    position: absolute;
    left: 0;
    top: 0;
}

.row-opacity-item {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    width: 100vw;
    height: 100%;
}

.hide-item {
    width: 0;
    height:0;
    font-size: 0;
    z-index: -1;
    position: absolute;
    left: 0;
    top: 0;
}

.hide-item {
    width: 0;
    height:0;
    font-size: 0;
    z-index: -1;
    position: absolute;
    left: 0;
    top: 0;
}






.gh-del-btn {
    background-color: var(--danger-color);
    border: none;
    text-align: center;
    color:white;
    width: 90%;
    padding: 0.5rem 1rem;
    font-size: 1.2rem;
    font-weight: bold;
    border-radius: 2rem;
    margin: 1rem auto;
    display: none;
}

#timeSheetsAddPunchForm #punchTypeOptions .col-3 {
    max-width: 50%;
}


.page {
    display: none;
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 0;
    min-height: 100%;
    width: 100%;
}

div.error {
    color: #dc3545;
    padding-top: 2px;
    padding-left: 4px;
}

label.error {
    color: #dc3545;
}

input.error, textarea.error, .select2.error > span.selection > span.select2-selection, select.error {
    border: 2px solid #dc3545;
}

input.form-control.error, textarea.form-control.error, select.form-control.error {
    background-color: rgba(224, 67, 39, 0.1);
}






.border-none {
    border: none;
}

/* mobile time sheets starts */

.page-menu-header {
    position: fixed;
    width: 100%;
    z-index: 10;
    background-color: #2a2f46;
    height: 45px;
    box-sizing: border-box;
}

.page-menu-header .title {
    font-weight: 800;
}

.page-body {
    flex: 1;
    color: #2a2f46;
}

.page-menu-header-placeholder {
    width: 100%;
    height: 45px;
    box-sizing: border-box;
    visibility: hidden;
}

.mobile-page-body h5,
.mobile-page-body h6 {
    margin-bottom: 0;
}


.sideMenu {
    font-size: 19px;
    font-weight: bold;
}

.last_range_date {
    vertical-align: middle;
    font-size: 1em;
    padding-right: 2vw;
}
.current_range_date {
    vertical-align: middle;
    font-size: 5.5vw;
    font-weight: 700;
}
.next_range_date {
    vertical-align: middle;
    padding-left: 2vw;
    font-size: 1em;
}

#timeSheetsPunchViewContainer .fa-chevron-left::before, #timeSheetsAddPunchForm .fa-chevron-left::before {
    font-size: 28px;
}


#timeSheetsStatusHeader {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1rem 0 1rem 0;
}

#missingPunchIndicator {
    display: flex;
    flex-direction: row;
    align-items: center;
    border: 3px solid #dc3545;
    border-radius: 1.5rem;
    padding: 0.4rem 1rem;
    color: #EF0E27;
    font-weight: bold;
}

#timeSheetsPaySummaryContainer {
    background-color: white;
    box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
    padding-bottom: 1rem;
}

#timeSheetsBody .carousel-indicators {
    margin-bottom: 0;
    z-index: 8;
}

.mobile-page-body .carousel-indicators li {
    height: 8px;
    width: 8px;
    border-radius: 50%;
    background-color: #ddd;
}

.mobile-page-body .carousel-indicators li:first-child {
    margin-right: 0.5rem;
}

.mobile-page-body .carousel-indicators li.active {
    background-color: #7f7f7f;
}

#timeSheetsPaySummaryContainer #paySummaryItem {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding-top: 0.3rem;
    padding-right: 1rem;
}

#timeSheetsClockList {
    display: flex;
    flex-direction: column;
}

#timeSheetsClockList > div:nth-child(odd) {
    background-color: white;
}

#timeSheetsClockList > div:nth-child(even) {
    background-color: transparent;
}

#timeSheetsClockList > .clearfix {
    padding: 1rem 1rem;
}

#timeSheetsDisclaimer {
    display: flex;
    flex-direction: column;
}

#timeSheetsDurstionDatesContainerWrapper,
#timeSheetsInOutDatesContainerWrapper
{
    width: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;

}

#timeSheetsDurationDatesContainer,
#timeSheetsInOutDatesContainer
{
    display: flex;
    background-color: white;
    justify-content: center;
    flex-direction: row;
    align-items: center;
}

#timeSheetsDurationDatesContainer > .date-item,
#timeSheetsInOutDatesContainer > .date-item
{
    width: 20vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

#timeSheetsPunchDatesContainer > .date-item span:first-child,
#timeSheetsDurationDatesContainer > .date-item span:first-child,
#timeSheetsInOutDatesContainer > .date-item span:first-child
{
    margin-top: 1rem;
    font-size: 95%;
}

#timeSheetsPunchDatesContainer > .date-item span:nth-child(2),
#timeSheetsDurationDatesContainer > .date-item span:nth-child(2),
#timeSheetsInOutDatesContainer > .date-item span:nth-child(2)
{
    margin-top: 0.4rem;
    font-size: 200%;
    font-weight: bold;
}

#timeSheetsPunchDatesContainer > .date-item span:nth-child(3),
#timeSheetsDurationDatesContainer > .date-item span:nth-child(3),
#timeSheetsInOutDatesContainer > .date-item span:nth-child(3)
{
    font-size: 0.7rem;
    font-weight: bold;
    color: #39629D;
    margin-top: 0.7rem;
    margin-bottom: 0.5rem;
}

#timeSheetsPunchDatesContainer > .date-item.active,
#timeSheetsDurationDatesContainer > .date-item.active,
#timeSheetsInOutDatesContainer > .date-item.active
{
    background-color: var(--gh-teal);
    color: white;
}

/*#timeSheetsPunchDatesContainer > .date-item:not(.active),*/
/*#timeSheetsDurationDatesContainer > .date-item:not(.active),*/
/*#timeSheetsInOutDatesContainer > .date-item:not(.active)*/
/*{*/
/*    box-shadow: 0 .125rem .21rem rgba(0, 0, 0, .075)*/
/*}*/


#timeSheetsPunchDatesContainer > .date-item.active span:nth-child(3),
#timeSheetsDurationDatesContainer > .date-item.active span:nth-child(3),
#timeSheetsInOutDatesContainer > .date-item.active span:nth-child(3)
{
    font-size: 0.7rem;
    font-weight: bold;
    color: white;
}


#timeSheetsPunchSummaryContainer,
#timeSheetsDurationSummaryContainer,
#timeSheetsInOutSummaryContainer
{
    display: flex;
    flex-direction: column;
    background-color: #fff;
    /*padding: 1rem;*/
    /*border-bottom-left-radius: 0.5rem;*/
    /*border-bottom-right-radius: 0.5rem;*/
    margin-top: -1px;
    box-shadow: 5px 5px 10px lightgrey;
}

#timeSheetsPunchContainer .punch-item {
    box-shadow: 0 .125rem 0 rgba(0, 0, 0, .075);
    background-color: white;
    padding: 1.5rem 0 1.5rem 0;
}

#timeSheetsPunchContainer .punch-item:not(:first-child) {
    border-top-left-radius: 0;
}

#timeSheetsPunchContainer .punch-item .text-lg {
    /*font-size: 0.8rem;*/
}

#timeSheetsPunchContainer .punch-item:last-child {
    box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
    padding-bottom: 1.5rem;
}

#timeSheetsPunchContainer .punch-item:after {
    content: "";
    display: block;
    margin-top: 1.5rem;
    background: #EEE;
    height: 2px;
    width: calc(74vw - 28.5px);
    float: right;
}

/*#timeSheetsPunchContainer .punch-avatar:before {*/
/*content: "";*/
/*position: relative;*/
/*display: block;*/
/*left: 10px;*/
/*background: red;*/
/*height: 50%;*/
/*width: 5px;*/
/*z-index: -1;*/
/*}*/

#timeSheetsPunchMiscInfoContainer {
    border-radius: 0.5rem;
    margin: 0 1.5rem 1.5rem;
    background-color: white;
    box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
    padding: 0.5rem;
}

#timeSheetsPunchMiscInfoContainer > .clearfix {
    padding-bottom: 0.25rem;
    padding-top: 0.25rem;
}

#timeSheetsPunchMiscInfoContainer > .clearfix:not(:last-child) {
    border-bottom: 1px solid #EEE;
}


.field-group {
    display: flex;
    background-color: white;
    color: var(--gh-font-color);
    flex-direction: row;
    justify-content: space-between; /* make the second element go to the right*/
    align-items: center;
    padding: 0.8rem 1rem;
}

/* table row related*/
.row-item {
    display: flex;
    background-color: white;
    color: var(--gh-font-color);
    flex-direction: row;
    justify-content: space-between; /* make the second element go to the right*/
    align-items: center;
    padding: 0.8rem 1rem;
    font-size: 1rem;
    position: relative;
    /*border: 1px solid black;*/
}



/*.optional {*/
/*    display: none;*/
/*}*/

/* table row related*/

.input-time-label {
    margin-bottom: 0;
}


.avatar-placeholder {
    position: absolute;
    background: #FFF;
    width: 57px;
    height: 57px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    text-align: center;
    line-height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    color: #000;
}

#jobSelection .parent-path,
#timesheetDurationCardContainer .parent-path,
#timeSheetsAddInOutForm .parent-path,
#timesheetInOutViewContainer .parent-path
{
    font-size: 0.7rem;
    vertical-align: middle;
    text-align: left;
    color: #bbb;
    line-height: 1rem;
    overflow: hidden;
    margin: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 95%;
}

#jobSelection .leaf-path,
#timesheetDurationCardContainer .leaf-path,
#timeSheetsAddInOutForm .leaf-path,
#timesheetInOutViewContainer .leaf-path
{
    line-height: 1.2rem;
    font-size: 1rem;
    text-overflow: ellipsis;
    overflow: hidden;
    margin: 0;
    text-align: left;
    width: 95%;
}

#jobSelection .path,
#timesheetDurationCardContainer .path,
#timeSheetsAddInOutForm .path,
#timesheetInOutViewContainer .path
{
    line-height: 1.2rem;
    font-size: 1.2rem;
    text-overflow: ellipsis;
    overflow: hidden;
    margin: 0;
    text-align: left;
    width: 95%;
}
/* iPhone5/SE query*/
@media screen and (device-aspect-ratio: 40/71) {
    .page-menu-heapage-menu-headerder,
    .-placeholder {
        height: 45px;
    }

    #addPunchContainer.add-punch,
    #floatActionButton {
        top: 87vh;
        width: 40px;
        height: 40px;
    }

    #paySummaryPaymentTitle h5,
    #paySummaryTimeTitle h5 {
        font-size: 90%;
    }
}

/* mobile team time sheet */
.mobile-sheet-top-nav .chip {
    background-color: #fff;
}
.mobile-sheet-top-nav .chip.active {
    background-color: #00AABF;
}
.mobile-sheet-top-nav .chip a {
    color: #000;
}
.mobile-sheet-top-nav .chip.active a {
    color: #fff;
}

#teamTimeSheetDateRangePicker {
    background-color: #fff;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 1rem 0 1rem 0;
}

#timeSheetsList .sheet-item,
#timeSheetsSearchList .sheet-item
{
    background-color: #fff;
    padding: 1rem;
}
/* mobile team time sheet */

/* mobile time sheets ends */

/* start - mobile add time off form */

#timeoffRequestDetailPage label {
    margin: 0;
}



.time-off-type-cell:not(:last-child):after {
    content : "";
    position: absolute;
    left    : 1rem;
    height  : 1px;
    width   : 100%;
    margin-top: 25px;
    border-bottom:1px solid #e9e9e9;
}

.conflict_img_placeholder {
    position: absolute;
    background: #FFF;
    width: 40px;
    height: 40px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
    text-align: center;
    line-height: 32px;
    display: flex;
    border: 2px solid;
    justify-content: center;
    align-items: center;
    font-size: 1rem;
    font-weight: 500;
    color: #000;
}




/* end - mobile add time off form */

/* start - mobile add timesheet duration */
.align-group-center {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}

#timesheetRepeatUnit {
    text-transform: capitalize;
}

.align-group-flex-start {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
}

.align-group-flex-end {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    align-items: center;
}

.align-group-col-start {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: start;
}

.align-group-flex-between {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
}

.timesheet-duration-card {
    border-radius: 6px;
    background-color: #fff;
    box-shadow: 3px 3px 10px #888888;
    border-left: 8px solid #63B46F;
}

.timesheet-duration-card:last-child {
    margin-bottom: 1em;
}

.timesheet-duration-job-container {
    border-bottom: 2px solid #F5F5F5;
}

.timesheet-duration-value {
    color: #436299;
    font-weight: bold;
}

.display-none {
    display: none !important;
}
/* end - mobile add timesheet duration */

.timesheet-type-dot {
    border-radius: 50%;
    width: 13px;
    height: 13px;
}
.timesheet-type-dot-work {
    background: #3CB569;
}

.timesheet-type-dot-timeoff {
    background: #292F48;
}

.timesheet-type-dot-break {
    background: #FDC103;
}

/* Swap Shift starts */

.userInfo {
    height: 100%;
    display: flex;
    flex-flow: row nowrap;
}

.profileImage {
    min-width: 53px;
    max-width: 53px;
    height: 53px;
    border-radius: 50%;
    background: #eee;
    font-size: 20px;
    color: #333;
    text-align: center;
    line-height: 53px;
    margin: 0;
    box-shadow: 5px 5px 10px lightgrey;
}
.show-more-btn {
    /*border-bottom: 1px solid rgba(229, 230, 231, .5);*/
}

.outgoing-request-shift-info-container .shift-info-container,
.incoming-request-shift-info-container .shift-info-container
{
    margin-top: 0.5em;
}

#otherShiftsList .card.shadow-sm .card-body {
    background-color: #eee !important;
}

#requestsShiftContainer .navbar {
    position: fixed;
    top: 0;
}

.fixed-top-nav {
    /*position: fixed;*/
    width: 100%;
}

/* Swap Shift ends */

/* schedule request view */
#requestsShiftContainer .nav-tabs {
    background-color: var(--gh-bar-color);
    display: flex;
}

#requestsShiftContainer .nav-tabs li {
    display: flex;
    flex: 1;
    align-items: center;
}

#requestsShiftContainer .nav-tabs > li > a {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    letter-spacing: 1px;
    font-weight: bold;

    color: rgb(135, 137, 130);
    border: none;
    border-bottom: 3px solid var(--gh-bar-color);
    height: 100%;
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
}

#requestsShiftContainer .nav-tabs > li > a.active {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    background-color: var(--gh-bar-color);
    color: white;
    letter-spacing: 1px;
    font-weight: bold;
    border-bottom: 3px solid red;
}

/* schedule request view */

/* mobile team timesheet start */


.inputHintContainer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    border: 1px solid #E4E5E8;
    box-shadow: 0px 4px 8px rgba(41, 47, 72, 0.1);
    border-radius: 5px;
    z-index: 200;
    background: #fff;
    max-height: 300px;
    overflow-y: auto;
}

.inputHintContainer .inputHintItem {
    padding: 5px;
    border-bottom: 1px solid #EEEEEE;
}

.inputHintContainer .inputHintItem:last-child {
    border-bottom: none !important;
}


.apply-filter-btn {
    border-radius: 100px;
    background: #44AEC9;
    padding: 1em;
    width: 300px;
    color: #fff;
    font-weight: bold;
}

.gh_pie_loader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    background-image: url("/pie/images/loaders/loader_3.gif");
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1000;
    -ms-filter: "alpha(opacity=80)";
    filter: alpha(opacity=80);
    opacity: .8;
    pointer-events: none;
}


a.team-timesheet-dropdown:not(:last-child) {
    border-bottom: 1px solid #EEEEEE !important;
}

.team-timesheet-avatar {
    height: 60px !important;
    width: 60px !important;
    color: #fff;
}
.team-time-sheet-long-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* mobile team timesheet end */

input[type=file], /* FF, IE7+, chrome (except button) */
input[type=file]::-webkit-file-upload-button { /* chromes and blink button */
    cursor: pointer;
}