/* 个人统计页面样式 */ page { background: linear-gradient(135deg, #1A1A1A 0%, #252525 100%); min-height: 100vh; } .container { padding: 30rpx; padding-bottom: 120rpx; } /* 用户头部 */ .user-header { display: flex; justify-content: space-between; align-items: center; padding: 32rpx 24rpx; margin-bottom: 20rpx; } .user-info { display: flex; align-items: center; gap: 16rpx; flex: 1; } .avatar { width: 96rpx; height: 96rpx; border-radius: 50%; border: 3rpx solid #fff; box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1); } .user-detail { display: flex; flex-direction: column; gap: 6rpx; } .nickname { font-size: 32rpx; font-weight: bold; color: #FFFFFF; } .user-desc { font-size: 24rpx; color: #B0B0B0; } .share-btn { padding: 16rpx 28rpx; background: linear-gradient(135deg, #ff9500 0%, #ff7700 100%); color: white; border-radius: 40rpx; font-size: 26rpx; border: none; } /* 时间范围选择 */ .time-range-bar { display: flex; gap: 12rpx; padding: 16rpx 24rpx; margin-bottom: 20rpx; } .range-btn { flex: 1; padding: 16rpx 0; background: #f8f8f8; border-radius: 24rpx; font-size: 28rpx; color: #E0E0E0; text-align: center; } .range-btn.active { background: linear-gradient(135deg, #50C878 0%, #06a854 100%); color: white; font-weight: bold; } /* 核心数据 */ .core-stats { padding: 32rpx 24rpx; margin-bottom: 20rpx; } .stats-row { display: flex; justify-content: space-around; align-items: baseline; padding-bottom: 24rpx; } .stat-item { display: flex; flex-direction: column; align-items: center; gap: 8rpx; flex: 1; } .stat-item.large { padding: 0 20rpx; } .stat-number { font-size: 36rpx; font-weight: bold; color: #FFFFFF; line-height: 1.2; } .stat-number.win { color: #50C878; } .stat-number.lose { color: #ff3b30; } .stat-item.large .stat-number { font-size: 52rpx; line-height: 1.2; } .stat-label { font-size: 24rpx; color: #B0B0B0; } .stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20rpx; padding-top: 24rpx; } /* 最佳记录 */ .best-records { padding: 24rpx; margin-bottom: 20rpx; } .records-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16rpx; margin-top: 20rpx; } .record-item { display: flex; align-items: center; gap: 12rpx; padding: 20rpx; background: #f8f9fa; border-radius: 12rpx; } .record-icon { font-size: 40rpx; } .record-info { flex: 1; display: flex; flex-direction: column; gap: 6rpx; } .record-label { font-size: 24rpx; color: #B0B0B0; } .record-value { font-size: 32rpx; font-weight: bold; color: #FFFFFF; } /* 游戏类型统计 */ .game-type-stats { padding: 24rpx; margin-bottom: 20rpx; } .game-types-list { display: flex; flex-direction: column; gap: 16rpx; margin-top: 20rpx; } .game-type-item { padding: 20rpx; background: #f8f9fa; border-radius: 12rpx; } .type-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16rpx; } .type-name { font-size: 30rpx; font-weight: bold; color: #FFFFFF; } .type-games { font-size: 24rpx; color: #B0B0B0; } .type-stats { display: flex; gap: 32rpx; } .type-stat { flex: 1; display: flex; justify-content: space-between; align-items: center; padding: 12rpx 16rpx; background: #1A1A1A; border-radius: 8rpx; } .type-stat .stat-label { font-size: 24rpx; color: #B0B0B0; } .type-stat .stat-value { font-size: 28rpx; font-weight: bold; color: #FFFFFF; } /* 趋势图 */ .trend-chart { padding: 24rpx; margin-bottom: 20rpx; } .chart-summary { display: flex; justify-content: space-around; padding: 20rpx 0; margin-bottom: 20rpx; border-bottom: 1rpx solid #f0f0f0; } .summary-item { display: flex; flex-direction: column; align-items: center; gap: 8rpx; } .summary-label { font-size: 24rpx; color: #B0B0B0; } .summary-value { font-size: 32rpx; font-weight: bold; color: #FFFFFF; } .summary-value.win { color: #50C878; } .summary-value.lose { color: #ff3b30; } .chart-container { background: #f8f9fa; border-radius: 12rpx; padding: 20rpx 12rpx; overflow-x: auto; } .chart-wrapper { display: flex; gap: 8rpx; } .chart-y-axis { display: flex; flex-direction: column; justify-content: space-between; height: 280rpx; padding: 20rpx 0 50rpx; min-width: 50rpx; } .y-axis-label { font-size: 20rpx; color: #B0B0B0; text-align: right; line-height: 1; } .chart-bars { flex: 1; display: flex; align-items: center; justify-content: space-around; height: 280rpx; padding: 20rpx 8rpx 0; } .bar-item { flex: 1; display: flex; flex-direction: column; align-items: center; max-width: 100rpx; height: 100%; } .bar-column { flex: 1; width: 100%; display: flex; flex-direction: column; align-items: center; margin-bottom: 12rpx; } .bar-upper { flex: 1; width: 100%; display: flex; align-items: flex-end; justify-content: center; } .bar-baseline { width: 100%; height: 2rpx; background: #ddd; position: relative; } .bar-lower { flex: 1; width: 100%; display: flex; align-items: flex-start; justify-content: center; } .bar { width: 40rpx; min-height: 8rpx; } .bar-win { background: linear-gradient(180deg, #06d66f 0%, #50C878 100%); box-shadow: 0 2rpx 8rpx rgba(7, 193, 96, 0.3); border-radius: 6rpx 6rpx 0 0; } .bar-lose { background: linear-gradient(0deg, #ff5449 0%, #ff3b30 100%); box-shadow: 0 2rpx 8rpx rgba(255, 59, 48, 0.3); border-radius: 0 0 6rpx 6rpx; } .bar-label { font-size: 22rpx; color: #E0E0E0; white-space: nowrap; text-align: center; line-height: 1.2; margin-top: 4rpx; } /* 操作按钮 */ .action-buttons { margin: 40rpx 0rpx 100rpx 0rpx; } .action-btn { padding: 28rpx; text-align: center; border-radius: 16rpx; font-size: 32rpx; font-weight: bold; border: none; } .action-btn.primary { background: linear-gradient(135deg, #50C878 0%, #06a854 100%); color: white; box-shadow: 0 8rpx 20rpx rgba(7, 193, 96, 0.3); } /* 为TabBar预留空间 */ .container { padding-bottom: 120rpx; }