<!DOCTYPE html><html lang="" x-data="{ menuOpen: false }" data-theme="dark"><head> <script> (function(){ var t = localStorage.getItem('theme') || 'dark'; document.documentElement.setAttribute('data-theme', t); })(); </script> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="csrf-token" content="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <title>Сторінку не знайдено — Нінгма</title> <meta name="description" content="Буддизм в Україні — Орден Лунг-Жонг-па"> <link rel="stylesheet" href="/static/css/output.css"> <script src="https://unpkg.com/htmx.org@2.0.4" integrity="sha384-HGfztofotfshcF7+8n44JQL2oJmowVChPTg48S+jvZoztPfvwD79OC/LTtG6dMp+" crossorigin="anonymous" defer></script> <script src="https://unpkg.com/alpinejs@3.14.3" integrity="sha384-iZD2X8o1Zdq0HR5H/7oa8W30WS4No+zWCKUPD7fHRay9I1Gf+C4F8sVmw7zec1wW" crossorigin="anonymous" defer></script> <script> document.addEventListener('DOMContentLoaded', function() { const style = document.createElement('style'); let duration = (Math.random() * 20 + 10).toFixed(1); style.textContent = 'body::after { animation-duration: ' + duration + 's !important; }'; document.head.appendChild(style); setInterval(function() { duration = (Math.random() * 20 + 10).toFixed(1); style.textContent = 'body::after { animation-duration: ' + duration + 's !important; }'; }, 30000); }); </script> <style> html { position: relative; } html::after { content: ''; position: fixed; right: -220px; bottom: -220px; width: 1050px; height: 1050px; background-image: url('/static/images/mandala.svg'); background-size: contain; background-repeat: no-repeat; opacity: 0.08; pointer-events: none; z-index: 9999; animation: mandala-pulse 20s ease-in-out infinite; } @keyframes mandala-pulse { 0% { opacity: 0.08; } 50% { opacity: 0.22; } 100% { opacity: 0.08; } } </style></head> <body style="overflow-x:hidden" class="bg-bg text-text font-sans antialiased min-h-screen"> <header class="fixed top-0 left-0 right-0 z-50 px-6 md:px-12 h-16 md:h-18 flex items-center justify-between bg-gradient-to-b from-bg/98 to-bg/0 backdrop-blur-md"> <a id="site-logo" href="/" class="flex items-center gap-3 no-underline group"> <svg width="32" height="32" viewBox="0 0 40 40" fill="none"> <circle cx="20" cy="20" r="18" stroke="#C4972A" stroke-width="0.75" opacity="0.6"/> <circle cx="20" cy="20" r="3" fill="#C4972A" opacity="0.8"/> <line x1="20" y1="8" x2="20" y2="32" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="8" y1="20" x2="32" y2="20" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="11.5" y1="11.5" x2="28.5" y2="28.5" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="28.5" y1="11.5" x2="11.5" y2="28.5" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> </svg> <div class="flex flex-col leading-tight"> <span class="font-serif text-lg text-text tracking-wide">Нінгма</span> <span class="text-[10px] text-gold-dim tracking-widest uppercase">Буддизм в Україні</span> </div> </a> <nav class="hidden md:flex items-center gap-8"> <a href="/" class="text-text-dim hover:text-text text-xs tracking-widest uppercase transition-colors duration-300"> Главная </a> <a href="/articles/" class="text-text-dim hover:text-text text-xs tracking-widest uppercase transition-colors duration-300"> Учение </a> <a href="/library/" class="text-text-dim hover:text-text text-xs tracking-widest uppercase transition-colors duration-300"> Библиотека </a> <a href="/videogallery/" class="text-text-dim hover:text-text text-xs tracking-widest uppercase transition-colors duration-300"> Видео </a> <a href="/forum/" class="text-text-dim hover:text-text text-xs tracking-widest uppercase transition-colors duration-300"> Форум </a> <a href="/about/" class="text-text-dim hover:text-text text-xs tracking-widest uppercase transition-colors duration-300"> О нас </a> </nav> <div class="flex items-center gap-4"> <div class="hidden md:flex items-center gap-3"> <a id="login-btn" href="/accounts/login/" class="text-text-dim hover:text-gold text-xs tracking-widest uppercase transition-colors"> Войти </a> <a href="/accounts/signup/" class="border border-gold-dim text-gold px-3 py-1.5 text-[11px] tracking-widest uppercase hover:bg-gold/10 transition-colors"> Регистрация </a> </div> <div id="lang-switcher" class="hidden md:flex items-center gap-2 text-[11px] tracking-widest"> <form action="/i18n/setlang/" method="post" style="display:inline"> <input type="hidden" name="csrfmiddlewaretoken" value="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <input type="hidden" name="next" value="/forums/tools.php"> <input type="hidden" name="language" value="ru"> <button type="submit" class="text-gold transition-colors bg-transparent border-0 cursor-pointer p-0">RU</button> </form> <span class="text-text-faint">·</span> <form action="/i18n/setlang/" method="post" style="display:inline"> <input type="hidden" name="csrfmiddlewaretoken" value="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <input type="hidden" name="next" value="/forums/tools.php"> <input type="hidden" name="language" value="uk"> <button type="submit" class="text-text-faint hover:text-text-dim transition-colors bg-transparent border-0 cursor-pointer p-0">UA</button> </form> <span class="text-text-faint">·</span> <form action="/i18n/setlang/" method="post" style="display:inline"> <input type="hidden" name="csrfmiddlewaretoken" value="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <input type="hidden" name="next" value="/forums/tools.php"> <input type="hidden" name="language" value="en"> <button type="submit" class="text-text-faint hover:text-text-dim transition-colors bg-transparent border-0 cursor-pointer p-0">EN</button> </form> </div> <button class="text-text-dim hover:text-gold transition-colors p-1" hx-get="/search/" hx-target="#search-modal" hx-trigger="click"> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <circle cx="11" cy="11" r="8"/> <path d="m21 21-4.35-4.35"/> </svg> </button> <button id="theme-btn" onclick="toggleTheme()" class="text-text-dim hover:text-gold transition-colors p-1" aria-label="Тема"> <svg id="theme-icon-sun" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" style="display:none"> <circle cx="12" cy="12" r="5"/> <line x1="12" y1="1" x2="12" y2="3"/> <line x1="12" y1="21" x2="12" y2="23"/> <line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/> <line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/> <line x1="1" y1="12" x2="3" y2="12"/> <line x1="21" y1="12" x2="23" y2="12"/> <line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/> <line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/> </svg> <svg id="theme-icon-moon" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/> </svg> </button> <button id="burger-btn" class="md:hidden text-text-dim hover:text-gold transition-colors p-1" @click="menuOpen = !menuOpen" aria-label="Меню"> <svg x-show="!menuOpen" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <path d="M3 6h18M3 12h18M3 18h18"/> </svg> <svg x-show="menuOpen" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <path d="M18 6 6 18M6 6l12 12"/> </svg> </button> </div> </header> <div x-show="menuOpen" x-transition:enter="transition ease-out duration-200" x-transition:enter-start="opacity-0 -translate-y-2" x-transition:enter-end="opacity-100 translate-y-0" x-transition:leave="transition ease-in duration-150" x-transition:leave-start="opacity-100 translate-y-0" x-transition:leave-end="opacity-0 -translate-y-2" class="fixed top-16 left-0 right-0 z-40 bg-bg2 border-b border-border flex flex-col px-6 py-6 gap-5 md:hidden"> <a href="/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">Главная</a> <a href="/articles/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">Учение</a> <a href="/library/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">Библиотека</a> <a href="/videogallery/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">Видео</a> <a href="/forum/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">Форум</a> <a href="/about/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">О нас</a> <div class="flex gap-4 pt-2 border-t border-border"> <a href="/accounts/login/" @click="menuOpen = false" class="text-text-dim text-sm tracking-widest uppercase">Войти</a> <a href="/accounts/signup/" @click="menuOpen = false" class="text-gold text-sm tracking-widest uppercase">Регистрация</a> </div> <div class="flex gap-4 pt-2 border-t border-border text-xs tracking-widest"> <form action="/i18n/setlang/" method="post" style="display:inline"> <input type="hidden" name="csrfmiddlewaretoken" value="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <input type="hidden" name="next" value="/forums/tools.php"> <input type="hidden" name="language" value="ru"> <button type="submit" class="text-gold bg-transparent border-0 cursor-pointer p-0 text-xs tracking-widest">RU</button> </form> <form action="/i18n/setlang/" method="post" style="display:inline"> <input type="hidden" name="csrfmiddlewaretoken" value="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <input type="hidden" name="next" value="/forums/tools.php"> <input type="hidden" name="language" value="uk"> <button type="submit" class="text-text-faint bg-transparent border-0 cursor-pointer p-0 text-xs tracking-widest">UA</button> </form> <form action="/i18n/setlang/" method="post" style="display:inline"> <input type="hidden" name="csrfmiddlewaretoken" value="3M8BuynS3MCol7eLuARcdqQIVe4CEn22XoIxYs1zzqEgC4EjjKBy1X34q73mlxER"> <input type="hidden" name="next" value="/forums/tools.php"> <input type="hidden" name="language" value="en"> <button type="submit" class="text-text-faint bg-transparent border-0 cursor-pointer p-0 text-xs tracking-widest">EN</button> </form> </div> </div> <div id="search-modal"></div> <div x-data="{ agentOpen: false }"> <button id="agent-btn" @click="agentOpen = !agentOpen; var _o = agentOpen; if(window.innerWidth < 768) document.getElementById('scroll-top').style.display = _o ? 'none' : ''; if(window.innerWidth >= 768) document.querySelector('main').style.paddingRight = _o ? '420px' : ''.paddingRight = agentOpen ? '420px' : ''" x-show="!agentOpen" x-cloak class="fixed bottom-8 right-8 z-50 w-10 h-10 border border-gold-dim text-gold flex items-center justify-center hover:bg-gold/10 transition-all duration-300" style="animation:spulse 2.5s ease-in-out infinite"> <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/> </svg> </button> <div x-show="agentOpen" x-transition:enter="transition ease-out duration-200" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease-in duration-150" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" @click="agentOpen = false" class="fixed inset-0 z-50 bg-black/40 backdrop-blur-sm md:hidden" x-cloak></div> <div x-show="agentOpen" x-transition:enter="transition ease-out duration-300" x-transition:enter-start="translate-x-full" x-transition:enter-end="translate-x-0" x-transition:leave="transition ease-in duration-200" x-transition:leave-start="translate-x-0" x-transition:leave-end="translate-x-full" class="fixed right-0 top-0 bottom-0 z-50 w-full md:w-[420px] bg-bg border-l border-border flex flex-col shadow-2xl" x-cloak> <div class="flex items-center justify-between px-5 py-4 border-b border-border shrink-0"> <div class="flex items-center gap-3"> <svg width="24" height="24" viewBox="0 0 40 40" fill="none"> <circle cx="20" cy="20" r="18" stroke="#C4972A" stroke-width="0.75" opacity="0.6"/> <circle cx="20" cy="20" r="3" fill="#C4972A" opacity="0.8"/> <line x1="20" y1="8" x2="20" y2="32" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="8" y1="20" x2="32" y2="20" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> </svg> <div> <div class="font-serif text-sm text-text">Дорже Жамбо-лама</div> <div class="text-[10px] text-text-faint tracking-widest uppercase">Запитати Вчителя</div> </div> </div> <button @click="agentOpen = false" class="text-text-faint hover:text-text transition-colors p-1"> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <path d="M18 6 6 18M6 6l12 12"/> </svg> </button> </div> <div class="flex-1 overflow-hidden flex flex-col"> <div class="flex-1 flex flex-col items-center justify-center px-8 py-12 text-center"> <p class="font-serif text-xl font-light text-text mb-2">Вітаємо</p> <p class="text-text-faint text-sm leading-relaxed mb-8"> Щоб спілкуватись з асистентом, увійдіть або зареєструйтесь </p> <div class="flex flex-col gap-3 w-full max-w-xs"> <a href="/accounts/login/?next=/forums/tools.php" class="border border-gold-dim text-gold py-3 text-xs tracking-widest uppercase hover:bg-gold/10 transition-colors text-center"> Войти </a> <a href="/accounts/signup/?next=/forums/tools.php" class="border border-border text-text-dim py-3 text-xs tracking-widest uppercase hover:border-gold-dim hover:text-gold transition-colors text-center"> Зарегистрироваться </a> </div> </div> </div></div> <script>var _agentLoading = false;var _agentSessionId = 'sess_' + Math.random().toString(36).substr(2, 9);var _agentMsgCount = 0; function agentKeydown(e) { if (e.key === 'Enter' && !e.shiftKey) { e.preventDefault(); agentSend(); }} function agentResize(el) { el.style.height = 'auto'; el.style.height = Math.min(el.scrollHeight, 128) + 'px';} async function agentSend() { var input = document.getElementById('agent-input'); var text = input.value.trim(); if (!text || _agentLoading) return; input.value = ''; input.style.height = 'auto'; _agentLoading = true; _agentMsgCount++; var btn = document.getElementById('agent-send-btn'); if (btn) btn.disabled = true; agentAppendMsg('user', text); var loadingId = 'loading_' + Date.now(); agentAppendLoading(loadingId); try { var resp = await fetch('/agent/ask/', { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': agentGetCsrf(), }, body: JSON.stringify({text: text, session_id: _agentSessionId, source_filter: window._agentSourceFilter || null}), }); var data = await resp.json(); document.getElementById(loadingId)?.remove(); agentAppendMsg('agent', data.answer || data.error || '...'); if (_agentMsgCount >= 3) { document.getElementById('agent-rating').classList.remove('hidden'); } } catch(e) { document.getElementById(loadingId)?.remove(); agentAppendMsg('agent', 'Помилка з\'єднання. Спробуйте ще раз.'); } finally { _agentLoading = false; if (btn) btn.disabled = false; }} function agentAppendMsg(role, text) { var container = document.getElementById('agent-messages'); var isUser = role === 'user'; var div = document.createElement('div'); div.className = 'flex gap-3' + (isUser ? ' justify-end' : ''); if (isUser) { div.innerHTML = '<div class="bg-gold/10 border border-gold-dim/30 px-4 py-3 text-sm text-text leading-relaxed max-w-[85%]">' + agentEscape(text) + '</div>'; } else { div.innerHTML = '<div class="shrink-0 w-7 h-7 rounded-full border border-gold-dim flex items-center justify-center"><svg width="12" height="12" viewBox="0 0 40 40" fill="none"><circle cx="20" cy="20" r="3" fill="#C4972A"/></svg></div><div class="bg-bg2 border border-border px-4 py-3 text-sm text-text-dim leading-relaxed max-w-[85%]">' + text + '</div>'; } container.appendChild(div); container.scrollTop = container.scrollHeight;} function agentAppendLoading(id) { var container = document.getElementById('agent-messages'); var div = document.createElement('div'); div.id = id; div.className = 'flex gap-3'; div.innerHTML = '<div class="shrink-0 w-7 h-7 rounded-full border border-gold-dim flex items-center justify-center"><svg width="12" height="12" viewBox="0 0 40 40" fill="none"><circle cx="20" cy="20" r="3" fill="#C4972A"/></svg></div><div class="bg-bg2 border border-border px-4 py-3 text-sm text-text-faint"><span class="animate-pulse">···</span></div>'; container.appendChild(div); container.scrollTop = container.scrollHeight;} function agentEscape(text) { return text.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>');} function agentGetCsrf() { var meta = document.querySelector('meta[name="csrf-token"]'); return meta ? meta.getAttribute('content') : '';} function agentRate(stars) { document.querySelectorAll('#agent-stars button').forEach(function(btn, i) { btn.textContent = i < stars ? '★' : '☆'; btn.classList.toggle('text-gold', i < stars); }); fetch('/agent/rate/', { method: 'POST', headers: {'Content-Type': 'application/json', 'X-CSRFToken': agentGetCsrf()}, body: JSON.stringify({stars: stars, session_id: _agentSessionId}), });}</script> </div> <main class="pt-16" style="transition: padding-right 0.3s ease"> <div class="min-h-screen flex items-center justify-center px-6 py-24"> <div class="w-full max-w-md text-center"> <svg class="mx-auto mb-6" width="40" height="40" viewBox="0 0 40 40" fill="none"> <circle cx="20" cy="20" r="18" stroke="#C4972A" stroke-width="0.75" opacity="0.6"/> <circle cx="20" cy="20" r="3" fill="#C4972A" opacity="0.8"/> <line x1="20" y1="8" x2="20" y2="32" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="8" y1="20" x2="32" y2="20" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="11.5" y1="11.5" x2="28.5" y2="28.5" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="28.5" y1="11.5" x2="11.5" y2="28.5" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> </svg> <h1 class="font-serif text-3xl md:text-4xl font-light text-text mb-4">404</h1> <p class="text-text-dim text-sm leading-relaxed mb-8"> Сторінку не знайдено або посилання застаріле. </p> <a href="/" class="border border-gold-dim text-gold py-3 px-8 text-xs tracking-widest uppercase hover:bg-gold/10 transition-colors"> На главную </a> </div></div> </main> <footer class="border-t border-border mt-24 px-6 md:px-12 py-12 grid grid-cols-1 md:grid-cols-4 gap-10"> <div> <div class="flex items-center gap-3 mb-4"> <svg width="28" height="28" viewBox="0 0 40 40" fill="none"> <circle cx="20" cy="20" r="18" stroke="#C4972A" stroke-width="0.75" opacity="0.6"/> <circle cx="20" cy="20" r="3" fill="#C4972A" opacity="0.8"/> <line x1="20" y1="8" x2="20" y2="32" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> <line x1="8" y1="20" x2="32" y2="20" stroke="#C4972A" stroke-width="0.75" opacity="0.5"/> </svg> <span class="font-serif text-base text-text">Нінгма</span> </div> <p class="text-sm text-text-dim leading-relaxed"> Буддійський орден Лунг-Жонг-па в Україні. Понад 30 років несемо Вчення Будди. </p> </div> <div> <h4 class="text-[10px] tracking-widest uppercase text-text-faint mb-4">Учение</h4> <div class="flex flex-col gap-2"> <a href="/articles/" class="text-sm text-text-dim hover:text-gold transition-colors">Статьи</a> <a href="/library/" class="text-sm text-text-dim hover:text-gold transition-colors">Библиотека</a> <a href="/videogallery/" class="text-sm text-text-dim hover:text-gold transition-colors">Видео</a> </div> </div> <div> <h4 class="text-[10px] tracking-widest uppercase text-text-faint mb-4">Сообщество</h4> <div class="flex flex-col gap-2"> <a href="/forum/" class="text-sm text-text-dim hover:text-gold transition-colors">Форум</a> <a href="/about/" class="text-sm text-text-dim hover:text-gold transition-colors">О нас</a> <a href="/contact/" class="text-sm text-text-dim hover:text-gold transition-colors">Связь</a> <a href="/legal/" class="text-sm text-text-dim hover:text-gold transition-colors">Правовая информация</a> </div> </div> <div> <h4 class="text-[10px] tracking-widest uppercase text-text-faint mb-4">Поддержать</h4> <p class="text-sm text-text-dim leading-relaxed mb-4"> Поддержите развитие сайта </p> <a href="https://send.monobank.ua/jar/AfBMcvNQmY" target="_blank" class="inline-flex items-center gap-2 border border-gold-dim text-gold px-4 py-2 text-xs tracking-widest uppercase hover:bg-gold/10 transition-colors"> 🙏 Поддержать сайт </a> </div> </footer> <div class="border-t border-border px-6 md:px-12 py-4 flex flex-col md:flex-row justify-between items-center gap-2"> <p class="text-[11px] text-text-faint"> © 2026 Буддійський орден Лунг-Жонг-па в Україні </p> <p class="text-[10px] text-gold-dim tracking-widest">ОМ МА НІ ПЕМЕ ХУМ</p> </div> <!-- Tour --> <script src="/static/js/tour.js?v=2"></script> <button id="scroll-top" onclick="window.scrollTo({top:0,behavior:'smooth'})" style="left:50%;transform:translateX(-50%)" class="fixed bottom-8 z-50 w-10 h-10 border border-gold-dim text-gold flex items-center justify-center hover:bg-gold/10 transition-all duration-300 opacity-0 translate-y-4 pointer-events-none" aria-label="Наверх"> <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"> <path d="M12 19V5M5 12l7-7 7 7"/> </svg> </button> <script> const btn = document.getElementById('scroll-top'); window.addEventListener('scroll', () => { if (window.scrollY > 300) { btn.classList.remove('opacity-0','translate-y-4','pointer-events-none'); btn.classList.add('opacity-100','translate-y-0'); } else { btn.classList.add('opacity-0','translate-y-4','pointer-events-none'); btn.classList.remove('opacity-100','translate-y-0'); } }); </script> <div id="cookie-banner" class="fixed bottom-0 left-0 right-0 z-50 bg-bg2 border-t border-border px-6 py-4 flex flex-col md:flex-row items-center justify-between gap-4" style="display:none!important"> <p class="text-text-faint text-xs leading-relaxed max-w-2xl"> Цей сайт використовує файли cookie для забезпечення роботи сервісів. Продовжуючи перегляд, ви погоджуєтесь з використанням cookies. <a href="/legal/" class="text-gold hover:text-gold-dim transition-colors ml-1">Подробнее</a> </p> <button onclick="acceptCookies()" class="flex-shrink-0 border border-gold-dim text-gold px-6 py-2 text-xs tracking-widest uppercase hover:bg-gold/10 transition-colors"> Принять </button></div> <script> function acceptCookies() { localStorage.setItem('cookies_accepted', '1'); document.getElementById('cookie-banner').style.display = 'none'; } if (!localStorage.getItem('cookies_accepted')) { document.getElementById('cookie-banner').style.removeProperty('display'); }</script> <script> function toggleTheme() { const html = document.documentElement; const current = html.getAttribute('data-theme'); const next = current === 'light' ? 'dark' : 'light'; html.setAttribute('data-theme', next); localStorage.setItem('theme', next); document.getElementById('theme-icon-sun').style.display = next === 'light' ? 'block' : 'none'; document.getElementById('theme-icon-moon').style.display = next === 'dark' ? 'block' : 'none'; } (function() { const saved = localStorage.getItem('theme') || 'dark'; document.documentElement.setAttribute('data-theme', saved); document.addEventListener('DOMContentLoaded', function() { document.getElementById('theme-icon-sun').style.display = saved === 'light' ? 'block' : 'none'; document.getElementById('theme-icon-moon').style.display = saved === 'dark' ? 'block' : 'none'; }); })(); </script> <script src="/static/js/selection-tooltip.js?v=2"></script> <script src="/static/js/summarize-btn.js?v=1"></script><script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50d9ede244cc460e86997a9255e73365","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script></body></html>