/* Minification failed. Returning unminified contents.
(288,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(289,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(290,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(294,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(297,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(297,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(297,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(298,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(298,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(298,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(299,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(299,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(299,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(300,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(300,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(300,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(301,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(301,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(301,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(302,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(302,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(302,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(303,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(303,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(303,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(304,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(304,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(304,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(309,35): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(309,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(309,93): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(309,126): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(310,55): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(310,81): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(310,113): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(321,46): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(321,74): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(334,46): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(334,74): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(337,46): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(337,75): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(346,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(349,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(360,48): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(360,77): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(360,99): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(361,34): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(365,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(366,38): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(367,38): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(376,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(377,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(380,47): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(383,47): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(387,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(388,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(391,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(392,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(396,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(397,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(401,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(402,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(406,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(407,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(411,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(414,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(429,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(432,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(436,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(437,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(439,26): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(444,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(453,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(459,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(460,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(464,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(471,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(474,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(484,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(487,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(493,22): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(497,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(585,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(589,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(645,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(648,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(687,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(688,49): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(688,78): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-hover'
(818,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(896,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(912,49): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(912,71): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(913,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(947,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(951,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(954,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(957,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1032,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1033,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1183,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1185,43): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1186,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(1189,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1191,43): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1192,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary-active'
(1198,43): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1202,43): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1212,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-tint'
(1218,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1280,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1282,54): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1283,38): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1300,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1302,51): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1318,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1414,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1416,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-primary'
(1445,1): run-time error CSS1019: Unexpected token, found '@import'
(1445,9): run-time error CSS1019: Unexpected token, found 'url('https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i')'
(2548,4): run-time error CSS1019: Unexpected token, found '@-webkit-keyframes'
(2548,41): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(2548,133): run-time error CSS1019: Unexpected token, found '@keyframes'
(2548,162): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(3030,1098): run-time error CSS1019: Unexpected token, found '@-webkit-keyframes'
(3030,1137): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(3030,1258): run-time error CSS1019: Unexpected token, found '@keyframes'
(3030,1289): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
 */
.timeselector {
    padding: 2px;
    line-height: 100%;
    color: #333;
    border: solid 1px #aaa;
    border-radius: 6px;
    background: #c9c9c9;
    position: absolute;
    overflow: hidden;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

.timeselector-item,
.timeselector-separator {
    float: left;
}

.timeselector-value,
.timeselector-button {
    padding: 2px 8px;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
}

.timeselector-value {
    display: block;
    color: #444;
    border: solid 1px #fff;
    background: #eee;
}

.timeselector-separator {
    padding: 0 2px;
    margin-top: 26%;
}

.timeselector-button {
    display: block;
    text-decoration: none;
    color: #3383bb;
    border: solid 1px #ccc;
    background: #eee;
}

    .timeselector-button:hover {
        color: #599fcf;
        border-color: #bbb;
        background: #f8f8f8;
    }

.timeselector-up {
    border-width: 1px 1px 0;
    border-radius: 4px 4px 0 0;
}

.timeselector-down {
    border-width: 0 1px 1px;
    border-radius: 0 0 4px 4px;
}body {
}

#upcoming-timeline {
    height: 395px;
    max-height: 395px;
    overflow: auto
}

#upcoming-timeline-full {
    height: calc(100vh - 130px);
    max-height: calc(100vh - 130px);
    width: 100%;
    overflow: auto
}

.fs-dashboard #upcoming-timeline-full {
    height: calc(100vh - 90px);
    max-height: calc(100vh - 90px);
    width: 100%;
    overflow: auto
}

.timeline {
    list-style: none;
    padding: 20px 0 20px;
    position: relative;
}

    .timeline:before {
        top: 0;
        bottom: 0;
        position: absolute;
        content: " ";
        width: 3px;
        background-color: #eeeeee;
        left: 50%;
        margin-left: -1.5px;
    }

    .timeline > li {
        margin-bottom: 20px;
        position: relative;
    }

        .timeline > li:before,
        .timeline > li:after {
            content: " ";
            display: table;
        }

        .timeline > li:after {
            clear: both;
        }

        .timeline > li:before,
        .timeline > li:after {
            content: " ";
            display: table;
        }

        .timeline > li:after {
            clear: both;
        }

        .timeline > li > .timeline-panel {
            width: 43.5%;
            float: left;
            border: 1px solid #d4d4d4;
            border-radius: 10px;
            padding: 10px;
            position: relative;
           /* -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
            box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);*/
        }

            .timeline > li > .timeline-panel:before {
                position: absolute;
                top: 26px;
                right: -15px;
                display: inline-block;
                border-top: 15px solid transparent;
                border-left: 15px solid #ccc;
                border-right: 0 solid #ccc;
                border-bottom: 15px solid transparent;
                content: " ";
            }

            .timeline > li > .timeline-panel:after {
                position: absolute;
                top: 27px;
                right: -14px;
                display: inline-block;
                border-top: 14px solid transparent;
                border-left: 14px solid #fff;
                border-right: 0 solid #fff;
                border-bottom: 14px solid transparent;
                content: " ";
            }

        .timeline > li > .timeline-badge {
            color: #fff;
            width: 50px;
            height: 50px;
            line-height: 50px;
            font-size: 1.4em;
            text-align: center;
            position: absolute;
            top: 16px;
            left: 50%;
            margin-left: -25px;
            background-color: #999999;
            z-index: 100;
            border-top-right-radius: 50%;
            border-top-left-radius: 50%;
            border-bottom-right-radius: 50%;
            border-bottom-left-radius: 50%;
        }

        .timeline > li.timeline-inverted > .timeline-panel {
            float: right;
        }

            .timeline > li.timeline-inverted > .timeline-panel:before {
                border-left-width: 0;
                border-right-width: 15px;
                left: -15px;
                right: auto;
            }

            .timeline > li.timeline-inverted > .timeline-panel:after {
                border-left-width: 0;
                border-right-width: 14px;
                left: -14px;
                right: auto;
            }

.timeline-badge.primary {
    background-color: #2e6da4 !important;
}

.timeline-badge.success {
    background-color: #3f903f !important;
}

.timeline-badge.warning {
    background-color: #f0ad4e !important;
}

.timeline-badge.danger {
    background-color: #d9534f !important;
}

.timeline-badge.info {
    background-color: #5bc0de !important;
}

.timeline-title {
    margin-top: 0;
    color: inherit;
}

.timeline-body > p,
.timeline-body > ul {
    margin-bottom: 0;
}

    .timeline-body > p + p {
        margin-top: 5px;
    }

@media (max-width: 767px) {
    ul.timeline:before {
        left: 40px;
    }

    ul.timeline > li > .timeline-panel {
        width: calc(100% - 90px);
        width: -moz-calc(100% - 90px);
        width: -webkit-calc(100% - 90px);
    }

    ul.timeline > li > .timeline-badge {
        left: 15px;
        margin-left: 0;
        top: 16px;
    }

    ul.timeline > li > .timeline-panel {
        float: right;
    }

        ul.timeline > li > .timeline-panel:before {
            border-left-width: 0;
            border-right-width: 15px;
            left: -15px;
            right: auto;
        }

        ul.timeline > li > .timeline-panel:after {
            border-left-width: 0;
            border-right-width: 14px;
            left: -14px;
            right: auto;
        }
}

/* ============================================================
   Theme switcher: color themes + light/dark mode.

   style.css hardcodes colors (e.g. .btn-primary { background-color: #20a8d8 })
   instead of using CSS variables, so it can't be re-themed by just
   overriding a :root custom property. These rules re-point the specific
   components that carry the "primary" brand color at a CSS variable
   instead, scoped under [data-theme-color] / [data-bs-theme] on <html>
   (set by theme-switcher.js). Default color/mode for first-time
   visitors (no localStorage yet) is "blue" / "light" - see
   getStoredColor()/getStoredMode() in theme-switcher.js and the
   anti-flash script in _app-meta.cshtml, which both need to agree.
   "blue" has no dedicated html[data-theme-color="blue"] rule since
   it IS the :root default below - its shades match .bg-blue-gradient
   (#0073b7 -> #0089db), the header's original hardcoded gradient,
   rather than the old, unrelated #20a8d8 CoreUI default blue.
   ============================================================ */

:root {
    --theme-primary: #0089db;
    --theme-primary-hover: #0073b7;
    --theme-primary-active: #005f95;
    /* base for the light-mode jqGrid tints (color-mix against white).
       Same as primary except where primary is too dark/desaturated to
       tint into anything but gray (navy). */
    --theme-tint: var(--theme-primary);
}

html[data-theme-color="indigo"] { --theme-primary: #6610f2; --theme-primary-hover: #560bd0; --theme-primary-active: #4c09b5; }
html[data-theme-color="purple"] { --theme-primary: #6f42c1; --theme-primary-hover: #59339d; --theme-primary-active: #4e2d89; }
html[data-theme-color="pink"]   { --theme-primary: #e83e8c; --theme-primary-hover: #d21f74; --theme-primary-active: #b81c65; }
html[data-theme-color="red"]    { --theme-primary: #f86c6b; --theme-primary-hover: #f63c3a; --theme-primary-active: #f52422; }
html[data-theme-color="orange"] { --theme-primary: #f8cb00; --theme-primary-hover: #c7a200; --theme-primary-active: #b18f00; }
html[data-theme-color="green"]  { --theme-primary: #4dbd74; --theme-primary-hover: #3a9d5d; --theme-primary-active: #348c53; }
html[data-theme-color="teal"]   { --theme-primary: #20c997; --theme-primary-hover: #1aa77e; --theme-primary-active: #178f6b; }
html[data-theme-color="cyan"]   { --theme-primary: #17a2b8; --theme-primary-hover: #117a8b; --theme-primary-active: #0f6674; }
/* navy: #0e1c3a is so dark that hover/active can't go darker in any
   visible way, so hover is a step lighter. In dark mode the same color
   would be invisible as text/borders/outline buttons on the dark
   surfaces (~1.1:1), so dark mode uses a lighter navy-blue instead. */
html[data-theme-color="navy"]   { --theme-primary: #0e1c3a; --theme-primary-hover: #1a3366; --theme-primary-active: #091226; --theme-tint: #1f4aa0; }
html[data-theme-color="navy"][data-bs-theme="dark"] { --theme-primary: #5479cc; --theme-primary-hover: #4268b8; --theme-primary-active: #36579f; }

/* -------- light mode: header follows the selected theme color, as a gradient -------- */
/* .app-header carries .bg-blue-gradient, which hardcodes a blue
   gradient (background: linear-gradient(#0073b7, #0089db) roughly,
   bottom to top) regardless of theme color. Re-driven off the same
   --theme-primary/--theme-primary-hover variables used everywhere
   else, so the header actually matches whatever color is picked
   instead of always being blue. Dark mode keeps its own flat
   background (set separately, further down) - this is light-mode only. */
html[data-bs-theme="light"] .app-header {
    background: linear-gradient(to top, var(--theme-primary-hover), var(--theme-primary)) !important;
}

/* .bg-blue-gradient is also reused elsewhere as a generic "accent"
   utility - dashboard stat card headers (.brand-card-header), progress
   bar fills, and a couple of alert/banner partials - all still the
   same hardcoded blue regardless of theme color. :not(.app-header)
   keeps this independent of the header rule above/below regardless of
   source order, since both would otherwise match .app-header at equal
   specificity. Dark mode uses a darker gradient (like the modal-header
   color variants) rather than the header's own flat background, since
   these are small colored accents, not a page-spanning surface. */
html[data-bs-theme="light"] .bg-blue-gradient:not(.app-header) {
    background: linear-gradient(to top, var(--theme-primary-hover), var(--theme-primary)) !important;
}
html[data-bs-theme="dark"] .bg-blue-gradient:not(.app-header) {
    background: linear-gradient(to top, var(--theme-primary-active), var(--theme-primary-hover)) !important;
}

/* .bg-foursquare - one of CoreUI's social-brand-color utilities,
   repurposed here as a flat navy accent on the General Logistic
   dashboard's "Month Activity" summary card (_GeneralLogistic.cshtml,
   the only place it's used). Same hardcoded-blue-regardless-of-theme
   issue as .bg-blue-gradient above. */
html[data-bs-theme="light"] .bg-foursquare {
    background-color: var(--theme-primary) !important;
}
html[data-bs-theme="dark"] .bg-foursquare {
    background-color: var(--theme-primary-active) !important;
}

/* -------- pace.js top loading bar follows the theme color -------- */
/* pace.css hardcodes .pace-progress to a flat #20a8d8 (blue), so it never
   matched any other theme color. Re-driven off the theme variables, with a
   3-stop gradient (bolder than a flat fill) plus a matching glow so the bar
   reads clearly against both light and dark headers. Applies in both modes
   since this is a small accent element, not a mode-dependent surface. */
.pace .pace-progress {
    height: 3px !important;
    background: linear-gradient(to right, var(--theme-primary-active), var(--theme-primary), var(--theme-primary-hover)) !important;
    box-shadow: 0 0 8px 1px var(--theme-primary) !important;
}

/* -------- apply the active theme color wherever the app uses "primary" -------- */
.text-primary { color: var(--theme-primary) !important; }
.bg-primary { background-color: var(--theme-primary) !important; }
.border-primary { border-color: var(--theme-primary) !important; }

/* dashboard summary-card accent border + hover tint (.card-accent-primary,
   .bc-hover-primary - style.css). Hover is mixed against the surface
   color instead of copied flat, so it stays a light tinted highlight
   rather than a plain reskinned block; light/dark need different mix
   bases (white vs the app's dark card color) so each is scoped. */
.card-accent-primary,
.card-body.card-accent-primary {
    border-top-color: var(--theme-primary) !important;
    border-left-color: var(--theme-primary) !important;
}
html[data-bs-theme="light"] .bc-hover-primary:hover {
    background-color: color-mix(in srgb, var(--theme-primary) 20%, #fff) !important;
}
html[data-bs-theme="dark"] .bc-hover-primary:hover {
    background-color: color-mix(in srgb, var(--theme-primary) 25%, #262b30) !important;
}

.btn-primary {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}
.btn-primary:hover {
    background-color: var(--theme-primary-hover) !important;
    border-color: var(--theme-primary-hover) !important;
}
.btn-primary:focus, .btn-primary.focus,
.btn-primary:not(:disabled):not(.disabled):active {
    background-color: var(--theme-primary-active) !important;
    border-color: var(--theme-primary-active) !important;
}

.btn-outline-primary {
    color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}
.btn-outline-primary:hover,
.btn-outline-primary:not(:disabled):not(.disabled):active {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: #fff !important;
}

.badge-primary { background-color: var(--theme-primary) !important; }

a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link) {
    color: var(--theme-primary);
}

/* :not([class*="text-"]) - a .btn-link that also carries an explicit
   Bootstrap text-color utility (.text-light on the dashboard's Print/
   Full Screen buttons and the auth pages' "Login?"/"Forgot password?"
   links, .text-warning on the MFA page's "Resend code" countdown,
   etc) is asking for that color on purpose, usually because it sits
   on a colored/photo background where var(--theme-primary) either
   disappears (matches the background) or reads as a muted, hard-to-
   read color instead of the intended bright one. Excluding any
   text-*-classed element here means those utility classes' own
   (already !important) colors just win outright, instead of needing
   a growing list of .btn-link.text-X exceptions for each one found. */
.btn-link:not([class*="text-"]) {
    color: var(--theme-primary) !important;
}
.btn-link:not([class*="text-"]):hover {
    color: var(--theme-primary-hover) !important;
}

.page-item.active .page-link {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}
.page-link { color: var(--theme-primary); }

.nav-pills .nav-link.active,
.nav-tabs .nav-link.active,
.aside-menu .nav-tabs .nav-link.active {
    color: var(--theme-primary);
}
/* the active tab's top accent line is a hardcoded
   "border-top: 2px solid #20a8d8 !important" (style.css) - an
   !important beats a normal rule at any specificity, so this repeats
   it with !important and an extra class so it wins regardless of the
   stylesheets' load order */
.nav-tabs .nav-item .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    border-top-color: var(--theme-primary) !important;
}

.custom-control-input:checked ~ .custom-control-label::before,
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}

.form-control:focus {
    border-color: var(--theme-primary) !important;
}

/* sidebar active/hovered menu item */
.sidebar-nav .nav-link.active,
.sidebar-nav .nav-dropdown.open > .nav-dropdown-toggle,
.sidebar-nav .nav-link:hover {
    color: var(--theme-primary) !important;
}
.sidebar-nav .nav-link.active .nav-icon {
    color: var(--theme-primary) !important;
}

/* light mode: the active/hovered menu item's background is a fixed
   gray (#eef1f2, style.css), so only its text/icon color carried the
   theme - and for a near-black color like navy that is indistinguishable
   from the normal menu text. Tint the background with the theme too.
   Blue keeps its current look (like the grid tints); the collapsed
   (.sidebar-minimized) menu has its own solid hover flyout, below. */
html[data-bs-theme="light"]:not([data-theme-color="blue"]) body:not(.sidebar-minimized) .sidebar .nav-link.active {
    background: color-mix(in srgb, var(--theme-tint) 16%, #fff);
}
html[data-bs-theme="light"]:not([data-theme-color="blue"]) body:not(.sidebar-minimized) .sidebar .nav-link:hover {
    background: color-mix(in srgb, var(--theme-tint) 10%, #fff);
}
/* collapsed menu: hover flyout is a hardcoded #20a8d8 (style.css) */
html .sidebar-minimized .sidebar .nav-item:hover > .nav-link,
html .sidebar-minimized .sidebar .nav-link:hover,
html .sidebar-minimized .sidebar .nav > .nav-dropdown:hover {
    background: var(--theme-primary);
}

.dropdown-item:active, .dropdown-item.active {
    background-color: var(--theme-primary) !important;
}

.spinner-border.text-primary { border-right-color: transparent !important; }

/* ============================================================
   Dark mode
   ============================================================ */
html[data-bs-theme="dark"] {
    color-scheme: dark;
}

html[data-bs-theme="dark"] body {
    background-color: #1a1d21 !important;
    color: #c8ced3;
}

/* .load-blank is the full-screen overlay (cube_loader.gif) shown while
   the app shell (head/header/aside/sidebar/spinner) is still loading -
   style.css hardcodes it to flat white regardless of theme. data-bs-theme
   is already set on <html> synchronously at initial page parse (via
   _app-meta.cshtml, rendered directly in _Layout_Java*.cshtml's <head>,
   not just the AJAX-loaded copy) so this applies immediately, no flash. */
html[data-bs-theme="dark"] .load-blank {
    background-color: #1a1d21 !important;
}

/* -------- dashboard fullscreen view (Dashboard/Index.cshtml's openFullscreen()) -------- */
/* requestFullscreen() on #app-section triggers the browser's own UA
   style for :fullscreen, which paints a plain white backdrop behind
   it by default. Any gap not covered by an explicitly dark-styled
   card/table (e.g. margins between cards) showed through as white,
   regardless of data-bs-theme - reported via the dashboard's fullscreen
   view where cards were dark but the surrounding page wasn't. */
/* each vendor-prefixed pseudo-class needs its own rule - a browser
   that doesn't recognize one of them (e.g. Chromium and
   :-moz-full-screen) invalidates the ENTIRE selector list it's
   grouped into via commas, silently dropping the whole rule. */
html[data-bs-theme="dark"] #app-section:fullscreen {
    background-color: #1a1d21 !important;
}
html[data-bs-theme="dark"] #app-section:-webkit-full-screen {
    background-color: #1a1d21 !important;
}
html[data-bs-theme="dark"] #app-section:-moz-full-screen {
    background-color: #1a1d21 !important;
}
html[data-bs-theme="dark"] #app-section:-ms-fullscreen {
    background-color: #1a1d21 !important;
}

html[data-bs-theme="dark"] .sidebar,
html[data-bs-theme="dark"] .sidebar-nav {
    background-color: #23282c !important;
    color: #c8ced3;
    border-right: 1px solid #3a4048;
}

/* .app-header carries .bg-blue-gradient, which sets `background` (not just
   background-color) to a gradient image via !important - background-color
   alone can't win against that, the image just paints over it. */
html[data-bs-theme="dark"] .app-header {
    background-color: #23282c !important;
    background-image: none !important;
    color: #c8ced3;
}

html[data-bs-theme="dark"] .sidebar-nav .nav-link {
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .sidebar-nav .nav-link .nav-icon {
    color: #c8ced3 !important;
}
/* expanded submenu group gets its own near-white background+rounded
   panel in the base CSS (.sidebar .nav-dropdown.open), independent of
   .sidebar-nav's own background */
html[data-bs-theme="dark"] .sidebar .nav-dropdown.open {
    background: #2c3238 !important;
}
html[data-bs-theme="dark"] .sidebar .nav-dropdown.open .nav-link:not(.active) {
    color: #c8ced3 !important;
}
/* the currently-selected item (e.g. the page you're on) gets its own
   light background (#eef1f2) plus opacity:0.75, on top of blue text
   meant for that light background - both need overriding or the text
   reads as washed-out on dark */
html[data-bs-theme="dark"] .sidebar .nav-link.active {
    background: #343a40 !important;
    color: var(--theme-primary) !important;
    opacity: 1 !important;
}
html[data-bs-theme="dark"] .sidebar .nav-link.active .nav-icon {
    color: var(--theme-primary) !important;
}
/* same #eef1f2 light panel, this time on hover instead of the active
   (currently-on-this-page) state */
html[data-bs-theme="dark"] .sidebar .nav-link:hover {
    background: #343a40 !important;
    opacity: 1 !important;
}
html[data-bs-theme="dark"] .sidebar .sidebar-footer {
    background: #23282c !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}

/* perfect-scrollbar's thumb (.ps__thumb-y) is a plain #aaa gray with no
   opacity - on the light sidebar that reads as a subtle rail, but against
   the dark sidebar it stands out as a bright vertical stripe down the
   right edge. Muted to match the sidebar-footer border color instead. */
html[data-bs-theme="dark"] .ps__thumb-x,
html[data-bs-theme="dark"] .ps__thumb-y {
    background-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .ps__rail-x:hover > .ps__thumb-x,
html[data-bs-theme="dark"] .ps__rail-x:focus > .ps__thumb-x,
html[data-bs-theme="dark"] .ps__rail-y:hover > .ps__thumb-y,
html[data-bs-theme="dark"] .ps__rail-y:focus > .ps__thumb-y {
    background-color: #4a5158 !important;
}
html[data-bs-theme="dark"] .ps__rail-x:hover,
html[data-bs-theme="dark"] .ps__rail-x:focus,
html[data-bs-theme="dark"] .ps__rail-y:hover,
html[data-bs-theme="dark"] .ps__rail-y:focus {
    background-color: #23282c !important;
}

/* style.css also styles the browser's own native scrollbar globally
   (`* { scrollbar-color / ::-webkit-scrollbar }`) with the same light
   track/thumb colors - this is what actually paints the bright stripe
   on the sidebar's off-canvas/mobile drawer, which scrolls natively
   instead of through perfect-scrollbar. Overridden to match the muted
   perfect-scrollbar colors above, with the theme color on hover/active
   instead of the hardcoded blue. */
html[data-bs-theme="dark"] * {
    scrollbar-color: #4a5158 #23282c;
}
html[data-bs-theme="dark"] *::-webkit-scrollbar-track {
    background-color: #23282c !important;
}
html[data-bs-theme="dark"] *::-webkit-scrollbar-track:hover,
html[data-bs-theme="dark"] *::-webkit-scrollbar-track:active {
    background-color: #2c3238 !important;
}
html[data-bs-theme="dark"] *::-webkit-scrollbar-thumb {
    background-color: #4a5158 !important;
}
html[data-bs-theme="dark"] *::-webkit-scrollbar-thumb:hover {
    background-color: var(--theme-primary-hover) !important;
}
html[data-bs-theme="dark"] *::-webkit-scrollbar-thumb:active {
    background-color: var(--theme-primary) !important;
}

html[data-bs-theme="dark"] .card,
html[data-bs-theme="dark"] .card-header,
html[data-bs-theme="dark"] .card-body,
html[data-bs-theme="dark"] .modal-content,
html[data-bs-theme="dark"] .dropdown-menu {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
/* .card.bg-none (e.g. the "Hello <name>" welcome banner sitting on top
   of a background image) is meant to stay fully transparent - the
   blanket .card rule above was giving it an opaque dark box instead,
   hiding the image behind it. Needs to match/beat that rule's
   specificity to win. */
html[data-bs-theme="dark"] .card.bg-none {
    background: none !important;
    background-color: transparent !important;
}
/* the blanket .card-body rule below still paints its own dark box even
   when the parent .card is .bg-none (e.g. the Login/ForgotPassword/
   LoginReset/Multifactors sign-in card) - the child needs its own
   exception since it's a separate selector match, not inherited. */
html[data-bs-theme="dark"] .card.bg-none .card-body {
    background: none !important;
    background-color: transparent !important;
}

/* -------- contextual modal headers (.modal-primary/.modal-success/etc) -------- */
/* style.css gives each variant a bright, saturated header (gradient or
   flat) meant for a light page - unchanged by theme. Darkened for dark
   mode while keeping each one's hue recognizable. .modal-primary is
   tied to the selected theme color instead of a fixed blue, like the
   rest of the "primary" surfaces in the app. .modal-dark is already
   dark and needs no change. */
html[data-bs-theme="dark"] .modal-primary .modal-header {
    background-image: none !important;
    background-color: var(--theme-primary-active) !important;
    background: linear-gradient(to bottom, var(--theme-primary-active), var(--theme-primary-hover)) !important;
}
html[data-bs-theme="dark"] .modal-secondary .modal-header {
    background-color: #3a4048 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .modal-success .modal-header {
    background-image: none !important;
    background: linear-gradient(to bottom, #1f5136, #2a6b45) !important;
}
html[data-bs-theme="dark"] .modal-info .modal-header {
    background-color: #1f5c70 !important;
}
html[data-bs-theme="dark"] .modal-warning .modal-header {
    background-color: #8a6200 !important;
}
html[data-bs-theme="dark"] .modal-danger .modal-header {
    background-image: none !important;
    background: linear-gradient(to bottom, #6b2422, #8c2b28) !important;
}
html[data-bs-theme="dark"] .modal-light .modal-header {
    background-color: #343a40 !important;
    color: #c8ced3 !important;
}

/* -------- tab strip inside modals/cards (not just the .aside-menu panel) -------- */
/* .tab-content is flat white (style.css) with no dark-mode-aware
   version outside .aside-menu .tab-content - any other tab strip
   (e.g. the CRUD modals' Supplier/Contact/Kanban Cycle/... tabs) fell
   through to that white background. */
html[data-bs-theme="dark"] .tab-content {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}

/* -------- dashboard filter slide-out panel (.offcanvas-bc) -------- */
/* Separate from the ~85 grid pages' "#form-filter.dropdown-menu" panel
   fixed earlier - the dashboard's own Filter drawer (_dashboard-nav.cshtml,
   #form-filter-dashboard inside .offcanvas-bc-right) is a custom
   implementation with its own flat white background in style.css. */
html[data-bs-theme="dark"] .offcanvas-bc {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .offcanvas-bc.offcanvas-bc-right,
html[data-bs-theme="dark"] .offcanvas-bc.offcanvas-bc-left {
    border-color: #3a4048 !important;
}
/* same story for .modal-content.bg-none - the #loadblockspinner "please
   wait" overlay (BlocksSpinner.cshtml) is meant to show just the spinner
   icon with no box behind it, but the blanket .modal-content rule above
   was giving it an opaque dark panel too. */
html[data-bs-theme="dark"] .modal-content.bg-none {
    background: none !important;
    background-color: transparent !important;
}

html[data-bs-theme="dark"] .table {
    color: #c8ced3;
}
html[data-bs-theme="dark"] .table td,
html[data-bs-theme="dark"] .table th {
    border-color: #3a4048;
}
html[data-bs-theme="dark"] .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.03);
}
html[data-bs-theme="dark"] thead.bg-secondary {
    background-color: #343a40 !important;
}

html[data-bs-theme="dark"] .form-control,
html[data-bs-theme="dark"] .custom-select {
    background-color: #2c3238;
    border-color: #454c54;
    color: #c8ced3;
}
html[data-bs-theme="dark"] .form-control::placeholder {
    color: #7c8894;
}
/* .custom-select's dropdown arrow (an up triangle over a down
   triangle, not a single chevron) is a baked-in SVG data-uri
   (fill: #2f353a, style.css) - near-black, so it disappears against
   the dark background set above (background-color alone doesn't
   touch background-image). Same SVG, same two-triangle shape,
   recolored to the dark-mode text color instead of a second
   per-color image asset. */
html[data-bs-theme="dark"] .custom-select {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23c8ced3' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 8px 10px;
}
html[data-bs-theme="dark"] .custom-select[multiple],
html[data-bs-theme="dark"] .custom-select[size]:not([size="1"]) {
    background-image: none;
}
/* input-group-text: the "To" separator and calendar/check icon boxes
   glued to the side of form inputs - near-white by default (139 view
   files use it) */
html[data-bs-theme="dark"] .input-group-text {
    background-color: #343a40 !important;
    border-color: #454c54 !important;
    color: #c8ced3 !important;
}

/* bootstrap-select (.selectpicker) - used across ~90 forms in this app.
   Its toggle button defaults to .btn-light; the popup menu already picks
   up the generic .dropdown-menu dark rule below. */
html[data-bs-theme="dark"] .bootstrap-select .btn-light,
html[data-bs-theme="dark"] .bootstrap-select > .dropdown-toggle {
    background-color: #2c3238 !important;
    border-color: #454c54 !important;
    color: #c8ced3 !important;
}
/* the toggle's up/down arrow is a baked-in near-black SVG background
   (fill #2f353a, style.css: ".form-control-sm.bootstrap-select .btn"
   and its :focus rule) - invisible on the dark button. Same
   two-triangle shape, recolored; the :focus line matches style.css's
   own selector so it still wins on the added [data-bs-theme] prefix. */
html[data-bs-theme="dark"] .bootstrap-select .dropdown-toggle,
html[data-bs-theme="dark"] .form-control-sm.bootstrap-select .dropdown-toggle:focus {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23c8ced3' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 8px 10px;
}
html[data-bs-theme="dark"] .bootstrap-select .dropdown-menu .dropdown-item.active,
html[data-bs-theme="dark"] .bootstrap-select .dropdown-menu li.selected a {
    background-color: var(--theme-primary) !important;
    color: #fff !important;
}
/* style.css has a separate, more specific !important rule just for the
   disabled/readonly state (e.g. a Supplier combo the JS locks once a
   value is set) - ".form-control-sm.bootstrap-select .selectpicker
   :disabled ~ .dropdown-toggle" etc. - which otherwise beats the base
   .btn-light rule above and stays on its light gray (#e4e7ea). Matched
   with the same class list so this wins purely on the added
   [data-bs-theme] attribute's specificity, not source order. */
html[data-bs-theme="dark"] .form-control-sm.bootstrap-select .dropdown-toggle:disabled,
html[data-bs-theme="dark"] .form-control-sm.bootstrap-select .selectpicker:disabled ~ .dropdown-toggle,
html[data-bs-theme="dark"] .form-control-sm.bootstrap-select .selectpicker[readonly] ~ .dropdown-toggle,
html[data-bs-theme="dark"] .form-control-sm.bootstrap-select.bg-white .selectpicker:disabled ~ .dropdown-toggle,
html[data-bs-theme="dark"] .form-control-sm.bootstrap-select.bg-white .selectpicker[readonly] ~ .dropdown-toggle {
    background-color: #2c3238 !important;
    border-color: #454c54 !important;
    color: #8a97a3 !important;
}
html[data-bs-theme="dark"] .bs-searchbox .form-control {
    background-color: #2c3238;
    border-color: #454c54;
    color: #c8ced3;
}

/* Bootstrap popover (native $(...).popover() plugin) - e.g. the grid
   row "Acts" action menu (Closing/Canceled/Delete/Re-Open Download
   Portal buttons), a completely separate component from .dropdown-menu
   covered above. Arrow tip color has to match the popover's own
   background per placement side, or it reads as a white triangle
   poking out of a dark box. */
html[data-bs-theme="dark"] .popover {
    background-color: #262b30 !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .popover-header {
    background-color: #2c3238 !important;
    border-bottom-color: #3a4048 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .popover-body {
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .bs-popover-top .arrow::after,
html[data-bs-theme="dark"] .bs-popover-auto[x-placement^="top"] .arrow::after {
    border-top-color: #262b30 !important;
}
html[data-bs-theme="dark"] .bs-popover-right .arrow::after,
html[data-bs-theme="dark"] .bs-popover-auto[x-placement^="right"] .arrow::after {
    border-right-color: #262b30 !important;
}
html[data-bs-theme="dark"] .bs-popover-bottom .arrow::after,
html[data-bs-theme="dark"] .bs-popover-auto[x-placement^="bottom"] .arrow::after {
    border-bottom-color: #262b30 !important;
}
html[data-bs-theme="dark"] .bs-popover-left .arrow::after,
html[data-bs-theme="dark"] .bs-popover-auto[x-placement^="left"] .arrow::after {
    border-left-color: #262b30 !important;
}

/* bootstrap-datepicker / tempusdominus / bootstrap-timepicker popups */
html[data-bs-theme="dark"] .datepicker.dropdown-menu,
html[data-bs-theme="dark"] .bootstrap-datetimepicker-widget,
html[data-bs-theme="dark"] .bootstrap-timepicker-widget {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .datepicker table tr td,
html[data-bs-theme="dark"] .datepicker table tr th {
    color: #c8ced3;
}
html[data-bs-theme="dark"] .datepicker table tr td.old,
html[data-bs-theme="dark"] .datepicker table tr td.new {
    color: #6b7480;
}
html[data-bs-theme="dark"] .datepicker table tr td.active.active,
html[data-bs-theme="dark"] .datepicker table tr td.today {
    background-color: var(--theme-primary) !important;
    color: #fff !important;
}
/* month/year picker view (e.g. the "Month Year Orders" filter's
   startView:"year" mode) uses a separate set of elements (td > span,
   not td.active/td.today directly) with their own hardcoded styling:
   a plain light-gray #eee hover, and a fixed blue gradient for the
   selected month regardless of theme color. */
html[data-bs-theme="dark"] .datepicker table tr td span:hover,
html[data-bs-theme="dark"] .datepicker table tr td span.focused {
    background: #343a40 !important;
}
html[data-bs-theme="dark"] .datepicker table tr td span.active,
html[data-bs-theme="dark"] .datepicker table tr td span.active:hover,
html[data-bs-theme="dark"] .datepicker table tr td span.active.disabled,
html[data-bs-theme="dark"] .datepicker table tr td span.active.disabled:hover {
    background: linear-gradient(to bottom, var(--theme-primary), var(--theme-primary-active)) !important;
    border-color: var(--theme-primary-active) !important;
    color: #fff !important;
    text-shadow: none !important;
}

html[data-bs-theme="dark"] .text-dark {
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .text-muted {
    color: #8a97a3 !important;
}
html[data-bs-theme="dark"] .bg-light {
    background-color: #262b30 !important;
}
html[data-bs-theme="dark"] .aside-menu,
html[data-bs-theme="dark"] .aside-menu .tab-content,
html[data-bs-theme="dark"] .aside-menu .nav-tabs {
    background-color: #23282c !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
/* .nav-tabs .nav-link's own text color (#23282c, dark) and its
   .active state's background (#fafbfb, near-white with !important)
   are both designed for a light page and not scoped to .aside-menu -
   generalized so any tab strip (not just the aside panel) gets this. */
html[data-bs-theme="dark"] .nav-tabs .nav-link {
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .nav-tabs .nav-link.disabled {
    color: #6b7480 !important;
}
html[data-bs-theme="dark"] .nav-tabs .nav-link.active,
html[data-bs-theme="dark"] .nav-tabs .nav-item.show .nav-link {
    background-color: #343a40 !important;
    color: var(--theme-primary) !important;
    border-color: #3a4048 #3a4048 #343a40 !important;
}
html[data-bs-theme="dark"] .aside-menu .nav-tabs .nav-link:hover {
    color: var(--theme-primary) !important;
    /* base rule sets border-color: #fff !important - a bright white
       outline flashing on hover against the dark panel */
    border-color: #3a4048 #3a4048 var(--theme-primary) !important;
}
html[data-bs-theme="dark"] .aside-menu .nav-tabs .nav-link.active {
    color: var(--theme-primary) !important;
    border-right-color: #3a4048 !important;
    border-left-color: #3a4048 !important;
}
/* the "Filter <Title>" slide-out panel used on ~85 grid pages reuses
   the same id="form-filter" everywhere, styled with
   "#form-filter.dropdown-menu { background-color: #e4e7ea !important }"
   inside @media (min-width: 768px). An ID selector beats any
   class-based override regardless of !important, so this needs an ID
   selector of its own to win. */
html[data-bs-theme="dark"] #form-filter.dropdown-menu {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .app-footer {
    background-color: #23282c !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .card-footer {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
/* .btn-ghost-dark's text is #2f353a (near-black), meant to read against
   a light card-footer - on the now-dark footer it's almost invisible.
   The other .btn-ghost-* variants already use light-enough text
   (#c8ced3 or a saturated color) and don't need this. */
html[data-bs-theme="dark"] .btn-ghost-dark {
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .btn-ghost-dark:hover {
    color: #fff !important;
    background-color: #454c54 !important;
    border-color: #454c54 !important;
}
html[data-bs-theme="dark"] .btn-ghost-dark.disabled,
html[data-bs-theme="dark"] .btn-ghost-dark:disabled {
    color: #6b7480 !important;
}
/* .btn-outline-dark: same near-black text/border problem as
   .btn-ghost-dark above, different button style (outlined vs ghost) */
html[data-bs-theme="dark"] .btn-outline-dark {
    color: #c8ced3 !important;
    border-color: #6b7480 !important;
}
html[data-bs-theme="dark"] .btn-outline-dark:hover,
html[data-bs-theme="dark"] .btn-outline-dark:not(:disabled):not(.disabled):active {
    color: #fff !important;
    background-color: #454c54 !important;
    border-color: #454c54 !important;
}
/* .btn-secondary (solid, e.g. the "Filter" toggle button): light gray
   fill (#c8ced3) with dark text, meant to read as a neutral filled
   button on a light page - stands out as an odd light patch once the
   page itself is dark. Recolored as a dark "filled" button (distinct
   from the ghost/outline variants, which stay borderless/transparent)
   so it keeps looking like a solid button, just dark-appropriate. */
html[data-bs-theme="dark"] .btn-secondary,
html[data-bs-theme="dark"] .btn-secondary.disabled,
html[data-bs-theme="dark"] .btn-secondary:disabled {
    color: #c8ced3 !important;
    background-color: #454c54 !important;
    border-color: #454c54 !important;
}
html[data-bs-theme="dark"] .btn-secondary:hover {
    color: #fff !important;
    background-color: #545c66 !important;
    border-color: #5c6570 !important;
}
html[data-bs-theme="dark"] .btn-secondary:not(:disabled):not(.disabled):active,
html[data-bs-theme="dark"] .btn-secondary:not(:disabled):not(.disabled).active,
html[data-bs-theme="dark"] .show > .btn-secondary.dropdown-toggle {
    color: #fff !important;
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}
/* .dropdown-item sets its own explicit dark text color, doesn't
   inherit the dropdown-menu's color even though that's also dark */
html[data-bs-theme="dark"] .dropdown-item {
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .dropdown-item:hover,
html[data-bs-theme="dark"] .dropdown-item:focus {
    background-color: #343a40 !important;
    color: #fff !important;
}
/* .bg-white is a hardcoded "force white" utility - used e.g. on the
   header search button (#btnFilter). Always wrong in dark mode by
   definition, wherever it's used. */
html[data-bs-theme="dark"] .bg-white {
    background-color: #2c3238 !important;
    color: #c8ced3 !important;
}
/* light-designed badge/alert/table variants - near-white backgrounds
   meant to read as a "neutral" surface in light mode */
html[data-bs-theme="dark"] .badge-light {
    background-color: #454c54 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .badge-secondary {
    background-color: #454c54 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .alert-light {
    background-color: #2c3238 !important;
    border-color: #454c54 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .alert-secondary {
    background-color: #2c3238 !important;
    border-color: #454c54 !important;
    color: #c8ced3 !important;
}
/* .jumbotron is a hardcoded #e4e7ea panel (style.css) - the scan
   dialogs ("Start Validation" etc.) use it as their main card */
html[data-bs-theme="dark"] .jumbotron {
    background-color: #343a40;
    color: #c8ced3;
}
/* the hue-specific alert variants (style.css) are all pastel-light
   backgrounds with dark text, same as .alert-light/.alert-secondary
   above - darkened while keeping each hue recognizable via a tinted
   background and a lighter version of its own text color. */
html[data-bs-theme="dark"] .alert-primary {
    background-color: #1c3a4d !important;
    border-color: #2a5570 !important;
    color: #8ecdea !important;
}
html[data-bs-theme="dark"] .alert-success {
    background-color: #1f3d2c !important;
    border-color: #2e5b40 !important;
    color: #82cf9f !important;
}
html[data-bs-theme="dark"] .alert-info {
    background-color: #1c3a42 !important;
    border-color: #2a5560 !important;
    color: #85cfe0 !important;
}
html[data-bs-theme="dark"] .alert-warning {
    background-color: #4d3d14 !important;
    border-color: #6b5620 !important;
    color: #e6c96f !important;
}
html[data-bs-theme="dark"] .alert-danger {
    background-color: #4a2020 !important;
    border-color: #6b2e2e !important;
    color: #e8918f !important;
}
html[data-bs-theme="dark"] .table-light,
html[data-bs-theme="dark"] .table-light > th,
html[data-bs-theme="dark"] .table-light > td {
    background-color: #343a40 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .brand-card-body {
    background-color: #262b30 !important;
    color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .border,
html[data-bs-theme="dark"] .border-top,
html[data-bs-theme="dark"] .border-bottom,
html[data-bs-theme="dark"] .border-left,
html[data-bs-theme="dark"] .border-right {
    border-color: #3a4048 !important;
}

/* jqGrid (used across ~160 list pages). jQuery UI's Redmond theme sets
   `background` (shorthand) on .ui-widget-content/.ui-widget-header/
   .ui-state-default/.ui-state-hover/.ui-state-highlight to a color PLUS a
   PNG texture image, e.g. ".ui-widget-content{background:#fcfdfd
   url(...ui-bg_inset-hard...) ...}". A background-color override alone
   can't beat that - the PNG paints over it - so every rule below also
   clears background-image explicitly (same issue as .bg-blue-gradient
   on .app-header, above). This turned out to be why table rows, the
   column-header row and the pager/toolbar still looked light despite
   getComputedStyle reporting the right background-color underneath.
   grid rows/cells */
html[data-bs-theme="dark"] .ui-jqgrid,
html[data-bs-theme="dark"] .ui-jqgrid-htable,
html[data-bs-theme="dark"] .ui-jqgrid-bdiv,
html[data-bs-theme="dark"] .ui-widget-content {
    background-color: #262b30 !important;
    background-image: none !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .ui-jqgrid tr.ui-row-ltr td {
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .ui-jqgrid-labels th {
    background-color: #343a40 !important;
    background-image: none !important;
    color: #c8ced3 !important;
}
/* title bar / column-header row */
html[data-bs-theme="dark"] .ui-widget-header {
    background-color: #343a40 !important;
    background-image: none !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
/* pager/toolbar buttons, inputs and other "default" chrome */
html[data-bs-theme="dark"] .ui-state-default {
    background-color: #262b30 !important;
    background-image: none !important;
    color: #c8ced3 !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .ui-state-hover {
    background-color: #343a40 !important;
    background-image: none !important;
    color: #fff !important;
    border-color: #3a4048 !important;
}
/* light mode: .ui-state-default is also what styles the column-header
   row (.ui-jqgrid-labels th), the row-number column (td.jqgrid-rownum)
   and the pager/footer bar (.ui-jqgrid-pager) - jQuery UI's Redmond
   theme defaults it to a light blue (#dfeffc bg / #c5dbec border /
   #2e6e9e text), which is why the "blue" theme color already looked
   right without any override. .ui-state-hover (row mouse-hover) is the
   same story with its own default blue (#d0e5f5 bg / #79b7e7 border /
   #1d5987 text). Every other theme color gets tinted instead; blue is
   deliberately excluded so it keeps exactly its current look. */
html[data-bs-theme="light"]:not([data-theme-color="blue"]) .ui-jqgrid .ui-state-default {
    background: color-mix(in srgb, var(--theme-tint) 12%, #fff) !important;
    background-image: none !important;
    border-color: color-mix(in srgb, var(--theme-tint) 35%, #fff) !important;
    color: var(--theme-primary-active) !important;
}
html[data-bs-theme="light"]:not([data-theme-color="blue"]) .ui-jqgrid .ui-state-hover {
    background: color-mix(in srgb, var(--theme-tint) 22%, #fff) !important;
    background-image: none !important;
    border-color: color-mix(in srgb, var(--theme-tint) 45%, #fff) !important;
    color: var(--theme-primary-active) !important;
}
/* the grid frame and the row/cell grid lines are .ui-widget-content
   borders, which Redmond hardcodes to blue (#c5dbec frame, #a6c9e2
   cells) - tinted the same way as the header above */
html[data-bs-theme="light"]:not([data-theme-color="blue"]) .ui-jqgrid.ui-widget-content {
    border-color: color-mix(in srgb, var(--theme-tint) 35%, #fff) !important;
}
html[data-bs-theme="light"]:not([data-theme-color="blue"]) .ui-jqgrid tr.jqgrow.ui-widget-content,
html[data-bs-theme="light"]:not([data-theme-color="blue"]) .ui-jqgrid tr.jqgrow td {
    border-color: color-mix(in srgb, var(--theme-tint) 28%, #fff) !important;
}
/* the selected-row highlight (.ui-state-highlight, applied to the
   jqgrow jqGrid puts the user's current row selection on) follows the
   active theme color instead of jQuery UI Redmond's hardcoded golden
   yellow (#fbec88) or a flat neutral gray - tinted against each mode's
   own surface color so it reads as "this row, in the current theme
   color" rather than jQuery UI's unrelated default. Border stays a
   plain neutral gray on purpose - only the fill follows the theme. */
html[data-bs-theme="light"] .ui-jqgrid .ui-state-highlight {
    background: color-mix(in srgb, var(--theme-tint) 18%, #fff) !important;
    background-image: none !important;
    color: #23282c !important;
    border-color: #c8ced3 !important;
}
html[data-bs-theme="dark"] .ui-state-highlight {
    background: color-mix(in srgb, var(--theme-primary) 30%, #262b30) !important;
    background-image: none !important;
    color: #fff !important;
    border-color: #3a4048 !important;
}
html[data-bs-theme="dark"] .ui-icon {
    filter: invert(0.85);
}

/* subgrid expand/collapse (+/-) icons are jQuery UI PNG sprites with a
   fixed blue baked in, so they ignored the theme color. Redrawn as CSS
   bars in currentColor, which is the (already themed) .ui-sghref link
   color. filter:none cancels dark mode's blanket ".ui-icon" invert,
   which would otherwise flip these to the wrong color. */
.ui-jqgrid .ui-sghref .ui-icon-plus,
.ui-jqgrid .ui-sghref .ui-icon-minus {
    filter: none;
    background-repeat: no-repeat;
    background-position: center;
}
.ui-jqgrid .ui-sghref .ui-icon-plus {
    background-image:
        linear-gradient(currentColor, currentColor),
        linear-gradient(currentColor, currentColor);
    background-size: 10px 2px, 2px 10px;
}
.ui-jqgrid .ui-sghref .ui-icon-minus {
    background-image: linear-gradient(currentColor, currentColor);
    background-size: 10px 2px;
}
html[data-bs-theme="dark"] .ui-jqgrid .ui-sghref .ui-icon-plus,
html[data-bs-theme="dark"] .ui-jqgrid .ui-sghref .ui-icon-minus {
    filter: none;
}

/* "stock OK" cell tint (StockRawMaterial's Kanban/On Hand columns, set
   by loadComplete via setCell). Was an inline light-green background,
   unreadable against the light dark-mode text, so it is a class with a
   dark-green variant (same green as the dark .alert-success). */
.ui-jqgrid td.cell-stock-ok {
    background-color: #e3ffe6;
}
html[data-bs-theme="dark"] .ui-jqgrid td.cell-stock-ok {
    background-color: #1f3d2c;
}

/* records-per-page <select> in jqGrid's pager. Its border/focus ring/
   dropdown arrow are native browser chrome, outside CSS's normal
   reach and (per report) showing up as an unthemed gold focus ring
   instead of the active color. -webkit-appearance:none hands control
   back so all three can follow --theme-primary. The arrow is drawn
   with two gradients forming a chevron rather than an image/mask, so
   its color is plain var(--theme-primary) like everything else -
   applies in both modes; only background-image/border/focus change
   here, background-color is left to the existing light/dark rules
   above. Placed after those so this wins the specificity tie on
   background-image in dark mode too (both are 2 class-level
   selectors; last in source wins). */
.ui-jqgrid-pager .ui-pg-selbox {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid var(--theme-primary) !important;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--theme-primary) 50%),
        linear-gradient(135deg, var(--theme-primary) 50%, transparent 50%) !important;
    background-position: calc(100% - 12px) center, calc(100% - 8px) center;
    background-size: 4px 4px, 4px 4px;
    background-repeat: no-repeat;
    padding: 0px 20px 0px 5px !important;
}
/* dark mode: .ui-widget-content / .ui-state-default (above) force
   "background-image: none !important" and win the specificity tie, so
   the chevron above vanishes - restore it with a more specific rule,
   in the dark-mode text color (readable on any theme color). */
html[data-bs-theme="dark"] .ui-jqgrid-pager .ui-pg-selbox {
    background-image:
        linear-gradient(45deg, transparent 50%, #c8ced3 50%),
        linear-gradient(135deg, #c8ced3 50%, transparent 50%) !important;
}
.ui-jqgrid-pager .ui-pg-selbox:focus,
.ui-jqgrid-pager .ui-pg-selbox:hover {
    border-color: var(--theme-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--theme-primary) 30%, transparent) !important;
}
/* the <option> list itself, once opened, is native browser/OS popup
   chrome - padding is one of the few things CSS can actually reach
   there (Chromium honors it), fixing the "0" sitting flush against
   the left edge. The option hover/selected highlight, however, is
   drawn by the OS's own popup renderer, not the page - background-
   color/color on option:checked/:hover are included in case a given
   browser does honor them, but this is a real platform limit (same
   category as the native scrollbar earlier), not something CSS can
   reliably guarantee. */
.ui-jqgrid-pager .ui-pg-selbox option {
    padding: 4px 10px;
}
.ui-jqgrid-pager .ui-pg-selbox option:checked,
.ui-jqgrid-pager .ui-pg-selbox option:hover {
    background-color: var(--theme-primary) !important;
    color: #fff !important;
}

/* Header search button (#btnFilter, on the colored header). Its own
   class (.btn-outline-primary) draws the border/icon in the theme
   color - the same color as the header, so it nearly vanishes in
   light mode - so the light outline look is set here by id instead,
   independent of the Bootstrap variant class. Most grid pages also
   run $("#btnFilter").button().click() when Enter is pressed in the
   search box; jQuery UI's .button() adds .ui-button/.ui-widget, whose
   Redmond theme paints a light-blue background, blue icon and border.
   Id specificity beats both the Bootstrap variant and the jQuery UI
   state rules; hover/active keep a light fill. */
#search-text #btnFilter,
#search-text #btnFilter.ui-button {
    background: transparent;
    color: #f0f3f5;
    border: 1px solid #f0f3f5;
    font-weight: 400;
    box-shadow: none;
}
#search-text #btnFilter:hover,
#search-text #btnFilter:active,
#search-text #btnFilter.ui-button:hover,
#search-text #btnFilter.ui-button:active,
#search-text #btnFilter.ui-button.ui-state-active {
    background: #f0f3f5;
    color: #23282c;
    border-color: #f0f3f5;
}
#search-text #btnFilter:focus,
#search-text #btnFilter.ui-button:focus {
    box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
/* light mode only: theme-switcher's .btn-outline-primary rule (above)
   uses !important to paint the border/icon in --theme-primary, which
   is the same color as the header, so the button nearly vanishes.
   Beat it (id specificity + !important) with the light outline;
   dark mode is deliberately left to that rule. */
html:not([data-bs-theme="dark"]) #search-text #btnFilter {
    color: #f0f3f5 !important;
    border-color: #f0f3f5 !important;
}
html:not([data-bs-theme="dark"]) #search-text #btnFilter:hover,
html:not([data-bs-theme="dark"]) #search-text #btnFilter:active {
    background-color: #f0f3f5 !important;
    color: #23282c !important;
    border-color: #f0f3f5 !important;
}
/* dark mode: the header is dark, so the near-white outline-light
   border/icon stand out too much - use the same muted border and
   text colors as the form controls, with a dark hover fill */
html[data-bs-theme="dark"] #search-text #btnFilter,
html[data-bs-theme="dark"] #search-text #btnFilter.ui-button {
    color: #c8ced3;
    border-color: #454c54;
}
html[data-bs-theme="dark"] #search-text #btnFilter:hover,
html[data-bs-theme="dark"] #search-text #btnFilter:active,
html[data-bs-theme="dark"] #search-text #btnFilter.ui-button:hover,
html[data-bs-theme="dark"] #search-text #btnFilter.ui-button:active,
html[data-bs-theme="dark"] #search-text #btnFilter.ui-button.ui-state-active {
    background: #343a40;
    color: #fff;
    border-color: #454c54;
}
html[data-bs-theme="dark"] #search-text #btnFilter:focus,
html[data-bs-theme="dark"] #search-text #btnFilter.ui-button:focus {
    box-shadow: 0 0 0 0.2rem rgba(69, 76, 84, 0.6);
}

/* ============================================================
   Theme picker widget (inside the user nav dropdown)
   ============================================================ */
.theme-picker-swatch {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: inline-block;
    cursor: pointer;
    border: 2px solid transparent;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15);
    transition: transform .1s ease-in-out;
}
.theme-picker-swatch:hover {
    transform: scale(1.15);
}
.theme-picker-swatch.active {
    border-color: #23282c;
}
html[data-bs-theme="dark"] .theme-picker-swatch.active {
    border-color: #fff;
}

.theme-mode-btn.active {
    background-color: var(--theme-primary) !important;
    color: #fff !important;
    border-color: var(--theme-primary) !important;
}
/* the inactive Light/Dark/System buttons inherit .btn-outline-secondary,
   whose base color (#c8ced3, a light gray meant for a dark background)
   is nearly invisible against the light dropdown - only the .active
   button (colored via --theme-primary above) showed up. Dark mode's
   dropdown is itself dark, so that same light-gray text already reads
   fine there and doesn't need a matching override. */
html[data-bs-theme="light"] .theme-mode-btn:not(.active) {
    color: #495057 !important;
    border-color: #ced4da !important;
}
html[data-bs-theme="light"] .theme-mode-btn:not(.active):hover {
    color: #23282c !important;
    background-color: #e9ecef !important;
    border-color: #ced4da !important;
}

/* -------- auth pages (Login/ForgotPassword/LoginReset/Multifactors) -------- */
/* .bg-block-transparent (style.css: flat black, opacity 0.5) dims the
   background photo behind the card so its text/inputs stay readable.
   User wants this kept as-is in both modes - dark mode should look the
   same as light mode always did here, not go fully plain. */

/*!
 * FullCalendar v1.6.4 Stylesheet
 * Docs & License: http://arshaw.com/fullcalendar/
 * (c) 2013 Adam Shaw
 */
@import url('https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i');

td.fc-day {
    background: #FFF !important;
    font-family: 'Roboto', sans-serif;
}

td.fc-today {
    background: #FFF !important;
    position: relative;
}

.fc-first th {
    font-family: 'Roboto', sans-serif;
    background: #9675ce !important;
    color: #FFF;
    font-size: 14px !important;
    font-weight: 500 !important;
}

.fc-event-inner {
    font-family: 'Roboto', sans-serif;
    background: #03a9f3 !important;
    color: #FFF !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    padding: 5px 0px !important;
}

.fc {
    direction: ltr;
    text-align: left;
}

    .fc table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    html .fc,
    .fc table {
        font-size: 1em;
        font-family: "Helvetica Neue",Helvetica;
    }

    .fc td,
    .fc th {
        padding: 0;
        vertical-align: top;
    }



/* Header
------------------------------------------------------------------------*/

.fc-header td {
    white-space: nowrap;
    padding: 15px 10px 0px;
}

.fc-header-left {
    width: 25%;
    text-align: left;
}

.fc-header-center {
    text-align: center;
}

.fc-header-right {
    width: 25%;
    text-align: right;
}

.fc-header-title {
    display: inline-block;
    vertical-align: top;
    margin-top: -5px;
}

    .fc-header-title h2 {
        margin-top: 0;
        white-space: nowrap;
        font-size: 32px;
        font-weight: 100;
        margin-bottom: 10px;
        font-family: 'Roboto', sans-serif;
    }

span.fc-button {
    font-family: 'Roboto', sans-serif;
    border-color: #9675ce;
    color: #9675ce;
}

.fc-state-down, .fc-state-active {
    background-color: #9675ce !important;
    color: #FFF !important;
}

.fc .fc-header-space {
    padding-left: 10px;
}

.fc-header .fc-button {
    margin-bottom: 1em;
    vertical-align: top;
}

/* buttons edges butting together */

.fc-header .fc-button {
    margin-right: -1px;
}

.fc-header .fc-corner-right, /* non-theme */
.fc-header .ui-corner-right { /* theme */
    margin-right: 0; /* back to normal */
}

/* button layering (for border precedence) */

.fc-header .fc-state-hover,
.fc-header .ui-state-hover {
    z-index: 2;
}

.fc-header .fc-state-down {
    z-index: 3;
}

.fc-header .fc-state-active,
.fc-header .ui-state-active {
    z-index: 4;
}



/* Content
------------------------------------------------------------------------*/

.fc-content {
    clear: both;
    zoom: 1; /* for IE7, gives accurate coordinates for [un]freezeContentHeight */
}

.fc-view {
    width: 100%;
    overflow: hidden;
}



/* Cell Styles
------------------------------------------------------------------------*/

/* <th>, usually */
.fc-widget-content { /* <td>, usually */
    border: 1px solid #e5e5e5;
}

.fc-widget-header {
    border-bottom: 1px solid #EEE;
}

.fc-state-highlight { /* <td> today cell */ /* TODO: add .fc-today to <th> */
    /* background: #fcf8e3; */
}

    .fc-state-highlight > div > div.fc-day-number {
        background-color: #919191;
        color: #FFFFFF;
        border-radius: 50%;
        margin: 4px;
    }

.fc-cell-overlay { /* semi-transparent rectangle while dragging */
    background: #bce8f1;
    opacity: .3;
    filter: alpha(opacity=30); /* for IE */
}



/* Buttons
------------------------------------------------------------------------*/

.fc-button {
    position: relative;
    display: inline-block;
    padding: 0 .6em;
    overflow: hidden;
    height: 1.9em;
    line-height: 1.9em;
    white-space: nowrap;
    cursor: pointer;
}

.fc-state-default { /* non-theme */
    border: 1px solid;
}

    .fc-state-default.fc-corner-left { /* non-theme */
        border-top-left-radius: 4px;
        border-bottom-left-radius: 4px;
    }

    .fc-state-default.fc-corner-right { /* non-theme */
        border-top-right-radius: 4px;
        border-bottom-right-radius: 4px;
    }

/*
	Our default prev/next buttons use HTML entities like ‹ › « »
	and we'll try to make them look good cross-browser.
*/

.fc-text-arrow {
    margin: 0 .4em;
    font-size: 2em;
    line-height: 23px;
    vertical-align: baseline; /* for IE7 */
}

.fc-button-prev .fc-text-arrow,
.fc-button-next .fc-text-arrow { /* for ‹ › */
    font-weight: bold;
}

/* icon (for jquery ui) */

.fc-button .fc-icon-wrap {
    position: relative;
    float: left;
    top: 50%;
}

.fc-button .ui-icon {
    position: relative;
    float: left;
    margin-top: -50%;
    *margin-top: 0;
    *top: -50%;
}


.fc-state-default {
    border-color: #ff3b30;
    color: #ff3b30;
}

.fc-button-month.fc-state-default, .fc-button-agendaWeek.fc-state-default, .fc-button-agendaDay.fc-state-default {
    min-width: 67px;
    text-align: center;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

.fc-state-hover,
.fc-state-down,
.fc-state-active,
.fc-state-disabled {
    color: #333333;
    background-color: #FFE3E3;
}

.fc-state-hover {
    color: #ff3b30;
    text-decoration: none;
    background-position: 0 -15px;
    -webkit-transition: background-position 0.1s linear;
    -moz-transition: background-position 0.1s linear;
    -o-transition: background-position 0.1s linear;
    transition: background-position 0.1s linear;
}

.fc-state-down,
.fc-state-active {
    background-color: #ff3b30;
    background-image: none;
    outline: 0;
    color: #FFFFFF;
}

.fc-state-disabled {
    cursor: default;
    background-image: none;
    background-color: #FFE3E3;
    filter: alpha(opacity=65);
    box-shadow: none;
    border: 1px solid #FFE3E3;
    color: #ff3b30;
}



/* Global Event Styles
------------------------------------------------------------------------*/

.fc-event-container > * {
    z-index: 8;
}

.fc-event-container > .ui-draggable-dragging,
.fc-event-container > .ui-resizable-resizing {
    z-index: 9;
}

.fc-event {
    border: 1px solid #FFF; /* default BORDER color */
    background-color: #FFF; /* default BACKGROUND color */
    color: #919191; /* default TEXT color */
    font-size: 10px;
    cursor: default;
}

    .fc-event.chill {
        background-color: #f3dcf8;
    }

    .fc-event.info {
        background-color: #c6ebfe;
    }

    .fc-event.important {
        background-color: #FFBEBE;
    }

    .fc-event.success {
        background-color: #BEFFBF;
    }

    .fc-event:hover {
        opacity: 0.7;
    }

a.fc-event {
    text-decoration: none;
}

a.fc-event,
.fc-event-draggable {
    cursor: pointer;
}

.fc-rtl .fc-event {
    text-align: right;
}

.fc-event-inner {
    width: 100%;
    height: 100%;
    overflow: hidden;
    line-height: 15px;
}

.fc-event-time,
.fc-event-title {
    padding: 0 1px;
}

.fc .ui-resizable-handle {
    display: block;
    position: absolute;
    z-index: 99999;
    overflow: hidden; /* hacky spaces (IE6/7) */
    font-size: 300%; /* */
    line-height: 50%; /* */
}



/* Horizontal Events
------------------------------------------------------------------------*/

.fc-event-hori {
    border-width: 1px 0;
    margin-bottom: 1px;
}

.fc-ltr .fc-event-hori.fc-event-start,
.fc-rtl .fc-event-hori.fc-event-end {
    border-left-width: 1px;
    /*
border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
*/
}

.fc-ltr .fc-event-hori.fc-event-end,
.fc-rtl .fc-event-hori.fc-event-start {
    border-right-width: 1px;
    /*
border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
*/
}

/* resizable */

.fc-event-hori .ui-resizable-e {
    top: 0 !important; /* importants override pre jquery ui 1.7 styles */
    right: -3px !important;
    width: 7px !important;
    height: 100% !important;
    cursor: e-resize;
}

.fc-event-hori .ui-resizable-w {
    top: 0 !important;
    left: -3px !important;
    width: 7px !important;
    height: 100% !important;
    cursor: w-resize;
}

.fc-event-hori .ui-resizable-handle {
    _padding-bottom: 14px; /* IE6 had 0 height */
}



/* Reusable Separate-border Table
------------------------------------------------------------*/

table.fc-border-separate {
    border-collapse: separate;
}

.fc-border-separate th,
.fc-border-separate td {
    border-width: 1px 0 0 1px;
}

    .fc-border-separate th.fc-last,
    .fc-border-separate td.fc-last {
        border-right-width: 1px;
    }


.fc-border-separate tr.fc-last td {
}

.fc-border-separate .fc-week .fc-first {
    border-left: 0;
}

.fc-border-separate .fc-week .fc-last {
    border-right: 0;
}

.fc-border-separate tr.fc-last th {
    border-bottom-width: 1px;
    border-color: #cdcdcd;
    font-size: 16px;
    font-weight: 300;
    line-height: 30px;
}

.fc-border-separate tbody tr.fc-first td,
.fc-border-separate tbody tr.fc-first th {
    border-top-width: 0;
}



/* Month View, Basic Week View, Basic Day View
------------------------------------------------------------------------*/

.fc-grid th {
    text-align: center;
}

.fc .fc-week-number {
    width: 22px;
    text-align: center;
}

    .fc .fc-week-number div {
        padding: 0 2px;
    }

.fc-grid .fc-day-number {
    float: right;
    padding: 0 2px;
}

.fc-grid .fc-other-month .fc-day-number {
    opacity: 0.3;
    filter: alpha(opacity=30); /* for IE */
    /* opacity with small font can sometimes look too faded
	   might want to set the 'color' property instead
	   making day-numbers bold also fixes the problem */
}

.fc-grid .fc-day-content {
    clear: both;
    padding: 2px 2px 1px; /* distance between events and day edges */
}

/* event styles */

.fc-grid .fc-event-time {
    font-weight: bold;
}

/* right-to-left */

.fc-rtl .fc-grid .fc-day-number {
    float: left;
}

.fc-rtl .fc-grid .fc-event-time {
    float: right;
}



/* Agenda Week View, Agenda Day View
------------------------------------------------------------------------*/

.fc-agenda table {
    border-collapse: separate;
}

.fc-agenda-days th {
    text-align: center;
}

.fc-agenda .fc-agenda-axis {
    width: 50px;
    padding: 0 4px;
    vertical-align: middle;
    text-align: right;
    white-space: nowrap;
    font-weight: normal;
}

.fc-agenda .fc-week-number {
    font-weight: bold;
}

.fc-agenda .fc-day-content {
    padding: 2px 2px 1px;
}

/* make axis border take precedence */

.fc-agenda-days .fc-agenda-axis {
    border-right-width: 1px;
}

.fc-agenda-days .fc-col0 {
    border-left-width: 0;
}

/* all-day area */

.fc-agenda-allday th {
    border-width: 0 1px;
}

.fc-agenda-allday .fc-day-content {
    min-height: 34px; /* TODO: doesnt work well in quirksmode */
    _height: 34px;
}

/* divider (between all-day and slots) */

.fc-agenda-divider-inner {
    height: 2px;
    overflow: hidden;
}

.fc-widget-header .fc-agenda-divider-inner {
    background: #eee;
}

/* slot rows */

.fc-agenda-slots th {
    border-width: 1px 1px 0;
}

.fc-agenda-slots td {
    border-width: 1px 0 0;
    background: none;
}

    .fc-agenda-slots td div {
        height: 20px;
    }

.fc-agenda-slots tr.fc-slot0 th,
.fc-agenda-slots tr.fc-slot0 td {
    border-top-width: 0;
}

.fc-agenda-slots tr.fc-minor th.ui-widget-header {
    *border-top-style: solid; /* doesn't work with background in IE6/7 */
}



/* Vertical Events
------------------------------------------------------------------------*/

.fc-event-vert {
    border-width: 0 1px;
}

    .fc-event-vert.fc-event-start {
        border-top-width: 1px;
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
    }

    .fc-event-vert.fc-event-end {
        border-bottom-width: 1px;
        border-bottom-left-radius: 3px;
        border-bottom-right-radius: 3px;
    }

    .fc-event-vert .fc-event-time {
        white-space: nowrap;
        font-size: 10px;
    }

    .fc-event-vert .fc-event-inner {
        position: relative;
        z-index: 2;
    }

    .fc-event-vert .fc-event-bg { /* makes the event lighter w/ a semi-transparent overlay  */
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #fff;
        opacity: .25;
        filter: alpha(opacity=25);
    }

.fc .ui-draggable-dragging .fc-event-bg, /* TODO: something nicer like .fc-opacity */
.fc-select-helper .fc-event-bg {
    display: none\9; /* for IE6/7/8. nested opacity filters while dragging don't work */
}

/* resizable */

.fc-event-vert .ui-resizable-s {
    bottom: 0 !important; /* importants override pre jquery ui 1.7 styles */
    width: 100% !important;
    height: 8px !important;
    overflow: hidden !important;
    line-height: 8px !important;
    font-size: 11px !important;
    font-family: monospace;
    text-align: center;
    cursor: s-resize;
}

.fc-agenda .ui-resizable-resizing { /* TODO: better selector */
    _overflow: hidden;
}

thead tr.fc-first {
    background-color: #f7f7f7;
}

table.fc-header {
    background-color: #FFFFFF;
    border-radius: 6px 6px 0 0;
}

.fc-week .fc-day > div .fc-day-number {
    font-size: 13px;
    margin: 2px;
    min-width: 19px;
    padding: 6px;
    text-align: center;
    width: 30px;
    height: 30px;
}

.fc-sun, .fc-sat {
    color: #b8b8b8;
}

.fc-week .fc-day:hover .fc-day-number {
    background-color: #B8B8B8;
    border-radius: 50%;
    color: #FFFFFF;
    transition: background-color 0.2s;
}

.fc-week .fc-day.fc-state-highlight:hover .fc-day-number {
    background-color: #333333;
}

.fc-button-today {
    border: 1px solid rgba(255,255,255,.0);
}

.fc-view-agendaDay thead tr.fc-first .fc-widget-header {
    text-align: right;
    padding-right: 10px;
}

/*!
 * FullCalendar v1.6.4 Print Stylesheet
 * Docs & License: http://arshaw.com/fullcalendar/
 * (c) 2013 Adam Shaw
 */

/*
 * Include this stylesheet on your page to get a more printer-friendly calendar.
 * When including this stylesheet, use the media='print' attribute of the <link> tag.
 * Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css.
 */


/* Events
-----------------------------------------------------*/

.fc-event {
    background: #fff !important;
    color: #000 !important;
}

/* for vertical events */

.fc-event-bg {
    display: none !important;
}

.fc-event .ui-resizable-handle {
    display: none !important;
}

.checkbox {
    padding-left: 20px;
}

    .checkbox label {
        display: inline-block;
        vertical-align: middle;
        position: relative;
        padding-left: 5px;
    }

        .checkbox label::before {
            content: "";
            display: inline-block;
            position: absolute;
            width: 17px;
            height: 17px;
            left: 0;
            margin-left: -20px;
            border: 1px solid #cccccc;
            border-radius: 3px;
            background-color: #fff;
            -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
            -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
            transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
        }

        .checkbox label::after {
            display: inline-block;
            position: absolute;
            width: 16px;
            height: 16px;
            left: 0;
            top: 0;
            margin-left: -20px;
            padding-left: 3px;
            padding-top: 1px;
            font-size: 11px;
            color: #555555;
        }

    .checkbox input[type="checkbox"],
    .checkbox input[type="radio"] {
        opacity: 0;
        z-index: 1;
    }

        .checkbox input[type="checkbox"]:focus + label::before,
        .checkbox input[type="radio"]:focus + label::before {
            outline: thin dotted;
            outline: 5px auto -webkit-focus-ring-color;
            outline-offset: -2px;
        }

        .checkbox input[type="checkbox"]:checked + label::after,
        .checkbox input[type="radio"]:checked + label::after {
            font-family: "FontAwesome";
            content: "\f00c";
        }

        .checkbox input[type="checkbox"]:indeterminate + label::after,
        .checkbox input[type="radio"]:indeterminate + label::after {
            display: block;
            content: "";
            width: 10px;
            height: 3px;
            background-color: #555555;
            border-radius: 2px;
            margin-left: -16.5px;
            margin-top: 7px;
        }

        .checkbox input[type="checkbox"]:disabled + label,
        .checkbox input[type="radio"]:disabled + label {
            opacity: 0.65;
        }

            .checkbox input[type="checkbox"]:disabled + label::before,
            .checkbox input[type="radio"]:disabled + label::before {
                background-color: #eeeeee;
                cursor: not-allowed;
            }

    .checkbox.checkbox-circle label::before {
        border-radius: 50%;
    }

    .checkbox.checkbox-inline {
        margin-top: 0;
    }

.checkbox-primary input[type="checkbox"]:checked + label::before,
.checkbox-primary input[type="radio"]:checked + label::before {
    background-color: #337ab7;
    border-color: #337ab7;
}

.checkbox-primary input[type="checkbox"]:checked + label::after,
.checkbox-primary input[type="radio"]:checked + label::after {
    color: #fff;
}

.checkbox-danger input[type="checkbox"]:checked + label::before,
.checkbox-danger input[type="radio"]:checked + label::before {
    background-color: #d9534f;
    border-color: #d9534f;
}

.checkbox-danger input[type="checkbox"]:checked + label::after,
.checkbox-danger input[type="radio"]:checked + label::after {
    color: #fff;
}

.checkbox-info input[type="checkbox"]:checked + label::before,
.checkbox-info input[type="radio"]:checked + label::before {
    background-color: #5bc0de;
    border-color: #5bc0de;
}

.checkbox-info input[type="checkbox"]:checked + label::after,
.checkbox-info input[type="radio"]:checked + label::after {
    color: #fff;
}

.checkbox-warning input[type="checkbox"]:checked + label::before,
.checkbox-warning input[type="radio"]:checked + label::before {
    background-color: #f0ad4e;
    border-color: #f0ad4e;
}

.checkbox-warning input[type="checkbox"]:checked + label::after,
.checkbox-warning input[type="radio"]:checked + label::after {
    color: #fff;
}

.checkbox-success input[type="checkbox"]:checked + label::before,
.checkbox-success input[type="radio"]:checked + label::before {
    background-color: #5cb85c;
    border-color: #5cb85c;
}

.checkbox-success input[type="checkbox"]:checked + label::after,
.checkbox-success input[type="radio"]:checked + label::after {
    color: #fff;
}

.checkbox-primary input[type="checkbox"]:indeterminate + label::before,
.checkbox-primary input[type="radio"]:indeterminate + label::before {
    background-color: #337ab7;
    border-color: #337ab7;
}

.checkbox-primary input[type="checkbox"]:indeterminate + label::after,
.checkbox-primary input[type="radio"]:indeterminate + label::after {
    background-color: #fff;
}

.checkbox-danger input[type="checkbox"]:indeterminate + label::before,
.checkbox-danger input[type="radio"]:indeterminate + label::before {
    background-color: #d9534f;
    border-color: #d9534f;
}

.checkbox-danger input[type="checkbox"]:indeterminate + label::after,
.checkbox-danger input[type="radio"]:indeterminate + label::after {
    background-color: #fff;
}

.checkbox-info input[type="checkbox"]:indeterminate + label::before,
.checkbox-info input[type="radio"]:indeterminate + label::before {
    background-color: #5bc0de;
    border-color: #5bc0de;
}

.checkbox-info input[type="checkbox"]:indeterminate + label::after,
.checkbox-info input[type="radio"]:indeterminate + label::after {
    background-color: #fff;
}

.checkbox-warning input[type="checkbox"]:indeterminate + label::before,
.checkbox-warning input[type="radio"]:indeterminate + label::before {
    background-color: #f0ad4e;
    border-color: #f0ad4e;
}

.checkbox-warning input[type="checkbox"]:indeterminate + label::after,
.checkbox-warning input[type="radio"]:indeterminate + label::after {
    background-color: #fff;
}

.checkbox-success input[type="checkbox"]:indeterminate + label::before,
.checkbox-success input[type="radio"]:indeterminate + label::before {
    background-color: #5cb85c;
    border-color: #5cb85c;
}

.checkbox-success input[type="checkbox"]:indeterminate + label::after,
.checkbox-success input[type="radio"]:indeterminate + label::after {
    background-color: #fff;
}

.radio {
    padding-left: 20px;
}

    .radio label {
        display: inline-block;
        vertical-align: middle;
        position: relative;
        padding-left: 5px;
    }

        .radio label::before {
            content: "";
            display: inline-block;
            position: absolute;
            width: 17px;
            height: 17px;
            left: 0;
            margin-left: -20px;
            border: 1px solid #cccccc;
            border-radius: 50%;
            background-color: #fff;
            -webkit-transition: border 0.15s ease-in-out;
            -o-transition: border 0.15s ease-in-out;
            transition: border 0.15s ease-in-out;
        }

        .radio label::after {
            display: inline-block;
            position: absolute;
            content: " ";
            width: 11px;
            height: 11px;
            left: 3px;
            top: 3px;
            margin-left: -20px;
            border-radius: 50%;
            background-color: #555555;
            -webkit-transform: scale(0, 0);
            -ms-transform: scale(0, 0);
            -o-transform: scale(0, 0);
            transform: scale(0, 0);
            -webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
            -moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
            -o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
            transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
        }

    .radio input[type="radio"] {
        opacity: 0;
        z-index: 1;
    }

        .radio input[type="radio"]:focus + label::before {
            outline: thin dotted;
            outline: 5px auto -webkit-focus-ring-color;
            outline-offset: -2px;
        }

        .radio input[type="radio"]:checked + label::after {
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }

        .radio input[type="radio"]:disabled + label {
            opacity: 0.65;
        }

            .radio input[type="radio"]:disabled + label::before {
                cursor: not-allowed;
            }

    .radio.radio-inline {
        margin-top: 0;
    }

.radio-primary input[type="radio"] + label::after {
    background-color: #337ab7;
}

.radio-primary input[type="radio"]:checked + label::before {
    border-color: #337ab7;
}

.radio-primary input[type="radio"]:checked + label::after {
    background-color: #337ab7;
}

.radio-danger input[type="radio"] + label::after {
    background-color: #d9534f;
}

.radio-danger input[type="radio"]:checked + label::before {
    border-color: #d9534f;
}

.radio-danger input[type="radio"]:checked + label::after {
    background-color: #d9534f;
}

.radio-info input[type="radio"] + label::after {
    background-color: #5bc0de;
}

.radio-info input[type="radio"]:checked + label::before {
    border-color: #5bc0de;
}

.radio-info input[type="radio"]:checked + label::after {
    background-color: #5bc0de;
}

.radio-warning input[type="radio"] + label::after {
    background-color: #f0ad4e;
}

.radio-warning input[type="radio"]:checked + label::before {
    border-color: #f0ad4e;
}

.radio-warning input[type="radio"]:checked + label::after {
    background-color: #f0ad4e;
}

.radio-success input[type="radio"] + label::after {
    background-color: #5cb85c;
}

.radio-success input[type="radio"]:checked + label::before {
    border-color: #5cb85c;
}

.radio-success input[type="radio"]:checked + label::after {
    background-color: #5cb85c;
}

input[type="checkbox"].styled:checked + label:after,
input[type="radio"].styled:checked + label:after {
    font-family: 'FontAwesome';
    content: "\f00c";
}

input[type="checkbox"] .styled:checked + label::before,
input[type="radio"] .styled:checked + label::before {
    color: #fff;
}

input[type="checkbox"] .styled:checked + label::after,
input[type="radio"] .styled:checked + label::after {
    color: #fff;
}

/*!
 * Bootstrap-select v1.13.18 (https://developer.snapappointments.com/bootstrap-select)
 *
 * Copyright 2012-2020 SnapAppointments, LLC
 * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE)
 */@-webkit-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@-o-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}.bootstrap-select>select.bs-select-hidden,select.bs-select-hidden,select.selectpicker{display:none!important}.bootstrap-select{width:220px\0;vertical-align:middle}.bootstrap-select>.dropdown-toggle{position:relative;width:100%;text-align:right;white-space:nowrap;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.bootstrap-select>.dropdown-toggle:after{margin-top:-1px}.bootstrap-select>.dropdown-toggle.bs-placeholder,.bootstrap-select>.dropdown-toggle.bs-placeholder:active,.bootstrap-select>.dropdown-toggle.bs-placeholder:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder:hover{color:#999}.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:hover{color:rgba(255,255,255,.5)}.bootstrap-select>select{position:absolute!important;bottom:0;left:50%;display:block!important;width:.5px!important;height:100%!important;padding:0!important;opacity:0!important;border:none;z-index:0!important}.bootstrap-select>select.mobile-device{top:0;left:0;display:block!important;width:100%!important;z-index:2!important}.bootstrap-select.is-invalid .dropdown-toggle,.error .bootstrap-select .dropdown-toggle,.has-error .bootstrap-select .dropdown-toggle,.was-validated .bootstrap-select select:invalid+.dropdown-toggle{border-color:#b94a48}.bootstrap-select.is-valid .dropdown-toggle,.was-validated .bootstrap-select select:valid+.dropdown-toggle{border-color:#28a745}.bootstrap-select.fit-width{width:auto!important}.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){width:220px}.bootstrap-select .dropdown-toggle:focus,.bootstrap-select>select.mobile-device:focus+.dropdown-toggle{outline:thin dotted #333!important;outline:5px auto -webkit-focus-ring-color!important;outline-offset:-2px}.bootstrap-select.form-control{margin-bottom:0;padding:0;border:none;height:auto}:not(.input-group)>.bootstrap-select.form-control:not([class*=col-]){width:100%}.bootstrap-select.form-control.input-group-btn{float:none;z-index:auto}.form-inline .bootstrap-select,.form-inline .bootstrap-select.form-control:not([class*=col-]){width:auto}.bootstrap-select:not(.input-group-btn),.bootstrap-select[class*=col-]{float:none;display:inline-block;margin-left:0}.bootstrap-select.dropdown-menu-right,.bootstrap-select[class*=col-].dropdown-menu-right,.row .bootstrap-select[class*=col-].dropdown-menu-right{float:right}.form-group .bootstrap-select,.form-horizontal .bootstrap-select,.form-inline .bootstrap-select{margin-bottom:0}.form-group-lg .bootstrap-select.form-control,.form-group-sm .bootstrap-select.form-control{padding:0}.form-group-lg .bootstrap-select.form-control .dropdown-toggle,.form-group-sm .bootstrap-select.form-control .dropdown-toggle{height:100%;font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-lg .dropdown-toggle,.bootstrap-select.form-control-sm .dropdown-toggle{font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-sm .dropdown-toggle{padding:.25rem .5rem}.bootstrap-select.form-control-lg .dropdown-toggle{padding:.5rem 1rem}.form-inline .bootstrap-select .form-control{width:100%}.bootstrap-select.disabled,.bootstrap-select>.disabled{cursor:not-allowed}.bootstrap-select.disabled:focus,.bootstrap-select>.disabled:focus{outline:0!important}.bootstrap-select.bs-container{position:absolute;top:0;left:0;height:0!important;padding:0!important}.bootstrap-select.bs-container .dropdown-menu{z-index:1060}.bootstrap-select .dropdown-toggle .filter-option{position:static;top:0;left:0;float:left;height:100%;width:100%;text-align:left;overflow:hidden;-webkit-box-flex:0;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto}.bs3.bootstrap-select .dropdown-toggle .filter-option{padding-right:inherit}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option{position:absolute;padding-top:inherit;padding-bottom:inherit;padding-left:inherit;float:none}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option .filter-option-inner{padding-right:inherit}.bootstrap-select .dropdown-toggle .filter-option-inner-inner{overflow:hidden}.bootstrap-select .dropdown-toggle .filter-expand{width:0!important;float:left;opacity:0!important;overflow:hidden}.bootstrap-select .dropdown-toggle .caret{position:absolute;top:50%;right:12px;margin-top:-2px;vertical-align:middle}.input-group .bootstrap-select.form-control .dropdown-toggle{border-radius:inherit}.bootstrap-select[class*=col-] .dropdown-toggle{width:100%}.bootstrap-select .dropdown-menu{min-width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu>.inner:focus{outline:0!important}.bootstrap-select .dropdown-menu.inner{position:static;float:none;border:0;padding:0;margin:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.bootstrap-select .dropdown-menu li{position:relative}.bootstrap-select .dropdown-menu li.active small{color:rgba(255,255,255,.5)!important}.bootstrap-select .dropdown-menu li.disabled a{cursor:not-allowed}.bootstrap-select .dropdown-menu li a{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bootstrap-select .dropdown-menu li a.opt{position:relative;padding-left:2.25em}.bootstrap-select .dropdown-menu li a span.check-mark{display:none}.bootstrap-select .dropdown-menu li a span.text{display:inline-block}.bootstrap-select .dropdown-menu li small{padding-left:.5em}.bootstrap-select .dropdown-menu .notify{position:absolute;bottom:5px;width:96%;margin:0 2%;min-height:26px;padding:3px 5px;background:#f5f5f5;border:1px solid #e3e3e3;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);pointer-events:none;opacity:.9;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu .notify.fadeOut{-webkit-animation:.3s linear 750ms forwards bs-notify-fadeOut;-o-animation:.3s linear 750ms forwards bs-notify-fadeOut;animation:.3s linear 750ms forwards bs-notify-fadeOut}.bootstrap-select .no-results{padding:3px;background:#f5f5f5;margin:0 5px;white-space:nowrap}.bootstrap-select.fit-width .dropdown-toggle .filter-option{position:static;display:inline;padding:0}.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner{display:inline}.bootstrap-select.fit-width .dropdown-toggle .bs-caret:before{content:'\00a0'}.bootstrap-select.fit-width .dropdown-toggle .caret{position:static;top:auto;margin-top:-1px}.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark{position:absolute;display:inline-block;right:15px;top:5px}.bootstrap-select.show-tick .dropdown-menu li a span.text{margin-right:34px}.bootstrap-select .bs-ok-default:after{content:'';display:block;width:.5em;height:1em;border-style:solid;border-width:0 .26em .26em 0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle{z-index:1061}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before{content:'';border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(204,204,204,.2);position:absolute;bottom:-4px;left:9px;display:none}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after{content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;bottom:-4px;left:10px;display:none}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before{bottom:auto;top:-4px;border-top:7px solid rgba(204,204,204,.2);border-bottom:0}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after{bottom:auto;top:-4px;border-top:6px solid #fff;border-bottom:0}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before{right:12px;left:auto}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after{right:13px;left:auto}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:before,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:before{display:block}.bs-actionsbox,.bs-donebutton,.bs-searchbox{padding:4px 8px}.bs-actionsbox{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-actionsbox .btn-group button{width:50%}.bs-donebutton{float:left;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-donebutton .btn-group button{width:100%}.bs-searchbox+.bs-actionsbox{padding:0 8px 4px}.bs-searchbox .form-control{margin-bottom:0;width:100%;float:none}
/*!
 * Datepicker for Bootstrap v1.6.4 (https://github.com/eternicode/bootstrap-datepicker)
 *
 * Copyright 2012 Stefan Petre
 * Improvements by Andrew Rowls
 * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
 */
.datepicker {
  padding: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  direction: ltr;
}
.datepicker-inline {
  width: 220px;
}
.datepicker.datepicker-rtl {
  direction: rtl;
}
.datepicker.datepicker-rtl table tr td span {
  float: right;
}
.datepicker-dropdown {
  top: 0;
  left: 0;
}
.datepicker-dropdown:before {
  content: '';
  display: inline-block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #999;
  border-top: 0;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  position: absolute;
}
.datepicker-dropdown:after {
  content: '';
  display: inline-block;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-top: 0;
  position: absolute;
}
.datepicker-dropdown.datepicker-orient-left:before {
  left: 6px;
}
.datepicker-dropdown.datepicker-orient-left:after {
  left: 7px;
}
.datepicker-dropdown.datepicker-orient-right:before {
  right: 6px;
}
.datepicker-dropdown.datepicker-orient-right:after {
  right: 7px;
}
.datepicker-dropdown.datepicker-orient-bottom:before {
  top: -7px;
}
.datepicker-dropdown.datepicker-orient-bottom:after {
  top: -6px;
}
.datepicker-dropdown.datepicker-orient-top:before {
  bottom: -7px;
  border-bottom: 0;
  border-top: 7px solid #999;
}
.datepicker-dropdown.datepicker-orient-top:after {
  bottom: -6px;
  border-bottom: 0;
  border-top: 6px solid #fff;
}
.datepicker table {
  margin: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.datepicker td,
.datepicker th {
  text-align: center;
  width: 20px;
  height: 20px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  border: none;
}
.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
  background-color: transparent;
}
.datepicker table tr td.day:hover,
.datepicker table tr td.day.focused {
  background: #eee;
  cursor: pointer;
}
.datepicker table tr td.old,
.datepicker table tr td.new {
  color: #999;
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  background: none;
  color: #999;
  cursor: default;
}
.datepicker table tr td.highlighted {
  background: #d9edf7;
  border-radius: 0;
}
.datepicker table tr td.today,
.datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover {
  background-color: #fde19a;
  background-image: -moz-linear-gradient(to bottom, #fdd49a, #fdf59a);
  background-image: -ms-linear-gradient(to bottom, #fdd49a, #fdf59a);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
  background-image: -webkit-linear-gradient(to bottom, #fdd49a, #fdf59a);
  background-image: -o-linear-gradient(to bottom, #fdd49a, #fdf59a);
  background-image: linear-gradient(to bottom, #fdd49a, #fdf59a);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
  border-color: #fdf59a #fdf59a #fbed50;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #000;
}
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today[disabled],
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today.disabled:hover[disabled] {
  background-color: #fdf59a;
}
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active {
  background-color: #fbf069 \9;
}
.datepicker table tr td.today:hover:hover {
  color: #000;
}
.datepicker table tr td.today.active:hover {
  color: #fff;
}
.datepicker table tr td.range,
.datepicker table tr td.range:hover,
.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:hover {
  background: #eee;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
.datepicker table tr td.range.today,
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:hover {
  background-color: #f3d17a;
  background-image: -moz-linear-gradient(to bottom, #f3c17a, #f3e97a);
  background-image: -ms-linear-gradient(to bottom, #f3c17a, #f3e97a);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));
  background-image: -webkit-linear-gradient(to bottom, #f3c17a, #f3e97a);
  background-image: -o-linear-gradient(to bottom, #f3c17a, #f3e97a);
  background-image: linear-gradient(to bottom, #f3c17a, #f3e97a);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
  border-color: #f3e97a #f3e97a #edde34;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today:hover:hover,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today.disabled:hover:hover,
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today:hover.disabled,
.datepicker table tr td.range.today.disabled.disabled,
.datepicker table tr td.range.today.disabled:hover.disabled,
.datepicker table tr td.range.today[disabled],
.datepicker table tr td.range.today:hover[disabled],
.datepicker table tr td.range.today.disabled[disabled],
.datepicker table tr td.range.today.disabled:hover[disabled] {
  background-color: #f3e97a;
}
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active {
  background-color: #efe24b \9;
}
.datepicker table tr td.selected,
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled:hover {
  background-color: #9e9e9e;
  background-image: -moz-linear-gradient(to bottom, #b3b3b3, #808080);
  background-image: -ms-linear-gradient(to bottom, #b3b3b3, #808080);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(#808080));
  background-image: -webkit-linear-gradient(to bottom, #b3b3b3, #808080);
  background-image: -o-linear-gradient(to bottom, #b3b3b3, #808080);
  background-image: linear-gradient(to bottom, #b3b3b3, #808080);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
  border-color: #808080 #808080 #595959;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected:hover:hover,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.disabled:hover:hover,
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected:hover.disabled,
.datepicker table tr td.selected.disabled.disabled,
.datepicker table tr td.selected.disabled:hover.disabled,
.datepicker table tr td.selected[disabled],
.datepicker table tr td.selected:hover[disabled],
.datepicker table tr td.selected.disabled[disabled],
.datepicker table tr td.selected.disabled:hover[disabled] {
  background-color: #808080;
}
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active {
  background-color: #666666 \9;
}
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
  background-color: #006dcc;
  background-image: -moz-linear-gradient(to bottom, #08c, #0044cc);
  background-image: -ms-linear-gradient(to bottom, #08c, #0044cc);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0044cc));
  background-image: -webkit-linear-gradient(to bottom, #08c, #0044cc);
  background-image: -o-linear-gradient(to bottom, #08c, #0044cc);
  background-image: linear-gradient(to bottom, #08c, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active[disabled],
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active.disabled:hover[disabled] {
  background-color: #0044cc;
}
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active {
  background-color: #003399 \9;
}
.datepicker table tr td span {
  display: block;
  width: 23%;
  height: 54px;
  line-height: 54px;
  float: left;
  margin: 1%;
  cursor: pointer;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.datepicker table tr td span:hover,
.datepicker table tr td span.focused {
  background: #eee;
}
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
  background: none;
  color: #999;
  cursor: default;
}
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
  background-color: #006dcc;
  background-image: -moz-linear-gradient(to bottom, #08c, #0044cc);
  background-image: -ms-linear-gradient(to bottom, #08c, #0044cc);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0044cc));
  background-image: -webkit-linear-gradient(to bottom, #08c, #0044cc);
  background-image: -o-linear-gradient(to bottom, #08c, #0044cc);
  background-image: linear-gradient(to bottom, #08c, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active[disabled],
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active.disabled:hover[disabled] {
  background-color: #0044cc;
}
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
  background-color: #003399 \9;
}
.datepicker table tr td span.old,
.datepicker table tr td span.new {
  color: #999;
}
.datepicker .datepicker-switch {
  width: 145px;
}
.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next,
.datepicker tfoot tr th {
  cursor: pointer;
}
.datepicker .datepicker-switch:hover,
.datepicker .prev:hover,
.datepicker .next:hover,
.datepicker tfoot tr th:hover {
  background: #eee;
}
.datepicker .cw {
  font-size: 10px;
  width: 12px;
  padding: 0 2px 0 5px;
  vertical-align: middle;
}
.input-append.date .add-on,
.input-prepend.date .add-on {
  cursor: pointer;
}
.input-append.date .add-on i,
.input-prepend.date .add-on i {
  margin-top: 3px;
}
.input-daterange input {
  text-align: center;
}
.input-daterange input:first-child {
  -webkit-border-radius: 3px 0 0 3px;
  -moz-border-radius: 3px 0 0 3px;
  border-radius: 3px 0 0 3px;
}
.input-daterange input:last-child {
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
}
.input-daterange .add-on {
  display: inline-block;
  width: auto;
  min-width: 16px;
  height: 18px;
  padding: 4px 5px;
  font-weight: normal;
  line-height: 18px;
  text-align: center;
  text-shadow: 0 1px 0 #fff;
  vertical-align: middle;
  background-color: #eee;
  border: 1px solid #ccc;
  margin-left: -5px;
  margin-right: -5px;
}
/*# sourceMappingURL=bootstrap-datepicker.css.map */
/*!
 * Timepicker Component for Twitter Bootstrap
 *
 * Copyright 2013 Joris de Wit
 *
 * Contributors https://github.com/jdewit/bootstrap-timepicker/graphs/contributors
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */.bootstrap-timepicker{position:relative}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu{left:auto;right:0}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before{left:auto;right:12px}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after{left:auto;right:13px}.bootstrap-timepicker .input-group-addon{cursor:pointer}.bootstrap-timepicker .input-group-addon i{display:inline-block;width:16px;height:16px}.bootstrap-timepicker-widget.dropdown-menu{padding:4px}.bootstrap-timepicker-widget.dropdown-menu.open{display:inline-block}.bootstrap-timepicker-widget.dropdown-menu:before{border-bottom:7px solid rgba(0,0,0,0.2);border-left:7px solid transparent;border-right:7px solid transparent;content:"";display:inline-block;position:absolute}.bootstrap-timepicker-widget.dropdown-menu:after{border-bottom:6px solid #fff;border-left:6px solid transparent;border-right:6px solid transparent;content:"";display:inline-block;position:absolute}.bootstrap-timepicker-widget.timepicker-orient-left:before{left:6px}.bootstrap-timepicker-widget.timepicker-orient-left:after{left:7px}.bootstrap-timepicker-widget.timepicker-orient-right:before{right:6px}.bootstrap-timepicker-widget.timepicker-orient-right:after{right:7px}.bootstrap-timepicker-widget.timepicker-orient-top:before{top:-7px}.bootstrap-timepicker-widget.timepicker-orient-top:after{top:-6px}.bootstrap-timepicker-widget.timepicker-orient-bottom:before{bottom:-7px;border-bottom:0;border-top:7px solid #999}.bootstrap-timepicker-widget.timepicker-orient-bottom:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.bootstrap-timepicker-widget a.btn,.bootstrap-timepicker-widget input{border-radius:4px}.bootstrap-timepicker-widget table{width:100%;margin:0}.bootstrap-timepicker-widget table td{text-align:center;height:30px;margin:0;padding:2px}.bootstrap-timepicker-widget table td:not(.separator){min-width:30px}.bootstrap-timepicker-widget table td span{width:100%}.bootstrap-timepicker-widget table td a{border:1px transparent solid;width:100%;display:inline-block;margin:0;padding:8px 0;outline:0;color:#333}.bootstrap-timepicker-widget table td a:hover{text-decoration:none;background-color:#eee;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border-color:#ddd}.bootstrap-timepicker-widget table td a i{margin-top:2px;font-size:18px}.bootstrap-timepicker-widget table td input{width:25px;margin:0;text-align:center}.bootstrap-timepicker-widget .modal-content{padding:4px}@media(min-width:767px){.bootstrap-timepicker-widget.modal{width:200px;margin-left:-100px}}@media(max-width:767px){.bootstrap-timepicker{width:100%}.bootstrap-timepicker .dropdown-menu{width:100%}}
#loading-bar,#loading-bar-spinner{-webkit-pointer-events:none;pointer-events:none;transition:350ms linear all}#loading-bar.ng-enter,#loading-bar.ng-leave.ng-leave-active,#loading-bar-spinner.ng-enter,#loading-bar-spinner.ng-leave.ng-leave-active{opacity:0}#loading-bar.ng-enter.ng-enter-active,#loading-bar.ng-leave,#loading-bar-spinner.ng-enter.ng-enter-active,#loading-bar-spinner.ng-leave{opacity:1}#loading-bar .bar{position:fixed;top:0;left:0;z-index:20002;width:100%;height:2px;background:#20a8d8;border-top-right-radius:1px;border-bottom-right-radius:1px;transition:width 350ms}#loading-bar .peg{position:absolute;top:0;right:0;width:70px;height:2px;border-radius:100%;-ms-box-shadow:#29d 1px 0 6px 1px;box-shadow:#29d 1px 0 6px 1px;opacity:.45}#loading-bar-spinner{position:fixed;top:10px;left:10px;z-index:10002;display:block}#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:solid 2px transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:loading-bar-spinner 400ms linear infinite;animation:loading-bar-spinner 400ms linear infinite}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg);transform:rotate(360deg)}}.pace{-webkit-pointer-events:none;pointer-events:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{position:fixed;top:0;right:100%;z-index:2000;width:100%;height:2px;background:#20a8d8}
