.friends-card {
    padding: 16px 14px !important;
}

#friends-list-container,
#popular-top-container,
#vip-top-container,
#social-top-container,
#top10-container {
    gap: 5px !important;
}

.friend-item.friend-item-compact,
.top10-item.compact-top10-row,
.mini-leader-item.compact-leader-row {
    min-height: 0 !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    border-radius: 14px !important;
}

.friend-item.friend-item-compact {
    align-items: center;
}

.friend-avatar {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #f8fafc;
}

.friend-topline,
.mini-leader-topline {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.friend-name,
.top10-name,
.mini-leader-name {
    font-size: 12px !important;
    font-weight: 700 !important;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.friend-role-line {
    gap: 5px !important;
    margin-top: 3px !important;
}

.friend-role-badge,
.friend-score-mini,
.mini-leader-meta,
.top10-score,
.mini-leader-value {
    font-size: 10px !important;
}

.friend-role-badge {
    padding: 2px 6px !important;
}

.top10-item.compact-top10-row,
.mini-leader-item.compact-leader-row {
    display: flex;
    align-items: center;
    cursor: pointer;
}

.top10-rank,
.mini-leader-rank {
    width: 26px !important;
    min-width: 26px !important;
    font-size: 11px !important;
    text-align: center;
}

.top10-score,
.mini-leader-value {
    margin-left: auto;
    color: #facc15 !important;
    font-weight: 900 !important;
}

.mini-leader-avatar {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 13px;
}

.mini-leader-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mini-leader-body,
.friend-info-col {
    min-width: 0;
}

.leader-role-chip,
.friend-role-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(15, 23, 42, 0.75);
    font-size: 10px;
    font-weight: 900;
    flex: 0 0 18px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

.compact-empty-state {
    color: #94a3b8;
    text-align: center;
    padding: 12px 8px;
    font-size: 11px;
    border-radius: 12px;
    background: rgba(15, 23, 42, 0.45);
    border: 1px dashed rgba(255,255,255,0.08);
}

#fp-rank-badge.top10 {
    box-shadow: 0 0 18px rgba(255, 214, 10, 0.45), 0 0 34px rgba(255, 196, 0, 0.18);
}
