/*******************************
 *******************************
 *** RESET STYLES
 *******************************
 *******************************/
html * {box-sizing: border-box;}
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption,
center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure,
footer, form, h1, h2, h3, h4, h5, h6, header, html, i, iframe, img, ins, kbd, label, legend, li, mark,
menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary,
sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {vertical-align: baseline; outline: none;}
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:after, blockquote:before, q:after, q:before {content: '';}
table {border-collapse: collapse; border-spacing: 0;}

a, button, input[type=button], input[type=checkbox], input[type=radio], input[type=reset], input[type=submit], label, select,
a, button:focus, input[type=button]:focus, input[type=checkbox]:focus, input[type=radio]:focus, input[type=reset]:focus, input[type=submit]:focus {outline: none;}

/*******************************
 *******************************
 *** MAIN STYLES
 *******************************
 *******************************/
html, body {
    min-height: 100vh;
}

html {
    position: relative;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    width: 100%;
    height: 100%;
    word-wrap: break-word;
    font-family: 'Lato', Helvetica, sans-serif;
    background: #f5f5f5;
    overflow-y: scroll;
}

a {
    color: #212529;
}

a:hover {
    text-decoration: none;
    color: #fdb714;
}

.page-wrapper {
    height: 100vh;
    min-height: 100%;
    display: -ms-grid;
    display: grid;
    grid-template-areas: 'header' 'content' 'footer';
    -ms-grid-rows: 58px 1fr 62px;
    grid-template-rows: 58px 1fr 62px;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    grid-gap: 0;
}

.header {
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    grid-area: header;
}

.footer {
    -ms-grid-column: 1;
    -ms-grid-row: 3;
    grid-area: footer;
}

.content-wrapper {
    -ms-grid-column: 1;
    -ms-grid-row: 2;
    grid-area: content;
    position: relative;
}

.page-title-container {
    background: #9a9da0;
}

.page-title {
    color: #fff;
    font-size: 16px;
    margin: 0;
}

.page-title > span {
    font-size: 13px;
    text-transform: none;
}

.breadcrumb-container {
    display: inline-block;
}

.breadcrumb {
    margin: 0;
    background: #f5f5f5;
    padding: 4px 10px;
}

.breadcrumb-item {
    font-size: 0.7em;
    text-transform: uppercase;
}

/*******************************
 *******************************
 *** NAVIGATION STYLES
 *******************************
 *******************************/
.navbar-brand {
    font-size: 2rem;
}

.nav-link > svg {
    margin-right: 5px;
}

/*******************************
 *******************************
 *** FOOTER STYLES
 *******************************
 *******************************/
.footer {
    width: 100%;
    height: 62px;
    line-height: 60px;
    background-color: #e2e2e2;
}

.copyright {
    font-size: 12px;
}

/*******************************
 *******************************
 *** SING-IN PAGE STYLES
 *******************************
 *******************************/
body.signin-page {
    display: flex;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: #f5f5f5;
}

.form-signin {
    width: 100%;
    max-width: 330px;
    padding: 15px;
    margin: auto;
}

.form-signin .logo {
    font-size: 5rem;
}

.form-signin .form-control {
    position: relative;
    height: auto;
    padding: 10px;
    font-size: 16px;
}

.form-signin .form-control:focus {
    z-index: 2;
}

.form-signin input[type='text'] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.form-signin input[type='password'] {
    margin-bottom: 10px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

/*******************************
 *******************************
 *** CUSTOM STYLES
 *******************************
 *******************************/
.main_cap {
    width: 100%;
    height: 100%;
    position: fixed;
    display: none;
    background: rgba(245, 245, 245, 0.6);
    top: 0;
    left: 0;
    z-index: 1031;
}

.in-progress .main_cap {
    display: flex !important;
}

.no-select {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}