109 lines
1.7 KiB
CSS
109 lines
1.7 KiB
CSS
/* 统计卡片 */
|
|
.stat-card {
|
|
padding: 16px;
|
|
background: #ffffff;
|
|
border-radius: 8px;
|
|
border: 1px solid #f0f0f0;
|
|
transition: all 0.3s ease;
|
|
}
|
|
|
|
.stat-card:hover {
|
|
border-color: #d9d9d9;
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
|
}
|
|
|
|
/* 一列布局(默认) */
|
|
.stat-card-column {
|
|
/* 继承默认样式 */
|
|
}
|
|
|
|
/* 两列布局 */
|
|
.stat-card.stat-card-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 16px;
|
|
}
|
|
|
|
.stat-card.stat-card-row .stat-card-header {
|
|
flex: 1;
|
|
margin-bottom: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
gap: 8px;
|
|
}
|
|
|
|
.stat-card.stat-card-row .stat-card-body {
|
|
flex-shrink: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-end;
|
|
gap: 4px;
|
|
}
|
|
|
|
/* 卡片头部 */
|
|
.stat-card-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
.stat-card-title {
|
|
font-size: 13px;
|
|
color: rgba(0, 0, 0, 0.65);
|
|
font-weight: 500;
|
|
}
|
|
|
|
.stat-card-icon {
|
|
font-size: 18px;
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
/* 卡片内容 */
|
|
.stat-card-body {
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
}
|
|
|
|
.stat-card-value {
|
|
font-size: 24px;
|
|
font-weight: 600;
|
|
line-height: 1;
|
|
}
|
|
|
|
.stat-card-suffix {
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
margin-left: 4px;
|
|
color: rgba(0, 0, 0, 0.45);
|
|
}
|
|
|
|
/* 趋势指示器 */
|
|
.stat-card-trend {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
padding: 2px 6px;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.stat-card-trend.trend-up {
|
|
color: #52c41a;
|
|
background: #f6ffed;
|
|
}
|
|
|
|
.stat-card-trend.trend-down {
|
|
color: #ff4d4f;
|
|
background: #fff1f0;
|
|
}
|
|
|
|
.stat-card-trend svg {
|
|
font-size: 10px;
|
|
}
|