164 lines
2.6 KiB
Plaintext
164 lines
2.6 KiB
Plaintext
/* ===== 页面 ===== */
|
|
.order-page {
|
|
min-height: 100vh;
|
|
background: #f5f7fa;
|
|
}
|
|
|
|
.list {
|
|
padding: 24rpx 32rpx 40rpx;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* ===== 订单卡片 ===== */
|
|
.order-card {
|
|
background: #ffffff;
|
|
border-radius: 20rpx;
|
|
padding: 36rpx 40rpx;
|
|
margin-bottom: 24rpx;
|
|
}
|
|
|
|
.card-row {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-bottom: 12rpx;
|
|
}
|
|
|
|
.card-row:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.card-row--top {
|
|
justify-content: space-between;
|
|
align-items: flex-start;
|
|
margin-bottom: 16rpx;
|
|
}
|
|
|
|
.card-row--amount {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-end;
|
|
gap: 6rpx;
|
|
margin-top: 4rpx;
|
|
}
|
|
|
|
.event-name {
|
|
flex: 1;
|
|
font-size: 30rpx;
|
|
color: #1a1a1a;
|
|
font-weight: 600;
|
|
padding-right: 24rpx;
|
|
line-height: 1.4;
|
|
}
|
|
|
|
/* 状态文字颜色 */
|
|
.order-status {
|
|
flex-shrink: 0;
|
|
font-size: 26rpx;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.status-success {
|
|
color: #07c160;
|
|
}
|
|
|
|
.status-cancelled {
|
|
color: #ff4d4f;
|
|
}
|
|
|
|
.status-pending {
|
|
color: #fa8c16;
|
|
}
|
|
|
|
.pay-time {
|
|
font-size: 24rpx;
|
|
color: #999;
|
|
}
|
|
|
|
.amount-item {
|
|
font-size: 24rpx;
|
|
color: #999;
|
|
}
|
|
|
|
.amount-val {
|
|
color: #333;
|
|
font-weight: 500;
|
|
}
|
|
|
|
/* ===== 空状态 ===== */
|
|
.empty {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding-top: 240rpx;
|
|
padding-bottom: 240rpx;
|
|
}
|
|
|
|
.empty-icon {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
width: 60%;
|
|
/* margin-bottom: 32rpx; */
|
|
}
|
|
.empty-text {
|
|
font-size: 28rpx;
|
|
color: #999;
|
|
margin-top: 24rpx;
|
|
}
|
|
|
|
/* ===== 列表底部 ===== */
|
|
.list-footer {
|
|
text-align: center;
|
|
padding: 24rpx 0 40rpx;
|
|
}
|
|
|
|
.footer-text {
|
|
font-size: 24rpx;
|
|
color: #c0c4cc;
|
|
}
|
|
|
|
/* ===== 底部加载动画 ===== */
|
|
.loading-more {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 12rpx;
|
|
}
|
|
|
|
.loading-spinner {
|
|
width: 32rpx;
|
|
height: 32rpx;
|
|
border: 4rpx solid #e0e0e0;
|
|
border-top-color: #07c160;
|
|
border-radius: 50%;
|
|
animation: spin 0.8s linear infinite;
|
|
}
|
|
|
|
@keyframes spin {
|
|
to { transform: rotate(360deg); }
|
|
}
|
|
|
|
/* ===== 骨架屏 ===== */
|
|
.skeleton-card {
|
|
overflow: hidden;
|
|
}
|
|
|
|
.skeleton-line {
|
|
height: 28rpx;
|
|
border-radius: 8rpx;
|
|
background: linear-gradient(90deg, #f0f0f0 25%, #e8e8e8 50%, #f0f0f0 75%);
|
|
background-size: 400% 100%;
|
|
animation: skeleton-shimmer 1.4s ease infinite;
|
|
}
|
|
|
|
@keyframes skeleton-shimmer {
|
|
0% { background-position: 100% 50%; }
|
|
100% { background-position: 0% 50%; }
|
|
}
|
|
|
|
.skeleton-title { width: 62%; }
|
|
.skeleton-status { width: 16%; height: 24rpx; }
|
|
.skeleton-time { width: 52%; height: 24rpx; }
|
|
.skeleton-amount { width: 38%; height: 24rpx; align-self: flex-end; }
|