﻿html {
    position: relative;
    min-height: 100%;
}

body {
    font-family: "Helvetica Neue", "Lucida Grande", "Segoe UI", Arial, Helvetica, Verdana, sans-serif;
}

main {
    padding-bottom: 1rem;
}

a:link {
    color: #0000EE;
    text-decoration: underline;
}

a:visited {
    color: #551A8B;
    text-decoration: underline;
}

a:active {
    color: #ff0000;
    text-decoration: underline;
}

a.mtp-disable-anchor {
    pointer-events: none !important;
    cursor: default;
}

button.mtp-anchor {
    border: 0;
    background: none;
    padding: 0;
    color: #0000EE;
    text-decoration: underline;
}

    button.mtp-anchor:visited {
        color: #551A8B;
        text-decoration: underline;
    }

    button.mtp-anchor:active {
        color: #ff0000;
        text-decoration: underline;
    }

#mtp-site-header, #mtp-site-header > div, #mtp-site-header > nav {
    min-height: 4.5rem;
}

#mtp-content-overlay {
    position: absolute;
    display: none;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: black;
    opacity: 0;
    z-index: 800;
    cursor: pointer;
}

.mtp-full-page-wait-overlay-container {
    background-color: rgb(50%,50%,50%);
    background-color: rgba(0,0,0,0.5);
    position: fixed;
    display: flex;
    align-items: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 5000;
    cursor: wait;
}

.mtp-full-page-dialog-wait-overlay {
    background-color: rgb(75%,75%,75%);
    background-color: rgba(0,0,0,0.25);
    position: fixed;
    display: flex;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 5000;
    cursor: wait;
}

.mtp-full-page-wait-overlay-content {
    border: 2px solid black;
    background: white;
    margin: 0 auto;
    max-width: 900px;
}

.modal {
    z-index: 9000;
}

#mtp-no-javascript-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: white;
    z-index: 10000;
    cursor: default;
}

#mtp-main-menu-container {
    background-color: #3a4f63;
    width: 100%;
    z-index: 900;
}

.mtp-site-header-logged-in {
    max-height: 4.5rem;
    height: 4.5rem;
}

.mtp-page-title {
    color: black;
    text-align: center;
    font-size: 1.75rem;
    line-height: 1.2;
    font-weight: 500;
}

    .mtp-page-title h2 {
        margin-bottom: 0;
        font-size: 1.75rem;
    }

.mtp-page-sub-header {
    font-size: 1.25rem;
}

.mtp-label {
    font-weight: 700;
}

.mtp-page-sub-header h4 {
    font-size: 1.25rem;
}

.mtp-page-sub-header h5 {
    font-size: 1rem;
}

@media screen and (max-width: 767.98px) {
    .mtp-page-title {
        background-color: #e9e9e9;
        color: #333;
        text-shadow: 0 1px 0 #eee;
        border-bottom: 1px solid #ddd;
        font-weight: 700;
        padding: 0.5rem;
        font-size: 1.25rem;
        margin: 0;
    }

        .mtp-page-title h2 {
            font-size: 1.25rem;
        }

        .mtp-page-title + .mtp-page-sub-header,
        .mtp-page-title + div .mtp-mobile-page-button-bar,
        .mtp-page-title + div > div:first-child > .mtp-page-sub-header,
        .mtp-page-title + div > .mtp-page-sub-header {
            border-top: none;
        }

        .mtp-page-title a, .mtp-page-title a:hover {
            color: #333;
            text-decoration: none;
            font-weight: 500;
            line-height: 1.2;
        }

            .mtp-page-title a:hover {
                background-color: #ddd;
            }

    .mtp-page-sub-header {
        background-color: #f6f6f6;
        color: #333;
        text-shadow: 0 1px 0 #f3f3f3;
        border-top: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
        padding-top: 0.25rem;
        padding-bottom: 0.25rem;
        margin: 0;
        font-size: 1rem;
    }

        .mtp-page-sub-header h4 {
            font-size: 1rem;
            margin: 0;
        }

    .mtp-page-sub-header h5 {
        font-size: 0.8rem;
        margin: 0;
    }

    .mtp-adjust-padding-for-mobile-page-navigator {
        padding-bottom: 4.5rem;
    }

    .mtp-mobile-hide-until-loaded {
        display: none;
    }

    .mtp-mobile-check-button-group .form-check {
        border-radius: .25rem;
        border: 1px solid #dee2e6;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
        padding: 0;
        display: -ms-flex;
        display: flex;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

        .mtp-mobile-check-button-group .form-check label {
            display: block;
            padding: 0.5rem;
        }

            .mtp-mobile-check-button-group .form-check label:nth-last-child(1) {
                -ms-flex: 1;
                flex: 1;
                padding-left: 0;
            }

            .mtp-mobile-check-button-group .form-check label:nth-of-type(1) {
                width: 2em;
            }

            .mtp-mobile-check-button-group .form-check label:nth-of-type(2) {
                width: 2em;
            }

        .mtp-mobile-check-button-group .form-check:hover, .mtp-mobile-check-button-group label {
            cursor: pointer;
        }

        .mtp-mobile-check-button-group .form-check input {
            display: none;
        }

        .mtp-mobile-check-button-group .form-check label {
            margin: 0;
        }

        .mtp-mobile-check-button-group .form-check input:checked + input + label + label + .form-check-label {
            background-color: #6c757d;
            color: white;
        }

        .mtp-mobile-check-button-group .form-check input + input + label + label {
            display: none;
        }

        .mtp-mobile-check-button-group .form-check input:checked + input + label + label {
            background-color: #6c757d;
            color: white;
            display: block;
        }

        .mtp-mobile-check-button-group .form-check input:checked + input + label {
            display: none;
        }

    .mtp-value {
        margin-bottom: 0.25rem;
    }
}

@media screen and (max-width: 991.98px) {
    body {
        margin-bottom: 0;
        margin-top: 4.5rem;
    }

    .mtp-no-page-header {
        margin-top: 0;
    }

    #mtp-main-menu-container {
        position: absolute;
    }

    .mtp-site-header-logged-in {
        overflow: hidden;
        background-color: #333;
        position: fixed;
        top: 0;
        width: 100%;
    }

    .mtp-site-header-logged-out {
        margin-top: -4.5rem;
    }
}

@media (min-width: 768px) {
    .mtp-text-md-truncate {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .mtp-page-title {
        text-align: left;
        margin-bottom: .5rem;
    }

    .collapse.mtp-collapse-mobile-only {
        display: block !important;
    }

    .mtp-adjust-padding-for-copyright {
        padding-bottom: 30px;
    }

    .mtp-mobile-header-button {
        display: none;
    }
}

.mtp-container-fluid {
    min-width: 100%;
}

@media (min-width: 1200px) {
    .mtp-container-fluid {
        min-width: 1180px;
    }
}

@media (min-width: 992px) {
    .mtp-d-lg-block {
        display: block !important;
    }
}

@media (min-width: 768px) {
    .mtp-d-mtp-list-item {
        display: list-item !important;
    }

    .mtp-d-md-table-row {
        display: table-row !important;
    }

    .mtp-d-md-table-row-group {
        display: table-row-group !important;
    }

    .mtp-d-md-table-cell {
        display: table-cell !important;
    }

    .mtp-mobile-grid-dropdown {
        display: none;
    }
}

.mtp-d-none {
    display: none;
}

.mtp-hide-overflow {
    overflow: hidden;
}

.mtp-preserve-whitespace {
    white-space: pre;
}

.mtp-preserve-whitespace-line-wrap {
    white-space: pre-line;
}

.mtp-vertical-align-middle, td.mtp-vertical-align-middle, th.mtp-vertical-align-middle {
    vertical-align: middle;
}

.mtp-message-block {
    background-color: #f0e68c;
    border: 2px solid black;
    color: Black;
    margin: 0 0 1rem;
    padding: 0.5rem;
}

    .mtp-message-block > p:nth-last-child(1) {
        margin-bottom: 0;
    }

.mtp-keypad-key {
    height: auto;
    min-height: 64px;
    min-width: 64px;
    width: auto;
}

.mtp-smaller-font {
    font-size: 0.85em;
}

.mtp-font-weight-light-bold {
    font-weight: 600;
}

@media screen and (max-width: 575.98px) {
    .mtp-xs-smaller-font {
        font-size: 0.85em;
    }
}

.mtp-card-flat-bottom {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

@media (min-width: 576px) {
    .mtp-sm-border-bottom {
        border-bottom: 1px solid #dee2e6 !important;
    }
}

.mtp-tight-line-height {
    line-height: 1.15rem;
}

.mtp-border-top {
    border-top: 1px solid #dee2e6;
}

.mtp-unstyled-lists ul, .mtp-unstyled-lists ol {
    list-style: none;
    padding-left: 0;
} 

.mtp-measure-mode {
    position: absolute;
    visibility: hidden;
    display: block;
    top: 0;
    left: 0;
}

.text-decoration-none {
    text-decoration: none!important;
}

.text-decoration-underline {
    text-decoration: underline!important;
}

.mtp-cursor-pointer {
    cursor: pointer;
}

.mtp-opacity-75 {
    opacity: 0.75;
}

.mtp-opacity-50 {
    opacity: 0.50;
}

.mtp-opacity-25 {
    opacity: 0.25;
}

.mtp-wait-for-icons {
    display: none;
}

.fontawesome-i2svg-active .mtp-wait-for-icons {
    display: initial;
}

.mtp-word-break-all {
    word-break: break-all;
}

.mtp-vertical-text {
    writing-mode: vertical-rl;
    text-orientation: mixed;
}

.mtp-colors-red {
    color: red;
}

.mtp-development-mode-tag {
    cursor: pointer;
    z-index: 100000;
}

/* forms
----------------------------------------------------------*/
fieldset legend {
    display: none;
}

fieldset ol {
    list-style: none;
    padding-left: 0;
}

input[type="text"],
textarea {
    text-transform: uppercase;
}

.do-not-uppercase-container input[type="text"],
.do-not-uppercase-container textarea {
    text-transform: none;
}


input[type="file"].btn {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

    input[type="file"].btn + label,
    .btn:not(.bootstrap),
    a.btn:not(.bootstrap) {
        background-color: #d3dce0;
        border: 1px solid #787878;
        color: black;
        cursor: pointer;
        font-size: 1.2rem;
        font-weight: bold;
        padding: 7px;
        text-align: center;
        vertical-align: middle;
        border-radius: 0;
        text-decoration: none;
        cursor: pointer;
    }

a.bootstrap {
    color: #17a2b8;
    text-decoration: none;
}

a.btn-outline-danger {
    color: #dc3545;
    text-decoration: none;
}

a.btn-outline-success {
    color: #28a745;
    text-decoration: none;
}

a.btn-outline-secondary {
    color: #6c757d;
    text-decoration: none;
}


@media screen and (max-width: 767.98px) {
    input [type="file"].btn + label, .btn:not(.bootstrap), a.btn:not(.bootstrap) {
        width: 100%;
    }
}

.btn-width-100 {
    width: 100px;
}


.btn:not(.bootstrap):hover {
    background-color: #dae2e5;
    border: 1px solid #000000;
    color: black;
}

button {
    cursor: pointer;
}

a.btn-bootstrap {
    color:white;
    display:inline;
    background-color: #17a2b8;
    border-color: #17a2b8;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    font-weight: 400;
}

a.btn-bootstrap:hover {
    color: #fff;
    background-color: #138496;
    border-color: #117a8b;
}


textarea {
    min-height: 6rem;
}

.dropdown-menu > a:link, .dropdown-menu > a:visited {
    color: unset;
    text-decoration: unset;
}

.dropdown-menu > a.dropdown-item.active, .dropdown-menu > a.dropdown-item:active {
    color: #fff;
}

.bootstrap-datetimepicker-widget .timepicker-picker a, .bootstrap-datetimepicker-widget .timepicker-picker button {
    background-color: inherit;
    border: inherit;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-align: inherit;
    vertical-align: inherit;
    text-decoration: inherit;
}

/* info and errors
----------------------------------------------------------*/

.message-info {
    border: 1px solid;
    clear: both;
    padding: 10px 20px;
}

.message-error {
    background-color: inherit;
    clear: both;
    color: #e80c4d;
    font-size: 1.1em;
    font-weight: bold;
    margin: 20px 0 10px 0;
}

.message-success {
    background-color: inherit;
    color: #7ac0da;
    font-size: 1.3em;
    font-weight: bold;
    margin: 20px 0 10px 0;
}

.error {
    background-color: inherit;
    color: #e80c4d;
}

.information-box {
    background-color: #f0e68c;
    border: 2px solid black;
    color: Black;
    font-size: 1.25em;
    margin: 10px;
    padding: 7px;
}

    .information-box p {
        margin: 0;
        padding: 0.5em;
    }

#dialog-message {
    display: none;
}

#dialog-error {
    display: none;
}


/* validation
----------------------------------------------------------*/

.field-validation-error {
    background-color: inherit;
    color: #e80c4d;
    font-weight: bold;
}

.field-validation-valid {
    display: none;
}

div.input-validation-error,
select.input-validation-error,
input[type="email"].input-validation-error,
input[type="text"].input-validation-error,
input[type="password"].input-validation-error {
    border: 1px solid #e80c4d;
}

.validation-summary-errors {
    background-color: inherit;
    color: #e80c4d;
    font-size: 1.1em;
    font-weight: bold;
}

.validation-summary-valid {
    display: none;
}

li > span.field-validation-error {
    font-size: 0.85rem;
    padding-top: 0.25rem;
    display: block;
}

/* header
----------------------------------------------------------*/
#mtp-site-header {
    background-color: #4b6c9e;
    color: #fff;
    padding: 0 5px;
    padding-bottom: 5px;
    border-bottom: solid #496077 1px;
    border-top: solid #496077 1px;
    z-index: 3000;
}

    #mtp-site-header ul {
        list-style: none;
        margin: 0;
        padding: 0;
        text-align: right;
    }

    #mtp-site-header li {
        display: inline;
    }

        #mtp-site-header li:after {
            content: " ]";
        }

        #mtp-site-header li:before {
            content: "[ ";
        }

    #mtp-site-header a {
        color: #fff;
        padding: 0;
    }

.mtp-organization-name {
    font-variant: small-caps;
    font-weight: bold;
    line-height: 1em;
}

@media (min-width: 768px) {
    .mtp-organization-name-md-large {
        font-size: 2.5rem;
    }
}

.mtp-organization-name-large {
    font-size: 2.5rem;
}

.mtp-organization-name,
.mtp-organization-name:hover,
.mtp-organization-name:active {
    text-decoration: none;
}

a.mtp-organization-name,
a.mtp-organization-name:hover,
a.mtp-organization-name:active {
    text-decoration: none;
}

#mtp-site-login-status {
    font-size: .85rem;
    vertical-align: middle;
}

#mtp-mobile-menu {
    z-index: 3000;
}

/* menu
----------------------------------------------------------*/
.nav.navbar-nav {
    background-color: #3a4f63;
}

    .nav.navbar-nav .nav-item {
        background-color: #465c71;
        border: 1px solid #4e667d;
        text-align: center;
    }

@media (min-width: 992px) {
    .nav.navbar-nav {
        padding: 0.5rem;
    }

        .nav.navbar-nav .nav-item {
            margin-top: 0.25rem;
            margin-bottom: 0.25rem;
        }

        .nav.navbar-nav .nav-link {
            padding-left: 0.5rem;
            padding-right: 0.5rem;
        }
}

.nav.navbar-nav .nav-link {
    color: #dde4ec;
    text-decoration: none;
}

    .nav.navbar-nav .nav-link.active {
        font-weight: 600;
        color: #fff;
    }

    .nav.navbar-nav .nav-link:hover {
        background-color: #bfcbd6;
        color: #465c71;
    }

/* mobile buttons
----------------------------------------------------------*/

@media screen and (max-width: 767.98px) {
    .mtp-mobile-button {
        background-color: #f6f6f6;
        border-color: #ddd;
        border-width: 1px 0;
        border-style: solid;
    }

    li > .mtp-mobile-button {
        border-top: none;
    }

    .mtp-mobile-button:hover {
        background-color: #e8e8e8;
    }

    a.mtp-mobile-button {
        color: #333;
        text-shadow: 0 1px 0 #f3f3f3;
        font-weight: 700;
        padding-top: .75rem;
        padding-bottom: .75rem;
        text-decoration: none;
    }

    .mtp-mobile-button-icon {
        color: #B2B2B2;
        color: rgba(0, 0, 0, .3);
    }
}

/* collapsable icons / cards
----------------------------------------------------------*/

.mtp-collapsable-open-icon, .mtp-collapsable-close-icon {
    color: #B2B2B2;
    color: rgba(0, 0, 0, .3);
}

[data-toggle="collapse"] .mtp-collapsable-open-icon {
    display: none;
}

[data-toggle="collapse"] .mtp-collapsable-close-icon {
    display: inline;
}

[data-toggle="collapse"].collapsed .mtp-collapsable-open-icon {
    display: inline;
}

[data-toggle="collapse"].collapsed .mtp-collapsable-close-icon {
    display: none;
}

.mtp-collapsable-card-header, .mtp-linkable-card-header {
    padding-top: .75rem;
    padding-bottom: .75rem;

}

button.mtp-collapsable-card-header {
    display: block;
    width: 100%;
    border: none;
    text-align: left;
    background-color: #F8F8F8;
    background-color: rgba(0,0,0,.03);
    border-bottom: 1px solid #E0E0E0;
    border-bottom: 1px solid rgba(0,0,0,.125);
}

button.mtp-collapsable-card-header:focus {
    outline: none;

}

.mtp-collapsable-card-header a, .mtp-collapsable-card-header, .mtp-linkable-card-header a, .mtp-linkable-card-header {
    color: #333;
    text-shadow: 0 1px 0 #f3f3f3;
    font-weight: 700;
    text-decoration: none;
}

.mtp-collapsable-card-header:hover, mtp-linkable-card-header:hover {
    background-color: #e8e8e8;
}


/* footer
----------------------------------------------------------*/
#mtp-site-footer {
    background-color: #e2e2e2;
    border-top: 4px solid #000;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 30px;
    /* Set the fixed height of the footer here */
    line-height: 22px;
    /* Vertically center the text there */
    box-sizing: border-box;
}

#mtp-site-footer {
    bottom: 0;
    font-size: .9rem;
    left: 0;
    padding: 1px 10px;
    position: absolute;
    right: 0;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* Autocomplete
----------------------------------------------------------*/

.mtp-autocomplete {
    position: relative;
    display: inline-block;
}

.mtp-autocomplete-items {
    position: absolute;
    z-index: 99;
    top: 100%;
    left: 0;
    right: 0;
}

.mtp-autocomplete-items div {
     cursor: pointer;
}

/* demo instructions
----------------------------------------------------------*/

.mtp-demo-instructions {
    background-color: #f0e68c;
    border: 2px solid black;
    color: Black;
    font-size: 1.25em;
    margin: 10px 0;
    padding: 7px;
}

    .mtp-demo-instructions p {
        margin: 0;
        padding: 0.5em;
    }

    .mtp-demo-instructions em {
        font-style: normal;
        font-weight: 600;
    }


/* login form
----------------------------------------------------------*/

#mtp-login-message {
    background-color: #f0e68c;
    border: 2px solid black;
    color: Black;
    font-size: 1.25rem;
    margin: 10px 0;
    padding: 7px;
    text-align: center;
    vertical-align: middle;
}

    #mtp-login-message p {
        padding: 5px;
        margin: 0;
    }

@media (min-width: 768px) {
    #mtp-login-fieldset .form-control {
        max-width: 300px;
    }
}

/* mobile list / mobile
----------------------------------------------------------*/

@media screen and (max-width: 767.98px) {
    .mtp-mobile-list, .mtp-mobile {
        padding-left: 0;
        padding-right: 0;
        display: none;
    }

        .mtp-mobile-list ul, .mtp-mobile-list ol {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .mtp-mobile-list li {
            background-color: #f6f6f6;
            border-color: #ddd;
            border-width: 1px 0 0;
            border-style: solid;
        }

            .mtp-mobile-list li:first-child {
                border-top: none;
            }

            .mtp-mobile-list li a {
                color: #333;
                text-shadow: 0 1px 0 #f3f3f3;
                font-weight: 700;
                padding-top: .75rem;
                padding-bottom: .75rem;
                text-decoration: none;
            }

            .mtp-mobile-list li:hover {
                background-color: #e8e8e8;
            }

        .mtp-mobile-list .inline-audio-control {
            display: table;
            margin: 0 auto;
        }

            .mtp-mobile-list .inline-audio-control audio {
                -webkit-box-shadow: 15px 15px 20px #999999;
                -webkit-box-shadow: 15px 15px 20px rgba(0, 0, 0, 0.4);
                -moz-box-shadow: 15px 15px 20px #999999;
                -moz-box-shadow: 15px 15px 20px rgba(0, 0, 0, 0.4);
                box-shadow: 15px 15px 20px #999999;
                box-shadow: 15px 15px 20px rgba(0, 0, 0, 0.4);
                -webkit-transform: scale(.80) translate(0, -0.5rem);
                -moz-transform: scale(.80) translate(0, -0.5rem);
                transform: scale(.80) translate(0, -0.5rem);
            }

        .mtp-mobile-list li a div {
            color: #B2B2B2;
            color: rgba(0, 0, 0, .3);
        }
}


/* data grid
----------------------------------------------------------*/

.mtp-data-grid-header {
    background-color: #4b6c9e;
    border: 1px solid black;
}

thead .mtp-data-grid-header th {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    border-left: 0;
    border-right: 0;
    padding-top: .5rem;
    padding-bottom: .5rem;
}

.mtp-data-grid-header {
    color: #fff;
    text-decoration: none;
}

    .mtp-data-grid-header a {
        color: #fff;
        text-decoration: none;
        display: block;
    }

.mtp-table-label {
    display: none;
    font-weight: bold;
}

.mtp-table-value {
    display: block;
}


.mtp-data-grid-row, .mtp-data-grid-row-alt, tbody.mtp-data-grid-row, tbody.mtp-data-grid-row-alt {
    border-top: 1px solid rgb(222, 226, 230);
}

.mtp-data-grid-footer {
    border-top: 1px solid rgb(222, 226, 230);
    border-left: 1px solid transparent;
    border-right: 1px solid transparent;
    border-bottom: 1px solid transparent;
}

.mtp-data-grid-row {
    background-color: #f2f2f2;
    background-color: rgba(0,0,0,.05);
}

.mtp-data-grid-row-alt {
    background-color: #fff;
}

.mtp-data-grid-row-borderless, .mtp-data-grid-row-borderless td, .mtp-data-grid-row-borderless th {
    border: 0;
}

td.mtp-data-grid-shrink-to-contents, th.mtp-data-grid-shrink-to-contents {
    width: 1%;
    white-space: nowrap;
}

@media screen and (max-width: 767.98px) {
    .mtp-data-grid-header {
        display: none;
    }

    .mtp-data-grid-header-always-show {
        display: table-row;
    }

    .mtp-data-grid-row:first-child {
        border-top: none;
    }

    .mtp-table-label {
        display: flex;
    }

    .mtp-data-grid-row-responsive td:not(:first-child), .mtp-data-grid-row-alt td:not(:first-child) {
        border-top: none;
    }

    .mtp-data-grid-responsive {
        border: 0 !important;
    }

    .mtp-data-grid-footer, .mtp-data-grid-footer td {
        padding: 0;
    }

        .mtp-data-grid-footer, .mtp-data-grid-footer td {
            display: block;
        }

    .mtp-data-grid > tfoot {
        height: 0;
    }
}


.table-striped tbody tr:nth-of-type(odd) {
    background-color: unset;
}

.table-striped tbody tr:nth-of-type(even) {
    background-color: #f2f2f2;
    background-color: rgba(0,0,0,.05);
}

.table-striped tbody tr.mtp-table-row-group-odd {
    background-color: unset;
}

.table-striped tbody tr.mtp-table-row-group-even {
    background-color: #f2f2f2;
    background-color: rgba(0,0,0,.05);
}

.mtp-mobile-header-button a:nth-child(1) {
    cursor: pointer;
    border: 1px solid #ddd;
    padding: 0.125rem 0.55rem;
    background-color: #f6f6f6;
    color: #666;
}

    .mtp-mobile-header-button a:nth-child(1):hover {
        background-color: #e8e8e8;
    }

.mtp-data-grid-header-fixed-scrollable {
    z-index: 100;
}

thead .mtp-data-grid-header-fixed-scrollable th {
    border: 0;
}

@media screen and (max-width: 991.98px) {
    .mtp-data-grid-header-fixed-scrollable {
        margin-top: 4.5rem;
    }
}

@media print {
    .table td, .table th, .mtp-data-grid-header a {
        color: #000;
    }
}

.mtp-grid-header-print-link {
    margin-top: -1.35rem;
}

/* pagination
----------------------------------------------------------*/
a.page-link {
    text-decoration: none;
}

    a.page-link:not(.disabled) {
        color: #0000EE;
    }

.mtp-mobile-page-navigator {
    display: none;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 700;
}


@media screen and (max-width: 767.98px) {
    .mtp-mobile-page-navigator {
        display: -ms-flex;
        display: flex;
    }
}

.mtp-mobile-page-navigator {
    background-color: #f6f6f6;
    border-color: #ddd;
    color: #333;
    text-shadow: 0 1px 0 #f3f3f3;
    height: 4.5rem;
}

    .mtp-mobile-page-navigator a:not(.dropdown-item) {
        color: #333;
        text-shadow: 0 1px 0 #f3f3f3;
        text-decoration: none;
        font-weight: 600;
    }

    .mtp-mobile-page-navigator .fa-fw {
        color: #b2b2b2;
        color: rgba(0, 0, 0, .3);
    }

    .mtp-mobile-page-navigator .disabled, .mtp-mobile-page-navigator a.disabled .fa-fw {
        color: #ccc;
        color: rgba(0, 0, 0, 0.1);
        pointer-events: none;
        cursor: default;
    }

    .mtp-mobile-page-navigator a:hover {
        background-color: #e8e8e8;
    }

.mtp-mobile-page-navigator-button-image {
    height: 30px;
    position: absolute;
    bottom: 28px;
}


.mtp-mobile-page-navigator-button-text {
    height: 30px;
    position: absolute;
    bottom: 3px;
}

/* mobile button bar
----------------------------------------------------------*/

.mtp-mobile-page-button-bar {
    display: none;
    background-color: #f6f6f6;
    color: #333;
    text-shadow: 0 1px 0 #f3f3f3;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 0;
    margin: 0;
}

.mtp-mobile-page-button-bar button {
    background: none;
    border: none;
    width: 100%;
}

.mtp-mobile-page-button-bar a, .mtp-mobile-page-button-bar button {
    text-decoration: none;
    font-weight: 600;
    align-self: center;
    display: block;
    padding: 0.25rem;
    -ms-flex: 1 1;
    flex-grow: 1;
    text-align: center;
    color: inherit;
}

.mtp-mobile-page-button-bar .disabled, .mtp-mobile-page-button-bar a.disabled .fa-fw {
    color: #ccc;
    color: rgba(0, 0, 0, 0.1);
    pointer-events: none;
    cursor: default;
}

.mtp-mobile-page-button-bar a:hover, .mtp-mobile-page-button-bar button:hover {
    background-color: #e8e8e8;
    cursor: pointer;
}

.mtp-mobile-page-button-bar .mtp-icon {
    color: #b2b2b2;
    color: rgba(0, 0, 0, .3);
}

@media screen and (max-width: 767.98px) {
    .mtp-mobile-page-button-bar {
        display: -ms-flex;
        display: flex;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-align: stretch;
        align-items: stretch;
    }
}

/* total helpers
----------------------------------------------------------*/


.mtp-sub-total {
    border-top: 1px solid black;
}


.mtp-grand-total {
    border-top: 3px double black;
}


/* monthly apprentice report pages
----------------------------------------------------------*/


#monthly-apprentice-report-table > thead > tr:first-child {
    height: 265px;
}

#monthly-apprentice-report-table > thead > tr > th {
    vertical-align: top;
    overflow: hidden;
}

#monthly-apprentice-report-table > thead > tr:first-child > th > div {
    width: 250px;
    transform: rotate(270deg) translateX(-100%);
    transform-origin: top left;
    margin-right: -250px;
    line-height: 1.2rem;
}

#monthly-apprentice-report-table > thead > tr > th > div > span, #monthly-apprentice-report-table .mtp-description {
    font-size: 0.85em;
    font-weight: normal;
}

#monthly-apprentice-report-table .mtp-mobile-label {
    line-height: 1em;
}

#monthly-apprentice-report-table tfoot tr td {
    border-top: 0;
}

#monthly-apprentice-report-table a {
    color: unset;
    text-decoration: none;
}

    #monthly-apprentice-report-table a.mtp-disabled {
        color: rgb(222, 226, 230);
        cursor: default;
    }

@media screen and (max-width: 767.98px) {
    #monthly-apprentice-report-table .mtp-hours-field, #monthly-apprentice-report-table .mtp-hours-total {
        width: 7em;
    }
}

@media screen and (min-width: 768px) {
    #monthly-apprentice-report-table > thead > tr > .mtp-monthly-apprentice-report-line,
    #monthly-apprentice-report-table > tbody > tr > .mtp-monthly-apprentice-report-line,
    #monthly-apprentice-report-table > tfoot > tr > .mtp-monthly-apprentice-report-line {
        border-right: solid black 5px;
    }
}

@media screen and (max-width: 767.98px) {
    #monthly-apprentice-report-table > thead > tr > .mtp-monthly-apprentice-report-line,
    #monthly-apprentice-report-table > tbody > tr > .mtp-monthly-apprentice-report-line,
    #monthly-apprentice-report-table > tfoot > tr > .mtp-monthly-apprentice-report-line {
        border-bottom: solid black 5px;
    }
}

    /* class registration/schedule
----------------------------------------------------------*/
    .mtp-class-sessions-container .mtp-value {
        margin-bottom: unset;
    }

    .mtp-class-sessions-container .mtp-table {
        display: table;
    }

    .mtp-class-sessions-container .mtp-thead {
        display: table-header-group;
    }

    .mtp-class-sessions-container .mtp-tbody {
        display: table-row-group;
    }

    .mtp-class-sessions-container .mtp-tr {
        display: table-row;
    }

    .mtp-class-sessions-container .mtp-td {
        display: table-cell;
    }

    .mtp-class-sessions-container .mtp-th {
        display: table-cell;
    }

    .mtp-class-sessions-container .mtp-th-mobile {
        display: none;
    }

    .mtp-class-sessions-container .mtp-label {
        font-weight: 500;
        display: none;
        padding-right: 0.5rem;
    }

    .mtp-class-schedule-list-container tbody + tbody {
        border-top: 1px solid #dee2e6;
    }

    .mtp-class-schedule-list-container tbody {
        border-top: 1px solid #dee2e6;
    }

    .mtp-page-sub-header + div > .mtp-class-schedule-list-container > table tbody:first-of-type {
        border-top: 0;
    }

    @media screen {
        .mtp-class-sessions-container .mtp-col-1, .mtp-class-sessions-container .mtp-col-3, .mtp-class-sessions-container .mtp-col-5, .mtp-class-sessions-container .mtp-col-7 {
            width: 33%;
        }

        .mtp-class-sessions-container .mtp-col-2, .mtp-class-sessions-container .mtp-col-4, .mtp-class-sessions-container .mtp-col-6, .mtp-class-sessions-container .mtp-col-8 {
            width: 67%;
        }
    }

    @media (min-width: 425px) and (max-width: 768.98px) {
        .mtp-class-sessions-container .mtp-col-1, .mtp-class-sessions-container .mtp-col-5 {
            width: 15%;
        }

        .mtp-class-sessions-container .mtp-col-2, .mtp-class-sessions-container .mtp-col-6 {
            width: 15%;
        }

        .mtp-class-sessions-container .mtp-col-3, .mtp-class-sessions-container .mtp-col-7 {
            width: 25%;
        }

        .mtp-class-sessions-container .mtp-col-4, .mtp-class-sessions-container .mtp-col-8 {
            width: 45%;
        }
    }

    @media screen and (max-width: 575.98px) {
        .mtp-class-sessions-container .mtp-table {
            display: block;
            flex-direction: row;
        }

        .mtp-class-sessions-container .mtp-thead {
            display: block;
        }

        .mtp-class-sessions-container .mtp-tbody {
            display: block;
        }

        .mtp-class-sessions-container .mtp-tr {
            display: flex;
            flex-flow: row wrap;
            padding: 0.125rem
        }

        .mtp-class-sessions-container .mtp-td {
            display: block;
        }

        .mtp-class-sessions-container .mtp-tbody {
            font-size: 0.85em;
        }

        .mtp-class-sessions-container {
            font-size: 0.85em;
        }

            .mtp-class-sessions-container .mtp-th {
                display: none;
            }

            .mtp-class-sessions-container .mtp-label {
                display: block;
            }

            .mtp-class-sessions-container .mtp-thead .mtp-tr {
                display: block;
                padding: 0;
            }

            .mtp-class-sessions-container .mtp-th-mobile {
                display: block;
                text-align: center;
                border: 1px solid rgb(222, 226, 230);
                background-color: #f8f9fa;
            }

            .mtp-class-sessions-container div.mtp-tbody:nth-of-type(odd) {
                background-color: #f2f2f2;
                background-color: rgba(0,0,0,.05);
            }

            .mtp-class-sessions-container div.mtp-tbody {
                border: 1px solid rgb(222, 226, 230);
                border-top: none;
            }
    }

    @media (min-width: 576px) {
        .mtp-class-sessions-container .mtp-col-6, .mtp-class-sessions-container .mtp-col-8 {
            text-align: center;
        }

        .mtp-class-sessions-container .mtp-thead .mtp-tr {
            background-color: #4b6c9e;
            font-weight: 700;
            color: white;
        }

            .mtp-class-sessions-container .mtp-thead .mtp-tr .mtp-th {
                background-color: #4b6c9e;
                border: 1px solid black;
                border-left: none;
                border-right: none;
                font-weight: 700;
                color: white;
            }

                .mtp-class-sessions-container .mtp-thead .mtp-tr .mtp-th:nth-of-type(2) {
                    border-left: 1px solid black;
                }

                .mtp-class-sessions-container .mtp-thead .mtp-tr .mtp-th:nth-of-type(5) {
                    border-right: 1px solid black;
                }

        .mtp-class-sessions-container .mtp-tr .mtp-td {
            border-bottom: 1px solid rgb(222, 226, 230);
        }

            .mtp-class-sessions-container .mtp-tr .mtp-td:nth-of-type(2) {
                border-left: 1px solid rgb(222, 226, 230);
            }

            .mtp-class-sessions-container .mtp-tr .mtp-td:nth-of-type(8) {
                border-right: 1px solid rgb(222, 226, 230);
            }

        .mtp-class-sessions-container .mtp-th {
            padding: 0 0.25rem;
        }

        .mtp-class-sessions-container .mtp-td {
            padding: 0.25rem;
        }

        .mtp-class-sessions-container div.mtp-tbody:nth-of-type(odd) {
            background-color: #f2f2f2;
            background-color: rgba(0,0,0,.05);
        }
    }

    @media (min-width: 768px) {
        .mtp-class-sessions-container .mtp-col-1, .mtp-class-sessions-container .mtp-col-5 {
            width: unset;
        }

        .mtp-class-sessions-container .mtp-col-2, .mtp-class-sessions-container .mtp-col-6 {
            width: unset;
        }

        .mtp-class-sessions-container .mtp-col-3, .mtp-class-sessions-container .mtp-col-7 {
            width: unset;
        }

        .mtp-class-sessions-container .mtp-col-4, .mtp-class-sessions-container .mtp-col-8 {
            width: unset;
        }
    }

    .mtp-course-waiting-list-container td {
        padding-top: .25rem;
        padding-bottom: .25rem;
    }

    .mtp-course-waiting-list-container div.mtp-data-row:nth-of-type(odd) {
        background-color: #f2f2f2;
        background-color: rgba(0,0,0,.05);
    }

    @media screen and (max-width: 575.98px) {
        .mtp-class-schedule-list-container, .mtp-class-waiting-list-container {
            margin-left: -21px;
            margin-right: -21px;
        }
    }

    /* referral lists
----------------------------------------------------------*/

    @media screen and (max-width: 767.98px) {
        td.mtp-referral-list-table-referral-list-position-column {
            margin-left: -0.5rem !important;
            margin-right: -0.5rem !important;
            margin-top: -0.5rem !important;
            border-bottom: 1px solid gray;
            border-bottom: 1px solid rgb(222, 226, 230);
            background-color: #b2b2b2;
            background-color: rgba(0, 0, 0, .3);
            color: #fff;
            font-weight: 700;
            text-align: center;
        }
    }

    /* IATSE search for skills
----------------------------------------------------------*/
    .mtp-iatse-search-for-skills-skill-type-group h2 {
        font-size: 1.25rem;
    }

    .mtp-iatse-search-for-skills-skill-group h3 {
        font-size: 1rem;
    }

    .mtp-iatse-search-for-skills-city-column {
        width: 9rem;
    }

    @media (min-width: 825px) {
        .mtp-iatse-search-for-skills-city-column {
            width: 12rem;
        }
    }

    @media (min-width: 992px) {
        .mtp-iatse-search-for-skills-city-column {
            width: 15rem;
        }
    }

    @media (min-width: 1200px) {
        .mtp-iatse-search-for-skills-city-column {
            width: 18rem;
        }
    }

    .mtp-iatse-search-for-skills-mobile-phone-column, .mtp-iatse-search-for-skills-misc-phone-column {
        width: 8rem;
    }

    .mtp-iatse-search-for-skills-resume-column {
        width: 6.5rem;
    }



    @media screen and (max-width: 767.98px) {

        .mtp-iatse-search-for-skills-skill-type-group h2 {
            background-color: #FDFDFD;
            border-bottom: 1px solid #ddd;
            border-top: 1px solid #ddd;
        }

            .mtp-iatse-search-for-skills-skill-type-group h2:nth-child(1) {
                border-top: none;
            }

        .mtp-iatse-search-for-skills-skill-group h3 {
            border: 1px solid gray;
            border: 1px solid rgb(222, 226, 230);
            background-color: #f2f2f2;
            background-color: rgba(0,0,0,.05);
            font-weight: 700;
            text-align: center;
            margin-top: 2rem;
            margin-left: 1rem;
            margin-right: 1rem;
        }

        .mtp-iatse-search-for-skills-skill-group div {
            border-left: 1px solid gray;
            border-left: 1px solid rgb(222, 226, 230);
            border-right: 1px solid gray;
            border-right: 1px solid rgb(222, 226, 230);
        }
    }

    /* IATSE working dues statement
----------------------------------------------------------*/

    #iatse-working-dues-statement {
        min-width: 650px;
    }

    /* Contractor member skills
----------------------------------------------------------*/

    .contractor-member-expired-skill {
        color: red;
    }

    /* job listing report page
----------------------------------------------------------*/

    #job-listing-report h1, #job-listing-report th {
        font-size: 1em;
    }

    #job-listing-report thead tr {
        background-color: black;
        color: white;
    }

    #job-listing-report th, #job-listing-report td {
        padding: 5px 12px;
    }

    #job-listing-report .data-grid-row-alt {
        background-color: white;
        color: black;
    }

    #job-listing-report .data-grid-row {
        background-color: #F4F4F4;
        color: black;
    }

    /* Referrals With Notes Report
----------------------------------------------------------*/

    .mtp-referral-with-notes-report-row-number-column {
        width: 3rem;
    }

    .mtp-referral-with-notes-report-position-column {
        width: 4rem;
    }

    .mtp-referral-with-notes-report-name-column {
        width: 12rem;
    }

    .mtp-referral-with-notes-report-city-column {
        width: 9rem;
    }

    .mtp-referral-with-notes-report-phone-column {
        width: 8rem;
    }

    .mtp-referral-with-notes-report-misc-phone-column {
        width: 8rem;
    }



    @media (min-width: 825px) {
        .mtp-referral-with-notes-report-name-column {
            width: 15rem;
        }
    }

    @media (min-width: 992px) {
        .mtp-referral-with-notes-report-name-column {
            width: 18rem;
        }
    }

    @media (min-width: 1200px) {
        .mtp-referral-with-notes-report-name-column {
            width: 20rem;
        }
    }

/* NCAL Apprenticeship application
----------------------------------------------------------*/

#northern-california-apprenticeship-application-confirm-form input {
    min-width: 5rem;
}


/* Contractor Worker Requests
----------------------------------------------------------*/

#add-edit-contractor-worker-request-worker-type-form a {
    text-decoration: none;
    color: inherit;
}

#add-edit-contractor-worker-request-worker-type-form #member-list-group-item-template {
    display: none !important;
}


/* Monthly Apprentice Reports
----------------------------------------------------------*/

#edit-monthly-apprentice-report-form td input {
    min-width: 5em;
}


/* Signature Caption Modal
----------------------------------------------------------*/

.mtp-signature-capture-modal .modal-dialog {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: calc(100% - (1rem * 2));
    min-height: calc(100% - (1rem * 2));
    margin: 1rem;
}

.mtp-signature-capture-modal .modal-content {
    height: 100%;
}


/* Public Class Calendar
----------------------------------------------------------*/

@media (min-width: 768px) {
     #class-calendar td {
         width: 14.27% !important;
     }

     #class-calendar .list-group {
         min-height: 6rem;
     }

     .mtp-border-md-right {
         border-right: 1px solid #dee2e6 !important;
     }

     .mtp-border-md-left {
         border-left: 1px solid #dee2e6 !important;
     }
 }

#class-calendar .list-group-item {
    font-size: 0.75rem;
}

/* Online Classes
----------------------------------------------------------*/

#main-online-classes {
    display: none;
}

#grid-sub-activities > thead > tr {
    background-color: #4b6c9e;
    border: 1px solid black;
}

.hoverEff {
    cursor: pointer;
}

.hoverEff:hover {
     background-color: rgb(248, 242, 242);
}


/* Member QR Code Searching
----------------------------------------------------------*/
#find-member-by-qr-code-app .validation-success,
#find-member-by-qr-code-app .validation-failure,
#find-member-by-qr-code-app .validation-pending {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .8);
    text-align: center;
    font-weight: bold;
    font-size: 1.4rem;
    padding: 10px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}

#find-member-by-qr-code-app .validation-success {
    color: green;
}

#find-member-by-qr-code-app .validation-failure {
    color: red;
}

#find-member-by-qr-code-app .loading-indicator {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 1.0);
    font-weight: bold;
    font-size: 2rem;
    text-align: center;
    padding: 10px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}

/* Members Currently Working Report
----------------------------------------------------------*/

@media (min-width: 768px) {
    .mtp-members-currently-working-report-paid-thru-date-column { width: 9rem; }

    .mtp-members-currently-working-report-payment-type-column { width: 8rem; }

    .mtp-members-currently-working-report-total-due-column { width: 6rem; }

    .mtp-members-currently-working-report-dispatch-date-column { width: 8rem; }
}

/* Authorize.net
----------------------------------------------------------*/

@media (min-width: 900px) {
    #add-edit-authorize-net-payment-method-dialog > .modal-dialog {
        max-width: 820px;
    }
}