page { background: #F8FAFE; font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', sans-serif; color: #1A1A1A; } /* .page-bg 与全局相同,仅保留差异 */ .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: rgba(255, 255, 255, 0.78); backdrop-filter: blur(25rpx); border-radius: 32rpx; padding: 40rpx 32rpx; box-shadow: 0 12rpx 40rpx rgba(0, 0, 0, 0.05); border: 1rpx solid rgba(255, 255, 255, 0.6); } .unreg-title, .section-title { font-size: 30rpx; font-weight: 700; color: #1A1A1A; display: block; margin-bottom: 16rpx; } .section-title-sm { font-size: 26rpx; margin-bottom: 12rpx; color: #444; } /* .unreg-input 与 .input-rounded 类似,仅保留差异 */ .unreg-input { height: 80rpx; border-radius: 40rpx; margin-bottom: 16rpx; } .ph { color: #999; } /* .unreg-btn 与 .btn .btn-secondary 类似,仅保留差异 */ .unreg-btn { width: 100%; height: 80rpx; background: rgba(255, 255, 255, 0.65); border-radius: 40rpx; border: 1rpx solid rgba(0, 0, 0, 0.06); margin-bottom: 16rpx; } /* .unreg-btn-secondary 与 .btn-secondary 类似,仅保留差异 */ .unreg-btn-secondary { margin-bottom: 0; background: rgba(255, 255, 255, 0.45); } .unreg-btn-text { font-size: 28rpx; font-weight: 600; } .unreg-clear { display: flex; align-items: center; justify-content: center; margin-top: 28rpx; padding-top: 20rpx; border-top: 1rpx solid rgba(0, 0, 0, 0.05); } .unreg-clear-icon { width: 28rpx; height: 28rpx; margin-right: 10rpx; opacity: 0.65; } .unreg-clear-text { font-size: 22rpx; color: #888; } .main-body { position: relative; z-index: 2; padding: 0 24rpx 150rpx; } /* .refresh-btn 与全局 .refresh-btn .refresh-btn--light 完全相同,删除 */ /* .refresh-icon 与全局 .refresh-icon 完全相同,删除 */ .user-card { position: relative; margin-top: 48rpx; margin-bottom: 20rpx; border-radius: 28rpx; overflow: hidden; min-height: 120rpx; box-shadow: 0 8rpx 28rpx rgba(0, 0, 0, 0.06); } .user-card-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .user-card-inner { position: relative; z-index: 1; display: flex; align-items: center; padding: 20rpx 24rpx; background: rgba(255, 255, 255, 0.72); backdrop-filter: blur(12rpx); } /* .user-avatar 与 .avatar-circle .avatar-md 类似,仅保留差异 */ .user-avatar { margin-right: 20rpx; } .user-info { flex: 1; min-width: 0; } .name-row { display: flex; align-items: center; flex-wrap: wrap; margin-bottom: 8rpx; } .user-name { font-size: 30rpx; font-weight: 700; margin-right: 6rpx; } .role-tags { display: flex; flex-wrap: wrap; gap: 2rpx; align-items: center; margin-left: 2rpx; } .role-tag { font-size: 18rpx; padding: 4rpx 12rpx; border-radius: 12rpx; font-weight: 600; line-height: 1.35; border: 1rpx solid transparent; } .role-tag-dashou { background: #e8edf3; color: #2c3e50; border-color: #b8c4d0; } .role-tag-guanshi { background: #edf0ea; color: #3d5238; border-color: #c2d0bc; } .role-tag-zuzhang { background: #f0ece8; color: #5c4a38; border-color: #d4c8b8; } .role-tag-kaohe { background: #eceef3; color: #3a4460; border-color: #c0c8d8; } .uid-row { display: inline-flex; align-items: center; background: rgba(0, 0, 0, 0.03); border-radius: 20rpx; padding: 4rpx 14rpx; } .uid-text { font-size: 22rpx; margin-right: 8rpx; } .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: 22rpx; } .section-last { margin-bottom: 32rpx; } .section-head-line { display: flex; align-items: center; margin-bottom: 12rpx; } .section-head-icon { width: 32rpx; height: 32rpx; margin-right: 8rpx; opacity: 0.88; } .section-title-sm { font-size: 22rpx; margin-bottom: 0; color: #555; font-weight: 600; } /* 黑卡 VIP */ .vip-black-card { position: relative; height: 152rpx; border-radius: 28rpx; overflow: hidden; margin-bottom: 16rpx; box-shadow: 0 12rpx 40rpx rgba(20, 20, 24, 0.18); } .vip-black-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .vip-black-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; background: linear-gradient(135deg, rgba(18, 18, 22, 0.72) 0%, rgba(38, 38, 44, 0.55) 100%); pointer-events: 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: 30rpx; font-weight: 700; color: #f3ead8; letter-spacing: 1rpx; } .vip-black-sub { display: block; font-size: 20rpx; color: rgba(243, 234, 216, 0.62); margin-top: 6rpx; } .vip-black-action { flex-shrink: 0; padding: 14rpx 28rpx; background: linear-gradient(135deg, rgba(243, 234, 216, 0.22) 0%, rgba(243, 234, 216, 0.1) 100%); border: 1rpx solid rgba(243, 234, 216, 0.35); border-radius: 999rpx; } .vip-black-go { font-size: 24rpx; font-weight: 600; color: #f3ead8; } /* 资产面板 */ .asset-panel { position: relative; border-radius: 28rpx; overflow: hidden; box-shadow: 0 12rpx 40rpx rgba(26, 43, 80, 0.1); border: 1rpx solid rgba(212, 175, 110, 0.28); } .asset-panel-fallback { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; background: linear-gradient(145deg, #faf6ee 0%, #ece4d4 45%, #e6edf8 100%); } .asset-panel-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; } .asset-panel-inner { position: relative; z-index: 2; padding: 20rpx 18rpx 14rpx; background: rgba(255, 255, 255, 0.62); backdrop-filter: blur(20rpx); } .asset-panel-head { display: flex; align-items: center; margin-bottom: 14rpx; } .asset-panel-head-icon { width: 30rpx; height: 30rpx; margin-right: 8rpx; } .asset-panel-head-title { font-size: 28rpx; font-weight: 700; color: #222; } .money-strip { display: flex; gap: 12rpx; margin-bottom: 14rpx; overflow-x: auto; } .money-block { flex: 1; min-width: 200rpx; border-radius: 20rpx; padding: 16rpx 14rpx; background: rgba(0, 0, 0, 0.025); border: 1rpx solid rgba(0, 0, 0, 0.05); } .money-label { font-size: 20rpx; color: #888; display: block; } .money-val { font-size: 34rpx; font-weight: 800; display: block; margin: 6rpx 0 4rpx; line-height: 1.15; color: #1A1A1A; } .money-tip { font-size: 18rpx; color: #AAA; } .stats-grid { display: flex; flex-wrap: wrap; border-top: 1rpx solid rgba(0, 0, 0, 0.05); padding-top: 12rpx; } .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: #999; display: block; margin-top: 4rpx; } /* 排行榜 */ .rank-section { margin-bottom: 22rpx; padding: 0 2rpx; } .rank-hub-head { display: flex; align-items: center; margin-bottom: 18rpx; } .rank-hub-head-icon { width: 32rpx; height: 32rpx; margin-right: 10rpx; } .rank-hub-title { font-size: 28rpx; font-weight: 700; color: #222; display: block; } .rank-hub-sub { font-size: 20rpx; color: #999; margin-top: 2rpx; display: block; } .rank-grid { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: 18rpx; } .rank-cell { width: 48.5%; height: 156rpx; position: relative; border-radius: 24rpx; overflow: hidden; filter: drop-shadow(0 8rpx 18rpx rgba(0, 0, 0, 0.08)); } .rank-shape-left { clip-path: polygon( 0 8%, 5% 0, 95% 0, 100% 5%, 87% 95%, 5% 100%, 0 92% ); } .rank-shape-right { clip-path: polygon( 14% 5%, 5% 0, 95% 0, 100% 5%, 100% 95%, 95% 100%, 5% 100%, 0 95%, 14% 8% ); } .rank-cell-inner { width: 100%; height: 100%; position: relative; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 0 22rpx 0 20rpx; box-sizing: border-box; border-radius: 24rpx; overflow: hidden; } .rank-bg-icon { position: absolute; width: 148rpx; height: 148rpx; right: -18rpx; top: 50%; transform: translateY(-50%) rotate(-10deg); opacity: 0.2; z-index: 0; pointer-events: none; } .rank-content { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; } .rank-main-icon { width: 76rpx; height: 76rpx; margin-bottom: 8rpx; filter: drop-shadow(0 6rpx 16rpx rgba(0, 0, 0, 0.22)); } .rank-shape-right .rank-cell-inner { padding: 0 20rpx 0 28rpx; align-items: flex-end; } .rank-shape-right .rank-bg-icon { right: auto; left: -18rpx; transform: translateY(-50%) rotate(10deg); } .rank-shape-right .rank-content { align-items: flex-end; } .rank-theme-blue .rank-cell-inner { background: linear-gradient(135deg, #7ec4ff 0%, #4d9ef5 55%, #3b82e8 100%); } .rank-theme-gold .rank-cell-inner { background: linear-gradient(135deg, #ffe28a 0%, #ffc94d 55%, #f5a623 100%); } .rank-theme-purple .rank-cell-inner { background: linear-gradient(135deg, #c4b5fd 0%, #9b87f5 55%, #7c6be8 100%); } .rank-theme-orange .rank-cell-inner { background: linear-gradient(135deg, #ffb896 0%, #ff8f6b 55%, #f56a4a 100%); } .rank-cell-name { font-size: 26rpx; font-weight: 700; color: #fff; text-shadow: 0 1rpx 4rpx rgba(0, 0, 0, 0.15); line-height: 1.2; } .rank-cell-sub { font-size: 18rpx; color: rgba(255, 255, 255, 0.88); margin-top: 2rpx; } .rank-shape-right .rank-cell-name, .rank-shape-right .rank-cell-sub { text-align: right; } /* 功能面板 */ .func-panel { position: relative; border-radius: 28rpx; overflow: hidden; box-shadow: 0 6rpx 24rpx rgba(0, 0, 0, 0.04); } .func-panel-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .func-grid { position: relative; z-index: 1; display: flex; flex-wrap: wrap; padding: 10rpx 4rpx; background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(12rpx); } .func-cell { width: 25%; display: flex; flex-direction: column; align-items: center; padding: 16rpx 0; box-sizing: border-box; } .func-icon { width: 52rpx; height: 52rpx; margin-bottom: 10rpx; } .func-label { font-size: 20rpx; color: #444; text-align: center; line-height: 1.25; padding: 0 4rpx; } .func-grid-sparse .func-cell { width: 25%; padding: 22rpx 0; } .func-grid-sparse .func-icon { width: 58rpx; height: 58rpx; margin-bottom: 12rpx; } .func-grid-sparse .func-label { font-size: 24rpx; } .layout-sparse-padding { padding-bottom: 80rpx; } .money-strip-single .money-block { min-width: 100%; } .money-strip-single .money-val { font-size: 44rpx; } .auth-inline { display: flex; align-items: center; gap: 12rpx; background: rgba(255, 255, 255, 0.72); border-radius: 24rpx; padding: 12rpx 16rpx; border: 1rpx solid rgba(255, 255, 255, 0.5); } .auth-input { flex: 1; height: 64rpx; background: #fff; border-radius: 32rpx; padding: 0 24rpx; font-size: 26rpx; } .auth-btn { flex-shrink: 0; height: 64rpx; line-height: 64rpx; padding: 0 28rpx; background: rgba(0, 0, 0, 0.06); border-radius: 32rpx; font-size: 26rpx; font-weight: 600; } /* .list-card 与 .card 类似,仅保留差异 */ .list-card { position: relative; border-radius: 28rpx; box-shadow: 0 6rpx 24rpx rgba(0, 0, 0, 0.04); } .list-card-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .list-card-inner { position: relative; z-index: 1; background: rgba(255, 255, 255, 0.88); backdrop-filter: blur(12rpx); } /* .list-item 与全局 .list-item 类似,仅保留差异 */ .list-item { padding: 22rpx 20rpx; } .list-item:last-child { border-bottom: none; } /* .list-icon 与全局 .list-icon 类似,仅保留差异(缺少 flex-shrink:0) */ .list-icon { width: 36rpx; height: 36rpx; margin-right: 16rpx; } /* .list-text 与全局 .list-text 类似,仅保留差异 */ .list-text { font-size: 26rpx; } .list-sub { font-size: 20rpx; color: #999; margin-right: 8rpx; } /* .list-arrow 与全局 .list-arrow 类似,仅保留差异 */ .list-arrow { opacity: 0.45; } /* 客服入口 */ .kefu-banner { position: relative; margin-bottom: 18rpx; border-radius: 28rpx; overflow: hidden; box-shadow: 0 10rpx 32rpx rgba(44, 62, 80, 0.14); } .kefu-banner-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .kefu-banner-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; background: linear-gradient(135deg, rgba(36, 48, 62, 0.82) 0%, rgba(52, 68, 88, 0.68) 100%); } .kefu-banner-content { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: 22rpx 24rpx; } .kefu-banner-left { display: flex; align-items: center; flex: 1; min-width: 0; } .kefu-banner-icon { width: 44rpx; height: 44rpx; margin-right: 16rpx; flex-shrink: 0; } .kefu-banner-title { display: block; font-size: 28rpx; font-weight: 700; color: #fff; } .kefu-banner-sub { display: block; font-size: 20rpx; color: rgba(255, 255, 255, 0.72); margin-top: 4rpx; } .kefu-banner-btn { flex-shrink: 0; padding: 12rpx 26rpx; font-size: 24rpx; color: #2c3e50; font-weight: 600; background: rgba(255, 255, 255, 0.92); border-radius: 999rpx; margin-left: 16rpx; } /* 总资产 */ .total-asset-row { position: relative; border-radius: 24rpx; overflow: hidden; margin-bottom: 14rpx; border: 1rpx solid rgba(212, 175, 110, 0.38); box-shadow: inset 0 1rpx 0 rgba(255, 255, 255, 0.85), 0 4rpx 16rpx rgba(0, 0, 0, 0.05); } .total-asset-fallback { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; background: linear-gradient(135deg, #faf6ee 0%, #f0e8d8 50%, #ebeef5 100%); } .total-asset-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; } .total-asset-inner { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: 22rpx 20rpx; background: rgba(255, 255, 255, 0.52); backdrop-filter: blur(14rpx); } .total-asset-left { flex: 1; min-width: 0; padding-right: 16rpx; } .total-asset-label { display: block; font-size: 22rpx; color: #777; } .total-asset-val { display: block; font-size: 46rpx; font-weight: 800; color: #3d3420; margin: 6rpx 0 10rpx; line-height: 1.1; letter-spacing: -0.5rpx; } .asset-breakdown-list { display: flex; flex-direction: column; gap: 4rpx; } .asset-breakdown-line { display: flex; align-items: center; justify-content: space-between; padding-right: 8rpx; } .breakdown-name { font-size: 20rpx; color: #888; } .breakdown-amt { font-size: 20rpx; color: #666; font-weight: 500; } /* .withdraw-btn 与 .btn-sm--dark 类似,仅保留差异 */ .withdraw-btn { flex-shrink: 0; min-width: 120rpx; height: 72rpx; line-height: 72rpx; text-align: center; padding: 0 28rpx; font-weight: 700; border-radius: 999rpx; box-shadow: 0 6rpx 20rpx rgba(44, 62, 80, 0.22); } .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-grid { position: relative; z-index: 1; display: flex; padding: 12rpx 8rpx; background: rgba(255, 255, 255, 0.88); backdrop-filter: blur(12rpx); } .auth-cell { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 14rpx 6rpx; } .auth-cell-icon { width: 48rpx; height: 48rpx; margin-bottom: 8rpx; } .auth-cell-name { font-size: 22rpx; color: #444; margin-bottom: 6rpx; } .auth-cell-tag { font-size: 18rpx; color: #888; padding: 2rpx 10rpx; border-radius: 999rpx; background: rgba(0, 0, 0, 0.04); } .auth-cell-tag-done { color: #5a6b57; background: rgba(90, 107, 87, 0.1); } /* .loading-mask 与全局 .loading-mask .loading-mask--light 完全相同,删除 */ /* .loading-spinner 与 .spinner--md 类似,仅保留差异 */ .loading-spinner { width: 52rpx; height: 52rpx; border: 3rpx solid rgba(0, 0, 0, 0.08); border-top-color: #1A1A1A; }