.jsgrid {
  position: relative;
  overflow: hidden;
  font-size: 1em;
}
.jsgrid,
.jsgrid *,
.jsgrid:after,
.jsgrid:before {
  box-sizing: border-box
}
.jsgrid input,
.jsgrid select,
.jsgrid textarea {
  font-size: 1em
}
.jsgrid-row {
  background-color: #fff;
}

.jsgrid-grid-body {
  overflow-x: auto;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch
}
.jsgrid-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0
}
.jsgrid-cell {
  padding: .5em
}
.jsgrid-header-cell,
.jsgrid-сell {
  box-sizing: border-box
}
.jsgrid-align-left {
  text-align: left
}
.jsgrid-align-center,
.jsgrid-align-center input,
.jsgrid-align-center select,
.jsgrid-align-center textarea {
  text-align: center
}
.jsgrid-align-right,
.jsgrid-align-right input,
.jsgrid-align-right select,
.jsgrid-align-right textarea {
  text-align: right
}
.jsgrid-header-cell {
  padding: .5em
}
.jsgrid-edit-row input,
.jsgrid-edit-row select,
.jsgrid-edit-row textarea,
.jsgrid-filter-row input,
.jsgrid-filter-row select,
.jsgrid-filter-row textarea,
.jsgrid-insert-row input,
.jsgrid-insert-row select,
.jsgrid-insert-row textarea {
  width: 100%;
  padding: .3em .5em
}
.jsgrid-edit-row input[type=checkbox],
.jsgrid-filter-row input[type=checkbox],
.jsgrid-insert-row input[type=checkbox] {
  width: auto
}
.jsgrid-selected-row .jsgrid-cell {
  cursor: pointer
}
.jsgrid-nodata-row .jsgrid-cell {
  padding: .5em 0;
  text-align: center
}
.jsgrid-header-sort {
  cursor: pointer
}
.jsgrid-pager {
  padding: .5em 0
}
.jsgrid-pager-nav-button {
  padding: .2em .6em
}
.jsgrid-pager-nav-inactive-button {
  display: none;
  pointer-events: none
}
.jsgrid-pager-page {
  padding: .2em .6em
}