<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="theme-color" content="#ff69b4">
    <meta name="description" content="Piper Blush - The uncensored version of me is behind these links 👇">

    <link rel="canonical" href="https://singmylink.com/piperblush">

    <!-- Open Graph -->
    <meta property="og:title" content="Piper Blush | SingMyLink">
    <meta property="og:description" content="The uncensored version of me is behind these links 👇">
    <meta property="og:type" content="profile">
    <meta property="og:url" content="https://singmylink.com/piperblush">
    
    <meta property="og:image" content="https://singmylink.com/profile-pic/247061cfb806c8ebdac7eef77a879ed8.jpg">
    

    <!-- Twitter Card -->
    <meta name="twitter:card" content="summary">
    <meta name="twitter:title" content="Piper Blush | SingMyLink">
    <meta name="twitter:description" content="The uncensored version of me is behind these links 👇">
    
    <meta name="twitter:image" content="https://singmylink.com/profile-pic/247061cfb806c8ebdac7eef77a879ed8.jpg">
    

    <!-- Structured Data -->
    <script type="application/ld+json">
    {
        "@context": "https://schema.org",
        "@type": "ProfilePage",
        "mainEntity": {
            "@type": "Person",
            "name": "Piper Blush",
            "url": "https://singmylink.com/piperblush",
            "description": "The uncensored version of me is behind these links \ud83d\udc47",
            "image": "https://singmylink.com/profile-pic/247061cfb806c8ebdac7eef77a879ed8.jpg"
        }
    }
    </script>

    <title>Piper Blush | SingMyLink</title>

    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap" rel="stylesheet">

    <style>
        :root {
            --primary: #ff69b4;
            --primary-dark: #ff1493;
            --bg: #0a0a0a;
            --bg-card: #1a1a1a;
            --text: #ffffff;
            --text-muted: #888888;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        body {
            font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
            background: var(--bg);
            color: var(--text);
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            align-items: center;
            padding: 2rem 1rem;
        }

        .profile-container {
            max-width: 400px;
            width: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 1.5rem;
        }

        .profile-header {
            text-align: center;
        }

        .display-name {
            font-size: 1.75rem;
            font-weight: 700;
            margin-bottom: 0.5rem;
        }

        .bio {
            color: var(--text-muted);
            font-size: 1rem;
        }

        .song-player {
            width: 100%;
            background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
            border-radius: 16px;
            padding: 1rem;
            border: 1px solid rgba(255, 105, 180, 0.2);
            box-shadow: 0 4px 20px rgba(255, 105, 180, 0.1);
        }

        .song-player audio {
            display: none;
        }

        .player-row {
            display: flex;
            align-items: center;
            gap: 0.875rem;
        }

        .play-btn {
            width: 52px;
            height: 52px;
            background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
            border: none;
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.2s;
            flex-shrink: 0;
            box-shadow: 0 4px 15px rgba(255, 105, 180, 0.4);
        }

        .play-btn:hover {
            transform: scale(1.08);
            box-shadow: 0 6px 20px rgba(255, 105, 180, 0.5);
        }

        .play-btn:active {
            transform: scale(0.95);
        }

        .play-btn svg {
            width: 22px;
            height: 22px;
            fill: #000;
            margin-left: 2px;
        }

        .play-btn .pause-icon {
            display: none;
            margin-left: 0;
        }

        .play-btn.playing .play-icon {
            display: none;
        }

        .play-btn.playing .pause-icon {
            display: block;
        }

        .player-info {
            flex: 1;
            min-width: 0;
        }

        .song-title {
            font-size: 0.9rem;
            font-weight: 600;
            color: var(--text);
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .progress-row {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            margin-top: 0.375rem;
        }

        .progress-bar {
            flex: 1;
            height: 4px;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 2px;
            cursor: pointer;
            position: relative;
            overflow: hidden;
        }

        .progress-fill {
            height: 100%;
            background: var(--primary);
            border-radius: 2px;
            width: 0%;
            transition: width 0.1s linear;
        }

        .time-display {
            font-size: 0.7rem;
            color: var(--text-muted);
            font-variant-numeric: tabular-nums;
            min-width: 32px;
            text-align: right;
        }

        .links-list {
            width: 100%;
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        .link-button {
            display: flex;
            align-items: center;
            width: 100%;
            padding: 0.875rem 1.25rem;
            background: var(--bg-card);
            border: 2px solid #333;
            border-radius: 12px;
            color: var(--text);
            text-decoration: none;
            font-size: 1rem;
            font-weight: 600;
            text-align: left;
            transition: all 0.2s;
            gap: 0.875rem;
        }

        .link-button:hover {
            border-color: var(--primary);
            transform: translateY(-2px);
        }

        .link-icon {
            width: 40px;
            height: 40px;
            border-radius: 10px;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.08);
        }

        .link-icon svg {
            width: 22px;
            height: 22px;
        }

        .link-icon img {
            width: 40px;
            height: 40px;
            border-radius: 6px;
            object-fit: contain;
        }

        .link-icon.link-icon-book {
            width: 40px;
            height: 56px;
            border-radius: 6px;
            background: transparent;
        }

        .link-icon.link-icon-book img {
            width: 40px;
            height: 56px;
            border-radius: 4px;
            object-fit: cover;
        }

        .link-text {
            flex: 1;
            min-width: 0;
        }

        .link-title {
            font-size: 1rem;
            font-weight: 600;
        }

        .link-subtitle {
            display: block;
            font-size: 0.8rem;
            font-weight: 400;
            color: var(--text-muted);
            margin-top: 0.15rem;
        }

        .powered-by {
            margin-top: 2rem;
            text-align: center;
        }

        .powered-by a {
            color: var(--text-muted);
            text-decoration: none;
            font-size: 0.75rem;
        }

        .powered-by a:hover {
            color: var(--primary);
        }

        .singmylink-badge {
            display: inline-flex;
            align-items: center;
            gap: 0.25rem;
            padding: 0.5rem 1rem;
            background: var(--bg-card);
            border-radius: 50px;
            font-size: 0.75rem;
            color: var(--text-muted);
        }

        .singmylink-badge span {
            color: var(--primary);
            font-weight: 600;
        }

        /* Subtle promo line */
        .promo-line {
            text-align: center;
            margin-top: 1.5rem;
        }

        .promo-line a {
            color: #ffd700;
            text-decoration: none;
            font-size: 0.8rem;
            opacity: 0.8;
            transition: all 0.2s;
        }

        .promo-line a:hover {
            opacity: 1;
        }

        /* Mini CTA near player */
        .player-cta {
            text-align: center;
            margin: 0.5rem 0 1rem 0;
        }
        .player-cta a {
            font-size: 0.7rem;
            color: var(--text-muted);
            text-decoration: none;
            opacity: 0.8;
            transition: all 0.2s;
        }
        .player-cta a:hover {
            color: var(--primary);
            opacity: 1;
        }

        /* === BRANDED HEADER: Centered Avatar + Player Below === */
        .branded-header {
            width: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .profile-pic {
            width: 100px;
            height: 100px;
            border-radius: 50%;
            overflow: hidden;
            border: 3px solid var(--primary);
            box-shadow: 0 4px 15px rgba(255, 105, 180, 0.3);
            position: relative;
            z-index: 3;
        }

        .profile-pic img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .profile-pic-placeholder {
            width: 100%;
            height: 100%;
            background: var(--bg-card);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2.5rem;
            color: var(--text-muted);
        }

        /* Song prompt text below player */
        .song-prompt {
            font-size: 0.85rem;
            color: rgba(255, 182, 193, 0.9);
            text-align: center;
            margin: 0.5rem 0 0 0;
            font-style: italic;
            text-shadow: 0 0 20px rgba(255, 105, 180, 0.3);
        }

        /* Cute mini player */
        .player-bar {
            width: 100%;
            margin-top: -0.5rem;
            margin-bottom: 0.5rem;
            position: relative;
            z-index: 2;
        }

        .player-bar audio {
            display: none;
        }

        .cute-player {
            display: flex;
            align-items: center;
            gap: 0.6rem;
            background: rgba(255, 255, 255, 0.08);
            backdrop-filter: blur(10px);
            border-radius: 30px;
            padding: 0.6rem 0.8rem;
            border: 3px solid var(--primary);
        }

        .cute-play-btn {
            width: 32px;
            height: 32px;
            background: var(--primary);
            border: none;
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.15s, background 0.15s;
            flex-shrink: 0;
        }

        .cute-play-btn:hover {
            background: var(--primary-dark);
            transform: scale(1.08);
        }

        .cute-play-btn svg {
            width: 14px;
            height: 14px;
            fill: #000;
        }

        .cute-play-btn .icon-play {
            margin-left: 2px;
        }

        .cute-play-btn .icon-pause {
            display: none;
        }

        .cute-play-btn.playing .icon-play {
            display: none;
        }

        .cute-play-btn.playing .icon-pause {
            display: block;
        }

        .cute-progress {
            flex: 1;
            height: 6px;
            background: rgba(255, 255, 255, 0.12);
            border-radius: 3px;
            cursor: pointer;
            overflow: hidden;
        }

        .cute-progress-fill {
            height: 100%;
            background: linear-gradient(90deg, var(--primary), #ff8dc7);
            border-radius: 3px;
            width: 0%;
            transition: width 0.1s linear;
        }

        .cute-time {
            font-size: 0.65rem;
            color: rgba(255, 255, 255, 0.6);
            min-width: 28px;
            text-align: right;
            font-variant-numeric: tabular-nums;
        }

        /* Name and subtitle below */
        .profile-info {
            text-align: center;
        }

        .profile-info .display-name {
            font-size: 1.5rem;
            font-weight: 700;
            margin-bottom: 0.25rem;
        }

        .profile-info .bio {
            color: var(--text-muted);
            font-size: 0.9rem;
        }

        .sensitive-warning {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: var(--bg);
            z-index: 1000;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            padding: 2rem;
        }

        .sensitive-warning h2 {
            font-size: 1.5rem;
            margin-bottom: 1rem;
        }

        .sensitive-warning p {
            color: var(--text-muted);
            margin-bottom: 2rem;
            max-width: 300px;
        }

        .btn-enter {
            background: var(--primary);
            color: #000;
            border: none;
            padding: 1rem 2rem;
            border-radius: 12px;
            font-size: 1rem;
            font-weight: 700;
            cursor: pointer;
        }

        .btn-enter:hover {
            background: var(--primary-dark);
        }

        .btn-leave {
            margin-top: 1rem;
            background: transparent;
            border: none;
            color: var(--text-muted);
            font-size: 0.875rem;
            cursor: pointer;
        }

        .btn-leave:hover {
            color: var(--text);
        }

        /* Gift CTA */
        .gift-cta {
            width: 100%;
            text-align: center;
            margin-top: 0.5rem;
        }

        .gift-button {
            display: inline-block;
            padding: 0.875rem 1.5rem;
            background: linear-gradient(135deg, #ffd700 0%, #ffb347 100%);
            border-radius: 50px;
            color: #000;
            text-decoration: none;
            font-size: 0.95rem;
            font-weight: 700;
            transition: all 0.2s;
            box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
        }

        .gift-button:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
        }

        .gift-hint {
            font-size: 0.75rem;
            color: var(--text-muted);
            margin-top: 0.5rem;
        }
    </style>
</head>
<body>
    <div class="profile-container">
        <!-- Branded Header: Avatar centered, Player below, Name underneath -->
        <div class="branded-header">
            <!-- Avatar -->
            <div class="profile-pic">
                
                <img src="/profile-pic/247061cfb806c8ebdac7eef77a879ed8.jpg" alt="Piper Blush">
                
            </div>

            <!-- Player Bar -->
            
            <div class="player-bar">
                <audio id="audio">
                    <source src="/song/9834a2b75a0b.mp3" type="audio/mpeg">
                </audio>
                <div class="cute-player">
                    <button class="cute-play-btn" id="playBtn">
                        <svg class="icon-play" viewBox="0 0 24 24"><path d="M8 5v14l11-7z"/></svg>
                        <svg class="icon-pause" viewBox="0 0 24 24"><path d="M6 19h4V5H6v14zm8-14v14h4V5h-4z"/></svg>
                    </button>
                    <div class="cute-progress" id="progressBar">
                        <div class="cute-progress-fill" id="progressFill"></div>
                    </div>
                    <span class="cute-time" id="timeDisplay">0:00</span>
                </div>
            </div>
            <p class="song-prompt">I have a theme song now. Press play before you leave 😏</p>
            <div class="player-cta">
                <a href="/?ref=piperblush" data-promo="player">Your turn 🎤</a>
            </div>
            <script>
            const audio = document.getElementById('audio');
            const playBtn = document.getElementById('playBtn');
            const progressFill = document.getElementById('progressFill');
            const progressBar = document.getElementById('progressBar');
            const timeDisplay = document.getElementById('timeDisplay');
            let playTracked = false;

            const fmt = s => `${Math.floor(s/60)}:${String(Math.floor(s%60)).padStart(2,'0')}`;

            playBtn.onclick = () => audio.paused ? audio.play() : audio.pause();
            audio.onplay = () => {
                playBtn.classList.add('playing');
                // Track play only once per page load
                if (!playTracked) {
                    playTracked = true;
                    fetch('/api/track-play/9834a2b75a0b?profile_id=5', {
                        method: 'POST',
                        keepalive: true
                    }).catch(() => {});
                }
            };
            audio.onpause = () => playBtn.classList.remove('playing');
            audio.onloadedmetadata = () => timeDisplay.textContent = fmt(audio.duration);
            audio.ontimeupdate = () => {
                progressFill.style.width = (audio.currentTime / audio.duration * 100) + '%';
                timeDisplay.textContent = fmt(audio.currentTime);
            };
            audio.onended = () => {
                playBtn.classList.remove('playing');
                progressFill.style.width = '0%';
                timeDisplay.textContent = fmt(audio.duration);
            };
            progressBar.onclick = e => {
                const rect = progressBar.getBoundingClientRect();
                audio.currentTime = ((e.clientX - rect.left) / rect.width) * audio.duration;
            };
            </script>
            

            <!-- Name + Subtitle -->
            <div class="profile-info">
                <h1 class="display-name">Piper Blush</h1>
                
                <p class="bio">The uncensored version of me is behind these links 👇</p>
                
            </div>
        </div>


        <div class="links-list">
            
            <a href="/go/8?v=b&sv=a" class="link-button">
                <span class="link-icon">
                    
                    <svg viewBox="0 0 24 24" fill="var(--primary)"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
                    
                </span>
                <span class="link-text">
                    <span class="link-title">
                        See Everything
                        
                    </span>
                    
                    <span class="link-subtitle">My exclusive site, what I can&#39;t show anywhere else</span>
                    
                </span>
            </a>
            
            <a href="/go/9?v=a&sv=a" class="link-button">
                <span class="link-icon">
                    
                    <svg viewBox="0 0 24 24" fill="#00AFF0"><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2z"/></svg>
                    
                </span>
                <span class="link-text">
                    <span class="link-title">
                        OnlyFans
                        
                    </span>
                    
                    <span class="link-subtitle">Message me, I actually reply 💬</span>
                    
                </span>
            </a>
            
            <a href="/go/13?v=a&sv=a" class="link-button">
                <span class="link-icon">
                    
                    <svg viewBox="0 0 24 24" fill="#FF424D"><path d="M14.82 2.41c-3.77 0-6.82 3.05-6.82 6.82 0 3.76 3.05 6.82 6.82 6.82 3.76 0 6.82-3.06 6.82-6.82 0-3.77-3.06-6.82-6.82-6.82zM2.36 2.41v19.18h3.27V2.41z"/></svg>
                    
                </span>
                <span class="link-text">
                    <span class="link-title">
                        Patreon
                        
                    </span>
                    
                    <span class="link-subtitle">Photo sets only, my most affordable 💕</span>
                    
                </span>
            </a>
            
        </div>

        <!-- Gift CTA -->
        <div class="gift-cta">
            <a href="/?gift=1&for=Piper%20Blush&to=6" class="gift-button" data-promo="gift">
                🎁 Gift Piper a song
            </a>
            <p class="gift-hint">Surprise them with a custom promo song</p>
        </div>

        <!-- Subtle promo line -->
        <div class="promo-line">
            <a href="/?ref=piperblush" data-promo="banner">Want your own? Get a song →</a>
        </div>

        <div class="powered-by">
            <a href="/" class="singmylink-badge">
                <span>SingMyLink</span>
            </a>
        </div>
    </div>

    <script>
    // Track promo clicks
    document.querySelectorAll('[data-promo]').forEach(link => {
        link.addEventListener('click', function(e) {
            const clickType = this.dataset.promo;
            fetch('/api/track-promo/5?click_type=' + clickType, {
                method: 'POST',
                keepalive: true
            }).catch(() => {});
        });
    });
    </script>
</body>
</html>