.profile-main { min-height: 100vh; }
.profile-auth-loading { position: fixed; z-index: 120; inset: 0; display: grid; place-items: center; background: #fff; color: #606060; font-size: 14px; }
.profile-auth-loading[hidden] { display: none; }
.profile-content { width: min(100%, 1040px); margin: 0 auto; }
.channel-profile { padding: 26px 0 0; }
.channel-identity { display: flex; align-items: center; gap: 22px; }
.channel-avatar { display: block; flex: 0 0 auto; width: 96px; height: 96px; border: 3px solid #fff; border-radius: 50%; background: #f2f2f2; object-fit: cover; box-shadow: 0 0 0 1px #dfe5e7; }
.channel-heading { min-width: 0; }
.channel-label { margin: 0 0 6px; color: #52656c; font-size: 11px; font-weight: 650; }
.channel-heading h2 { margin: 0; overflow-wrap: anywhere; font-size: 26px; font-weight: 650; line-height: 1.3; }
.channel-email { margin: 6px 0 0; color: #606060; font-size: 13px; overflow-wrap: anywhere; }
.channel-bio { max-width: 680px; margin: 24px 0; color: #404040; font-size: 14px; line-height: 1.65; white-space: pre-wrap; }
.channel-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin: 24px 0 0; padding: 0; border: 1px solid #e5e9ea; border-radius: 8px; }
.channel-stats div { min-width: 0; padding: 16px 20px; border-left: 1px solid #e5e9ea; }
.channel-stats div:first-child { border-left: 0; }
.channel-stats dt { color: #606060; font-size: 12px; }
.channel-stats dd { margin: 5px 0 0; color: #171717; font-size: 18px; font-weight: 650; }
.profile-actions { display: flex; justify-content: flex-end; margin-top: 26px; }
.profile-signout { min-height: 40px; padding: 0 16px; border: 1px solid #d6d6d6; border-radius: 7px; background: #fff; color: #303030; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.profile-signout:hover { background: #f6f6f6; }
.profile-signout:disabled { cursor: wait; opacity: .65; }
.profile-feedback { min-height: 20px; margin: 12px 0 0; color: #606060; font-size: 12px; }
.profile-feedback.is-error { color: #a12626; }

@media (max-width: 760px) {
  .channel-identity { align-items: flex-start; gap: 16px; }
  .channel-avatar { width: 72px; height: 72px; }
  .channel-heading h2 { font-size: 20px; }
  .channel-stats div { padding: 14px 12px; }
}
