.ty-list {
  color: var(--ty-list-color);
  font-size: var(--ty-list-font-size);
}
.ty-list_bordered {
  border: 1px solid var(--ty-list-border);
  border-radius: var(--ty-list-radius);
}
.ty-list_sm .ty-list-item {
  padding: var(--ty-list-item-padding-sm);
}
.ty-list_md .ty-list-item {
  padding: var(--ty-list-item-padding-md);
}
.ty-list_lg .ty-list-item {
  padding: var(--ty-list-item-padding-lg);
}
.ty-list__header, .ty-list__footer {
  padding: var(--ty-list-header-padding);
}
.ty-list_bordered .ty-list__header {
  border-bottom: 1px solid var(--ty-list-border);
}
.ty-list_bordered .ty-list__footer {
  border-top: 1px solid var(--ty-list-border);
}
.ty-list__body_virtual {
  overflow-y: auto;
  will-change: transform;
}
.ty-list__body_virtual .ty-list-item:last-child {
  border-bottom: 1px solid var(--ty-list-border);
}
.ty-list__items, .ty-list__grid {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ty-list__empty {
  padding: var(--ty-list-empty-padding);
  text-align: center;
  color: var(--ty-list-empty-color);
}
.ty-list__loading {
  padding: var(--ty-list-empty-padding);
  text-align: center;
  color: var(--ty-list-empty-color);
}

.ty-list-item {
  display: flex;
  align-items: flex-start;
}
.ty-list_split .ty-list-item {
  border-bottom: 1px solid var(--ty-list-border);
}
.ty-list_split .ty-list-item:last-child {
  border-bottom: none;
}
.ty-list-item__main {
  flex: 1;
  display: flex;
  align-items: center;
  min-width: 0;
}
.ty-list-item__content {
  flex: 1;
  min-width: 0;
}
.ty-list-item__actions {
  display: flex;
  align-items: center;
  gap: var(--ty-list-action-gap);
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: var(--ty-list-action-offset);
  flex-shrink: 0;
}
.ty-list-item__action {
  color: var(--ty-list-action-color);
  cursor: pointer;
}
.ty-list-item__action:hover {
  color: var(--ty-list-action-color-hover);
}
.ty-list-item__extra {
  margin-left: var(--ty-list-action-offset);
  flex-shrink: 0;
}

.ty-list-item-meta {
  display: flex;
  align-items: flex-start;
  flex: 1;
}
.ty-list-item-meta__avatar {
  margin-right: var(--ty-list-meta-avatar-gap);
  flex-shrink: 0;
}
.ty-list-item-meta__content {
  flex: 1;
  min-width: 0;
}
.ty-list-item-meta__title {
  font-weight: var(--ty-list-meta-title-font-weight);
  color: var(--ty-list-meta-title-color);
  margin-bottom: var(--ty-list-meta-title-margin-bottom);
}
.ty-list-item-meta__description {
  color: var(--ty-list-meta-description-color);
  font-size: var(--ty-list-meta-description-font-size);
}