<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:base="https://www.pandoraburo.ru/" xml:lang="ru">
  <id>https://www.pandoraburo.ru/runy-futarka-nox</id>
  <link href="https://www.pandoraburo.ru/runy-futarka-nox.xml" rel="self"/>
  <title>Руны Футарка — NOX</title>
  <subtitle type="html">
&lt;html lang="ru"&gt;
&lt;head&gt;
&lt;meta charset="UTF-8"&gt;
&lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
&lt;meta name="theme-color" content="#05070f"&gt;
&lt;title&gt;Руны Футарка — NOX · Оракул Ночи&lt;/title&gt;
&lt;meta name="description" content="Гадание на рунах Футарка онлайн: руна дня, три руны, расклад Крест. Значение 24 скандинавских рун Старшего Футарка."&gt;
&lt;meta name="keywords" content="руны футарк, гадание на рунах, руна дня, старший футарк, значение рун, скандинавские руны, феху, уруз, ансуз, альгиз, совило, руны онлайн"&gt;

&lt;link rel="preconnect" href="https://fonts.googleapis.com" /&gt;
&lt;link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="crossorigin" /&gt;
&lt;link href="https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;800&amp;amp;family=Inter:wght@400;500;600;700;800&amp;amp;family=JetBrains+Mono:wght@400;700&amp;amp;display=swap" rel="stylesheet" /&gt;
&lt;link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" /&gt;

&lt;style&gt;
/* ═══════════ ПЕРЕМЕННЫЕ ═══════════ */
:root{
  --bg-0:#05070f; --bg-1:#0a0f1e; --bg-2:#101830;
  --cyan:#00f0ff; --magenta:#ff2bd6; --gold:#d4af37; --gold-b:#f0d060;
  --violet:#b55cff; --green:#39ff14; --orange:#ff8a1e;
  --text:#e8f4ff; --dim:#8aa0c0; --line:rgba(255,255,255,.08);
  --font-disp:'Cinzel',serif;
  --font-body:'Inter',system-ui,sans-serif;
  --font-mono:'JetBrains Mono',monospace;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{
  min-height:100vh;
  background:radial-gradient(ellipse at top,#0a1530 0%,var(--bg-0) 70%);
  color:var(--text);
  font-family:var(--font-body);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(circle at 10% 20%,rgba(212,175,55,.1),transparent 40%),
    radial-gradient(circle at 90% 80%,rgba(0,240,255,.08),transparent 40%),
    radial-gradient(circle at 50% 50%,rgba(212,175,55,.04),transparent 50%);
}
body::after{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:1;
  background-image:
    radial-gradient(1px 1px at 20% 30%,#fff,transparent),
    radial-gradient(1px 1px at 60% 70%,#fff,transparent),
    radial-gradient(1px 1px at 80% 10%,#fff,transparent),
    radial-gradient(1px 1px at 35% 85%,#fff,transparent),
    radial-gradient(2px 2px at 45% 15%,#f0d060,transparent),
    radial-gradient(1px 1px at 70% 90%,#d4af37,transparent);
  opacity:.5;
  animation:stars 8s ease-in-out infinite alternate;
}
@keyframes stars{0%{opacity:.3}100%{opacity:.7}}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}

/* ═══════════ ШАПКА ═══════════ */
.nox-header{
  position:sticky;top:0;z-index:50;
  padding:14px 20px;
  background:rgba(5,7,15,.85);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.nox-logo{
  display:flex;align-items:center;gap:10px;
  text-decoration:none;color:inherit;
  transition:transform .2s;
}
.nox-logo:hover{transform:scale(1.03)}
.nox-logo-icon{
  width:38px;height:38px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,#2a1b60,#0a0820);
  border:2px solid var(--gold);
  display:flex;align-items:center;justify-content:center;
  font-size:18px;color:var(--gold);
  box-shadow:0 0 20px rgba(212,175,55,.5);
}
.nox-logo-text{
  font-family:var(--font-disp);
  font-size:20px;font-weight:800;letter-spacing:5px;
  background:linear-gradient(90deg,var(--gold),var(--gold-b));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.nox-menu-btn{
  display:flex;align-items:center;gap:8px;
  padding:9px 16px;border-radius:999px;
  background:rgba(212,175,55,.1);
  border:1px solid rgba(212,175,55,.4);
  color:var(--gold-b);font-size:12px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
  transition:.2s;
}
.nox-menu-btn:hover{background:rgba(212,175,55,.2);box-shadow:0 0 15px rgba(212,175,55,.3)}

/* ═══════════ БЕГУЩАЯ СТРОКА ═══════════ */
.nox-happiness{
  max-width:900px;margin:16px auto 8px;padding:12px 18px;
  background:linear-gradient(90deg,rgba(212,175,55,.08),rgba(0,240,255,.08),rgba(255,43,214,.08));
  border:1px solid rgba(212,175,55,.4);
  border-radius:999px;
  display:flex;align-items:center;gap:12px;
  position:relative;overflow:hidden;
  box-shadow:0 0 25px rgba(212,175,55,.15);
  margin-left:20px;margin-right:20px;
}
.nox-happiness-icon{
  font-size:18px;color:var(--gold);flex-shrink:0;
  animation:twinkle 2s ease-in-out infinite alternate;
}
@keyframes twinkle{0%{filter:drop-shadow(0 0 5px var(--gold))}100%{filter:drop-shadow(0 0 15px var(--gold))}}
.nox-happiness-text{
  flex:1;font-size:13px;color:#fff;line-height:1.4;font-style:italic;
  transition:opacity .5s,transform .5s;
  text-shadow:0 0 8px rgba(212,175,55,.3);
}
.nox-happiness-text.flip{opacity:0;transform:translateY(8px)}
.nox-happiness-btn{
  font-size:10px;color:var(--gold);font-weight:700;
  padding:4px 10px;border:1px solid var(--gold);border-radius:999px;
  letter-spacing:1px;text-transform:uppercase;transition:.2s;flex-shrink:0;
}
.nox-happiness-btn:hover{background:var(--gold);color:#0a0a0a}

/* ═══════════ ХЛЕБНЫЕ КРОШКИ ═══════════ */
.nox-crumbs{
  max-width:1200px;margin:0 auto;padding:0 20px;
  font-size:11px;color:var(--dim);
  display:flex;align-items:center;gap:8px;
  letter-spacing:.5px;
}
.nox-crumbs a{color:var(--dim);text-decoration:none;transition:.2s}
.nox-crumbs a:hover{color:var(--cyan)}
.nox-crumbs .sep{opacity:.5}
.nox-crumbs .cur{color:var(--gold-b)}

/* ═══════════ ОСНОВНОЙ КОНТЕНТ ═══════════ */
.nox-main{
  max-width:1200px;margin:0 auto;padding:24px 20px 40px;
  position:relative;z-index:10;
}
.nox-title{
  font-family:var(--font-disp);
  font-size:clamp(28px,5vw,44px);font-weight:800;
  letter-spacing:4px;text-transform:uppercase;
  background:linear-gradient(90deg,var(--gold),var(--cyan),var(--gold-b));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  text-align:center;
  margin-bottom:8px;
  filter:drop-shadow(0 0 40px rgba(212,175,55,.4));
}
.nox-title-sub{
  text-align:center;color:var(--dim);font-size:13px;
  letter-spacing:3px;text-transform:uppercase;
  margin-bottom:26px;font-style:italic;
}

/* ═══════════ ТАБЫ ═══════════ */
.nox-tabs{
  display:flex;justify-content:center;gap:10px;
  margin-bottom:26px;flex-wrap:wrap;
}
.nox-tab{
  padding:12px 26px;border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  color:var(--dim);
  font-size:13px;font-weight:700;
  letter-spacing:1.2px;text-transform:uppercase;
  transition:all .3s;
  display:inline-flex;align-items:center;gap:8px;
}
.nox-tab:hover{
  color:var(--gold);border-color:var(--gold);
  box-shadow:0 0 15px rgba(212,175,55,.3);
}
.nox-tab.on{
  background:linear-gradient(135deg,rgba(212,175,55,.2),rgba(0,240,255,.1));
  color:#fff;border-color:var(--gold);
  box-shadow:0 0 25px rgba(212,175,55,.5);
  text-shadow:0 0 10px var(--gold);
}

/* ═══════════ СЦЕНА ═══════════ */
.nox-stage-wrap{display:none}
.nox-stage-wrap.on{display:block;animation:stageIn .5s ease}
@keyframes stageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.nox-stage{
  position:relative;
  border-radius:24px;
  background:radial-gradient(ellipse at 50% 0%,#1a1030 0%,#0a0820 60%,#05070f 100%);
  border:1px solid rgba(212,175,55,.25);
  box-shadow:inset 0 0 80px rgba(0,0,0,.7),0 0 40px rgba(212,175,55,.08);
  overflow:hidden;
  min-height:480px;
  padding:30px 20px;
  margin-bottom:20px;
}

/* ═══════════ МЕШОЧЕК ═══════════ */
.rune-bag-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin:20px 0 30px;
}
.rune-bag{
  width:160px;height:160px;
  border-radius:40% 40% 50% 50%;
  background:radial-gradient(circle at 40% 30%,#3a2a70,#1a1035 70%,#0a0820);
  border:3px solid var(--gold);
  box-shadow:
    0 0 40px rgba(212,175,55,.4),
    inset 0 0 30px rgba(0,0,0,.6),
    inset 0 8px 20px rgba(212,175,55,.2);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:70px;
  cursor:pointer;
  transition:transform .2s;
  position:relative;
}
.rune-bag::before{
  content:'';position:absolute;
  inset:8px;border-radius:40% 40% 50% 50%;
  border:1px dashed rgba(212,175,55,.3);
  pointer-events:none;
}
.rune-bag::after{
  content:'';position:absolute;
  top:-8px;left:50%;transform:translateX(-50%);
  width:20px;height:12px;
  background:var(--gold);
  border-radius:4px;
  box-shadow:0 0 10px var(--gold);
}
.rune-bag:hover{transform:scale(1.05)}
.rune-bag.shaking{
  animation:bagShake .35s ease-in-out infinite;
}
@keyframes bagShake{
  0%,100%{transform:rotate(-5deg)}
  50%{transform:rotate(5deg)}
}
.rune-bag-hint{
  margin-top:14px;
  font-size:12px;color:var(--dim);font-style:italic;
  letter-spacing:1px;
}

/* ═══════════ ВЫПАВШИЕ РУНЫ ═══════════ */
.runes-row{
  display:flex;
  justify-content:center;
  gap:20px;
  flex-wrap:wrap;
  min-height:200px;
  margin:20px 0;
}
.rune-card{
  width:120px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  opacity:0;
  transform:translateY(-40px) scale(.5) rotate(-20deg);
  transition:all .8s cubic-bezier(.34,1.56,.64,1);
}
.rune-card.shown{
  opacity:1;
  transform:translateY(0) scale(1) rotate(0);
}
.rune-card.rev .rune-symbol{
  transform:rotate(180deg);
}
.rune-card-label{
  font-family:var(--font-disp);
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--dim);
}
.rune-card-stone{
  width:120px;height:120px;
  border-radius:50%;
  background:radial-gradient(circle at 30% 30%,#2a2050,#0f0825 70%);
  border:2px solid var(--gold);
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:
    0 0 25px rgba(212,175,55,.5),
    inset 0 0 20px rgba(0,0,0,.6),
    inset 0 4px 10px rgba(212,175,55,.15);
  position:relative;
  transition:box-shadow .3s;
}
.rune-card.shown .rune-card-stone{
  box-shadow:
    0 0 45px rgba(212,175,55,.8),
    0 0 80px rgba(212,175,55,.3),
    inset 0 0 20px rgba(0,0,0,.6),
    inset 0 4px 10px rgba(212,175,55,.3);
}
.rune-symbol{
  font-size:56px;
  color:var(--gold-b);
  text-shadow:
    0 0 15px rgba(240,214,138,.8),
    0 0 30px rgba(212,175,55,.5);
  transition:transform .4s;
  font-family:'Segoe UI Symbol',serif;
  line-height:1;
}
.rune-card-name{
  font-family:var(--font-disp);
  font-size:14px;
  color:#fff;
  letter-spacing:1px;
  text-align:center;
  margin-top:2px;
}

/* Специальная сетка для Креста */
.cross-layout{
  position:relative;
  width:100%;
  max-width:560px;
  height:480px;
  margin:20px auto;
}
.cross-layout .rune-card{
  position:absolute;
  transform:translate(-50%,-50%) translateY(-40px) scale(.5) rotate(-20deg);
}
.cross-layout .rune-card.shown{
  transform:translate(-50%,-50%) scale(1) rotate(0);
}
.cross-layout .rune-card:nth-child(1){left:50%;top:50%}   /* Суть (центр) */
.cross-layout .rune-card:nth-child(2){left:50%;top:22%}   /* Препятствие (сверху) */
.cross-layout .rune-card:nth-child(3){left:50%;top:78%}   /* Основа (снизу) */
.cross-layout .rune-card:nth-child(4){left:20%;top:50%}   /* Прошлое/Совет (слева) */
.cross-layout .rune-card:nth-child(5){left:80%;top:50%}   /* Итог (справа) */

/* ═══════════ КНОПКА ═══════════ */
.nox-action{
  text-align:center;
  margin-top:20px;
}
.nox-btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:15px 42px;border-radius:999px;
  font-size:14px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
  background:linear-gradient(135deg,var(--gold),var(--cyan));
  color:#0a0a0a;
  box-shadow:0 0 30px rgba(212,175,55,.6),0 0 60px rgba(0,240,255,.3);
  transition:all .25s;
}
.nox-btn:hover{transform:translateY(-3px);box-shadow:0 0 50px rgba(212,175,55,.9),0 0 80px rgba(0,240,255,.5)}
.nox-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.nox-btn.gold{background:linear-gradient(135deg,var(--gold),var(--gold-b))}

/* ═══════════ ЖУРНАЛ ═══════════ */
.nox-log{
  background:linear-gradient(145deg,rgba(15,25,50,.6),rgba(8,14,32,.8));
  border:1px solid var(--line);
  border-radius:20px;
  padding:22px;
  box-shadow:0 8px 32px rgba(0,0,0,.5);
}
.nox-log h2{
  font-family:var(--font-disp);
  font-size:15px;letter-spacing:3px;text-transform:uppercase;
  color:var(--gold);
  padding-bottom:10px;
  border-bottom:1px solid var(--line);
  margin-bottom:14px;
  display:flex;align-items:center;gap:10px;
}
.nox-log h2::before{content:'?';font-size:18px}
.nox-log-item{
  padding:14px 16px;
  border-left:3px solid var(--gold);
  background:linear-gradient(90deg,rgba(212,175,55,.06),transparent);
  border-radius:0 10px 10px 0;
  margin-bottom:10px;
  animation:logIn .5s ease;
}
@keyframes logIn{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
.nox-log-item .pos{
  display:inline-block;
  font-size:9px;letter-spacing:2px;text-transform:uppercase;
  color:var(--dim);border:1px solid var(--line);
  padding:2px 8px;border-radius:4px;margin-bottom:5px;font-weight:700;
}
.nox-log-item .ttl{
  font-family:var(--font-disp);
  font-size:16px;color:var(--gold-b);font-weight:700;
  letter-spacing:1.5px;margin-bottom:3px;
  display:flex;align-items:center;gap:10px;
}
.nox-log-item .ttl .rune-glyph{
  font-size:22px;
  text-shadow:0 0 12px rgba(240,214,138,.7);
  font-family:'Segoe UI Symbol',serif;
}
.nox-log-item .ttl .rev-mark{
  font-size:10px;color:var(--magenta);font-style:italic;
  letter-spacing:0;margin-left:auto;
}
.nox-log-item .desc{
  font-size:13px;color:#cbd5e1;line-height:1.55;
}
.nox-log-empty{
  text-align:center;color:var(--dim);
  font-style:italic;font-size:13px;
  padding:24px 0;
}

/* ═══════════ НАВИГАЦИЯ ВНИЗУ ═══════════ */
.nox-nav-bottom{
  display:flex;justify-content:space-between;gap:10px;
  max-width:1200px;margin:40px auto 0;padding:0 20px;
}
.nox-nav-btn{
  flex:1;
  padding:14px 18px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
  border:1px solid var(--line);
  color:var(--text);
  text-decoration:none;
  font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  transition:.25s;
  display:flex;align-items:center;justify-content:center;gap:8px;
  text-align:center;
}
.nox-nav-btn:hover{
  border-color:var(--gold);
  color:var(--gold);
  box-shadow:0 0 20px rgba(212,175,55,.25);
  transform:translateY(-2px);
}
.nox-nav-btn.home{
  background:linear-gradient(135deg,rgba(212,175,55,.15),rgba(212,175,55,.05));
  border-color:rgba(212,175,55,.5);
  color:var(--gold-b);
}
.nox-nav-btn.home:hover{color:#fff;box-shadow:0 0 20px rgba(212,175,55,.35)}

/* ═══════════ МЕНЮ ═══════════ */
.nox-menu-overlay{
  position:fixed;inset:0;z-index:200;
  display:none;
  background:rgba(3,5,15,.94);
  backdrop-filter:blur(12px);
  padding:20px;
  overflow-y:auto;
}
.nox-menu-overlay.open{display:block;animation:menuIn .35s ease}
@keyframes menuIn{from{opacity:0}to{opacity:1}}
.nox-menu-head{
  max-width:1100px;margin:0 auto 20px;
  display:flex;justify-content:space-between;align-items:center;
}
.nox-menu-head h2{
  font-family:var(--font-disp);font-size:22px;
  letter-spacing:5px;color:var(--gold-b);
}
.nox-menu-close{
  width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  color:var(--dim);font-size:18px;
  transition:.2s;
}
.nox-menu-close:hover{background:rgba(255,43,214,.2);border-color:var(--magenta);color:var(--magenta);transform:rotate(90deg)}
.nox-menu-grid{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:12px;
}
.nox-menu-item{
  padding:20px 12px;
  border-radius:16px;
  background:linear-gradient(145deg,rgba(15,25,50,.7),rgba(8,14,32,.9));
  border:1px solid var(--line);
  text-align:center;text-decoration:none;color:inherit;
  transition:.25s;
  cursor:pointer;
}
.nox-menu-item:hover{
  transform:translateY(-4px);
  border-color:var(--item-color,var(--cyan));
  box-shadow:0 0 25px var(--item-color,rgba(0,240,255,.3));
}
.nox-menu-item.current{
  border-color:var(--gold);
  background:linear-gradient(145deg,rgba(212,175,55,.15),rgba(8,14,32,.9));
  box-shadow:0 0 25px rgba(212,175,55,.3);
}
.nox-menu-icon{font-size:28px;display:block;margin-bottom:8px;transition:transform .3s}
.nox-menu-item:hover .nox-menu-icon{transform:scale(1.15) rotate(-5deg)}
.nox-menu-name{font-family:var(--font-disp);font-size:12px;font-weight:700;letter-spacing:1px}
.nox-menu-sub{font-size:9px;color:var(--dim);margin-top:3px;text-transform:uppercase;letter-spacing:.5px}
.nox-menu-item[data-color="gold"]{--item-color:var(--gold)}
.nox-menu-item[data-color="cyan"]{--item-color:var(--cyan)}
.nox-menu-item[data-color="magenta"]{--item-color:var(--magenta)}
.nox-menu-item[data-color="violet"]{--item-color:var(--violet)}
.nox-menu-item[data-color="green"]{--item-color:var(--green)}
.nox-menu-item[data-color="orange"]{--item-color:var(--orange)}

/* ═══════════ АДАПТИВ ═══════════ */
@media(max-width:640px){
  .nox-title{font-size:24px;letter-spacing:2px}
  .nox-stage{padding:20px 12px;min-height:400px}
  .rune-bag{width:120px;height:120px;font-size:52px}
  .rune-bag-hint{font-size:11px}
  .runes-row{gap:10px}
  .rune-card{width:90px}
  .rune-card-stone{width:90px;height:90px}
  .rune-symbol{font-size:42px}
  .rune-card-name{font-size:12px}
  .cross-layout{height:400px;max-width:100%}
  .cross-layout .rune-card:nth-child(4){left:14%}
  .cross-layout .rune-card:nth-child(5){left:86%}
  .nox-nav-btn{font-size:10px;padding:12px 8px}
  .nox-tab{padding:9px 14px;font-size:11px}
  .nox-logo-text{font-size:16px;letter-spacing:4px}
  .nox-logo-icon{width:32px;height:32px;font-size:16px}
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;


&lt;header class="nox-header"&gt;
  &lt;a href="index.html" class="nox-logo"&gt;
    &lt;div class="nox-logo-icon"&gt;?&lt;/div&gt;
    &lt;div class="nox-logo-text"&gt;NOX&lt;/div&gt;
  &lt;/a&gt;
  &lt;button class="nox-menu-btn" onclick="noxMenuOpen()"&gt;
    &lt;i class="fas fa-th"&gt;&lt;/i&gt; Меню
  &lt;/button&gt;
&lt;/header&gt;


&lt;div class="nox-happiness"&gt;
  &lt;span class="nox-happiness-icon"&gt;✨&lt;/span&gt;
  &lt;span class="nox-happiness-text" id="noxHappinessText"&gt;Загрузка...&lt;/span&gt;
  &lt;button class="nox-happiness-btn" onclick="noxNewHappiness()"&gt;Ещё&lt;/button&gt;
&lt;/div&gt;


&lt;div class="nox-crumbs"&gt;
  &lt;a href="index.html"&gt;NOX&lt;/a&gt;
  &lt;span class="sep"&gt;/&lt;/span&gt;
  &lt;span class="cur"&gt;Руны Футарка&lt;/span&gt;
&lt;/div&gt;


&lt;main class="nox-main"&gt;
  &lt;h1 class="nox-title"&gt;? Руны Футарка&lt;/h1&gt;
  &lt;div class="nox-title-sub"&gt;— 24 руны Старшего Футарка —&lt;/div&gt;

  
  &lt;div class="nox-tabs"&gt;
    &lt;button class="nox-tab on" data-stage="day"&gt;&lt;i&gt;?&lt;/i&gt; Руна дня&lt;/button&gt;
    &lt;button class="nox-tab" data-stage="three"&gt;&lt;i&gt;?&lt;/i&gt; Три руны&lt;/button&gt;
    &lt;button class="nox-tab" data-stage="cross"&gt;&lt;i&gt;?&lt;/i&gt; Расклад Крест&lt;/button&gt;
  &lt;/div&gt;

  
  &lt;div class="nox-stage-wrap on" id="stage-day"&gt;
    &lt;div class="nox-stage"&gt;
      &lt;div class="rune-bag-wrap"&gt;
        &lt;div class="rune-bag" id="bagDay"&gt;?&lt;/div&gt;
        &lt;div class="rune-bag-hint"&gt;Нажми на мешочек, чтобы вытянуть руну&lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="runes-row" id="rowDay"&gt;&lt;/div&gt;

      &lt;div class="nox-action"&gt;
        &lt;button class="nox-btn gold" id="dayGo"&gt;? Вытянуть руну&lt;/button&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="nox-log"&gt;
      &lt;h2&gt;Значение руны&lt;/h2&gt;
      &lt;div id="dayLog"&gt;
        &lt;div class="nox-log-empty"&gt;Нажми «Вытянуть руну», чтобы узнать послание дня…&lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="nox-stage-wrap" id="stage-three"&gt;
    &lt;div class="nox-stage"&gt;
      &lt;div class="rune-bag-wrap"&gt;
        &lt;div class="rune-bag" id="bagThree"&gt;?&lt;/div&gt;
        &lt;div class="rune-bag-hint"&gt;Нажми на мешочек, чтобы вытянуть три руны&lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="runes-row" id="rowThree"&gt;&lt;/div&gt;

      &lt;div class="nox-action"&gt;
        &lt;button class="nox-btn gold" id="threeGo"&gt;? Вытянуть три руны&lt;/button&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="nox-log"&gt;
      &lt;h2&gt;Толкование расклада&lt;/h2&gt;
      &lt;div id="threeLog"&gt;
        &lt;div class="nox-log-empty"&gt;Прошлое · Настоящее · Будущее — вытяни три руны…&lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="nox-stage-wrap" id="stage-cross"&gt;
    &lt;div class="nox-stage"&gt;
      &lt;div class="rune-bag-wrap"&gt;
        &lt;div class="rune-bag" id="bagCross"&gt;?&lt;/div&gt;
        &lt;div class="rune-bag-hint"&gt;Нажми на мешочек, чтобы сделать расклад Крест&lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="cross-layout" id="rowCross"&gt;&lt;/div&gt;

      &lt;div class="nox-action"&gt;
        &lt;button class="nox-btn gold" id="crossGo"&gt;? Расклад Крест (5 рун)&lt;/button&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="nox-log"&gt;
      &lt;h2&gt;Толкование Креста&lt;/h2&gt;
      &lt;div id="crossLog"&gt;
        &lt;div class="nox-log-empty"&gt;Суть · Препятствие · Основа · Совет · Итог — сделай расклад…&lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

&lt;/main&gt;


&lt;nav class="nox-nav-bottom"&gt;
  &lt;a href="pendulum.html" class="nox-nav-btn"&gt;← Маятник&lt;/a&gt;
  &lt;a href="index.html" class="nox-nav-btn home"&gt;? Главная&lt;/a&gt;
  &lt;a href="astrology.html" class="nox-nav-btn"&gt;Астрология →&lt;/a&gt;
&lt;/nav&gt;


&lt;div class="nox-menu-overlay" id="noxMenu"&gt;
  &lt;div class="nox-menu-head"&gt;
    &lt;h2&gt;? NOX&lt;/h2&gt;
    &lt;button class="nox-menu-close" onclick="noxMenuClose()"&gt;✕&lt;/button&gt;
  &lt;/div&gt;
  &lt;div class="nox-menu-grid" id="noxMenuGrid"&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;script&gt;
"use strict";

/* ═══════════════════════════════════════════
   БЕГУЩАЯ СТРОКА
   ═══════════════════════════════════════════ */
const HAPPINESS = [
  "Сегодня вселенная на твоей стороне — сделай первый шаг.",
  "То, что ты ищешь, уже ищет тебя.",
  "Маленькое чудо случится там, где ты не ждёшь.",
  "Твоя интуиция сегодня громче обычного — слушай её.",
  "Одна дверь закрывается, чтобы открылась лучшая.",
  "Не спеши. Всё идёт по нужному маршруту.",
  "Смелость — это не отсутствие страха, а шаг вопреки ему.",
  "Загадай желание — сегодня оно услышано.",
  "Луна знает твои тайны и хранит их.",
  "Ответ придёт во сне, если отпустить вопрос.",
  "Скажи «да» тому, что давно ждёт твоего согласия.",
  "Не бойся перемен — они несут подарки.",
  "Судьба любит тех, кто не боится ошибаться.",
  "Ты сильнее, чем кажется. Помни об этом.",
  "Заметь знак — он уже рядом.",
  "Сегодня хороший день, чтобы простить себя.",
  "Твой путь уникален. Не сравнивай его с чужим.",
  "То, что кажется концом, — лишь поворот.",
  "Позволь себе мечтать вслух.",
  "Свет внутри тебя сильнее любой тьмы."
];
let hIdx = 0;
function noxNewHappiness() {
  const el = document.getElementById('noxHappinessText');
  el.classList.add('flip');
  setTimeout(() =&gt; {
    let i;
    do { i = Math.floor(Math.random() * HAPPINESS.length); }
    while (i === hIdx &amp;&amp; HAPPINESS.length &gt; 1);
    hIdx = i;
    el.textContent = HAPPINESS[i];
    el.classList.remove('flip');
  }, 350);
}

/* ═══════════════════════════════════════════
   МЕНЮ
   ═══════════════════════════════════════════ */
const MENU_ITEMS = [
  { file:'index.html',      icon:'?', name:'Главная',   sub:'NOX',           color:'gold' },
  { file:'tarot.html',      icon:'?', name:'Таро',      sub:'Карты',         color:'magenta' },
  { file:'candles.html',    icon:'?️', name:'Свечи',     sub:'Огонь',         color:'orange' },
  { file:'dice.html',       icon:'?', name:'Кости',     sub:'Жребий',        color:'cyan' },
  { file:'pendulum.html',   icon:'?', name:'Маятник',   sub:'Ответ',         color:'violet' },
  { file:'astrology.html',  icon:'?', name:'Астрология',sub:'Карта',         color:'cyan' },
  { file:'numerology.html', icon:'?', name:'Нумерология',sub:'Числа',        color:'gold' },
  { file:'runes.html',      icon:'?', name:'Руны',      sub:'Футарк',        color:'gold' },
  { file:'coffee.html',     icon:'☕', name:'Гуща',      sub:'Кофе',          color:'orange' },
  { file:'dreams.html',     icon:'?', name:'Сонник',    sub:'Сны',           color:'violet' },
  { file:'palm.html',       icon:'✋', name:'Хиромантия',sub:'Ладони',        color:'orange' },
  { file:'breath.html',     icon:'?️', name:'Практики', sub:'Покой',         color:'green' },
  { file:'amulet.html',     icon:'⛓️', name:'Оберег',    sub:'Код',           color:'green' }
];
const CURRENT_FILE = 'runes.html';
function noxMenuRender() {
  const g = document.getElementById('noxMenuGrid');
  g.innerHTML = MENU_ITEMS.map(m =&gt; `
    &lt;a class="nox-menu-item ${m.file===CURRENT_FILE?'current':''}" data-color="${m.color}" href="${m.file}"&gt;
      &lt;span class="nox-menu-icon"&gt;${m.icon}&lt;/span&gt;
      &lt;div class="nox-menu-name"&gt;${m.name}&lt;/div&gt;
      &lt;div class="nox-menu-sub"&gt;${m.sub}&lt;/div&gt;
    &lt;/a&gt;
  `).join('');
}
function noxMenuOpen() {
  noxMenuRender();
  document.getElementById('noxMenu').classList.add('open');
}
function noxMenuClose() {
  document.getElementById('noxMenu').classList.remove('open');
}

/* ═══════════════════════════════════════════
   ТАБЫ
   ═══════════════════════════════════════════ */
document.querySelectorAll('.nox-tab').forEach(t =&gt; {
  t.addEventListener('click', () =&gt; {
    document.querySelectorAll('.nox-tab').forEach(x =&gt; x.classList.remove('on'));
    document.querySelectorAll('.nox-stage-wrap').forEach(x =&gt; x.classList.remove('on'));
    t.classList.add('on');
    document.getElementById('stage-' + t.dataset.stage).classList.add('on');
  });
});

/* ═══════════════════════════════════════════
   ДАННЫЕ: 24 РУНЫ СТАРШЕГО ФУТАРКА
   ═══════════════════════════════════════════ */
const RUNES = [
  { g:'ᚠ', name:'Феху',    up:'Изобилие, богатство, начало пути. Материальный поток открывается — принимай.', rev:'Потеря ресурсов, жадность, страх бедности. Отпусти хватку.' },
  { g:'ᚢ', name:'Уруз',    up:'Сила, здоровье, первобытная мощь. Ты полон энергии — направь её.', rev:'Слабость, болезнь, истощение. Отдохни и восстановись.' },
  { g:'ᚦ', name:'Турисаз', up:'Защита, ворота, испытание. Пройди через них — станешь сильнее.', rev:'Опасность, ловушка, враг рядом. Будь внимателен.' },
  { g:'ᚨ', name:'Ансуз',   up:'Мудрость, послание, знание. Слушай знаки — они говорят.', rev:'Обман, ложные вести, поверхностность.' },
  { g:'ᚱ', name:'Райдо',   up:'Путь, дорога, движение. Время перемен настало — иди.', rev:'Задержка, застой, препятствие в пути.' },
  { g:'ᚲ', name:'Кеназ',   up:'Огонь, творчество, страсть. Зажги свой внутренний свет.', rev:'Угасание, сомнение в себе, потеря страсти.' },
  { g:'ᚷ', name:'Гебо',    up:'Дар, союз, партнёрство. Принимай и отдавай с радостью.', rev:'Дисбаланс в обмене, зависимость, эгоизм.' },
  { g:'ᚹ', name:'Вуньо',   up:'Радость, успех, гармония. Всё идёт как надо — наслаждайся.', rev:'Печаль, разочарование, обманутые ожидания.' },
  { g:'ᚺ', name:'Хагалаз', up:'Разрушение, обновление, буря. То, что рушится, — не нужно.', rev:'Страх перемен, цепляние за прошлое. Отпусти.' },
  { g:'ᚾ', name:'Наутиз',  up:'Терпение, нужда, урок. Пройди испытание с честью.', rev:'Отчаяние, лишние жертвы, упрямство.' },
  { g:'ᛁ', name:'Иса',     up:'Лёд, остановка, ясность. Пауза — это тоже движение.', rev:'Застой, холод, изоляция. Растопи лёд изнутри.' },
  { g:'ᛃ', name:'Йера',    up:'Урожай, цикл, награда. Собирай плоды трудов.', rev:'Нетерпеливость, неверный тайминг, потери.' },
  { g:'ᛇ', name:'Эйваз',   up:'Защита, древо жизни, стойкость. Ты крепче, чем думаешь.', rev:'Слабость, страх, потеря опоры.' },
  { g:'ᛈ', name:'Перт',    up:'Тайна, судьба, гадание. Играй по правилам вселенной.', rev:'Скрытое выходит наружу, потеря контроля.' },
  { g:'ᛉ', name:'Альгиз',  up:'Щит, защита, интуиция. Ты под покровом высших сил.', rev:'Ложная защита, паранойя, потеря бдительности.' },
  { g:'ᛊ', name:'Совило',  up:'Солнце, победа, целостность. Свет ведёт тебя вперёд.', rev:'Затмение, заблуждение, ложный путь.' },
  { g:'ᛏ', name:'Тейваз',  up:'Справедливость, мужество, победа. Действуй честно — и победишь.', rev:'Несправедливость, поражение, потеря чести.' },
  { g:'ᛒ', name:'Беркана', up:'Рост, плодородие, новая жизнь. Сажай семена — они прорастут.', rev:'Бесплодие, застой, отказ от роста.' },
  { g:'ᛖ', name:'Эваз',    up:'Движение, прогресс, доверие. Шаг вперёд уже сделан.', rev:'Задержка, топтание на месте, потеря веры.' },
  { g:'ᛗ', name:'Манназ',  up:'Человек, поддержка, единство. Ты не один — прими помощь.', rev:'Одиночество, отчуждение, эгоизм.' },
  { g:'ᛚ', name:'Лагуз',   up:'Интуиция, поток, вода. Доверяй внутреннему голосу.', rev:'Сомнения, отрыв от интуиции, страхи.' },
  { g:'ᛜ', name:'Ингуз',   up:'Плодородие, потенциал, семя. Время зачать новое — внутри или снаружи.', rev:'Застой, нереализованный потенциал, откладывание.' },
  { g:'ᛞ', name:'Дагаз',   up:'Прорыв, трансформация, рассвет. Всё меняется к лучшему.', rev:'Задержка рассвета, страх перемен, застой.' },
  { g:'ᛟ', name:'Отал',    up:'Наследие, дом, предки. Ты — звено рода. Чти корни.', rev:'Отрыв от корней, потеря дома, конфликт с родом.' }
];

/* ═══════════════════════════════════════════
   УТИЛИТЫ
   ═══════════════════════════════════════════ */
function shuffle(a) {
  a = a.slice();
  for (let i = a.length - 1; i &gt; 0; i--) {
    const j = Math.floor(Math.random() * (i + 1));
    [a[i], a[j]] = [a[j], a[i]];
  }
  return a;
}
function pickN(n) {
  return shuffle(RUNES).slice(0, n).map(r =&gt; ({ ...r, reversed: Math.random() &lt; 0.3 }));
}

/* ═══════════════════════════════════════════
   ОБЩАЯ ФУНКЦИЯ: показать руны
   ═══════════════════════════════════════════ */
function showRunes(containerId, runes, labels, logId, done) {
  const container = document.getElementById(containerId);
  const log = document.getElementById(logId);
  container.innerHTML = '';
  log.innerHTML = '&lt;div class="nox-log-empty"&gt;Мешочек трясётся…&lt;/div&gt;';

  runes.forEach((r, i) =&gt; {
    const card = document.createElement('div');
    card.className = 'rune-card' + (r.reversed ? ' rev' : '');
    const label = labels[i] || '';
    card.innerHTML = `
      ${label ? `&lt;div class="rune-card-label"&gt;${label}&lt;/div&gt;` : ''}
      &lt;div class="rune-card-stone"&gt;
        &lt;div class="rune-symbol"&gt;${r.g}&lt;/div&gt;
      &lt;/div&gt;
      &lt;div class="rune-card-name"&gt;${r.name}&lt;/div&gt;
    `;
    container.appendChild(card);

    // Проявление с задержкой
    setTimeout(() =&gt; {
      card.classList.add('shown');
      const rect = card.querySelector('.rune-card-stone').getBoundingClientRect();
      noxSparkles(rect.left + rect.width/2, rect.top + rect.height/2, 15);
    }, 500 + i * 500);
  });

  // Журнал
  setTimeout(() =&gt; {
    log.innerHTML = '';
    runes.forEach((r, i) =&gt; {
      const item = document.createElement('div');
      item.className = 'nox-log-item';
      const label = labels[i];
      item.innerHTML = `
        ${label ? `&lt;div class="pos"&gt;${label}&lt;/div&gt;` : ''}
        &lt;div class="ttl"&gt;
          &lt;span class="rune-glyph"&gt;${r.g}&lt;/span&gt;
          ${r.name}
          ${r.reversed ? '&lt;span class="rev-mark"&gt;⟲ перевёрнута&lt;/span&gt;' : ''}
        &lt;/div&gt;
        &lt;div class="desc"&gt;${r.reversed ? r.rev : r.up}&lt;/div&gt;
      `;
      log.appendChild(item);
    });
    if (done) done();
  }, 500 + runes.length * 500 + 800);
}

/* ═══════════════════════════════════════════
   МОДУЛЬ 1: РУНА ДНЯ
   ═══════════════════════════════════════════ */
let dayBusy = false;
function runDay() {
  if (dayBusy) return;
  dayBusy = true;
  const btn = document.getElementById('dayGo');
  btn.disabled = true;
  const bag = document.getElementById('bagDay');

  bag.classList.add('shaking');

  setTimeout(() =&gt; {
    bag.classList.remove('shaking');
    const runes = pickN(1);
    showRunes('rowDay', runes, [], 'dayLog', () =&gt; {
      dayBusy = false;
      btn.disabled = false;
    });
  }, 1500);
}
document.getElementById('dayGo').addEventListener('click', runDay);
document.getElementById('bagDay').addEventListener('click', runDay);

/* ═══════════════════════════════════════════
   МОДУЛЬ 2: ТРИ РУНЫ
   ═══════════════════════════════════════════ */
let threeBusy = false;
function runThree() {
  if (threeBusy) return;
  threeBusy = true;
  const btn = document.getElementById('threeGo');
  btn.disabled = true;
  const bag = document.getElementById('bagThree');

  bag.classList.add('shaking');

  setTimeout(() =&gt; {
    bag.classList.remove('shaking');
    const runes = pickN(3);
    showRunes('rowThree', runes, ['Прошлое','Настоящее','Будущее'], 'threeLog', () =&gt; {
      threeBusy = false;
      btn.disabled = false;
    });
  }, 1500);
}
document.getElementById('threeGo').addEventListener('click', runThree);
document.getElementById('bagThree').addEventListener('click', runThree);

/* ═══════════════════════════════════════════
   МОДУЛЬ 3: КРЕСТ
   ═══════════════════════════════════════════ */
let crossBusy = false;
function runCross() {
  if (crossBusy) return;
  crossBusy = true;
  const btn = document.getElementById('crossGo');
  btn.disabled = true;
  const bag = document.getElementById('bagCross');

  bag.classList.add('shaking');

  setTimeout(() =&gt; {
    bag.classList.remove('shaking');
    const runes = pickN(5);
    // Порядок меток: Суть, Препятствие, Основа, Совет, Итог
    const labels = ['Суть','Препятствие','Основа','Совет','Итог'];
    // Но CSS позиции: 1=центр, 2=сверху, 3=снизу, 4=слева, 5=справа
    // Хотим: центр=Суть, сверху=Препятствие, снизу=Основа, слева=Совет, справа=Итог
    // Значит порядок в array: [Суть, Препятствие, Основа, Совет, Итог]
    showRunes('rowCross', runes, labels, 'crossLog', () =&gt; {
      crossBusy = false;
      btn.disabled = false;
    });
  }, 1500);
}
document.getElementById('crossGo').addEventListener('click', runCross);
document.getElementById('bagCross').addEventListener('click', runCross);

/* ═══════════════════════════════════════════
   ИСКРЫ
   ═══════════════════════════════════════════ */
function noxSparkles(cx, cy, count) {
  count = count || 20;
  const colors = ['#d4af37','#f0d060','#00f0ff','#b55cff','#39ff14'];
  for (let i = 0; i &lt; count; i++) {
    const s = document.createElement('div');
    s.style.cssText = `
      position:fixed;left:${cx}px;top:${cy}px;width:6px;height:6px;
      border-radius:50%;background:${colors[i % colors.length]};
      box-shadow:0 0 12px ${colors[i % colors.length]};
      pointer-events:none;z-index:9999;
      transition:transform 1.2s cubic-bezier(.1,.8,.3,1),opacity 1.2s ease;
    `;
    document.body.appendChild(s);
    requestAnimationFrame(() =&gt; {
      const a = Math.random() * Math.PI * 2;
      const d = 70 + Math.random() * 140;
      s.style.transform = `translate(${Math.cos(a)*d}px,${Math.sin(a)*d}px) scale(.3)`;
      s.style.opacity = '0';
    });
    setTimeout(() =&gt; s.remove(), 1300);
  }
}

/* ═══════════════════════════════════════════
   ИНИЦИАЛИЗАЦИЯ
   ═══════════════════════════════════════════ */
window.addEventListener('DOMContentLoaded', () =&gt; {
  noxNewHappiness();
  setInterval(noxNewHappiness, 12000);
  console.log('? NOX · Руны Футарка — загружено. Рун в базе: ' + RUNES.length);
});
document.addEventListener('keydown', e =&gt; {
  if (e.key === 'Escape') noxMenuClose();
});
&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;</subtitle>
  <updated>2026-10-10T07:36:45Z</updated>
  <logo>https://pandoraburo.ru/ssl/u/pic/07/26436cc3c611f19d9efcd8c4a10874/-/0c723f71762611f1b3964aaba1665535.jpg</logo>
  <author>
    <name>1592962</name>
    <uri>https://www.pandoraburo.ru/</uri>
  </author>
</feed>
