/**
 * 会议列表页 - 卡片基础样式
 * 包含: 卡片基础、状态标识、空状态
 */

/* ========== 卡片基础样式 ========== */
.card-base {
    background: var(--bg-card);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-card);
    transition: all var(--transition-smooth);
    position: relative;
    overflow: hidden;
}

.card-base:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-card-hover);
}

/* ========== 状态标识 ========== */
.status-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 500;
}

.status-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
}

.status-indicator.active .status-dot {
    background: var(--color-success);
    box-shadow: 0 0 0 3px var(--color-success-soft);
    animation: pulse-status 2s ease-in-out infinite;
}

.status-indicator.active {
    color: var(--color-success);
}

.status-indicator.completed .status-dot {
    background: var(--neutral-400);
}

.status-indicator.completed {
    color: var(--neutral-500);
}

@keyframes pulse-status {
    0%, 100% { box-shadow: 0 0 0 3px var(--color-success-soft); }
    50% { box-shadow: 0 0 0 6px rgba(5, 150, 105, 0.05); }
}

/* ========== 空状态 ========== */
.empty-state {
    text-align: center;
    padding: var(--space-10) var(--space-6);
}

.empty-state-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto var(--space-4);
    background: var(--neutral-100);
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
}

.empty-state-icon svg {
    width: 24px;
    height: 24px;
    color: var(--neutral-400);
}

.empty-state-title {
    font-size: 15px;
    font-weight: 600;
    color: var(--neutral-700);
    margin-bottom: var(--space-1);
}

.empty-state-desc {
    font-size: 13px;
    color: var(--neutral-500);
    max-width: 300px;
    margin: 0 auto;
}
