/
SafePlace
/
SafePlaceOffSite
Обзор
Документация
Войти
/
SafePlace
/
SafePlaceOffSite
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
404.html
422 строки
17 KB
Kwit6
0
25 окт 2025, 15:32
25 окт 2025, 15:32
2f4bc1b
Код
Авторство
О чём код?
<!-- --> <!-- | $$ | $$ | $$ / $$$$$$ / $$$$$$ | $$$$$$$ | $$ --> <!-- | $$ | $$ | $$ / $$__ $$ /$$__ $$ | $$__ $$| $$ --> <!-- /$$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$$ | $$$$$$$ /$$ /$$ | $$ \__/ /$$$$$$ | $$ \__//$$$$$$ | $$ \ $$| $$ /$$$$$$ /$$$$$$$ /$$$$$$ --> <!-- /$$_____/ /$$__ $$ /$$__ $$ |____ $$|_ $$_/ /$$__ $$ /$$__ $$ | $$__ $$| $$ | $$ | $$$$$$ |____ $$| $$$$ /$$__ $$| $$$$$$$/| $$ |____ $$ /$$_____/ /$$__ $$ --> <!--| $$ | $$ \__/| $$$$$$$$ /$$$$$$$ | $$ | $$$$$$$$| $$ | $$ | $$ \ $$| $$ | $$ \____ $$ /$$$$$$$| $$_/ | $$$$$$$$| $$____/ | $$ /$$$$$$$| $$ | $$$$$$$$ --> <!--| $$ | $$ | $$_____/ /$$__ $$ | $$ /$$| $$_____/| $$ | $$ | $$ | $$| $$ | $$ /$$ \ $$ /$$__ $$| $$ | $$_____/| $$ | $$ /$$__ $$| $$ | $$_____/ --> <!--| $$$$$$$| $$ | $$$$$$$| $$$$$$$ | $$$$/| $$$$$$$| $$$$$$$ | $$$$$$$/| $$$$$$$ | $$$$$$/| $$$$$$$| $$ | $$$$$$$| $$ | $$| $$$$$$$| $$$$$$$| $$$$$$$ --> <!-- \_______/|__/ \_______/ \_______/ \___/ \_______/ \_______/ |_______/ \____ $$ \______/ \_______/|__/ \_______/|__/ |__/ \_______/ \_______/ \_______/ --> <!-- | $$ --> <!-- | $$$$$$/ --> <!-- \______/ --> <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>404 | SafeGames</title> <meta name="description" content="Страница не найдена. Вернитесь на главную страницу SafeGames"> <script src="https://cdn.tailwindcss.com"></script> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" rel="stylesheet"> <link rel="yandex-tableau-widget" href="tableau.json"> <link rel="icon" href="favicon.png" type="image/png"> <style> @import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;700&display=swap'); :root { --primary-bg: #0a0a0a; --secondary-bg: #1a1a1a; --accent-color: #8b5cf6; --accent-color-light: #a78bfa; --accent-color-dark: #7c3aed; --text-primary: #ffffff; --text-secondary: #d1d5db; } body { font-family: 'Rubik', sans-serif; background-color: var(--primary-bg); color: var(--text-primary); overflow-x: hidden; -webkit-tap-highlight-color: transparent; } .gradient-text { background: linear-gradient(90deg, #8b5cf6 0%, #c4b5fd 50%, #7c3aed 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-shadow: 0 0 10px rgba(139, 92, 246, 0.6), 0 0 20px rgba(139, 92, 246, 0.4), 0 0 30px rgba(124, 58, 237, 0.5); transition: text-shadow 0.3s ease, transform 0.3s ease; } .gradient-text:hover { text-shadow: 0 0 20px rgba(139, 92, 246, 0.8), 0 0 40px rgba(139, 92, 246, 0.6), 0 0 60px rgba(124, 58, 237, 0.8); transform: scale(1.03); } .glass { background: rgba(20, 20, 20, 0.3); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-radius: 16px; border: 1px solid rgba(139, 92, 246, 0.15); } .glow-purple-light { box-shadow: 0 0 15px rgba(139, 92, 246, 0.2); } .social-media-btn { display: flex; align-items: center; width: auto; } .social-media-icon { width: 32px; height: 32px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 16px; background: rgba(139, 92, 246, 0.2); border: 1px solid rgba(139, 92, 246, 0.3); transition: all 0.3s ease; } .social-media-btn:hover .social-media-icon { transform: translateY(-2px) scale(1.1); background: rgba(139, 92, 246, 0.35); box-shadow: 0 4px 12px rgba(139, 92, 246, 0.3); } .language-switcher { position: relative; display: inline-block; } .language-btn { background: rgba(139, 92, 246, 0.15); border: 2px solid rgba(139, 92, 246, 0.2); color: white; padding: 6px 10px; border-radius: 13px; cursor: pointer; display: flex; align-items: center; transition: all 0.2s ease; font-size: 12px; } .language-btn:hover { background: rgba(139, 92, 246, 0.25); transform: translateY(-1px); } .language-btn i { margin-right: 4px; } .language-dropdown { display: none; position: absolute; right: 0; background: rgba(30, 30, 30, 0.95); min-width: 80px; border-radius: 10px; box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); z-index: 100; border: 1px solid rgba(139, 92, 246, 0.2); } .language-switcher:hover .language-dropdown { display: block; } .language-option { padding: 8px 12px; text-decoration: none; display: block; color: white; font-size: 12px; transition: background-color 0.2s; } .language-option:hover { background: rgba(139, 92, 246, 0.2); } .platform-btn { display: inline-flex; align-items: center; justify-content: center; padding: 8px 14px; border-radius: 20px; background: rgba(139, 92, 246, 0.15); color: white; font-size: 12px; transition: all 0.3s ease; text-decoration: none; white-space: nowrap; border: 1px solid rgba(139, 92, 246, 0.2); } .platform-btn:hover { background: rgba(139, 92, 246, 0.3); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(139, 92, 246, 0.2); } .platform-btn i { margin-right: 6px; } nav { position: fixed; top: 0; width: 100%; z-index: 50; padding: 1rem 0; display: flex; justify-content: center; } nav .container { width: calc(100% - 1rem); max-width: 1200px; margin: 0 auto; background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(10px); border-radius: 16px; border: 1px solid rgba(139, 92, 246, 0.3); padding: 0.75rem 1rem; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); } footer { position: relative; width: 100%; padding: 1.5rem 0; display: flex; justify-content: center; } footer .container { width: calc(100% - 1rem); max-width: 1200px; margin: 0 auto; background: rgba(20, 20, 20, 0.3); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-radius: 16px; border: 1px solid rgba(139, 92, 246, 0.15); padding: 1.5rem 1rem; box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.2); } @media (max-width: 768px) { nav, footer { padding: 0.75rem 0; } nav .container, footer .container { width: calc(100% - 1rem); padding: 0.5rem 0.75rem; } .hero-title { font-size: 3rem; } .hero-subtitle { font-size: 1.25rem; } } @media (max-width: 480px) { nav, footer { padding: 0.5rem 0; } nav .container, footer .container { width: calc(100% - 0.5rem); padding: 0.5rem; } .hero-title { font-size: 2rem; } .hero-subtitle { font-size: 1rem; } .social-media-icon { width: 24px; height: 24px; font-size: 12px; } } </style> </head> <body class="bg-black"> <!-- Background Elements --> <div class="fixed inset-0 bg-gradient-to-br from-black via-purple-900/10 to-black z-0"></div> <div class="fixed radial-gradient w-[300px] h-[300px] -top-[150px] -right-[150px] bg-purple-500/20 blur-[80px] opacity-30 z-0"></div> <div class="fixed radial-gradient w-[300px] h-[300px] -bottom-[150px] -left-[150px] bg-purple-700/20 blur-[80px] opacity-30 z-0"></div> <div id="particles-js" class="fixed inset-0 z-0"></div> <!-- Navigation --> <nav class="fixed w-full z-50"> <div class="container mx-auto flex justify-between items-center"> <div class="flex items-center space-x-2"> <img src="logo.png" alt="SafePlace Logo" class="w-8 h-8 md:w-10 md:h-10"> </div> <div class="flex items-center space-x-4"> <!-- Social Media Buttons --> <div class="flex items-center gap-2"> <a href="https://t.me/Safe_Place_official" target="_blank" class="social-media-btn"> <div class="social-media-icon"><i class="fab fa-telegram"></i></div> </a> <a href="https://safeplace.itch.io/" target="_blank" class="social-media-btn"> <div class="social-media-icon"><i class="fab fa-itch-io"></i></div> </a> <a href="https://github.com/Safe-Place-Official" target="_blank" class="social-media-btn"> <div class="social-media-icon"><i class="fab fa-github"></i></div> </a> <a href="https://www.youtube.com/@Safe--Place" target="_blank" class="social-media-btn"> <div class="social-media-icon"><i class="fab fa-youtube"></i></div> </a> <a href="https://dzen.ru/safe_place_official" target="_blank" class="social-media-btn"> <div class="social-media-icon"><i class="fas fa-newspaper"></i></div> </a> <a href="https://getgems.io/safeplace" target="_blank" class="social-media-btn"> <div class="social-media-icon"><i class="fas fa-gem"></i></div> </a> </div> <!-- Language Switcher --> <div class="language-switcher"> <button class="language-btn" id="current-language"> <i class="fas fa-globe"></i> <span id="language-text">RU</span> </button> <div class="language-dropdown"> <a href="#" class="language-option" data-lang="ru">RU</a> <a href="#" class="language-option" data-lang="en">EN</a> </div> </div> </div> </div> </nav> <!-- 404 Section --> <section class="relative min-h-screen flex items-center justify-center pt-16 pb-20 px-4"> <div class="absolute inset-0 bg-gradient-to-b from-black/0 via-purple-900/5 to-black/0 z-10"></div> <div class="container mx-auto relative z-20 text-center px-4"> <h1 class="hero-title text-5xl md:text-7xl font-bold mb-6 gradient-text leading-tight" data-i18n="404.title">404</h1> <p class="hero-subtitle text-lg md:text-xl text-gray-300 max-w-2xl mx-auto mb-8" data-i18n="404.subtitle">Page Not Found</p> <a href="/" class="platform-btn inline-flex items-center"><i class="fas fa-home"></i><span data-i18n="404.home">Back to Home</span></a> </div> </section> <!-- Footer --> <footer class="py-8 md:py-12"> <div class="container mx-auto px-4 md:px-6 flex justify-center items-center"> <div class="text-center text-gray-400 text-sm" data-i18n="footer.copyright">© 2025 SafeGames. All rights reserved.</div> </div> </footer> <script src="https://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"></script> <script> // Particles.js config document.addEventListener('DOMContentLoaded', () => { particlesJS('particles-js', { particles: { number: { value: 80, density: { enable: true, value_area: 800 } }, color: { value: "#8b5cf6" }, shape: { type: "circle" }, opacity: { value: 0.5, random: true }, size: { value: 3, random: true }, line_linked: { enable: true, distance: 150, color: "#8b5cf6", opacity: 0.4, width: 1 }, move: { enable: true, speed: 2, direction: "none", random: true, straight: false, out_mode: "out" } }, interactivity: { detect_on: "canvas", events: { onhover: { enable: false, mode: "repulse" }, onclick: { enable: false, mode: "push" } } } }); }); // Translation data const translations = { ru: { "404.title": "404", "404.subtitle": "Страница не найдена", "404.home": "На главную", "footer.copyright": "© 2025 SafeGames. Все права защищены." }, en: { "404.title": "404", "404.subtitle": "Page Not Found", "404.home": "Back to Home", "footer.copyright": "© 2025 SafeGames. All rights reserved." } }; // Current language let currentLanguage = 'ru'; // Function to translate the page function translatePage(lang) { currentLanguage = lang; document.getElementById('language-text').textContent = lang === 'ru' ? 'RU' : 'EN'; document.querySelectorAll('[data-i18n]').forEach(element => { const key = element.getAttribute('data-i18n'); if (translations[lang][key]) { element.textContent = translations[lang][key]; } }); } // Language switcher functionality document.querySelectorAll('.language-option').forEach(option => { option.addEventListener('click', e => { e.preventDefault(); translatePage(option.getAttribute('data-lang')); document.querySelectorAll('.language-dropdown').forEach(dropdown => { dropdown.style.display = 'none'; }); }); }); // Toggle dropdowns on button click document.querySelectorAll('.language-btn').forEach(btn => { btn.addEventListener('click', e => { e.stopPropagation(); const dropdown = btn.nextElementSibling; dropdown.style.display = dropdown.style.display === 'block' ? 'none' : 'block'; }); }); // Close dropdowns when clicking outside document.addEventListener('click', () => { document.querySelectorAll('.language-dropdown').forEach(dropdown => { dropdown.style.display = 'none'; }); }); // Initialize page with Russian language translatePage('ru'); // Disable animations for reduced motion if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) { document.querySelectorAll('[class*="animate-"]').forEach(el => { el.style.animation = 'none'; }); } </script> </body> </html>