:host {
  --border-head-cell-default: var(--pine-border-width-thin) solid var(--pine-color-border-subtle);
  /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */
  --box-shadow-default: 3px 3px 6px -2px rgba(0, 0, 0, 0.1);
  border-block-end: var(--border-head-cell-default);
  color: var(--pine-color-text);
  display: table-cell;
  font-family: var(--pine-font-family-body);
  font-size: var(--pine-font-size);
  font-weight: var(--pine-font-weight-regular);
  letter-spacing: var(--pine-letter-spacing);
  line-height: var(--pine-line-height-body);
  padding: var(--pine-dimension-sm);
  position: relative;
  text-align: start;
  vertical-align: inherit;
}

:host(.is-compact) {
  padding-block: var(--pine-dimension-2xs);
}

:host(.is-fixed) {
  background: var(--pine-color-background-container);
  inset-inline-start: var(--pine-dimension-none);
  position: sticky;
  z-index: var(--pine-z-index-raised);
}

:host(.is-fixed.has-head-background) {
  background-color: var(--pine-color-background-subtle);
}

:host(.has-head-border) {
  border-block-start: var(--border-head-cell-default);
}

:host-context([dir=rtl]) {
  /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */
  --box-shadow-default: -3px 3px 6px -2px rgba(0, 0, 0, 0.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(--pine-dimension-2xs);
  padding-block-start: 2px;
  position: absolute;
}

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

:host(.pds-table-head-cell--align-start) {
  text-align: start;
}

:host(.pds-table-head-cell--align-center) {
  text-align: center;
}

:host(.pds-table-head-cell--align-end) {
  text-align: end;
}

:host(.pds-table-head-cell--align-justify) {
  text-align: justify;
}