Remove "Unlock pro models" + Error screens + Fix ALL layout issues
Script này sẽ không được không được cài đặt trực tiếp. Nó là một thư viện cho các script khác để bao gồm các chỉ thị meta
// @require https://update.greasyfork.org/scripts/574222/1800763/%F0%9F%97%91%EF%B8%8F%20Pro%20Upsell%20Remover%20%28Layout%20Fixed%20%2B%20Error%20Killer%29.js
// ==UserScript==
// @name 🗑️ Pro Upsell Remover (Layout Fixed + Error Killer)
// @namespace http://violentmonkey.github.io/
// @version 3.1
// @description Remove "Unlock pro models" + Error screens + Fix ALL layout issues
// @author You
// @match *://*/*
// @grant none
// @run-at document-start
// @noframes
// ==/UserScript==
(function() {
'use strict';
console.log('☠️ UPSell + ERROR KILLER v4.1 - LOCKING ON ALL TARGETS...');
// ========== STEP 1: IMMEDIATE CSS STRIKE ==========
const killerCSS = document.createElement('style');
killerCSS.id = 'upsell-killer';
killerCSS.textContent = `
/* Upsell targets */
div.relative.z-10.p-3.sm\\:p-4,
div[class*="relative z-10 p-3 sm:p-4"],
div[class*="p-3 sm:p-4"][class*="z-10"] {
all: unset !important;
display: none !important !important;
visibility: hidden !important !important;
opacity: 0 !important !important;
height: 0px !important !important;
width: 0px !important !important;
margin: 0 !important !important;
padding: 0 !important !important;
border: none !important !important;
position: absolute !important !important;
left: -10000px !important !important;
top: -10000px !important !important;
z-index: -100000 !important !important;
transform: scale(0) !important !important;
pointer-events: none !important !important;
overflow: hidden !important !important;
}
/* ERROR SCREEN KILLER */
div[style*="height: 100vh"],
div[style*="height: 100vh"][style*="text-align: center"],
div[style*="display: flex"][style*="flex-direction: column"][style*="align-items: center"][style*="justify-content: center"],
h2[style*="font-size: 14px"][style*="font-weight: 400"][style*="line-height: 28px"] {
display: none !important;
visibility: hidden !important;
height: 0 !important;
width: 0 !important;
opacity: 0 !important;
position: absolute !important;
left: -9999px !important;
top: -9999px !important;
z-index: -99999 !important;
}
/* Force children hidden */
div.relative.z-10.p-3.sm\\:p-4 *,
div[class*="relative z-10 p-3"] *,
div[style*="height: 100vh"] * {
display: none !important;
}
/* Layout repair */
div.relative.z-10.p-3.sm\\:p-4 ~ *,
div[class*="p-3 sm:p-4"] ~ *,
div[style*="height: 100vh"] ~ * {
margin-top: 0 !important;
padding-top: 0 !important;
}
`;
(document.head || document.documentElement).appendChild(killerCSS);
// ========== STEP 2: DOM HUNTER ==========
function huntAndDestroy() {
let killed = false;
// Exact upsell match
const exactTarget = document.querySelector('div.relative.z-10.p-3.sm\\:p-4');
if (exactTarget) {
exactTarget.remove();
console.log('🎯 EXACT UPSELL TARGET DESTROYED!');
killed = true;
}
// ERROR SCREEN HUNT
const errorTargets = document.querySelectorAll('div[style*="height: 100vh"], h2[style*="font-size: 14px"][style*="Application error"]');
errorTargets.forEach(el => {
if (el.textContent?.includes('Application error') || el.style?.height === '100vh') {
el.remove();
console.log('🚨 ERROR SCREEN DESTROYED!');
killed = true;
}
});
// Partial class match (upsell)
const partialTargets = document.querySelectorAll('div[class*="relative"][class*="z-10"][class*="p-3"]');
partialTargets.forEach(el => {
if (el.querySelector('h2')?.textContent?.includes('Unlock')) {
el.remove();
console.log('🔥 PARTIAL UPSELL TARGET DESTROYED!');
killed = true;
}
});
// Text-based hunt (upsell + error)
document.querySelectorAll('*').forEach(el => {
const text = (el.textContent || '').toLowerCase();
if (text.includes('unlock pro models') || text.includes('application error')) {
const parent = el.closest('div[class*="relative"], div[class*="p-3"], div[style*="height: 100vh"]');
if (parent) {
parent.remove();
console.log('💀 TEXT HUNT SUCCESS!');
killed = true;
}
}
});
return killed;
}
// ========== STEP 3: RELENTLESS ASSAULT ==========
let killCount = 0;
const assault = setInterval(() => {
if (huntAndDestroy()) {
killCount++;
console.log(`⚡ KILL #${killCount} - Target eliminated!`);
}
// Check if page is fully loaded
if (document.readyState === 'complete' && killCount >= 5) {
clearInterval(assault);
console.log('🏆 ASSAULT COMPLETE - ALL TARGETS ELIMINATED');
}
}, 10); // 10ms intervals - NO MERCY
// ========== STEP 4: MUTATION SHIELD ==========
function deployShield() {
const shield = new MutationObserver(mutations => {
for (let mutation of mutations) {
if (mutation.type === 'childList') {
mutation.addedNodes.forEach(node => {
if (node.nodeType === 1) {
// New upsell div?
if (node.className && (
node.className.includes('relative') &&
node.className.includes('z-10') &&
node.className.includes('p-3')
)) {
node.remove();
console.log('🛡️ SHIELD: Upsell threat destroyed!');
}
// New ERROR screen?
if (node.style && (
node.style.height === '100vh' ||
(node.style.display === 'flex' && node.style.alignItems === 'center')
)) {
node.remove();
console.log('🛡️ SHIELD: Error screen destroyed!');
}
// Check for error text in children
const h2 = node.querySelector?.('h2');
if (h2?.textContent?.includes('Unlock') || h2?.textContent?.includes('Application error')) {
node.remove();
console.log('🛡️ SHIELD: Threat by text destroyed!');
}
}
});
}
}
});
if (document.documentElement) {
shield.observe(document.documentElement, {
childList: true,
subtree: true,
attributes: true,
attributeFilter: ['class', 'style']
});
}
}
// ========== STEP 5: CSS REINFORCEMENT ==========
setInterval(() => {
const css = document.getElementById('upsell-killer');
if (!css || css.sheet.cssRules.length === 0) {
(document.head || document.documentElement).appendChild(killerCSS.cloneNode(true));
}
}, 500);
// ========== INITIAL STRIKE ==========
setTimeout(huntAndDestroy, 0);
setTimeout(huntAndDestroy, 50);
setTimeout(huntAndDestroy, 200);
setTimeout(huntAndDestroy, 500);
setTimeout(deployShield, 100);
// ========== VICTORY CONFIRMATION ==========
setTimeout(() => {
console.log(`
☠️========== MISSION ACCOMPLISHED ==========
✅ Upsell Target: div.relative.z-10.p-3.sm:p-4 ✓
✅ ERROR Screen: height: 100vh + "Application error" ✓
✅ CSS: Deployed ✓
✅ Assault: 10ms intervals ✓
✅ Shield: Active ✓
✅ Total Kills: ${killCount}
☠️ NO SURVIVORS - CLEAN PAGE!
`);
}, 3000);
})();