﻿html {
    font-size: 14px;
}

body {
    font-family: 'Open Sans', sans-serif;
    /*font-size: 10pt;*/
}

h1, .h1 {
    font-size: 3.6rem;
}

h2, .h2 {
    font-size: 3.0rem;
}

h3, .h3 {
    font-size: 2.4rem;
}

h4, .h4 {
    font-size: 1.8rem;
}

h5, .h5 {
    font-size: 1.4rem;
}

h6, .h6 {
    font-size: 1.2rem;
}

nav > div > .navbar-header {
    margin-top: 5px;
    margin-bottom: 5px;
}

.under-navbar {
    margin-top: 70px;
}

#application-title {
    font-size: 3rem;
    color: #F37024;
    line-height: 60px;
    font-weight: bold;
}

#applicationLogo {
    height: auto;
    width: auto;
    max-height: 90px;
    margin: 0 auto;
}

#welcomeLogoDiv {
    width: 100%;
    height: 65px;
    margin: 15px 0px 20px 0px;
}

#WelcomeLogo {
    max-width: 200px;
    max-height: 150px;
    margin: 20px 0px;
}

nav.navbar {
    border-bottom: 6px solid #1D466C;
    background-color: White;
    background-image: none;
    text-align: center;
    border-radius: 0px;
    margin-bottom: 0;
    z-index: 1040;
}

#main-menu {
    display: inline-block;
    width: 100%;
    color: #FFFFFF;
    background-color: #1D466C;
}

    #main-menu a {
        color: #FFFFFF;
    }

#pageNameDiv {
    pointer-events: none;
    position: fixed;
    top: 109px;
    width: 100%;
    text-align: center;
    z-index: 1030;
}

@media (min-width:0px) and (max-width: 768px) {

    #applicationLogo {
        max-height: 34px;
        margin-top: 8px;
    }

    body .navbar-header div.logo-container {
        position: fixed;
        min-height: 10px;
        height: 50px;
        width: auto;
        transform: translateY(-50%);
        left: 0;
        top: 30px;
    }

    body #nav-right {
        overflow-y: auto;
        display: none;
    }

    .navbar-header {
        height: 50px;
    }

    .under-navbar {
        margin-top: 60px;
    }

    #pageNameDiv {
        top: 66px;
    }

    .navbar-toggle {
    }

    body nav.navbar-fixed-top .navbar-collapse,
    body nav.navbar-fixed-bottom .navbar-collapse {
        max-height: 90vh;
    }
}

@media (min-width: 768px) {
    #pageNameDiv {
        display: none;
    }
}

#pageName {
    display: inline-block;
    background-color: #1D466C;
    color: #FFFFFF;
    border-radius: 0px 0px 4px 4px;
    padding: 2px 15px 7px 15px;
    pointer-events: auto;
}

body ul.navbar-nav {
    margin-top: -0.5rem;
}

.tooltip {
    font-family: 'Open Sans', sans-serif;
}

.popover {
    max-width: none;
    font-family: 'Open Sans', sans-serif;
    color: #333333;
    font-size: 1em;
}

.popover-buttons {
    border-top: 1px solid grey;
    margin-top: 1rem;
    padding-top: 1rem;
}

.popover-button-left {
    float: left;
    margin-bottom: 1rem;
}

.popover-button-right {
    float: right;
    margin-bottom: 1rem;
}

.popover-buttons > .pull-right > .btn + .btn {
    margin-left: 5px;
}

#account-information-popover-content {
    min-width: 230px;
}

    #account-information-popover-content span {
        white-space: nowrap;
        display: inline-block;
    }

.aside, .main {
    padding-left: 0px;
    padding-right: 0px;
}

.inside-div-scroll {
    padding-right: 5px;
}

.div-scroll {
    max-height: 100%;
    min-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
}

.aside .div-scroll > .row {
    border-radius: 6px;
    border: 1px solid #e7e7e7;
    background-image: linear-gradient(to bottom,#fff 0%,#f8f8f8 100%);
    margin-left: 15px;
    margin-right: 15px;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);
    color: #333333;
}

#entitlements ul ul > li {
    margin-left: 3rem;
}

#entitlements .entitlements-bad > span {
    color: Red;
}

/* Sidebar navigation */
.sidebar {
    position: fixed;
    top: 66px;
    left: 0;
    height: calc( 100% - 66px );
    background-color: #1D466C;
    background: #1D466C linear-gradient(to bottom, #1D466C, #102E4C) repeat scroll 0% 0%;
    padding: 0;
    padding-bottom: 4rem;
    margin-bottom: auto;
    z-index: 1035;
    color: White;
}

.sidebar-scroll {
    max-height: 100%;
    overflow-y: auto;
}

.sidebar > footer {
    text-align: center;
    position: absolute;
    bottom: 0;
    padding: 6px;
    z-index: 1;
    color: inherit;
    font-size: 8pt;
}

    .sidebar > footer > p {
        margin: 0;
    }

.sidebar input.navItem {
    text-align: left;
    white-space: normal;
    padding: 10px 15px;
    width: 100%;
}

.align-form .radio input[type="radio"],
.align-form .radio-inline input[type="radio"],
.align-form .checkbox input[type="checkbox"],
.align-form .checkbox-inline input[type="checkbox"] {
    margin-left: 0px;
}

.align-form .radio,
.align-form .radio-inline,
.align-form .checkbox,
.align-form .checkbox-inline {
    margin-top: 5px;
}

.form-horizontal .form-group {
    margin-left: 0px;
    margin-right: 0px;
}

.panel-body .form-horizontal > .form-group:last-of-type,
.modal-body .form-horizontal > .form-group:last-of-type {
    margin-bottom: 0px;
}

td {
    text-align: left;
}

.nav-sidebar .navItem {
    color: inherit;
    font-size: 1rem;
    z-index: 1040; /* Added for IE9 */
}

.nav-sidebar.transition-enabled .navItem {
    transition: color ease-out 0.3s;
}

.nav-sidebar.not-loaded .navItem {
    color: transparent !important;
}

.nav-sidebar > li {
    z-index: 1030; /* Added for IE9 */
    line-height: 1;
}

    .nav-sidebar > li > .navItem {
        padding-left: 2rem;
    }

    .nav-sidebar > li > ul > li > .navItem {
        padding-left: 4rem;
    }

/* Hover styling more specific than Focus styling to always show first */
.nav.nav-sidebar > li:not(.active) > .navItem:hover,
.nav.nav-sidebar > li > ul > li:not(.active) > .navItem:hover {
    background-color: #ffffff;
    color: #222222;
    text-decoration: none;
    outline: none;
}

/* Hides Focus styling */
.nav-sidebar > li:not(.active) > .navItem:focus,
.nav-sidebar > li > ul > li:not(.active) > .navItem:focus {
    background-color: transparent;
    text-decoration: none;
    outline: none;
}

/* Selected Nav Item */
.nav-sidebar .active > .navItem:hover,
.nav-sidebar .active > .navItem:focus,
.nav-sidebar .active > .navItem:not(:hover):not(:focus) {
    text-decoration: none;
    color: #ffffff;
    background-color: #F37024;
    outline: none;
    font-weight: bold;
    cursor: default;
}

table {
    /*font-size: 0.9rem;*/
}

.tab-pane.active {
    border: 1px solid #ddd;
    border-top-color: transparent;
    border-radius: 0 0 4px 4px;
}

.table-bordered {
    border: 1px solid #ddd;
    border-radius: 4px;
}

.please-wait-dialog-for-screen {
    background-color: rgba(255, 255, 255, 0.5);
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 3000;
    cursor: wait;
}

@media (max-width: 767px) {
    .please-wait-dialog-for-master-page-content-section {
        background-color: rgba(255, 255, 255, 0.5);
        position: fixed;
        top: 70px;
        left: 0;
        height: calc(100% - 70px);
        width: 100%;
        z-index: 2000;
        cursor: wait;
    }
}

@media (min-width: 768px) {
    .please-wait-dialog-for-master-page-content-section {
        background-color: rgba(255, 255, 255, 0.5);
        position: fixed;
        top: 70px;
        left: 16.66666667%;
        height: calc(100% - 70px);
        width: calc(100% - 16.66666667%);
        z-index: 2000;
        cursor: wait;
    }
}

.please-wait-dialog-for-node {
    background-color: rgba(255, 255, 255, 0.5);
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 2000;
    cursor: wait;
}

#pleaseWaitDialogContent {
    padding: 1rem;
    min-width: 180px;
    text-align: center;
    /*Keeps default cursor and stops text selection. */
    cursor: default;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

.please-wait-dialog-content-centre {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.please-wait-dialog-content-fixed {
    position: absolute;
    top: 250px;
    left: 50%;
    transform: translate(-50%, 0);
}

#pleaseWaitDialogContent > img {
    padding-right: 1rem;
}

.padded-row {
    padding-top: 1rem;
}

.padded-row-last {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.padded-row-bottom {
    padding-bottom: 1rem;
}

div.bootstrap-datetimepicker-widget {
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: visible;
    width: 190px;
    margin-left: auto;
    margin-right: auto;
}

    div.bootstrap-datetimepicker-widget table {
        background-color: White;
    }

    div.bootstrap-datetimepicker-widget thead tr:nth-child(2) th {
        color: White;
        background-color: #1D466C;
        border-radius: 0px;
    }

body div.logo-container {
    height: auto;
    width: 15vw;
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    margin: 0 1rem;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
}

.modal {
    z-index: 2001;
}

.popover,
.tooltip {
    z-index: 2002;
}

.modal-header {
    background-color: #1D466C;
    background: #1D466C linear-gradient(to bottom, #1D466C, #102E4C) repeat scroll 0% 0%;
    color: White;
    padding: 10px;
}

    .modal-header > .close {
        color: #FFFFFF;
        text-shadow: 0 1px 0 #6495ED;
    }

        .modal-header > .close:focus {
            color: #FFFFFF;
            text-decoration: none;
            cursor: pointer;
        }

.alert {
    margin-bottom: 0px;
    text-align: center;
    padding: 5px;
}

.table > tbody > tr.bottom-row > td {
    border-top: none;
}

table.style-table-striped > tbody > tr:nth-of-type(odd),
.table-striped-two-rows > tbody > tr:nth-child(4n+1) > td, .table-striped-two-rows > tbody > tr:nth-child(4n+2) > td {
    background-color: #F9F9F9;
    color: #222222;
}

.table-striped-two-rows > tbody > tr:nth-child(4n+3) > td, .table-striped-two-rows > tbody > tr:nth-child(4n+4) > td {
    background-color: inherit;
}

.bg-default {
    color: #fff;
    background-color: #1D466C;
}

.form-control-inline {
    display: inline-block;
    width: auto;
}

.form-control.form-control--borderless {
    border-color: transparent;
    box-shadow: none;
    background: transparent;
}

.table {
    margin-bottom: 0px;
}

.modalAbsenceRequest {
    width: 900px;
    min-width: 500px;
    text-align: center;
}

.alert.alert-right {
    text-align: right;
}

#masterPageContentSection {
    position: relative;
    top: 40px;
}

@media (min-width: 768px) {
    #masterPageContentSection {
        top: 1rem;
    }
}

.div-scroll {
    padding-bottom: 50px;
}

.icon-big {
    text-align: center;
    font-size: 2rem;
    line-height: 2rem;
    margin-top: 2px;
}

.master-div {
    padding-left: 0;
    padding-right: 0;
}

table .btn-link {
    padding: 0;
    margin: 0 5px 0 0;
}

.panel-default > .panel-heading {
    color: white;
    background-color: #102E4C;
    background-repeat: repeat-x;
    background-image: linear-gradient(to bottom, #1D466C, #102E4C);
}

.col-condensed {
    padding-left: 5px;
    padding-right: 5px;
}

.col-condensed-right {
    padding-right: 5px;
}

.col-condensed-left {
    padding-left: 5px;
}

tr.grand-total-row {
    border-top: 3px solid #ddd !important;
    font-weight: bold;
}

.button-image-right {
    padding-left: 1rem;
}

.btn-xs > .glyphicon {
    top: 2px;
}

.btn-xs + .btn-xs {
    margin-left: 5px;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
    margin: 0px;
}

@media screen and (min-width: 768px) {
    .text-in-group {
        display: inline-block;
        border: 1px solid #adadad;
        border-radius: 4px;
        padding: 6px 12px;
    }

    .text-group > .text-in-group:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .text-group > .text-in-group:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .text-group .text-in-group + .text-in-group {
        margin-left: -1px;
    }
}

@media screen and (max-width: 767px) {
    .text-in-group {
        display: inline-block;
        border: 1px solid #adadad;
        border-radius: 0;
        padding: 6px 12px;
        width: 50%;
        margin-bottom: -1px;
    }

    .text-group > .text-in-group:first-child {
        border-top-left-radius: 4px;
    }

    .text-group > .text-in-group:nth-child(2) {
        border-top-right-radius: 4px;
    }

    .text-group > .text-in-group:nth-last-child(2) {
        border-bottom-left-radius: 4px;
    }

    .text-group > .text-in-group:last-child {
        border-bottom-right-radius: 4px;
    }

    .text-group .text-in-group + .text-in-group:nth-child(even) {
        margin-left: -1px;
    }
}

.labelpadding {
    padding-right: 1em;
}

.labelpaddingx2 {
    padding-right: 2em;
}

.vertical-align-top {
    vertical-align: top;
}

.textarea-min-width {
    min-width: 62%;
}

p.form-control-static {
    word-wrap: break-word;
}

.tooltip-inner {
    word-wrap: break-word;
}

input:disabled + label {
    opacity: 0.5;
}

.no-padding {
    padding: 0px;
}

.no-padding-left {
    padding-left: 0px;
}

.block {
    width: 100% !important;
    display: block;
}

.date-range-selector {
    padding: 5px;
    border-bottom: 1px solid #ddd;
    background: #ffffff;
}

.vertical-padding-md {
    padding-top: 30px;
    padding-bottom: 30px;
}

/* Allows bottom align for bootstrap columns */
.tasks-header {
    font-size: 0;
}

    .tasks-header > * {
        float: none;
        display: inline-block;
        font-size: 1rem;
    }

        .tasks-header > *:last-child {
            vertical-align: bottom;
        }

/*
.tasks-header p:last-child {
    margin-bottom: 0; /* optional
}
*/

.btn-processError {
    background-position: 0% 0%;
    color: #333333;
    background-repeat: repeat-x;
    border-color: #E4C00B;
    background-image: linear-gradient(to bottom, #FFCC56 60%, #E4C00B 100%);
    background-color: #FFCC56;
    background-attachment: scroll;
}

button.btn-processError:active {
    background-position: 0% 0%;
    color: #333333;
    background-repeat: repeat-x;
    border-color: #E4C00B;
    background-image: linear-gradient(to bottom, #E4C00B 60%, #FFCC56 100%);
    background-color: #E4C00B;
    background-attachment: scroll;
}

.tableButton {
    text-align: center;
    width: 55px;
}

.popover-buttons {
    border-top: 1px solid #ebebeb;
    margin-top: 1px;
}

.table.viewAbsenceTable > tbody > tr > td,
.table.viewAbsenceTable > thead > tr > th {
    vertical-align: middle;
    padding: 4px 6px;
    height: 100%;
}

.btn-group.pull-right > .btn {
    margin-left: 7px;
}

table.centered {
    margin-left: auto;
    margin-right: auto;
}

a,
a label {
    cursor: pointer;
}

textarea {
    max-width: 100%;
}

.padded-bottom {
    padding-bottom: 50px;
}

.form-group-sm .form-control-static {
    height: auto;
}

.process-error {
    background: #FFCC56;
    color: #333333;
}

.process-error-icon {
    border-radius: 1rem;
    padding: 0.24rem;
    top: 0px;
    font-size: 0.6rem;
}

.staffing-level-min {
    background-color: red;
}

.staffing-level-pref {
    background-color: orange;
}

.staffing-level-min-text {
    color: red;
}

.staffing-level-pref-text {
    color: orange;
}

.panel.staffing-level-panel .panel-heading {
    font-size: large;
    padding: 10px 0px 0px 0px;
}

.width-auto {
    width: auto;
}

table.staffing-level-table th {
    padding: 3px;
}

.bold {
    font-weight: 600;
}

.style-standard,
.style-standard-color {
    color: #222222;
}

.style-standard,
.style-standard-background {
    background-color: #FFFFFF;
    background: #FFFFFF;
}

ul.nav-tabs > li > a {
    background-color: rgba(238, 238, 238, 0.4);
    color: #333333;
}

ul.nav-tabs > li:hover > a {
    color: #333333;
}

ul.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    background-color: #FFFFFF;
}

.modal-body,
.panel-body,
.datepicker {
    background: #ffffff;
    color: #222222;
}

.modal-body, .modal-footer {
    padding: 10px;
}

.panel {
    margin-bottom: 10px;
}

    .panel.panel-no-margin {
        margin-bottom: 0;
    }

.datepicker {
    font-size: 0.85rem;
}

.sidebar-footer {
    width: 100%;
    margin: 0px;
    color: inherit;
}

.account-information-link,
#masterDate,
#masterTime {
    color: inherit;
    /*font-size: 10pt;*/
}

.nav-dropdown {
    text-align: left;
}

    .nav-dropdown .navItem {
        font-size: 1rem;
    }

    .nav-dropdown input.navItem,
    .nav-dropdown button.navItem {
        padding: 10px 15px;
    }

    .nav-dropdown > li > a.navItem,
    .nav-dropdown > li > input.navItem,
    .nav-dropdown > li > button.navItem {
        padding-left: 2rem;
        color: inherit;
    }

    .nav-dropdown > li:hover > a.navItem,
    .nav-dropdown > li:hover > input.navItem,
    .nav-dropdown > li:hover > button.navItem {
        font-weight: bold;
        color: inherit;
    }

    .nav-dropdown > li > a.navItem:focus,
    .nav-dropdown > li > input.navItem:focus,
    .nav-dropdown > li > button.navItem:focus {
        color: inherit;
    }

    .nav-dropdown > li > ul > li > a.navItem,
    .nav-dropdown > li > ul > li > input.navItem,
    .nav-dropdown > li > ul > li > button.navItem {
        padding-left: 4rem;
        color: inherit;
    }

.flip-x {
    -moz-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    filter: FlipH;
    -ms-filter: "FlipH";
}

.warning-font {
    text-align: center;
    color: Red;
}

@media (max-width: 767px) {
    .nav-tabs > li {
        float: none;
        border: 1px solid #dddddd;
    }

        .nav-tabs > li.active > a {
            border: none;
        }
            /*.nav > li > a:hover, .nav > li > a:focus,*/
            .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
                background: none;
                border: none;
            }
}

#navbar {
    color: #222222;
}

#emergencyContactModal input.form-control,
#emergencyContactModal select.form-control,
#emergencyContactModal label.control-label {
    font-size: inherit;
    height: auto;
}

.show-user-popover-content {
    min-width: 150px;
}

.clear-paybands-button,
.clear-absences-button {
    width: 100%;
    margin-top: 10px;
}

.payband-column-options .checkbox > input[type="checkbox"] {
    margin-left: 20px;
}

.payband-column-options .checkbox > label {
    margin-left: 20px;
}

.forgotten-password-modal {
    padding: 20px 50px;
}

body .label {
    border-radius: 70px;
    padding: 3px 8px 3px 8px;
    vertical-align: middle;
    font-size: 0.75rem;
    text-transform: uppercase;
    font-weight: normal;
    display: inline-block;
    position: relative;
    letter-spacing: 0.05rem;
    cursor: default;
}

/*#region --- Category Button --- */

body .category-button {
    margin-bottom: 0.3em;
    padding: 1vh 1em 1vh 1.5em;
    border-radius: 4px 15px 15px 4px !important;
    display: block;
    width: 100%;
    background: #fbfbfb;
    color: #333333;
    outline: none;
    font-size: 1.3em;
    text-align: left;
    transition: background-color ease 0.1s;
    text-shadow: none;
    box-shadow: none;
}

.category-button.selected {
    box-shadow: none;
    text-shadow: none;
    cursor: default;
}

.category-button-icon {
    width: 10%;
    opacity: 0.5;
    top: 2px;
    float: right;
    text-align: right;
}

.category-button.selected .category-button-icon {
    opacity: 1;
}

.category-button-text {
    width: 90%;
    word-wrap: break-word;
    white-space: normal;
    float: left;
}

.category-button:after,
.category-button:before,
.category-button-large:after,
.category-button-large::before {
    display: table;
    content: " ";
}

.category-button:after,
.category-button-large:after {
    clear: both;
}

.category-button-large {
    border: 1px solid #ddd;
    padding: 1rem 1.5rem;
    border-radius: 10rem 50rem 50rem 10rem;
    box-shadow: 5px 5px #f5f5f5;
    background: #fbfbfb;
    cursor: pointer;
    outline: none !important;
    text-align: left;
    max-width: 600px;
    margin: auto;
    display: block;
    white-space: normal;
    width: 100%;
}

    .category-button-large .button-wrap {
        display: table;
    }

    .category-button-large .button-text {
        display: table-cell;
        width: 100%;
    }

    .category-button-large .button-icon {
        display: table-cell;
        width: 1px;
    }

    .category-button-large .button-title {
        font-size: 1.3rem;
        margin-bottom: 0.5rem;
        font-weight: bold;
        letter-spacing: 0.0125rem;
        color: #224d78;
        width: auto;
    }

    .category-button-large .button-subtitle {
        font-size: 0.9rem;
        color: #777;
        width: auto;
    }

    .category-button-large .category-button-icon {
        font-size: 1.5rem;
        float: none;
        margin-left: 8px;
    }


.button-text,
.button-icon {
    vertical-align: middle;
    display: table-cell;
}

.divider-row {
}

/*#endregion --- Category Button --- */

.table tr .button-cell {
    width: 1px;
    text-align: center;
    vertical-align: top;
}

.icon-cell {
    text-align: center;
    width: 1%;
    padding-left: 1rem;
    padding-right: 10rem;
}

.icon-text {
    font-size: 0.75rem;
    word-break: break-word;
    /*text-transform:uppercase;*/
}

.icon-md {
    font-size: 1.5rem;
}


/*region --- Animation --- */

.glyphicon-spin-animate {
    -animation: spin 1s infinite linear;
    -ms-animation: spin 1s infinite linear;
    -webkit-animation: spinw 1s infinite linear;
    -moz-animation: spinm 1s infinite linear;
}

@keyframes spin {
    from {
        transform: scale(1) rotate(0deg);
    }

    to {
        transform: scale(1) rotate(360deg);
    }
}

@-webkit-keyframes spinw {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes spinm {
    from {
        -moz-transform: rotate(0deg);
    }

    to {
        -moz-transform: rotate(360deg);
    }
}

.gps_ring {
    border: 3px solid #ccc;
    -webkit-border-radius: 30em;
    height: 1.25em;
    width: 1.25em;
    -webkit-animation: pulsate 1s ease-out;
    -webkit-animation-iteration-count: infinite;
    opacity: 0.0;
    margin: auto;
}

@-webkit-keyframes pulsate {
    0% {
        -webkit-transform: scale(0.1, 0.1);
        opacity: 0.0;
    }

    50% {
        opacity: 1.0;
    }

    100% {
        -webkit-transform: scale(1.2, 1.2);
        opacity: 0.0;
    }
}

/* --- Status Text --- */

.status-text {
    /*padding:0rem 1.5rem;*/
    font-weight: bold;
    letter-spacing: 0.075rem;
    text-transform: uppercase;
    font-size: 1rem;
    font-size: 0.85rem;
    text-align: center;
    display: none;
}

    .status-text.active {
        display: block;
    }

/* --- Account Status Colors --- */

.account-status {
    padding: 0 1rem;
}

.active-status {
    color: #5cb85c !important;
}

.info-status {
    color: #00b6ff !important;
}

.pending-status {
    color: #337ab7 !important;
}

.warning-status {
    color: #ffb225 !important;
}

.locked-status {
    color: #a94442 !important;
}

.disabled-status {
    color: #a8a8a8 !important;
}

.break-status {
    color: blue !important;
}

.lime-color {
    color: #b2f170 !important;
    color: #b7d41e !important;
}

/* --- Padding --- */

.padding-bottom-lg {
    padding: 0px 0px 100px 0px;
}

.padding-xs {
    padding: 3px;
}

.padding-bottom-sm {
    padding: 0px 0px 10px 0px;
}


.padding-md {
    padding: 30px;
}

.padding-top-md {
    padding-top: 30px;
}

.padding-bottom-md {
    padding-bottom: 30px;
}

.padding-top-sm {
    padding: 10px 0px 0px 0px;
}

.padding-top-sm-bottom-md {
    padding: 10px 0px 40px 0px;
}

.padding-bottom-xs {
    padding: 0px 0px 4px 0px;
}

.padding-sm {
    padding: 10px;
}

.padding-left-sm {
    padding: 0px 0px 0px 10px;
}

.padding-right-sm {
    padding: 0px 20px 0px 0px;
}

.padding-right-xs {
    padding: 0px 10px 0px 0px;
}

@media (max-width: 767px) {
    .text-xs-left {
        text-align: left !important;
    }

    .text-xs-right {
        text-align: right !important;
    }

    .text-xs-center {
        text-align: center !important;
    }

    .text-xs-justify {
        text-align: justify !important;
    }
}

@media (max-width: 991px) {
    .text-sm-left {
        text-align: left !important;
    }

    .text-sm-right {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }

    .text-sm-justify {
        text-align: justify !important;
    }
}

/* --- Margin --- */

.margin-top-sm {
    margin: 10px 0px 0px 0px;
}

.margin-bottom-sm {
    margin: 0px 0px 10px 0px;
}

.lighter-text {
    color: #888;
    letter-spacing: 0.05em;
    font-size: 0.75rem;
}

.sub-text {
    color: #a8a8a8;
    font-size: 0.85rem;
    letter-spacing: 0.025em;
}

.sub-text-highlight {
    font-size: 0.85rem;
    letter-spacing: 0.025em;
    font-weight:bold;
}

.faded-text {
    color: #a8a8a8;
}

.light-upper-text {
    color: #a8a8a8;
    color: #9e9e9e;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.125rem;
}

.parent-absence-code {
    color: #9e9e9e;
}

.main-text {
    letter-spacing: 0.0025rem;
    font-size: 1.15rem;
    word-break: break-word;
    padding: 0.25rem 0rem;
    min-width: 9rem;
}

.header-text {
    font-size: 1.25rem;
    font-weight: bold;
    text-align: left;
    letter-spacing: 0.05rem;
}

.disable-select {
    -webkit-user-select: none; /* Safari 3.1+ */
    -moz-user-select: none; /* Firefox 2+ */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.fadeInOnLoad {
    display: none;
}

.opaque-text {
    opacity: 0.5;
}

/* --- Table CSS -- */
.padded-table > thead > tr > th:not(.hidden):first-child,
.padded-table > tbody > tr > td:not(.hidden):first-child {
    padding-left: 1.5rem;
}

.padded-table > thead > tr > th:not(.hidden):last-child,
.padded-table > tbody > tr > td:not(.hidden):last-child {
    padding-right: 1.5rem;
}

.date-cell {
    width: 10rem;
}

.modal-footer .btn.pull-right + .btn.pull-right {
    margin-bottom: 0;
    margin-left: 0px;
    margin-right: 5px;
}

.modal-header {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.form-control.form-control--borderless {
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    padding-left: 0;
    padding-right: 0;
    color: #222222;
}

.control-label.control-label--large {
    font-weight: bold;
    color: #444;
    letter-spacing: 0.0125em;
    font-size: 1.05em;
}

.control-label.control-label--light,
thead.thead--light th {
    color: #777;
    font-weight: 500;
    font-size: 0.95rem;
    letter-spacing: 0.0125em;
}

table {
    /* Hide scroll bars in IE when table is empty */
    overflow-x: hidden;
}

.btn.btn-link {
    outline: none !important;
}

    .btn.btn-link:active,
    .btn.btn-link:focus {
        text-decoration: none;
    }

    .btn.btn-link:hover {
        text-decoration: underline;
    }

.btn.btn-clear {
    outline: none !important;
    background: none;
}

    .btn.btn-clear:active,
    .btn.btn-clear:focus {
        text-decoration: none;
        background: none;
        box-shadow: none;
    }

    .btn.btn-clear:hover {
        text-decoration: none;
        background: none;
    }

.rotate-90 {
    transform: rotate(90deg);
}

.rotate-180 {
    transform: rotate(180deg);
}

.rotate-270 {
    transform: rotate(270deg);
}

.transparent-fade {
    opacity: 1;
    transition: opacity 0.2s ease-out;
}

    .transparent,
    .transparent-fade.transparent {
        opacity: 0;
    }

.btn--wide {
    min-width: 8rem;
}

.flex-fallback {
    display: table;
    display: flex;
    align-items: center;
}

    .flex-fallback > * {
        display: table-cell;
        flex: 1 1 auto;
    }

.font-sm {
    font-size: 0.75rem;
}


.info-point {
    display: table;
    display: flex;
    align-items: center;
    padding-top: 1rem;
}

    .info-point > * {
        display: inline-block;
        vertical-align: middle;
    }

    .info-point > .info-point__icon + .info-point__text {
        margin-left: 0.75rem;
    }


.subordinateSelectButton {
    width: 100%;
}

.input-daterange .input-group-addon {
    border-left: none;
    border-right: none;
}

input[type=checkbox] {
    cursor: pointer;
}

.panel-title + .btn {
    float: right;
    cursor: pointer;
}

/* --- Navbar --- */

body nav.navbar {
    width: 100%;
    max-width: 100%;
}

#nav-right {
    position: fixed;
    right: 0;
    height: 60px;
    display: flex;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    padding-right: 3rem;
    opacity: 0;
    transition: 0.4s ease-in opacity;
}

    #nav-right > * {
        position: relative;
        display: inline-block;
        vertical-align: middle;
        padding: 0 1rem;
    }

html.ie9 #nav-right {
    padding-top: 1rem;
}

#nav-right.active {
    opacity: 1;
}

/* --- User Info--- */
body #application-title {
    display: inline-block;
    vertical-align: middle;
    font-size: 2vw;
    float: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

body nav ul.navbar-nav {
    vertical-align: middle;
    margin-top: 0;
    position: relative;
    right: 0;
}

#masterDateTime {
    cursor: default;
    background-color: inherit;
    background: inherit;
    color: inherit;
}

.account-information-link {
    cursor: pointer;
    background-color: inherit;
    background: inherit;
    color: inherit;
}

.user-icon.photo-icon {
    padding: 1rem;
    position: relative;
    border-radius: 10rem;
    width: 3rem;
    height: 3rem;
    display: block;
    margin: auto;
    overflow: hidden;
}

    .user-icon.photo-icon > img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        padding: 0;
        margin: 0;
        color: white;
    }

.user-icon.default-icon {
    background: #ddd;
    padding: 1rem;
    position: relative;
    border-radius: 10rem;
    width: 3rem;
    height: 3rem;
    display: block;
    margin: auto;
}

    .user-icon.default-icon > i {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        padding: 0;
        margin: 0;
        color: white;
    }

#mobileMyAccount {
    display: none;
    float: right;
    margin-right: 1rem;
    transform: translateY(20%);
    justify-items: center;
    align-items: center;
    cursor: pointer;
}

    #mobileMyAccount > .user-icon {
        width: 2.5rem;
        height: 2.5rem;
    }

    #mobileMyAccount > i.glyphicon-chevron-down {
        opacity: 0.33;
    }

@media (max-width: 767px) {
    body #mobileMyAccount {
        display: flex;
    }

    body .navbar-fixed-top {
        display: block;
    }
}


@media (min-width: 768px) {
    #applicationLogo {
        max-width: 18vw;
        max-height: 75px;
        margin-left: 1rem;
    }

    body div.logo-container {
        max-width: 30vw;
    }

    body #application-title {
        font-size: 2rem;
    }

    body #masterDateTime {
        display: none;
    }

    body nav ul.navbar-nav {
        display: inline-block;
    }

    body nav.navbar > .container-fluid {
        padding: 0;
        position: relative;
    }

    body .btn--wide {
        min-width: 20rem;
    }
}

@media (min-width: 992px) {
    #applicationLogo {
        max-width: 12vw;
        margin-left: 0;
    }

    body div.logo-container {
        max-width: 20vw;
    }

    body #application-title {
        font-size: 2rem;
    }

    body #masterDateTime {
        display: inline-block;
    }
}

@media (min-width: 1200px) {
    #applicationLogo {
        max-width: 10vw;
    }

    body div.logo-container {
        max-width: 24vw;
    }

    body #application-title {
        font-size: 2rem;
    }
}

@media (min-width: 1500px) {
    #applicationLogo {
        max-width: 170px;
        min-width: initial;
        min-height: initial;
    }

    body div.logo-container {
        max-width: 20vw;
    }
}

.logo-container > a {
    width: auto;
}

#navbar {
    /*display:flex !important;*/
    /*border: 1px solid teal;*/
}

.account-information-link .user-icon {
    margin-bottom: 0.25rem;
}

.account-information-link .user-icon,
.account-information-link__username {
    transition: transform 0.1s ease-in;
}

.account-information-link__username {
    display: block;
    text-align: center;
    margin: auto;
}

    .account-information-link__username > div {
        display: inline-block;
        max-width: 12rem;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .account-information-link__username > * {
        vertical-align: middle;
    }

    .account-information-link__username > i {
        top: 1px;
        font-size: 0.75em;
        opacity: 0.33;
    }

#OptionsShow .nav-tabs {
    margin-top: 1px;
}

.result-row {
    margin-top: 40px;
}

.panel-title {
    line-height: 1;
}

.panel-subtitle {
    font-size: 1rem;
}

#dummySelect {
    display: none;
}

.alert-row .alert {
    margin-top: 20px;
}

h1.inline-header, h2.inline-header, h3.inline-header, h4.inline-header, h5.inline-header, h6.inline-header {
    display: inline-block;
    vertical-align: baseline;
}


/* --- Two Column List --- */

.two-column-list {
    font-size: 0;
}

    .two-column-list > * {
        display: inline-block;
        width: 50%;
        font-size: 10pt;
    }

@media (min-width:0px) and (max-width: 768px) {

    .two-column-list > * {
        width: 100%;
    }
}

input#txtUsername,
input#txtUsername:-webkit-autofill,
input#txtUsername:-webkit-autofill:focus,
input#txtUsername:-webkit-autofill:hover,
input#txtPassword,
input#txtPassword:-webkit-autofill,
input#txtPassword:-webkit-autofill:focus,
input#txtPassword:-webkit-autofill:hover,
select#ddlDomain,
select#ddlDomain:-webkit-autofill,
select#ddlDomain:-webkit-autofill:focus,
select#ddlDomain:-webkit-autofill:hover {
    font-size: 0.9rem !important;
    letter-spacing: 0.033rem !important;
    font-family: Open Sans, Sans-serif;
}

#OptionsShow {
    padding-right: 0px;
}

    #OptionsShow .modal-body {
        min-height: 400px;
    }

    #OptionsShow .modal-dialog {
        max-width: 900px;
        margin: 20px auto;
        width: calc(100% - 40px);
    }

@media screen and (min-width: 992px) {
    #OptionsShow .modal-dialog {
        min-width: 900px;
    }
}

/*#defaultHomePageFormGroup .form-control {
    display:inline-block;
    width: auto;
    margin-left:0.75rem;
}*/

tr.stripe td {
    background-color: #f9f9f9;
}

#masterDateTime,
.account-information-link {
    min-width: 10rem;
}

.info-label {
    display: inline-block;
    margin-right: 1.5rem;
}

    .info-label .label {
        margin-left: 0.25rem;
        width: 2rem;
    }

@media screen and (max-width: 500px) {

    .account-information-link__username > div,
    .account-information-link__self-approver,
    .account-information-link__line-manager {
        display: none;
    }

    .account-information-link {
        min-width: 0px;
    }
}

.dark-backdrop::before {
    content: '';
    background: black;
    position: fixed;
    display: block;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.7;
}

.item-selector {
    display: flex
}

.item-selector__controls {
    align-self: center;
    flex: 0 0 5rem;
    text-align: center;
}

.item-selector__column {
    flex: 1 1 auto; /* For IE compatibility */
    flex: 1 1 calc(50% - 4rem);
}

.item-selector__controls .btn:first-child {
    margin-top: 0rem;
}

.item-selector__controls .btn {
    margin-top: 0.5rem;
    width: 80%;
}

.modal-drop-control {
    width: auto;
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
}

.btn.green-button {
    color: #1dbd3a;
}

.btn.red-button {
    color: #f35d69;
}

.btn.blue-button {
    color: #00b6ff;
}


/* --- Modal Top --- */

.modal-top .modal-top__control {
    display: inline-block;
    width: auto;
}

.modal-top > .modal-top__control:not(:first-child) {
    margin-left: 3rem;
}

.modal-top__control .control-label {
    margin-right: 0.75rem;
    display: block;
}

.modal-top__control {
    vertical-align: middle;
}

body .modal-top__control .form-control {
}

@media screen and (max-width: 768px) {

    .modal-top > .modal-top__control {
        display: block;
    }

        .modal-top > .modal-top__control:not(:last-child) {
            margin-bottom: 1rem;
        }

        .modal-top > .modal-top__control:not(:first-child) {
            margin-left: 0rem;
        }
}

@media screen and (max-width: 600px) {

    .modal-top {
        /*text-align:center;*/
    }

    .modal-top__control {
        margin-bottom: 1rem;
    }

        .modal-top__control .control-label {
            display: block;
            margin: 0;
        }
}

/* --- Conflict Rule --- */

.conflict-rule-list .conflict-rule:not(:last-child) {
    margin-bottom: 1rem;
}

.conflict-rule {
    display: flex;
    align-items: flex-start;
}

.conflict-rule__icon {
    flex: 0 0 2rem;
    text-align: center;
}

    .conflict-rule__icon i.glyphicon {
        margin-right: 1rem;
        font-size: 1.125rem;
        top: 0.2em;
    }

.conflict-rule__text {
    flex: 1 1 auto;
}

.modal--padded .modal-body {
    padding: 1rem 4rem 1rem 4rem;
}

@media (min-width: 992px) {
    body.main-body .modal--padded-sm .modal-body {
        padding: 1rem 2rem 1rem 2rem;
    }
}

.required-mark::after {
    content: '*';
    color: red;
    padding-left: 0.25rem;
}

@media (max-width: 767px) {
    .text-left-xs {
        text-align: left !important;
    }
}

.travelling-icon {
    margin: 0.5rem auto;
    vertical-align: middle;
    color: #ffffff;
    padding: 0.25rem;
    border-radius: 5rem;
    background: #FF5722;
    font-size: 0.675rem;
    text-align: center;
    width: 1rem;
    height: 1rem;
    display: block;
}

    .travelling-icon:before {
        left: 50%;
        top: 50%;
        position: absolute;
        transform: translate(-50%, -60%);
    }

.tooltip-status .travelling-icon {
    margin: auto;
    margin-left: 0.5rem;
    display: inline-block;
}

.text--red {
    color: red;
}

.btn-show-legend > .glyphicon {
    padding-right: 5px;
}

.btn-show-legend i {
    color: #9e9e9e;
}


.flex-col--fill {
    flex: 1 1 auto;
}

.highlighted {
    background: yellow;
    color: #222222;
}

.btn-select {
    min-width: 8rem;
}

.schedule-page-manager {
    margin-bottom: 1rem;
}

.td--md {
    width: 10rem;
}

.w--100 {
    width: 100% !important;
    min-width: 100%;
}
/*
.ios-control {
    height: 2rem !important;
    max-height: 2rem !important;
    line-height: 2rem !important;
    -webkit-appearance: menulist-button !important;
    line-height: 24px !important;
}*/

.margin-y-1 {
    margin: 1rem 0;
}

.pass-expiry {
    display: flex;
    flex-wrap: wrap;
    margin: -0.5rem;
}

    .pass-expiry > * {
        margin: 0.5rem;
    }

.pass-expiry__date-picker {
    display: flex;
    flex-wrap: nowrap;
}

.pass-expiry__time-picker {
    display: flex;
    flex-wrap: nowrap;
    justify-items: center;
}

#PassExpiryDTEx #PassExpiryDTET {
    border-right: none;
}

#lnkpassRefresh {
    min-width: 2rem;
    color: #555555;
    background-color: #eeeeee;
    border: 1px solid #ccc;
    margin-left: 0.5rem;
    min-width: 38px;
}

    #lnkpassRefresh .glyphicon {
        top: 2px;
    }

.time-divider {
    padding: 0 0.5rem;
    align-self: center;
}

@media (min-width:768px) and (max-width: 991px) {
    .text-center--sm {
        text-align: center;
    }
}

@media (min-width: 0px) and (max-width: 767px) {
    .text-center--xs {
        text-align: center !important;
    }
}

#rememberMeDiv .checkbox {
    margin-bottom: 0.75rem;
}

.password-input .glyphicon {
    margin-top: 2px;
}

#ChangePasswordModal {
    background: rgba(0, 0, 0, 0.3);
}

#SHHeadCounts .calNumSH {
    display: none;
}

select.form-control {
    max-width: 100%;
    text-overflow: ellipsis;
}

.bootstrap-select.hide-dropdown .dropdown-menu {
    display: none;
}

.document-row {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.document-row + .document-row {
    margin-top: 0.5rem;
}

.request-details {
    display: flex;
    margin: -1rem;
    padding-top: 1rem;
    padding-bottom: 2rem;
    flex-wrap: wrap;
}

    .request-details > div {
        margin: 1rem;
    }

.documents-modal.modal {
    background: #00000069;
}

@media (min-width: 768px) {
    .documents-modal.modal .modal-dialog {
        width: 750px;
    }
}

.table-borderless > tbody > tr > td,
.table-borderless > tbody > tr > th,
.table-borderless > tfoot > tr > td,
.table-borderless > tfoot > tr > th,
.table-borderless > thead > tr > td,
.table-borderless > thead > tr > th {
    border: none;
}

.pin-td-div {
    display: inline-block;
    vertical-align: middle;
}

.pin-icon {
    background: url('../images/pin-icon.svg');
    background-size: cover;
    width: 1rem;
    height: 1rem;
    display: inline-block;
    filter: invert(25%) saturate(2476%) brightness(121%);
    margin-left: 0.5rem;
}

    .btn.is-pinned > .pin-icon,
    .pin-icon.is-pinned {
        filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(21deg) brightness(118%) contrast(119%);
    }

.pin-button .pin-icon {
    margin: 0;
}

.bootstrap-select .dropdown-menu.open {
    min-height: 37px !important;
}

.bootstrap-select .dropdown-menu.inner {
    min-height: auto !important;
}
#userAlertsWrap {
    display: flex;
    gap: 0.25rem;
    cursor: pointer;
}

.user-alerts-icon .badge {
    cursor: pointer;
}

.user-alerts-icon .user-alerts-bell {
    font-size: 1.25rem;
    color: #5b5b5b;
}

.ApplicationNotificationPanel {

}

.ApplicationNotificationTable {
    overflow-y: auto;
    max-height: 70vh;
}

.ApplicationNotificationControls {
    gap: 0.5rem;
    justify-content: center;
    display:flex;
    margin-top: 1rem;
}


.application-notification + .application-notification {
    margin-top: 0.5rem;
}

.application-notification {
    display: flex;
    flex-wrap: wrap;
    padding: 1rem;
    gap: 0.5rem 1rem;
    position: relative;
    align-items: center;
    width: 35rem;
    border: 1px solid #dbdbdb;
    margin-right: 1rem;
    border-radius: 4px;
    box-shadow: 5px 5px #f5f5f5;
    cursor: default;
}

.application-notification .application-notification__icon {
    font-size: 2rem;
    flex: 0 0 auto;
}

    .application-notification .application-notification__description {
        flex: 1 1 80%;
        padding-right: 1rem;
    }

    .application-notification .application-notification__time {
        text-align: right;
        flex: 0 0 100%;
        color: #aaa;
        padding-right: 1rem;
    }

    .application-notification .application-notification__close {
        color: #a9a9a9;
        position: absolute;
        top: 0.5rem;
        right: 0.5rem;
        cursor: pointer;
    }

.main-body .btn-padding {
    padding: 6px 0;
}

.no-padding {
    padding: 0;
}

#divAbsenceSummaryForValidationWarning {
    max-height: 25rem;
    overflow-y: auto;
}











.form-wizard__question {
    display: none;
    min-height: 15rem;
}
.form-wizard__question.active {
    display: block;
}

.form-modal-message {
    margin: 1rem 0;
    text-align: center;
}

.form-wizard__navigation {
    margin: 1rem 0;
    display: flex;
    gap: 0.5rem;
    align-items: center;
    justify-content: center;
}
    .form-wizard__navigation button {
        min-width: 7rem;
    }

.form-question-image {
    max-width: 100%;
    max-width: -webkit-fill-available;
}

.signature-container {
    text-align: center;
}

.signature-canvas {
    border: 1px solid #ccc;
    height: 200px;
    width: 500px;
    margin: 1rem 0;
}

.signature-controls {
    display: block;
    margin: 0.25rem;
    text-align: center;
}

.form-stage__buttons {
    display: flex;
    gap: 0.5rem;
    margin-top:1rem;
    justify-content: center;
}

.form-question__text {
    margin-bottom: 1rem;
}

.no-wrap-col {
    white-space: nowrap;
}

#formEntryModal .form-stage .loading-image {
    padding-top: 10px;
    text-align: center;
}

.action-button-group {
    text-align:center;
}

.action-button-group .btn-xs:not(:first-child) {
    margin-left: 0.5rem;
}

.group__sub-text {
    color: #a8a8a8;
}

.multiline-text-input {
    min-height: 34px;
    max-height: 20rem;
    resize: vertical;
    padding: 7px 12px;
}

.answer-display {
    overflow-y: auto;
    max-height: 5rem;
}

.not-visible{
    visibility: hidden;
}

.signature-answer-image img {
    max-width: 300px;
}