/* 结算页面样式 */ page { background: linear-gradient(135deg, #1A1A1A 0%, #252525 100%); min-height: 100vh; } .container { padding: 20rpx 30rpx 140rpx; } /* 身份提示 */ .role-tip { background: rgba(255, 255, 255, 0.95); border-radius: 16rpx; padding: 24rpx; margin-bottom: 20rpx; display: flex; align-items: center; gap: 16rpx; box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.15); } .role-icon { font-size: 40rpx; } .role-text { flex: 1; font-size: 28rpx; color: #E0E0E0; line-height: 1.5; } /* 结算卡片 */ .settlement-card, .summary-card { background: rgba(255, 255, 255, 0.95); border-radius: 20rpx; padding: 32rpx 24rpx; margin-bottom: 20rpx; box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.15); } .card-title { font-size: 32rpx; font-weight: bold; color: #FFFFFF; margin-bottom: 24rpx; } /* 结算列表 */ .settlement-list { display: flex; flex-direction: column; gap: 20rpx; } .settlement-item { display: grid; grid-template-columns: 1fr auto 1fr auto; gap: 16rpx; align-items: center; padding: 20rpx; background: #f8f9fa; border-radius: 16rpx; transition: all 0.3s; } .settlement-item:active { background: #f0f0f0; transform: scale(0.98); } .player-from, .player-to { display: flex; align-items: center; gap: 12rpx; min-width: 0; } .avatar { width: 60rpx; height: 60rpx; border-radius: 50%; border: 2rpx solid rgba(0, 0, 0, 0.1); flex-shrink: 0; } .nickname { font-size: 28rpx; color: #FFFFFF; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .settlement-action { padding: 8rpx 16rpx; background: rgba(0, 0, 0, 0.1); border-radius: 8rpx; } .action-text { font-size: 24rpx; color: #1A1A1A; white-space: nowrap; } .amount { font-size: 32rpx; font-weight: bold; text-align: right; white-space: nowrap; } .amount.win { color: #50C878; } .amount.lose { color: #fa5151; } /* 空状态 */ .empty-state { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 80rpx 0; } .empty-icon { font-size: 80rpx; margin-bottom: 16rpx; opacity: 0.5; } .empty-text { font-size: 28rpx; color: #B0B0B0; } /* 汇总卡片 */ .summary-row { display: flex; justify-content: space-between; align-items: center; padding: 16rpx 0; border-bottom: 1rpx solid #f0f0f0; } .summary-row:last-child { border-bottom: none; } .summary-label { font-size: 28rpx; color: #E0E0E0; } .summary-value { font-size: 32rpx; font-weight: bold; color: #FFFFFF; } .summary-value.win { color: #50C878; } .summary-value.lose { color: #fa5151; } /* 底部按钮 */ .bottom-bar { position: fixed; bottom: 0; left: 0; right: 0; background: #1A1A1A; padding: 16rpx 30rpx; box-shadow: 0 -4rpx 20rpx rgba(0, 0, 0, 0.1); z-index: 100; padding-bottom: env(safe-area-inset-bottom); } .settle-btn { width: 100%; height: 88rpx; border-radius: 16rpx; font-size: 32rpx; font-weight: bold; border: none; color: white; } .btn-primary { background: linear-gradient(135deg, #1A1A1A 0%, #252525 100%); box-shadow: 0 8rpx 24rpx rgba(0, 0, 0, 0.4); } .btn-primary:active { opacity: 0.9; transform: translateY(2rpx); } .btn-danger { background: linear-gradient(135deg, #ff3b30 0%, #e02020 100%); box-shadow: 0 8rpx 24rpx rgba(255, 59, 48, 0.4); } .btn-danger:active { opacity: 0.9; transform: translateY(2rpx); }