<view wx:if="{{mounted}}" class="guide-popup {{visible ? 'is-visible' : ''}}">
    <view class="guide-mask" bindtap="handleClose"></view>

    <view class="guide-shell" catchtap="noop" catchtouchmove="noop">
        <view class="guide-drag-bar"></view>

        <view class="guide-avatar-wrap">
            <image
                wx:if="{{avatarUrl}}"
                class="guide-avatar"
                src="{{avatarUrl}}"
                mode="aspectFill"
                bindtap="handlePreviewAvatar"
            />
            <view wx:else class="guide-avatar guide-avatar-fallback">{{avatarLetter}}</view>
        </view>

        <view class="guide-panel">
            <view class="guide-topbar">
                <view class="guide-name">{{displayName}}</view>
                <view class="guide-entry">
                    <image class="guide-entry-icon" src="./icons/user.svg" mode="aspectFit" />
                    <text class="guide-entry-text">{{displaySubtitle}}</text>
                </view>
            </view>

            <view class="guide-balance-card">
                <view class="guide-balance-main">
                    <view class="guide-balance-label">{{balanceLabel}}</view>
                    <view class="guide-balance-value">￥{{amount}}</view>
                </view>

                <view class="guide-balance-actions">
                    <view class="guide-pill guide-pill-primary" data-key="withdraw" bindtap="handleQuickAction">
                        {{withdrawText}}
                    </view>
                    <view class="guide-pill" data-key="income-detail" bindtap="handleQuickAction">
                        {{incomeText}}
                    </view>
                </view>
            </view>

            <view class="guide-grid">
                <view
                    wx:for="{{menuItems}}"
                    wx:key="key"
                    class="guide-grid-item"
                    data-key="{{item.key}}"
                    bindtap="handleMenuTap"
                >
                    <image class="guide-grid-icon" src="{{item.icon}}" mode="aspectFit" />
                    <text class="guide-grid-label">{{item.label}}</text>
                </view>
            </view>
        </view>
    </view>
</view>
