@layer components {
  .loan-cards {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .loan-card {
    display: block;
    padding: var(--inline-space);
    border-block-end: 1px solid var(--color-ink-lightest);
    text-decoration: none;
    color: inherit;

    li:last-child & {
      border-block-end: 0;
    }

    &:hover {
      background: var(--color-canvas-hover);
    }
  }

  .loan-card__header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: var(--inline-space);
  }

  .loan-card__borrower {
    font-weight: 600;
    color: var(--color-ink-dark);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-inline-size: 0;
  }

  .loan-card__amount {
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    color: var(--color-ink-dark);
    flex-shrink: 0;
  }

  .loan-card__subtitle {
    margin-block: 0.125rem 0;
    font-size: var(--text-small);
    color: var(--color-ink-medium);
  }

  .loan-card__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-block-start: var(--inline-space-half);
  }

  .loan-card__next-payment {
    font-size: var(--text-small);
    color: var(--color-ink-medium);
  }
}
