﻿html, body {
    height: 100%;
}

body {
    margin: 0;
    min-width: 600px;
    font-size: 1.2em;
}
/* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */
.body-content {
    padding: 15px 15px 0;
}

/* Carousel */
.carousel-caption p {
    font-size: 20px;
    line-height: 1.4;
}

/* Make .svg files in the carousel display properly in older browsers */
.carousel-inner .item img[src$=".svg"] {
    width: 100%;
}

/* QR code generator */
#qrCode {
    margin: 15px;
}

button > *,
a > * {
    pointer-events: none;
}

/* Hide/rearrange for smaller screens */
@media screen and (max-width: 767px) {
    /* Hide captions */
    .carousel-caption {
        display: none;
    }
}

.brandTouchlogo {
    width: 190px;
    height: 50px;
    background: transparent url('../images/VisionTouch.svg') 0% 45% no-repeat;
    background-size: contain;
    padding: 0;
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    border: 0;
}

th, td {
    word-wrap: hyphenate;
    word-break: normal;
    white-space: normal;
}

.protected-input {
    -webkit-text-security: disc;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.wrapper {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 0 -40px; /* the bottom margin is the negative value of the footer's height */
}

.push {
    height: 40px; /* .push must be the same height as .footer */
}

.footer {
    border-top: 1px solid #00205d;
    height: 30px;
    margin-top: 10px;
}

.navbar-expand .navbar-nav .nav-link {
    padding: 0 0.5rem !important;
}

/*//Copy this css*/
.navbar .navbar-nav .nav-item:not(:last-child) {
    border-right: 2px solid #fff;
}

.logo {
    display: inline-flex;
    width: 190px;
    height: 50px;
    background: transparent url('../images/Logo.svg') 0% 45% no-repeat;
    background-size: contain;
    margin: 0 5px;
}

#loggedinUserHeader, #PinnedinUserHeader {
    display: inline-flex;
    width: auto;
    color: #fff;
    font-size: 0.8em;
    position: relative;
    margin-right: 6px;
    line-height: 2;
}

.LoggedinUser, .PinnedinUser {
    position: absolute;
    z-index: 100000;
    top: 60px;
    right: 5px;
    color: #000;
    width: 600px;
}


.btco-menu li > a {
    padding: 10px 15px;
    color: #000;
}

.btco-menu .active a:focus,
.btco-menu li a:focus,
.navbar > .show > a:focus {
    background: transparent;
    outline: 0;
}

.dropdown-menu {
    margin: 7px 0 0;
    border: 1px solid #003190;
    border-radius: 0 0 0.25rem 0.25rem;
    z-index: 1021;
}


    .dropdown-menu .show > .dropdown-toggle::after {
        transform: rotate(-90deg);
    }

    .dropdown-menu .dropdown-menu {
        margin: 0;
        border-radius: 0 0.25rem 0.25rem 0.25rem;
        max-height:500px;
        overflow:auto;
    }

.dropdown-item {
    font-size: 1.4em;
    padding: 0.5rem 1.5rem
}

.location-bar {
    padding: 5px 23px;
}




.file-field {
    position: relative;
}

.tab-content .card {
    margin-top: -1px;
    border-radius: 0 0 0.25rem 0.25rem !important;
}


.waves-effect {
    position: relative;
    cursor: pointer;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    z-index: 1;
}

.file-field .file-path-wrapper {
    overflow: hidden;
    padding-left: 10px;
    height: 2.5rem;
}

.file-field input[type=file] {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    cursor: pointer;
    opacity: 0;
}

.file-field input.file-path {
    width: 100%;
    height: 2.1rem;
    border: 0;
    border-bottom: solid 2px #ccc;
}

.datepicker table .dow {
    color: #fff;
    background-color: #003190;
    border-radius: 0 !important;
}


.datepicker table tr td.disabled {
    color: #eee !important;
}


#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2000;
}

#loader {
    display: block;
    position: relative;
    left: 50%;
    top: 50%;
    width: 150px;
    height: 150px;
    margin: -75px 0 0 -75px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #3498db;
    -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
    animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    z-index: 1001;
}

    #loader:before {
        content: "";
        position: absolute;
        top: 5px;
        left: 5px;
        right: 5px;
        bottom: 5px;
        border-radius: 50%;
        border: 3px solid transparent;
        border-top-color: #e74c3c;
        -webkit-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
        animation: spin 3s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    }

    #loader:after {
        content: "";
        position: absolute;
        top: 15px;
        left: 15px;
        right: 15px;
        bottom: 15px;
        border-radius: 50%;
        border: 3px solid transparent;
        border-top-color: #f9c922;
        -webkit-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
        animation: spin 1.5s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    }

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(0deg); /* IE 9 */
        transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */
    }

    100% {
        -webkit-transform: rotate(360deg); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(360deg); /* IE 9 */
        transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(0deg); /* IE 9 */
        transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */
    }

    100% {
        -webkit-transform: rotate(360deg); /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(360deg); /* IE 9 */
        transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */
    }
}

#loader-wrapper .loader-section {
    position: fixed;
    top: 0;
    width: 50%;
    height: 100%;
    background-color: rgba(0,0,0,.5);
    z-index: 1000;
    -webkit-transform: translateX(0); /* Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: translateX(0); /* IE 9 */
    transform: translateX(0); /* Firefox 16+, IE 10+, Opera */
}

    #loader-wrapper .loader-section.section-left {
        left: 0;
    }

    #loader-wrapper .loader-section.section-right {
        right: 0;
    }

.loaded #loader {
    opacity: 0;
}

.loaded #loader-wrapper {
    visibility: hidden;
}

/* JavaScript Turned Off */
.no-js #loader-wrapper {
    display: none;
}

.no-js h1 {
    color: #222222;
}

.form-check-input {
    max-width: 50px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}



.jstree-themeicon-custom {
    color: #4682b4;
}

.bg-gradient-primary .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
    background-color: var(--dark);
    border-radius: 0.25rem;
}

.search-field {
    height: calc(1.8125rem + 2px);
    border: solid 1px #ccc;
    width: calc(100% - 42px);
}

.search-SortLink.orderAscending:before {
    font-family: "Font Awesome 5 Free";
    content: "\f309";
    display: inline-block;
    padding-right: 3px;
    vertical-align: middle;
    font-weight: 900;
}

.search-SortLink.orderDescending::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f30c";
    display: inline-block;
    padding-right: 3px;
    vertical-align: middle;
    font-weight: 900;
}

.search-dropDown {
    color: #666;
    padding: 0 !important;
    margin-left: -1px;
    width: calc(100% - 42px) !important;
    height: calc(1.8125rem + 2px);
}

    .search-dropDown .placeholder {
        color: #666;
    }

    .search-dropDown > option {
        color: #000;
    }

.bootstrap-select {
    width: 100%;
}

    .bootstrap-select.form-control-sm.search-dropDown .dropdown-toggle {
        border: solid 1px #ccc;
        height: 100% !important;
    }

    .bootstrap-select > .dropdown-toggle {
        white-space: normal !important;
    }

    .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
        margin-top: 2px;
    }

.callout {
    border: 0;
    border-left: solid 3px #003190;
    background-color: #d1ecf1 !important;
    box-shadow: none;
    /*height:100%;*/
}

    .callout::after {
        content: '\200B';
        visibility: hidden;
    }

    .callout:disabled {
        background-color: #d1ecf1 !important;
    }

    .callout .dropdown-toggle.disabled {
        background: none;
        border: 0;
        border-left: solid 3px #003190;
        background-color: #d1ecf1 !important;
        box-shadow: none;
        opacity: 1;
    }

        .callout .dropdown-toggle.disabled::after {
            content: '\200B';
            visibility: hidden;
        }

.TabWizard {
    display: inline-block;
    padding: 0;
    margin: 0;
    background-color: #fff;
}

    .TabWizard li.nav-item {
        display: inline-block;
        padding: 0;
        position: relative;
        min-width: 50px;
        text-decoration: none;
        -webkit-clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%, 15px 50%);
        clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%, 15px 50%);
        margin-right: -13px;
    }

        .TabWizard li.nav-item a {
            padding: .5rem 1.5rem !important;
        }

        .TabWizard li.nav-item#last {
            -webkit-clip-path: polygon(0 0, calc(100% - 0px) 0, 100% 50%, calc(100% - 0px) 100%, 0 100%, 15px 50%);
            clip-path: polygon(0 0, calc(100% - 0px) 0, 100% 50%, calc(100% - 0px) 100%, 0 100%, 15px 50%);
        }

        /* first link should not have anything cliped on the left side */
        .TabWizard li.nav-item:first-child {
            -webkit-clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%);
            clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%);
        }
            /* first link should not have anything cliped on the left side */
            .TabWizard li.nav-item:first-child a {
                padding: .5rem 1rem !important;
            }

table.tableBodyScroll tbody {
    display: block;
    max-height: 300px;
    overflow-y: scroll;
}

    table.tableBodyScroll thead, table.tableBodyScroll tbody tr {
        display: table;
        width: 100%;
        table-layout: fixed;
    }

.table th, .table td {
    padding: 0.5rem;
    vertical-align: middle;
}



.top-right {
    top: 85px;
    right: 5px;
}


.toast-container > .toast {
    min-width: 350px !important;
}


tr:target {
    transition: background-color 1s ease-in;
    -webkit-transition: background-color 1s ease-in;
    -moz-transition: background-color 1s ease-in;
    background-color: yellow !important;
}


.bg-tolerance {
    background: rgb(255,16,0);
    background: linear-gradient(90deg, rgba(255,16,0,1) 0%, rgba(255,201,0,1) 10%, rgba(255,252,0,1) 20%, rgba(0,255,16,1) 50%, rgba(255,252,0,1) 80%, rgba(255,201,0,1) 90%, rgba(255,0,0,1) 100%);
}



.modal-xxl {
    max-width: 90%;
}


h2 .InProgress :before {
    content: "";
    display: block;
    background: url('../images/ProgressPie.png') center left no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    float: left;
    margin: 5px 6px 0 0;
}

h2.InProgress:before {
    content: "";
    display: block;
    background: url('../images/ProgressPie.png') center left no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    float: left;
    margin: 5px 6px 0 0;
}

/* .squaredTwo */
.CheckBox-Tick {
    display: inline-block;
    /*float: left;*/
    width: 48px;
    height: 48px;
    position: relative;
    background: #fcfff4;
    background: -webkit-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
    background: linear-gradient(to bottom, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
    box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0, 0, 0, 0.5);
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    vertical-align: top;
}

    .CheckBox-Tick label {
        width: 48px;
        height: 48px;
        cursor: pointer;
        position: absolute;
        left: -3px;
        top: 0;
        /*background: -webkit-linear-gradient(top, #222222 0%, #45484d 100%);
  background: linear-gradient(to bottom, #222222 0%, #45484d 100%);
  box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px white;*/
    }

        .CheckBox-Tick label:after {
            content: '';
            width: 38px;
            height: 16px;
            position: absolute;
            top: 14px;
            left: 10px;
            border: 8px solid green;
            border-top: none;
            border-right: none;
            background: transparent;
            opacity: 0;
            -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
        }

        .CheckBox-Tick label:hover::after {
            opacity: 0.3;
        }

    .CheckBox-Tick input[type=checkbox] {
        visibility: hidden;
    }

        .CheckBox-Tick input[type=checkbox]:checked + input[type="hidden"] + label:after,
        .CheckBox-Tick input[type=checkbox]:checked + label:after {
            opacity: 1;
        }

    .CheckBox-Tick span {
        position: absolute;
        left: 55px;
        line-height: 1.2;
    }

th .CheckBox-Tick {
    width: 36px;
    height: 36px;
    display: inline-block;
}

    th .CheckBox-Tick label {
        width: 36px;
        height: 36px;
    }

        th .CheckBox-Tick label:after {
            content: '';
            width: 30px;
            height: 12px;
        }

        th .CheckBox-Tick label:after {
            width: 30px;
            height: 12px;
            top: 5px;
            left: 0px;
        }

td .CheckBox-Tick {
    width: 48px;
    height: 48px;
    display: block;
}

    td .CheckBox-Tick label {
        width: 48px;
        height: 48px;
    }

        td .CheckBox-Tick label:after {
            content: '';
            width: 30px;
            height: 12px;
        }

        td .CheckBox-Tick label:after {
            width: 30px;
            height: 12px;
            top: 10px;
            left: 5px;
        }

.Results-Entry-CheckBox-Tick {
    display: inline-block;
    float: left;
    width: 46px;
    height: 46px;
    position: relative;
    background: #fcfff4;
    background: -webkit-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
    background: linear-gradient(to bottom, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
    box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0, 0, 0, 0.5);
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

td .Results-Entry-CheckBox-Tick {
    float: none;
    margin: 10px auto;
}


.Results-Entry-CheckBox-Tick label {
    width: 46px;
    height: 46px;
    cursor: pointer;
    position: absolute;
    left: 0;
    top: 0;
    margin: 0;
    /*background: -webkit-linear-gradient(top, #222222 0%, #45484d 100%);
  background: linear-gradient(to bottom, #222222 0%, #45484d 100%);
  box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px white;*/
}

    .Results-Entry-CheckBox-Tick label:after {
        content: '';
        width: 35px;
        height: 14px;
        position: absolute;
        top: 30%;
        left: 15%;
        border: 8px solid green;
        border-top: none;
        border-right: none;
        background: transparent;
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

/*.Results-Entry-CheckBox-Tick label:hover::after {
        opacity: 0.3;
    }*/

.Results-Entry-CheckBox-Tick input[type=checkbox] {
    visibility: hidden;
    width: 46px;
    height: 46px;
}

    .Results-Entry-CheckBox-Tick input[type=checkbox]:checked + input[type="hidden"] + label:after,
    .Results-Entry-CheckBox-Tick input[type=checkbox]:checked + label:after {
        opacity: 1;
    }

.Results-Entry-CheckBox-Tick span {
    font-size: 1.2em;
    position: absolute;
    left: 60px;
    top: 0px;
    line-height: 46px;
}


.RadioBox-Tick, .RadioPass-Tick, .RadioFail-Tick {
    /*float: left;*/
    display: inline-block;
    position: relative;
    width: auto;
    margin-right: 65px;
}


    .RadioBox-Tick input[type=radio], .RadioPass-Tick input[type=radio], .RadioFail-Tick input[type=radio] {
        visibility: hidden;
        position: absolute;
    }

    .RadioBox-Tick label, .RadioPass-Tick label, .RadioFail-Tick label {
        display: block;
        position: relative;
        font-size: 1.4em;
        padding: 0 0 0 80px;
        z-index: 9;
        cursor: pointer;
        -webkit-transition: all 0.25s linear;
        height: 75px;
        line-height: 75px;
        /*width: 100%;*/
        vertical-align: middle;
        /*min-width: 180px;*/
    }

    td .RadioBox-Tick label, .RadioPass-Tick label, .RadioFail-Tick label {
        font-size: 1.5em;
    }

.cell .RadioBox-Tick label, .cell .RadioPass-Tick label, .cell .RadioFail-Tick label {
    padding: 0 90px 0 0;
}

.RadioBox-Tick:hover label {
    color: #666;
}

.RadioPass:hover label {
    color: rgb(169,219,128);
}

.RadioFail:hover label {
    color: rgb(169,219,128);
}

.RadioBox-Tick .check, .RadioPass-Tick .check, .RadioFail-Tick .check {
    display: block;
    position: absolute;
    border: 5px solid #AAA;
    border-radius: 100%;
    height: 75px;
    width: 75px;
    top: 0;
    left: 0;
    z-index: 5;
    transition: border .25s linear;
    -webkit-transition: border .25s linear;
}

.cell .RadioBox-Tick .check, .cell .RadioPass-Tick .check, .cell .RadioFail-Tick .check {
    left: 90px;
}

.RadioBox-Tick .check::before, .RadioPass-Tick .check::before, .RadioFail-Tick .check::before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 100%;
    height: 65px;
    width: 65px;
    top: 0;
    left: 0;
    margin: auto;
    transition: background 0.25s linear;
    -webkit-transition: background 0.25s linear;
}

.RadioBox-Tick:hover .check, .RadioPass-Tick:hover .check, .RadioFail-Tick:hover .check {
    border-color: #666;
}

.RadioBox-Tick input[type=radio]:checked ~ .check {
    border-color: #ccc;
}

    .RadioBox-Tick input[type=radio]:checked ~ .check::before {
        background: #000;
    }

.RadioBox-Tick input[type=radio]:checked ~ label {
    color: #000;
}

.RadioPass-Tick input[type=radio]:checked ~ .check {
    border-color: rgb(169,219,128);
}

    .RadioPass-Tick input[type=radio]:checked ~ .check::before {
        background: rgb(169,219,128); /* Old browsers */
        background: -moz-linear-gradient(top, rgba(169,219,128,1) 0%, rgba(150,197,111,1) 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(top, rgba(169,219,128,1) 0%,rgba(150,197,111,1) 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, rgba(169,219,128,1) 0%,rgba(150,197,111,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a9db80', endColorstr='#96c56f',GradientType=0 ); /* IE6-9 */
    }

.RadioPass-Tick input[type=radio]:checked ~ label {
    color: rgb(169,219,128);
}

.RadioFail-Tick input[type=radio]:checked ~ .check {
    border-color: rgb(255,48,25);
}

    .RadioFail-Tick input[type=radio]:checked ~ .check::before {
        background: rgb(255,48,25); /* Old browsers */
        background: -moz-linear-gradient(top, rgba(255,48,25,1) 0%, rgba(207,4,4,1) 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(top, rgba(255,48,25,1) 0%,rgba(207,4,4,1) 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, rgba(255,48,25,1) 0%,rgba(207,4,4,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3019', endColorstr='#cf0404',GradientType=0 ); /* IE6-9 */
    }

.RadioFail-Tick input[type=radio]:checked ~ label {
    color: rgb(255,48,25);
}



.accordion > .card:last-of-type {
    border-bottom: 1px solid rgba(0,0,0,.125);
}



.ui-keyboard {
    padding: 5px 5px 10px;
    background-color: #EEF0ED;
    z-index: 2000;
    float: left;
    min-width: 10rem;
    font-size: 0.9rem;
    color: #212529;
    text-align: left;
    list-style: none;
    box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 18%);
}



.ui-keyboard-button.btn {
    font-size: 1.25em;
}


.bootstrap-select .dropdown-menu li a {
    font-size: 1.25em;
}


@media (min-width: 480px) and (max-width: 767px) {

    .ui-keyboard-button.btn {
        font-size: 1.65em;
    }



    .ui-keyboard div {
        font-size: 0.85rem !important;
    }

    .numericKeboard.ui-keyboard div {
        font-size: 1.1rem !important;
    }
}

@media (min-width: 768px) {

    .ui-keyboard-button.btn {
        font-size: 1.75em;
    }

    .bootstrap-datetimepicker-widget.dropdown-menu {
        width: 21rem;
    }

    .bootstrap-datetimepicker-widget table th,
    .bootstrap-datetimepicker-widget table td {
        height: 25px !important;
        line-height: 25px !important;
        width: 25px !important;
        font-size: 1.2em;
    }
}

@media (min-width: 992px) {
    .ui-keyboard-button.btn {
        font-size: 1.85em;
    }

    .bootstrap-datetimepicker-widget.dropdown-menu {
        width: 23rem;
    }

    .bootstrap-datetimepicker-widget table th,
    .bootstrap-datetimepicker-widget table td {
        height: 28px !important;
        line-height: 28px !important;
        width: 28px !important;
        font-size: 1.3em;
    }
}

@media (min-width: 1200px) {
    .ui-keyboard-button.btn {
        font-size: 1.95em;
    }

    .bootstrap-datetimepicker-widget.dropdown-menu {
        width: 25rem;
    }

    .bootstrap-datetimepicker-widget table th,
    .bootstrap-datetimepicker-widget table td {
        height: 30px !important;
        line-height: 30px !important;
        width: 30px !important;
        font-size: 1.4em;
    }

        .bootstrap-datetimepicker-widget table td.hour,
        .bootstrap-datetimepicker-widget table td.minute {
            height: 50px !important;
            line-height: 50px !important;
            width: 50px !important;
            font-size: 1.6em;
        }
}



@media (min-width: 1550px) {
    .navbar-expand-custom {
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: flex-start;
    }

        .navbar-expand-custom .navbar-nav {
            flex-direction: row;
        }

        .navbar-expand-custom .dropdown-menu {
            position: absolute;
        }

        .navbar-expand-custom .nav-link {
            padding-right: .5rem;
            padding-left: .5rem;
        }

        .navbar-expand-custom > .container {
            flex-wrap: nowrap;
        }

        .navbar-expand-custom .navbar-collapse {
            display: flex !important;
            flex-basis: auto;
        }

        .navbar-expand-custom .navbar-toggler {
            display: none;
        }
}

.list-group-item-repeat {
    color: #8a921b;
    background-color: #f8fae5;
}

    .list-group-item-repeat.list-group-item-action:hover, .list-group-item-repeat.list-group-item-action:focus {
        color: #8a921b;
        background-color: #f3f6cf;
    }

    .list-group-item-repeat.list-group-item-action.active {
        color: #212529;
        background-color: #8a921b;
        border-color: #8a921b;
    }

.list-group-item .complete-item {
    text-decoration: line-through;
}

#jobSummary .JobSummaryCount,
#jobContainer .JobSetText,
#stageContainer .StageSetText,
#taskContainer .TaskSetText {
    display: none;
}

#jobSummaryText h2,
#jobText h2,
#stageText h2,
#taskText h2 {
    margin: 0;
}

#RecipeInstructions .card-body {
}

.partialWrapperPush {
    height: 50%;
    max-height: 100px;
    position: absolute;
    bottom: 0;
    width: 100%;
    background: -moz-linear-gradient(top, rgba(221, 221, 221,0.5) 0%, rgba(204,204,204,1) 90%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(221, 221, 221,0.5)), color-stop(95%,rgba(204,204,204,1)));
    background: -webkit-linear-gradient(top, rgba(221, 221, 221,0.5) 0%,rgba(204,204,204,1) 90%);
    background: -o-linear-gradient(top, rgba(221, 221, 2215,0.5) 0%,rgba(204,204,204,1) 90%);
    background: -ms-linear-gradient(top, rgba(221, 221, 221,0.5) 0%,rgba(204,204,204,1) 90%);
    background: linear-gradient(to bottom, rgba(221, 221, 221,0.5) 0%,rgba(204,204,204,1) 90%);
}

    .partialWrapperPush .scroll-to-read {
        position: relative;
        margin: auto;
        background-color: rgb(221, 221, 221);
        border-radius: 8px 8px 0px 0px;
        top: 0;
        left: 0;
        right: 0;
        /*z-index: 99999;*/
        text-align: center;
        border: 1px solid #cccccc;
        padding: 10px;
    }

.badge {
    margin-left: 0.5em;
}

#jobSelectionContainer {
    display: flex;
    float: left;
    width: 100%;
}

#jobData {
    /*position:fixed;
    margin-top:20px;   
    margin-left:10px;*/
    float: left;
    width: 100%;
    font-size: 2.5em;
}

#toolbar {
    position: sticky;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    background-color: rgb(170,212,255);
    text-align: center;
    display: none;
    z-index: 99;
}

#footer {
    width: auto;
    text-align: center;
    float: right;
    font-weight: normal;
    font-size: 62.5%;
    padding-right: 5px;
}

.sticky-bottom {
    position: sticky;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
}

#toolbarButtonContainer {
    display: inline-block;
    position: relative;
    margin: auto;
}

.toolbar-button {
    float: left;
    width: 75px;
    height: 75px;
    background-repeat: no-repeat;
    background-size: contain;
}


#instruction-image-button {
    background-image: url('../images/instruction_images_64x64.png');
}


.result-entry-text-container {
    display: inline-flex;
}

.result-entry-text-edit-button {
    background-image: url(../images/manual_entry_48x48.png);
    width: 48px;
    height: 48px;
    background-size: cover;
    margin: 0 10px 0 0;
}

.result-entry-text-search-button {
    display: inline-block;
    background-image: url(../images/complete_64x64.png);
    width: 48px;
    height: 48px;
    margin: 0 0 0 10px;
    background-size: cover;
}

.result-entry-text-CameraScanner-button {
    display: inline-block;
    background-image: url(../images/instruction_images_64x64.png);
    width: 48px;
    height: 48px;
    margin: 0 0 0 10px;
    background-size: cover;
}

.result-entry-text {
    display: inline;
    float: right;
}

.image-container {
    position: relative;
    top: 0px;
    left: 25px;
    width: 640px;
    height: 470px;
}

#intruction-image-slidesPop {
    cursor: default;
    position: relative;
    top: 0px;
    left: 45px;
    width: calc(100% - 90px);
    height: 100%;
    overflow: hidden;
}

.instruction-image-slides {
    position: absolute;
    width: 640px;
    height: 470px;
    overflow: hidden;
}

.image-container .result-entry-image {
    max-height: 470px;
    max-width: 640px;
    position: relative !important;
}

.image-container .caption {
    width: 628px;
    z-index: 1;
    font-size: 1.2em;
    padding: 5px;
    background-color: rgba(170,212,255,.75);
    position: absolute;
    top: 3px;
    left: 3px;
}

.form-control:disabled, .form-control[readonly] {
    background-color: #fff;
}

    .readonly, .form-control[readonly].readonly {
        background-color: #e9ecef !important;
        opacity: 1;
    }

#CameraScannerModal #interactive.viewport,
#CameraScannerDialog #interactive.viewport,
.divCameraScanner #interactive.viewport {
    width: 640px;
    height: 480px;
    position: relative;
    border: solid 1px #000;

}

    #CameraScannerModal #interactive.viewport canvas, #CameraScannerModal #interactive.viewport video,
    #CameraScannerDialog #interactive.viewport canvas, #CameraScannerDialog #interactive.viewport video,
    .divCameraScanner #interactive.viewport canvas, .divCameraScanner #interactive.viewport video {
        position: absolute;
        top: 0;
        left: 0;
        width: 640px;
        height: 480px;
        object-fit: cover;
    }

@media (max-width: 575.99px) {

    #CameraScannerModal #interactive.viewport,
    #CameraScannerDialog #interactive.viewport,
    .divCameraScanner #interactive.viewport {
        width: 400px;
        height: 400px;
    }

    #CameraScannerModal #interactive.viewport canvas, #CameraScannerModal #interactive.viewport video,
    #CameraScannerDialog #interactive.viewport canvas, #CameraScannerDialog #interactive.viewport video,
    .divCameraScanner #interactive.viewport canvas, .divCameraScanner #interactive.viewport video {
        width: 400px;
        height: 400px;
    }
}

@media (min-width: 576px) and (max-width: 766.99px) {

    #CameraScannerModal #interactive.viewport,
    #CameraScannerDialog #interactive.viewport,
    .divCameraScanner #interactive.viewport {
        width: 480px;
        height: 480px;
    }

    #CameraScannerModal #interactive.viewport canvas, #CameraScannerModal #interactive.viewport video,
    #CameraScannerDialog #interactive.viewport canvas, #CameraScannerDialog #interactive.viewport video,
    .divCameraScanner #interactive.viewport canvas, .divCameraScanner #interactive.viewport video {
        width: 480px;
        height: 480px;
    }
}

@media (min-width: 767px) and (max-width: 991.99px) {
    #CameraScannerModal #interactive.viewport canvas, #CameraScannerModal #interactive.viewport video,
    #CameraScannerDialog #interactive.viewport canvas, #CameraScannerDialog #interactive.viewport video,
    .divCameraScanner #interactive.viewport canvas, .divCameraScanner #interactive.viewport video {
        width: 640px;
        height: 480px;
    }
}
/*    #interactive.viewport canvas.drawingBuffer, video.drawingBuffer {
            margin-left: -640px;
        }*/

@media (max-width: 1025px) {

    /* Force table to not be like tables anymore */
    table#batch-result-table, table#batch-result-table thead, table#batch-result-table tbody, table#batch-result-table th, table#batch-result-table td, table#batch-result-table tr {
        display: flow-root;
    }

    table#batch-result-table {
        float: left;
    }

        table#batch-result-table thead tr {
            position: absolute;
            top: -9999px;
            left: -9999px;
        }

        table#batch-result-table tr {
            border: 1px solid #ccc;
        }

        table#batch-result-table td {
            /* Behave  like a "row" */
            border: none;
            position: relative;
            padding-left: 50% !important;
            max-width: 100% !important;
        }

            table#batch-result-table 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;
            }

            /*
	Label the data
	*/


            table#batch-result-table td:nth-of-type(1):before {
                content: "Ingredient";
                font-weight: bold;
            }

            table#batch-result-table td:nth-of-type(2):before {
                content: "Batch Number";
                font-weight: bold;
            }

            table#batch-result-table td:nth-of-type(3):before {
                content: "Item Quantity";
                font-weight: bold;
            }

            table#batch-result-table td:nth-of-type(4):before {
                content: "Batch Expiry";
                font-weight: bold;
            }

            table#batch-result-table td:nth-of-type(5):before {
                content: "Is Substitute";
                font-weight: bold;
            }

            table#batch-result-table td:nth-of-type(6):before {
                content: "Options";
                font-weight: bold;
            }

            table#batch-result-table td .deleteOutputBatchButton {
                position: absolute;
                right: 10px;
            }
}

@media (max-width: 1025px) {

    /* Force table to not be like tables anymore */
    table#batchSearchResults, table#batchSearchResults thead, table#batchSearchResults tbody, table#batchSearchResults th, table#batchSearchResults td, table#batchSearchResults tr {
        display: block;
    }

    table#batchSearchResults {
        float: left;
    }

        table#batchSearchResults thead tr {
            position: absolute;
            top: -9999px;
            left: -9999px;
        }

        table#batchSearchResults tr {
            border: 1px solid #ccc;
        }

        table#batchSearchResults td {
            /* Behave  like a "row" */
            border: none;
            position: relative;
            padding-left: 50% !important;
            max-width: 100% !important;
        }

            table#batchSearchResults 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;
            }


            table#batchSearchResults td:nth-of-type(1):before {
                content: "Batch Number";
                font-weight: bold;
            }

            table#batchSearchResults td:nth-of-type(2):before {
                content: "Item Code";
                font-weight: bold;
            }

            table#batchSearchResults td:nth-of-type(3):before {
                content: "Item Name";
                font-weight: bold;
            }

            table#batchSearchResults td:nth-of-type(4):before {
                content: "Batch Expiry";
                font-weight: bold;
            }

            table#batchSearchResults td:nth-of-type(5):before {
                content: "Theorectical Balance";
                font-weight: bold;
            }
}

.failed {
    background-color: Red;
}

.passed {
    background-color: Green;
}

.retest, .multiple-result-entry tr.retest, .multiple-result-entry tr.retest input[type=text], .multiple-result-entry tr.retest input[type=number] {
    background-color: #ffffba;
}


.select2-container {
    height: calc(1.5em + 1rem + 2px);
    padding: 0;
    font-size: 1.125rem;
    line-height: 1.5;
}

.select2-container--default .select2-selection--multiple {
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    padding: 0 1rem;
    line-height: 1.5;
    border-radius: 0.3rem;
}

.select2-dropdown {
    font-size: 1em;
}

.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
    color: #999;
    margin-top: 5px;
    float: left;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    position: relative;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: transparent;
    position: absolute;
    z-index: 1;
    width: 100%;
}

    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
        color: transparent;
    }

.select2-container--default .select2-results > .select2-results__options {
    max-height: 520px;
    overflow-y: auto;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    display: none; /*Sets it so that already selected options are not visable*/
    background-color: #ddd;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
    color: transparent;
    position: absolute;
    width: 100%;
    display: block;
    z-index: 1;
    width: 100%;
}

    .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
        color: transparent;
    }

.select2-container--classic .select2-results > .select2-results__options {
    /*max-height: 200px;*/
    max-height: 520px;
    overflow-y: auto;
}

.row-striped:nth-of-type(odd) {
    background-color: #fafbfa;
    border-color: #f6f7f6;
}

.row-striped:nth-of-type(even) {
    background-color: #cbdcea;
    border-color: #9fbed8;
}

#startStopAutomaticCollection {
    display: inline-flex;
    width: 150px;
    height: 150px;
}


#MonitorPointResult {
    display: flex;
    flex-flow: column;
    height: 100%;
    width: 100%;
}

#MonitorPointResults thead {
    /* head takes the height it requires, 
    and it's not scaled when table is resized */
    flex: 0 0 auto;
    width: calc(100% - 16px);
}

#MonitorPointResults tbody {
    /* body takes all the remaining available space */
    flex: 1 1 auto;
    display: block;
    overflow-y: scroll;
    max-height: 265px
}

    #MonitorPointResults tbody tr {
        width: 100%;
    }

    #MonitorPointResults thead, #MonitorPointResults tbody tr {
        display: table;
        table-layout: fixed;
    }



.inputFocus,
input[type=text]:focus, textarea:focus {
    box-shadow: 0 0 5px rgba(81, 203, 238, 1);
    border: 1px solid rgba(81, 203, 238, 1);
}

.stockroom-list {
    font-size: 1.5em !important;
}

    .stockroom-list li {
        list-style-type: none;
        color: #fff;
        height: 75px;
        border: 1px solid;
        padding-left: 10px;
    }

        .stockroom-list li:nth-child(odd) {
            background-color: #72b3ea;
        }

    .stockroom-list .stocktake-stockroom {
        color: #fff;
        background-color: #EEE;
    }

        .stockroom-list .stocktake-stockroom:nth-child(odd) {
            color: #fff;
            background-color: #A9BCF5;
        }

#BatchData .bootstrap-select.form-control-lg .dropdown-toggle {
    padding: .4rem 1rem;
}




.sticky-table-header {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: #fff;
}

    .sticky-table-header .pagination-container {
        padding-left: 10px;
    }


        .sticky-table-header .pagination-container .pagination {
            margin: 5px;
        }

.divtable {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0,0,0,.125);
    border-radius: .25rem
}

.divtable-header {
    flex: 1 1 auto;
    min-height: 1px;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px);
    margin-bottom: 0;
    line-height: 1.5;
    font-weight: bold;
    vertical-align: middle !important
}

.divtable-filter,
.divtable-paging {
    flex: 1 1 auto;
    min-height: 1px;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px);
    margin-bottom: 0;
    line-height: 1.5;
    vertical-align: middle !important
}

.divtable-body {
    flex: 1 1 auto;
    min-height: 1px;
    padding: 0;
}

    .divtable-body .divtable-row,
    .divtable-body .divtable-row-nohover {
        padding: .75rem;
        vertical-align: top;
        border-top: 1px solid #dee2e6;
        background-color: #fdfdfe;
    }

        .divtable-body .divtable-row:nth-of-type(odd),
        .divtable-body .divtable-row-nohover:nth-of-type(odd) {
            background-color: rgba(0,0,0,.05)
        }

        .divtable-body .divtable-row:hover,
        .divtable-body .divtable-row-nohover .divtable-row:hover {
            background-color: #b9d0e3
        }

        .divtable-body .divtable-row.batch-Quarantined,
        .divtable-body .divtable-row-nohover.batch-Quarantined {
            background-color: rgba(225, 83, 97, 0.75)
        }

            .divtable-body .divtable-row.batch-Quarantined:nth-of-type(odd),
            .divtable-body .divtable-row-nohover.batch-Quarantined:nth-of-type(odd) {
                background-color: rgba(225, 83, 97, 0.5)
            }

        .divtable-body .divtable-row.batch-Quarantined:hover,
        .divtable-body .divtable-row.batch-Quarantined-nohover .divtable-row:hover {
            background-color: rgb(225, 83, 97)
        }



.vff-switch-Group {
    display: flex;
    flex-direction: column;
}

    .vff-switch-Group .switch {
        display: inline-flex;
        flex-wrap: wrap;
    }

.switch-text {
    line-height: 45px;
}

/* Hide default HTML checkbox */
.vff-switch-Group .switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

/* The slider */
.vff-switch-Group .slider {
    width: 80px;
    height: 45px;
    position: relative;
    cursor: pointer;
    background-color: #fff;
    border-radius: 50%;
    border-radius: 99em;
    border: 2px solid #D1D7DC;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 39px;
    width: 39px;
    left: 2px;
    bottom: 1px;
    background-color: #fff;
    border-radius: 50%;
    border-radius: 99em;
    border: 2px solid #D1D7DC;
    -webkit-transition: .4s;
    transition: .4s;
}


input[type=checkbox]:checked + input[type="hidden"] + .slider,
input [type=checkbox]:checked + .slider {
    background-color: #4682b4;
    border-color: #005590;
}

input:focus + .slider {
    box-shadow: 0 0 1px #4682b4;
}


input[type=checkbox]:checked + input[type="hidden"] + .slider:before,
input [type=checkbox]:checked + .slider:before {
    background-color: #005590;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 5px 5px;
    border-color: #005590;
    -webkit-transform: translateX(33px);
    -ms-transform: translateX(33px);
    transform: translateX(33px);
}

.enquiry-SortLink.orderAscending:before {
    font-family: "Font Awesome 5 Free";
    content: "\f309";
    display: inline-block;
    padding-right: 3px;
    vertical-align: middle;
    font-weight: 900;
}

.enquiry-SortLink.orderDescending::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f30c";
    display: inline-block;
    padding-right: 3px;
    vertical-align: middle;
    font-weight: 900;
}


.loading-spinner-container {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 5;
    background-color: rgba(0,0,0,.5);
}

    .loading-spinner-container .loading-spinner {
        color: #fff;
        display: inline-block;
        position: absolute;
        left: 45%;
        transform: translateX(-45%);
        top: 15%;
        transform: translateY(15%);
    }

    .loading-spinner-container #loading-text {
        position: absolute;
        top: 75px;
        left: 15px;
    }

    .loading-spinner-container .loading-spinner div {
        transform-origin: 40px 40px;
        animation: lds-spinner 1.2s linear infinite;
    }

        .loading-spinner-container .loading-spinner div:after {
            content: " ";
            display: block;
            position: absolute;
            top: 3px;
            left: 37px;
            width: 6px;
            height: 18px;
            border-radius: 20%;
            background: #005590;
        }

        .loading-spinner-container .loading-spinner div:nth-child(1) {
            transform: rotate(0deg);
            animation-delay: -1.1s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(2) {
            transform: rotate(30deg);
            animation-delay: -1s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(3) {
            transform: rotate(60deg);
            animation-delay: -0.9s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(4) {
            transform: rotate(90deg);
            animation-delay: -0.8s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(5) {
            transform: rotate(120deg);
            animation-delay: -0.7s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(6) {
            transform: rotate(150deg);
            animation-delay: -0.6s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(7) {
            transform: rotate(180deg);
            animation-delay: -0.5s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(8) {
            transform: rotate(210deg);
            animation-delay: -0.4s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(9) {
            transform: rotate(240deg);
            animation-delay: -0.3s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(10) {
            transform: rotate(270deg);
            animation-delay: -0.2s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(11) {
            transform: rotate(300deg);
            animation-delay: -0.1s;
        }

        .loading-spinner-container .loading-spinner div:nth-child(12) {
            transform: rotate(330deg);
            animation-delay: 0s;
        }

@keyframes lds-spinner {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}



.divRepeatRow {
    background-color: #fdfdfe;
}

    .divRepeatRow:nth-of-type(odd){
        background-color: rgba(0,0,0,.05)
    }

    .divRepeatRow:hover {
        background-color: #b9d0e3
    }