:host {
  /**
   * @prop --background: Background of the item divider
   *
   * @prop --color: Color of the item divider
   *
   * @prop --padding-top: Top padding of the item divider
   * @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the item divider
   * @prop --padding-bottom: Bottom padding of the item divider
   * @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the item divider
   *
   * @prop --inner-padding-top: Top inner padding of the item divider
   * @prop --inner-padding-end: End inner padding of the item divider
   * @prop --inner-padding-bottom: Bottom inner padding of the item divider
   * @prop --inner-padding-start: Start inner padding of the item divider
   */
  --padding-top: 0px;
  --padding-end: 0px;
  --padding-bottom: 0px;
  --padding-start: 0px;
  --inner-padding-top: 0px;
  --inner-padding-end: 0px;
  --inner-padding-bottom: 0px;
  --inner-padding-start: 0px;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: calc(var(--padding-start) + var(--ion-safe-area-left, 0px));
  padding-right: var(--padding-end);
  padding-top: var(--padding-top);
  padding-bottom: var(--padding-bottom);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: var(--background);
  color: var(--color);
  font-family: var(--ion-font-family, inherit);
  overflow: hidden;
  z-index: 100;
  box-sizing: border-box;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  :host {
    padding-left: unset;
    padding-right: unset;
    -webkit-padding-start: calc(var(--padding-start) + var(--ion-safe-area-left, 0px));
    padding-inline-start: calc(var(--padding-start) + var(--ion-safe-area-left, 0px));
    -webkit-padding-end: var(--padding-end);
    padding-inline-end: var(--padding-end);
  }
}

:host(.ion-color) {
  background: var(--ion-color-base);
  color: var(--ion-color-contrast);
}

:host(.item-divider-sticky) {
  position: sticky;
  top: 0;
}

.item-divider-inner {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: var(--inner-padding-start);
  padding-right: calc(var(--ion-safe-area-right, 0px) + var(--inner-padding-end));
  padding-top: var(--inner-padding-top);
  padding-bottom: var(--inner-padding-bottom);
  display: flex;
  flex: 1;
  flex-direction: inherit;
  align-items: inherit;
  align-self: stretch;
  min-height: inherit;
  border: 0;
  overflow: hidden;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  .item-divider-inner {
    padding-left: unset;
    padding-right: unset;
    -webkit-padding-start: var(--inner-padding-start);
    padding-inline-start: var(--inner-padding-start);
    -webkit-padding-end: calc(var(--ion-safe-area-right, 0px) + var(--inner-padding-end));
    padding-inline-end: calc(var(--ion-safe-area-right, 0px) + var(--inner-padding-end));
  }
}

.item-divider-wrapper {
  display: flex;
  flex: 1;
  flex-direction: inherit;
  align-items: inherit;
  align-self: stretch;
  text-overflow: ellipsis;
  overflow: hidden;
}

:host {
  --background: var(--ion-background-color, #fff);
  --color: var(--ion-color-step-400, #999999);
  --padding-start: 16px;
  --inner-padding-end: 0;
  min-height: 30px;
  border-bottom: 1px solid var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, rgba(0, 0, 0, 0.13))));
  font-size: 14px;
}

::slotted([slot=start]) {
  margin-right: 32px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted([slot=start]) {
    margin-right: unset;
    -webkit-margin-end: 32px;
    margin-inline-end: 32px;
  }
}

::slotted([slot=end]) {
  margin-left: 32px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted([slot=end]) {
    margin-left: unset;
    -webkit-margin-start: 32px;
    margin-inline-start: 32px;
  }
}

::slotted(ion-label) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 13px;
  margin-bottom: 10px;
}

::slotted(ion-icon) {
  color: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.54);
  font-size: 24px;
}

:host(.ion-color) ::slotted(ion-icon) {
  color: var(--ion-color-contrast);
}

::slotted(ion-icon[slot]) {
  margin-top: 12px;
  margin-bottom: 12px;
}
::slotted(ion-icon[slot=start]) {
  margin-right: 32px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted(ion-icon[slot=start]) {
    margin-right: unset;
    -webkit-margin-end: 32px;
    margin-inline-end: 32px;
  }
}

::slotted(ion-icon[slot=end]) {
  margin-left: 16px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted(ion-icon[slot=end]) {
    margin-left: unset;
    -webkit-margin-start: 16px;
    margin-inline-start: 16px;
  }
}

::slotted(ion-note) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
  align-self: flex-start;
  font-size: 11px;
}

::slotted(ion-note[slot]) {
  padding-left: 0;
  padding-right: 0;
  padding-top: 18px;
  padding-bottom: 10px;
}

::slotted(ion-note[slot=start]) {
  padding-right: 16px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted(ion-note[slot=start]) {
    padding-right: unset;
    -webkit-padding-end: 16px;
    padding-inline-end: 16px;
  }
}

::slotted(ion-note[slot=end]) {
  padding-left: 16px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted(ion-note[slot=end]) {
    padding-left: unset;
    -webkit-padding-start: 16px;
    padding-inline-start: 16px;
  }
}

::slotted(ion-avatar) {
  width: 40px;
  height: 40px;
}

::slotted(ion-thumbnail) {
  width: 56px;
  height: 56px;
}

::slotted(ion-avatar),
::slotted(ion-thumbnail) {
  margin-top: 8px;
  margin-bottom: 8px;
}
::slotted(ion-avatar[slot=start]),
::slotted(ion-thumbnail[slot=start]) {
  margin-right: 16px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted(ion-avatar[slot=start]),
::slotted(ion-thumbnail[slot=start]) {
    margin-right: unset;
    -webkit-margin-end: 16px;
    margin-inline-end: 16px;
  }
}

::slotted(ion-avatar[slot=end]),
::slotted(ion-thumbnail[slot=end]) {
  margin-left: 16px;
}
@supports (margin-inline-start: 0) or (-webkit-margin-start: 0) {
  ::slotted(ion-avatar[slot=end]),
::slotted(ion-thumbnail[slot=end]) {
    margin-left: unset;
    -webkit-margin-start: 16px;
    margin-inline-start: 16px;
  }
}

::slotted(h1) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 2px;
  font-size: 24px;
  font-weight: normal;
}

::slotted(h2) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 2px;
  margin-bottom: 2px;
  font-size: 16px;
  font-weight: normal;
}

::slotted(h3, h4, h5, h6) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 2px;
  margin-bottom: 2px;
  font-size: 14px;
  font-weight: normal;
  line-height: normal;
}

::slotted(p) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 2px;
  color: var(--ion-color-step-600, #666666);
  font-size: 14px;
  line-height: normal;
  text-overflow: inherit;
  overflow: inherit;
}