SWIFTLNX Auto-Bypass

SWIFTLNX.com Byoass Android / iOS / Desktop by @Fer3on_Mod

// ==UserScript==
// @name         SWIFTLNX Auto-Bypass
// @namespace    http://tampermonkey.net/
// @version      6.0
// @description  SWIFTLNX.com Byoass Android / iOS / Desktop by @Fer3on_Mod
// @author       Fer3on_Mod
// @license      MIT
// @match        *://swiftlnx.com/*
// @match        *://yourdoctor.site/*
// @icon     https://i.postimg.cc/bNWy1CvS/cybercrime.png
// @iconURL  https://i.postimg.cc/bNWy1CvS/cybercrime.png
// @run-at       document-start
// @grant        GM_addStyle
// ==/UserScript==

(function () {
  "use strict";

  // === Core behavior variables (unchanged) ===
  const SCRIPT_VERSION = "5.6";
  let elapsedSeconds = 0;
  let timeCounter = null;
  let bypassedCount = 0;

  // === Platform detection & CSS variable injection ===
  const ua = navigator.userAgent || "";
  let platform = "desktop";
  if (/android/i.test(ua)) platform = "android";
  else if (/iphone|ipad|ipod/i.test(ua)) platform = "ios";

  // set CSS variables based on platform (sizes chosen to be professional & compact)
  const cssVars = {
    desktop: {
      "--fm-spinner-size": "36px",
      "--fm-padding": "8px 10px",
      "--fm-min-width": "150px",
      "--fm-font-family": "Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
      "--fm-title-size": "13px",
      "--fm-status-size": "11px",
      "--fm-blur": "6px"
    },
    android: {
      "--fm-spinner-size": "34px",
      "--fm-padding": "7px 9px",
      "--fm-min-width": "140px",
      "--fm-font-family": "Roboto, system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif",
      "--fm-title-size": "13px",
      "--fm-status-size": "11px",
      "--fm-blur": "4px"
    },
    ios: {
      "--fm-spinner-size": "32px",
      "--fm-padding": "6px 8px",
      "--fm-min-width": "140px",
      "--fm-font-family": "-apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', Roboto, Arial, sans-serif",
      "--fm-title-size": "12px",
      "--fm-status-size": "10px",
      "--fm-blur": "6px"
    }
  };

  // create a small style element to hold the platform vars early
  const varStyle = document.createElement("style");
  varStyle.id = "fm-platform-vars";
  let varText = ":root {";
  const chosen = cssVars[platform] || cssVars.desktop;
  for (const k in chosen) varText += `${k}: ${chosen[k]};`;
  varText += ` --fm-platform: ${platform}; }`;
  varStyle.textContent = varText;
  document.documentElement.appendChild(varStyle);

  // === Overlay UI (top-right) ===
  function createOverlayUI() {
    if (document.getElementById("fm-overlay-pro")) return;

    const overlay = document.createElement("div");
    overlay.id = "fm-overlay-pro";
    overlay.setAttribute("data-platform", platform);
    overlay.innerHTML = `
      <div class="fm-card" role="status" aria-live="polite" aria-atomic="true">
        <svg class="fm-spinner" viewBox="0 0 50 50" aria-hidden="true" focusable="false">
          <defs>
            <linearGradient id="fm-grad" x1="0%" y1="0%" x2="100%" y2="0%">
              <stop offset="0%" stop-color="#00e676"/><stop offset="100%" stop-color="#5b6cff"/>
            </linearGradient>
          </defs>
          <circle class="fm-track" cx="25" cy="25" r="20" fill="none" stroke="rgba(255,255,255,0.06)" stroke-width="4"></circle>
          <path class="fm-arc" d="M25 5 A20 20 0 0 1 45 25" stroke="url(#fm-grad)" stroke-width="4" stroke-linecap="round" fill="none"></path>
        </svg>
        <div class="fm-text">
          <div class="fm-title">Bypassing now</div>
          <div class="fm-status" id="fm-status-pro">Initializing</div>
        </div>
      </div>
    `;

    document.documentElement.appendChild(overlay);

    // timer for visual feedback (no functional change)
    elapsedSeconds = 0;
    timeCounter = setInterval(() => {
      elapsedSeconds++;
      const s = document.getElementById("fm-status-pro");
      if (s && elapsedSeconds % 5 === 0) s.textContent = `Working — ${elapsedSeconds}s`;
    }, 1000);
  }

  function removeOverlayUI(delayMs = 1400) {
    if (timeCounter) { clearInterval(timeCounter); timeCounter = null; }
    setTimeout(() => {
      const el = document.getElementById("fm-overlay-pro");
      if (el) el.remove();
      elapsedSeconds = 0;
    }, delayMs);
  }

  // === Styles (use CSS variables above) ===
  GM_addStyle(`
    /* base + platform-adaptive variables */
    #fm-overlay-pro { position: fixed; right: 12px; top: 12px; z-index: 2147483646 !important; pointer-events: none; }
    #fm-overlay-pro .fm-card {
      display:flex; gap:10px; align-items:center;
      background: rgba(12,12,12,0.56);
      color:#e9f7ef;
      padding: var(--fm-padding);
      border-radius:10px;
      box-shadow: 0 10px 30px rgba(0,0,0,0.5);
      min-width: var(--fm-min-width);
      backdrop-filter: blur(var(--fm-blur));
      border:1px solid rgba(255,255,255,0.03);
      transform: translateZ(0);
      font-family: var(--fm-font-family);
      font-synthesis: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      pointer-events: auto; /* allow occasional selection inside if needed */
    }
    #fm-overlay-pro .fm-card * { pointer-events: auto; }
    .fm-spinner { width: var(--fm-spinner-size); height: var(--fm-spinner-size); flex:0 0 var(--fm-spinner-size); display:block; }
    .fm-track { transition: stroke 250ms ease; }
    .fm-arc { transform-origin: 25px 25px; animation: fm-arc-rotate 1s linear infinite; }
    @keyframes fm-arc-rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

    .fm-text { display:flex; flex-direction:column; gap:2px; min-width:80px }
    .fm-title { font-weight:600; font-size: var(--fm-title-size); color:#c9ffe0; line-height:1; }
    .fm-status { font-size: var(--fm-status-size); color:#c9d6cf; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:220px }
    .fm-status.success { color: #9ef3b3; font-weight:700 }
    .fm-status.error { color: #ffb5b5; font-weight:700 }

    /* small-screen adjustments */
    @media (max-width:420px) {
      #fm-overlay-pro { right:8px; top:8px }
      .fm-card { min-width: calc(var(--fm-min-width) - 20px); padding: 6px 8px; gap:8px; }
      .fm-title{ font-size: calc(var(--fm-title-size) - 1px); }
      .fm-status{ font-size: calc(var(--fm-status-size) - 1px); max-width:140px }
    }
  `);

  // === Keep original logging & finish behavior exactly (no change to core logic) ===
  function setLog(msg, success = false) {
    const statusEl = document.getElementById("fm-status-pro");
    if (statusEl) {
      statusEl.textContent = msg;
      if (success) {
        statusEl.classList.add("success");
        statusEl.classList.remove("error");
      } else {
        statusEl.classList.remove("success");
      }
    }
    console.log("[Fer3on_Mod] " + msg);
  }

  function finishScript(finalUrl = null) {
    setLog("✅ Bypass completed!", true);
    bypassedCount++;
    if (finalUrl) {
      try { navigator.clipboard.writeText(finalUrl); } catch (e) { /* ignore */ }
    }
    // play same notification sound if allowed
    try {
      const audio = document.createElement("audio");
      audio.src = "https://actions.google.com/sounds/v1/cartoon/clang_and_wobble.ogg";
      audio.play().catch(()=>{});
    } catch (e) {}
    removeOverlayUI(3500);
  }

  // === Preserve original site handlers exactly ===
  function handleYourDoctor() {
    // UI text minimal & non-instructive
    setLog("Detected yourdoctor.site ...");
    const btn = document.querySelector("button.btn-success, a.btn-success");
    if (btn) {
      setLog("Bypassing...");
      try { btn.click(); } catch (e) { /* ignore click errors */ }
      // keep finish timing similar to original
      setTimeout(() => finishScript(location.href), 1200);
    }
  }

  function handleSwiftLnx() {
    setLog("Waiting for final link...");
    const checkBtn = setInterval(() => {
      const btn = document.querySelector("a.get-link[href]:not(.disabled)");
      if (btn && btn.href && !btn.href.includes("void(0)")) {
        clearInterval(checkBtn);
        setLog("Final LINK found");
        setTimeout(() => {
          const finalUrl = btn.href;
          try { btn.click(); } catch (e) {
            try { window.location.href = finalUrl; } catch (err) {}
          }
          finishScript(finalUrl);
        }, 1200);
      }
    }, 400);
  }

  // === Init ===
  createOverlayUI();

  if (location.hostname.includes("yourdoctor.site")) {
    document.addEventListener("DOMContentLoaded", handleYourDoctor);
  } else if (location.hostname.includes("swiftlnx.com")) {
    document.addEventListener("DOMContentLoaded", handleSwiftLnx);
  } else {
    // not targeted: hide UI shortly
    setLog("Not targeted — hiding");
    setTimeout(() => removeOverlayUI(800), 900);
  }

  // Failsafe: if DOMContent didn't fire, attempt after 3s (preserve original fallback)
  setTimeout(() => {
    if (document.readyState === "loading") {
      if (location.hostname.includes("yourdoctor.site")) handleYourDoctor();
      else if (location.hostname.includes("swiftlnx.com")) handleSwiftLnx();
    }
  }, 3000);

})();