.forum-topics {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.forum-topics__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.5rem 4.5rem 11rem;
    align-items: center;
    gap: 1rem;
    padding: 0.25rem 1rem 0.625rem;
    color: var(--text-secondary);
    font-size: var(--font-size-xs);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.forum-topics__head-stat,
.forum-topics__head-last {
    text-align: center;
}

.forum-topic {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.5rem 4.5rem 11rem;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1rem;
    border-radius: var(--br-12);
    background: var(--transparent-2-w);
    transition: background var(--transition-duration, 0.25s);
}

.forum-topic:hover {
    background: var(--span-low);
}

.forum-topic--pinned {
    position: relative;
    background: var(--span-10);
}

.forum-topic--pinned::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.5rem;
    bottom: 0.5rem;
    width: 2px;
    border-radius: 0 var(--br-4, 4px) var(--br-4, 4px) 0;
    background: var(--span);
}

.forum-topic__main {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.forum-topic__avatar {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: var(--br-50);
    object-fit: cover;
    flex-shrink: 0;
}

.forum-topic__info {
    display: flex;
    flex-direction: column;
    gap: 0.1875rem;
    min-width: 0;
}

.forum-topic__title {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--text-default);
    font-size: var(--font-size-m);
    font-weight: var(--font-weight-6);
    word-break: break-word;
    transition: color var(--transition-duration, 0.25s);
}

.forum-topic__title::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: var(--br-12);
}

.forum-topic__title:hover {
    color: var(--span);
}

.forum-topic .forum-avatar-link,
.forum-topic .forum-author-link,
.forum-topic__flag {
    position: relative;
    z-index: 1;
}

.forum-topic__flag {
    display: inline-flex;
    flex-shrink: 0;
}

.forum-topic__flag svg {
    width: 0.875rem;
    height: 0.875rem;
}

.forum-topic__flag--pin svg {
    fill: var(--span);
}

.forum-topic__flag--lock svg {
    fill: var(--orange);
}

.forum-topic__meta {
    color: var(--text-secondary);
    font-size: var(--font-size-s);
}

.forum-topic__stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
}

.forum-topic__stat-value {
    font-family: var(--font-family-1);
    font-size: var(--font-size-m);
    font-weight: var(--font-weight-7);
    color: var(--text-default);
}

.forum-topic__stat-label {
    color: var(--text-secondary);
    font-size: var(--font-size-xs);
}
