/**
 * Eingang: Liste als zusammenhängende Karte (.inbox-list), jeder Eintrag ein Knopf im POST-
 * Formular (öffnet die Aufgabe und markiert gelesen). Ungelesen = Punkt + fetter Text, nicht nur
 * Farbe. Dazu die Glocke in der Kopfzeile (.site-header__bell) und der Erwähnungs-Chip
 * (.mention) samt Eingabehilfe (.mention-hint).
 */
@layer components {
  .inbox-list {
    margin: 0;
    padding: 0;
    border: var(--border-width-thin) solid var(--theme-card-border);
    border-radius: var(--theme-card-radius);
    background-color: var(--theme-card-bg);
    list-style: none;
    overflow: clip;
  }

  .inbox-item + .inbox-item {
    border-block-start: var(--border-width-thin) solid var(--border-subtle);
  }

  .inbox-item form {
    margin: 0;
  }

  .inbox-item__button {
    display: flex;
    align-items: flex-start;
    gap: var(--space-3);
    inline-size: 100%;
    min-block-size: 2.75rem;
    padding: var(--space-3) var(--space-5);
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    cursor: pointer;
    transition: background-color var(--motion-duration-ui) var(--motion-ease);
  }

  @media (hover: hover) and (pointer: fine) {
    .inbox-item__button:hover {
      background-color: var(--theme-row-hover);
    }
  }

  .inbox-item__dot {
    flex-shrink: 0;
    inline-size: 0.5rem;
    block-size: 0.5rem;
    margin-block-start: 0.5rem;
    border-radius: 50%;
    background-color: transparent;
  }

  .inbox-item--unread .inbox-item__dot {
    background-color: var(--text-accent);
  }

  .inbox-item__icon {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    inline-size: 1.5rem;
    block-size: 1.5rem;
    color: var(--theme-meta-color);
  }

  .inbox-item__main {
    display: grid;
    flex: 1 1 auto;
    gap: var(--space-1);
    min-inline-size: 0;
  }

  .inbox-item__text {
    color: var(--theme-heading-color);
    overflow-wrap: anywhere;
  }

  .inbox-item--unread .inbox-item__text {
    font-weight: var(--font-weight-semibold);
  }

  .inbox-item__excerpt {
    color: var(--theme-meta-color);
    font-size: var(--font-size-small);
    overflow-wrap: anywhere;
  }

  .inbox-item__meta {
    color: var(--theme-meta-color);
    font-size: var(--font-size-small);
  }

  .site-header__tools {
    display: flex;
    align-items: center;
    gap: var(--space-1);
    justify-self: end;
  }

  .site-header__bell {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-1);
    min-block-size: 2.75rem;
    min-inline-size: 2.75rem;
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    color: var(--theme-nav-text-muted);
    text-decoration: none;
    transition:
      background-color var(--motion-duration-ui) var(--motion-ease),
      color var(--motion-duration-ui) var(--motion-ease);
  }

  @media (hover: hover) and (pointer: fine) {
    .site-header__bell:hover {
      background-color: var(--theme-nav-hover);
      color: var(--theme-nav-text);
    }
  }

  .site-header__bell[aria-current="page"] {
    background-color: var(--theme-nav-active);
    color: var(--theme-nav-text);
  }

  .site-header__bell-count {
    min-inline-size: 1.25rem;
    padding: 0 var(--space-1);
    border-radius: var(--radius-sm);
    background-color: var(--theme-badge-accent-bg);
    color: var(--theme-badge-accent-text);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-semibold);
    line-height: var(--line-height-caption);
    text-align: center;
    font-variant-numeric: tabular-nums;
  }

  .mention {
    padding: 0 var(--space-1);
    border-radius: var(--radius-sm);
    background-color: var(--theme-badge-accent-bg);
    color: var(--theme-badge-accent-text);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
  }

  .mention-hint {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--space-1) var(--space-2);
    margin-block-start: calc(-1 * var(--space-2));
    color: var(--theme-meta-color);
    font-size: var(--font-size-small);
  }

  .mention-hint__handle {
    font-family: var(--font-mono);
  }

  .mention-hint__more summary {
    cursor: pointer;
    text-decoration: underline;
  }
}

@layer components {
  @media (min-width: 48rem) {
    .site-header__tools {
      margin-inline-start: auto;
    }

    .site-header__bell {
      min-block-size: 2rem;
      min-inline-size: 2rem;
      padding-block: var(--space-1);
    }
  }
}
