.profile-loading[hidden] { display: none !important; }
.profile-loading__label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.profile-loading__hero, .profile-loading__section {
  padding: clamp(20px, 4vw, 40px);
  border: 1px solid #ececf0;
  border-radius: 24px;
  background: #fff;
}
.profile-loading__hero { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 32px; }
.profile-loading__section { margin-top: 32px; }
.profile-loading__copy { min-width: 0; }
.profile-loading__block {
  border-radius: 12px;
  background: linear-gradient(100deg, #ededf2 25%, #f8f8fa 45%, #ededf2 65%);
  background-size: 220% 100%;
  animation: profile-loading-shimmer 1.6s ease-in-out infinite;
}
.profile-loading__avatar { width: 160px; height: 160px; border-radius: 50%; }
.profile-loading__eyebrow { width: 28%; height: 14px; margin-bottom: 20px; }
.profile-loading__title { width: 75%; height: 34px; margin-bottom: 20px; }
.profile-loading__line { width: 90%; height: 18px; margin-bottom: 24px; }
.profile-loading__stats, .profile-loading__books { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.profile-loading__stats > div { height: 72px; }
.profile-loading__books > div { aspect-ratio: 1; }
@keyframes profile-loading-shimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }
@media (max-width: 600px) {
  .profile-loading__hero { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .profile-loading__avatar { width: 112px; height: 112px; }
  .profile-loading__stats { gap: 8px; }
  .profile-loading__books { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-loading__books > div:last-child { display: none; }
}
@media (prefers-reduced-motion: reduce) { .profile-loading__block { animation: none; } }
