:host {
  --border-head-cell-default: var(--pine-border-width-thin) solid var(--pine-color-grey-300);
  --box-shadow-default: 3px 3px 6px -2px rgba(0, 0, 0, 0.1);
  --color-background-fixed: var(--pine-color-white);
  --color-sorting: var(--pine-color-charcoal-500);
  --color-text-default: var(--pine-color-charcoal-200);
  --dimension-fixed-cell-position: 0;
  --font-size-head-cell: var(--pine-font-size-087);
  --font-weight-cell-default: var(--pine-font-weight-normal);
  --line-height-cell-default: var(--pine-line-height-125);
  --padding-cell-default: calc(var(--pine-spacing-300) / 2);
  --spacing-margin-inline-start-arrow: var(--pine-spacing-050);
  --spacing-padding-arrow: calc(var(--pine-spacing-050) / 2);
  --spacing-padding-block-compact: var(--pine-spacing-050);
  border-block-end: var(--border-head-cell-default);
  color: var(--color-text-default);
  display: table-cell;
  font-size: var(--font-size-head-cell);
  font-style: normal;
  font-weight: var(--font-weight-cell-default);
  line-height: var(--line-height-cell-default);
  padding: var(--padding-cell-default);
  text-align: start;
  vertical-align: inherit;
}

:host(.is-compact) {
  padding-block: var(--spacing-padding-block-compact);
}

:host(.is-fixed) {
  background: var(--color-background-fixed);
  left: var(--dimension-fixed-cell-position);
  position: sticky;
  z-index: 1;
}

:host(.has-scrolled.is-fixed) {
  box-shadow: var(--box-shadow-default);
}

:host(.is-sortable) {
  cursor: pointer;
}
:host(.is-sortable) pds-icon {
  margin-inline-start: var(--spacing-margin-inline-start-arrow);
  padding-block-start: var(--spacing-padding-arrow);
  position: absolute;
}

:host(.is-sortable:hover),
:host(.is-active) {
  color: var(--color-sorting);
}