.ty-skeleton {
  display: inline-block;
  width: 100%;
  height: var(--ty-skeleton-height);
  position: relative;
  overflow: hidden;
  background-color: var(--ty-skeleton-bg);
}
.ty-skeleton::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.ty-skeleton_round {
  border-radius: var(--ty-skeleton-radius-round);
}
.ty-skeleton_circle {
  border-radius: 50%;
}
.ty-skeleton_animated_shimmer::after {
  content: "";
  transform: translateX(-100%);
  background-image: var(--ty-skeleton-shimmer);
  background-size: 200% 100%;
  animation: ty-skeleton-shimmer var(--ty-skeleton-animation-duration) ease infinite;
}
.ty-skeleton_animated_pulse {
  animation: ty-skeleton-pulse var(--ty-skeleton-animation-duration) ease-in-out infinite;
}
.ty-skeleton__group {
  display: flex;
  align-items: flex-start;
  gap: var(--ty-skeleton-block-gap);
}
.ty-skeleton__content {
  display: flex;
  flex-direction: column;
  gap: var(--ty-skeleton-block-gap);
  flex: 1;
  min-width: 0;
}
.ty-skeleton__text {
  display: flex;
  flex-direction: column;
  gap: var(--ty-skeleton-row-gap);
}
.ty-skeleton__title {
  margin-bottom: 0;
}
.ty-skeleton__paragraph {
  width: 100%;
}
.ty-skeleton__text-row {
  display: block;
}
.ty-skeleton__avatar {
  flex: none;
}

@keyframes ty-skeleton-shimmer {
  100% {
    transform: translateX(100%);
  }
}
@keyframes ty-skeleton-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.ty-skeleton__group .ty-skeleton + .ty-skeleton__group .ty-skeleton {
  margin-top: 0;
}