.pvtUi {
  color: #333;
}

table.pvtTable {
  font-size: 8pt;
  text-align: left;
  border-collapse: collapse;
}

table.pvtTable tr th,
table.pvtTable tr th {
  background-color: #e6eeee;
  border: 1px solid #cdcdcd;
  font-size: 8pt;
  padding: 5px;
}

table.pvtTable .pvtColLabel {
  text-align: center;
}

table.pvtTable .pvtTotalLabel {
  text-align: right;
}

table.pvtTable tr td {
  color: #3d3d3d;
  padding: 5px;
  background-color: #fff;
  border: 1px solid #cdcdcd;
  vertical-align: top;
  text-align: right;
}

.pvtTotal,
.pvtGrandTotal {
  font-weight: bold;
}

.pvtVals {
  text-align: center;
  white-space: normal !important;
}

.pvtAggregator {
  margin-bottom: 5px;
}

.pvtAxisContainer,
.pvtVals {
  border: 1px solid gray;
  background: #f9f9f9;
  padding: 5px;
  min-width: 20px;
  min-height: 20px;
}

.pvtAxisContainer li {
  padding: 8px 6px;
  list-style-type: none;
  cursor: move;
}

.pvtAxisContainer li.pvtPlaceholder {
  -webkit-border-radius: 5px;
  padding: 3px 15px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: 1px dashed #aaa;
}

.pvtAxisContainer li span.pvtAttr {
  -webkit-text-size-adjust: 100%;
  background: #f3f3f3;
  border: 1px solid #dedede;
  padding: 2px 5px;
  white-space: nowrap;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.pvtTriangle {
  cursor: pointer;
  color: grey;
}

.pvtHorizList li {
  display: inline;
}

.pvtVertList {
  vertical-align: top;
}

.pvtFilteredAttribute {
  font-style: italic;
}

.pvtFilterBox {
  z-index: 101;
  width: 280px;
  border: 1px solid gray;
  background-color: #fff;
  position: absolute;
  padding: 20px;
  text-align: center;
}

.pvtFilterBox h4 {
  margin: 0;
}

.pvtFilterBox p {
  margin: 1em auto;
}

.pvtFilterBox label {
  font-weight: normal;
}

.pvtFilterBox input[type='checkbox'] {
  margin-right: 5px;
}

.pvtCheckContainer {
  text-align: left;
  overflow: scroll;
  width: 100%;
  max-height: 200px;
}

.pvtCheckContainer p {
  margin: 5px;
}

.pvtRendererArea {
  padding: 5px;
}

td.pvtAxisContainer.pvtHorizList.pvtCols.ui-sortable,
td.pvtAxisContainer.pvtRows.ui-sortable {
  border: 1px dashed rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  background: #fff;
  background-image: linear-gradient(
    135deg,
    rgba(0, 0, 0, 0.03) 25%,
    transparent 25%,
    transparent 50%,
    rgba(0, 0, 0, 0.03) 50%,
    rgba(0, 0, 0, 0.03) 75%,
    transparent 75%,
    transparent
  );
  background-color: #fafcfd;
  background-size: 16px 16px;
}

.pvtHorizList {
  width: auto;
}

.pvtUi tr:first-of-type td:first-of-type {
  width: 15em;
  background-color: #f9f9f9;
  border: 1px solid gray;
}

.pvtAggregator {
  width: 150px;
}

.pvtAttrDropdown {
  width: 150px;
}

.pvtUi .pvtVals {
  position: relative;
  text-align: left;
  width: 200px;
}

.pvtUi .pvtSorters {
  position: absolute;
  right: 5px;
  top: 50%;
  text-align: center;
  transform: translateY(-50%);
}

.pvtUi .pvtRowOrder,
.pvtUi .pvtColOrder {
  margin: 0 5px;
}

.pvtUi .pvtAggregator {
  margin-bottom: 10px;
}
