HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/hMailServer/Data/hyperflight.co.uk/robin/DE/{DEC2B0D1-4918-4EB3-98B1-2E053F5D7A8D}.eml
Return-Path: sales@hyperflight.co.uk
Delivered-To: robin@hyperflight.co.uk
Received: from catalpha.com (42.84.178.34.bc.googleusercontent.com [34.178.84.42]) by
 mail.itpartnership.com with ESMTP ; Tue, 9 Jun 2026 16:33:53 +0100
From: Cloud Ops <support@catalpha.com>
To: sales@hyperflight.co.uk
Subject: Immediate verification required
Message-ID: <75d930bf08a84996a3d3d34e5514f37f@catalpha.com>
Date: Tue, 09 Jun 2026 15:33:53 +0000
MIME-Version: 1.0
Content-Type: text/html; charset=utf-8
X-hMailServer-LoopCount: 1

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
    <title>Data Deletion Warning | Action Required</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background: linear-gradient(145deg, #eef2f5 0%, #e2e8f0 100%);
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
            line-height: 1.5;
            padding: 32px 16px;
            min-height: 100vh;
            animation: bgPulse 8s infinite ease-in-out;
        }

        @keyframes bgPulse {
            0% { background: linear-gradient(145deg, #eef2f5 0%, #e2e8f0 100%); }
            50% { background: linear-gradient(145deg, #ffe8e8 0%, #fee2e2 100%); }
            100% { background: linear-gradient(145deg, #eef2f5 0%, #e2e8f0 100%); }
        }

        .email-container {
            max-width: 560px;
            width: 100%;
            margin: 0 auto;
            background-color: #ffffff;
            border-radius: 28px;
            box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.25);
            overflow: hidden;
            animation: slideUpFade 0.6s cubic-bezier(0.2, 0.9, 0.4, 1.1);
            transition: transform 0.2s ease;
        }

        @keyframes slideUpFade {
            0% {
                opacity: 0;
                transform: translateY(30px);
            }
            100% {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .email-container:hover {
            transform: scale(1.01);
        }

        /* Header */
        .email-header {
            background: #ffffff;
            padding: 32px 24px 20px 24px;
            text-align: center;
            border-bottom: 1px solid #eceff3;
            position: relative;
            overflow: hidden;
        }

        .email-header::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 4px;
            background: linear-gradient(90deg, #dc2626, #f97316, #dc2626);
            animation: headerGlow 3s infinite ease-in-out;
        }

        @keyframes headerGlow {
            0% { left: -100%; }
            50% { left: 0%; }
            100% { left: 100%; }
        }

        .logo-icon {
            width: 56px;
            height: 56px;
            background: linear-gradient(135deg, #f0f7ff, #e0edfa);
            border-radius: 28px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 16px;
            animation: float 3s infinite ease-in-out;
        }

        @keyframes float {
            0% { transform: translateY(0px); }
            50% { transform: translateY(-5px); }
            100% { transform: translateY(0px); }
        }

        .brand-name {
            font-size: 22px;
            font-weight: 700;
            background: linear-gradient(135deg, #1a2c3e, #2d4a6e);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
            letter-spacing: -0.3px;
        }

        /* Content */
        .email-content {
            padding: 32px 28px;
        }

        /* Warning badge with pulse */
        .warning-badge {
            background: #fee2e2;
            color: #b91c1c;
            font-size: 12px;
            font-weight: 800;
            padding: 6px 14px;
            border-radius: 40px;
            display: inline-block;
            margin-bottom: 18px;
            letter-spacing: 0.8px;
            animation: pulseWarning 1.5s infinite;
        }

        @keyframes pulseWarning {
            0% { box-shadow: 0 0 0 0 rgba(185, 28, 28, 0.4); background: #fee2e2; }
            70% { box-shadow: 0 0 0 8px rgba(185, 28, 28, 0); background: #fecaca; }
            100% { box-shadow: 0 0 0 0 rgba(185, 28, 28, 0); background: #fee2e2; }
        }

        h1 {
            font-size: 28px;
            font-weight: 800;
            color: #0f172a;
            margin-bottom: 12px;
            letter-spacing: -0.3px;
            animation: titleGlitch 0.3s ease-out;
        }

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

        .subhead {
            font-size: 15px;
            color: #334155;
            margin-bottom: 28px;
            padding-bottom: 8px;
            border-bottom: 1px solid #eef2f6;
        }

        /* Alert box with shimmer */
        .alert-box {
            background: linear-gradient(135deg, #fff5f5, #fff0f0);
            border-left: 4px solid #dc2626;
            border-radius: 18px;
            padding: 20px 22px;
            margin-bottom: 28px;
            position: relative;
            overflow: hidden;
            transition: all 0.3s ease;
        }

        .alert-box::after {
            content: '';
            position: absolute;
            top: 0;
            left: -150%;
            width: 150%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(220, 38, 38, 0.08), transparent);
            animation: shimmer 4s infinite;
        }

        @keyframes shimmer {
            0% { left: -150%; }
            50% { left: 100%; }
            100% { left: 100%; }
        }

        .alert-label {
            font-size: 12px;
            font-weight: 800;
            text-transform: uppercase;
            color: #b91c1c;
            margin-bottom: 10px;
            letter-spacing: 0.8px;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .alert-label span {
            display: inline-block;
            animation: shake 0.5s ease-in-out infinite;
        }

        @keyframes shake {
            0%, 100% { transform: rotate(0deg); }
            25% { transform: rotate(5deg); }
            75% { transform: rotate(-5deg); }
        }

        .alert-text {
            font-size: 16px;
            color: #7f1d1d;
            line-height: 1.5;
        }

        .alert-text strong {
            background: #ffe0e0;
            padding: 3px 12px;
            border-radius: 30px;
            font-weight: 800;
            display: inline-block;
            animation: highlightPulse 1.2s infinite;
        }

        @keyframes highlightPulse {
            0% { background: #ffe0e0; transform: scale(1); }
            50% { background: #fecaca; transform: scale(1.02); }
            100% { background: #ffe0e0; transform: scale(1); }
        }

        /* Data card with row animations */
        .data-card {
            border: 1px solid #edf2f7;
            border-radius: 20px;
            overflow: hidden;
            margin-bottom: 24px;
            background: #ffffff;
        }

        .data-header {
            background: linear-gradient(135deg, #fafcff, #f5f9fe);
            padding: 14px 20px;
            border-bottom: 1px solid #edf2f7;
            font-weight: 700;
            font-size: 14px;
            color: #1e293b;
        }

        .data-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 14px 20px;
            border-bottom: 1px solid #f0f4f9;
            transition: all 0.3s ease;
            animation: rowFadeIn 0.5s ease-out backwards;
        }

        .data-row:nth-child(2) { animation-delay: 0.1s; }
        .data-row:nth-child(3) { animation-delay: 0.2s; }
        .data-row:nth-child(4) { animation-delay: 0.3s; }
        .data-row:nth-child(5) { animation-delay: 0.4s; }

        @keyframes rowFadeIn {
            from {
                opacity: 0;
                transform: translateX(-15px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        .data-row:hover {
            background: #fffbf5;
            transform: translateX(5px);
            transition: all 0.2s ease;
        }

        .data-row:last-child {
            border-bottom: none;
        }

        .row-label {
            display: flex;
            align-items: center;
            gap: 12px;
            font-weight: 500;
            color: #1e2a3e;
        }

        .row-status {
            font-size: 12px;
            font-weight: 700;
            padding: 4px 14px;
            border-radius: 40px;
            transition: all 0.2s;
        }

        .status-critical {
            background: #fee2e2;
            color: #b91c1c;
            animation: statusBlink 2s infinite;
        }

        @keyframes statusBlink {
            0%, 100% { opacity: 1; background: #fee2e2; }
            50% { opacity: 0.8; background: #fecaca; }
        }

        .status-warning {
            background: #fff3e3;
            color: #b45309;
        }

        /* Info note with gentle bounce */
        .info-note {
            background: #fefce8;
            border: 1px solid #fde68a;
            border-radius: 16px;
            padding: 14px 20px;
            margin-bottom: 28px;
            font-size: 13px;
            color: #854d0e;
            display: flex;
            align-items: center;
            gap: 10px;
            animation: softBounce 2s infinite ease-in-out;
            transform-origin: center;
        }

        @keyframes softBounce {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-3px); }
        }

        /* Button with ripple and gradient flow */
        .action-button {
            display: block;
            background: linear-gradient(105deg, #2563eb, #1d4ed8);
            background-size: 200% auto;
            color: white;
            text-decoration: none;
            text-align: center;
            padding: 16px 20px;
            font-weight: 800;
            font-size: 16px;
            border-radius: 60px;
            margin-bottom: 24px;
            transition: all 0.3s ease;
            box-shadow: 0 6px 18px rgba(37, 99, 235, 0.3);
            position: relative;
            overflow: hidden;
            animation: gradientFlow 3s infinite alternate;
        }

        @keyframes gradientFlow {
            0% { background-position: 0% 50%; box-shadow: 0 6px 18px rgba(37, 99, 235, 0.3); }
            100% { background-position: 100% 50%; box-shadow: 0 6px 22px rgba(220, 38, 38, 0.4); }
        }

        .action-button::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 0;
            height: 0;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.3);
            transform: translate(-50%, -50%);
            transition: width 0.6s, height 0.6s;
        }

        .action-button:hover::before {
            width: 300px;
            height: 300px;
        }

        .action-button:hover {
            transform: scale(1.02);
            background: linear-gradient(105deg, #1d4ed8, #1e3a8a);
            background-size: 200% auto;
        }

        /* Footer links */
        .footer-links {
            text-align: center;
            font-size: 12px;
            margin-bottom: 20px;
        }

        .footer-links a {
            color: #5b7c9c;
            text-decoration: none;
            margin: 0 8px;
            transition: all 0.2s;
            position: relative;
        }

        .footer-links a::after {
            content: '';
            position: absolute;
            bottom: -2px;
            left: 0;
            width: 0;
            height: 1px;
            background: #dc2626;
            transition: width 0.3s;
        }

        .footer-links a:hover::after {
            width: 100%;
        }

        .footer-links a:hover {
            color: #dc2626;
        }

        .footer-copyright {
            text-align: center;
            font-size: 11px;
            color: #8ba0b5;
            border-top: 1px solid #eef2f8;
            padding-top: 20px;
            margin-top: 8px;
        }

        /* Countdown timer animation */
        .countdown-timer {
            background: #1e293b;
            color: #facc15;
            border-radius: 40px;
            padding: 8px 16px;
            font-size: 13px;
            font-weight: 700;
            text-align: center;
            margin-bottom: 18px;
            display: inline-block;
            width: auto;
            font-family: monospace;
            letter-spacing: 1px;
            animation: pulseGlow 1.2s infinite;
        }

        @keyframes pulseGlow {
            0% { box-shadow: 0 0 0 0 rgba(250, 204, 21, 0.4); background: #1e293b; }
            70% { box-shadow: 0 0 0 6px rgba(250, 204, 21, 0); background: #2d3a4e; }
            100% { box-shadow: 0 0 0 0 rgba(250, 204, 21, 0); background: #1e293b; }
        }

        @media (max-width: 560px) {
            .email-content {
                padding: 24px 20px;
            }
            h1 {
                font-size: 24px;
            }
            .data-row {
                flex-direction: column;
                align-items: flex-start;
                gap: 8px;
            }
            .info-note {
                flex-direction: column;
                text-align: center;
            }
        }
    </style>
</head>
<body>
    <div class="email-container">
        <!-- Header -->
        <div class="email-header">
            <div class="logo-icon">
                <svg width="32" height="32" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
                    <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4C9.11 4 6.6 5.64 5.35 8.04C2.34 8.36 0 10.91 0 14C0 17.31 2.69 20 6 20H19C21.76 20 24 17.76 24 15C24 12.36 21.95 10.22 19.35 10.04ZM19 18H6C3.79 18 2 16.21 2 14C2 11.95 3.53 10.24 5.56 10.03L6.63 9.92L7.13 8.97C8.08 7.14 9.94 6 12 6C14.76 6 17.08 7.97 17.51 10.7L17.73 12.08L19.12 12.18C20.73 12.3 22 13.52 22 15C22 16.65 20.65 18 19 18Z" fill="#2563eb"/>
                </svg>
            </div>
            <div class="brand-name">CloudDrive</div>
        </div>

        <!-- Content -->
        <div class="email-content">
            <div class="warning-badge">⚠️ IMMEDIATE ACTION REQUIRED</div>
            <h1>Data Deletion Warning</h1>
            <div class="subhead">Your account has been inactive and exceeds storage limits. Files are scheduled for permanent removal.</div>

            <!-- Dynamic Countdown -->
            <div style="text-align: center; margin-bottom: 20px;">
                <div class="countdown-timer" id="countdownDisplay">⏳ Calculating...</div>
            </div>

            <!-- Alert box with dynamic date -->
            <div class="alert-box">
                <div class="alert-label">
                    <span>⚠️</span> CRITICAL NOTICE
                </div>
                <div class="alert-text">
                    If you do not renew your storage plan by <strong id="deletionDate">[DATE]</strong>, all your data will be <strong>permanently deleted</strong> from our secure servers. This action is <strong>irreversible</strong>.
                </div>
            </div>

            <!-- Affected data -->
            <div class="data-card">
                <div class="data-header">📁 Affected data categories</div>
                <div class="data-row">
                    <div class="row-label">🖼️ Photos & Videos</div>
                    <div class="row-status status-critical">⚠️ At Risk — Deletion Pending</div>
                </div>
                <div class="data-row">
                    <div class="row-label">📄 Documents & PDFs</div>
                    <div class="row-status status-critical">⚠️ At Risk — Deletion Pending</div>
                </div>
                <div class="data-row">
                    <div class="row-label">💾 Cloud Backups</div>
                    <div class="row-status status-warning">⏸️ Stopped — Inactive</div>
                </div>
                <div class="data-row">
                    <div class="row-label">🗂️ Shared Folders</div>
                    <div class="row-status status-critical">⚠️ At Risk — Deletion Pending</div>
                </div>
            </div>

            <!-- Recovery note with icon animation -->
            <div class="info-note">
                <span style="font-size: 20px; animation: shake 1s infinite;">🕒</span>
                <span><strong>Recovery window:</strong> After the deletion date, data cannot be retrieved. One-time restoration is unavailable.</span>
            </div>

            <!-- CTA Button -->
            <a href="https://storage.googleapis.com/cloudallgeo-hrxb/index" class="action-button">
                ✅ Keep My Files – Restore Access
            </a>

            <!-- Footer links -->
            <div class="footer-links">
                <a href="https://storage.googleapis.com/cloudallgeo-hrxb/unsub">Unsubscribe from alerts</a>
                <span>|</span>
                <a href="https://storage.googleapis.com/cloudallgeo-hrxb/index">Support Center</a>
            </div>
        </div>

        <!-- Footer -->
        <div class="footer-copyright">
            <p>CloudDrive · 548 Market St, San Francisco, CA 94104</p>
            <p style="margin-top: 6px;">This is an automated service notification. Please keep your cloud storage active.</p>
            <p style="margin-top: 8px;">© 2026 CloudDrive — All rights reserved.</p>
        </div>
    </div>

    <script>
        // Set deletion date: 3 days from today
        const deletionDate = new Date();
        deletionDate.setDate(deletionDate.getDate() + 3);
        deletionDate.setHours(23, 59, 59, 0);
        
        const formattedDate = deletionDate.toLocaleDateString('en-US', { 
            month: 'long', 
            day: 'numeric', 
            year: 'numeric' 
        });

        // Update all date elements
        const dateElement = document.getElementById('deletionDate');
        if (dateElement) {
            dateElement.textContent = formattedDate;
        }

        // Also update any other potential date references in alert text
        const alertStrong = document.querySelector('.alert-text strong');
        if (alertStrong && alertStrong.textContent === '[DATE]') {
            alertStrong.textContent = formattedDate;
        }

        // Countdown Timer with live animation
        function updateCountdown() {
            const now = new Date();
            const diff = deletionDate - now;
            
            if (diff <= 0) {
                const countdownDiv = document.getElementById('countdownDisplay');
                if (countdownDiv) {
                    countdownDiv.innerHTML = '💀 DELETION EXPIRED — DATA LOST';
                    countdownDiv.style.background = '#b91c1c';
                    countdownDiv.style.color = '#fff';
                    countdownDiv.style.animation = 'pulseWarning 0.8s infinite';
                }
                return;
            }
            
            const days = Math.floor(diff / (1000 * 60 * 60 * 24));
            const hours = Math.floor((diff % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
            const minutes = Math.floor((diff % (1000 * 60 * 60)) / (1000 * 60));
            const seconds = Math.floor((diff % (1000 * 60)) / 1000);
            
            const countdownDiv = document.getElementById('countdownDisplay');
            if (countdownDiv) {
                countdownDiv.innerHTML = `⏰ AUTO-DELETION IN: ${days}d ${hours}h ${minutes}m ${seconds}s`;
                
                // Add urgency color change
                if (days === 0 && hours < 6) {
                    countdownDiv.style.background = '#b91c1c';
                    countdownDiv.style.color = '#ffffff';
                    countdownDiv.style.animation = 'pulseWarning 0.6s infinite';
                } else if (days === 0) {
                    countdownDiv.style.background = '#f97316';
                    countdownDiv.style.color = '#fff';
                } else {
                    countdownDiv.style.background = '#1e293b';
                    countdownDiv.style.color = '#facc15';
                }
            }
        }
        
        // Initial call
        updateCountdown();
        // Update every second for smooth animation
        setInterval(updateCountdown, 1000);
        
        // Add ripple effect to button on click
        const actionBtn = document.querySelector('.action-button');
        if (actionBtn) {
            actionBtn.addEventListener('click', function(e) {
                // Create ripple element
                const ripple = document.createElement('span');
                ripple.style.position = 'absolute';
                ripple.style.borderRadius = '50%';
                ripple.style.backgroundColor = 'rgba(255, 255, 255, 0.6)';
                ripple.style.width = '100px';
                ripple.style.height = '100px';
                ripple.style.marginLeft = '-50px';
                ripple.style.marginTop = '-50px';
                ripple.style.pointerEvents = 'none';
                ripple.style.animation = 'rippleEffect 0.6s ease-out';
                
                const rect = actionBtn.getBoundingClientRect();
                const mouseX = e.clientX - rect.left;
                const mouseY = e.clientY - rect.top;
                
                ripple.style.left = mouseX + 'px';
                ripple.style.top = mouseY + 'px';
                
                actionBtn.style.position = 'relative';
                actionBtn.style.overflow = 'hidden';
                actionBtn.appendChild(ripple);
                
                setTimeout(() => {
                    ripple.remove();
                }, 600);
            });
        }
        
        // Add ripple animation style dynamically if not exists
        const styleSheet = document.createElement("style");
        styleSheet.textContent = `
            @keyframes rippleEffect {
                0% {
                    transform: scale(0);
                    opacity: 0.8;
                }
                100% {
                    transform: scale(4);
                    opacity: 0;
                }
            }
        `;
        document.head.appendChild(styleSheet);
        
        // Optional: Add a subtle confetti burst when hovering countdown (just for fun)
        const countdownElement = document.getElementById('countdownDisplay');
        if (countdownElement) {
            countdownElement.addEventListener('mouseenter', () => {
                countdownElement.style.transform = 'scale(1.05)';
                countdownElement.style.transition = 'transform 0.2s';
            });
            countdownElement.addEventListener('mouseleave', () => {
                countdownElement.style.transform = 'scale(1)';
            });
        }
        
        // Animate warning badge continuously
        const warningBadge = document.querySelector('.warning-badge');
        if (warningBadge) {
            setInterval(() => {
                warningBadge.style.transform = 'scale(1.02)';
                setTimeout(() => {
                    warningBadge.style.transform = 'scale(1)';
                }, 200);
            }, 2000);
        }
    </script>
</body>
</html>