.page { min-height: 100vh; background: linear-gradient(180deg, #F8F5FF 0%, #FFFFFF 100%); padding-bottom: env(safe-area-inset-bottom); } /* 顶部导航栏已移除,改用全局 unified-header */ .wrap { padding: 0 32rpx; } .card { background: #ffffff; border-radius: 48rpx; padding: 40rpx; box-shadow: 0 4rpx 16rpx rgba(176, 106, 179, 0.08); margin-bottom: 32rpx; border: 2rpx solid #FDF4F9; } /* Balance Card */ .balance-card { background: linear-gradient(135deg, #FFFFFF 0%, #FDF4F9 100%); } .balance-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24rpx; } .label { font-size: 28rpx; font-weight: 700; color: #6B7280; } .balance-row { display: flex; align-items: baseline; gap: 8rpx; margin-bottom: 32rpx; } .currency { font-size: 40rpx; font-weight: 900; color: #111827; } .value { font-size: 80rpx; font-weight: 900; color: #111827; line-height: 1; letter-spacing: -2rpx; } .withdraw-tip { display: inline-flex; align-items: center; gap: 8rpx; padding: 12rpx 24rpx; background: rgba(176, 106, 179, 0.1); border-radius: 999rpx; } .withdraw-tip text { font-size: 24rpx; color: #B06AB3; font-weight: 600; } /* Form Card */ .field-group { margin-bottom: 48rpx; } .f-label { display: block; font-size: 28rpx; font-weight: 800; color: #111827; margin-bottom: 20rpx; } .input-wrapper { background: #F9FAFB; border-radius: 32rpx; padding: 8rpx 32rpx; display: flex; align-items: center; height: 112rpx; border: 2rpx solid transparent; transition: all 0.3s; } .input-wrapper:focus-within { background: #FFFFFF; border-color: #B06AB3; box-shadow: 0 0 0 4rpx rgba(176, 106, 179, 0.1); } .input-prefix { font-size: 40rpx; font-weight: 900; color: #111827; margin-right: 16rpx; } .input { flex: 1; height: 100%; font-size: 40rpx; font-weight: 900; color: #111827; } .placeholder { color: #D1D5DB; font-weight: 600; } .all-btn { font-size: 28rpx; font-weight: 700; color: #B06AB3; padding: 12rpx 24rpx; } .select-wrapper { background: #F9FAFB; border-radius: 32rpx; padding: 24rpx 32rpx; display: flex; align-items: center; justify-content: space-between; height: 112rpx; } .select-left { display: flex; align-items: center; gap: 16rpx; } .wechat-icon-box { width: 64rpx; height: 64rpx; background: #FFFFFF; border-radius: 50%; display: flex; align-items: center; justify-content: center; } .select-text { font-size: 30rpx; font-weight: 700; color: #111827; } .submit-btn { width: 100%; height: 104rpx; border-radius: 52rpx; background: linear-gradient(135deg, #B06AB3 0%, #9B4D9E 100%); color: #ffffff; font-size: 36rpx; font-weight: 900; box-shadow: 0 20rpx 40rpx rgba(176, 106, 179, 0.3); display: flex; align-items: center; justify-content: center; margin-top: 64rpx; letter-spacing: 2rpx; transition: opacity 0.3s; } .submit-btn[disabled] { opacity: 0.6; box-shadow: none; } /* Records Section */ .records-section { margin-top: 48rpx; padding-bottom: 64rpx; } .section-header { margin-bottom: 24rpx; padding: 0 8rpx; } .section-title { font-size: 32rpx; font-weight: 800; color: #111827; } .record-list { display: flex; flex-direction: column; gap: 24rpx; } .record-item { background: #ffffff; border-radius: 32rpx; padding: 32rpx; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.02); border: 2rpx solid #F9FAFB; } .record-info { display: flex; flex-direction: column; gap: 8rpx; flex: 1; } .record-type { font-size: 28rpx; font-weight: 700; color: #111827; } .record-time { font-size: 24rpx; color: #9CA3AF; } .record-amount { display: flex; flex-direction: column; align-items: flex-end; gap: 8rpx; } .amount-value { font-size: 32rpx; font-weight: 800; color: #111827; } .record-status { font-size: 22rpx; font-weight: 700; padding: 4rpx 16rpx; border-radius: 999rpx; } /* Rejection Reason Style */ .reject-reason { width: 100%; margin-top: 20rpx; padding-top: 20rpx; border-top: 2rpx dashed #F3F4F6; display: flex; flex-direction: row; align-items: flex-start; } .reason-label { font-size: 24rpx; font-weight: 700; color: #DC2626; white-space: nowrap; } .reason-content { font-size: 24rpx; color: #4B5563; line-height: 1.4; } .status-pending { background: #FEF3C7; color: #D97706; } .status-processing { background: #DBEAFE; color: #2563EB; } .status-completed { background: #D1FAE5; color: #059669; } .status-rejected { background: #FEE2E2; color: #DC2626; }