@layer components {
  .collection-item-card {
    display: flex;
    flex-direction: column;
    gap: var(--space-6);
  }

  .collection-item-card__photo {
    display: block;
    border-radius: var(--radius-md);
    -webkit-tap-highlight-color: transparent;
  }

  .collection-item-card__photo .file-preview {
    transition: scale var(--dur-fast) var(--ease-spring);
  }

  .collection-item-card__photo:active .file-preview {
    scale: var(--press-scale);
  }

  .collection-item-card__lead {
    font: var(--type-body);
    color: var(--color-ink);
    text-wrap: pretty;
  }

  .collection-item-card__status {
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
    font: var(--type-body);
    color: var(--color-ink-muted);
    text-wrap: pretty;
  }

  .collection-item-card__reason {
    color: var(--color-caution);
  }

  .collection-item-card__activity {
    font: var(--type-heading);
    background-image: var(--activity-shimmer);
    background-size: var(--activity-shimmer-size) var(--size-fill);
    background-position-x: var(--activity-shimmer-start);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: collection-item-card-activity var(--dur-activity) var(--ease-breath) infinite;
  }

  @keyframes collection-item-card-activity {
    to {
      background-position-x: var(--activity-shimmer-end);
    }
  }

  .collection-item-card__source {
    margin-block-start: calc(var(--space-3) * -1);
    font: var(--type-caption);
    color: var(--color-ink-faint);
  }

  .collection-item-card__section {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
  }

  .collection-item-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-4);
    margin-inline-start: calc(-1 * var(--space-3));
  }

  .collection-item-card__again > summary {
    list-style: none;
    inline-size: fit-content;
  }

  .collection-item-card__again > summary::-webkit-details-marker {
    display: none;
  }

  .collection-item-card__again[open] {
    flex-basis: var(--size-fill);
  }

  .collection-item-card__again[open] > summary {
    display: none;
  }

  .collection-item-card__again-form {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: var(--space-5);
  }

  .collection-item-card__again-form > .field {
    align-self: stretch;
  }
}
