.prs-avatar { width: 3.125rem; aspect-ratio: 1 / 1; vertical-align: middle; display: inline-flex; position: relative; & :where(img,svg,.icon,iconify-icon,.prs-avatar-placeholder) { width: 100%; height: 100%; background-color: var(--prs-c-gray-300); color: var(--prs-c-gray-900); font-weight: 700; letter-spacing: -1px; border-radius: calc(infinity * 1px); &:where(svg,.icon,iconify-icon) { padding: 0.25rem; color: var(--prs-c-gray); } &:where(.prs-avatar-placeholder) { font-size: 1.25rem; overflow: hidden; } } } .prs-avatar-2xl { width: 5rem; & :where(.prs-avatar-placeholder) { font-size: 2rem; } } .prs-avatar-xl { width: 4.375rem; & :where(.prs-avatar-placeholder) { font-size: 1.75rem; } } .prs-avatar-lg { width: 3.75rem; & :where(.prs-avatar-placeholder) { font-size: 1.5rem; } } .prs-avatar-md { width: 2.5rem; & :where(.prs-avatar-placeholder) { font-size: 1rem; } } .prs-avatar-sm { width: 1.875rem; & :where(.prs-avatar-placeholder) { font-size: 0.725rem; } } .prs-avatar-xs { width: 1.25rem; & :where(.prs-avatar-placeholder) { font-size: 0.5625rem; } } .prs-avatar-placeholder { display: flex; align-items: center; justify-content: center; } .prs-avatar-online,.prs-avatar-offline { &:before { width: 15%; height: 15%; background-color: var(--prs-c-success-600); display: block; outline: 2px solid var(--prs-c-white); position: absolute; top: 7%; right: 7%; z-index: 1; content: ""; border-radius: calc(infinity * 1px); } } .prs-avatar-offline { &:before { background-color: var(--prs-c-gray-200); } }