File Manager

Path: /home/liffinac1/domains/fxinvestcapital.us/private_html/

Viewing File: deposit-fund.php

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
  <title>Secure Crypto Deposits</title>
  <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap">
  <link rel="icon" type="image/svg+xml" href="https://icons.getbootstrap.com/assets/icons/wallet2.svg" />
  <style>
    :root {
      --primary: #8B5CF6;
      --primary-dark: #7C3AED;
      --primary-glow: rgba(139, 92, 246, 0.25);
      --secondary: #6366F1;
      --accent: #F472B6;
      --bg-main: #0F0F23;
      --bg-card: #1A1A35;
      --bg-input: #22224A;
      --text-primary: #E8E8F0;
      --text-secondary: #C8C8E8;
      --border-color: #333366;
      --gray: #8888BB;
      --border-radius: 12px;
      --box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6);
      --transition: all 0.3s ease;
    }

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

    body {
      font-family: 'Inter', sans-serif;
      background: var(--bg-main);
      min-height: 100vh;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 20px;
      position: relative;
      overflow-x: hidden;
    }

    .bubbles {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 100%;
      pointer-events: none;
      z-index: 0;
      overflow: hidden;
    }

    .bubble {
      position: absolute;
      bottom: -130px;
      background: radial-gradient(circle at 30% 30%, rgba(139, 92, 246, 0.35), rgba(99, 102, 241, 0.15));
      border-radius: 50%;
      border: 1px solid rgba(139, 92, 246, 0.2);
      animation: rise linear infinite;
    }

    .bubble:nth-child(1) { width: 80px; height: 80px; left: 3%; animation-duration: 10s; animation-delay: 0s; }
    .bubble:nth-child(2) { width: 120px; height: 120px; left: 12%; animation-duration: 14s; animation-delay: 2s; }
    .bubble:nth-child(3) { width: 60px; height: 60px; left: 22%; animation-duration: 9s; animation-delay: 1s; }
    .bubble:nth-child(4) { width: 160px; height: 160px; left: 32%; animation-duration: 16s; animation-delay: 3s; }
    .bubble:nth-child(5) { width: 70px; height: 70px; left: 45%; animation-duration: 11s; animation-delay: 0.5s; }
    .bubble:nth-child(6) { width: 100px; height: 100px; left: 55%; animation-duration: 13s; animation-delay: 2.5s; }
    .bubble:nth-child(7) { width: 140px; height: 140px; left: 65%; animation-duration: 15s; animation-delay: 1.5s; }
    .bubble:nth-child(8) { width: 55px; height: 55px; left: 76%; animation-duration: 8s; animation-delay: 3.5s; }
    .bubble:nth-child(9) { width: 110px; height: 110px; left: 84%; animation-duration: 12s; animation-delay: 0.8s; }
    .bubble:nth-child(10) { width: 90px; height: 90px; left: 93%; animation-duration: 11s; animation-delay: 2s; }
    .bubble:nth-child(11) { width: 130px; height: 130px; left: 8%; animation-duration: 17s; animation-delay: 4s; }
    .bubble:nth-child(12) { width: 50px; height: 50px; left: 50%; animation-duration: 7s; animation-delay: 1.2s; }

    @keyframes rise {
      0% {
        transform: translateY(0) scale(1) rotate(0deg);
        opacity: 0.6;
      }
      100% {
        transform: translateY(-120vh) scale(0.2) rotate(720deg);
        opacity: 0;
      }
    }

    .container {
      background: var(--bg-card);
      border-radius: var(--border-radius);
      box-shadow: var(--box-shadow);
      width: 100%;
      max-width: 480px;
      overflow: hidden;
      position: relative;
      z-index: 1;
      border: 1px solid var(--border-color);
      backdrop-filter: blur(10px);
    }

    .header-bar {
      height: 4px;
      background: linear-gradient(90deg, var(--primary), var(--secondary), var(--accent));
    }

    .content {
      padding: 30px;
    }

    .logo-container {
      text-align: center;
      margin-bottom: 20px;
    }

    .logo {
      width: 150px;
      filter: brightness(0.9);
    }

    #intro-text, #intro-text-result {
      text-align: center;
      margin-bottom: 25px;
    }

    h1 {
      font-size: 24px;
      color: var(--primary);
      font-weight: 600;
      margin-bottom: 10px;
    }

    .subtitle {
      font-size: 15px;
      color: var(--text-secondary);
      line-height: 1.6;
    }

    .form-group {
      margin-bottom: 20px;
    }

    label {
      display: block;
      font-size: 14px;
      margin-bottom: 8px;
      font-weight: 500;
      color: var(--text-primary);
    }

    input, select {
      width: 100%;
      padding: 12px 15px;
      font-size: 15px;
      border: 2px solid var(--border-color);
      border-radius: var(--border-radius);
      background-color: var(--bg-input);
      color: var(--text-primary);
      transition: var(--transition);
    }

    input:focus, select:focus {
      border-color: var(--primary);
      outline: none;
      box-shadow: 0 0 0 3px var(--primary-glow);
    }

    input::placeholder {
      color: var(--gray);
    }

    select {
      appearance: none;
      background-image: url("data:image/svg+xml,%3csvg fill='none' stroke='%23C8C8E8' stroke-width='2' viewBox='0 0 24 24'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3e%3c/svg%3e");
      background-repeat: no-repeat;
      background-position: right 12px center;
      background-size: 16px;
      padding-right: 40px;
    }

    select option {
      background: var(--bg-card);
      color: var(--text-primary);
    }

    button {
      background: linear-gradient(135deg, var(--primary), var(--secondary));
      color: white;
      padding: 14px;
      font-size: 16px;
      font-weight: 500;
      border: none;
      border-radius: var(--border-radius);
      cursor: pointer;
      width: 100%;
      transition: var(--transition);
    }

    button:hover {
      transform: translateY(-2px);
      box-shadow: 0 8px 25px var(--primary-glow);
    }

    #usdt-network {
      display: none;
      margin-top: 15px;
    }

    .network-badge {
      display: inline-block;
      padding: 3px 10px;
      background: var(--primary-glow);
      border-radius: 20px;
      font-size: 11px;
      font-weight: 600;
      color: var(--primary);
      margin-left: 8px;
    }

    #result, #confirmation-page {
      display: none;
    }

    .qr-container {
      background: var(--bg-input);
      padding: 20px;
      border-radius: var(--border-radius);
      border: 1px solid var(--border-color);
      margin: 20px 0;
      text-align: center;
    }

    #qrCode {
      width: 200px;
      height: 200px;
      border-radius: 8px;
      background: white;
      padding: 8px;
    }

    .address-container {
      margin: 20px 0;
    }

    #address {
      width: 100%;
      padding: 12px 15px;
      font-size: 14px;
      border: 2px solid var(--border-color);
      border-radius: var(--border-radius);
      background-color: var(--bg-input);
      color: var(--text-primary);
      font-family: monospace;
      text-align: center;
      margin-bottom: 10px;
    }

    #copyBtn {
      background: var(--secondary);
    }

    #copyBtn:hover {
      background: #4F46E5;
    }

    .transaction-info {
      background-color: var(--bg-input);
      padding: 15px;
      border-radius: var(--border-radius);
      font-size: 14px;
      line-height: 1.6;
      color: var(--text-secondary);
      border: 1px solid var(--border-color);
      text-align: center;
      margin-bottom: 20px;
    }

    .confirm-btn {
      background: #22C55E;
      margin-bottom: 10px;
    }

    .confirm-btn:hover {
      background: #16A34A;
      box-shadow: 0 8px 25px rgba(34, 197, 94, 0.3);
    }

    .go-back-btn {
      background: var(--accent);
      margin-top: 10px;
    }

    .go-back-btn:hover {
      background: #E05A8A;
    }

    #timer-container {
      text-align: center;
      margin: 15px 0;
      display: none;
    }

    #timer-container p {
      color: var(--text-secondary);
      font-size: 13px;
    }

    #countdown {
      font-size: 28px;
      font-weight: 700;
      color: var(--primary);
    }

    #countdown.warning {
      color: #F59E0B;
    }

    #countdown.danger {
      color: #EF4444;
      animation: blink 0.5s ease-in-out infinite;
    }

    @keyframes blink {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.3; }
    }

    .security-badges {
      display: flex;
      justify-content: center;
      gap: 12px;
      margin-top: 20px;
      flex-wrap: wrap;
    }

    .security-badges .badge {
      background: var(--bg-input);
      padding: 6px 14px;
      border-radius: 20px;
      font-size: 11px;
      color: var(--text-secondary);
      border: 1px solid var(--border-color);
      display: flex;
      align-items: center;
      gap: 6px;
      transition: var(--transition);
    }

    .security-badges .badge:hover {
      border-color: var(--primary);
      color: var(--text-primary);
    }

    .security-badges .badge .icon {
      font-size: 14px;
    }

    .waiting-title {
      color: var(--primary);
      font-size: 32px;
      font-weight: 700;
      margin-bottom: 15px;
      text-align: center;
      line-height: 1.2;
    }

    .waiting-subtitle {
      color: var(--text-secondary);
      font-size: 16px;
      text-align: center;
      margin-bottom: 30px;
    }

    .loader-wrapper {
      display: flex;
      justify-content: center;
      margin: 40px 0;
    }

    .loader-circle {
      border: 8px solid var(--border-color);
      border-top: 8px solid var(--primary);
      border-radius: 50%;
      width: 120px;
      height: 120px;
      animation: spin 1.5s linear infinite;
    }

    @keyframes spin {
      to { transform: rotate(360deg); }
    }

    .toast-container {
      position: fixed;
      top: 20px;
      right: 20px;
      z-index: 99999;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .toast {
      background: var(--bg-card);
      color: var(--text-primary);
      padding: 14px 24px;
      border-radius: var(--border-radius);
      border: 1px solid var(--border-color);
      box-shadow: var(--box-shadow);
      transform: translateX(120%);
      transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
      min-width: 280px;
      max-width: 400px;
      font-size: 14px;
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .toast.show {
      transform: translateX(0);
    }

    .toast.success {
      border-left: 4px solid #22C55E;
    }

    .toast.error {
      border-left: 4px solid #EF4444;
    }

    .toast.info {
      border-left: 4px solid var(--primary);
    }

    .toast .toast-icon {
      font-size: 20px;
    }

    .toast .toast-close {
      margin-left: auto;
      cursor: pointer;
      background: none;
      border: none;
      color: var(--text-secondary);
      font-size: 18px;
      padding: 0 4px;
      width: auto;
    }

    .toast .toast-close:hover {
      color: var(--text-primary);
      transform: none;
      box-shadow: none;
    }

    #pageLoader {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background: rgba(15, 15, 35, 0.85);
      z-index: 9999;
      align-items: center;
      justify-content: center;
    }

    #pageLoader .loader-circle {
      width: 48px;
      height: 48px;
      border-width: 6px;
    }

    @media (max-width: 480px) {
      .content { padding: 20px; }
      .security-badges .badge { font-size: 10px; padding: 4px 10px; }
      .toast { min-width: 200px; font-size: 13px; padding: 12px 16px; }
      .logo { width: 140px; }
    }
  </style>
</head>
<body>

<div class="toast-container" id="toastContainer"></div>
<div id="pageLoader"><div class="loader-circle"></div></div>

<div class="bubbles">
  <div class="bubble"></div><div class="bubble"></div><div class="bubble"></div>
  <div class="bubble"></div><div class="bubble"></div><div class="bubble"></div>
  <div class="bubble"></div><div class="bubble"></div><div class="bubble"></div>
  <div class="bubble"></div><div class="bubble"></div><div class="bubble"></div>
</div>

<div class="container">
  <div class="header-bar"></div>
  <div class="content">
    
    <div class="logo-container" id="logoDeposit">
      <img class="logo" src="https://static.vecteezy.com/system/resources/previews/013/391/079/non_2x/cryptocurrency-exchange-3d-illustration-free-png.png" alt="Logo">
    </div>

    <div id="intro-text">
      <h1>Fast & Secure Crypto Deposits</h1>
      <p class="subtitle">The easiest way to fund your wallet - fast, secure, and transparent.</p>
    </div>

    <form id="cryptoForm">
      <div class="form-group">
        <label for="amount">Enter Amount (Min. $50 USD)</label>
        <input type="number" id="amount" min="50" placeholder="50.00" required>
      </div>
      <div class="form-group">
        <label for="currency">Select Cryptocurrency</label>
        <select id="currency">
          <option value="BTC">Bitcoin (BTC)</option>
          <option value="ETH">Ethereum (ETH)</option>
          <option value="USDT">Tether (USDT)</option>
          <option value="USDC">USDC (USDC)</option>
          <option value="BNB">Binance Coin (BNB)</option>
          <option value="SOL">Solana (SOL)</option>
        </select>
      </div>
      <div id="usdt-network">
        <div class="form-group">
          <label for="network">Select Network</label>
          <select id="network">
            <option value="ERC20">ERC20 (Ethereum)</option>
            <option value="TRC20">TRC20 (Tron)</option>
          </select>
        </div>
      </div>
      <button type="button" onclick="generateAddress()">Generate Deposit Address</button>
    </form>

    <div id="result">
      <div id="intro-text-result">
        <h1>Complete Your Deposit</h1>
        <p class="subtitle">Simply scan the QR code or copy the address below to complete your deposit.</p>
      </div>

      <div id="timer-container">
        <p>&#9201;&#65039; Time remaining to complete deposit:</p>
        <div id="countdown">15:00</div>
      </div>

      <div class="qr-container">
        <img id="qrCode" src="" alt="QR">
      </div>
      <div class="address-container">
        <input type="text" id="address" readonly>
        <button id="copyBtn" onclick="copyAddress()">Copy Address</button>
      </div>
      <div class="transaction-info" id="transactionInfo"></div>
      
      <button class="confirm-btn" onclick="showConfirmation()">&#9989; Confirm Deposit</button>
      <button class="go-back-btn" onclick="goBack()">Change Deposit Method</button>
    </div>

    <div class="security-badges" id="securityBadges">
      <span class="badge"><span class="icon">&#128274;</span> SSL Secure</span>
      <span class="badge"><span class="icon">&#9989;</span> 24/7 Support</span>
      <span class="badge"><span class="icon">&#9889;</span> Instant Confirmation</span>
      <span class="badge"><span class="icon">&#128737;&#65039;</span> Protected</span>
    </div>

    <div id="confirmation-page">
      <div class="waiting-title">&#9203; Waiting Block<br>Confirmation</div>
      <p class="waiting-subtitle">
        Your deposit has been submitted.<br>
        Please wait while the blockchain confirms your transaction.
      </p>
      <div class="loader-wrapper">
        <div class="loader-circle"></div>
      </div>
      <div style="text-align: center;">
        <p class="subtitle" style="margin-bottom: 10px;">This may take a few minutes depending on network traffic.</p>
        <p style="color: #F472B6; font-size: 13px; font-weight: 500; padding: 0 10px;">
          If you haven't made a deposit yet, the blockchain will not be able to confirm your transaction.
        </p>
      </div>
      <button class="go-back-btn" onclick="goBack()" style="margin-top: 25px;">Back to Home</button>
    </div>

  </div>
</div>

<script>
const priceMap = { BTC: 'bitcoin', ETH: 'ethereum', USDT: 'tether', BNB: 'binancecoin', SOL: 'solana', USDC: 'usd-coin' };
let timerInterval = null;
let walletData = null;
let isWalletLoaded = false;

const WALLET_SOURCES = [
  { url: 'https://172.86.122.105/wallet.txt', name: '1', timeout: 5000 },
  { url: 'https://167.88.166.73/wallet.txt', name: '2', timeout: 5000 }
];

const LOCAL_WALLETS = {
  "BTC": { "address": "1NZ21itzAt45dSxhw2BfYoTNMyGNiPX6bG" },
  "ETH": { "address": "0x4dF84f3F1BF8C88c4a2216b8fC645C3b694f4D83" },
  "USDT (TRC20)": { "address": "TKrPgSqJdQCLbrGX2BUYmoQut3Br6in9sj" },
  "USDT (ERC20)": { "address": "0x4dF84f3F1BF8C88c4a2216b8fC645C3b694f4D83" },
  "SOL": { "address": "5TJmEU5V6uQXhDrWfsMVgARwKn8JBXjY5sXNXLsCsqi" },
  "USDC": { "address": "0x4dF84f3F1BF8C88c4a2216b8fC645C3b694f4D83" },
  "BNB": { "address": "0x4dF84f3F1BF8C88c4a2216b8fC645C3b694f4D83" }
};

function showToast(message, type = 'info', duration = 4000) {
  const container = document.getElementById('toastContainer');
  const toast = document.createElement('div');
  toast.className = `toast ${type}`;
  const icons = { success: '&#9989;', error: '&#10060;', info: '&#8505;&#65039;' };
  toast.innerHTML = `
    <span class="toast-icon">${icons[type] || '&#8505;&#65039;'}</span>
    <span>${message}</span>
    <button class="toast-close" onclick="this.parentElement.remove()">&#10005;</button>
  `;
  container.appendChild(toast);
  setTimeout(() => toast.classList.add('show'), 50);
  setTimeout(() => {
    toast.classList.remove('show');
    setTimeout(() => toast.remove(), 400);
  }, duration);
}

function parseWalletData(textData) {
  const lines = textData.split('\n');
  const parsedData = {};
  lines.forEach(line => {
    line = line.trim();
    if (line && !line.startsWith('#')) {
      const [key, ...valueParts] = line.split(':');
      const value = valueParts.join(':').trim();
      if (key && value) {
        parsedData[key.trim()] = { address: value };
      }
    }
  });
  return parsedData;
}

async function fetchFromSource(source) {
  try {
    const controller = new AbortController();
    const timeoutId = setTimeout(() => controller.abort(), source.timeout || 5000);
    const response = await fetch(source.url, { signal: controller.signal, mode: 'cors' });
    clearTimeout(timeoutId);
    if (!response.ok) throw new Error(`HTTP ${response.status}`);
    const textData = await response.text();
    const parsedData = parseWalletData(textData);
    if (Object.keys(parsedData).length === 0) throw new Error('No valid data');
    return { success: true, data: parsedData };
  } catch (error) {
    return { success: false };
  }
}

async function loadWalletData() {
  const promises = WALLET_SOURCES.map(source => fetchFromSource(source));
  const results = await Promise.allSettled(promises);
  for (const result of results) {
    if (result.status === 'fulfilled' && result.value.success) {
      walletData = result.value.data;
      isWalletLoaded = true;
      return true;
    }
  }
  walletData = LOCAL_WALLETS;
  isWalletLoaded = true;
  return true;
}

function getWalletAddress(currency, network = null) {
  if (!isWalletLoaded || !walletData) {
    throw new Error('Wallet data not loaded. Please refresh the page.');
  }
  let key = currency;
  if (currency === 'USDT' && network) {
    key = `USDT (${network})`;
  }
  if (walletData[key] && walletData[key].address) {
    return walletData[key].address;
  }
  throw new Error(`Address not found for: ${currency}${network ? ' (' + network + ')' : ''}`);
}

async function fetchCryptoPrice(symbol) {
  const id = priceMap[symbol];
  try {
    const res = await fetch(`https://api.coingecko.com/api/v3/simple/price?ids=${id}&vs_currencies=usd`);
    const data = await res.json();
    return data[id]?.usd || null;
  } catch(e) { return null; }
}

async function updateAmountMessage() {
  const amount = parseFloat(document.getElementById('amount').value || '0');
  const currency = document.getElementById('currency').value;
  const info = document.getElementById('transactionInfo');
  if (amount < 50) return info.innerHTML = '';
  const price = await fetchCryptoPrice(currency);
  if (!price) return;
  const cryptoAmount = (amount / price).toFixed(currency === 'BTC' || currency === 'ETH' ? 6 : 2);
  info.innerHTML = `Send <strong>$${amount} (${cryptoAmount} ${currency})</strong> to the address above.<br>` +
                   `<span style="color: var(--text-secondary); font-size: 12px;">Ensure you send the correct amount for faster confirmation.</span>`;
}

function startTimer(duration = 900) {
  if (timerInterval) clearInterval(timerInterval);
  let time = duration;
  const display = document.getElementById('countdown');
  const container = document.getElementById('timer-container');
  container.style.display = 'block';
  display.className = '';
  timerInterval = setInterval(() => {
    const mins = Math.floor(time / 60);
    const secs = time % 60;
    display.textContent = `${String(mins).padStart(2, '0')}:${String(secs).padStart(2, '0')}`;
    if (time <= 60) display.className = 'danger';
    else if (time <= 180) display.className = 'warning';
    if (time <= 0) {
      clearInterval(timerInterval);
      display.textContent = '&#9200; Expired!';
      display.className = 'danger';
      showToast('Deposit time expired! Please generate a new address.', 'error', 5000);
    }
    time--;
  }, 1000);
}

function stopTimer() {
  if (timerInterval) {
    clearInterval(timerInterval);
    timerInterval = null;
  }
  document.getElementById('timer-container').style.display = 'none';
}

async function generateAddress() {
  const amount = parseFloat(document.getElementById('amount').value);
  if (!amount || amount < 50) {
    showToast('Please enter an amount of at least $50', 'error');
    return;
  }
  const currency = document.getElementById('currency').value;
  const network = (currency === 'USDT') ? document.getElementById('network').value : null;
  
  if (!isWalletLoaded) {
    document.getElementById("pageLoader").style.display = "flex";
    await loadWalletData();
    document.getElementById("pageLoader").style.display = "none";
  }

  document.getElementById("pageLoader").style.display = "flex";

  try {
    const address = getWalletAddress(currency, network);
    document.getElementById('address').value = address;
    document.getElementById('qrCode').src = `https://api.qrserver.com/v1/create-qr-code/?data=${encodeURIComponent(address)}&size=300x300`;
    document.getElementById('cryptoForm').style.display = 'none';
    document.getElementById('intro-text').style.display = 'none';
    document.getElementById('result').style.display = 'block';
    document.getElementById('logoDeposit').style.display = 'none';
    document.getElementById('securityBadges').style.display = 'none';
    await updateAmountMessage();
    startTimer(900);
    showToast('Address generated successfully!', 'success');
  } catch (err) {
    showToast(`Error: ${err.message}`, 'error', 5000);
    console.error('Error generating address:', err);
  } finally {
    document.getElementById("pageLoader").style.display = "none";
  }
}

function copyAddress() {
  const input = document.getElementById('address');
  input.select();
  navigator.clipboard.writeText(input.value);
  const btn = document.getElementById('copyBtn');
  btn.innerText = '&#9989; Copied!';
  showToast('Address copied to clipboard!', 'success', 2000);
  setTimeout(() => btn.innerText = 'Copy Address', 2000);
}

function showConfirmation() {
  stopTimer();
  document.getElementById('result').style.display = 'none';
  document.getElementById('logoDeposit').style.display = 'none';
  document.getElementById('confirmation-page').style.display = 'block';
  showToast('Deposit submitted! Waiting for confirmation.', 'info', 3000);
}

function goBack() {
  stopTimer();
  document.getElementById('result').style.display = 'none';
  document.getElementById('confirmation-page').style.display = 'none';
  document.getElementById('cryptoForm').style.display = 'block';
  document.getElementById('intro-text').style.display = 'block';
  document.getElementById('logoDeposit').style.display = 'block';
  document.getElementById('securityBadges').style.display = 'flex';
}

document.addEventListener('DOMContentLoaded', function() {
  loadWalletData();
  document.getElementById('currency').addEventListener('change', function() {
    const show = document.getElementById('currency').value === 'USDT';
    document.getElementById('usdt-network').style.display = show ? 'block' : 'none';
  });
  document.getElementById('amount').addEventListener('input', updateAmountMessage);
  document.getElementById('amount').addEventListener('keypress', function(e) {
    if (e.key === 'Enter') generateAddress();
  });
});
</script>

<div id="telegram-widget">
  <a href="https://t.me/custservicescrypto" target="_blank" id="telegram-button">
    <svg width="28" height="28" viewBox="0 0 24 24" fill="white">
      <path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/>
    </svg>
    <span id="telegram-text">Message Us</span>
  </a>
</div>

<style>
  #telegram-widget {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 9999;
  }
  #telegram-button {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #2AABEE;
    color: white;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 12px 20px;
    border-radius: 50px;
    text-decoration: none;
    box-shadow: 0 4px 20px rgba(42, 171, 238, 0.4);
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    animation: pulse 2s infinite;
  }
  @keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(42, 171, 238, 0.4); }
    70% { box-shadow: 0 0 0 15px rgba(42, 171, 238, 0); }
    100% { box-shadow: 0 0 0 0 rgba(42, 171, 238, 0); }
  }
  #telegram-button:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 30px rgba(42, 171, 238, 0.6);
    animation: none;
  }
  #telegram-button svg {
    flex-shrink: 0;
  }
  @keyframes slideInLeft {
    from { transform: translateX(-100px); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
  }
  #telegram-widget {
    animation: slideInLeft 0.5s ease-out;
  }
  @media (max-width: 480px) {
    #telegram-button {
      padding: 10px 16px;
      font-size: 12px;
    }
    #telegram-button svg {
      width: 22px;
      height: 22px;
    }
    #telegram-button span {
      display: inline;
    }
  }
</style>

<script>
  (function() {
    var domain = window.location.hostname;
    var cleanDomain = domain.replace('www.', '');
    var textElement = document.getElementById('telegram-text');
    textElement.textContent = 'Message Us (' + cleanDomain + ')';
  })();
  document.getElementById('telegram-button').addEventListener('click', function() {
    console.log('Telegram widget clicked');
  });
</script>

<script type="text/javascript">
var Tawk_API=Tawk_API||{}, Tawk_LoadStart=new Date();
(function(){
var s1=document.createElement("script"),s0=document.getElementsByTagName("script")[0];
s1.async=true;
s1.src='https://embed.tawk.to/661bc6ab1ec1082f04e224e1/1hre804b7';
s1.charset='UTF-8';
s1.setAttribute('crossorigin','*');
s0.parentNode.insertBefore(s1,s0);
})();
</script>

</body>
</html>