.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;
  -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;
  -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;
  -ms-flex-direction: row;
  flex-direction: row;
  -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;
}

.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;
  -moz-font-feature-settings: "liga=1";
  -moz-font-feature-settings: "liga";
  -ms-font-feature-settings: "liga" 1;
  font-feature-settings: "liga";
  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;
  -ms-flex-direction: column;
  flex-direction: column;
  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;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -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;
  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;
  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;
}

