/* 打手端 */ page { background: #f5f5f5; color: #1A1A1A; } .page-bg { opacity: 0.42; } /* 未注册 */ .unreg-area { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; min-height: 100vh; padding: 0 40rpx; } .unreg-card { width: 100%; background: #fff; border-radius: 16rpx; padding: 48rpx 36rpx; box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06); } .unreg-title, .section-title { font-size: 30rpx; font-weight: 700; color: #1A1A1A; display: block; margin-bottom: 20rpx; } .section-title-sm { font-size: 26rpx; margin-bottom: 0; color: #333; } .unreg-input { height: 80rpx; border-radius: 12rpx; margin-bottom: 20rpx; background: #f7f7f7; padding: 0 24rpx; font-size: 28rpx; border: 1rpx solid #e8e8e8; } .ph { color: #bbb; } .unreg-btn { width: 100%; height: 80rpx; background: #333; border-radius: 12rpx; margin-bottom: 16rpx; display: flex; align-items: center; justify-content: center; } .unreg-btn-secondary { margin-bottom: 0; background: #f5f5f5; border: 1rpx solid #e0e0e0; } .unreg-btn-secondary .unreg-btn-text { color: #555; } .unreg-btn-text { font-size: 28rpx; font-weight: 600; color: #fff; } .unreg-clear { display: flex; align-items: center; justify-content: center; margin-top: 24rpx; padding-top: 20rpx; border-top: 1rpx solid #f0f0f0; } .unreg-clear-icon { width: 28rpx; height: 28rpx; margin-right: 8rpx; opacity: 0.5; } .unreg-clear-text { font-size: 22rpx; color: #999; } /* 主体 */ .main-body { position: relative; z-index: 2; padding: 0 24rpx 150rpx; } /* 用户卡片 */ .user-card { position: relative; margin-top: 24rpx; margin-bottom: 16rpx; border-radius: 16rpx; overflow: hidden; background: #fff; box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.05); } .user-card-bg { display: none; } .user-card-inner { display: flex; align-items: center; padding: 24rpx; } .user-avatar { width: 88rpx; height: 88rpx; border-radius: 50%; border: 2rpx solid #f0f0f0; object-fit: cover; flex-shrink: 0; margin-right: 20rpx; } .user-info { flex: 1; min-width: 0; } .name-row { display: flex; align-items: center; flex-wrap: wrap; margin-bottom: 6rpx; } .user-name { font-size: 30rpx; font-weight: 700; margin-right: 8rpx; } .role-tags { display: flex; flex-wrap: wrap; gap: 6rpx; align-items: center; } .role-tag { font-size: 18rpx; padding: 2rpx 10rpx; border-radius: 6rpx; font-weight: 500; line-height: 1.4; } .role-tag-dashou { background: #eef1f5; color: #4a5568; } .role-tag-guanshi { background: #eef5ee; color: #3d6b3d; } .role-tag-zuzhang { background: #f5f0eb; color: #7c5e3a; } .role-tag-kaohe { background: #eef0f5; color: #4a5070; } .uid-row { display: inline-flex; align-items: center; background: #f7f7f7; border-radius: 8rpx; padding: 4rpx 12rpx; } .uid-text { font-size: 22rpx; color: #999; margin-right: 6rpx; } .copy-icon { width: 22rpx; height: 22rpx; } /* 称号 */ .badge-zone { margin-bottom: 12rpx; } .badge-scroll { white-space: nowrap; } .badge-scroll-sub { margin-top: 6rpx; } .badge-tag-wrap { display: inline-block; transform: scale(0.68); transform-origin: left center; margin-right: -12rpx; } /* 分区卡片 */ .section-card { margin-bottom: 16rpx; } .section-last { margin-bottom: 24rpx; } .section-head-line { display: flex; align-items: center; margin-bottom: 10rpx; padding: 0 4rpx; } .section-head-icon { width: 28rpx; height: 28rpx; margin-right: 8rpx; opacity: 0.6; } /* VIP充值 */ .vip-black-card { position: relative; height: 140rpx; border-radius: 16rpx; overflow: hidden; margin-bottom: 12rpx; background: #1a1a2e; } .vip-black-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .vip-black-overlay { display: none; } .vip-black-body { position: relative; z-index: 2; height: 100%; display: flex; align-items: center; justify-content: space-between; padding: 0 28rpx; box-sizing: border-box; } .vip-black-text { flex: 1; min-width: 0; } .vip-black-title { display: block; font-size: 28rpx; font-weight: 700; color: #f0e6c8; } .vip-black-sub { display: block; font-size: 20rpx; color: rgba(240,230,200,0.5); margin-top: 4rpx; } .vip-black-action { flex-shrink: 0; padding: 10rpx 24rpx; border: 1rpx solid rgba(240,230,200,0.3); border-radius: 999rpx; } .vip-black-go { font-size: 22rpx; font-weight: 600; color: #f0e6c8; } /* 资产面板 */ .asset-panel { position: relative; border-radius: 16rpx; overflow: hidden; background: #fff; box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.04); } .asset-panel-fallback { display: none; } .asset-panel-bg { display: none; } .asset-panel-inner { padding: 20rpx 20rpx 14rpx; } .asset-panel-head { display: flex; align-items: center; margin-bottom: 12rpx; } .asset-panel-head-icon { width: 28rpx; height: 28rpx; margin-right: 8rpx; } .asset-panel-head-title { font-size: 26rpx; font-weight: 700; color: #333; } /* 总资产 */ .total-asset-row { border-radius: 12rpx; overflow: hidden; margin-bottom: 12rpx; background: #faf8f4; border: 1rpx solid #efe8d8; } .total-asset-fallback { display: none; } .total-asset-bg { display: none; } .total-asset-inner { display: flex; align-items: center; justify-content: space-between; padding: 20rpx; } .total-asset-left { flex: 1; min-width: 0; padding-right: 16rpx; } .total-asset-label { display: block; font-size: 22rpx; color: #999; } .total-asset-val { display: block; font-size: 44rpx; font-weight: 800; color: #2c2416; margin: 4rpx 0 8rpx; line-height: 1.1; } .asset-breakdown-list { display: flex; flex-direction: column; gap: 2rpx; } .asset-breakdown-line { display: flex; align-items: center; justify-content: space-between; padding-right: 8rpx; } .breakdown-name { font-size: 20rpx; color: #aaa; } .breakdown-amt { font-size: 20rpx; color: #777; font-weight: 500; } .withdraw-btn { flex-shrink: 0; min-width: 110rpx; height: 64rpx; line-height: 64rpx; text-align: center; padding: 0 24rpx; font-weight: 700; font-size: 24rpx; border-radius: 999rpx; background: #333; color: #fff; } /* 统计格子 */ .stats-grid { display: flex; flex-wrap: wrap; border-top: 1rpx solid #f0f0f0; padding-top: 10rpx; } .mini-stat { width: 20%; text-align: center; padding: 8rpx 0; box-sizing: border-box; } .mini-val { font-size: 24rpx; font-weight: 700; color: #333; display: block; } .mini-lbl { font-size: 18rpx; color: #aaa; display: block; margin-top: 2rpx; } /* 排行榜 */ .rank-section { margin-bottom: 16rpx; padding: 0 2rpx; } .rank-hub-head { display: flex; align-items: center; margin-bottom: 12rpx; padding: 0 4rpx; } .rank-hub-head-icon { width: 28rpx; height: 28rpx; margin-right: 8rpx; } .rank-hub-title { font-size: 26rpx; font-weight: 700; color: #333; display: block; } .rank-hub-sub { font-size: 20rpx; color: #bbb; margin-top: 2rpx; display: block; } .rank-grid { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: 12rpx; } .rank-cell { width: 48.5%; height: 140rpx; position: relative; border-radius: 16rpx; overflow: hidden; box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.08); } .rank-shape-left, .rank-shape-right { clip-path: none; } .rank-cell-inner { width: 100%; height: 100%; position: relative; display: flex; align-items: center; padding: 0 20rpx; box-sizing: border-box; border-radius: 16rpx; overflow: hidden; } .rank-bg-icon { position: absolute; width: 120rpx; height: 120rpx; right: -12rpx; top: 50%; transform: translateY(-50%) rotate(-10deg); opacity: 0.15; z-index: 0; pointer-events: none; } .rank-content { position: relative; z-index: 1; } .rank-main-icon { width: 56rpx; height: 56rpx; margin-bottom: 6rpx; } .rank-shape-right .rank-cell-inner { padding: 0 20rpx; flex-direction: row-reverse; } .rank-shape-right .rank-bg-icon { right: auto; left: -12rpx; transform: translateY(-50%) rotate(10deg); } .rank-shape-right .rank-content { text-align: right; } .rank-theme-blue .rank-cell-inner { background: linear-gradient(135deg, #5ba3e6, #3b82e8); } .rank-theme-gold .rank-cell-inner { background: linear-gradient(135deg, #f0c850, #e8a820); } .rank-theme-purple .rank-cell-inner { background: linear-gradient(135deg, #9b87f5, #7c6be8); } .rank-theme-orange .rank-cell-inner { background: linear-gradient(135deg, #f08050, #e05a30); } .rank-cell-name { font-size: 24rpx; font-weight: 700; color: #fff; line-height: 1.2; } .rank-cell-sub { font-size: 18rpx; color: rgba(255,255,255,0.8); margin-top: 2rpx; } .rank-shape-right .rank-cell-name, .rank-shape-right .rank-cell-sub { text-align: right; } /* 功能面板 */ .func-panel { position: relative; border-radius: 16rpx; overflow: hidden; background: #fff; box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.04); } .func-panel-bg { display: none; } .func-grid { display: flex; flex-wrap: wrap; padding: 8rpx 4rpx; } .func-cell { width: 25%; display: flex; flex-direction: column; align-items: center; padding: 16rpx 0; box-sizing: border-box; } .func-icon { width: 48rpx; height: 48rpx; margin-bottom: 8rpx; } .func-label { font-size: 20rpx; color: #555; text-align: center; line-height: 1.25; padding: 0 4rpx; } .func-grid-sparse .func-cell { padding: 20rpx 0; } .func-grid-sparse .func-icon { width: 52rpx; height: 52rpx; margin-bottom: 10rpx; } .func-grid-sparse .func-label { font-size: 22rpx; } .layout-sparse-padding { padding-bottom: 80rpx; } /* 列表卡片 */ .list-card { position: relative; border-radius: 16rpx; overflow: hidden; background: #fff; box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.04); } .list-card-bg { display: none; } .list-card-inner { position: relative; z-index: 1; } .list-item { display: flex; align-items: center; padding: 22rpx 20rpx; border-bottom: 1rpx solid #f5f5f5; } .list-item:last-child { border-bottom: none; } .list-icon { width: 36rpx; height: 36rpx; margin-right: 16rpx; flex-shrink: 0; } .list-text { flex: 1; font-size: 26rpx; color: #333; } .list-sub { font-size: 20rpx; color: #bbb; margin-right: 8rpx; } .list-arrow { width: 20rpx; height: 20rpx; opacity: 0.3; flex-shrink: 0; } /* 客服入口 */ .kefu-banner { position: relative; margin-bottom: 16rpx; border-radius: 16rpx; overflow: hidden; background: #2c3e50; } .kefu-banner-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .kefu-banner-overlay { display: none; } .kefu-banner-content { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: 20rpx 24rpx; } .kefu-banner-left { display: flex; align-items: center; flex: 1; min-width: 0; } .kefu-banner-icon { width: 40rpx; height: 40rpx; margin-right: 14rpx; flex-shrink: 0; } .kefu-banner-title { display: block; font-size: 26rpx; font-weight: 700; color: #fff; } .kefu-banner-sub { display: block; font-size: 20rpx; color: rgba(255,255,255,0.6); margin-top: 2rpx; } .kefu-banner-btn { flex-shrink: 0; padding: 10rpx 22rpx; font-size: 22rpx; color: #2c3e50; font-weight: 600; background: #fff; border-radius: 999rpx; margin-left: 16rpx; } /* 身份认证 */ .auth-grid { position: relative; z-index: 1; display: flex; padding: 12rpx 8rpx; } .auth-grid-dynamic { flex-wrap: wrap; justify-content: flex-start; gap: 0 24rpx; } .auth-grid-dynamic .auth-cell { width: auto; flex: 0 0 auto; min-width: 140rpx; box-sizing: border-box; } .auth-cell { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 14rpx 6rpx; } .auth-cell-icon { width: 44rpx; height: 44rpx; margin-bottom: 8rpx; } .auth-cell-name { font-size: 22rpx; color: #555; margin-bottom: 4rpx; } .auth-cell-tag { font-size: 18rpx; color: #bbb; padding: 2rpx 10rpx; border-radius: 999rpx; background: #f5f5f5; } .auth-cell-tag-done { color: #5a6b57; background: #eef5ee; } /* 加载 */ .loading-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255,255,255,0.7); display: flex; align-items: center; justify-content: center; z-index: 10000; } .loading-spinner { width: 48rpx; height: 48rpx; border: 4rpx solid #e8e8e8; border-top-color: #333; border-radius: 50%; animation: spin 0.8s linear infinite; }