.profile-avatar-large { overflow: hidden; }
.profile-avatar-large img { width: 100%; height: 100%; object-fit: cover; }
.profile-heading { gap: 1.25rem; }
.profile-identity { flex: 1; }
.profile-meta { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: .55rem; font-size: .9rem; }
.profile-meta a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.profile-actions { display: grid; gap: .75rem; justify-items: stretch; }
.profile-actions form, .profile-actions .button { width: 100%; }
.profile-actions .button-ghost { color: var(--forest); }
.full-button { display: block; margin-top: 1rem; text-align: center; }
.audit-list { display: grid; }
.audit-row { padding: 1rem 0; border-top: 1px solid var(--border, #e3e6df); }
.audit-row:first-child { border-top: 0; padding-top: 0; }
.audit-row div { display: flex; justify-content: space-between; gap: 1rem; }
.audit-row span, .audit-row p { color: var(--muted, #66706a); font-size: .88rem; }
.audit-row p { margin: .35rem 0 0; }
.preference-fields { display: grid; gap: .75rem; margin: 1rem 0; }
.preference-fields label { display: flex; gap: .6rem; align-items: center; }
.verified-badge { display: inline-block; vertical-align: middle; font-size: .72rem; padding: .28rem .55rem; border-radius: 999px; color: #0d4f3b; background: #d8f2e6; }
.verified-mark { display: inline-grid; place-items: center; width: 1.1rem; height: 1.1rem; border-radius: 50%; color: #fff; background: #18785b; font-size: .72rem; }
.publication-draft, .publication-submitted, .status-pending { background: #fff0cd; color: #75520c; }
.publication-rejected, .status-rejected { background: #fee2de; color: #8c352c; }
.publication-approved, .status-approved { background: #d8f2e6; color: #0d5a40; }
.review-note { margin-top: 1rem; padding: 1rem; border-radius: .6rem; background: #fff8e8; color: #684d18; }
.review-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
@media (max-width: 720px) {
  .profile-actions { width: 100%; }
  .profile-heading { align-items: flex-start; }
  .audit-row div { display: grid; gap: .25rem; }
}
