.gift-detail-container { min-height: 100vh; background: #F3F4F6; padding-bottom: 160rpx; } .image-section { width: 100%; height: 600rpx; background: #FFFFFF; } .gift-image { width: 100%; height: 100%; } .info-section { background: #FFFFFF; margin-top: 20rpx; padding: 40rpx; } .gift-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 32rpx; padding-bottom: 32rpx; border-bottom: 2rpx solid #E5E7EB; } .gift-name { flex: 1; font-size: 40rpx; font-weight: bold; color: #1F2937; margin-right: 32rpx; } .gift-price { display: flex; align-items: center; flex-shrink: 0; } .heart-icon { width: 40rpx; height: 40rpx; margin-right: 8rpx; } .price-text { font-size: 48rpx; font-weight: bold; color: #A78BFA; } .gift-meta { margin-bottom: 32rpx; } .meta-item { display: flex; align-items: center; margin-bottom: 16rpx; } .meta-label { font-size: 28rpx; color: #6B7280; margin-right: 16rpx; } .meta-value { font-size: 28rpx; color: #1F2937; } .gift-description { margin-top: 32rpx; padding-top: 32rpx; border-top: 2rpx solid #E5E7EB; } .description-title { display: block; font-size: 32rpx; font-weight: 600; color: #1F2937; margin-bottom: 24rpx; } .description-text { display: block; font-size: 28rpx; color: #6B7280; line-height: 1.8; } .bottom-bar { position: fixed; bottom: 0; left: 0; right: 0; background: #FFFFFF; padding: 24rpx 40rpx; display: flex; align-items: center; box-shadow: 0 -4rpx 12rpx rgba(0, 0, 0, 0.05); z-index: 100; } .balance-info { flex: 1; margin-right: 32rpx; } .balance-label { display: block; font-size: 24rpx; color: #6B7280; margin-bottom: 8rpx; } .balance-value { display: block; font-size: 36rpx; font-weight: bold; color: #A78BFA; } .exchange-btn { flex-shrink: 0; background: linear-gradient(135deg, #A78BFA 0%, #C084FC 100%); color: #FFFFFF; border-radius: 50rpx; font-size: 32rpx; padding: 24rpx 64rpx; box-shadow: 0 4rpx 12rpx rgba(167, 139, 250, 0.3); } .exchange-btn::after { border: none; } .exchange-btn.disabled { background: #E5E7EB; color: #9CA3AF; box-shadow: none; } .loading-state { padding: 200rpx 0; text-align: center; } .loading-text { font-size: 28rpx; color: #9CA3AF; }