.gj-button-md, .gj-text-align-center {
    text-align: center;
}

.gj-button-md, .gj-modal {
    overflow: hidden;
    outline: 0;
}

.gj-button-md, .gj-button-md-group {
    position: relative;
    vertical-align: middle;
}

.gj-button, .gj-button-md, .gj-cursor-pointer {
    cursor: pointer;
}

.gj-button {
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    color: #000;
    border-radius: 3px;
    padding: 6px 10px;
}

.gj-unselectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.gj-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.gj-margin-left-5 {
    margin-left: 5px;
}

.gj-margin-left-10 {
    margin-left: 10px;
}

.gj-width-full {
    width: 100%;
}

.gj-font-size-16 {
    font-size: 16px;
}

.gj-hidden {
    display: none;
}

.gj-button-md {
    background: 0 0;
    border: none;
    border-radius: 2px;
    color: rgba(0,0,0,.87);
    height: 36px;
    margin: 0;
    min-width: 64px;
    padding: 0 16px;
    display: inline-block;
    font-family: Roboto,Helvetica,Arial,sans-serif;
    font-size: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0;
    will-change: box-shadow;
    transition: box-shadow .2s cubic-bezier(.4,0,1,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);
    text-decoration: none;
    line-height: 36px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    .gj-button-md:hover {
        background-color: rgba(158,158,158,.2);
    }

    .gj-button-md:disabled {
        color: rgba(0,0,0,.26);
        background: 0 0;
    }

    .gj-button-md .gj-icon, .gj-button-md .material-icons {
        vertical-align: middle;
    }

    .gj-button-md.gj-button-md-icon {
        width: 24px;
        height: 31px;
        min-width: 24px;
        padding: 0;
        display: table;
    }

ul.gj-list-bootstrap li [data-role=image], ul.gj-list-md li [data-role=checkbox], ul.gj-list-md li [data-role=image] {
    height: 24px;
    width: 24px;
}

.gj-button-md.gj-button-md-icon .gj-icon, .gj-button-md.gj-button-md-icon .material-icons {
    display: table-cell;
    margin-right: 0;
    width: 24px;
    height: 24px;
}

.gj-button-md.active {
    background-color: rgba(158,158,158,.4);
}

.gj-button-md-group {
    display: inline-block;
}

.gj-textbox-md {
    border: none;
    border-bottom: 1px solid rgba(0,0,0,.42);
    display: block;
    font-family: Helvetica,Arial,sans-serif;
    font-size: 16px;
    line-height: 16px;
    padding: 4px 0;
    margin: 0;
    width: 100%;
    background: 0 0;
    text-align: left;
    color: rgba(0,0,0,.87);
}

    .gj-textbox-md:active, .gj-textbox-md:focus {
        border-bottom: 2px solid rgba(0,0,0,.42);
        outline: 0;
    }

    .gj-textbox-md::placeholder {
        color: #8e8e8e;
    }

    .gj-textbox-md:-ms-input-placeholder {
        color: #8e8e8e;
    }

    .gj-textbox-md::-ms-input-placeholder {
        color: #8e8e8e;
    }

.gj-md-spacer-24 {
    min-width: 24px;
    width: 24px;
    display: inline-block;
}

.gj-md-spacer-32 {
    min-width: 32px;
    width: 32px;
    display: inline-block;
}

.gj-modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1203;
    display: none;
    -webkit-overflow-scrolling: touch;
    background-color: rgba(0,0,0,.54118);
    transition: .2s ease opacity;
    will-change: opacity;
}

ul.gj-list li [data-role=wrapper] {
    display: table;
    width: 100%;
}

ul.gj-list li [data-role=checkbox], ul.gj-list li [data-role=image] {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

ul.gj-list li [data-role=display] {
    display: table-cell;
    vertical-align: middle;
    cursor: pointer;
}

    ul.gj-list li [data-role=display]:empty:before {
        content: "\200b";
    }

ul.gj-list-bootstrap {
    padding-left: 0;
    margin-bottom: 0;
}

    ul.gj-list-bootstrap li {
        padding: 0;
    }

        ul.gj-list-bootstrap li [data-role=wrapper] {
            padding: 0 10px;
        }

        ul.gj-list-bootstrap li [data-role=checkbox] {
            width: 24px;
            padding: 3px;
        }

        ul.gj-list-bootstrap li [data-role=display] {
            padding: 8px 0 8px 4px;
        }

.list-group-item.active ul li, .list-group-item.active:focus ul li, .list-group-item.active:hover ul li {
    text-shadow: none;
    color: initial;
}

ul.gj-list-md {
    padding: 0;
    list-style: none;
    line-height: 24px;
    letter-spacing: 0;
    color: #616161;
}

    .gj-picker-md, ul.gj-list-md li {
        font-family: Roboto,Helvetica,Arial,sans-serif;
        font-size: 16px;
        font-weight: 400;
        letter-spacing: .04em;
        line-height: 1;
    }

    ul.gj-list-md li {
        display: list-item;
        list-style-type: none;
        padding: 0;
        min-height: unset;
        box-sizing: border-box;
        align-items: center;
        cursor: default;
        overflow: hidden;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

        ul.gj-list-md li [data-role=display] {
            padding: 8px 0 8px 5px;
            order: 0;
            flex-grow: 2;
            text-decoration: none;
            box-sizing: border-box;
            align-items: center;
            text-align: left;
            color: rgba(0,0,0,.87);
        }

        ul.gj-list-md li.disabled > [data-role=wrapper] > [data-role=display] {
            color: #9E9E9E;
        }

.gj-list-md-active {
    background: #e0e0e0;
    color: #3f51b5;
}

.gj-picker {
    position: absolute;
    z-index: 1203;
    background-color: #fff;
}

    .gj-picker .selected {
        color: #fff;
    }

.gj-picker-md {
    color: rgba(0,0,0,.87);
    border: 1px solid #E0E0E0;
}

.gj-modal .gj-picker-md {
    border: 0;
}

.gj-picker-md [role=header] {
    color: rgba(255,255,255,.54);
    display: flex;
    background: #2196f3;
    align-items: baseline;
    user-select: none;
    justify-content: center;
}

.gj-picker-md [role=footer] {
    float: right;
    padding: 10px;
}

    .gj-picker-md [role=footer] button.gj-button-md {
        color: #2196f3;
        font-weight: 700;
        font-size: 13px;
    }

.gj-picker-bootstrap {
    border: 1px solid #E0E0E0;
}

    .gj-picker-bootstrap .selected {
        color: #888;
    }

    .gj-picker-bootstrap [role=header] {
        background: #eee;
        color: #AAA;
    }

@font-face {
    font-family: gijgo-material;
    src: url(../fonts/gijgo-material.eot?235541);
    src: url(../fonts/gijgo-material.eot?235541#iefix) format('embedded-opentype'),url(../fonts/gijgo-material.ttf?235541) format('truetype'),url(../fonts/gijgo-material.woff?235541) format('woff'),url(../fonts/gijgo-material.svg?235541#gijgo-material) format('svg');
    font-weight: 400;
    font-style: normal;
}

.gj-icon {
    font-family: gijgo-material !important;
    font-size: 24px;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    letter-spacing: 0;
    -webkit-font-feature-settings: "liga";
    -moz-font-feature-settings: "liga=1";
    -moz-font-feature-settings: "liga";
    -ms-font-feature-settings: "liga" 1;
    font-feature-settings: "liga";
    -webkit-font-variant-ligatures: discretionary-ligatures;
    font-variant-ligatures: discretionary-ligatures;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

    .gj-icon.undo:before {
        content: "\e900";
    }

    .gj-icon.vertical-align-top:before {
        content: "\e901";
    }

    .gj-icon.vertical-align-center:before {
        content: "\e902";
    }

    .gj-icon.vertical-align-bottom:before {
        content: "\e903";
    }

    .gj-icon.arrow-dropup:before {
        content: "\e904";
    }

    .gj-icon.clock:before {
        content: "\e905";
    }

    .gj-icon.refresh:before {
        content: "\e906";
    }

    .gj-icon.last-page:before {
        content: "\e907";
    }

    .gj-icon.first-page:before {
        content: "\e908";
    }

    .gj-icon.cancel:before {
        content: "\e909";
    }

    .gj-icon.clear:before {
        content: "\e90a";
    }

    .gj-icon.check-circle:before {
        content: "\e90b";
    }

    .gj-icon.delete:before {
        content: "\e90c";
    }

    .gj-icon.arrow-upward:before {
        content: "\e90d";
    }

    .gj-icon.arrow-forward:before {
        content: "\e90e";
    }

    .gj-icon.arrow-downward:before {
        content: "\e90f";
    }

    .gj-icon.arrow-back:before {
        content: "\e910";
    }

    .gj-icon.list-numbered:before {
        content: "\e911";
    }

    .gj-icon.list-bulleted:before {
        content: "\e912";
    }

    .gj-icon.indent-increase:before {
        content: "\e913";
    }

    .gj-icon.indent-decrease:before {
        content: "\e914";
    }

    .gj-icon.redo:before {
        content: "\e915";
    }

    .gj-icon.align-right:before {
        content: "\e916";
    }

    .gj-icon.align-left:before {
        content: "\e917";
    }

    .gj-icon.align-justify:before {
        content: "\e918";
    }

    .gj-icon.align-center:before {
        content: "\e919";
    }

    .gj-icon.strikethrough:before {
        content: "\e91a";
    }

    .gj-icon.italic:before {
        content: "\e91b";
    }

    .gj-icon.underlined:before {
        content: "\e91c";
    }

    .gj-icon.bold:before {
        content: "\e91d";
    }

    .gj-icon.arrow-dropdown:before {
        content: "\e91e";
    }

    .gj-icon.done:before {
        content: "\e91f";
    }

    .gj-icon.pencil:before {
        content: "\e920";
    }

    .gj-icon.minus:before {
        content: "\e921";
    }

    .gj-icon.plus:before {
        content: "\e922";
    }

    .gj-icon.chevron-up:before {
        content: "\e923";
    }

    .gj-icon.chevron-right:before {
        content: "\e924";
    }

    .gj-icon.chevron-down:before {
        content: "\e925";
    }

    .gj-icon.chevron-left:before {
        content: "\e926";
    }

    .gj-icon.event:before {
        content: "\e927";
    }

.gj-draggable {
    cursor: move;
}

.gj-resizable-handle {
    position: absolute;
    font-size: .1px;
    display: block;
    -ms-touch-action: none;
    touch-action: none;
    z-index: 1203;
}

.gj-dialog-bootstrap [data-role=title], .gj-dialog-bootstrap4 [data-role=title] {
    display: inline;
}

.gj-dialog-bootstrap, .gj-dialog-bootstrap4, .gj-dialog-md {
    z-index: 1202;
    overflow: hidden;
}

.gj-resizable-n {
    cursor: n-resize;
    height: 7px;
    width: 100%;
    top: -5px;
    left: 0;
}

.gj-resizable-e {
    cursor: e-resize;
    width: 7px;
    right: -5px;
    top: 0;
    height: 100%;
}

.gj-resizable-s {
    cursor: s-resize;
    height: 7px;
    width: 100%;
    bottom: -5px;
    left: 0;
}

.gj-resizable-w {
    cursor: w-resize;
    width: 7px;
    left: -5px;
    top: 0;
    height: 100%;
}

.gj-resizable-se {
    cursor: se-resize;
    width: 12px;
    height: 12px;
    right: 1px;
    bottom: 1px;
}

.gj-resizable-sw {
    cursor: sw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    bottom: -5px;
}

.gj-resizable-nw {
    cursor: nw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    top: -5px;
}

.gj-resizable-ne {
    cursor: ne-resize;
    width: 9px;
    height: 9px;
    right: -5px;
    top: -5px;
}

.gj-dialog-footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    margin-top: 0;
}

.gj-dialog-scrollable [data-role=body] {
    overflow-x: hidden;
    overflow-y: scroll;
}

.gj-dialog-bootstrap [data-role=close] {
    line-height: 1.42857143;
}

.gj-dialog-bootstrap4 [data-role=close] {
    line-height: 1.5;
}

.gj-dialog-md {
    background-color: #FFF;
    border: none;
    box-shadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);
    box-sizing: border-box;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    outline: 0;
}

.gj-dialog-md-header {
    padding: 24px 24px 0;
    font-family: Roboto,Helvetica,Arial,sans-serif;
}

.gj-dialog-md-title {
    margin: 0;
    font-weight: 400;
    display: inline;
    line-height: 28px;
    font-size: 20px;
}

.gj-dialog-md-close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    float: right;
    line-height: 28px;
    font-size: 28px;
}

.gj-dialog-md-body {
    padding: 20px 24px 24px;
    color: rgba(0,0,0,.54);
    font-family: Helvetica,Arial,sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}

.gj-dialog-md-footer {
    padding: 8px 8px 8px 24px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
}

    .gj-dialog-md-footer > :first-child {
        margin-right: 0;
    }

    .gj-dialog-md-footer > * {
        margin-right: 8px;
        height: 36px;
    }

DIV.gj-grid-wrapper {
    margin: auto;
    position: relative;
    clear: both;
    z-index: 1;
}

TABLE.gj-grid {
    margin: auto;
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
}

    TABLE.gj-grid THEAD TH [data-role=selectAll] {
        margin: auto;
    }

table.gj-grid-bootstrap thead th [data-role=sorticon], table.gj-grid-md thead th [data-role=sorticon] {
    margin-left: 5px;
}

TABLE.gj-grid THEAD TH [data-role=title], TABLE.gj-grid THEAD TH [data-role=sorticon] {
    display: inline-block;
}

TABLE.gj-grid THEAD TH {
    overflow: hidden;
    text-overflow: ellipsis;
}

TABLE.gj-grid.autogrow-header-row THEAD TH {
    overflow: auto;
    text-overflow: initial;
    white-space: pre-wrap;
    -ms-word-break: break-word;
    word-break: break-word;
}

TABLE.gj-grid > tbody > tr > td {
    overflow: hidden;
    position: relative;
}

table.gj-grid tbody div[data-role=display] {
    vertical-align: middle;
    text-indent: 0;
    white-space: pre-wrap;
    -ms-word-break: break-word;
    word-break: break-word;
}

table.gj-grid.fixed-body-rows tbody div[data-role=display] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    -ms-word-break: initial;
    word-break: initial;
}

table.gj-grid tfoot DIV[data-role=display] {
    vertical-align: middle;
    text-indent: 0;
    display: flex;
}

TABLE.gj-grid .fa {
    padding: 2px;
}

TABLE.gj-grid > tbody > tr > td > div {
    padding: 2px;
    overflow: hidden;
}

DIV.gj-grid-wrapper DIV.gj-grid-loading-cover {
    background: #BBB;
    opacity: .5;
    position: absolute;
    vertical-align: middle;
}

DIV.gj-grid-wrapper DIV.gj-grid-loading-text {
    position: absolute;
    font-weight: 700;
}

table.gj-grid-bootstrap thead th {
    background-color: #f5f5f5;
    vertical-align: middle;
}

    table.gj-grid-bootstrap thead th [data-role=sorticon] i.gj-icon, table.gj-grid-bootstrap thead th [data-role=sorticon] i.material-icons {
        position: absolute;
        font-size: 20px;
        top: 15px;
    }

table.gj-grid-bootstrap tbody tr td div[data-role=display] {
    padding: 0;
}

.gj-grid-bootstrap-4 .gj-checkbox-bootstrap {
    display: inline-block;
    padding-top: 2px;
}

.gj-grid-bootstrap-4 tbody tr.active {
    background-color: rgba(0,0,0,.075);
}

.gj-grid-md {
    position: relative;
    border: 1px solid #e0e0e0;
    border-collapse: collapse;
    white-space: nowrap;
    font-size: 13px;
    font-family: Roboto,Helvetica,Arial,sans-serif;
    background-color: #fff;
}

    .gj-grid-md td:first-of-type, .gj-grid-md th:first-of-type {
        padding-left: 24px;
    }

    .gj-grid-md td, .gj-grid-md th {
        padding: 12px 18px;
        position: relative;
        box-sizing: border-box;
    }

    .gj-grid-md th {
        vertical-align: bottom;
        font-weight: 700;
        line-height: 31px;
        letter-spacing: 0;
        height: 56px;
        font-size: 12px;
        color: rgba(0,0,0,.54);
        text-align: right;
    }

    .gj-grid-md td {
        height: 48px;
        border-top: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0;
        text-align: left;
        color: rgba(0,0,0,.87);
    }

    .gj-grid-bootstrap tbody tr.gj-grid-top-border td, .gj-grid-md tbody tr.gj-grid-top-border td {
        border-top: 2px solid #777;
    }

    .gj-grid-bootstrap tbody tr.gj-grid-bottom-border td, .gj-grid-md tbody tr.gj-grid-bottom-border td {
        border-bottom: 2px solid #777;
    }

    .gj-grid-md tbody tr {
        position: relative;
        height: 48px;
        transition-duration: .28s;
        transition-timing-function: cubic-bezier(.4,0,.2,1);
        transition-property: background-color;
    }

        .gj-grid-md tbody tr:hover {
            background-color: #EEE;
        }

        .gj-grid-md tbody tr.gj-grid-md-select {
            background-color: #F5F5F5;
        }

table.gj-grid-md thead th [data-role=sorticon] i.gj-icon, table.gj-grid-md thead th [data-role=sorticon] i.material-icons {
    position: absolute;
    font-size: 16px;
    top: 19px;
}

table.gj-grid-md thead th.gj-grid-select-all {
    padding-bottom: 3px;
}

@media only all {
    td.display-1120, td.display-320, td.display-480, td.display-640, td.display-800, td.display-960, th.display-1120, th.display-320, th.display-480, th.display-640, th.display-800, th.display-960 {
        display: none;
    }
}

@media screen and (min-width:20em) {
    TABLE.gj-grid-bootstrap td.display-320, TABLE.gj-grid-bootstrap th.display-320 {
        display: table-cell;
    }
}

@media screen and (min-width:30em) {
    TABLE.gj-grid-bootstrap td.display-480, TABLE.gj-grid-bootstrap th.display-480 {
        display: table-cell;
    }
}

@media screen and (min-width:40em) {
    TABLE.gj-grid-bootstrap td.display-640, TABLE.gj-grid-bootstrap th.display-640 {
        display: table-cell;
    }
}

@media screen and (min-width:50em) {
    TABLE.gj-grid-bootstrap td.display-800, TABLE.gj-grid-bootstrap th.display-800 {
        display: table-cell;
    }
}

@media screen and (min-width:60em) {
    TABLE.gj-grid-bootstrap td.display-960, TABLE.gj-grid-bootstrap th.display-960 {
        display: table-cell;
    }
}

@media screen and (min-width:70em) {
    TABLE.gj-grid-bootstrap td.display-1120, TABLE.gj-grid-bootstrap th.display-1120 {
        display: table-cell;
    }
}

.gj-grid-md tfoot tr th {
    padding-right: 14px;
}

.gj-grid-md tfoot tr[data-role=pager] .gj-grid-mdl-pager-label {
    padding-left: 5px;
    padding-right: 5px;
}

.gj-grid-md tfoot tr[data-role=pager] .gj-dropdown-md {
    margin-left: 12px;
}

    .gj-grid-md tfoot tr[data-role=pager] .gj-dropdown-md [role=presenter] {
        font-size: 12px;
        font-weight: 700;
        color: rgba(0,0,0,.54);
    }

        .gj-grid-md tfoot tr[data-role=pager] .gj-dropdown-md [role=presenter] [role=display] {
            text-align: right;
        }

.gj-grid-md tfoot tr[data-role=pager] .gj-grid-md-limit-select {
    margin-left: 10px;
    font-size: 12px;
    font-weight: 700;
    color: rgba(0,0,0,.54);
}

.gj-grid-bootstrap tfoot tr[data-role=pager] th {
    line-height: 30px;
    background-color: #f5f5f5;
}

    .gj-grid-bootstrap tfoot tr[data-role=pager] th > div > button, .gj-grid-bootstrap tfoot tr[data-role=pager] th > div > div {
        margin-right: 5px;
    }

.gj-grid-bootstrap-4 tfoot tr[data-role=pager] th > div button {
    height: 34px;
}

.gj-grid-bootstrap-4 tfoot tr[data-role=pager] th div .gj-dropdown-bootstrap-4 .gj-dropdown-expander-mi .gj-icon {
    top: 5px;
}

.gj-grid-bootstrap-3 tfoot tr[data-role=pager] th > div > input {
    margin-right: 5px;
    width: 40px;
    text-align: right;
    display: inline-block;
    font-weight: 700;
}

.gj-grid-bootstrap-4 tfoot tr[data-role=pager] th > div > div.input-group {
    width: 40px;
}

    .gj-grid-bootstrap-4 tfoot tr[data-role=pager] th > div > div.input-group input {
        text-align: right;
        font-weight: 700;
        height: 34px;
        padding-top: 2px;
        padding-bottom: 6px;
    }

.gj-grid-bootstrap tfoot tr[data-role=pager] th > div > select {
    display: inline-block;
    margin-right: 5px;
    width: 60px;
}

.gj-grid-bootstrap tfoot tr[data-role=pager] th .gj-dropdown-bootstrap .gj-list-bootstrap [data-role=display] {
    line-height: 14px;
}

.gj-grid-bootstrap tfoot tr[data-role=pager] th .gj-dropdown-bootstrap [role=presenter] [role=display] {
    font-weight: 700;
}

.gj-grid-bootstrap tfoot tr[data-role=pager] th .gj-dropdown-bootstrap-3 [role=presenter] {
    padding: 2px 8px;
}

.gj-grid-bootstrap tfoot tr[data-role=pager] th .gj-dropdown-bootstrap-4 [role=presenter] {
    padding: 1px 8px;
}

.gj-grid thead tr th div.gj-grid-column-resizer-wrapper {
    position: relative;
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    padding: 0;
}

span.gj-grid-column-resizer {
    position: absolute;
    right: 0;
    width: 10px;
    top: -100px;
    height: 300px;
    z-index: 1203;
    cursor: e-resize;
}

.gj-grid-resize-cursor {
    cursor: e-resize;
}

.gj-grid-md tbody tr td.gj-grid-left-border, .gj-grid-md thead tr th.gj-grid-left-border {
    border-left: 3px solid #777;
}

.gj-grid-md tbody tr td.gj-grid-right-border, .gj-grid-md thead tr th.gj-grid-right-border {
    border-right: 3px solid #777;
}

.gj-grid-bootstrap tbody tr td.gj-grid-left-border, .gj-grid-bootstrap thead tr th.gj-grid-left-border {
    border-left: 5px solid #ddd;
}

.gj-grid-bootstrap tbody tr td.gj-grid-right-border, .gj-grid-bootstrap thead tr th.gj-grid-right-border {
    border-right: 5px solid #ddd;
}

.gj-dirty {
    position: absolute;
    top: 0;
    left: 0;
    border-style: solid;
    border-width: 3px;
    border-color: red transparent transparent red;
    padding: 0;
    overflow: hidden;
    vertical-align: top;
}

.gj-grid-md tbody tr td.gj-grid-management-column {
    padding: 3px;
}

.gj-grid-md tbody tr td[data-mode=edit] {
    padding: 0 18px;
}

.gj-grid-bootstrap tbody tr td[data-mode=edit], .gj-grid-bootstrap tbody tr td[data-mode=edit] [data-role=edit], .gj-grid-md tbody .gj-dropdown-md [role=presenter] [role=display] {
    padding: 0;
}

.gj-grid-bootstrap-3 tbody tr td.gj-grid-management-column {
    padding: 3px;
}

.gj-grid-bootstrap-3 tbody tr td[data-mode=edit] {
    height: 38px;
}

    .gj-grid-bootstrap-3 tbody tr td[data-mode=edit] [data-role=edit] input[type=text] {
        height: 37px;
        padding: 8px;
    }

    .gj-grid-bootstrap-3 tbody tr td[data-mode=edit] .gj-dropdown-bootstrap [role=presenter] {
        border: 0;
        border-radius: 0;
        height: 37px;
        padding-left: 8px;
    }

    .gj-grid-bootstrap-3 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap {
        height: 37px;
    }

        .gj-grid-bootstrap-3 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=input] {
            height: 37px;
            border: 0;
            border-radius: 0;
        }

        .gj-grid-bootstrap-3 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=right-icon] {
            border: 0;
            border-radius: 0;
        }

    .gj-grid-bootstrap-3 tbody tr td[data-mode=edit] .gj-checkbox-bootstrap {
        display: inline-block;
        padding-top: 10px;
        height: 32px;
    }

.gj-grid-bootstrap-4 tbody tr td.gj-grid-management-column {
    padding: 6px;
}

.gj-grid-bootstrap-4 tbody tr td[data-mode=edit] [data-role=edit] input[type=text] {
    height: 48px;
    padding-left: 12px;
}

.gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-dropdown-bootstrap [role=presenter] {
    border: 0;
    border-radius: 0;
    height: 48px;
    padding-left: 12px;
    font-family: -apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

.gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-dropdown-bootstrap-4 [role=expander].gj-dropdown-expander-mi .gj-icon, .gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-dropdown-bootstrap-4 [role=expander].gj-dropdown-expander-mi .material-icons {
    top: 13px;
}

.gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap {
    height: 48px;
}

    .gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=input] {
        height: 48px;
        border: 0;
        border-radius: 0;
    }

    .gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=right-icon] {
        background-color: #fff;
    }

        .gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=right-icon] button {
            border: 0;
            border-radius: 0;
            width: 43px;
            position: relative;
        }

        .gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=right-icon] .gj-icon, .gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-datepicker-bootstrap [role=right-icon] .material-icons {
            top: 13px;
            left: 10px;
            font-size: 24px;
        }

.gj-grid-bootstrap-4 tbody tr td[data-mode=edit] .gj-checkbox-bootstrap {
    display: inline-block;
    padding-top: 15px;
    height: 42px;
}

.gj-grid-md thead tr[data-role=filter] th {
    border-top: 1px solid #e0e0e0;
}

div.gj-grid-wrapper div.gj-grid-bootstrap-toolbar {
    background-color: #f5f5f5;
    padding: 8px;
    font-weight: 700;
    border: 1px solid #ddd;
}

div.gj-grid-wrapper div.gj-grid-bootstrap-4-toolbar {
    background-color: #f5f5f5;
    padding: 12px;
    font-weight: 700;
    border: 1px solid #ddd;
}

div.gj-grid-wrapper div.gj-grid-md-toolbar {
    font-weight: 700;
    font-size: 24px;
    font-family: Helvetica,Arial,sans-serif;
    background-color: #fff;
    border-top: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
    border-bottom: 0;
    border-collapse: collapse;
    padding: 0 18px;
    line-height: 56px;
}

.gj-checkbox-bootstrap, .gj-checkbox-md {
    min-width: 0;
    font-weight: 400;
    text-align: center;
    position: relative;
}

table.gj-grid-scrollable tbody {
    overflow-y: auto;
    overflow-x: hidden;
    display: block;
}

table.gj-grid-md.gj-grid-scrollable {
    border-bottom: 0;
}

    table.gj-grid-md.gj-grid-scrollable tbody {
        border-right: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0;
    }

    table.gj-grid-md.gj-grid-scrollable tfoot {
        border-bottom: 1px solid #e0e0e0;
    }

table.gj-grid-bootstrap.gj-grid-scrollable {
    border-bottom: 0;
}

    table.gj-grid-bootstrap.gj-grid-scrollable tbody {
        border-right: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
    }

        table.gj-grid-bootstrap.gj-grid-scrollable tbody tr[data-role=row]:first-child td {
            border-top: 0;
        }

        table.gj-grid-bootstrap.gj-grid-scrollable tbody tr[data-role=row] td:first-child {
            border-left: 0;
        }

        table.gj-grid-bootstrap.gj-grid-scrollable tbody tr[data-role=row] td:last-child {
            border-right: 0;
        }

    table.gj-grid-bootstrap.gj-grid-scrollable tfoot {
        border-bottom: 1px solid #ddd;
    }

ul.gj-list li [data-role=spacer] {
    display: table-cell;
}

ul.gj-list li [data-role=expander] {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
}

[data-type=tree] ul li [data-role=expander].gj-tree-font-awesome-expander, [data-type=tree] ul li [data-role=expander].gj-tree-glyphicons-expander, [data-type=tree] ul li [data-role=expander].gj-tree-material-icons-expander {
    width: 24px;
}

    [data-type=tree] ul li [data-role=expander].gj-tree-glyphicons-expander .glyphicon {
        top: 4px;
        height: 24px;
    }

.gj-tree-bootstrap-3 ul.gj-list-bootstrap li {
    border: 0;
    border-radius: 0;
    color: #333;
}

    .gj-tree-bootstrap-3 ul.gj-list-bootstrap li.active {
        color: #fff;
    }

    .gj-tree-bootstrap-3 ul.gj-list-bootstrap li.disabled {
        color: #777;
        background-color: #eee;
    }

.gj-tree-bootstrap-4 ul.gj-list-bootstrap li {
    border: 0;
    border-radius: 0;
    color: #212529;
}

    .gj-tree-bootstrap-4 ul.gj-list-bootstrap li.active {
        color: #fff;
    }

    .gj-tree-bootstrap-4 ul.gj-list-bootstrap li.disabled {
        color: #868e96;
    }

    .gj-tree-bootstrap-4 ul.gj-list-bootstrap li ul.gj-list-bootstrap {
        width: 100%;
    }

.gj-tree-bootstrap-border ul.gj-list-bootstrap li {
    border: 1px solid #ddd;
}

    .gj-tree-bootstrap-border ul.gj-list-bootstrap li ul.gj-list-bootstrap li {
        border-left: 0;
        border-right: 0;
    }

    .gj-tree-bootstrap-border ul.gj-list-bootstrap li:first-child {
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
    }

    .gj-tree-bootstrap-border ul.gj-list-bootstrap li:last-child {
        border-bottom-left-radius: 4px;
        border-bottom-right-radius: 4px;
    }

    .gj-tree-bootstrap-border ul.gj-list-bootstrap li ul.gj-list-bootstrap li:first-child {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }

    .gj-tree-bootstrap-border ul.gj-list-bootstrap li ul.gj-list-bootstrap li:last-child {
        border-bottom: 0;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }

ul.gj-list-bootstrap li [data-role=expander].gj-tree-material-icons-expander {
    padding-top: 8px;
    padding-bottom: 4px;
}

.gj-tree-drag-el, .gj-tree-drag-el li {
    padding: 0;
    margin: 0;
}

ul.gj-list-bootstrap li [data-role=expander].gj-tree-material-icons-expander .gj-icon {
    width: 24px;
    height: 24px;
}

ul.gj-list-md li.disabled > [data-role=wrapper] > [data-role=expander] {
    color: #9E9E9E;
}

.gj-tree-md-border ul.gj-list-md li {
    border: 1px solid #616161;
    margin-bottom: -1px;
}

    .gj-tree-md-border ul.gj-list-md li ul.gj-list-md li {
        border-left: 0;
        border-right: 0;
    }

        .gj-tree-md-border ul.gj-list-md li ul.gj-list-md li:last-child {
            border-bottom: 0;
        }

.gj-tree-drop-above {
    border-top: 1px solid #000;
}

.gj-tree-bootstrap-3 ul.gj-list-bootstrap li [data-role=wrapper].drop-above, .gj-tree-bootstrap-4 ul.gj-list-bootstrap li [data-role=wrapper].drop-above {
    border-top: 2px solid #000;
}

.gj-tree-drop-below {
    border-bottom: 1px solid #000;
}

.gj-tree-bootstrap-3 ul.gj-list-bootstrap li [data-role=wrapper].drop-below, .gj-tree-bootstrap-4 ul.gj-list-bootstrap li [data-role=wrapper].drop-below {
    border-bottom: 2px solid #000;
}

.gj-tree-drag-el {
    z-index: 1203;
}

    .gj-tree-drag-el [data-role=wrapper] {
        cursor: move;
        display: table;
    }

    .gj-tree-drag-el [data-role=indicator] {
        width: 14px;
        padding: 0 3px;
        display: table-cell;
        vertical-align: middle;
        text-align: center;
    }

.gj-tree-bootstrap-drag-el li.list-group-item {
    border: 0;
    background: unset;
}

.gj-tree-bootstrap-drag-el [data-role=indicator], .gj-tree-md-drag-el [data-role=indicator] {
    width: 24px;
    height: 24px;
    padding: 0;
}

.gj-checkbox-bootstrap {
    font-size: 0;
    margin: 0;
    width: 18px;
    height: 18px;
    display: inline;
}

    .gj-checkbox-bootstrap input[type=checkbox] {
        display: none;
        margin-bottom: -12px;
    }

    .gj-checkbox-bootstrap span {
        background: #fff;
        display: block;
        content: " ";
        width: 18px;
        height: 18px;
        line-height: 11px;
        font-size: 11px;
        padding: 2px;
        color: #555;
        border: 1px solid #CCC;
        border-radius: 3px;
        transition: box-shadow .2s linear,border-color .2s linear;
        cursor: pointer;
        margin: auto;
    }

    .gj-checkbox-bootstrap input[type=checkbox]:focus + span:before {
        outline: 0;
        box-shadow: 0 0 0 0 #66afe9,0 0 6px rgba(102,175,233,.6);
        border-color: #66afe9;
    }

.gj-datepicker-bootstrap :active, .gj-datepicker-bootstrap :focus, .gj-timepicker-bootstrap :active, .gj-timepicker-bootstrap :focus {
    box-shadow: none;
}

.gj-checkbox-bootstrap input[type=checkbox][disabled] + span {
    opacity: .6;
    cursor: not-allowed;
}

.gj-checkbox-bootstrap.gj-checkbox-bootstrap-4 span {
    line-height: 16px;
    padding: 0;
}

.gj-checkbox-bootstrap-4.gj-checkbox-material-icons input[type=checkbox]:checked + span:after, .gj-checkbox-bootstrap-4.gj-checkbox-material-icons input[type=checkbox]:indeterminate + span:after {
    font-size: 16px;
}

.gj-checkbox-md {
    font-size: 0;
    margin: 0;
    width: 16px;
    height: 16px;
}

    .gj-checkbox-md input[type=checkbox] {
        display: none;
        margin-bottom: -12px;
    }

    .gj-checkbox-md span {
        display: inline-block;
        box-sizing: border-box;
        width: 16px;
        height: 16px;
        margin: 0;
        cursor: pointer;
        overflow: hidden;
        border: 2px solid #616161;
        border-radius: 2px;
        z-index: 2;
    }

    .gj-checkbox-md input[type=checkbox]:checked + span {
        border: 2px solid #536DFE;
    }

        .gj-checkbox-md input[type=checkbox]:checked + span:after {
            color: #FFF;
            background-color: #536DFE;
            position: absolute;
            left: 1px;
            top: -15px;
        }

    .gj-checkbox-md input[type=checkbox]:indeterminate + span {
        border: 2px solid #616161;
    }

        .gj-checkbox-md input[type=checkbox]:indeterminate + span:after {
            color: #616161;
            position: absolute;
            left: 1px;
            top: -15px;
        }

    .gj-checkbox-md input[type=checkbox][disabled] + span {
        border: 2px solid #9E9E9E;
    }

.gj-editor-md, .gj-editor-md [role=body] {
    border: 1px solid rgba(158,158,158,.2);
}

.gj-checkbox-md input[type=checkbox][disabled] + span:after {
    background-color: #9E9E9E;
}

.gj-checkbox-md input[type=checkbox][disabled]:indeterminate + span:after {
    color: #FFF;
}

.gj-checkbox-material-icons input[type=checkbox]:checked + span:after {
    content: "\e91f";
    font-size: 14px;
    font-weight: 700;
    white-space: pre;
}

.gj-checkbox-material-icons input[type=checkbox]:indeterminate + span:after {
    content: "\e921";
    font-size: 14px;
    font-weight: 700;
    white-space: pre;
}

.gj-checkbox-glyphicons input[type=checkbox]:checked + span:after {
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    content: "\e013 ";
}

.gj-checkbox-glyphicons input[type=checkbox]:indeterminate + span:after {
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    content: "\2212 ";
    padding-right: 1px;
}

.gj-checkbox-fontawesome .fa {
    font-size: 14px;
}

.gj-checkbox-bootstrap.gj-checkbox-fontawesome .fa {
    line-height: 18px;
}

.gj-checkbox-fontawesome input[type=checkbox]:checked + span:before {
    content: "\f00c ";
}

.gj-checkbox-fontawesome input[type=checkbox]:indeterminate + span:before {
    content: "\f068 ";
}

.gj-editor [role=body] {
    overflow: auto;
    outline: transparent solid 0;
    box-sizing: border-box;
}

.gj-editor-md {
    padding: 7px;
    font-family: Roboto,Helvetica,Arial,sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
}

    .gj-editor-md [role=toolbar] {
        margin-bottom: 7px;
    }

        .gj-editor-md [role=toolbar] .gj-button-md {
            min-width: 54px;
            margin-right: 5px;
        }

            .gj-editor-md [role=toolbar] .gj-button-md .gj-icon {
                width: 24px;
                height: 24px;
            }

.gj-editor-bootstrap, .gj-editor-bootstrap [role=body] {
    border: 1px solid #eceeef;
}

.gj-editor-md p {
    margin: 0;
    padding: 0;
}

.gj-editor-md blockquote {
    font-size: 14px;
}

.gj-editor-bootstrap {
    padding: 7px;
}

    .gj-editor-bootstrap [role=toolbar] {
        margin-bottom: 7px;
    }

        .gj-editor-bootstrap [role=toolbar] .btn-group {
            margin-right: 10px;
        }

        .gj-editor-bootstrap [role=toolbar] button {
            height: 36px;
        }

    .gj-editor-bootstrap p {
        margin: 0;
        padding: 0;
    }

    .gj-editor-bootstrap blockquote {
        font-size: 14px;
    }

.gj-datepicker-md, .gj-dropdown-md [role=presenter] {
    font-family: Roboto,Helvetica,Arial,sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .04em;
}

.gj-dropdown {
    position: relative;
    border-collapse: separate;
}

    .gj-dropdown [role=presenter] {
        display: table;
        cursor: pointer;
        outline: 0;
        position: relative;
    }

        .gj-dropdown [role=presenter] [role=display] {
            display: table-cell;
            text-align: left;
            width: 100%;
        }

        .gj-dropdown [role=presenter] [role=expander] {
            display: table-cell;
            vertical-align: middle;
            text-align: center;
            width: 24px;
            height: 24px;
        }

.gj-dropdown-md [role=presenter] {
    line-height: 1;
    color: rgba(0,0,0,.87);
    padding: 0;
    border: 0;
    border-bottom: 1px solid rgba(0,0,0,.42);
    background: 0 0;
}

    .gj-dropdown-md [role=presenter]:active, .gj-dropdown-md [role=presenter]:focus {
        border-bottom: 2px solid rgba(0,0,0,.42);
    }

    .gj-dropdown-md [role=presenter] [role=display] {
        padding: 4px 0;
        line-height: 18px;
    }

        .gj-dropdown-md [role=presenter] [role=display] .placeholder {
            color: #8e8e8e;
        }

.gj-dropdown-list-md {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #f5f5f5;
    color: #000;
    margin: 0;
    z-index: 1203;
}

    .gj-dropdown-list-md li.active, .gj-dropdown-list-md li:hover {
        background-color: #eee;
    }

.gj-dropdown-bootstrap [role=presenter] [role=display] {
    padding-right: 5px;
}

.gj-dropdown-bootstrap [role=presenter] [role=expander] {
    padding-left: 5px;
}

    .gj-dropdown-bootstrap [role=presenter] [role=expander].gj-dropdown-expander-mi {
        width: 24px;
    }

.gj-dropdown-bootstrap-3 [role=presenter] [role=display] {
    line-height: 20px;
}

    .gj-dropdown-bootstrap-3 [role=presenter] [role=display] .placeholder {
        color: #9999b3;
    }

.gj-dropdown-bootstrap-3 [role=presenter] [role=expander] {
    width: 20px;
    height: 20px;
}

    .gj-dropdown-bootstrap-3 [role=presenter] [role=expander].gj-dropdown-expander-mi .gj-icon, .gj-dropdown-bootstrap-3 [role=presenter] [role=expander].gj-dropdown-expander-mi .material-icons {
        top: 5px;
        right: 10px;
        position: absolute;
    }

.gj-dropdown-bootstrap-4 [role=presenter] {
    border: 1px solid #ced4da;
}

    .gj-dropdown-bootstrap-4 [role=presenter] [role=display] {
        line-height: 24px;
    }

    .gj-dropdown-bootstrap-4 [role=presenter] [role=expander].gj-dropdown-expander-mi .gj-icon, .gj-dropdown-bootstrap-4 [role=presenter] [role=expander].gj-dropdown-expander-mi .material-icons {
        top: 7px;
        right: 10px;
        position: absolute;
    }

.gj-dropdown-list-bootstrap {
    position: absolute;
    top: 32px;
    left: 0;
    margin: 0;
    z-index: 1203;
}

.gj-datepicker [role=input]::-ms-clear {
    display: none;
}

.gj-datepicker [role=right-icon] {
    cursor: pointer;
}

.gj-picker div[role=navigator] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

    .gj-picker div[role=navigator] div {
        cursor: pointer;
        position: relative;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }

.gj-datepicker-md {
    line-height: 1;
    color: rgba(0,0,0,.87);
    position: relative;
}

    .gj-datepicker-md [role=right-icon] {
        position: absolute;
        right: 0;
        top: 0;
        font-size: 24px;
    }

    .gj-datepicker-md.small .gj-textbox-md {
        font-size: 14px;
    }

    .gj-datepicker-md.small .gj-icon {
        font-size: 22px;
    }

    .gj-datepicker-md.large .gj-textbox-md {
        font-size: 18px;
    }

    .gj-datepicker-md.large .gj-icon {
        font-size: 28px;
    }

.gj-picker-md.datepicker [role=header] {
    padding: 20px;
    display: block;
}

    .gj-picker-md.datepicker [role=header] [role=year] {
        font-size: 17px;
        padding-bottom: 5px;
        cursor: pointer;
    }

    .gj-picker-md.datepicker [role=header] [role=date] {
        font-size: 36px;
        cursor: pointer;
    }

.gj-picker-md div[role=navigator] {
    height: 42px;
    line-height: 42px;
}

.gj-picker div[role=navigator] div[role=period] {
    width: 100%;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
}

.gj-picker-md div[role=navigator] div:first-child, .gj-picker-md div[role=navigator] div:last-child {
    max-width: 42px;
}

.gj-picker-md div[role=navigator] div i.gj-icon, .gj-picker-md div[role=navigator] div i.material-icons {
    position: absolute;
    top: 8px;
}

.gj-picker-md div[role=navigator] div:first-child i.gj-icon, .gj-picker-md div[role=navigator] div:first-child i.material-icons {
    left: 10px;
}

.gj-picker-md div[role=navigator] div:last-child i.gj-icon, .gj-picker-md div[role=navigator] div:last-child i.material-icons {
    right: 11px;
}

.gj-picker-md table thead {
    color: #9E9E9E;
}

.gj-picker-md table tr td div, .gj-picker-md table tr th div {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 13px;
    text-align: center;
    vertical-align: middle;
}

[type=year].gj-picker-md table tr td div, [type=decade].gj-picker-md table tr td div, [type=century].gj-picker-md table tr td div {
    width: 73px;
    height: 73px;
    line-height: 73px;
    cursor: pointer;
}

.gj-picker-md table tr td.gj-cursor-pointer div:hover {
    background: #EEE;
    border-radius: 50%;
    color: rgba(0,0,0,.87);
}

.gj-picker-md table tr td.disabled div, .gj-picker-md table tr td.other-month div {
    color: #BDBDBD;
}

.gj-picker-md table tr td.focused div {
    background: #E0E0E0;
    border-radius: 50%;
}

.gj-picker-md table tr td.today div {
    color: #1976D2;
}

.gj-picker-md table tr td.selected.gj-cursor-pointer div {
    color: #FFF;
    background: #1976D2;
    border-radius: 50%;
}

.gj-picker-md table tr td.calendar-week div {
    font-weight: 700;
}

.gj-picker-bootstrap {
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 4px;
    padding: 4px;
}

.gj-modal .gj-picker-bootstrap {
    padding: 0;
}

.gj-picker-bootstrap.datepicker [role=header] {
    padding: 10px 20px;
    display: block;
}

    .gj-picker-bootstrap.datepicker [role=header] [role=year] {
        font-size: 15px;
        cursor: pointer;
    }

.gj-picker-bootstrap [role=header] [role=date] {
    font-size: 24px;
    cursor: pointer;
}

.gj-modal .gj-picker-bootstrap.datepicker [role=body] {
    padding: 15px;
}

.gj-picker-bootstrap div[role=navigator] {
    height: 30px;
    line-height: 30px;
    text-align: center;
}

    .gj-picker-bootstrap div[role=navigator] div:first-child, .gj-picker-bootstrap div[role=navigator] div:last-child {
        max-width: 30px;
    }

.gj-picker-bootstrap table tr td div, .gj-picker-bootstrap table tr th div {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    vertical-align: middle;
}

[type=year].gj-picker-bootstrap table tr td div, [type=decade].gj-picker-bootstrap table tr td div, [type=century].gj-picker-bootstrap table tr td div {
    width: 53px;
    height: 53px;
    line-height: 53px;
    cursor: pointer;
}

.gj-picker-bootstrap table tr th div i, .gj-picker-bootstrap table tr th div span {
    line-height: 30px;
}

.gj-picker-bootstrap div[role=navigator] .gj-icon, .gj-picker-bootstrap div[role=navigator] .material-icons {
    margin: 3px;
}

.gj-picker-bootstrap table tr td.focused div, .gj-picker-bootstrap table tr td.gj-cursor-pointer div:hover {
    background: #EEE;
    border-radius: 4px;
    color: #212529;
}

.gj-picker-bootstrap table tr td.today div {
    color: #204d74;
    font-weight: 700;
}

.gj-picker-bootstrap table tr td.selected.gj-cursor-pointer div {
    color: #fff;
    background-color: #204d74;
    border-color: #122b40;
    border-radius: 4px;
}

.gj-picker-bootstrap table tr td.disabled div, .gj-picker-bootstrap table tr td.other-month div {
    color: #777;
}

.gj-datepicker-bootstrap span[role=right-icon].input-group-addon {
    border-left: 0;
    position: relative;
    border-radius: 0 4px 4px 0;
}

    .gj-datepicker-bootstrap span[role=right-icon].input-group-addon .gj-icon, .gj-datepicker-bootstrap span[role=right-icon].input-group-addon .material-icons {
        position: absolute;
        top: 7px;
        left: 7px;
    }

.gj-datepicker-bootstrap [role=right-icon] button {
    width: 38px;
    position: relative;
    border: 1px solid #ced4da;
}

    .gj-datepicker-bootstrap [role=right-icon] button:hover {
        color: #6c757d;
        background-color: transparent;
    }

.gj-datepicker-bootstrap.input-group-sm [role=right-icon] button {
    width: 30px;
}

.gj-datepicker-bootstrap.input-group-lg [role=right-icon] button {
    width: 48px;
}

.gj-datepicker-bootstrap [role=right-icon] button .gj-icon, .gj-datepicker-bootstrap [role=right-icon] button .material-icons {
    position: absolute;
    font-size: 21px;
    top: 9px;
    left: 9px;
}

.gj-datepicker-bootstrap.input-group-sm [role=right-icon] button .gj-icon, .gj-datepicker-bootstrap.input-group-sm [role=right-icon] button .material-icons {
    top: 6px;
    left: 6px;
    font-size: 19px;
}

.gj-datepicker-bootstrap.input-group-lg [role=right-icon] button .gj-icon, .gj-datepicker-bootstrap.input-group-lg [role=right-icon] button .material-icons {
    font-size: 27px;
    top: 10px;
    left: 10px;
}

.gj-timepicker [role=input]::-ms-clear {
    display: none;
}

.gj-timepicker [role=right-icon] {
    cursor: pointer;
}

.gj-picker.timepicker [role=header] {
    font-size: 58px;
    padding: 20px 0;
    line-height: 58px;
    display: flex;
    align-items: baseline;
    user-select: none;
    justify-content: center;
}

    .gj-picker.timepicker [role=header] div {
        cursor: pointer;
        width: 66px;
        text-align: right;
    }

.gj-picker [role=header] [role=mode] {
    position: relative;
    width: 0;
}

    .gj-picker [role=header] [role=mode] span {
        position: absolute;
        left: 7px;
        line-height: 18px;
        font-size: 18px;
    }

        .gj-picker [role=header] [role=mode] span[role=am] {
            top: 7px;
        }

        .gj-picker [role=header] [role=mode] span[role=pm] {
            bottom: 7px;
        }

.gj-picker [role=body] [role=dial] {
    width: 256px;
    color: rgba(0,0,0,.87);
    height: 256px;
    position: relative;
    background: #eee;
    border-radius: 50%;
    margin: 10px;
}

.gj-picker-md .arrow-begin, .gj-picker-md [role=body] [role=arrow] {
    background-color: #2196f3;
}

.gj-picker [role=body] [role=hour] {
    top: calc(50% - 16px);
    left: calc(50% - 16px);
    width: 32px;
    height: 32px;
    cursor: pointer;
    position: absolute;
    font-size: 14px;
    text-align: center;
    line-height: 32px;
    user-select: none;
    pointer-events: none;
}

.gj-colorpicker-md, .gj-timepicker-md {
    font-family: Roboto,Helvetica,Arial,sans-serif;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1;
}

.gj-picker [role=body] [role=hour].selected {
    color: rgba(255,255,255,1);
}

.gj-picker [role=body] [role=arrow] {
    top: calc(50% - 1px);
    left: 50%;
    height: 2px;
    position: absolute;
    pointer-events: none;
    transform-origin: left center;
    transition: all 250ms cubic-bezier(.4,0,.2,1);
    width: calc(50% - 52px);
}

.gj-picker .arrow-begin {
    top: -3px;
    left: -4px;
    width: 8px;
    height: 8px;
    position: absolute;
    border-radius: 50%;
}

.gj-picker .arrow-end {
    top: -15px;
    right: -16px;
    width: 0;
    height: 0;
    position: absolute;
    box-sizing: content-box;
    border-width: 16px;
    border-radius: 50%;
}

.gj-timepicker-md {
    font-size: 16px;
    color: rgba(0,0,0,.87);
    position: relative;
}

    .gj-timepicker-md.small .gj-textbox-md {
        font-size: 14px;
    }

    .gj-timepicker-md.small .gj-icon {
        font-size: 22px;
    }

    .gj-timepicker-md.large .gj-textbox-md {
        font-size: 18px;
    }

    .gj-timepicker-md.large .gj-icon {
        font-size: 28px;
    }

    .gj-timepicker-md [role=right-icon] {
        cursor: pointer;
        position: absolute;
        right: 0;
        top: 0;
        font-size: 24px;
    }

.gj-picker-md .arrow-end {
    border: 16px solid #2196f3;
}

.gj-picker-bootstrap .arrow-begin, .gj-picker-bootstrap [role=body] [role=arrow] {
    background-color: #888;
}

.gj-picker-bootstrap .arrow-end {
    border: 16px solid #888;
}

.gj-timepicker-bootstrap .input-group-addon {
    border-left: 0;
    position: relative;
    width: 38px;
    border-radius: 0 4px 4px 0;
}

.gj-timepicker-bootstrap.input-group-sm .input-group-addon {
    width: 30px;
}

.gj-timepicker-bootstrap.input-group-lg .input-group-addon {
    width: 46px;
}

.gj-timepicker-bootstrap .input-group-addon .gj-icon, .gj-timepicker-bootstrap .input-group-addon .material-icons {
    position: absolute;
    font-size: 21px;
    top: 6px;
    left: 8px;
}

.gj-timepicker-bootstrap.input-group-sm .input-group-addon .gj-icon, .gj-timepicker-bootstrap.input-group-sm .input-group-addon .material-icons {
    font-size: 19px;
    top: 5px;
    left: 5px;
}

.gj-timepicker-bootstrap.input-group-lg .input-group-addon .gj-icon, .gj-timepicker-bootstrap.input-group-lg .input-group-addon .material-icons {
    font-size: 27px;
    top: 10px;
    left: 10px;
}

.gj-timepicker-bootstrap [role=right-icon] button {
    width: 38px;
    position: relative;
}

.gj-timepicker-bootstrap.input-group-sm [role=right-icon] button {
    width: 30px;
}

.gj-timepicker-bootstrap.input-group-lg [role=right-icon] button {
    width: 48px;
}

.gj-timepicker-bootstrap [role=right-icon] button .gj-icon, .gj-timepicker-bootstrap [role=right-icon] button .material-icons {
    position: absolute;
    font-size: 21px;
    top: 7px;
    left: 9px;
}

.gj-timepicker-bootstrap.input-group-sm [role=right-icon] button .gj-icon, .gj-timepicker-bootstrap.input-group-sm [role=right-icon] button .material-icons {
    top: 4px;
    left: 6px;
    font-size: 19px;
}

.gj-timepicker-bootstrap.input-group-lg [role=right-icon] button .gj-icon, .gj-timepicker-bootstrap.input-group-lg [role=right-icon] button .material-icons {
    font-size: 27px;
    top: 8px;
    left: 10px;
}

.gj-picker.datetimepicker [role=header] [role=date] {
    padding-bottom: 5px;
    text-align: center;
    cursor: pointer;
}

.gj-picker [role=switch] {
    align-items: baseline;
    user-select: none;
    position: relative;
}

    .gj-picker [role=switch] [role=calendarMode] {
        position: absolute;
        bottom: 2px;
        left: 0;
        cursor: pointer;
    }

    .gj-picker [role=switch] [role=time] {
        width: 100%;
        text-align: center;
    }

        .gj-picker [role=switch] [role=time] div {
            display: inline;
            cursor: pointer;
        }

    .gj-picker [role=switch] [role=clockMode] {
        position: absolute;
        right: 0;
        bottom: 3px;
        cursor: pointer;
    }

.gj-picker-md.datetimepicker [role=header] {
    font-size: 36px;
    padding: 10px 20px;
    display: block;
}

.gj-picker-md [role=switch] {
    color: rgba(255,255,255,.54);
    background: #2196f3;
    font-size: 32px;
}

.gj-picker-bootstrap.datetimepicker [role=header] {
    font-size: 36px;
    padding: 10px 20px;
    display: block;
}

    .gj-picker-bootstrap.datetimepicker [role=header] [role=time] {
        font-size: 22px;
    }

.gj-slider {
    position: relative;
    padding: 8px 6px;
}

    .gj-slider [role=track] {
        width: 100%;
    }

    .gj-slider [role=progress] {
        position: absolute;
        z-index: 1203;
    }

    .gj-slider [role=handle] {
        position: absolute;
    }

.gj-slider-md [role=track] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    background-color: #e9ecef;
    height: 2px;
    background-color: rgba(0,0,0,.26);
}

.gj-slider-md [role=progress] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    height: 2px;
    background-color: #536DFE;
    top: 8px;
    left: 6px;
}

.gj-slider-md [role=handle] {
    top: 3px;
    left: 0;
    width: 12px;
    height: 12px;
    background-color: #536DFE;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
    filter: none;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);
    border: 0 solid transparent;
    border-radius: 50%;
    cursor: pointer;
    z-index: 1204;
}

.gj-slider-bootstrap [role=track] {
    border-radius: 4px;
    height: 10px;
}

.gj-slider-bootstrap [role=progress] {
    height: 10px;
    border-radius: 4px;
    top: 8px;
    left: 6px;
    transition: none;
}

.gj-slider-bootstrap [role=handle] {
    top: 2px;
    left: 0;
    width: 20px;
    height: 20px;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
    filter: none;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);
    border: 0 solid transparent;
    border-radius: 50%;
    cursor: pointer;
    z-index: 1204;
}

.gj-slider-bootstrap-3 [role=handle] {
    background-color: #337ab7;
    background-image: -webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);
    background-image: -o-linear-gradient(top,#337ab7 0,#2e6da4 100%);
    background-image: linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);
    background-repeat: repeat-x;
}

.gj-slider-bootstrap-4 [role=handle] {
    background-color: #007bff;
    background-image: -webkit-linear-gradient(top,#007bff 0,#2e6da4 100%);
    background-image: -o-linear-gradient(top,#007bff 0,#2e6da4 100%);
    background-image: linear-gradient(to bottom,#007bff 0,#2e6da4 100%);
    background-repeat: repeat-x;
}

.gj-colorpicker [role=right-icon] {
    cursor: pointer;
}

.gj-colorpicker-md {
    font-size: 16px;
    color: rgba(0,0,0,.87);
    position: relative;
}

    .gj-colorpicker-md [role=right-icon] {
        position: absolute;
        right: 0;
        top: 0;
        font-size: 24px;
    }