/*! Tablesaw - v3.0.0-beta.4 - 2016-10-12
* https://github.com/filamentgroup/tablesaw
* Copyright (c) 2016 Filament Group; Licensed MIT */

.tablesaw {
  width: 100%;
  max-width: 100%;
  empty-cells: show;
  border-collapse: collapse;
  border: 0;
  padding: 0;
}



/* Mobile first styles: Begin with the stacked presentation at narrow widths */

@media only all {
  /* Show the table cells as a block level element */

  .tablesaw-stack td,
  .tablesaw-stack th {
    text-align: left;
    display: block;
  }

  .tablesaw-stack tr {
    clear: both;
    display: table-row;
  }

  /* Make the label elements a percentage width */

  .tablesaw-stack td .tablesaw-cell-label,
  .tablesaw-stack th .tablesaw-cell-label {
    display: block;
    padding: 0 .6em 0 0;
    width: 30%;
    display: inline-block;
  }

  /* For grouped headers, have a different style to visually separate the levels by classing the first label in each col group */

  .tablesaw-stack th .tablesaw-cell-label-top,
  .tablesaw-stack td .tablesaw-cell-label-top {
    display: block;
    padding: .4em 0;
    margin: .4em 0;
  }

  .tablesaw-cell-label {
    display: block;
  }

  /* Avoid double strokes when stacked */

  .tablesaw-stack tbody th.group {
    margin-top: -1px;
  }

  /* Avoid double strokes when stacked */

  .tablesaw-stack th.group b.tablesaw-cell-label {
    display: none !important;
  }
}


.tablesaw-fix-persist {
  table-layout: fixed;
}





/* Hide all prioritized columns by default */

@media only all {
  .tablesaw-columntoggle th.tablesaw-priority-6,
  .tablesaw-columntoggle td.tablesaw-priority-6,
  .tablesaw-columntoggle th.tablesaw-priority-5,
  .tablesaw-columntoggle td.tablesaw-priority-5,
  .tablesaw-columntoggle th.tablesaw-priority-4,
  .tablesaw-columntoggle td.tablesaw-priority-4,
  .tablesaw-columntoggle th.tablesaw-priority-3,
  .tablesaw-columntoggle td.tablesaw-priority-3,
  .tablesaw-columntoggle th.tablesaw-priority-2,
  .tablesaw-columntoggle td.tablesaw-priority-2,
  .tablesaw-columntoggle th.tablesaw-priority-1,
  .tablesaw-columntoggle td.tablesaw-priority-1 {
    display: none;
  }
}

.tablesaw-columntoggle-btnwrap .dialog-content {
  top: 0 !important;
  right: 1em;
  left: auto !important;
  width: 12em;
  max-width: 18em;
  margin: -.5em auto 0;
}

.tablesaw-columntoggle-btnwrap .dialog-content:focus {
  outline-style: none;
}

/* Preset breakpoints if "" class added to table */

/* Show priority 1 at 320px (20em x 16px) */

@media (min-width: 15em) {
  .tablesaw-columntoggle th.tablesaw-priority-1,
  .tablesaw-columntoggle td.tablesaw-priority-1 {
    display: table-cell;
  }
}

/* Show priority 2 at 480px (30em x 16px) */

@media (min-width: 20em) {
  .tablesaw-columntoggle th.tablesaw-priority-2,
  .tablesaw-columntoggle td.tablesaw-priority-2 {
    display: table-cell;
  }
}

/* Show priority 3 at 640px (40em x 16px) */

@media (min-width: 25em) {
  .tablesaw-columntoggle th.tablesaw-priority-3,
  .tablesaw-columntoggle td.tablesaw-priority-3 {
    display: table-cell;
  }

  .tablesaw-columntoggle tbody td {
    line-height: 2;
  }
}

/* Show priority 4 at 800px (50em x 16px) */

@media (min-width: 30em) {
  .tablesaw-columntoggle th.tablesaw-priority-4,
  .tablesaw-columntoggle td.tablesaw-priority-4 {
    display: table-cell;
  }
}

/* Show priority 5 at 960px (60em x 16px) */

@media (min-width: 35em) {
  .tablesaw-columntoggle th.tablesaw-priority-5,
  .tablesaw-columntoggle td.tablesaw-priority-5 {
    display: table-cell;
  }
}

/* Show priority 6 at 1,120px (70em x 16px) */

@media (min-width: 40em) {
  .tablesaw-columntoggle th.tablesaw-priority-6,
  .tablesaw-columntoggle td.tablesaw-priority-6 {
    display: table-cell;
  }
}

@media only all {
  /* Unchecked manually: Always hide */

  .tablesaw-columntoggle th.tablesaw-cell-hidden,
  .tablesaw-columntoggle td.tablesaw-cell-hidden {
    display: none;
  }

  /* Checked manually: Always show */

  .tablesaw-columntoggle th.tablesaw-cell-visible,
  .tablesaw-columntoggle td.tablesaw-cell-visible {
    display: table-cell;
  }
}

.tablesaw-columntoggle-popup .btn-group > label {
  display: block;
  padding: .2em 0;
  white-space: nowrap;
}

.tablesaw-columntoggle-popup .btn-group > label input {
  margin-right: .8em;
}

.tablesaw-sortable,
.tablesaw-sortable thead,
.tablesaw-sortable thead tr,
.tablesaw-sortable thead tr th {
  position: relative;
}

.tablesaw-sortable thead tr th {
  vertical-align: top;
}

.tablesaw-sortable th.tablesaw-sortable-head.tablesaw-sortable-head {
  padding: 0;
}

.tablesaw-sortable th.tablesaw-sortable-head button {
  padding-top: .9em;
  padding-bottom: .7em;
  padding-left: .6em;
  padding-right: .6em;
}

.tablesaw-sortable .tablesaw-sortable-head button {
  min-width: 100%;
  color: inherit;
  background: transparent;
  border: 0;
  padding: 0;
  text-align: left;
  font: inherit;
  text-transform: inherit;
}

.tablesaw-sortable-arrow:after {
  display: inline-block;
  width: 10px;
  height: 14px;
  content: " ";
  margin-left: .3125em;
}

.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-ascending .tablesaw-sortable-arrow:after,
.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-descending .tablesaw-sortable-arrow:after {
  content: "\0020";
}

.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-ascending .tablesaw-sortable-arrow:after {
  content: "\2191";
}

.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-descending .tablesaw-sortable-arrow:after {
  content: "\2193";
}

.tablesaw-sortable .not-applicable:after {
  content: "--";
  display: block;
}

.tablesaw-sortable .not-applicable span {
  display: none;
}


.tablesaw-bar {
    position: relative;
    height: 40px;
    background: #f2f2f2;
}

.tablesaw-advance {
    float: right;
}

.btn.tablesaw-columntoggle-btn span {
  text-indent: -9999px;
  display: inline-block;
}
.tablesaw-columntoggle-btnwrap {
  position: relative;
  padding: 10px;
width: 40px;
height: 40px;
  /* for dialog positioning */
}

.tablesaw-columntoggle-btnwrap .dialog-content {
  padding: .5em;
}

.tablesaw-columntoggle tbody td {
  line-height: 1.5;
}

/* Remove top/bottom margins around the fieldcontain on check list */

.tablesaw-columntoggle-popup {
  display: none;
}

.tablesaw-columntoggle-btnwrap.visible .tablesaw-columntoggle-popup {
  display: block;
  position: absolute;
  top: 2em;
  right: 10px;
  background-color: #fff;
  padding: .5em .8em;
  border: 1px solid #ccc;
  z-index: 1;
}

.tablesaw-columntoggle-popup fieldset {
  margin: 0;
}


.tablesaw-columntoggle-btnwrap > .btn{
    width: 100%;
    height: 100%;
    background: #2279bc;
    display: block;
    position: relative;
}
.tablesaw-columntoggle-btnwrap > .btn:after{
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    left: calc(50% - 4px);
    top: calc(50% - 4px);
    border-style: solid;
}
.tablesaw-columntoggle-btnwrap > .btn.down:after{
    border-width: 8px 4px 0 4px;
    border-color: #ffffff transparent transparent transparent;
}
.tablesaw-columntoggle-btnwrap > .btn.up:after{
    border-width: 0 4px 8px 4px;
    border-color: transparent transparent #ffffff transparent;
}

.tablesaw-advance-dots {
    margin: 0;
    padding: 0;
    list-style: none;
}

.tablesaw-advance-dots li {
    display: table-cell;
    margin: 0;
    height: 40px;
    padding: 0 0.2em;
    vertical-align: middle;
}

.tablesaw-advance-dots li i {
    width: 4px;
    height: 4px;
    background: #555;
    border-radius: 100%;
    display: inline-block;
    vertical-align: middle;
}

.tablesaw-advance-dots-hide {
  opacity: .25;
  cursor: default;
  pointer-events: none;
}