/* Typography Usage mixins */
:host ::slotted(button),
:host ::slotted(a) {
  all: unset;
  box-sizing: border-box;
  font-family: var(--type-system-title-01-font-family);
  font-size: calc(var(--type-system-title-01-font-size) * 1px);
  line-height: calc(var(--type-system-title-01-line-height) * 1px);
  font-weight: var(--type-system-title-01-font-weight);
  letter-spacing: calc(var(--type-system-title-01-letter-spacing) * 1px);
  color: var(--tds-header-item-color);
  background-color: var(--tds-header-background);
  border-right: 1px solid var(--tds-header-item-border);
  width: 100%;
  height: 100%;
  cursor: pointer;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 8px;
}
:host ::slotted(button) *,
:host ::slotted(a) * {
  box-sizing: border-box;
}
:host ::slotted(button:hover),
:host ::slotted(a:hover) {
  background-color: var(--tds-header-item-hover);
}
:host ::slotted(button:active),
:host ::slotted(a:active) {
  background-color: var(--tds-header-item-active);
}
:host ::slotted(button:focus-visible),
:host ::slotted(a:focus-visible) {
  border: none;
  margin-right: 1px;
  outline: 2px solid var(--component--focus-ring-color-strong);
  box-shadow: inset 0 0 0 3px var(--component--focus-ring-color-discrete);
  outline-offset: -2px;
}
:host .component-active ::slotted(button),
:host .component-active ::slotted(a) {
  background-color: var(--tds-header-item-background-open);
  color: var(--tds-header-item-open-color);
  border-color: var(--tds-header-item-border-open);
  box-shadow: inset 0 -4px 0 0 var(--tds-header-item-border-hover);
}
:host .component-active ::slotted(button:hover),
:host .component-active ::slotted(a:hover) {
  background-color: var(--tds-header-dropdown-item-background-hover);
}
:host .component-selected:not(.component-active) ::slotted(button),
:host .component-selected:not(.component-active) ::slotted(a) {
  box-shadow: inset 0 -4px 0 0 var(--tds-header-item-border-hover);
}
:host .component-selected:not(.component-active) ::slotted(button:focus-visible),
:host .component-selected:not(.component-active) ::slotted(a:focus-visible) {
  box-shadow: inset 0 0 0 3px var(--tds-white);
}