/* 基础样式 */ .wrapper { height: 100%; background: #f5f7fa; display: flex; flex-direction: column; overflow: hidden; } /* 头部样式 */ .header { position: relative; width: 100%; height: 300rpx; flex-shrink: 0; background: linear-gradient(115deg, #62B2FF -1.34%, #3C80F6 100%); } .nav { display: flex; align-items: center; box-sizing: border-box; color: #ffffff; text-align: center; font-size: 34rpx; font-weight: 500; padding-left: 34rpx; } /* 返回按钮样式 */ .nav-back { width: 44rpx; height: 44rpx; display: flex; align-items: center; justify-content: center; margin-right: 20rpx; } .back-icon { width: 24rpx; height: 24rpx; } /* 页面标题样式 */ .nav-title { flex: 1; text-align: center; font-size: 34rpx; font-weight: 500; color: #ffffff; position: absolute; left: 0; right: 0; top: calc(var(--status-bar-height) + 10px); pointer-events: none; } /* 用户信息样式 */ .info { padding: 40rpx 32rpx 0; display: flex; flex-direction: row; gap: 20rpx; justify-content: space-between; width: calc(100% - 64rpx); } .info-item { display: flex; justify-content: space-between; align-items: center; padding: 18rpx 20rpx; background: rgba(255, 255, 255, 0.15); border-radius: 15rpx; backdrop-filter: blur(10rpx); flex: 1; margin: 0 5rpx; box-sizing: border-box; overflow: visible; white-space: nowrap; } .info-label { color: rgba(255, 255, 255, 0.9); font-size: 28rpx; font-weight: 500; } .info-value { color: #ffffff; font-size: 30rpx; font-weight: 600; white-space: nowrap; overflow: visible; text-overflow: clip; max-width: none; } /* 信息图标样式 */ .info-icon { width: 40rpx; height: 40rpx; margin-right: 15rpx; vertical-align: middle; } .user-icon { width: 45rpx; height: 45rpx; } .vehicle-icon { width: 42rpx; height: 42rpx; } /* 主体内容样式 */ .body { flex: 1; background-color: #f5f7fa; width: 100%; /* padding: 120rpx 24rpx 30rpx; */ box-sizing: border-box; overflow-y: auto; margin-top: 5rpx; position: relative; z-index: 1; } /* 响应式调整 */ @media screen and (min-width: 750rpx) { .wallet-card { max-width: 600rpx; margin: 0 auto 28rpx; } .body { padding: 120rpx 40rpx 30rpx; } } @media screen and (max-width: 375rpx) { .info-item { padding: 15rpx 20rpx; } .card-body { padding: 20rpx; } .tenant-name { font-size: 28rpx; } .balance-value { font-size: 30rpx; } } /* 标题样式 */ .section-title { font-size: 32rpx; font-weight: 600; color: #333; margin-bottom: 25rpx; padding-left: 10rpx; } /* 钱包列表样式 */ .wallet-list { display: flex; flex-direction: column; gap: 20rpx; animation: fadeInUp 0.6s ease-out; } /* 页面淡入动画 */ @keyframes fadeInUp { from { opacity: 0; transform: translateY(30rpx); } to { opacity: 1; transform: translateY(0); } } /* 卡片滑入动画 */ @keyframes slideUp { to { opacity: 1; transform: translateY(0); } } /* 数字滚动动画 */ @keyframes countUp { from { transform: translateY(100%); } to { transform: translateY(0); } } /* 应用数字动画 */ .balance-value { display: inline-block; overflow: hidden; vertical-align: bottom; animation: countUp 1s ease-out forwards; transform: translateY(100%); } /* 钱包卡片样式 */ .wallet-card { background: #fff; border-radius: 24rpx; overflow: hidden; box-shadow: 0 8rpx 32rpx rgba(0, 0, 0, 0.08); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; margin-bottom: 28rpx; animation: slideUp 0.5s ease-out forwards; opacity: 0; transform: translateY(50rpx); } .wallet-card:nth-child(1) { animation-delay: 0.1s; } .wallet-card:nth-child(2) { animation-delay: 0.2s; } .wallet-card:nth-child(3) { animation-delay: 0.3s; } .wallet-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 8rpx; background: linear-gradient(115deg, #62B2FF -1.34%, #3C80F6 100%); opacity: 0; transition: opacity 0.3s ease; } .wallet-card:active { transform: translateY(4rpx); box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.06); } .wallet-card:active::before { opacity: 1; } /* 卡片头部样式 */ .card-header { padding: 30rpx 35rpx; background: linear-gradient(115deg, #62B2FF -1.34%, #3C80F6 100%); color: #fff; border-radius: 0 0 20rpx 20rpx; position: relative; overflow: hidden; } .card-header::after { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.5s ease; } .wallet-card:active .card-header::after { left: 100%; } .tenant-name { font-size: 32rpx; font-weight: 600; display: block; text-align: center; position: relative; z-index: 1; letter-spacing: 1rpx; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 0 20rpx; } /* 卡片主体样式 */ .card-body { padding: 30rpx; } /* 余额项样式 */ .balance-item { display: flex; justify-content: space-between; align-items: center; padding: 20rpx 0; border-bottom: 1rpx solid #f0f0f0; } .balance-item:last-child { border-bottom: none; } .balance-label { font-size: 28rpx; color: #666; font-weight: 500; } .balance-value { font-size: 34rpx; color: #4facfe; font-weight: 700; font-family: 'Arial', sans-serif; letter-spacing: 1rpx; } .balance-value.oil-card { color: #43e97b; } /* 金额样式 */ .balance-value::before { content: '¥'; font-size: 26rpx; margin-right: 5rpx; font-weight: normal; } /* 空状态样式 */ .empty-state { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 100rpx 0; color: #999; } .empty-icon { width: 150rpx; height: 150rpx; margin-bottom: 20rpx; opacity: 0.5; } .empty-text { font-size: 28rpx; }