.vui-table-filters-content {
  box-sizing: border-box;
  min-width: 100px;
  background: var(--color-bg-5);
  border: 1px solid var(--color-neutral-3);
  border-radius: var(--border-radius-medium);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.vui-table-filters-list {
  max-height: 200px;
  padding: 4px 0;
  overflow-y: auto;
}
.vui-table-filters-item {
  height: 32px;
  padding: 0 12px;
  font-size: 14px;
  line-height: 32px;
}
.vui-table-filters-text {
  width: 100%;
  max-width: 160px;
  height: 34px;
  margin-right: 0;
  padding-left: 10px;
  overflow: hidden;
  line-height: 32px;
  white-space: nowrap;
  text-overflow: ellipsis;
  cursor: pointer;
}
.vui-table-filters-bottom {
  box-sizing: border-box;
  height: 38px;
  padding: 0 12px;
  overflow: hidden;
  line-height: 38px;
  border-top: 1px solid var(--color-neutral-3);
}
.vui-table-filters-bottom > *:not(*:last-child) {
  margin-right: 8px;
}
.vui-table {
  position: relative;
  /* ---- Table sorter, filter, checkbox, radio (End) ---- */
}
.vui-table-column-handle {
  position: absolute;
  top: 0;
  right: -4px;
  z-index: 1;
  width: 8px;
  height: 100%;
  cursor: col-resize;
}
.vui-table .vui-spin {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.vui-table > .vui-spin > .vui-spin-children::after {
  z-index: 2;
}
.vui-table-footer {
  border-radius: 0 0 var(--border-radius-medium) var(--border-radius-medium);
}
.vui-table-scroll-position-right .vui-table-col-fixed-left-last::after,
.vui-table-scroll-position-middle .vui-table-col-fixed-left-last::after {
  box-shadow: inset 6px 0 8px -3px rgba(0, 0, 0, 0.15);
}
.vui-table-scroll-position-left .vui-table-col-fixed-right-first::after,
.vui-table-scroll-position-middle .vui-table-col-fixed-right-first::after {
  box-shadow: inset -6px 0 8px -3px rgba(0, 0, 0, 0.15);
}
.vui-table-layout-fixed .vui-table-element {
  table-layout: fixed;
}
.vui-table .vui-table-element {
  width: 100%;
  min-width: 100%;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}
.vui-table-th {
  position: relative;
  box-sizing: border-box;
  color: rgb(var(--gray-10));
  font-weight: 500;
  line-height: 1.5715;
  text-align: left;
  background-color: var(--color-neutral-2);
}
.vui-table-th[colspan] {
  text-align: center;
}
.vui-table-th-align-right {
  text-align: right;
}
.vui-table-th-align-right .vui-table-cell-with-sorter {
  justify-content: flex-end;
}
.vui-table-th-align-center {
  text-align: center;
}
.vui-table-th-align-center .vui-table-cell-with-sorter {
  justify-content: center;
}
.vui-table-td {
  box-sizing: border-box;
  color: rgb(var(--gray-10));
  line-height: 1.5715;
  text-align: left;
  word-break: break-all;
  background-color: var(--color-bg-2);
  border-bottom: 1px solid var(--color-neutral-3);
}
.vui-table-td-align-right {
  text-align: right;
}
.vui-table-td-align-center {
  text-align: center;
}
.vui-table-td.vui-table-drag-handle {
  cursor: move;
}
.vui-table-cell {
  display: flex;
  align-items: center;
}
.vui-table-cell-align-right {
  justify-content: flex-end;
  text-align: right;
}
.vui-table-cell-align-center {
  justify-content: center;
  text-align: center;
}
.vui-table-text-ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.vui-table-td-content {
  display: block;
  width: 100%;
}
.vui-table-th.vui-table-col-sorted {
  background-color: var(--color-neutral-3);
}
.vui-table-td.vui-table-col-sorted {
  background-color: var(--color-fill-1);
}
.vui-table-col-fixed-left,
.vui-table-col-fixed-right {
  position: sticky;
  z-index: 1;
}
.vui-table-col-fixed-left-last::after,
.vui-table-col-fixed-right-first::after {
  position: absolute;
  top: 0;
  bottom: -1px;
  left: 0;
  width: 10px;
  box-shadow: none;
  transform: translateX(-100%);
  transition: box-shadow 0.1s cubic-bezier(0, 0, 1, 1);
  content: '';
  pointer-events: none;
}
.vui-table-col-fixed-left-last::after {
  right: 0;
  left: unset;
  transform: translateX(100%);
}
.vui-table-cell-text-ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.vui-table-editable-row .vui-table-cell-wrap-value {
  border: 1px solid var(--color-white);
  border-radius: var(--border-radius-medium);
  cursor: pointer;
  transition: all 0.1s cubic-bezier(0, 0, 1, 1);
}
.vui-table-editable-row:hover .vui-table-cell-wrap-value {
  border: 1px solid var(--color-neutral-3);
}
.vui-table .vui-table-expand-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  padding: 0;
  color: var(--color-text-2);
  font-size: 12px;
  line-height: 14px;
  background-color: var(--color-neutral-3);
  border: 1px solid transparent;
  border-radius: 2px;
  outline: none;
  cursor: pointer;
  transition: background-color 0.1s cubic-bezier(0, 0, 1, 1);
}
.vui-table .vui-table-expand-btn:hover {
  color: var(--color-text-1);
  background-color: var(--color-neutral-4);
  border-color: transparent;
}
.vui-table-cell-expand-icon {
  display: flex;
  align-items: center;
}
.vui-table-cell-expand-icon .vui-table-cell-inline-icon {
  display: inline-flex;
  margin-right: 4px;
}
.vui-table-cell-expand-icon .vui-table-cell-inline-icon .vui-icon-loading {
  color: rgb(var(--primary-6));
}
.vui-table-cell-expand-icon-hidden {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 4px;
}
.vui-table-tr-expand .vui-table-td {
  background-color: var(--color-fill-1);
}
.vui-table-cell-fixed-expand {
  position: sticky;
  left: 0;
  box-sizing: border-box;
}
.vui-table-tr-expand .vui-table-td .vui-table .vui-table-container {
  border: none;
}
.vui-table-tr-expand .vui-table-td .vui-table .vui-table-th {
  border-bottom: 1px solid var(--color-neutral-3);
}
.vui-table-tr-expand .vui-table-td .vui-table .vui-table-th,
.vui-table-tr-expand .vui-table-td .vui-table .vui-table-td {
  background-color: transparent;
}
.vui-table-tr-expand .vui-table-td .vui-table .vui-table-pagination {
  margin-bottom: 12px;
}
.vui-table-th.vui-table-operation,
.vui-table-td.vui-table-operation {
  text-align: center;
}
.vui-table-th.vui-table-operation .vui-table-cell,
.vui-table-td.vui-table-operation .vui-table-cell {
  display: flex;
  justify-content: center;
  padding: 0;
}
.vui-table-radio,
.vui-table-checkbox {
  justify-content: center;
}
.vui-table-checkbox .vui-checkbox,
.vui-table-radio .vui-radio {
  padding-left: 0;
}
.vui-table-selection-checkbox-col,
.vui-table-selection-radio-col {
  width: 40px;
  min-width: 40px;
  max-width: 40px;
}
.vui-table-expand-col {
  width: 40px;
  min-width: 40px;
  max-width: 40px;
}
.vui-table-drag-handle-col {
  width: 40px;
  min-width: 40px;
  max-width: 40px;
}
.vui-table-th {
  transition: background-color 0.1s cubic-bezier(0, 0, 1, 1);
}
.vui-table-cell-with-sorter {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.vui-table-cell-with-sorter:hover {
  background-color: rgba(var(--gray-4), 0.5);
}
.vui-table-cell-with-filter {
  display: flex;
  align-items: center;
}
.vui-table-cell-next-ascend .vui-table-sorter-icon .vui-icon-caret-up {
  color: var(--color-neutral-6);
}
.vui-table-cell-next-descend .vui-table-sorter-icon .vui-icon-caret-down {
  color: var(--color-neutral-6);
}
.vui-table-sorter {
  display: inline-block;
  margin-left: 8px;
  vertical-align: -3px;
}
.vui-table-sorter.vui-table-sorter-direction-one {
  vertical-align: 0;
}
.vui-table-sorter-icon {
  position: relative;
  width: 14px;
  height: 8px;
  overflow: hidden;
  line-height: 8px;
  font-size: 10px;
}
.vui-table-sorter-icon .vui-icon-caret-up,
.vui-table-sorter-icon .vui-icon-caret-down {
  position: absolute;
  top: 50%;
  color: var(--color-neutral-5);
  font-size: 12px;
  transition: all 0.1s cubic-bezier(0, 0, 1, 1);
}
.vui-table-sorter-icon .vui-icon-caret-up {
  top: -2px;
  left: 1px;
}
.vui-table-sorter-icon .vui-icon-caret-down {
  top: -3px;
  left: 1px;
}
.vui-table-sorter-icon.vui-table-sorter-icon-active svg {
  color: rgb(var(--primary-6));
}
.vui-table-filters {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 100%;
  line-height: 1;
  vertical-align: 0;
  background-color: transparent;
  cursor: pointer;
  transition: all 0.1s cubic-bezier(0, 0, 1, 1);
}
.vui-table-filters:hover,
.vui-table-filters-open {
  background-color: var(--color-neutral-4);
}
.vui-table-filters svg {
  color: var(--color-text-2);
  font-size: 16px;
  transition: all 0.1s cubic-bezier(0, 0, 1, 1);
}
.vui-table-filters-active svg {
  color: rgb(var(--primary-6));
}
.vui-table-filters-align-left {
  position: relative;
  width: auto;
  margin-left: 8px;
}
.vui-table-filters-align-left svg {
  font-size: 12px;
}
.vui-table-filters-align-left:hover,
.vui-table-filters-align-left-open {
  background: none;
}
.vui-table-filters-align-left:hover::before,
.vui-table-filters-align-left.vui-table-filters-open::before {
  background: var(--color-fill-4);
}
.vui-table-container {
  position: relative;
  border-radius: var(--border-radius-medium) var(--border-radius-medium) 0 0;
}
.vui-table-header {
  flex-shrink: 0;
  border-radius: var(--border-radius-medium) var(--border-radius-medium) 0 0;
}
.vui-table-container {
  box-sizing: border-box;
  width: 100%;
  min-height: 0;
}
.vui-table-container .vui-table-content {
  display: flex;
  flex-direction: column;
  width: auto;
  height: 100%;
}
.vui-table-container .vui-table-content-scroll-x {
  overflow-x: auto;
  overflow-y: hidden;
}
.vui-table-container::before,
.vui-table-container::after {
  position: absolute;
  z-index: 1;
  width: 10px;
  height: 100%;
  box-shadow: none;
  transition: box-shadow 0.1s cubic-bezier(0, 0, 1, 1);
  content: '';
  pointer-events: none;
}
.vui-table-container::before {
  top: 0;
  left: 0;
  border-top-left-radius: var(--border-radius-medium);
}
.vui-table-container::after {
  top: 0;
  right: 0;
  border-top-right-radius: var(--border-radius-medium);
}
.vui-table-container:not(.vui-table-has-fixed-col-left).vui-table-scroll-position-right::before,
.vui-table-container:not(.vui-table-has-fixed-col-left).vui-table-scroll-position-middle::before {
  box-shadow: inset 6px 0 8px -3px rgba(0, 0, 0, 0.15);
}
.vui-table-container:not(.vui-table-has-fixed-col-right).vui-table-scroll-position-left::after,
.vui-table-container:not(.vui-table-has-fixed-col-right).vui-table-scroll-position-middle::after {
  box-shadow: inset -6px 0 8px -3px rgba(0, 0, 0, 0.15);
}
.vui-table-header {
  overflow-x: hidden;
  background-color: var(--color-neutral-2);
  scrollbar-color: transparent transparent;
}
.vui-table-header-sticky {
  position: sticky;
  top: 0;
  z-index: 100;
}
.vui-table:not(.vui-table-empty) .vui-table-header::-webkit-scrollbar {
  height: 0;
  background-color: transparent;
}
.vui-table.vui-table-empty .vui-table-header {
  overflow-x: auto;
}
.vui-table-body {
  position: relative;
  min-height: 40px;
  overflow: auto;
  background-color: var(--color-bg-2);
}
.vui-table-border .vui-table-container {
  border-top: 1px solid var(--color-neutral-3);
  border-left: 1px solid var(--color-neutral-3);
}
.vui-table-border .vui-table-scroll-y {
  border-bottom: 1px solid var(--color-neutral-3);
}
.vui-table-border .vui-table-scroll-y .vui-table-body .vui-table-tr:last-of-type .vui-table-td,
.vui-table-border .vui-table-scroll-y tfoot .vui-table-tr:last-of-type .vui-table-td {
  border-bottom: none;
}
.vui-table-border .vui-table-scroll-y .vui-table-body .vui-table-tr:last-of-type .vui-table-td.vui-table-col-fixed-left-last::after,
.vui-table-border .vui-table-scroll-y tfoot .vui-table-tr:last-of-type .vui-table-td.vui-table-col-fixed-left-last::after,
.vui-table-border .vui-table-scroll-y .vui-table-body .vui-table-tr:last-of-type .vui-table-td.vui-table-col-fixed-right-first::after,
.vui-table-border .vui-table-scroll-y tfoot .vui-table-tr:last-of-type .vui-table-td.vui-table-col-fixed-right-first::after {
  bottom: 0;
}
.vui-table-border .vui-table-tr .vui-table-th {
  border-bottom: 1px solid var(--color-neutral-3);
}
.vui-table-border .vui-table-footer {
  border: 1px solid var(--color-neutral-3);
  border-top: 0;
}
.vui-table-border:not(.vui-table-border-cell) .vui-table-container {
  border-right: 1px solid var(--color-neutral-3);
}
.vui-table-border-cell .vui-table-th,
.vui-table-border-cell .vui-table-td:not(.vui-table-tr-expand) {
  border-right: 1px solid var(--color-neutral-3);
}
.vui-table-border-cell .vui-table-th-resizing,
.vui-table-border-cell .vui-table-td-resizing:not(.vui-table-tr-expand) {
  border-right-color: rgb(var(--primary-6));
}
.vui-table-border-header-cell .vui-table-th {
  border-right: 1px solid var(--color-neutral-3);
  border-bottom: 1px solid var(--color-neutral-3);
}
.vui-table-border.vui-table-border-header-cell thead .vui-table-tr:first-child .vui-table-th:last-child {
  border-right: 0;
}
.vui-table-border-body-cell .vui-table-td:not(:last-child):not(.vui-table-tr-expand) {
  border-right: 1px solid var(--color-neutral-3);
}
.vui-table-stripe .vui-table-tr:nth-child(even) .vui-table-td {
  background-color: var(--color-fill-1);
}
.vui-table .vui-table-tr-draggable {
  cursor: move;
}
.vui-table-hover:not(.vui-table-dragging)
  .vui-table-tr:not(.vui-table-tr-empty):not(.vui-table-tr-summary):hover
  .vui-table-td:not(.vui-table-col-fixed-left):not(.vui-table-col-fixed-right),
.vui-table-hover .vui-table-tr-drag .vui-table-td:not(.vui-table-col-fixed-left):not(.vui-table-col-fixed-right) {
  background-color: var(--color-fill-1);
}
.vui-table-hover:not(.vui-table-dragging)
  .vui-table-tr:not(.vui-table-tr-empty):not(.vui-table-tr-summary):hover
  .vui-table-td.vui-table-col-fixed-left::before,
.vui-table-hover .vui-table-tr-drag .vui-table-td.vui-table-col-fixed-left::before,
.vui-table-hover:not(.vui-table-dragging)
  .vui-table-tr:not(.vui-table-tr-empty):not(.vui-table-tr-summary):hover
  .vui-table-td.vui-table-col-fixed-right::before,
.vui-table-hover .vui-table-tr-drag .vui-table-td.vui-table-col-fixed-right::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: var(--color-fill-1);
  content: '';
}
.vui-table-hover
  .vui-table-tr-expand:not(.vui-table-tr-empty):hover
  .vui-table-td:not(.vui-table-col-fixed-left):not(.vui-table-col-fixed-right) {
  background-color: var(--color-fill-1);
}
.vui-table-tr-expand
  .vui-table-td
  .vui-table-hover
  .vui-table-tr:not(.vui-table-tr-empty)
  .vui-table-td:not(.vui-table-col-fixed-left):not(.vui-table-col-fixed-right) {
  background-color: transparent;
}
.vui-table-tr-expand .vui-table-td .vui-table-hover .vui-table-tr:not(.vui-table-tr-empty) .vui-table-td.vui-table-col-fixed-left::before,
.vui-table-tr-expand .vui-table-td .vui-table-hover .vui-table-tr:not(.vui-table-tr-empty) .vui-table-td.vui-table-col-fixed-right::before {
  background-color: transparent;
}
.vui-table-tfoot {
  position: relative;
  z-index: 1;
  width: 100%;
  overflow-x: auto;
  background-color: var(--color-neutral-2);
  box-shadow: 0 -1px 0 var(--color-neutral-3);
  scrollbar-color: transparent transparent;
}
.vui-table-tfoot::-webkit-scrollbar {
  height: 0;
  background-color: transparent;
}
.vui-table tfoot .vui-table-td {
  background-color: var(--color-neutral-2);
}
.vui-table-tr-checked .vui-table-td {
  background-color: var(--color-fill-1);
}
.vui-table .vui-table-cell {
  padding: 9px 16px;
}
.vui-table .vui-table-th {
  font-size: 14px;
}
.vui-table .vui-table-td {
  font-size: 14px;
}
.vui-table .vui-table-footer {
  padding: 9px 16px;
}
.vui-table .vui-table-tr-expand .vui-table-td .vui-table {
  margin: -9px -16px calc(-9px - 1px) -16px;
}
.vui-table .vui-table-editable-row .vui-table-cell-wrap-value {
  padding: 9px 16px;
}
.vui-table-size-medium .vui-table-cell {
  padding: 7px 16px;
}
.vui-table-size-medium .vui-table-th {
  font-size: 14px;
}
.vui-table-size-medium .vui-table-td {
  font-size: 14px;
}
.vui-table-size-medium .vui-table-footer {
  padding: 7px 16px;
}
.vui-table-size-medium .vui-table-tr-expand .vui-table-td .vui-table {
  margin: -7px -16px calc(-7px - 1px) -16px;
}
.vui-table-size-medium .vui-table-editable-row .vui-table-cell-wrap-value {
  padding: 7px 16px;
}
.vui-table-size-small .vui-table-cell {
  padding: 5px 16px;
}
.vui-table-size-small .vui-table-th {
  font-size: 14px;
}
.vui-table-size-small .vui-table-td {
  font-size: 14px;
}
.vui-table-size-small .vui-table-footer {
  padding: 5px 16px;
}
.vui-table-size-small .vui-table-tr-expand .vui-table-td .vui-table {
  margin: -5px -16px calc(-5px - 1px) -16px;
}
.vui-table-size-small .vui-table-editable-row .vui-table-cell-wrap-value {
  padding: 5px 16px;
}
.vui-table-size-mini .vui-table-cell {
  padding: 2px 16px;
}
.vui-table-size-mini .vui-table-th {
  font-size: 12px;
}
.vui-table-size-mini .vui-table-td {
  font-size: 12px;
}
.vui-table-size-mini .vui-table-footer {
  padding: 2px 16px;
}
.vui-table-size-mini .vui-table-tr-expand .vui-table-td .vui-table {
  margin: -2px -16px calc(-2px - 1px) -16px;
}
.vui-table-size-mini .vui-table-editable-row .vui-table-cell-wrap-value {
  padding: 2px 16px;
}
.vui-table-virtualized .vui-table-element {
  table-layout: fixed;
}
.vui-table-virtualized div.vui-table-body div.vui-table-tr {
  display: flex;
}
.vui-table-virtualized div.vui-table-body div.vui-table-td {
  display: flex;
  flex: 1;
  align-items: center;
}
.vui-table-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 12px;
}
.vui-table-pagination-left {
  justify-content: flex-start;
}
.vui-table-pagination-center {
  justify-content: center;
}
.vui-table-pagination-top {
  margin-top: 0;
  margin-bottom: 12px;
}
.vui-virtual-list > .vui-table-element {
  width: auto;
}
