.page {
    min-height: 100vh;
    background: #f4f5f7;
}

.nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    padding-left: 24rpx;
    padding-right: 24rpx;
    padding-bottom: 16rpx;
    box-sizing: border-box;
    z-index: 100;
}

.nav-back {
    width: 60rpx;
    height: 64rpx;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-back-icon {
    width: 20rpx;
    height: 20rpx;
    border-left: 4rpx solid #333;
    border-bottom: 4rpx solid #333;
    transform: rotate(45deg);
}

.nav-title {
    flex: 1;
    font-size: 34rpx;
    font-weight: 500;
    color: #333;
    text-align: center;
    line-height: 64rpx;
}

.nav-capsule {
    width: 174rpx;
    height: 64rpx;
}

.list {
    height: calc(100vh - 88rpx); /* 减去导航栏高度 */
    padding: 20rpx 24rpx;
    padding-bottom: 60rpx;
    box-sizing: border-box;
}

.room-card {
    display: flex;
	flex-direction: row;
    align-items: center;
    padding: 24rpx;
    background: #fff;
    border-radius: 20rpx;
    margin-bottom: 20rpx;
}

.room-avatar {
    width: 96rpx;
    height: 96rpx;
    border-radius: 50%;
    background: linear-gradient(145deg, #e8f7ff 0%, #c5e4ff 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.avatar-text {
    font-size: 36rpx;
    font-weight: 600;
    color: #173294;
}

.room-info {
    flex: 1;
	flex-direction: column;
    margin-left: 20rpx;
    overflow: hidden;
}

.room-header {
    display: flex;
	flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12rpx;
}

.room-name {
    font-size: 30rpx;
    font-weight: 600;
    color: #222;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.room-time {
    font-size: 24rpx;
    color: #999;
    flex-shrink: 0;
    margin-left: 16rpx;
}

.room-footer {
    display: flex;
	flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.last-message {
    font-size: 26rpx;
    color: #999;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.unread-badge {
    min-width: 36rpx;
    height: 36rpx;
    padding: 0 12rpx;
    background: #ff4d4f;
    border-radius: 18rpx;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-left: 16rpx;
}

.badge-text {
    font-size: 22rpx;
    color: #fff;
    font-weight: 500;
}

.room-status {
    display: flex;
    align-items: center;
    gap: 8rpx;
    margin-left: 20rpx;
    padding: 8rpx 16rpx;
    border-radius: 8rpx;
    flex-shrink: 0;
}

.status-dot {
    width: 12rpx;
    height: 12rpx;
    border-radius: 50%;
}

.status-text {
    font-size: 22rpx;
}

.status-active {
    background: #e7f7ea;
}

.status-active .status-dot {
    background: #3abe59;
}

.status-active .status-text {
    color: #3abe59;
}

.status-waiting {
    background: #fff7e6;
}

.status-waiting .status-dot {
    background: #faad14;
}

.status-waiting .status-text {
    color: #faad14;
}

.status-closed {
    background: #f0f0f0;
}

.status-closed .status-dot {
    background: #999;
}

.status-closed .status-text {
    color: #999;
}

.empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 160rpx 40rpx;
}

.empty-icon {
    font-size: 96rpx;
    margin-bottom: 32rpx;
}

.empty-text {
    font-size: 32rpx;
    color: #222;
    font-weight: 500;
    margin-bottom: 16rpx;
}

.empty-hint {
    font-size: 28rpx;
    color: #999;
}
