.listLink { font-size: var(--font-xs); color: var(--color-text); text-decoration: none; padding: var(--s-1) var(--s-2); border-radius: var(--radius-field); transition: background-color 0.15s, color 0.15s; display: flex; align-items: center; gap: var(--s-2); &:hover { &:not(:has(.listLinkSubtitle)) { color: var(--color-text); } background-color: var(--color-bg-high); } &[aria-current="page"] { color: var(--color-text); background-color: var(--color-bg-higher); font-weight: var(--weight-bold); } } .listButton { composes: listLink; background: none; border: none; cursor: pointer; text-align: left; width: 100%; &:focus-visible { outline: var(--focus-ring); } } .listLinkImageContainer { position: relative; flex-shrink: 0; } .listLinkImage { width: 32px; height: 32px; border-radius: var(--radius-avatar); object-fit: cover; flex-shrink: 0; } .listLinkOverlayIcon { position: absolute; bottom: -2px; right: -2px; width: 16px; height: 16px; border-radius: var(--radius-field); background-color: var(--color-bg); padding: 2px; } .listLinkContent { display: flex; flex-direction: column; min-width: 0; gap: var(--s-0-5); width: 100%; } .listLinkTitle { &:has(+ .listLinkSubtitle) { color: var(--color-text); } } .listLinkSubtitleRow { display: flex; align-items: center; gap: var(--s-1-5); width: 100%; color: var(--color-text-high); } .listLinkSubtitle { font-size: var(--font-2xs); color: var(--color-text-high); } .listLinkBadge { display: flex; align-items: center; margin-left: auto; font-size: var(--font-2xs); font-weight: var(--weight-semi); color: var(--color-fg-on-accent); background-color: var(--color-fill-accent); padding: 0 var(--s-1); border-radius: var(--radius-selector); height: var(--selector-size-xs); text-align: center; flex-shrink: 0; text-transform: uppercase; } .listLinkBadgeWarning { color: var(--color-fg-on-second); background-color: var(--color-fill-second); }