@charset "UTF-8";
html,
body {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

body {
    font-family: 'Roboto', 'Helvetica', sans-serif;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-tap-highlight-color: rgba(0, 0, 0, 0);
    -moz-text-size-adjust: none;
    -moz-font-smoothing: antialiased;
    -ms-tap-highlight-color: rgba(0, 0, 0, 0);
    -ms-text-size-adjust: none;
    -ms-font-smoothing: antialiased;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

main {
    -webkit-overflow-scrolling: touch;
    /* very important for ios devices */
    overflow-y: auto;
    overflow-x: hidden;
    height: 100%;
    padding-left: 250px;
    will-change: left, right;
}

main.login-page,
main.normal-page {
    padding-left: 0;
    background-image: url('../images/material-bg-1.jpg');
    background-size: cover;
}

main.normal-page-with-footer {
    height: calc(100% - 50px);
}

.login-page .card-panel,
.maintenance-page .card-panel {
    background-color: rgba(255, 255, 255, 0.9);
}

a {
    cursor: pointer;
}

td {
    padding: 5px;
}

td .btn {
    margin-left: 20px;
}

p {
    margin: 5px 0;
}

.input-field .prefix {
    top: 10px;
}

nav .brand-logo,
nav .brand-logo img,
footer .brand-logo,
footer .brand-logo img {
    height: inherit;
}

nav .brand-logo img,
footer .brand-logo img {
    max-width: 100%;
}

nav .brand-logo,
footer .brand-logo {
    padding: 0;
    width: 240px;
    font-size: 0.8em;
}

footer.page-footer {
    margin-top: 0;
    padding-top: 0;
}

footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: auto;
    width: 100%;
    text-align: center;
    color: #fff;
    z-index: 999;
}

footer .brand-logo {
    position: absolute;
    left: 0;
}

footer.page-footer .container a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
}

::-webkit-input-placeholder {
    color: #BBB9B9;
}

:-moz-placeholder {
    /* Firefox 18- */
    color: #BBB9B9;
}

::-moz-placeholder {
    /* Firefox 19+ */
    color: #BBB9B9;
}

:-ms-input-placeholder {
    color: #BBB9B9;
}

.sub-navbar {
    padding: 1% 0;
}

#nav-collapser {
    position: fixed;
    left: 200px;
    top: 26%;
    background-color: #F2F2F2;
    z-index: 1000;
    border-radius: 4px;
    height: 40px;
    will-change: left, right;
}

#nav-collapser i {
    font-size: 40px;
    cursor: pointer;
}

.login-page-logo {
    width: 50%;
}

.pager {
    padding-bottom: 1%;
}

.row .no-result {
    padding-top: 1%;
}

.pager-label:not(:first-child) {
    padding-left: 10px;
}

.pager material-select {
    display: inline-block;
    max-width: 66px;
}

.pager .select-dropdown {
    text-align: center;
}

#loading {
    position: absolute;
    left: 48%;
    top: 45%;
    z-index: 3;
}

#loading_blur {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-color: #000000;
    opacity: 0.7;
}

.linear-progress {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    margin-top: 0;
    z-index: 5000;
    height: 8px;
}

.content {
    margin: 0 0 10px 0;
    padding: 0 !important;
}

.side-nav.fixed {
    height: 100%;
    width: 240px;
    will-change: left, right;
    border: 0;
}

.side-nav.fixed a,
.side-nav.fixed i.left {
    height: inherit;
    line-height: inherit;
}

.select-wrapper ul.dropdown-content.select-dropdown {
    margin-left: 0 !important;
}

.success {
    background-color: #4caf50;
}

.error {
    background-color: #f44336;
}

.success-text {
    color: #4caf50;
}

.error-text {
    color: #f44336;
}

.input-field label.active {
    font-size: 1.1em;
}

.switch label {
    font-size: 0.9em;
}

.invisible {
    visibility: hidden;
}

.sort.left {
    margin-right: 2px;
}

.hidden-print {
    display: table-cell;
}

.btn-group {
    display: inline-flex;
}

.btn-group > a:first-child {
    margin-right: 8px;
}

.toast .material-icons {
    vertical-align: bottom;
}

.modal-small {
    max-width: 700px;
}

.bottom-right-btn {
    position: fixed;
    right: 23px;
    bottom: 23px;
}

.desktop-invisible {
    visibility: hidden;
}

.bold-text,
.bold {
    font-weight: bold !important;
}

.normal-text {
    font-weight: normal !important;
}

.italic-text {
    font-style: italic !important;
}

.text-small {
    font-size: 0.85em !important;
}

.login-form {
    width: 50%;
    margin-top: 16%;
}

.login-page .error-text {
    margin-left: 3em;
}

.no-margin {
    margin: 0 !important;
}

.no-margin-top {
    margin-top: 0 !important;
}

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.no-padding-left {
    padding-left: 0 !important;
}

.no-padding-right {
    padding-right: 0 !important;
}

.no-left {
    left: 0 !important;
}

.no-border {
    border: none !important;
}

.align-baseline {
    vertical-align: baseline;
}

th {
    border-radius: 0;
}

.btn {
    padding: 0 0.5rem;
}

.visible {
    visibility: visible;
}

.invisible {
    visibility: hidden;
}

.dropdown-content li > a,
.dropdown-content li > span {
    color: rgba(0, 0, 0, 0.87);
}

th.sort-header {
    background-image: url("../images/sort.gif");
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
    padding-right: 16px;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    -khtml-user-select: none;
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* Internet Explorer/Edge */
    user-select: none;
    /* Non-prefixed version, currently */
}

th.sort-header.asc {
    background-image: url("../images/asc.gif");
}

th.sort-header.desc {
    background-image: url("../images/desc.gif");
}

.modal-big {
    width: 95%;
    max-height: 92%;
    min-height: 92%;
}

.modal-big.open {
    top: 4% !important;
}

.tab-content-section {
    padding-top: 15px;
}

.model-title {
    font-size: 1.3em;
}

.breadcrumb,
.breadcrumb:before,
.breadcrumb:last-child {
    color: inherit;
}

.breadcrumb:before {
    font-size: 18px;
}

.cursor-pointer {
    cursor: pointer;
}

.position-relative {
    position: relative;
}

.inline-block {
    display: inline-block !important;
}

.block {
    display: block !important;
}

.materialboxed {
    width: 100%;
}

.side-nav.fixed a,
.side-nav .collapsible-header,
.side-nav.fixed .collapsible-header {
    padding: 0 15px;
}

.side-nav.fixed .collapsible-header i {
    width: auto;
}

.side-nav .collapsible-body li a,
.side-nav.fixed .collapsible-body li a {
    padding: 0 0 0 30px;
}

.side-nav li > a > i,
.side-nav li > a > [class^="mdi-"],
.side-nav li > a > [class*="mdi-"],
.side-nav li > a > i.material-icons {
    margin: 0 15px 0 0;
}

.col-action-btn {
    min-width: 100px;
    width: 125px;
}

.width-auto {
    width: auto !important;
}

.card .card-title {
    font-size: 1.8em;
}

.modal-content .picker--opened .picker__holder {
    background: transparent;
}

.tabs .indicator {
    height: 3px;
}

.tabs > li > a.active {
    font-weight: bold;
}

.switch {
    height: 3rem;
}

input[type="text"]:disabled {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #9e9e9e;
    color: inherit;
}

.active-section-title {
    font-size: 1.3em;
}

.tabs {
    overflow-x: hidden;
}

.side-nav .collapsible-body,
.side-nav.fixed .collapsible-body {
    padding: 0;
}

.align-baseline {
    vertical-align: baseline;
}

.align-middle {
    vertical-align: middle;
}

.align-top {
    vertical-align: top;
}

.select-wrapper + label {
    top: -5px;
}

.sidenav-footer p {
    font-size: 0.8em;
    line-height: 25px;
}

i.left {
    margin-right: 10px;
}

.card-minimum-padding {
    padding: 10px;
}

.select-wrapper ul li {
    min-height: 40px;
}

.select-wrapper ul li > a,
.select-wrapper ul li > span {
    padding: 10px;
    line-height: 20px;
}

.picker__footer .btn-flat {
    margin-left: 5px;
}

.material-tooltip {
    z-index: 8000;
}

.sidebar-logo img {
    width: 100%;
    vertical-align: middle;
}

.picker__header select.browser-default {
    position: static;
    pointer-events: all;
    height: 2em;
    opacity: 1;
}

select:focus {
    outline: none;
}

.dropdown-content li > a > i {
    margin: 0 12px 0 0;
}

.checkbox-field {
    margin-top: 1rem;
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
}

.input-field.col .dropdown-content [type="checkbox"] + label {
    top: -10px;
}

.required-asterisk {
    margin-left: 6px;
    color: red;
}

.completedSubtask {
    width: 25px;
}

[type="checkbox"] + label {
    position: relative;
    padding-left: 1px;
    cursor: pointer;
    height: 25px;
    line-height: 25px;
    font-size: 1rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.taskCard {
    padding: 12px;
}

button {
    margin-left: 8px;
}

.file-container {
    border: 2px dashed #ccc;
    border-radius: 10px;
    min-height: 240px !important;
    position: relative;
}

.file-container.active {
    border: 4px dotted #000;
}

.file-container i {
    margin: 24px 0;
    font-size: 7rem;
    display: block;
}

.file-container .drag-caption {
    margin-top: 5px;
    margin-bottom: 0;
}

.file-container input[type="file"] {
    cursor: pointer;
    opacity: 0;
    filter: aplha(opacity=0);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.task-section-width {
    width: 400px;
    margin-left: 25px;
    display: inline-block;
}

.border-right {
    border-right: 1px solid #9e9e9e;
}

.task-list-container {
    display: flex;
    overflow-x: auto;
}

.task-recursion-container {
    display: inline-block;
}

.task-list-container .task-recursion-container:last-child .task-section-width .task-list-card-panel {
    margin-right: 25px;
}

#closeButton {
    margin-left: 10px;
}

/* ========================== Sentry Error Handler Dialog =====================*/
.sentry-error-embed * {
    font-family: 'Roboto', 'Helvetica', sans-serif !important;
}

.sentry-error-embed-wrapper {
    z-index: 1000 !important;
}

.sentry-error-embed .form-submit .btn {
    border: none !important;
    padding: 0 15px !important;
}

/* ========================== END - Sentry Error Handler Dilaog =====================*/

/* =========================== Responsive Design ============================ */

/* MDpi, HiDpi and small laptops*/

@media only screen and (max-width: 1440px) {
    html {
        font-size: 14px;
    }
}

@media only screen and (max-width: 1300px) {
    html {
        font-size: 12px;
    }

    main.row {
        margin-bottom: 0;
    }

    .mobile-invisible {
        visibility: hidden;
    }

    .side-nav.fixed {
        padding-bottom: 0;
    }

    li.sidenav-footer {
        padding: 0 !important;
        font-size: 12px;
        margin-top: 20px;
        line-height: 1.8;
    }

    .footer-copyright .container {
        width: 90%;
    }

    .desktop-invisible {
        visibility: visible;
    }

    .show-on-desktop-only,
    footer.page-footer {
        display: none;
    }

    .bottom-right-btn {
        bottom: 8px;
        right: 8px;
    }

    .card .card-content .card-title {
        font-size: 1.3em;
        line-height: 30px;
    }

    .card-panel {
        padding: 10px;
    }
}

/* Common for all Mobile and Tablets */

@media only screen and (max-width: 1050px) {
    html,
    body {
        overflow: auto;
    }

    main {
        overflow-y: scroll;
    }

    main.no-scroll {
        overflow: hidden;
    }

    ::-webkit-scrollbar {
        display: none;
    }

    .pager h4 {
        font-size: 1.6em;
    }

    table {
        font-size: 0.9em;
    }

    .login-form {
        width: 70%;
    }
}

/* Common for all Mobile and Tablets in portrait mode */

@media only screen and (max-width: 992px) {
    body {
        overflow-y: auto;
    }

    main.row {
        padding-left: 0;
        margin: 0 auto;
    }

    .card-panel,
    .modal .modal-content {
        padding: 10px;
    }

    .login-form,
    .modal {
        width: 90%;
    }

    .content {
        margin: 0;
        padding: 0.75em !important;
    }

    .pager .input-field {
        width: 8%;
    }

    .sub-navbar-holder {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1300;
        width: 100%;
    }

    .side-nav.fixed {
        height: 100%;
        margin-top: 0;
        padding-bottom: 0;
        z-index: 1400;
    }

    .side-nav > li:first-child {
        padding: 10px 0;
        border-bottom: 1px solid #ccc;
        line-height: 1.5;
    }

    .side-nav li:first-child a img {
        width: 100%;
    }

    .menu-btn,
    .menu-btn i {
        line-height: 60px;
        height: 60px;
    }

    .menu-btn i {
        font-size: 2.7em;
        color: #fff;
    }

    #dropdown-top-nav {
        left: auto !important;
        right: 0;
    }

    .no-padding-on-med-and-down {
        padding: 0 !important;
    }

    .no-left-on-med-and-down {
        left: 0 !important;
    }

    .no-margin-on-med-and-down {
        margin: 0 !important;
    }

    .side-nav li > a > i,
    .side-nav li > a > [class^="mdi-"],
    .side-nav li > a > [class*="mdi-"],
    .side-nav li > a > i.material-icons {
        margin: 0 15px 0 0;
    }

    .side-nav.fixed a,
    .side-nav .collapsible-header,
    .side-nav.fixed .collapsible-header {
        padding: 0 10px;
    }

    .table-container {
        overflow-x: auto;
    }

    .col-action-btn {
        min-width: 80px;
    }

    .tab-content-section {
        padding-top: 10px;
    }
}

/* Only for Tablets and large phablets in landscape mode */

@media only screen and (min-width: 601px) and (max-width: 992px) {
    .row .col.m8.login-box,
    .row .col.m8.reset-password-box {
        margin-left: 16%;
        margin-top: 10%;
    }
}

/* For Mobiles Only */

@media only screen and (max-width: 600px) {
    header {
        height: 56px;
    }

    main.row {
        height: calc(100% - 56px);
    }

    .login-box img {
        width: 100%;
    }

    #loading {
        left: 44%;
    }

    .col-action-btn {
        min-width: auto;
        width: auto;
    }
}

/* Tablets, Mobiles and higher */

@media only screen and (min-width: 993px) {
    #toast-container {
        bottom: 8%;
        top: auto;
    }

    .row .col.l6.login-box,
    .row .col.l6.reset-password-box {
        margin-left: 24%;
        margin-top: 10%;
    }

    .no-margin-on-large {
        margin: 0 !important;
    }
}

/* Landscape Tablets, Small Laptops | Not for Mobile */

@media only screen and (min-width: 993px) and (max-width: 1620px) {
    .side-nav.fixed a,
    .side-nav .collapsible-header,
    .side-nav.fixed .collapsible-header {
        padding: 0 0 0 12px;
    }

    .side-nav li {
        padding: 0;
    }

    .side-nav.fixed,
    nav .brand-logo {
        width: 220px;
    }

    .side-nav li > a > i,
    .side-nav li > a > [class^="mdi-"],
    .side-nav li > a > [class*="mdi-"],
    .side-nav li > a > i.material-icons {
        margin: 0 15px 0 0;
    }

    .side-nav .collapsible-body li a,
    .side-nav.fixed .collapsible-body li a {
        padding: 0 0 0 20px;
    }

    #nav-collapser {
        left: 180px;
    }

    main {
        padding-left: 228px;
    }
}

/* ==================== Responsive Design ENDS ==================*/

/* ======================= Animations =========================== */

#nav-collapser.nav-present {
    -webkit-animation: navCollapserSlideIn .3s ease-in-out;
    -moz-animation: navCollapserSlideIn .3s ease-in-out;
    animation: navCollapserSlideIn .3s ease-in-out;
}

@-webkit-keyframes navCollapserSlideIn {
    0% {
        -webkit-transform: translate3d(-200px, 0, 0) scale(.97);
    }
    100% {
        -webkit-transform: translate3d(0, 0, 0) scale(1);
    }
}

@-moz-keyframes navCollapserSlideIn {
    0% {
        -moz-transform: translate3d(-200px, 0, 0) scale(.97);
    }
    100% {
        -moz-transform: translate3d(0, 0, 0) scale(1);
    }
}

@keyframes navCollapserSlideIn {
    0% {
        transform: translate3d(-200px, 0, 0) scale(.97);
    }
    100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
}

#nav-collapser.nav-absent {
    -webkit-animation: navCollapserSlideOut .25s ease-in-out;
    -moz-animation: navCollapserSlideOut .25s ease-in-out;
    animation: navCollapserSlideOut .25s ease-in-out;
}

@-webkit-keyframes navCollapserSlideOut {
    0% {
        -webkit-transform: translate3d(0, 0, 0) scale(.97);
    }
    100% {
        -webkit-transform: translate3d(-200px, 0, 0) scale(1);
    }
}

@-moz-keyframes navCollapserSlideOut {
    0% {
        -moz-transform: translate3d(0, 0, 0) scale(.97);
    }
    100% {
        -moz-transform: translate3d(-200px, 0, 0) scale(1);
    }
}

@keyframes navCollapserSlideOut {
    0% {
        transform: translate3d(0, 0, 0) scale(.97);
    }
    100% {
        transform: translate3d(-200px, 0, 0) scale(1);
    }
}

/*Nav Expanding Open Effect*/

.side-nav.slide-in {
    -webkit-animation: navSlideIn .3s ease-in-out;
    -moz-animation: navSlideIn .3s ease-in-out;
    animation: navSlideIn .3s ease-in-out;
}

@-webkit-keyframes navSlideIn {
    0% {
        -webkit-transform: translate3d(-240px, 0, 0) scale(.97);
    }
    100% {
        -webkit-transform: translate3d(0, 0, 0) scale(1);
    }
}

@-moz-keyframes navSlideIn {
    0% {
        -moz-transform: translate3d(-240px, 0, 0) scale(.97);
    }
    100% {
        -moz-transform: translate3d(0, 0, 0) scale(1);
    }
}

@keyframes navSlideIn {
    0% {
        transform: translate3d(-240px, 0, 0) scale(.97);
    }
    100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
}

/*Nav Shrinking slide-out Effect*/

.side-nav.slide-out {
    -webkit-animation: navSlideOut .3s ease-in-out;
    -moz-animation: navSlideOut .3s ease-in-out;
    animation: navSlideOut .3s ease-in-out;
}

@-webkit-keyframes navSlideOut {
    0% {
        -webkit-transform: translate3d(0, 0, 0) scale(1);
    }
    100% {
        -webkit-transform: translate3d(-240px, 0, 0) scale(.97);
        left: -240px;
    }
}

@-moz-keyframes navSlideOut {
    0% {
        -moz-transform: translate3d(0, 0, 0) scale(1);
    }
    100% {
        -moz-transform: translate3d(-240px, 0, 0) scale(.97);
        left: -240px;
    }
}

@keyframes navSlideOut {
    0% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    100% {
        transform: translate3d(-240px, 0, 0) scale(.97);
        left: -240px;
    }
}

/*Content Sliding Open Effect*/

main.nav-present:not(.login-page) {
    -webkit-animation: contentWithNav .3s ease-in-out;
    -moz-animation: contentWithNav .3s ease-in-out;
    animation: contentWithNav .3s ease-in-out;
}

@-webkit-keyframes contentWithNav {
    0% {
        padding-left: 0;
    }
    100% {
        padding-left: 250px;
    }
}

@-moz-keyframes contentWithNav {
    0% {
        padding-left: 0;
    }
    100% {
        padding-left: 250px;
    }
}

@keyframes contentWithNav {
    0% {
        padding-left: 0;
    }
    100% {
        padding-left: 250px;
    }
}

/*Content Sliding Closed Effect*/

main.nav-absent:not(.login-page) {
    -webkit-animation: contentWithoutNav .3s ease-in-out;
    -moz-animation: contentWithoutNav .3s ease-in-out;
    animation: contentWithoutNav .3s ease-in-out;
}

@-webkit-keyframes contentWithoutNav {
    0% {
        padding-left: 250px;
    }
    100% {
        padding-left: 0;
    }
}

@-moz-keyframes contentWithoutNav {
    0% {
        padding-left: 250px;
    }
    100% {
        padding-left: 0;
    }
}

@keyframes contentWithoutNav {
    0% {
        padding-left: 250px;
    }
    100% {
        padding-left: 0;
    }
}

/*========================= KEYFRAMES ======================== */

/* ======= slideInRight ========== */

/* Chrome, Safari, Opera */

@-webkit-keyframes slideInRight {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    100% {
        -webkit-transform: translate3d(0, 0, 0);
    }
}

/* Firefox */

@-moz-keyframes slideInRight {
    0% {
        -moz-transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    100% {
        -moz-transform: translate3d(0, 0, 0);
    }
}

/* Old Opera */

@-o-keyframes slideInRight {
    0% {
        -o-transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    100% {
        -o-transform: translate3d(0, 0, 0);
    }
}

/* General Syntax */

@keyframes slideInRight {
    0% {
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}

/* ======= slideInLeft ========== */

/* Chrome, Safari, Opera */

@-webkit-keyframes slideInLeft {
    0% {
        -webkit-transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    100% {
        -webkit-transform: translate3d(0, 0, 0);
    }
}

/* Firefox */

@-moz-keyframes slideInLeft {
    0% {
        -moz-transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    100% {
        -moz-transform: translate3d(0, 0, 0);
    }
}

/* Old Opera */

@-o-keyframes slideInLeft {
    0% {
        -o-transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    100% {
        -o-transform: translate3d(0, 0, 0);
    }
}

/* General Syntax */

@keyframes slideInLeft {
    0% {
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}
