// ─────────────────────────────────────────────────────────────────────────────
// Component: Avatars
// File: src/scss/components/_avatars.scss
//
// Variants: .avatar .avatar--sm .avatar--lg .avatar--agent .avatar--org
// .participant-stack .participant-avatar .participant-overflow
// Tokens: --bg-overlay, --border-default, --domain-agent, --agent-accent
// Usage:
A
//
// Notes: Agent avatars get the fuchsia ring — intentionally distinct.
// Participant stack uses negative margin for overlap effect.
// ─────────────────────────────────────────────────────────────────────────────
.avatar {
display: inline-flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
border-radius: var(--radius-full);
font-size: 13px;
font-weight: var(--weight-semibold);
background: var(--bg-overlay);
color: var(--text-muted);
border: 1px solid var(--border-default);
flex-shrink: 0;
overflow: hidden;
img { width: 100%; height: 100%; object-fit: cover; }
}
.avatar--sm { width: 24px; height: 24px; font-size: 10px; }
.avatar--lg { width: 48px; height: 48px; font-size: 18px; }
.avatar--agent {
border-color: color-mix(in srgb, var(--agent-accent) 40%, transparent);
box-shadow: 0 0 8px color-mix(in srgb, var(--agent-accent) 20%, transparent);
}
.avatar--org {
border-radius: var(--radius-md);
}
// Stacked participant avatars
.participant-stack {
display: flex;
align-items: center;
}
.participant-avatar {
display: inline-flex;
align-items: center;
justify-content: center;
width: 26px;
height: 26px;
border-radius: var(--radius-full);
font-size: 11px;
font-weight: var(--weight-semibold);
color: #fff;
text-decoration: none;
border: 2px solid var(--bg-surface);
margin-left: -6px;
transition: transform var(--transition-fast);
flex-shrink: 0;
&:first-child { margin-left: 0; }
&:hover { transform: translateY(-2px); text-decoration: none; }
}
.participant-overflow {
display: inline-flex;
align-items: center;
justify-content: center;
height: 26px;
padding: 0 var(--space-2);
border-radius: var(--radius-full);
font-size: 11px;
font-weight: var(--weight-semibold);
color: var(--text-muted);
background: var(--bg-overlay);
border: 2px solid var(--bg-surface);
margin-left: -6px;
white-space: nowrap;
}