﻿/*
    GLOBAL DARK: #0F3543
    MAIN ELEMENT BACKGROUND: #11B5E5
    SECOND ELEMENT BACKGROUND: #51C9EC
    THIRDARY ELEMENT BACKGROUND: #92DDF3
    GRID SUBHEADING ELEMENT BACKGROUND: #E1F5FB
    GLOBAL GREEN: #7BBB42
    LOGO GREY: #AEAEAE
*/

body {
    background-color: #FAFAFA;
}
body, .dropdown-item, .btn, input, .nav-link, select, textarea, #EmployeePool, #SelectedEmployees, #AreaPool, #SelectedPeriodButton, .control-checkbox {
    font-size: 0.875rem !important;
}
a {
    color: #11B5E5;
}
.form-label {
    font-weight: 600;
}

.fixed-bottom{
    z-index: 5000 !important;
}

.dropdown-menu.show{
    z-index: 5000 !important;
}
/* Set padding to keep content from hitting the edges */
.body-content {
    padding-top: 10px;
}

select.form-control:not([size]):not([multiple]) {
    height: 35px;
    padding: 0.3rem 0.75rem;
}

.hidden{
    display:none !important;
}

.hidden-soft {
    display: none;
}

.search-row {
    margin: 0px 0px;
    margin-bottom: 10px;
    background-color: #f0f0f0;
    border-radius: 10px;
    padding: 15px 0px;
    text-align: center;
}

.divider {
    border-left: 1px solid #38546d;
    border-right: 1px solid #16222c;
    height: 80px;
    position: absolute;
    right: 249px;
    top: 10px;
}

.colour-legend {
    width: 16px;
    height: 16px !important;
    display: inline-block;
    margin-right: 2px;
    vertical-align: middle;
    border: 1px solid #e6e6e6;
}

.valign-middle {
    vertical-align: middle !important;
}

.staffPool {
    background-image: url("Images/switch-user.png");
    background-repeat: no-repeat;
    position: absolute;
    top: 6px;
    width: 17px;
    right: -8px;
    height: 16px;
}

.staffPoolBlue {
    background-image: url("Images/switch-user-blue.png");
    background-repeat: no-repeat;
    position: absolute;
    top: 6px;
    width: 17px;
    right: -8px;
    height: 16px;
}

#UpdateSystemWarningModal h6, #UpdateSystemWarningModal h5{
    font-weight:bold;
}

#Error {
    color: #C9302C;
}

#scrollToBtn {
    display: none; /* Hidden by default */
    position: fixed; /* Fixed/sticky position */
    bottom: 39px; /* Place the button at the bottom of the page */
    right: 20px; /* Place the button 30px from the right */
    border: none; /* Remove borders */
    outline: none; /* Remove outline */
    background-color: #669AE2; /* Set a background color */
    color: white; /* Text color */
    cursor: pointer; /* Add a mouse pointer on hover */
    padding: 15px; /* Some padding */
    border-radius: 10px; /* Rounded corners */
    z-index: 5100;
}

.changed {
    background-color: #B9EFD0;
}

/* START Bootstrap */
/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.bg-dark {
    background-color: #0F3543 !important;
}
.dl-horizontal dt {
    white-space: normal;
}
.btn.btn-default:hover {
    color: #10A5D1;
}
.btn-sm {
    min-width: 60px;
}
.btn-default {
    background-color: #0F3543;
    color: #FFF;
}
.btn-default-blue {
    background: #11B5E5;
    color: #FFF;
}
.btn-default-blue:hover {
    background: #10A5D1;
    color: #FFF;
}
.btn-default-blue:disabled {
    background: #A8E4F5;
    color: #FFF;
}

.btn-outline-secondary-blue {
    background-color: #fff;
    border-color: #3CC2E9;
    color: #FFF;
}

.btn-secondary-blue {
    background-color: #3CC2E9;
    color: #FFF;
}
.btn-secondary-blue:hover {
    background-color: #26BBE7;
}
.btn-secondary-blue:disabled {
    background: #A8E4F5;
    color: #FFF;
}

.btn-default-transparent {
    background-color: transparent;
    text-align: center;
    padding: 0;
}

.btn-default-white {
    background-color: white;
    text-align: center;
    padding: 0;
}

.btn-default-transparent:hover, .btn-default-white:hover {
    color: #A8E4F5;
}

.btn-proceed {
    background-color: #7BBB42;
    color: #FFF;
}
.btn-info {
    background-color: #66B9E2;
}
.btn-info:hover {
    background-color: #66AFE2;
}
.btn-new {
    color: #FFF;
    background-color: #7BBB42;
}
.btn-new:hover {
    background-color: #70AA3C;
    color: #FFF;
}
.btn-around {
    width: 50px;
    height: 50px;
    border-radius: 25px !important;
}
.btn-group.btn-group-full-width {
    display: flex;
}
.btn-group-full-width .btn {
    flex: 1
}

.btn-group .active, .btn-group-vertical .active {
    background-color: #669AE2 !important;
}

.nav-link {
    cursor: pointer;
}

/* Checkbox */
.control {
    font-family: arial;
    display: block;
    position: relative;
    padding-left: 30px;
    margin-bottom: 5px;
    padding-top: 3px;
    cursor: pointer;
    font-size: 14px;
}

.control input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.control_indicator {
    position: absolute;
    top: 2px;
    left: 0;
    height: 20px;
    width: 20px;
    background: #e6e6e6;
    border: 0 solid #000000;
}

.control-radio .control_indicator {
    border-radius: 50%;
}

.control:hover input ~ .control_indicator,
.control input:focus ~ .control_indicator {
    background: #cccccc;
}

.control input:checked ~ .control_indicator {
    background: #2aa1c0;
}

.control:hover input:not([disabled]):checked ~ .control_indicator,
.control input:checked:focus ~ .control_indicator {
    background: #0e6647;
}

.control input:disabled ~ .control_indicator {
    background: #e6e6e6;
    opacity: 0.6;
    pointer-events: none;
}

.control_indicator:after {
    box-sizing: unset;
    content: '';
    position: absolute;
    display: none;
}

.control input:checked ~ .control_indicator:after {
    display: block;
}

.control-checkbox .control_indicator:after {
    left: 7px;
    top: 4px;
    width: 4px;
    height: 8px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.control-radio .control_indicator:after {
    left: 7px;
    top: 7px;
    height: 6px;
    width: 6px;
    border-radius: 50%;
    background: #ffffff;
}

.control-checkbox input:disabled ~ .control_indicator:after {
    border-color: #7b7b7b;
}

.table-bordered > thead > tr > th, .table-bordered > thead > tr > td {
    border-bottom: 1px;
}
.table-hover tbody tr:hover td {
    background-color: #EAF1FB;
}
.colorpicker-component .input-group-addon {
    width: auto;
}
.inline-selector {
    padding: 0 0.5rem;
    height: calc(2.25rem);
}

.card, .btn, .input-group-addon {
    border-radius: 0;
}

.card-header {
    background-color: #0F3543;
    color: #FFF;
    border-radius: unset !important;
}

input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: searchfield-cancel-button;
}

.full-width {
    width: 100%;
}

.highlight-row td {
    background-color: #FFE88C;
}

/* Boostrap FORM GROUPS */
.input-group .custom-select, .input-group .form-control {
    height: 38px !important;
}

.h-unset, .h-unset.form-control, .h-unset.custom-select {
    height: unset !important;
}

/* Nav */
.dropdown-menu-right {
    right: 0;
}
.dropdown-item:hover {
    border-left: 3px solid #0F3543;
}
.dropdown-item:active {
    background-color: #0F3543;
}
select.input-validation-error, textarea.input-validation-error, input.input-validation-error {
    background-color:#ffe0e0;
    border-color: #DE596E;
}

.progress-bar{
    height: 17px !important;
}

/* END Bootstrap */

#TopNavName {
    display: none;
}

.profile-allocation {
    border-inline-end: 2px solid black !important;
    border-inline-start: 2px solid black !important;
    border-left: 2px solid black !important;
    border-right: 2px solid black !important;
}

/* Multi Level Dropdown */
.dropdown-submenu{
    position: relative;
}
.dropdown-submenu a::after{
    transform: rotate(-90deg);
    position: absolute;
    right: 8px;
    top: 50%;
}
.dropdown-submenu:hover .dropdown-menu, .dropdown-submenu:focus .dropdown-menu{
    display: flex;
    flex-direction: column;
    position: absolute !important;
    margin-top: -30px;
    left: 100%;
}
.navbar {
    padding: 0 1rem;
}
.navbar-dark .navbar-toggler {
    border-color: transparent;
    font-size: 1rem;
}

/* Dashboard */
.card-body {
    padding: 1rem;
}
.dashboard-card {
    color: #FFF;
    border: none;
    min-width: 228px;
    max-width: 228px;
    min-height: 228px;
    max-height: 228px;
    margin: 3px;
    /*width: 228px;
    height: 228px;*/
}
.dashboard-card-notification {
    background-color: #669AE2;
}
.dashboard-card-quick-link {
    background-color: #7BA8E6;
}
.dashboard-card a {
    color: #FFF;
}
.dashboard-card-title {
    font-size: 1.4rem;
}

.dashboard-status-table {
    /*width: 200px;*/
    height: 125px;
    /*border: 1px solid #25CDFC;*/
    text-align: center;
    /*margin-bottom: 25px;*/
    /*background-color: #00B5E8;*/
    
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    margin-bottom: 20px;
}

.dashboard-status-table-icon {
    width: 100px;
    color: #fff;
}

.dashboard-status-table-text {
    width: 200px;
    font-weight: bolder;
    font-size: 25px;
    color: #3d3d3d;
}

/* Notification Center */
.notify-badge {
    position: absolute;
    right: 6px;
    top: 6px;
    background: red;
    text-align: center;
    width: 20px;
    height: 20px;
    border-radius: 10px;
    color: white;
    font-size: 11px;
    z-index: 2000;
    padding-top: 2px;
}

#notification-center {
    position: absolute;
    right: 121px;
    top: 8px;
}

#notification-center-all-as-read{
    float: right;
    font-size: 11px;
}

.notification-center {
    position: absolute;
    left: unset !important;
    right: 0;
    top: 55px;
    z-index: 2000;
}

.notification-center .card {
    width: 380px;
}

.notification-item {
    border-top: 1px solid #aeaeae;
    cursor: pointer;
    position: relative;
}
.notification-unread {
    background: #E0F7FA;
}

.notification-item-title {
    font-size: 15px;
}

.notification-item-info {
    font-size: 13px;
}

.notification-item-datetime {
    font-size: 12px;
    color: #838383;
    vertical-align: initial;
}

.notification-hide-button {
    position: absolute;
    top: 2px;
    right: 5px;
    font-size: 16px;
    color: #ff3b3b;
}
/* Grid */
.main-bg {
    background-color: #11B5E5;
}
.secondary-bg {
    background-color: #51C9EC;
}
.thirdary-bg {
    background-color: #92DDF3;
}
.table-column-name {
    color: #FFF;
}

.button-col-auto {
    width: 1px;
    white-space: nowrap;
}

#InstanceRow, #DetailInstanceRow, #DetailRow, .custom-row {
    background-color: #d5e0ea;
}
.row-editing {
    background-color: #F4F4F4;
    padding: 15px !important;
}
#InstanceRow td, #DetailInstanceRow td, #UnavailabilityRow > td, #DetailRow > td, #SecondDetailTableRow > td, .custom-row td {
    padding: 30px 20px !important;
    background-color: #F4F4F4;
    overflow: auto;
}
table th {
    font-weight: 500;
}
table td {
    background-color: #FFF;
}
.table-bordered th, .table-bordered td {
    border-color: #DDD;
}
.table tfoot {
    font-weight: 700;
    font-size: 0.75rem;
}

.table th, .table td {
    padding: 0.5rem;
}

#RosterTable.table th, #RosterTable.table td {
    padding: 0.2rem;
}

.row-hover:hover td {
    background-color: #E1F5FE;
}

.grouped-cell { cursor: pointer; }
.filter-row td {
    background-color: #E1F5FB !important;
}

.child-row {
    display: none;
    background-color: #E5E5E5;
}

.child-row td {
    background-color: #F4F4F4;
}

.details-row-cell {
    background-color: #F9F9F9;
    padding: 20px !important;
}

.master-row-header td, .master-row-header th {
    background-color: #92DDF3;
}

.master-row-header-weekend{
    background-color: #98d1e1 !important;
}

.icon-button {
    padding: 10px;
    min-width: 40px;
    color: #11B5E5;
}
.updated-row {
    background-color: #7BE6B9;
}
.page-item.active .page-link {
    background-color: #11B5E5;
    border-color: #11B5E5;
}
.page-item.disabled .page-link, .page-item:last-child .page-link, .page-item:first-child .page-link {
    border-radius: 0;
}
.page-link {
    color: #11B5E5;
}

tfoot td {
    background-color: #FFF !important;
}
/* Form */
.form-control {
    border-radius: 0 !important;
}

/* Heading */
.heading {
    color: #0F3543;
    font-weight: 100;
}

/* Loader */
.loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #097596;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    animation: spin 1s linear infinite;
    margin: auto;
    margin-top: 20px;
    margin-bottom: 20px;
}
#Spinner {
    display: none;
    position: fixed;
    top: 40%;
    left: 50%;
    z-index: 1001;
}
.loading-mask {
    display: none;
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(255, 255, 255, .3);
}

/* Combo box tabs */
#ComboBoxSection .nav-link.active {
    color: #111;
    background-color: #ffc107;
    border-color: #ffc107;
}
#ComboBoxSection .nav-link.active:hover {
    background-color: #eb9316;
}
#ComboBoxSection .nav-link:not(.btn-default-blue) {
    color: black;
    background-color: #F4F4F4;
}
#ComboBoxSection .nav-link:not(.btn-default-blue):hover {
    background-color: #EEE;
}
.combo-box {
    margin-top: 8px;
}
.combo-box .combo-items {
    /*max-height: 702px;*/
    overflow-y: scroll;
}

.list-group-item {
    border-radius: 0 !important;
    cursor: move;
}


/* Department Group */
#EmployeePool, #SelectedEmployees, #AreaPool {
    min-height: 100px;
    background-color: #FFF;
    z-index: 99;
    list-style-type: none;
    padding: 0;
    max-height: 300px;
    overflow: auto;
    border: 1px solid #DDD;
}

#EmployeePool .employee-item, #SelectedEmployees .employee-item, #AreaPool .employee-item {
    z-index: 100;
    cursor: pointer;
    border-bottom: 1px solid #E4E4E4;
    padding: 5px 10px;
}

.selected {
    border: 1px solid #669AE2;
    background-color: #C0EAEE;
}

.allocationSelected, .itemSelected {
    border: 2px solid #3586d3 !important;
}

.allocationSelected::after, .itemSelected::after {
    content: "\f14a" !important;
    font-family: "Font Awesome 5 Free";
    bottom: 0;
    position: absolute;
    right: -1px;
    color: #3586d3;
    font-weight: 900;
    font-size: 16px;
    background-color: #FFF;
    height: 12px;
    line-height: 12px;
}

/* Roster */
#MainView {
    margin-top: 8px;
}

#ContractsSelector label{
    font-size: 11px !important;
}

#ContractsSelector .dropdown-item {
    padding-left: 2px;
}

#ContractsSelector .control_indicator {
    margin-top: 20px;
}

#Table table th, #ShiftCountTable th, #UnavailabilityTable th, #OverviewTable th, #PayrollTable th {
    color: #000;
}

#CostTable th, #CostTable td {
    padding: 0.4rem;
}
.roster-table, #ShiftCountTable, #PayrollTable, #UnavailabilityTable, #OverviewTable, #CostTable, #EmployeeSummaryTable, #EmployeeCountTable {
    font-size: 11px;
    padding: 3px !important;
}

.roster-table-subheading-row td {
    font-weight: 600;
    background-color: #E1F5FB;
}

.roster-table th, #ShiftCountTable th {
    background-color: #EDEDED;
}

.table-header, .column-header-bg {
    background-color: #EDEDED !important;
}

.table-hover > tbody > tr:hover {
    background-color: yellow !important;
}

/*
.roster-table td :not(:first-child) {
    margin-top: 6px;
}
*/
.cell-droppable {
    text-align: center;
    min-height: 29px;
    background-color: #FAFAFA;
}
.droppable:hover {
    background-color: #c0eaee !important;
}
.droppable-hover {
    background-color: #c0eaee !important;
}
.shift-droppable {
    cursor: pointer;
}
#ShiftCountTable {
    line-height: 1;
}

#NewRowCell {
    text-align: center;
    color:#DDD;
}

.today {
    background-color: #feffc4 !important;
}

.weekend {
    background-color: #f2f2f2 !important;
}

#RosterTableArea {
    position: relative;
    height: 630px;
    /*max-height: 630px;*/
    overflow-y: scroll;
    /* AVOID BORDER WHEN CLICK WITH CTRL IN A CELL USING FIREFOX */
    -moz-user-select: none;
}
#Legend {
    /*display: none;*/
    border: 1px solid #DDD;
    background-color: #FFF;
}

.ui-draggable-handle {
    z-index: 500;
}
.ui-draggable-dragging {
    z-index: 500;
}
.dragging {
    z-index: 10000 !important;
}
.allocation {
    position: relative;
    z-index: unset;
    margin-bottom: 4px;
}

.view-button {
    color: #FFF;
}

.drop-zone {
    text-align: center;
    font-style: italic;
    height: 14px !important;
    min-height: unset !important;
    background-color: #edf6fd;
    border: none !important;
    color: #999;
    margin: auto;
    font-size:8px !important;
}


.allocation-comment {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 0;
    border-color: #5cbad9 transparent transparent transparent;
    position: absolute;
    left: 0;
    top: 0;
}

/*.allocation-comment::before,
.allocation-comment::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-color: transparent;
    border-style: solid;
}

.allocation-comment::before {
    border-width: 0.3em;
    border-left-color: #ccc;
    border-top-color: #ccc;
}

.allocation-comment::after {
    border-radius: 0.4em;
    border-width: 0.3em;
    border-left-color: #0c0;
    border-top-color: #0c0;
}*/

.allocation-text {
    margin-left: 10px;
}
.indicator {
    width: 26px;
    height: 26px;
    text-align: center;
    color: #FFF;
    display: inline-block;
    float: left;
}
.indicator-text {
    text-align: center;
    vertical-align: middle;
    line-height: 27px;
    font-size: 12px;
}
.live {
    background-color: #ccf9da;
    border-radius: 3px;
}
.draft {
    background-color: #E4E4E4;
}
.predicting {
    border: 1px solid #40e5ff;
}
.badge-notify {
    padding: 0.1em 0.45em;
    font-size: 75% !important;
    border-radius: 0.6rem;
}
.badge-corner {
    position: absolute;
    top: -10px;
    left: -5px;
}

#ContractTimeline{
    margin-top: 40px;
}

#ContractTimeline .bar {
    height: 12px;
    width: 100%;
    border-radius: 8px;
    background-color: #56C2F3;
}

#ContractTimeline .bar-o1 {
    height: 9px;
    width: 10px !important;
    margin-top: 1px;
    margin-left: 1px;
}

#ContractTimeline .bar-o2 {
    height: 7px;
    border-radius: 50%;
    width: 7px !important;
    margin-left: 1px;
    margin-top: 2px;
}

#ContractTimeline .bar-o3 {
    height: 5px;
    border-radius: 50%;
    width: 5px !important;
    margin-top: 3px;
    margin-left: 2px;
}

#ContractTimeline .bar-date {
    
}

/* INVERT COLOR OF TEXT BASE ON BACKGROUND COLOR (START) */
.font-invert {
    /*height: inherit;*/
    background: inherit;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    /*font: 900 35vmin/50vh cookie, cursive;*/
    text-align: center;
    filter: invert(1);
}
/* INVERT COLOR OF TEXT BASE ON BACKGROUND COLOR (END) */

.cursor-pointer{
    cursor: pointer;
}

.cursor-unset {
    cursor: unset;
}

.cursor-move {
    cursor: move;
}

.no-cursor {
    cursor: unset !important;
}

/* This is to keep date picker always at the front */
.datepicker {
    z-index: 1030;
}

.request, #ResponseArea {
    border: 1px solid #E0E0E0;
    background: #FFF;
}

#ResponseArea {
    text-align: center;
}

.request .avatar-image {
    width: 60px;
    border-radius: 30px;
}

.speech-bubble {
    position: relative;
    background: #d3f1fa;
    border-radius: .4em;
    padding: 20px;
}

.speech-bubble:after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 0;
    height: 0;
    border: 15px solid transparent;
    border-right-color: #d3f1fa;
    border-left: 0;
    margin-top: -15px;
    margin-left: -15px;
}

.request-status-indicator {
    width: 11px;
    height: 11px;
}

/* Pagination */
.page-number {
    display: inline-block;
    width: 36px;
    height: 36px;
    background-color: #EEE;
    text-align: center;
}

.page-number > span , .page-number > i {
    position: relative;
    top: 8px;
    text-decoration: none;
    color: #000;
}

.page-number-hover {
    background-color: #11B5E5;
    cursor: pointer;
    color: #FFF;
}

.page-number:hover {
    background-color: #11B5E5;
    cursor: pointer;
    color: #FFF;
}

.no-border {
    border: none !important;
}

/* Skills */
.skill-description {
    text-align: center;
}

@keyframes grow {
    to { stroke-dasharray: 100 100 } }

.pie.animated circle {
    animation: grow 2s infinite linear;
}


@media all and (min-width: 576px) {
    #TopNavName {
        display: inline-block;
    }
}

@media (min-width: 768px) {
    .bd-navbar {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1071;
    }
}

@media all and (min-width: 769px) {
    .btn-mobile {
        display:none;
    }

}

@media all and (min-width: 1024px) {
    .modal-xl {
        max-width: 1250px;
    }
}

.dropdown-menu-nav{
    width:auto !important;
}


/* Animation */
.slide-left {
    -webkit-animation: slide-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: slide-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
.slide-right {
    -webkit-animation: slide-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: slide-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@-webkit-keyframes slide-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(-1589px);
        transform: translateX(-1589px)
    }
}

@keyframes slide-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(-1589px);
        transform: translateX(-1589px)
    }
}
@-webkit-keyframes slide-right {
    0% {
        -webkit-transform: translateX(-1589px);
        transform: translateX(-1589px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@keyframes slide-right {
    0% {
        -webkit-transform: translateX(-1589px);
        transform: translateX(-1589px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@media all and (max-width: 767px) {
    .dropdown-menu-nav {
        border: none;
        border-radius: unset;
    }
    h4 {
        font-size: 1rem;
    }
    .page-heading {
        font-size: 1.5rem;
    }
}

@media only screen and (max-width: 768px) {
    /* Force table to not be like tables anymore */
    .table-mobile table,
    .table-mobile thead,
    .table-mobile tbody,
    .table-mobile th,
    .table-mobile td,
    .table-mobile tr,
    .table-mobile tfoot {
        display: block;
    }

    .filter, .detail-filter {
        display: none;
    }

    .table-mobile #main-grid {
        border: none !important;
    }
         
    /* Hide table headers (but not display: none;, for accessibility) */
    .table-mobile thead tr,
    .table-mobile tfoot tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .table-mobile tr { 
        border: 1px solid #e9ecef;
        margin-bottom: 20px;
    }
          
    .table-mobile td {
        /* Behave like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
        white-space: normal;
        text-align:left;
        min-height: 41px;
    }
         
    .table-mobile td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align:left;
        font-weight: bold;
    }
         
    /*
    Label the data
    */
    .table-mobile td:before { content: attr(data-title); }

    #notification-center {
        position: absolute;
        right: 1px;
        top: 1px;
    }

    .notification-center{
        width: 100%;
    }

    #RosterTableArea{
        overflow-y: unset;
        max-height: unset;
    }

    #ButtonGroup{
        text-align: center;
    }
}

@media all and (max-width: 992px) {
    
    .dropdown-menu .dropdown-submenu{
        width: auto;
    }

    .body-content {
        padding-top: 20px;
    }

    .login {
        position: absolute;
        right: 7px;
        top: 4px;
    }

    .notify-badge {
        top: 9px;
        right: 16px;
    }

    .notification-center .card {
        width: unset;
    }

    #notification-center{
        width: 90%;
    }
}

@media all and (max-width: 992px) and (min-width: 768px) {
    .dropdown-menu{
        width: 50%;
    }
}

@media all and (max-width: 784px) and (min-width: 768px) {
    .iPadHeader {
        padding-top: 78px !important;
    }
}

@media all and (max-width: 1024px){
    .dashboard-status-box-label{
        font-size: 40px;
    }
}

@media (min-width: 768px){
    .seven-cols .col-md-1,
    .seven-cols .col-sm-1,
    .seven-cols .col-lg-1  {
        width: 100%;
        *width: 100%;
    }
}
@media (min-width: 992px) {
    .seven-cols .col-md-1,
    .seven-cols .col-sm-1,
    .seven-cols .col-lg-1 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
}
@media (min-width: 1200px) {
    .seven-cols .col-md-1,
    .seven-cols .col-sm-1,
    .seven-cols .col-lg-1 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
}

#logoutForm a{
    text-decoration: none;
    color: #fff;
}

.context-menu-icon-custom-calendar-minus {
    background-image: url("/Content/Images/font-awesome_4-7-0_calendar-minus-o_16_0_000000_none.png");
    background-repeat: no-repeat;
    background-position-y: 8px;
    background-position-x: 9px;
}

.context-menu-icon-custom-fa-trash-alt {
    background-image: url("/Content/Images/font-awesome_4-7-0_trash-o_16_0_000000_none.png");
    background-repeat: no-repeat;
    background-position-y: 8px;
    background-position-x: 9px;
}


.context-menu-icon-custom-fa-hdd {
    background-image: url("/Content/Images/font-awesome_4-7-0_hdd-o_16_0_000000_none.png");
    background-repeat: no-repeat;
    background-position-y: 8px;
    background-position-x: 9px;
}

.context-menu-icon-custom-fa-minus-circle {
    background-image: url("/Content/Images/font-awesome_4-7-0_minus-circle_16_0_000000_none.png");
    background-repeat: no-repeat;
    background-position-y: 8px;
    background-position-x: 9px;
}

.unavailability-date-approved {
    background-color: #63e04a !important;
}

.unavailability-date-rejected {
    background-color: #ed5454 !important;
}

.bullet {
    position: absolute;
    width: 10px;
    height: 10px;
    display: block;
    background-color: red;
    margin-left: 30px;
    margin-top: -7px;
    border-radius: 5px;
}

.approved {
    background-color: #63e04a !important;
}

.rejected {
    background-color: #ed5454 !important;
}

.requested {
    background-color: #a0a0a0 !important;
}

.request-deleted {
    background-color: #000 !important;
}

.leave {
    border-radius: 15px !important;
}

.leave div, .unavailability div {
    padding-top: 3px;
}

.request {
    padding: 8px !important;
}

.disabled-date {
    background-color: unset !important;
}

.row-deleted, .row-deleted td {
    background-color: #fff4f4 !important;
}

.row-disabled, .row-disabled td {
    background-color: #eaeaea !important;
}

/* HORIZONTAL LOADER */
.h-loader {
    height: 4px;
    width: 100%;
    position: relative;
    overflow: hidden;
    background-color: #ddd;
}

.h-loader:before {
    display: block;
    position: absolute;
    content: "";
    left: -200px;
    width: 200px;
    height: 4px;
    background-color: #2980b9;
    animation: loading 2s linear infinite;
}

@keyframes loading {
    from {
        left: -200px;
        width: 30%;
    }

    50% {
        width: 30%;
    }

    70% {
        width: 70%;
    }

    80% {
        left: 50%;
    }

    95% {
        left: 120%;
    }

    to {
        left: 100%;
    }
}

.non-contract-work-day {
    background: repeating-linear-gradient( 135deg, #f6f6f6, #f6f6f6 5px, #ddd 5px, #ddd 10px ) !important;
}

.flag-lock-weekend {
    background: repeating-linear-gradient( 135deg, #f6f6f6, #f6f6f6 5px, #feffc4 5px, #feffc4 10px ) !important;
}

.public-holiday {
    background-color: #7bc1ff !important;
}

.school-holiday {
    background-color: #ffad7b !important;
}

.team-native:before {
    border: 1px solid #ccc;
    border-radius: 3px;
    content: 'TN';
    font-size: 9px;
    font-weight: bold;
}

.team-not-native:before {
    border: 1px solid #ccc;
    border-radius: 3px;
    content: 'HLR';
    font-size: 9px;
    font-weight: bold;
}

.dudp__calendar-header, .dudp__date.range-from:before, .dudp__date.range-to:before {
    background-color: #0F3543 !important;
}

.disable-dbl-tap-zoom {
    touch-action: manipulation;
}

.btn-outline-default {
    color: #0F3543;
    background-color: transparent;
    background-image: none;
    border-color: #0F3543;
}

.btn-outline-default.active {
    color: #fff;
    background-color: #0F3543;
    border-color: #0F3543;
}

/* LOADING BAR SPINNER - START */
.loading-bar {
    animation: loadingJ 2s cubic-bezier(0.17, 0.37, 0.43, 0.67) infinite;
}

.loading-bar {
    /*float: left;*/
    width: 15px;
    height: 6px;
    border-radius: 2px;
    background-color: #4b9cdb;
    margin-left: -93px;
}

.deleted-shift-profile {
    background-color: #f8d7da;
}

.isANonStandardShift {
    border-top: 1px solid #f00 !important;
    border-bottom: 1px solid #f00 !important;
    border-left: 1px solid #f00;
    border-right: 1px solid #f00;
}

@keyframes loadingJ {
    0%, 100% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(80px, 0);
        background-color: #1d3f72;
        width: 25px;
    }
}
/* LOADING BAR SPINNER - END */

/* jQuery Context Menu - Icon Adjust  */
.context-menu-icon.context-menu-icon--fa5 i, .context-menu-icon.context-menu-icon--fa5 svg {
    top: 7px !important;
}

.modal-dialog-with-notification{
    margin: 4.75rem auto !important;
}

/* Spectrum ColorPicker */
.sp-replacer{
    height: 30px !important;
}

.modal-2xl {
    max-width: 90% !important;
}

.modal-full {
    max-width: 99% !important;
}

.fs-10{
    font-size: 10px;
}

.fs-11 {
    font-size: 11px;
}

.fs-12 {
    font-size: 12px;
}

.fs-13 {
    font-size: 13px;
}

.fs-14 {
    font-size: 14px;
}

.fs-15 {
    font-size: 15px;
}

.w-auto{
    width: auto;
}

.z-index-0 {
    z-index: unset !important;
}

.z-index-1000 {
    z-index: 1000 !important;
}

/* TABLE SCROLL FRAME */
.table-scroll-frame {
    height: 250px;
    /*width: 500px;*/
    overflow: scroll;
    /*border: 1px solid #b4b4b4;*/
}

.table-scroll-frame table {
    border-spacing: 0;
}

.table-scroll-frame th {
    position: sticky;
    top: 0px;
    background: #EDEDED;
    /*width: 100px;*/
    /*min-width: 100px;*/
    padding: 6px;
    z-index: 250;
    outline: 1px solid #c3c3c3;
}

.table-scroll-frame td {
    padding: 6px;
    box-shadow: -1px 0px 0px 0px #c3c3c3;
}

.table-scroll-frame th:nth-child(1)
/*,.table-scroll-frame th:nth-child(2)*/ {
    z-index: 300;
}

.table-scroll-frame th:nth-child(1),
.table-scroll-frame td.firstColumn {
    position: sticky;
    left: 0px;
    outline: 1px solid #c3c3c3;
}

.table-scroll-frame td.firstColumn
/*,.table-scroll-frame td:nth-child(2)*/ {
    background: #EDEDED;
    z-index: 200;
}

#staff-allowed-list {
    max-height: 194px;
    overflow-y: scroll;
    overflow-x: hidden;
}