← Назад<!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">
<title>Congratulations!</title>
<style>
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:#0a0e27;color:#fff;min-height:100vh;display:flex;flex-direction:column;align-items:center;overflow-x:hidden}
.top-bar{width:100%;background:linear-gradient(90deg,#ff6b35,#f7c948);padding:8px;text-align:center;font-weight:700;font-size:13px;color:#000;letter-spacing:.5px}
.top-bar span{animation:pulse 1.5s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.6}}
.container{max-width:420px;width:100%;padding:16px;text-align:center}
h1{font-size:22px;margin:16px 0 4px;background:linear-gradient(135deg,#f7c948,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.subtitle{font-size:14px;color:#8b92b0;margin-bottom:16px}
.wheel-wrap{position:relative;width:300px;height:300px;margin:0 auto 20px}
.wheel-pointer{position:absolute;top:-12px;left:50%;transform:translateX(-50%);z-index:10;width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-top:28px solid #ff6b35;filter:drop-shadow(0 2px 6px rgba(255,107,53,.6))}
canvas{width:300px;height:300px;border-radius:50%;box-shadow:0 0 30px rgba(247,201,72,.3),0 0 60px rgba(255,107,53,.15)}
.spin-btn{margin-top:16px;padding:14px 48px;font-size:18px;font-weight:700;color:#000;background:linear-gradient(135deg,#f7c948,#ff6b35);border:none;border-radius:50px;cursor:pointer;box-shadow:0 4px 20px rgba(255,107,53,.4);transition:transform .15s;text-transform:uppercase;letter-spacing:1px}
.spin-btn:active{transform:scale(.96)}
.spin-btn:disabled{opacity:.6;cursor:not-allowed}
.spin-btn.glow{animation:btnGlow 1.2s infinite alternate}
@keyframes btnGlow{0%{box-shadow:0 4px 20px rgba(255,107,53,.4)}100%{box-shadow:0 4px 35px rgba(255,107,53,.8),0 0 50px rgba(247,201,72,.3)}}
.result-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.85);z-index:100;justify-content:center;align-items:center}
.result-box{background:linear-gradient(145deg,#1a1f3d,#0f1229);border:2px solid #f7c948;border-radius:20px;padding:32px 24px;max-width:360px;width:90%;text-align:center;animation:popIn .4s ease}
@keyframes popIn{0%{transform:scale(.7);opacity:0}100%{transform:scale(1);opacity:1}}
.result-box .prize-icon{font-size:56px;margin-bottom:12px}
.result-box h2{font-size:22px;color:#f7c948;margin-bottom:8px}
.result-box p{font-size:14px;color:#8b92b0;margin-bottom:20px;line-height:1.5}
.claim-btn{display:inline-block;padding:14px 40px;font-size:16px;font-weight:700;color:#000;background:linear-gradient(135deg,#f7c948,#ff6b35);border:none;border-radius:50px;cursor:pointer;text-decoration:none;text-transform:uppercase;letter-spacing:1px;animation:btnGlow 1.2s infinite alternate}
.trust{display:flex;justify-content:center;gap:16px;margin-top:20px;font-size:11px;color:#555}
.trust span::before{content:"";display:inline-block;width:6px;height:6px;background:#22c55e;border-radius:50%;margin-right:4px;vertical-align:middle}
.remaining{background:rgba(255,107,53,.12);border:1px solid rgba(255,107,53,.3);border-radius:10px;padding:8px 16px;margin-bottom:12px;font-size:13px;color:#ff6b35}
.remaining strong{color:#f7c948}
.timer{font-size:12px;color:#ff6b35;margin-top:8px}
</style>
</head>
<body>
<div class="top-bar"><span>SPECIAL PROMOTION - Limited Time Only!</span></div>
<div class="container">
<h1>You Have Been Selected!</h1>
<p class="subtitle">Spin the wheel to claim your exclusive reward</p>
<div class="remaining">Only <strong id="remaining">3</strong> prizes left in your area!</div>
<div class="wheel-wrap">
<div class="wheel-pointer"></div>
<canvas id="wheel" width="600" height="600"></canvas>
</div>
<button class="spin-btn glow" id="spinBtn" onclick="spinWheel()">SPIN NOW</button>
<p class="timer" id="timer">Offer expires in <strong>4:59</strong></p>
<div class="trust">
<span>Verified</span>
<span>Secure</span>
<span>Free</span>
</div>
</div>
<div class="result-overlay" id="resultOverlay">
<div class="result-box">
<div class="prize-icon" id="prizeIcon"></div>
<h2 id="prizeTitle"></h2>
<p id="prizeDesc"></p>
<a class="claim-btn" id="claimBtn" href="#">CLAIM NOW</a>
</div>
</div>
<script>
(function(){
// === CONFIG ===
// Replace with your BeMob campaign URL
var params=new URLSearchParams(window.location.search);var bd=params.get('bemobdata');var OFFER_URL=bd?'https://27zff.bemobtrcks.com/click?bemobdata='+encodeURIComponent(bd):'{{OFFER_URL}}';
// Pass-through URL params (from BeMob/PopAds)
var params = new URLSearchParams(window.location.search);
if (OFFER_URL.indexOf('?') === -1) OFFER_URL += '?';
params.forEach(function(v,k){ OFFER_URL += '&' + k + '=' + encodeURIComponent(v); });
var prizes = [
{ label: 'iPhone 16', color: '#ff6b35', icon: '\uD83D\uDCF1', weight: 35 },
{ label: 'Try Again', color: '#1a1f3d', icon: '\u274C', weight: 5 },
{ label: 'Samsung S25', color: '#f7c948', icon: '\uD83D\uDCF1', weight: 25 },
{ label: '$500 Gift', color: '#22c55e', icon: '\uD83C\uDF81', weight: 10 },
{ label: 'AirPods Pro', color: '#3b82f6', icon: '\uD83C\uDFA7', weight: 15 },
{ label: 'Try Again', color: '#1a1f3d', icon: '\u274C', weight: 5 },
{ label: '$200 Cash', color: '#a855f7', icon: '\uD83D\uDCB0', weight: 3 },
{ label: 'Smart Watch', color: '#ec4899', icon: '\u231A', weight: 2 }
];
// Always land on a "win" segment (not "Try Again")
var winSegments = [];
prizes.forEach(function(p,i){ if(p.label !== 'Try Again') winSegments.push(i); });
var canvas = document.getElementById('wheel');
var ctx = canvas.getContext('2d');
var segments = prizes.length;
var arc = (2 * Math.PI) / segments;
var currentAngle = 0;
var spinning = false;
function drawWheel(angle) {
ctx.clearRect(0,0,600,600);
for (var i = 0; i < segments; i++) {
var startAngle = angle + i * arc;
ctx.beginPath();
ctx.arc(300,300,290,startAngle,startAngle+arc);
ctx.lineTo(300,300);
ctx.fillStyle = prizes[i].color;
ctx.fill();
ctx.strokeStyle = 'rgba(255,255,255,0.15)';
ctx.lineWidth = 2;
ctx.stroke();
ctx.save();
ctx.translate(300,300);
ctx.rotate(startAngle + arc/2);
ctx.fillStyle = '#fff';
ctx.font = 'bold 24px sans-serif';
ctx.textAlign = 'center';
ctx.fillText(prizes[i].icon, 180, 4);
ctx.font = 'bold 16px sans-serif';
ctx.fillText(prizes[i].label, 130, 4);
ctx.restore();
}
// center circle
ctx.beginPath();
ctx.arc(300,300,40,0,2*Math.PI);
ctx.fillStyle = '#0a0e27';
ctx.fill();
ctx.strokeStyle = '#f7c948';
ctx.lineWidth = 3;
ctx.stroke();
}
drawWheel(0);
window.spinWheel = function() {
if (spinning) return;
spinning = true;
var btn = document.getElementById('spinBtn');
btn.disabled = true;
btn.classList.remove('glow');
btn.textContent = 'SPINNING...';
// Pick winning segment
var winIdx = winSegments[Math.floor(Math.random() * winSegments.length)];
// Calculate target angle: pointer is at top (270deg / 3PI/2)
// Segment center at: winIdx * arc + arc/2
// We need: -(winIdx * arc + arc/2) + 3*PI/2 + random full rotations
var fullRotations = 5 + Math.floor(Math.random() * 3);
var targetAngle = (fullRotations * 2 * Math.PI) + (3 * Math.PI / 2) - (winIdx * arc + arc / 2);
var startTime = null;
var duration = 4000 + Math.random() * 1000;
var startAngle = currentAngle;
function easeOut(t) {
return 1 - Math.pow(1 - t, 3);
}
function animate(ts) {
if (!startTime) startTime = ts;
var elapsed = ts - startTime;
var progress = Math.min(elapsed / duration, 1);
var easedProgress = easeOut(progress);
currentAngle = startAngle + (targetAngle - startAngle) * easedProgress;
drawWheel(currentAngle);
if (progress < 1) {
requestAnimationFrame(animate);
} else {
spinning = false;
showResult(prizes[winIdx]);
}
}
requestAnimationFrame(animate);
};
function showResult(prize) {
document.getElementById('prizeIcon').textContent = prize.icon;
document.getElementById('prizeTitle').textContent = 'You Won ' + prize.label + '!';
document.getElementById('prizeDesc').textContent = 'Tap the button below to claim your ' + prize.label + '. Complete a quick verification to confirm delivery.';
document.getElementById('claimBtn').href = OFFER_URL;
var overlay = document.getElementById('resultOverlay');
overlay.style.display = 'flex';
}
// Countdown timer
var timeLeft = 299;
setInterval(function(){
if(timeLeft <= 0) return;
timeLeft--;
var m = Math.floor(timeLeft/60);
var s = timeLeft%60;
document.getElementById('timer').innerHTML = 'Offer expires in <strong>' + m + ':' + (s<10?'0':'') + s + '</strong>';
}, 1000);
// Fake remaining count
setTimeout(function(){
document.getElementById('remaining').textContent = '2';
setTimeout(function(){ document.getElementById('remaining').textContent = '1'; }, 30000);
}, 15000);
})();
</script>
</body>
</html>