/* Color Pallettes: https://colorhunt.co/palette/def5e5bcead59ed5c58ec3b0 */
/* Flex Guide: https://codepen.io/imohkay/pen/AWyojz */
/* Fontawesome: https://fontawesome.com/search?q=attac&o=r&m=free */
:root {
    --main-radius: 5px;
    --main-padding: 5px;
    --navBarHeight: 60px;
    --pg-title-bar-height: 45px;
    --bg-dark: #1e2022;
    --bg-secondary: #393E46;
    --bg-primary: #AAC4FF;
    --bg-success: #28FFBF;
    --bg-danger: #FA7070;
    --bg-warning: #FFF38C;
    --bg-info: #85F4FF;
    --table-row-background: #AAC4FF; /* #BCFFB9; */
    --body-background-color: #ffffff; /*#c7ffd8; */
}
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: var(--main-font-size);
    line-height: 1.5;
    color: #495464;
    text-transform: uppercase;
    font-weight: 500;
    background-color: var(--body-background-color); 
}
.font-control, input, select, textarea {
    font-size: var(--main-font-size) !important;
}
.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;  /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
  
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
  
    /* Support for Firefox. */
    /*-moz-osx-font-smoothing: grayscale; /*
  
    /* Support for IE. */
    /*font-feature-settings: 'liga'; */
}
/* Rules for sizing the icon. */
.material-icons.md-18 { font-size: 18px; }
.material-icons.md-24 { font-size: 24px; }
.material-icons.md-36 { font-size: 36px; }
.material-icons.md-48 { font-size: 48px; }

.material-symbols.md-18 { font-size: 18px; }
.material-symbols.md-24 { font-size: 24px; }
.material-symbols.md-36 { font-size: 36px; }
.material-symbols.md-48 { font-size: 48px; }

.material-symbols-outlined.md-18 { font-size: 18px; }
.material-symbols-outlined.md-24 { font-size: 24px; }
.material-symbols-outlined.md-36 { font-size: 36px; }
.material-symbols-outlined.md-48 { font-size: 48px; }


/* Rules for using icons as black on a light background. */
.material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }

/* Rules for using icons as white on a dark background. */
.material-icons.md-light { color: rgba(255, 255, 255, 1); }
.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }

.dataTable { width: 100%; }
.dataTable, .dataTable th, .dataTable td {
    font-size: 11px;
}
.dataTable td.text-right {
    text-align: right;
}
.datarow:hover {
    background-color: var(--table-row-background) !important; 
}
.main-container {
    margin-top: 70px; 
    min-height: 100vh !important; 
    width: 100vw !important;
    overflow-x: hidden;
}
.pg-top-gap {
    margin-top: 50px;
}
.pg-title-bar {
    position: fixed; 
    top: 60px;
    z-index: 100;
    width: 100%;
    height: var(--pg-title-bar-height);
    display: grid;
    grid-template-columns: 2fr 3fr 2fr;
    grid-template-columns: repeat(auto-fit,1fr);
    align-items: center;
    color: #fff;
    /*background-color: #05595B;*/
    background-color: #495464 !important;
}
.text-title {
    font-size: 22px !important;
    font-weight: 800;
}

/* Color Palettes https://coolors.co/palettes/palettes */
bg-navy         { background-color: #14213d; }
bg-dark-gray    { background-color: #6b705c; }
bg-light-gray   { background-color: #b7b7a4; }
bg-gold         { background-color: #ffbe0b; }
bg-aqua-green   { background-color: #06d6a0; }
bg-teal-blue    { background: #86A3B8 !important; }

.bg-dark {
    background-color: var(--bg-dark) !important;
}
.bg-secondary {
    background-color: var(--bg-secondary);
    color: #FAEDF0;
    /*background-color: #5C8D89 !important;*/
}
.bg-success {
    background-color: var(--bg-success) !important;
}
.tbl-col input {
    padding: 6px;
    text-align: right !important;
    background-color: transparent !important;
    border: 0px solid transparent;
    max-width: 80px !important;
}
.cellprompt {
    text-align: right !important;
    padding-right: 4px !important;
}
.pg-card-bar {
    width: 100%;
    height: 60px;
    display: grid;
    grid-template-columns: 3fr 2fr 1fr;
    grid-template-columns: repeat(auto-fit,1fr);
    align-items: center;
}
.pg-card-bar:last-child {
    margin-right: 22px;
}
.DataTable tr td {
    font-size: 1vmin !important;
}
/* ASI Alert Modal */
#asiAlertModal {
    z-index: 10000;
}
.modal {
    color: #fff;
}

#navmodalheader {
    background: #14213d;
    color: #fff;
    font-size: 18px;
}
ul.dotted {
    list-style-type: square;
}
img {
    max-width: 100%;
}
.caret li {
    font-size: 36px;
}
h1,
h2 {
    margin-bottom: 15px;
}

.container {
    max-width: 1900px !important;
    margin: 0 auto;
    padding: 0 30px;
}

.flex-row {
    display: flex;
    width: 100%;
    gap: 10px;
}
.flex-box {
    display: flex;
    justify-content: space-between;
}
.flex-box-inner {
    flex: 1;
    padding: 16px;
}
.flex-box-column {
    flex: 1;
}

.grow {
    display: flex;
    justify-items: center;
    justify-content: flex-start;
    height: 60px;
}
.gcol {
    text-transform: none;
    height: 34px;
    justify-content: center;
}
.gcol a {
    font-size: 15px;
    text-decoration: none;
}
.gcol .bx-chevrons-right {
    margin-right: 5px;
    font-size: 20px;
}

.tbl-row {
    display: flex;
    justify-items: center;
    justify-content: flex-start;
}
.tbl-col {
    text-transform: none;
    justify-content: center;
    flex: 1 1 0px;
    flex-basis: auto;
}
.tbl-col a {
    font-size: 15px;
    text-decoration: none;
}
.tbl-col input {
    padding: 2px;
    float: right;
    text-align: right;
}

.btnMenu {
    border: 1px solid #14213d;
    padding: 10px;
    border-radius: 6px;
}
.btnMenu:hover {
    background-color: #578ba0;
    cursor: pointer;
}
.mega-title {
    text-align: center;
    background-color: #03071e;
    border: 1px solid #fff;
    display: block;
    padding: 12px 0px;
}
.toEnd { margin-top:auto; }

.hotspot { cursor: pointer; }
.hotlink { 
    text-decoration: none;
}
.hotlink:hover { 
    cursor: pointer; 
    text-decoration: underline;
}

.nav-item-link {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}

.navbar {
    background: #393E46; 
    color: rgb(163, 172, 172);
    height: var(--navBarHeight);
    padding: 0px 20px 0px 0px;
    position: fixed;
    top: 0px;
    z-index: 100;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
}

.navbar a {
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    font-size: 18px;
}

.usrInfoSearchBox {
    display: flex;
}
.usrInfoSearchBox .logo {
    font-size: x-large;
    font-weight: bold;
}
.icon {
    font-size: 30px;
}
.icon-lg {
    font-size: 36px;
}
.bxicon {
    font-size: 32px;
}

.nav {
    display: flex;
    flex-wrap: nowrap;
}
.navbar .navicons {
    display: flex;
    flex: 3 1;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}

.navbar ul {
    display: flex;
}

.navbar ul li {
    margin-left: 20px;
}

.navbar a:hover {
    color: lightblue;
    cursor: pointer;
}

ul {
    list-style-type: none;
}

.header {
    background-color: #0151cc;
    color: rgb(163, 172, 172);
    min-height: 400px;
    margin-top: var(--navBarHeight);
}

.header h1 { 
    font-size: 3rem; 
    font-weight: bold; 
    line-height: 1.2; 
}
.header .container img { 
    max-width: 400px; 
    display: block;
    min-width: 100px;
    height: auto;       /* maintain aspect ratio*/
    margin: auto;       /*optional centering of image*/
}
.image-example { text-align: center; margin: 5% auto; } 

.header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.boxes .container {
    display: flex;
    justify-content: space-between;
}
.box {
    flex: 1;
    background: #0a51cc;
    color: rgb(163, 172, 172);
    border-radius: 10px;
    margin: 20px 10px;
    box-shadow: 0 3px 5px rgba(0,0,0,0.6);
}
.box i {
    margin-right: 10px;
}

@media(max-width: 768px) {
    .header .container {
        flex-direction: column;
        padding-top: 20px;
        text-align: center;
    }
    .boxes .container {
        display: block;
        text-align: center;
    }
}
.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 14px;  /* Preferred icon size */
    padding: 0px !important;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
  
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
  
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
  
    /* Support for IE. */
    font-feature-settings: 'liga';
}

.tooltip-bs-arrow, .asi-tooltip + .tooltip > .tooltip-inner { background-color: #47B5FF; color: #06283D; }

.filtersForm { 
    width: 100%;
    height: inherit !important;
    background-color: rgb(176, 179, 174, 1);
    float: left;
    color: #000;
}


#asislide {
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background-color: rgba(0,128,128, .40);
    top: 0;
    right: 0;
    transform: translate3d(+100vw, 0, 0);
    transition: transform .3s cubic-bezier(0, .52, 0, 1);
    overflow-y: auto;
    overflow-x: hidden;
}
#asislide h2 a {
    color: #333;
    margin-right: 15px;
    text-decoration: none;
}
#asislide h2 a:hover {
    text-decoration: underline;
}
#asislide.show {
    transform: translate3d(0vw, 0, 0);
}


#asiDialogue {
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background-color: rgba(0,128,128, .40);
    top: 0;
    right: 0;
    transform: translate3d(+100vw, 0, 0);
    transition: transform .3s cubic-bezier(0, .52, 0, 1);
    overflow-y: auto;
    overflow-x: hidden;
}
#asiDialogue h2 a {
    color: #333;
    margin-right: 15px;
    text-decoration: none;
}
#asiDialogue h2 a:hover {
    text-decoration: underline;
}
#asiDialogue.show {
    transform: translate3d(0vw, 0, 0);
}
#asiDialogue div.content {
    width: 100vw !important;
    height: 100vh !important;
    margin: auto;
    position: absolute;
    top: 0%;
    left: 0%;
    padding: 20px;
}


#asiFancyBox {
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background-color: rgba(0,128,128, .40);
    top: 0;
    right: 0;
    transform: translate3d(+100vw, 0, 0);
    transition: transform .3s cubic-bezier(0, .52, 0, 1);
    overflow-y: auto;
    overflow-x: hidden;
}
#asiFancyBox h2 a {
    color: #333;
    margin-right: 15px;
    text-decoration: none;
}
#asiFancyBox h2 a:hover {
    text-decoration: underline;
}
#asiFancyBox.show {
    transform: translate3d(0vw, 0, 0);
}
#asiFancyBox div.content {
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    top: 20%;
    left: 25%;
    padding: 20px;
}


.dropdown-item:hover {
    cursor: pointer; 
    background-color: #8EC3B0;
    color: #000;
}

.blockScreen {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 10000;
    display: none;
    background-color: #CCC;
    filter: "alpha(opacity = 55)";
    opacity:.55;
}
.shadow { box-shadow: 4px 4px 3px #366097; }

.smartTable {
    border-collapse:collapse; 
    margin-bottom: 4px;
}
.smartTable                         { background-color:#CCCCCC  ; }
.smartTable th, .smartTable td      { border:1px solid #000000  ; padding:1px; }
.smartTable th                      { background-color:#666666  ; color:#FFFFFF; }
.smartTable .r0 td                  { background-color:#fff     ; color: #000; }
.smartTable .r1 td                  { background-color:#F6F6F6  ; }
.smartTable .over td                { background-color:#FF8800  ; }
.smartTable .sortedAsc              { background-color:#66CC66 !important; }
.smartTable .sortedDesc             { background-color:#CC6666 !important; }
.smartTable a                       { text-decoration: none; color: blue;  }
.datarow:hover
{
    color: #000;
    background-color: #fbfbb8;
}
.datarowalert:hover
{
    color: #000;
    background-color: #fbfbb8; 
    cursor: pointer; 
    background-image: url('../assets/images/blue_tablebg.gif'); 
    background-repeat: repeate-x;
}
.datarow
{
    color: #000;
}
.datarowalert
{
    color: #FFF;
    background-image: url('../assets/images/links_bg.gif'); 
    background-repeat: repeate-x;
}
.datarow:nth-child(odd) { background-color: #eee; }
.datarow:nth-child(odd):hover { background-color: #fbfbb8;}

.dataheading
{
    background-color: #666666; color:#FFFFFF; text-align: center;
}

.hoverover, .hoveroverClicked { 
    border-top: 2px solid #000;
    border-bottom: 2px dotted #000;
    border-right: 1px solid #000; 
    height: 36px !important;
    padding-top: 0px !important;
    text-align: center;
}
.hoverover:hover  { cursor: pointer; background-color: #6495ED; color: #000; }
.hoveroverClicked { 
    border-top: 2px solid red;
    border-bottom: 2px dotted red;
    background-color: #64a383; 
}
.hoveroverClicked:hover { cursor: pointer; background-color: #6495ED; }

input.numbersOnly {
    text-align: right;
    padding-right: 12px;
}

.border-dark {
    border: 1px solid #000 !important;
}
.border-primary {
    border: 1px solid #0151cc !important;
}
.border-secondary {
    border: 1px solid #333 !important;
}

.datapanel {
    background-color: #eee !important;
}

.arialnine {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 9px !important;
    text-transform: none;
    font-weight: 400;
}
.arialten {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 10px !important;
    text-transform: none;
    font-weight: 400;
}
.arialeleven {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 11px !important;
    text-transform: none;
    font-weight: 400;
}
.arialtwelve {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 12px !important;
    text-transform: none;
    font-weight: 400;
}
.highlightstring {
    color: red;
    text-transform: underline;
}

/*  Modals */
.modal-action {
    z-index: 1500;
    width: 100%;
    height: 100vh;
    background-color:rgba(0, 0, 0, .70);
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 1s;
}
.modal-active {
    visibility: visible;
    opacity: 1;
}
.modal-fadeout {
    visibility: hidden;
    opacity: 0;
}
.modal-content, .modal-iframe {
    background: rgb(8,15,31,1);
    margin-top: 60px;
    width: 100%;
    height: 96vh;
    position: relative;
    padding: 0;
}
.modal-alert {
    background: #fff;
    padding: 0;
    margin: auto;
    z-index: 1600;
}
.modal-close {
    position: absolute;
    top: 0px;
    right: 0px;
    font-weight: bold;
}
/* End Modals */

input:read-only {
    background-color: #d5d7df;
    pointer-events: none !important;
}
input#docFile, input#fileInput, input.fileUp {
    pointer-events: auto !important;
}
.form-control {
    border-radius: 0px !important;
    border: .5px solid rgba(39, 55, 77, .30) !important;
}
input.form-control:focus, select.form-control:focus, textarea.form-control:focus {
    background-color: #FFFFD0 !important;
}
input#jobNumber {
    background-color: #87f806;
    font-size: 20px !important;
    font-weight: 800;
    padding: 0px !important;
    text-align: center !important;
}


.subchoice, .subchoiceClicked { 
    color: #FFFFFF; 
    background-color: #2F4F4F; 
    border-bottom: 1px dotted #003; 
    height: 32px; 
    padding: 6px; 
    vertical-align: middle; 
    border-right: 1px solid #FFF; }
.subchoice:hover { cursor: pointer; background-color: #033; color: #FFFFFF; }
.subchoiceClicked { 
    color: #ffffff;
    background-color: #033; 
}
.subchoiceClicked:hover { color: #ffffff; cursor: pointer; background-color: #033; }

.mgt-5  { margin-top: 5px  !important; }
.mgt-10 { margin-top: 10px !important; }
.mgt--5  { margin-top: -5px  !important; }
.mgt--10 { margin-top: -10px !important; }


#flyoutAccessorials {
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background-color: rgba(0,128,128, .40);
    top: 0;
    right: 0;
    transform: translate3d(+100vw, 0, 0);
    transition: transform .3s cubic-bezier(0, .52, 0, 1);
    overflow-y: auto;
    overflow-x: hidden;
}
#flyoutAccessorials h2 a {
    color: #333;
    margin-right: 15px;
    text-decoration: none;
}

#flyoutAccessorials h2 a:hover {
    text-decoration: underline;
}
#flyoutAccessorials.show {
    transform: translate3d(0vw, 0, 0);
}

/* jQuery Dropdown: A simple dropdown plugin
*
* Contribute: https://github.com/claviska/jquery-dropdown
*
* @license: MIT license: http://opensource.org/licenses/MIT
*
*/
.jq-dropdown {
    position: absolute;
    z-index: 1039;
    display: none;
}
.jq-dropdown .jq-dropdown-menu,
.jq-dropdown .jq-dropdown-panel {
    min-width: 160px;
    max-width: 360px;
    list-style: none;
    background: white;
    border: solid 1px #ddd;
    border-radius: 4px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    overflow: visible;
    padding: 4px 0;
    margin: 0;
}
.jq-dropdown .jq-dropdown-panel {
    padding: 10px;
}
.jq-dropdown.jq-dropdown-tip {
    margin-top: 8px;
}
.jq-dropdown.jq-dropdown-tip:before {
    position: absolute;
    top: -6px;
    left: 9px;
    content: "";
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #ddd;
    display: inline-block;
}
.jq-dropdown.jq-dropdown-tip:after {
    position: absolute;
    top: -5px;
    left: 10px;
    content: "";
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid white;
    display: inline-block;
}
.jq-dropdown.jq-dropdown-tip.jq-dropdown-anchor-right:before {
    left: auto;
    right: 9px;
}
.jq-dropdown.jq-dropdown-tip.jq-dropdown-anchor-right:after {
    left: auto;
    right: 10px;
}
.jq-dropdown.jq-dropdown-scroll .jq-dropdown-menu,
.jq-dropdown.jq-dropdown-scroll .jq-dropdown-panel {
    max-height: 180px;
    overflow: auto;
}
.jq-dropdown .jq-dropdown-menu li {
    list-style: none;
    padding: 0 0;
    text-indent: 0;
    margin: 0;
    line-height: 18px;
}
.jq-dropdown .jq-dropdown-menu li > a,
.jq-dropdown .jq-dropdown-menu label {
    display: block;
    color: inherit;
    text-decoration: none;
    line-height: 18px;
    padding: 3px 15px;
    margin: 0;
    white-space: nowrap;
}
.jq-dropdown .jq-dropdown-menu li > a:hover,
.jq-dropdown .jq-dropdown-menu label:hover {
    background-color: #f2f2f2;
    color: inherit;
    cursor: pointer;
}
.jq-dropdown .jq-dropdown-menu .jq-dropdown-divider {
    font-size: 1px;
    border-top: solid 1px #e5e5e5;
    padding: 0;
    margin: 5px 0;
}

.page-footer {
    position:fixed;
    bottom:0;
    left:0;
    z-index:1;
    display:block;
    width:100%;
    height:5%;
    overflow:hidden;
    outline:0;
    background-color: rgba(178, 178, 178);
}

.fa-print {
    color: #973660 !important;
}
.fa-print:hover {
    cursor:  pointer !important;
}

.text-link {
    text-decoration: none !important;
}
.text-link:hover {
    text-decoration: underline !important;
}