Spaces:
Running
Running
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>SILENT SHADOW - Premium Adult Entertainment AI Agent</title> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> | |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css"> | |
| <style> | |
| :root { | |
| --primary-dark: #1e1b4b; | |
| --primary-light: #8b5cf6; | |
| --secondary-dark: #0f172a; | |
| --accent-pink: #ec4899; | |
| --accent-blue: #3b82f6; | |
| --accent-green: #10b981; | |
| --accent-yellow: #f59e0b; | |
| --text-primary: #f8fafc; | |
| --text-secondary: #94a3b8; | |
| --bg-dark: #0f172a; | |
| --bg-darker: #020617; | |
| --bg-light: #1e293b; | |
| --border-dark: #334155; | |
| } | |
| /* Base Styles */ | |
| body { | |
| background: linear-gradient(135deg, var(--primary-dark) 0%, var(--secondary-dark) 100%); | |
| color: var(--text-primary); | |
| font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; | |
| min-height: 100vh; | |
| overflow-x: hidden; | |
| } | |
| /* Custom Scrollbar */ | |
| ::-webkit-scrollbar { | |
| width: 8px; | |
| height: 8px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| background: var(--bg-light); | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background-color: var(--primary-light); | |
| border-radius: 10px; | |
| } | |
| /* Animations */ | |
| @keyframes pulse { | |
| 0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); } | |
| 70% { box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); } | |
| 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); } | |
| } | |
| @keyframes wave { | |
| 0% { background-position: 0% center; } | |
| 50% { background-position: 100% center; } | |
| 100% { background-position: 0% center; } | |
| } | |
| @keyframes float { | |
| 0% { transform: translateY(0px); } | |
| 50% { transform: translateY(-10px); } | |
| 100% { transform: translateY(0px); } | |
| } | |
| @keyframes glow { | |
| 0% { text-shadow: 0 0 5px rgba(139, 92, 246, 0.5); } | |
| 50% { text-shadow: 0 0 20px rgba(139, 92, 246, 0.8); } | |
| 100% { text-shadow: 0 0 5px rgba(139, 92, 246, 0.5); } | |
| } | |
| /* Utility Classes */ | |
| .gradient-text { | |
| background-clip: text; | |
| -webkit-background-clip: text; | |
| color: transparent; | |
| background-image: linear-gradient(to right, var(--primary-light), var(--accent-pink)); | |
| } | |
| .gradient-bg { | |
| background: linear-gradient(135deg, var(--primary-dark) 0%, var(--secondary-dark) 100%); | |
| } | |
| .blur-overlay { | |
| backdrop-filter: blur(10px); | |
| -webkit-backdrop-filter: blur(10px); | |
| } | |
| .voice-wave { | |
| background: linear-gradient(to right, var(--primary-light), var(--accent-pink)); | |
| background-size: 200% auto; | |
| animation: wave 3s linear infinite; | |
| } | |
| .floating { | |
| animation: float 6s ease-in-out infinite; | |
| } | |
| .glow-text { | |
| animation: glow 3s ease-in-out infinite; | |
| } | |
| .nsfw-badge { | |
| animation: pulse 2s infinite; | |
| } | |
| .module-shadow { | |
| box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -2px rgba(0, 0, 0, 0.2); | |
| } | |
| .text-3d { | |
| text-shadow: 1px 1px 0px rgba(0,0,0,0.2), | |
| 2px 2px 0px rgba(0,0,0,0.15), | |
| 3px 3px 0px rgba(0,0,0,0.1); | |
| } | |
| /* Custom Components */ | |
| .module-card { | |
| background: rgba(30, 41, 59, 0.7); | |
| border: 1px solid var(--border-dark); | |
| border-radius: 0.75rem; | |
| transition: all 0.3s ease; | |
| } | |
| .module-card:hover { | |
| transform: translateY(-2px); | |
| box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3); | |
| } | |
| .input-field { | |
| background: rgba(15, 23, 42, 0.7); | |
| border: 1px solid var(--border-dark); | |
| color: var(--text-primary); | |
| transition: all 0.2s ease; | |
| } | |
| .input-field:focus { | |
| outline: none; | |
| border-color: var(--primary-light); | |
| box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.3); | |
| } | |
| .tag { | |
| background: rgba(30, 41, 59, 0.9); | |
| border: 1px solid var(--border-dark); | |
| transition: all 0.2s ease; | |
| } | |
| .tag:hover { | |
| background: rgba(55, 65, 81, 0.9); | |
| transform: scale(1.05); | |
| } | |
| .status-indicator { | |
| width: 10px; | |
| height: 10px; | |
| border-radius: 50%; | |
| display: inline-block; | |
| margin-right: 6px; | |
| } | |
| .tooltip { | |
| position: relative; | |
| } | |
| .tooltip:hover .tooltip-text { | |
| visibility: visible; | |
| opacity: 1; | |
| } | |
| .tooltip-text { | |
| visibility: hidden; | |
| width: 200px; | |
| background-color: var(--bg-light); | |
| color: var(--text-primary); | |
| text-align: center; | |
| border-radius: 6px; | |
| padding: 5px; | |
| position: absolute; | |
| z-index: 1; | |
| bottom: 125%; | |
| left: 50%; | |
| margin-left: -100px; | |
| opacity: 0; | |
| transition: opacity 0.3s; | |
| font-size: 0.8rem; | |
| border: 1px solid var(--border-dark); | |
| } | |
| .tooltip-text::after { | |
| content: ""; | |
| position: absolute; | |
| top: 100%; | |
| left: 50%; | |
| margin-left: -5px; | |
| border-width: 5px; | |
| border-style: solid; | |
| border-color: var(--bg-light) transparent transparent transparent; | |
| } | |
| /* Responsive Grid */ | |
| @media (min-width: 1024px) { | |
| .responsive-grid { | |
| grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); | |
| } | |
| } | |
| /* Performance Optimizations */ | |
| .will-change-transform { | |
| will-change: transform; | |
| } | |
| .backface-hidden { | |
| backface-visibility: hidden; | |
| } | |
| </style> | |
| </head> | |
| <body class="gradient-bg min-h-screen overflow-x-hidden"> | |
| <!-- Security Overlay --> | |
| <div class="fixed inset-0 flex items-center justify-center z-50 pointer-events-none"> | |
| <div class="absolute inset-0 bg-black bg-opacity-20 blur-overlay"></div> | |
| <div class="relative z-10 text-center p-6 max-w-md"> | |
| <div class="text-xs font-mono tracking-widest text-purple-300 opacity-70" id="security-status"> | |
| SILENT SHADOW PROTOCOL ACTIVE | GHOST SCORE: 94% | ENCRYPTION: AES-256 | PROXY MESH: ONLINE | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Navigation Sidebar --> | |
| <div class="fixed left-0 top-0 h-full w-16 md:w-20 bg-gray-900 bg-opacity-80 z-40 flex flex-col items-center py-6 border-r border-gray-800"> | |
| <div class="mb-8"> | |
| <div class="bg-purple-900 p-3 rounded-full hover:bg-purple-800 transition-colors cursor-pointer"> | |
| <i class="fas fa-ghost text-2xl text-purple-300"></i> | |
| </div> | |
| </div> | |
| <nav class="flex-1 flex flex-col items-center space-y-8 w-full"> | |
| <a href="#" class="tooltip group relative flex items-center justify-center w-12 h-12 rounded-lg bg-purple-900 text-purple-300 hover:bg-purple-800 transition-colors"> | |
| <i class="fas fa-home text-xl"></i> | |
| <span class="tooltip-text group-hover:visible">Dashboard</span> | |
| </a> | |
| <a href="#" class="tooltip group relative flex items-center justify-center w-12 h-12 rounded-lg bg-gray-800 text-gray-400 hover:bg-gray-700 hover:text-purple-300 transition-colors"> | |
| <i class="fas fa-robot text-xl"></i> | |
| <span class="tooltip-text group-hover:visible">AI Modules</span> | |
| </a> | |
| <a href="#" class="tooltip group relative flex items-center justify-center w-12 h-12 rounded-lg bg-gray-800 text-gray-400 hover:bg-gray-700 hover:text-blue-300 transition-colors"> | |
| <i class="fas fa-film text-xl"></i> | |
| <span class="tooltip-text group-hover:visible">Content Studio</span> | |
| </a> | |
| <a href="#" class="tooltip group relative flex items-center justify-center w-12 h-12 rounded-lg bg-gray-800 text-gray-400 hover:bg-gray-700 hover:text-green-300 transition-colors"> | |
| <i class="fas fa-user-shield text-xl"></i> | |
| <span class="tooltip-text group-hover:visible">Privacy Center</span> | |
| </a> | |
| <a href="#" class="tooltip group relative flex items-center justify-center w-12 h-12 rounded-lg bg-gray-800 text-gray-400 hover:bg-gray-700 hover:text-pink-300 transition-colors"> | |
| <i class="fas fa-cog text-xl"></i> | |
| <span class="tooltip-text group-hover:visible">Settings</span> | |
| </a> | |
| </nav> | |
| <div class="mt-auto"> | |
| <div class="relative"> | |
| <div class="w-10 h-10 rounded-full bg-gray-700 overflow-hidden cursor-pointer"> | |
| <img src="https://randomuser.me/api/portraits/women/44.jpg" alt="User" class="w-full h-full object-cover"> | |
| </div> | |
| <div class="absolute bottom-0 right-0 w-3 h-3 bg-green-500 rounded-full border-2 border-gray-800"></div> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Main Container --> | |
| <div class="container mx-auto px-4 py-8 relative z-10 ml-16 md:ml-20"> | |
| <!-- Header --> | |
| <header class="flex flex-col md:flex-row justify-between items-start md:items-center mb-8 border-b border-gray-800 pb-6"> | |
| <div class="flex items-center space-x-4 mb-4 md:mb-0"> | |
| <div class="bg-purple-900 p-3 rounded-full hover:bg-purple-800 transition-colors cursor-pointer"> | |
| <i class="fas fa-ghost text-2xl text-purple-300"></i> | |
| </div> | |
| <div> | |
| <h1 class="text-2xl md:text-3xl font-bold gradient-text text-3d"> | |
| SILENT SHADOW | |
| </h1> | |
| <p class="text-sm text-gray-400">Premium Adult Entertainment Multimodal Agent</p> | |
| </div> | |
| </div> | |
| <div class="flex flex-col sm:flex-row space-y-2 sm:space-y-0 sm:space-x-4"> | |
| <div class="flex items-center bg-gray-800 rounded-full px-4 py-2 hover:bg-gray-700 transition-colors cursor-pointer"> | |
| <div class="w-3 h-3 rounded-full bg-green-500 mr-2"></div> | |
| <span class="text-xs font-mono">NexusScrape v4.2</span> | |
| </div> | |
| <div class="flex items-center bg-gray-800 rounded-full px-4 py-2 hover:bg-gray-700 transition-colors cursor-pointer"> | |
| <div class="w-3 h-3 rounded-full bg-blue-500 mr-2"></div> | |
| <span class="text-xs font-mono">ORACLE v3.2</span> | |
| </div> | |
| <div class="flex items-center bg-red-900 rounded-full px-4 py-2 nsfw-badge cursor-pointer hover:bg-red-800 transition-colors"> | |
| <span class="text-xs font-bold">NSFW</span> | |
| </div> | |
| <div class="flex items-center bg-gray-800 rounded-full px-4 py-2 hover:bg-gray-700 transition-colors cursor-pointer"> | |
| <i class="fas fa-bell text-yellow-400 mr-2 text-sm"></i> | |
| <span class="text-xs font-mono">Alerts</span> | |
| </div> | |
| </div> | |
| </header> | |
| <!-- Stats Overview --> | |
| <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-8"> | |
| <div class="module-card p-4 flex items-center justify-between"> | |
| <div> | |
| <p class="text-xs text-gray-400 uppercase tracking-wider">Ghost Score</p> | |
| <p class="text-2xl font-bold text-purple-300">94%</p> | |
| </div> | |
| <div class="w-12 h-12 rounded-full bg-purple-900 flex items-center justify-center"> | |
| <i class="fas fa-shield-alt text-purple-300 text-xl"></i> | |
| </div> | |
| </div> | |
| <div class="module-card p-4 flex items-center justify-between"> | |
| <div> | |
| <p class="text-xs text-gray-400 uppercase tracking-wider">AI Efficiency</p> | |
| <p class="text-2xl font-bold text-blue-300">88%</p> | |
| </div> | |
| <div class="w-12 h-12 rounded-full bg-blue-900 flex items-center justify-center"> | |
| <i class="fas fa-brain text-blue-300 text-xl"></i> | |
| </div> | |
| </div> | |
| <div class="module-card p-4 flex items-center justify-between"> | |
| <div> | |
| <p class="text-xs text-gray-400 uppercase tracking-wider">Content Generated</p> | |
| <p class="text-2xl font-bold text-pink-300">1.2K</p> | |
| </div> | |
| <div class="w-12 h-12 rounded-full bg-pink-900 flex items-center justify-center"> | |
| <i class="fas fa-scroll text-pink-300 text-xl"></i> | |
| </div> | |
| </div> | |
| <div class="module-card p-4 flex items-center justify-between"> | |
| <div> | |
| <p class="text-xs text-gray-400 uppercase tracking-wider">Active Sessions</p> | |
| <p class="text-2xl font-bold text-green-300">24</p> | |
| </div> | |
| <div class="w-12 h-12 rounded-full bg-green-900 flex items-center justify-center"> | |
| <i class="fas fa-users text-green-300 text-xl"></i> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Main Content --> | |
| <div class="grid grid-cols-1 lg:grid-cols-3 gap-6"> | |
| <!-- Left Panel - Modules --> | |
| <div class="lg:col-span-1 space-y-6"> | |
| <!-- NSFW Filter Module --> | |
| <div class="module-card p-5 module-shadow"> | |
| <div class="flex items-center justify-between mb-4"> | |
| <h3 class="font-semibold text-purple-300 flex items-center"> | |
| <i class="fas fa-shield-alt mr-2"></i>NSFW Filter | |
| </h3> | |
| <div class="flex items-center space-x-2"> | |
| <span class="text-xs bg-gray-700 px-2 py-1 rounded">v2.4.1</span> | |
| <button class="text-gray-400 hover:text-purple-300 transition-colors"> | |
| <i class="fas fa-ellipsis-h"></i> | |
| </button> | |
| </div> | |
| </div> | |
| <div class="space-y-4"> | |
| <div> | |
| <div class="flex justify-between items-center mb-1"> | |
| <label class="block text-sm text-gray-400">Sensitivity Threshold</label> | |
| <span class="text-xs bg-gray-700 px-2 py-1 rounded" id="sensitivity-value">75%</span> | |
| </div> | |
| <input type="range" min="0" max="100" value="75" | |
| class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer" | |
| id="sensitivity-slider"> | |
| <div class="flex justify-between text-xs text-gray-400 mt-1"> | |
| <span>Lenient</span> | |
| <span>Strict</span> | |
| </div> | |
| </div> | |
| <div class="grid grid-cols-2 gap-3"> | |
| <div class="flex items-center justify-between bg-gray-800 rounded-lg p-3"> | |
| <span class="text-sm text-gray-400">Image Filter</span> | |
| <label class="relative inline-flex items-center cursor-pointer"> | |
| <input type="checkbox" class="sr-only peer" checked> | |
| <div class="w-9 h-5 bg-gray-700 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-4 after:w-4 after:transition-all peer-checked:bg-purple-600"></div> | |
| </label> | |
| </div> | |
| <div class="flex items-center justify-between bg-gray-800 rounded-lg p-3"> | |
| <span class="text-sm text-gray-400">Text Filter</span> | |
| <label class="relative inline-flex items-center cursor-pointer"> | |
| <input type="checkbox" class="sr-only peer" checked> | |
| <div class="w-9 h-5 bg-gray-700 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-4 after:w-4 after:transition-all peer-checked:bg-purple-600"></div> | |
| </label> | |
| </div> | |
| <div class="flex items-center justify-between bg-gray-800 rounded-lg p-3"> | |
| <span class="text-sm text-gray-400">Audio Filter</span> | |
| <label class="relative inline-flex items-center cursor-pointer"> | |
| <input type="checkbox" class="sr-only peer"> | |
| <div class="w-9 h-5 bg-gray-700 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-4 after:w-4 after:transition-all peer-checked:bg-purple-600"></div> | |
| </label> | |
| </div> | |
| <div class="flex items-center justify-between bg-gray-800 rounded-lg p-3"> | |
| <span class="text-sm text-gray-400">Video Filter</span> | |
| <label class="relative inline-flex items-center cursor-pointer"> | |
| <input type="checkbox" class="sr-only peer" checked> | |
| <div class="w-9 h-5 bg-gray-700 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-4 after:w-4 after:transition-all peer-checked:bg-purple-600"></div> | |
| </label> | |
| </div> | |
| </div> | |
| <div class="pt-2"> | |
| <button class="w-full bg-purple-800 hover:bg-purple-700 text-white py-2 px-4 rounded-lg text-sm font-medium transition-colors flex items-center justify-center"> | |
| <i class="fas fa-sync-alt mr-2"></i>Update Filter Models | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- TTS Engine Module --> | |
| <div class="module-card p-5 module-shadow"> | |
| <div class="flex items-center justify-between mb-4"> | |
| <h3 class="font-semibold text-blue-300 flex items-center"> | |
| <i class="fas fa-wave-square mr-2"></i>TTS Engine | |
| </h3> | |
| <div class="flex items-center space-x-2"> | |
| <span class="text-xs bg-gray-700 px-2 py-1 rounded">v1.8.3</span> | |
| <button class="text-gray-400 hover:text-blue-300 transition-colors"> | |
| <i class="fas fa-ellipsis-h"></i> | |
| </button> | |
| </div> | |
| </div> | |
| <div class="space-y-4"> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Voice Style</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Seductive (Default)</option> | |
| <option>Dominant</option> | |
| <option>Submissive</option> | |
| <option>Playful</option> | |
| <option>Whisper</option> | |
| <option>ASMR</option> | |
| <option>Narrative</option> | |
| </select> | |
| </div> | |
| <div> | |
| <div class="flex justify-between items-center mb-1"> | |
| <label class="block text-sm text-gray-400">Emotion Intensity</label> | |
| <span class="text-xs bg-gray-700 px-2 py-1 rounded" id="emotion-value">60%</span> | |
| </div> | |
| <input type="range" min="0" max="100" value="60" | |
| class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer" | |
| id="emotion-slider"> | |
| </div> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Voice Samples</label> | |
| <div class="grid grid-cols-3 gap-2"> | |
| <button class="bg-gray-800 hover:bg-gray-700 text-gray-300 py-1 px-2 rounded text-xs transition-colors"> | |
| Sample 1 | |
| </button> | |
| <button class="bg-gray-800 hover:bg-gray-700 text-gray-300 py-1 px-2 rounded text-xs transition-colors"> | |
| Sample 2 | |
| </button> | |
| <button class="bg-gray-800 hover:bg-gray-700 text-gray-300 py-1 px-2 rounded text-xs transition-colors"> | |
| Sample 3 | |
| </button> | |
| <button class="bg-gray-800 hover:bg-gray-700 text-gray-300 py-1 px-2 rounded text-xs transition-colors"> | |
| Sample 4 | |
| </button> | |
| <button class="bg-gray-800 hover:bg-gray-700 text-gray-300 py-1 px-2 rounded text-xs transition-colors"> | |
| Sample 5 | |
| </button> | |
| <button class="bg-blue-900 hover:bg-blue-800 text-blue-300 py-1 px-2 rounded text-xs transition-colors"> | |
| <i class="fas fa-plus mr-1"></i> New | |
| </button> | |
| </div> | |
| </div> | |
| <div class="pt-2"> | |
| <div class="voice-wave w-full h-14 rounded-lg flex items-center justify-center cursor-pointer hover:opacity-90 transition-opacity"> | |
| <div class="text-center"> | |
| <i class="fas fa-microphone text-white text-xl mb-1"></i> | |
| <p class="text-xs text-white">Click to Test Voice</p> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Consent Manager --> | |
| <div class="module-card p-5 module-shadow"> | |
| <div class="flex items-center justify-between mb-4"> | |
| <h3 class="font-semibold text-green-300 flex items-center"> | |
| <i class="fas fa-handshake mr-2"></i>Consent Manager | |
| </h3> | |
| <div class="flex items-center space-x-2"> | |
| <span class="text-xs bg-gray-700 px-2 py-1 rounded">Active</span> | |
| <button class="text-gray-400 hover:text-green-300 transition-colors"> | |
| <i class="fas fa-ellipsis-h"></i> | |
| </button> | |
| </div> | |
| </div> | |
| <div class="space-y-3"> | |
| <div class="flex items-start bg-gray-800 rounded-lg p-3"> | |
| <input id="age-consent" type="checkbox" class="w-4 h-4 mt-1 text-purple-600 bg-gray-700 border-gray-600 rounded focus:ring-purple-600" checked> | |
| <label for="age-consent" class="ml-2 text-sm text-gray-300"> | |
| <span class="font-medium">Age Verification</span> | |
| <p class="text-xs text-gray-400 mt-1">I confirm I am 18+ years old</p> | |
| </label> | |
| </div> | |
| <div class="flex items-start bg-gray-800 rounded-lg p-3"> | |
| <input id="content-consent" type="checkbox" class="w-4 h-4 mt-1 text-purple-600 bg-gray-700 border-gray-600 rounded focus:ring-purple-600" checked> | |
| <label for="content-consent" class="ml-2 text-sm text-gray-300"> | |
| <span class="font-medium">Content Consent</span> | |
| <p class="text-xs text-gray-400 mt-1">I consent to adult content</p> | |
| </label> | |
| </div> | |
| <div class="flex items-start bg-gray-800 rounded-lg p-3"> | |
| <input id="data-consent" type="checkbox" class="w-4 h-4 mt-1 text-purple-600 bg-gray-700 border-gray-600 rounded focus:ring-purple-600"> | |
| <label for="data-consent" class="ml-2 text-sm text-gray-300"> | |
| <span class="font-medium">Data Collection</span> | |
| <p class="text-xs text-gray-400 mt-1">Allow anonymous data collection</p> | |
| </label> | |
| </div> | |
| <div class="flex items-start bg-gray-800 rounded-lg p-3"> | |
| <input id="session-consent" type="checkbox" class="w-4 h-4 mt-1 text-purple-600 bg-gray-700 border-gray-600 rounded focus:ring-purple-600" checked> | |
| <label for="session-consent" class="ml-2 text-sm text-gray-300"> | |
| <span class="font-medium">Session Recording</span> | |
| <p class="text-xs text-gray-400 mt-1">Allow temporary session storage</p> | |
| </label> | |
| </div> | |
| <div class="pt-2"> | |
| <button class="w-full bg-green-800 hover:bg-green-700 text-white py-2 px-4 rounded-lg text-sm font-medium transition-colors flex items-center justify-center"> | |
| <i class="fas fa-lock mr-2"></i>Secure Session | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Center Panel - Main Interaction --> | |
| <div class="lg:col-span-2 space-y-6"> | |
| <!-- Scenario Generator --> | |
| <div class="module-card p-5 module-shadow"> | |
| <div class="flex items-center justify-between mb-4"> | |
| <h3 class="font-semibold text-pink-300 flex items-center"> | |
| <i class="fas fa-magic mr-2"></i>Scenario Generator | |
| </h3> | |
| <div class="flex space-x-2"> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-random mr-1"></i>Random | |
| </button> | |
| <button class="text-xs bg-pink-900 hover:bg-pink-800 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-plus mr-1"></i>New | |
| </button> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors"> | |
| <i class="fas fa-ellipsis-h"></i> | |
| </button> | |
| </div> | |
| </div> | |
| <div class="space-y-4"> | |
| <div class="grid grid-cols-1 md:grid-cols-2 gap-4"> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Setting</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Modern Apartment</option> | |
| <option>Beach Resort</option> | |
| <option>Office</option> | |
| <option>Fantasy Castle</option> | |
| <option>Sci-Fi Spaceship</option> | |
| <option>Victorian Mansion</option> | |
| <option>Outdoor Adventure</option> | |
| </select> | |
| </div> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Tone</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Romantic</option> | |
| <option>Kinky</option> | |
| <option>Vanilla</option> | |
| <option>BDSM</option> | |
| <option>Experimental</option> | |
| <option>Humorous</option> | |
| <option>Dark</option> | |
| </select> | |
| </div> | |
| </div> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Characters</label> | |
| <div class="flex flex-wrap gap-2"> | |
| <span class="tag px-3 py-1 rounded-full text-xs flex items-center cursor-pointer"> | |
| <span class="w-2 h-2 rounded-full bg-pink-500 mr-2"></span> | |
| Female Lead | |
| <button class="ml-2 text-gray-400 hover:text-white"> | |
| <i class="fas fa-times text-xs"></i> | |
| </button> | |
| </span> | |
| <span class="tag px-3 py-1 rounded-full text-xs flex items-center cursor-pointer"> | |
| <span class="w-2 h-2 rounded-full bg-blue-500 mr-2"></span> | |
| Male Partner | |
| <button class="ml-2 text-gray-400 hover:text-white"> | |
| <i class="fas fa-times text-xs"></i> | |
| </button> | |
| </span> | |
| <span class="tag px-3 py-1 rounded-full text-xs flex items-center cursor-pointer"> | |
| <span class="w-2 h-2 rounded-full bg-purple-500 mr-2"></span> | |
| Mysterious Stranger | |
| <button class="ml-2 text-gray-400 hover:text-white"> | |
| <i class="fas fa-times text-xs"></i> | |
| </button> | |
| </span> | |
| <button class="text-gray-400 hover:text-white text-xs flex items-center bg-gray-800 px-3 py-1 rounded-full transition-colors"> | |
| <i class="fas fa-plus mr-1"></i> Add Character | |
| </button> | |
| </div> | |
| </div> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Scenario Prompt</label> | |
| <textarea class="w-full input-field text-sm rounded-lg p-3 h-32" placeholder="Describe the scenario you want to generate...">Create a romantic evening scenario between two lovers reuniting after a long separation, with slow buildup and passionate payoff.</textarea> | |
| </div> | |
| <div class="grid grid-cols-1 md:grid-cols-3 gap-3"> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Length</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Medium</option> | |
| <option>Short</option> | |
| <option>Long</option> | |
| <option>Epic</option> | |
| </select> | |
| </div> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Detail Level</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Balanced</option> | |
| <option>Minimal</option> | |
| <option>Detailed</option> | |
| <option>Extreme</option> | |
| </select> | |
| </div> | |
| <div> | |
| <label class="block text-sm text-gray-400 mb-1">Output Format</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Script</option> | |
| <option>Narrative</option> | |
| <option>Dialogue Only</option> | |
| <option>JSON</option> | |
| </select> | |
| </div> | |
| </div> | |
| <div class="flex justify-between items-center pt-2"> | |
| <div class="flex space-x-2"> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-history mr-1"></i>History | |
| </button> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-bookmark mr-1"></i>Templates | |
| </button> | |
| </div> | |
| <button class="bg-pink-700 hover:bg-pink-600 text-white py-2 px-6 rounded-lg font-medium transition-colors flex items-center"> | |
| <i class="fas fa-sparkles mr-2"></i>Generate Scenario | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Output Display --> | |
| <div class="module-card p-5 module-shadow"> | |
| <div class="flex items-center justify-between mb-4"> | |
| <h3 class="font-semibold text-yellow-300 flex items-center"> | |
| <i class="fas fa-scroll mr-2"></i>Generated Content | |
| </h3> | |
| <div class="flex space-x-2"> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-text-width mr-1"></i>Format | |
| </button> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-download mr-1"></i>Export | |
| </button> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors"> | |
| <i class="fas fa-ellipsis-h"></i> | |
| </button> | |
| </div> | |
| </div> | |
| <div class="bg-gray-900 rounded-lg p-4 h-96 overflow-y-auto custom-scrollbar"> | |
| <div class="prose prose-invert max-w-none"> | |
| <h4 class="text-purple-300 font-bold mb-4">Reunion of Passion</h4> | |
| <p class="text-gray-300 mb-4">[Scene: A dimly lit modern apartment, the soft glow of city lights filtering through floor-to-ceiling windows. Smooth jazz plays at a low volume, creating an intimate atmosphere. The female lead stands by the window, her silhouette framed against the urban skyline. She wears a silk robe that catches the moonlight with every subtle movement. The door opens quietly.]</p> | |
| <div class="ml-6 border-l-2 border-blue-500 pl-4 my-4"> | |
| <p class="text-blue-300 font-medium">MALE PARTNER</p> | |
| <p class="text-gray-200 italic">(voice husky with emotion)</p> | |
| <p class="text-gray-200 mt-1">I've missed you... these six months felt like an eternity without your touch, your voice, your scent.</p> | |
| </div> | |
| <p class="text-gray-300 my-4">[She turns slowly, revealing the delicate features of her face now illuminated by the ambient light. Her eyes glisten with unshed tears as they lock with his. A silent understanding passes between them, charged with months of pent-up longing.]</p> | |
| <div class="ml-6 border-l-2 border-pink-500 pl-4 my-4"> | |
| <p class="text-pink-300 font-medium">FEMALE LEAD</p> | |
| <p class="text-gray-200 italic">(voice trembling, barely above a whisper)</p> | |
| <p class="text-gray-200 mt-1">Every night I dreamed of this moment... of your hands on my skin, your lips against mine... the way you make me feel alive.</p> | |
| </div> | |
| <p class="text-gray-300 my-4">[He crosses the room in three long strides, his movements purposeful yet restrained. When he reaches her, he hesitates for just a heartbeat before pulling her into an embrace that conveys all the longing of their separation. The kiss starts tender, a gentle reunion of lips that quickly deepens as months of desire come rushing to the surface. Her fingers tangle in his hair as his hands slide down her back, pulling her closer until not a whisper of space remains between them.]</p> | |
| <div class="ml-6 border-l-2 border-purple-500 pl-4 my-4"> | |
| <p class="text-purple-300 font-medium">NARRATOR</p> | |
| <p class="text-gray-200 mt-1">Time seems to stand still as their bodies remember the dance of intimacy, rediscovering each other with a hunger that only absence can create. The silk robe slips from her shoulders as his kisses trail down her neck, each touch reigniting memories and creating new ones simultaneously.</p> | |
| </div> | |
| <p class="text-gray-300 my-4">[The scene transitions naturally to the bedroom, where the reunion reaches its passionate crescendo. The jazz music continues to play, its rhythm matching the rising intensity of their connection. What follows is a night of reconnection, where every touch, every whisper, every gasp serves to erase the time they spent apart.]</p> | |
| </div> | |
| </div> | |
| <div class="flex justify-between items-center mt-4"> | |
| <div class="text-xs text-gray-400 flex items-center"> | |
| <i class="fas fa-shield-alt mr-1"></i> | |
| <span>Content filtered for compliance | Generated: 2 minutes ago</span> | |
| </div> | |
| <div class="flex space-x-2"> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-robot mr-1"></i>Regenerate | |
| </button> | |
| <button class="text-xs bg-yellow-800 hover:bg-yellow-700 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-volume-up mr-1"></i>Narrate | |
| </button> | |
| <button class="text-xs bg-purple-800 hover:bg-purple-700 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-save mr-1"></i>Save | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Multimedia Integration --> | |
| <div class="module-card p-5 module-shadow"> | |
| <div class="flex items-center justify-between mb-4"> | |
| <h3 class="font-semibold text-indigo-300 flex items-center"> | |
| <i class="fas fa-photo-video mr-2"></i>Multimedia Integration | |
| </h3> | |
| <div class="flex space-x-2"> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-upload mr-1"></i>Upload | |
| </button> | |
| <button class="text-xs bg-indigo-900 hover:bg-indigo-800 px-3 py-1 rounded transition-colors flex items-center"> | |
| <i class="fas fa-link mr-1"></i>Import | |
| </button> | |
| </div> | |
| </div> | |
| <div class="grid grid-cols-2 md:grid-cols-4 gap-3"> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden cursor-pointer group relative"> | |
| <img src="https://source.unsplash.com/random/300x200/?romantic" alt="Romantic" class="w-full h-24 object-cover"> | |
| <div class="absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity"> | |
| <i class="fas fa-play text-white text-xl"></i> | |
| </div> | |
| <div class="p-2"> | |
| <p class="text-xs text-gray-300 truncate">Evening Lights</p> | |
| </div> | |
| </div> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden cursor-pointer group relative"> | |
| <img src="https://source.unsplash.com/random/300x200/?couple" alt="Couple" class="w-full h-24 object-cover"> | |
| <div class="absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity"> | |
| <i class="fas fa-play text-white text-xl"></i> | |
| </div> | |
| <div class="p-2"> | |
| <p class="text-xs text-gray-300 truncate">Reunion</p> | |
| </div> | |
| </div> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden cursor-pointer group relative"> | |
| <img src="https://source.unsplash.com/random/300x200/?apartment" alt="Apartment" class="w-full h-24 object-cover"> | |
| <div class="absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity"> | |
| <i class="fas fa-play text-white text-xl"></i> | |
| </div> | |
| <div class="p-2"> | |
| <p class="text-xs text-gray-300 truncate">Modern Space</p> | |
| </div> | |
| </div> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden cursor-pointer group relative flex items-center justify-center"> | |
| <div class="text-center p-4"> | |
| <i class="fas fa-plus text-gray-400 text-xl mb-1"></i> | |
| <p class="text-xs text-gray-400">Add Media</p> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="mt-4"> | |
| <label class="block text-sm text-gray-400 mb-1">Background Music</label> | |
| <select class="w-full input-field text-sm rounded-lg p-2.5"> | |
| <option selected>Jazz - Night Mood</option> | |
| <option>Ambient - City Pulse</option> | |
| <option>Classical - Romantic Strings</option> | |
| <option>Electronic - Sensual Beats</option> | |
| <option>None</option> | |
| </select> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Advanced Tools Section --> | |
| <div class="mt-8"> | |
| <h3 class="text-lg font-semibold text-gray-300 mb-4 flex items-center"> | |
| <i class="fas fa-tools mr-2"></i>Advanced Tools | |
| </h3> | |
| <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4"> | |
| <div class="module-card p-4 flex items-center space-x-3 cursor-pointer hover:bg-gray-800 transition-colors"> | |
| <div class="w-10 h-10 rounded-full bg-purple-900 flex items-center justify-center"> | |
| <i class="fas fa-project-diagram text-purple-300"></i> | |
| </div> | |
| <div> | |
| <p class="font-medium text-gray-200">Branching Paths</p> | |
| <p class="text-xs text-gray-400">Create interactive scenarios</p> | |
| </div> | |
| </div> | |
| <div class="module-card p-4 flex items-center space-x-3 cursor-pointer hover:bg-gray-800 transition-colors"> | |
| <div class="w-10 h-10 rounded-full bg-blue-900 flex items-center justify-center"> | |
| <i class="fas fa-dna text-blue-300"></i> | |
| </div> | |
| <div> | |
| <p class="font-medium text-gray-200">Character Builder</p> | |
| <p class="text-xs text-gray-400">Design detailed personas</p> | |
| </div> | |
| </div> | |
| <div class="module-card p-4 flex items-center space-x-3 cursor-pointer hover:bg-gray-800 transition-colors"> | |
| <div class="w-10 h-10 rounded-full bg-pink-900 flex items-center justify-center"> | |
| <i class="fas fa-chart-line text-pink-300"></i> | |
| </div> | |
| <div> | |
| <p class="font-medium text-gray-200">Pacing Analyzer</p> | |
| <p class="text-xs text-gray-400">Optimize scene flow</p> | |
| </div> | |
| </div> | |
| <div class="module-card p-4 flex items-center space-x-3 cursor-pointer hover:bg-gray-800 transition-colors"> | |
| <div class="w-10 h-10 rounded-full bg-yellow-900 flex items-center justify-center"> | |
| <i class="fas fa-language text-yellow-300"></i> | |
| </div> | |
| <div> | |
| <p class="font-medium text-gray-200">Dialogue Polisher</p> | |
| <p class="text-xs text-gray-400">Enhance conversation quality</p> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Status Bar --> | |
| <footer class="mt-8 pt-4 border-t border-gray-800 flex flex-col md:flex-row justify-between items-center text-xs text-gray-500"> | |
| <div class="flex items-center space-x-4 mb-2 md:mb-0"> | |
| <div class="flex items-center"> | |
| <div class="status-indicator bg-green-500"></div> | |
| <span>Connection Secure</span> | |
| </div> | |
| <div class="hidden md:block">|</div> | |
| <div class="flex items-center"> | |
| <div class="status-indicator bg-purple-500"></div> | |
| <span>Ghost Score: <span class="text-gray-300">94%</span></span> | |
| </div> | |
| <div class="hidden md:block">|</div> | |
| <div class="flex items-center"> | |
| <div class="status-indicator bg-blue-500"></div> | |
| <span>AI Efficiency: <span class="text-gray-300">88%</span></span> | |
| </div> | |
| <div class="hidden md:block">|</div> | |
| <div>Last Update: <span class="text-gray-300">2 minutes ago</span></div> | |
| </div> | |
| <div class="flex items-center space-x-4"> | |
| <div class="flex items-center"> | |
| <i class="fas fa-database mr-1"></i> | |
| <span>NexusScrape v4.2</span> | |
| </div> | |
| <div class="hidden md:block">|</div> | |
| <div class="flex items-center"> | |
| <i class="fas fa-user-shield mr-1"></i> | |
| <span>SILENT SHADOW Protocol</span> | |
| </div> | |
| <div class="hidden md:block">|</div> | |
| <div class="flex items-center"> | |
| <i class="fas fa-code-branch mr-1"></i> | |
| <span>ORACLE v3.2</span> | |
| </div> | |
| </div> | |
| </footer> | |
| </div> | |
| <!-- Notification Toast --> | |
| <div class="fixed bottom-4 right-4 z-50 animate__animated animate__fadeInUp animate__faster"> | |
| <div class="bg-gray-800 border border-gray-700 rounded-lg p-3 shadow-lg flex items-start space-x-3 w-64"> | |
| <div class="bg-purple-900 p-2 rounded-full"> | |
| <i class="fas fa-bell text-purple-300"></i> | |
| </div> | |
| <div> | |
| <p class="font-medium text-sm text-gray-200">New Update Available</p> | |
| <p class="text-xs text-gray-400 mt-1">TTS Engine v1.9.0 ready to install</p> | |
| <div class="flex space-x-2 mt-2"> | |
| <button class="text-xs bg-purple-800 hover:bg-purple-700 px-2 py-1 rounded">Update</button> | |
| <button class="text-xs bg-gray-700 hover:bg-gray-600 px-2 py-1 rounded">Later</button> | |
| </div> | |
| </div> | |
| <button class="text-gray-400 hover:text-white ml-auto"> | |
| <i class="fas fa-times"></i> | |
| </button> | |
| </div> | |
| </div> | |
| <!-- Script for interactive elements --> | |
| <script> | |
| // DOM Elements | |
| const sensitivitySlider = document.getElementById('sensitivity-slider'); | |
| const sensitivityValue = document.getElementById('sensitivity-value'); | |
| const emotionSlider = document.getElementById('emotion-slider'); | |
| const emotionValue = document.getElementById('emotion-value'); | |
| const securityStatus = document.getElementById('security-status'); | |
| const voiceWave = document.querySelector('.voice-wave'); | |
| const notificationToast = document.querySelector('.fixed.bottom-4.right-4'); | |
| // Update sensitivity value display | |
| if (sensitivitySlider && sensitivityValue) { | |
| sensitivitySlider.addEventListener('input', function() { | |
| sensitivityValue.textContent = `${this.value}%`; | |
| }); | |
| } | |
| // Update emotion value display | |
| if (emotionSlider && emotionValue) { | |
| emotionSlider.addEventListener('input', function() { | |
| emotionValue.textContent = `${this.value}%`; | |
| }); | |
| } | |
| // Voice wave interaction | |
| if (voiceWave) { | |
| voiceWave.addEventListener('click', function() { | |
| this.classList.toggle('animate-pulse'); | |
| // Simulate recording | |
| setTimeout(() => { | |
| this.innerHTML = ` | |
| <div class="text-center"> | |
| <i class="fas fa-check text-green-400 text-xl mb-1"></i> | |
| <p class="text-xs text-white">Voice sample recorded</p> | |
| </div> | |
| `; | |
| // Revert after 2 seconds | |
| setTimeout(() => { | |
| this.innerHTML = ` | |
| <div class="text-center"> | |
| <i class="fas fa-microphone text-white text-xl mb-1"></i> | |
| <p class="text-xs text-white">Click to Test Voice</p> | |
| </div> | |
| `; | |
| }, 2000); | |
| }, 1000); | |
| }); | |
| } | |
| // Simulate security status updates | |
| const statusMessages = [ | |
| "SILENT SHADOW PROTOCOL ACTIVE | GHOST SCORE: 94% | ENCRYPTION: AES-256 | PROXY MESH: ONLINE", | |
| "SECURE ROUTING THROUGH TOR NODES | DATA SCRAMBLING ACTIVE | GHOST SCORE: 93%", | |
| "NEURAL NETWORK OPTIMIZATION RUNNING | GHOST SCORE: 95% | ENCRYPTION VERIFIED", | |
| "ALL COMMUNICATIONS OBFUSCATED | GHOST SCORE: 94% | NO FINGERPRINTS DETECTED" | |
| ]; | |
| if (securityStatus) { | |
| setInterval(() => { | |
| const randomIndex = Math.floor(Math.random() * statusMessages.length); | |
| securityStatus.textContent = statusMessages[randomIndex]; | |
| // Add animation | |
| securityStatus.classList.add('animate__fadeIn'); | |
| setTimeout(() => { | |
| securityStatus.classList.remove('animate__fadeIn'); | |
| }, 1000); | |
| }, 8000); | |
| } | |
| // Close notification toast | |
| if (notificationToast) { | |
| const closeButton = notificationToast.querySelector('button'); | |
| if (closeButton) { | |
| closeButton.addEventListener('click', function() { | |
| notificationToast.classList.add('animate__fadeOutRight'); | |
| setTimeout(() => { | |
| notificationToast.style.display = 'none'; | |
| }, 500); | |
| }); | |
| } | |
| // Auto-hide after 10 seconds | |
| setTimeout(() => { | |
| notificationToast.classList.add('animate__fadeOutRight'); | |
| setTimeout(() => { | |
| notificationToast.style.display = 'none'; | |
| }, 500); | |
| }, 10000); | |
| } | |
| // Simulate module card hover effects | |
| const moduleCards = document.querySelectorAll('.module-card'); | |
| moduleCards.forEach(card => { | |
| card.addEventListener('mouseenter', function() { | |
| this.style.transform = 'translateY(-3px)'; | |
| this.style.boxShadow = '0 15px 30px -5px rgba(0, 0, 0, 0.3)'; | |
| }); | |
| card.addEventListener('mouseleave', function() { | |
| this.style.transform = 'translateY(0)'; | |
| this.style.boxShadow = '0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -2px rgba(0, 0, 0, 0.2)'; | |
| }); | |
| }); | |
| // Tag interaction | |
| const tags = document.querySelectorAll('.tag'); | |
| tags.forEach(tag => { | |
| tag.addEventListener('click', function() { | |
| this.classList.toggle('bg-purple-900'); | |
| this.classList.toggle('border-purple-500'); | |
| }); | |
| }); | |
| // Simulate system load | |
| window.addEventListener('load', function() { | |
| setTimeout(() => { | |
| const loadingElements = document.querySelectorAll('.status-indicator'); | |
| loadingElements.forEach(el => { | |
| el.style.animation = 'pulse 1.5s infinite'; | |
| }); | |
| setTimeout(() => { | |
| loadingElements.forEach(el => { | |
| el.style.animation = 'none'; | |
| }); | |
| }, 3000); | |
| }, 500); | |
| }); | |
| // Performance optimization - Intersection Observer for lazy loading | |
| if ('IntersectionObserver' in window) { | |
| const observer = new IntersectionObserver((entries) => { | |
| entries.forEach(entry => { | |
| if (entry.isIntersecting) { | |
| const img = entry.target; | |
| img.src = img.dataset.src; | |
| observer.unobserve(img); | |
| } | |
| }); | |
| }, { | |
| rootMargin: '100px', | |
| threshold: 0.01 | |
| }); | |
| document.querySelectorAll('img[data-src]').forEach(img => { | |
| observer.observe(img); | |
| }); | |
| } | |
| </script> | |
| <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=Boobs00/silent-shadow-3" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body> | |
| </html> |