.form-group {
    margin-bottom: 1em;
}
a.ajax-link, a[tabindex] {
    cursor: pointer;
}
.cursor-not-allowed{
    cursor: not-allowed;
}

/*Avatars*/
.avatar {
    width: 2em;
    min-width: 2em;
    height: 2em;
    line-height: 2.2em;
    display: inline-block;    
    background: #bbc5f5 no-repeat center/cover;
    position: relative;
    text-align: center;
    color: #556ee6;
    font-weight: 600;
    vertical-align: bottom;
    font-size: .875em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: 50%;
}

    .avatar.avatar-more {
        letter-spacing: -2px;
        background-color: #3EA3DD;
    }

    .avatar.avatar-img {
        background-color: transparent;
    }

    .avatar i {
        font-size: 125%;
        vertical-align: sub;
    }

.avatar-sm {
    min-width: 2.5em;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    font-size: .75em;
}

.avatar-md {
    min-width: 2.5em;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.6em;
    font-size: 1em;
}

.avatar-lg {
    min-width: 2.5em;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    font-size: 3em;
}

.avatar-xl {
    min-width: 2.5em;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    font-size: 4.0em;
}

.avatar-xxl {
    min-width: 2.5em;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    font-size: 6em;
}

.avatar-placeholder {
    background: #ced4da url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="134" height="134" viewBox="0 0 134 134"><path fill="#868e96" d="M65.92 66.34h2.16c14.802.42 30.928 6.062 29.283 20.35l-1.618 13.32c-.844 6.815-5.208 7.828-13.972 7.866H52.23c-8.764-.038-13.13-1.05-13.973-7.865l-1.62-13.32C34.994 72.4 51.12 66.76 65.92 66.34zM49.432 43.934c0-9.82 7.99-17.81 17.807-17.81 9.82 0 17.81 7.99 17.81 17.81 0 9.82-7.99 17.807-17.81 17.807-9.82 0-17.808-7.987-17.808-17.806z"/></svg>') no-repeat center/80%;
}

.avatar-list {
    margin: 0 0 -.5em;
    padding: 0;
}

    .avatar-list .avatar {
        margin-bottom: .5em;
    }

        .avatar-list .avatar:not(:last-child) {
            margin-right: .5em;
        }

.avatar-list-stacked .avatar {
    margin-right: -.8em !important;
}

.avatar-list-stacked .avatar {
    box-shadow: 0 0 0 2px #fff;
}

.text-white .avatar {
    background-color: #ffffff !important;
    color: #3e884f !important;
}

#avatarUploadWrapper {
    display: inline-block;
    position: relative;
}

    #avatarUploadWrapper:hover #avatarUploadOverlay {
        opacity: .7;
    }

#avatarUploadOverlay {
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .5s ease;
    background-color: #556ee6;
    text-align: center;
}

#avatarUploadOverlayContent {
    color: white;
    font-size: 20px;
    position: absolute;
    top: 50%;
    font-size: 30px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
}
.avatar-fullname{
    padding-left: 0.5em;
}


.modal-body {
    overflow: auto;
    max-height: calc(95vh - 150px);
}
.dropzone {
    min-height: auto
}
.dropzone h3{
    font-size: 0.8em;
}
.kt-dropzone-error {
    border: solid 2px #d43f3a !important;
}

.dropzone .dz-preview .dz-error-message {
    opacity: 1 !important;
    margin-top: 20px;
}

.datepicker {
    z-index: 1060 !important; /* has to be larger than 1050 */
    border: solid 1px #ced4da !important;
}

.blockui {
    z-index: 1700;
    background: #fff;
    -webkit-box-shadow: 0 0 50px 0 rgba(82,63,105,.15);
    box-shadow: 0 0 50px 0 rgba(82,63,105,.15);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    border-radius: .42rem
}

    .blockui.blockui-noshadow {
        -webkit-box-shadow: none;
        box-shadow: none
    }

    .blockui > span {
        color: #464e5f;
        padding: .75rem 1.2rem;
        font-size: 1rem;
        font-weight: 400;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

        .blockui > span > .loader, .blockui > span > .spinner {
            margin-right: 1.25rem
        }


/*Wizards*/
.wizard-nav {
    padding: 0;
}

    .wizard-nav .wizard-steps {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        list-style: none;
    }

        .wizard-nav .wizard-steps .wizard-step {
            padding: 0.75rem 0;
            -webkit-transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
            transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
            transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
            transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease;
            margin-bottom: 1.5rem;
        }

.wizard-steps .wizard-step .wizard-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.wizard-steps .wizard-step a {
    padding: 0 !important;
}

.wizard-nav .wizard-steps .wizard-step .wizard-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease;
    min-width: 34px;
    height: 34px;
    border-radius: 12px;
    background-color: #F3F6F9;
    margin-right: 1rem;
}

    .wizard-nav .wizard-steps .wizard-step .wizard-icon .wizard-check {
        display: none;
        font-size: 1.4rem;
    }

    .wizard-nav .wizard-steps .wizard-step .wizard-icon .wizard-number {
        font-weight: 600;
        color: #3F4254;
        font-size: 0.8rem;
    }

.wizard-nav .wizard-steps .wizard-step .wizard-label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

    .wizard-nav .wizard-steps .wizard-step .wizard-label .wizard-title {
        color: #181C32;
        font-weight: 600;
        font-size: 0.9rem;
    }

    .wizard-nav .wizard-steps .wizard-step .wizard-label .wizard-desc {
        color: #B5B5C3;
        font-size: 0.8rem;
    }

.wizard-nav .nav-tabs a {
    cursor: default;
}

.wizard-nav .nav-tabs .nav-link:focus, .wizard-nav .nav-tabs .nav-link:hover {
    border-color: #ffffff !important;
}

    .wizard-nav .nav-tabs .nav-link:focus i, .wizard-nav .nav-tabs .nav-link:hover i {
        color: #B5B5C3 !important;
    }

.wizard-nav .wizard-steps .wizard-step.active {
    -webkit-transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease;
}

    .wizard-nav .wizard-steps .wizard-step.active .wizard-icon {
        -webkit-transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
        transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
        transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
        transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease;
        background-color: #556ee640;
    }

        .wizard-nav .wizard-steps .wizard-step.active .wizard-icon .wizard-check {
            color: #556ee6;
            display: none;
        }

        .wizard-nav .wizard-steps .wizard-step.active .wizard-icon .wizard-number {
            color: #556ee6;
        }

    .wizard-nav .wizard-steps .wizard-step.active .wizard-label .wizard-title {
        color: #181C32;
    }

    .wizard-nav .wizard-steps .wizard-step.active .wizard-label .wizard-desc {
        color: #B5B5C3;
    }

    .wizard-nav .wizard-steps .wizard-step.active:last-child .wizard-icon, .wizard-nav .wizard-steps .wizard-step.done .wizard-icon {
        -webkit-transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
        transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
        transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
        transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease;
        background-color: #C9F7F5;
    }

        .wizard-nav .wizard-steps .wizard-step.done .wizard-icon .wizard-check {
            color: #34c38f;
            display: inline-block;
        }

        .wizard-nav .wizard-steps .wizard-step.done .wizard-icon .wizard-number {
            display: none;
        }

.wizard-nav .wizard-steps .wizard-step .wizard-step-seperator {
    margin-left: 1em;
    margin-right: 1em;
}

.wizard-nav .wizard-steps .wizard-step:last-child .wizard-step-seperator {
    display: none;
}

.wizard-nav .wizard-steps .wizard-step.done .wizard-label .wizard-title {
    color: #181C32;
}

.wizard-nav .wizard-steps .wizard-step.done .wizard-label .wizard-desc {
    color: #D1D3E0;
}

@media (max-width: 767.98px) {
    .wizard-nav .wizard-steps .wizard-step {
        width: 100%;
    }

        .wizard-nav .wizard-steps .wizard-step .wizard-wrapper .svg-icon {
            display: none;
        }
}
.sw-theme-hr {
    border-radius: 5px;
    border: 1px solid #ddd;
    border: none;
}

    .sw-theme-hr > .sw-container {
        min-height: 200px;
    }

    .sw-theme-hr > .tab-content {
        padding-top: 0;
        width: 100%;
    }

    .sw-theme-hr .step-content {
        padding: 0 10px;
        border: 0px solid #D4D4D4;
        background-color: #FFF;
        text-align: left;
    }

    .sw-theme-hr .sw-toolbar {
        padding: 10px;
        margin-bottom: 0 !important;
    }


    .sw-theme-hr > ul.step-anchor {
        border: 0;
        padding: 0px;
        background: transparent;
        border-radius: 0;
        border-top-right-radius: 5px;
        list-style: none;
        overflow: hidden;
    }

        .sw-theme-hr > ul.step-anchor li + li:before {
            padding: 0;
        }


        .sw-theme-hr > ul.step-anchor > li.danger > a:after {
            border-left: 30px solid #d9534f !important;
        }

        .sw-theme-hr > ul.step-anchor > li.disabled > a, .sw-theme-hr > ul.step-anchor > li.disabled > a:hover {
            color: #eee !important;
        }

@media screen and (max-width: 768px) {
    .sw-theme-hr > ul.step-anchor {
        border: 0;
        background: #ddd !important;
    }

    .sw-theme-hr > .nav-tabs > li {
        float: none !important;
        margin-bottom: 0;
    }

    .sw-theme-hr > ul.step-anchor > li > a, .sw-theme-hr > ul.step-anchor > li > a:hover {
        padding-left: 15px;
        margin-right: 0;
        margin-bottom: 1px;
    }

        .sw-theme-hr > ul.step-anchor > li > a:after, .sw-theme-hr > ul.step-anchor > li > a:before {
            display: none;
        }
}

.modal-header.wizard-header {
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0;
}

.modal-body.wizard-body {
    padding-top: 0;
    max-height: calc(100vh - 100px) !important;
}

.wizard-body-inner {
    padding-top: 0;
    padding-right: 15px;
    max-height: calc(100vh - 300px);
    overflow-y: auto;
}

.wizard-footer {
    margin-top: 2em;
}


/*Icon-cards-row*/
.icon-cards-row {
    margin-left: -5px;
    margin-right: -5px;
    margin-top: -10px
}

    .icon-cards-row .glide__track {
        margin-left: -3px;
        margin-right: -3px
    }

    .icon-cards-row .glide__slides {
        padding-top: 10px;
        padding-left: 3px;
        padding-right: 3px
    }

        .icon-cards-row .glide__slides .glide__slide {
            padding-left: 5px;
            padding-right: 5px
        }

    .icon-cards-row .card-body {
        padding: 2rem .5rem
    }

    .icon-cards-row .card-text {
        color: #8f8f8f;
        height: 30px;
        line-height: 26px
    }

    .icon-cards-row .lead {
        color: #34c38f;
        margin-bottom: 0
    }

    .icon-cards-row i {
        font-size: 38px;
        line-height: 66px;
        color: #34c38f
    }

    .icon-cards-row .card {
        transition: box-shadow 1s;
        cursor: pointer
    }

@media (max-width: 1439px) {
    .icon-cards-row .card-text {
        height: 48px;
        line-height: 18px
    }

    .icon-cards-row .lead {
        font-size: 1.6rem
    }

    .icon-cards-row i {
        font-size: 32px;
        line-height: 47px
    }
}
.alert{
    margin-bottom: 0;
}

.alert .alert-icon {
    float: left;
    font-size: 2em;
    padding-right: 10px;
}
.alert.alert-custom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 0.5rem 1rem
}
.alert.alert-custom .alert-text {
    -ms-flex-item-align: center;
    align-self: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}
.card-header {
    background-color: #fff;
}

.dropdown-menu .dropdown-item { 
    padding-left: 1em;
    padding-right: 1em;
}
.dropdown-menu .dropdown-item i {
    width: 18px;
}

/* APP SPECIFIC STUFF */



table.heatmap {
}

    table.heatmap tr th,
    table.heatmap tr td {
        text-align: center;
        font-size: 12px;
        padding: 10px 20px;
    }

td.heatmap-10 {
    background-color: #f9ebed;
}


@media (max-width: 600px) {
    table.heatmap tr th,
    table.heatmap tr td {
        font-size: 15px;
        padding: 5px 8px !important;
    }
}

td.heatmap-20 {
    background-color: #fbdddd;
}

td.heatmap-30 {
    background-color: #facbcb;
}

td.heatmap-40 {
    background-color: #f8bbbb;
}

td.heatmap-50 {
    background-color: #f6aaaa;
}

td.heatmap-60 {
    background-color: #f59898;
}

td.heatmap-70 {
    background-color: #f38787;
}

td.heatmap-80 {
    background-color: #f27777;
    color: #fff;
}

td.heatmap-90 {
    background-color: #f06666;
    color: #fff;
}

td.heatmap-100 {
    background-color: #EF5555;
    color: #fff;
}

/*absence table*/
.absence-calendar {
    font-size: 11px;
}

    .absence-calendar tr td, .absence-calendar tr th {
        text-align: center;
    }

        .absence-calendar tr td.fixed-row, .absence-calendar tr th.fixed-row {
            text-align: left;
        }

        .absence-calendar tr td.outsidemonth {
            background-color: #aaa;
        }

        .absence-calendar tr td.weekend {
            background-color: #eee;
        }

            .absence-calendar tr td.weekend a i.fa-plus {
                color: #aaa;
            }

        .absence-calendar tr td.publicHoliday {
            background-color: #50a5f1;
        }

            .absence-calendar tr td.publicHoliday i {
                color: #ffffff;
            }

        .absence-calendar tr td.today {
            background-color: #d4e9f7;
        }

            .absence-calendar tr td.today a i.fa-plus {
                color: #fff;
            }

        .absence-calendar tr td.Approved {
            background-color: #34c38f;
            color: #fff;
        }

        .absence-calendar tr td.StartIsHalf {
            background-image: linear-gradient(135deg, rgba(255, 255, 255, 1) 20%, rgba(0,0,0,0) 25%);
        }

        .absence-calendar tr td.EndIsHalf {
            background-image: linear-gradient(225deg, rgba(255, 255, 255, 1) 20%, rgba(0,0,0,0) 25%);
        }

        .absence-calendar tr td.Approved a {
            color: #fff;
        }

        .absence-calendar tr td.Requested, .absence-calendar tr td.Requested a {
            background-color: #f1b44c;
            color: #fff;
        }

        .absence-calendar tr td.Sickness, .absence-calendar tr td.Sickness a {
            background-color: #f46a6a;
            color: #fff;
        }

        .absence-calendar tr td.add a {
            color: #ccc;
            font-weight: 100;
        }

.select2-dropdown--below {
    min-width: 350px !important;
}

select.select2[multiple] {
    height: 1em !important;
}

.select2-keyboard-tooltip {
    width: 200px;
    bottom: 100%;
    left: 2em;
    transition: opacity .4s ease-in;
    visibility: hidden;
}

    .select2-keyboard-tooltip .arrow {
        left: 95px;
    }

.select2-container--focus:not(.select2-container--open):not(.select2-hide-tooltip) .select2-keyboard-tooltip {
    visibility: visible;
    transition: opacity .4s ease-out;
    opacity: 100;
}

select.select2 {
    display: none;
}

.select2-container {
    min-width: 200px;
    max-width: 100%;
}

form:not(.form-inline) .select2.select2-container.select2-container--default {
    width: 100% !important;
}

.select2-dropdown {
    z-index: 2101 !important;
}

.select2-selection__rendered {
    padding-right: 33px !important;
}

.select2-selection__clear {
    right: 20px !important;
}

.select2-search__field {
    min-width: 120px;
}