/* 작성자 페이지 · 소식 피드 */
.profile { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--sp-3) var(--sp-4); margin-block-end: var(--sp-4); }
.avatar { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: var(--brand-soft); color: var(--brand-text); font-size: 1.625rem; font-weight: 800; }
.avatar.small { width: 40px; height: 40px; font-size: 1.0625rem; }
.profile h1 { margin: 0; font-size: var(--fs-title); }
.profile .muted { margin: 2px 0 0; font-size: var(--fs-sm); }
.profile-stats { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding-block-start: var(--sp-3); border-block-start: 1px solid var(--line); text-align: center; }
.profile-stats dt { font-size: var(--fs-xs); color: var(--text-sub); }
.profile-stats dd { margin: 0; font-size: 1.125rem; font-weight: 800; }
.follow-row { margin-block-end: var(--sp-4); }
.follow-chip { flex: none; display: grid; justify-items: center; gap: 4px; width: 64px; color: inherit; text-decoration: none; font-size: var(--fs-xs); }
.follow-chip span:last-child { max-width: 64px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.author-link { color: inherit; text-decoration: none; font-weight: 600; }
.author-link:hover { text-decoration: underline; }
.profile-report { grid-column: 3; justify-self: end; margin-block-start: -8px; }
.profile-actions { grid-column: 3; justify-self: end; display: flex; gap: 12px; margin-block-start: -8px; }
.blocked-alert { grid-column: 1 / -1; margin: 0; }
