/* Rise of RU — общая шапка (используется на всех страницах).
   Поправляешь здесь — обновляется везде. Содержимое середины (nav) приходит из самой страницы.
*/

.r2-header { position: sticky; top: 0; z-index: 50; background: rgba(12,10,9,.82); backdrop-filter: saturate(140%) blur(8px); -webkit-backdrop-filter: saturate(140%) blur(8px); border-bottom: 1px solid var(--line-soft); }
.r2-header.v-premium { border-bottom-color: rgba(212,175,95,.14); }
.r2-header-inner { display: flex; align-items: center; gap: 24px; padding: 14px 32px; min-height: 64px; max-width: 1200px; margin: 0 auto; }

/* Brand (логотип слева) */
.r2-brand { display: flex; align-items: center; gap: 12px; }
.r2-brand-mark { width: 38px; height: 38px; border-radius: 9px; background: linear-gradient(150deg, #f4cf78, #b9882b); display: grid; place-items: center; box-shadow: 0 4px 14px -4px rgba(212,175,95,.45), inset 0 1px 0 rgba(255,255,255,.3); }
.r2-brand-mark span { font-family: var(--font-display); font-weight: 800; font-size: 18px; color: #2a1a07; }
.r2-brand-text { display: flex; gap: 5px; font-family: var(--font-display); font-weight: 800; font-size: 15px; letter-spacing: .14em; color: var(--fg); }
.r2-brand-text-sm { font-size: 13px; }
.r2-brand-2 { color: var(--gold); }

/* Навигация (середина — заполняется каждой страницей через children) */
.r2-nav { display: flex; gap: 4px; flex: 1; justify-content: center; }
.r2-nav a { padding: 9px 14px; border-radius: 999px; font-size: 13px; font-weight: 600; letter-spacing: .03em; color: var(--fg-2); transition: color .18s, background .18s; text-decoration: none; }
.r2-nav a:hover { color: var(--fg); background: rgba(255,255,255,.04); }
.r2-nav a.active { color: var(--gold); }

/* Выпадающее «Ещё ▾» в основной навигации */
.r2-nav-more { position: relative; display: flex; align-items: center; }
.r2-nav-more-btn { appearance: none; border: 0; background: transparent; cursor: pointer; font-family: inherit; padding: 9px 14px; border-radius: 999px; font-size: 13px; font-weight: 600; letter-spacing: .03em; color: var(--fg-2); display: inline-flex; align-items: center; gap: 5px; transition: color .18s, background .18s; }
.r2-nav-more-btn:hover { color: var(--fg); background: rgba(255,255,255,.04); }
.r2-nav-more-btn.active { color: var(--gold); }
.r2-nav-more-caret { font-size: 10px; transition: transform .18s; }
.r2-nav-more-btn[aria-expanded="true"] .r2-nav-more-caret { transform: rotate(180deg); }
.r2-nav-more-panel { position: absolute; top: calc(100% + 10px); left: 50%; transform: translateX(-50%); min-width: 184px; background: var(--bg-dark-2); border: 1px solid var(--line); border-radius: 14px; padding: 6px; box-shadow: 0 24px 48px -20px rgba(0,0,0,.6); display: flex; flex-direction: column; z-index: 60; animation: r2-menu-in .16s ease; }
.r2-nav-more-panel a { padding: 9px 14px; border-radius: 9px; font-size: 13px; font-weight: 600; color: var(--fg-2); white-space: nowrap; text-decoration: none; transition: color .15s, background .15s; }
.r2-nav-more-panel a:hover { color: var(--fg); background: rgba(255,255,255,.05); }
.r2-nav-more-panel a.active { color: var(--gold); }

/* Правая часть */
.r2-header-right { display: flex; align-items: center; gap: 10px; }

/* Поддержать (золотая кнопка) */
.r2-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px; font-size: 12px; font-weight: 700; letter-spacing: .08em; border: 1px solid var(--line-soft); background: rgba(255,255,255,.04); color: var(--fg); transition: transform .15s, background .2s, border-color .2s, box-shadow .2s; white-space: nowrap; cursor: pointer; font-family: inherit; }
.r2-btn:hover { background: rgba(255,255,255,.08); border-color: var(--line); transform: translateY(-1px); }
.r2-btn:active { transform: translateY(0); }
.r2-root .r2-btn-support, .r2-btn-support { background: linear-gradient(135deg,#a86e1a,#c9952e,#a86e1a); color: #1a0e08; border-color: transparent; box-shadow: 0 5px 12px -6px rgba(168,110,26,.45), inset 0 1px 0 rgba(255,255,255,.2); padding: 5px 10px; font-size: 10px; letter-spacing: .06em; }
.r2-btn-support:hover { filter: brightness(1.08); border-color: transparent; }

/* Язык */
.r2-lang { display: flex; padding: 2px; border: 1px solid var(--line-soft); background: rgba(255,255,255,.03); border-radius: 999px; }
.r2-root .r2-lang button, .r2-lang button { appearance: none; border: 0; background: transparent; padding: 3px 8px; border-radius: 999px; font-size: 10px; font-weight: 700; letter-spacing: .04em; color: var(--fg-3); transition: all .18s; cursor: pointer; font-family: inherit; }
.r2-lang button.active { background: var(--gold); color: #1a0e08; }

/* Тема — берёт стили из theme.css если есть, иначе минимальный fallback */
.r2-theme-btn { appearance: none; border: 1px solid var(--line-soft); background: rgba(255,255,255,.04); color: var(--fg-2); width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; cursor: pointer; transition: color .18s, border-color .18s, background .18s; }
.r2-theme-btn:hover { color: var(--gold); border-color: var(--gold); background: rgba(212,175,95,.08); }

/* Гамбургер + мобильное меню (≤900px). Правится здесь — работает на всех страницах. */
.r2-burger { display: none; appearance: none; width: 34px; height: 34px; border-radius: 9px; border: 1px solid var(--line-soft); background: rgba(255,255,255,.04); color: var(--fg-2); place-items: center; cursor: pointer; transition: color .18s, border-color .18s; flex-shrink: 0; }
.r2-burger:hover { color: var(--gold); border-color: var(--line); }
.r2-mobile-menu { display: none; }

@media (max-width: 900px) {
  .r2-nav { display: none; }
  .r2-burger { display: grid; }
  .r2-header-right { margin-left: auto; }
  .r2-header-right > .r2-btn-support,
  .r2-header-right > .r2-lang { display: none; }
  .r2-mobile-menu { display: block; position: absolute; top: 100%; left: 0; right: 0;
    background: var(--bg-dark-2); border-bottom: 1px solid var(--line);
    box-shadow: 0 24px 48px -20px rgba(0,0,0,.65); animation: r2-menu-in .18s ease; }
  .r2-mobile-nav { display: flex; flex-direction: column; padding: 6px 0; }
  .r2-mobile-nav a { padding: 13px 28px; font-size: 15px; font-weight: 600; color: var(--fg-2);
    border-bottom: 1px solid var(--line-soft); text-decoration: none; }
  .r2-mobile-nav a:last-child { border-bottom: none; }
  .r2-mobile-nav a:hover { color: var(--fg); background: rgba(255,255,255,.04); }
  .r2-mobile-nav a.active { color: var(--gold); }
  .r2-mobile-extra { display: flex; align-items: center; gap: 14px; padding: 14px 28px 18px; }
}
@keyframes r2-menu-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

/* Футер (общий R2Footer). Размеры текста были не заданы — дисклеймер раздувался до 16px. */
.r2-footer { background: var(--bg-dark-2); border-top: 1px solid var(--line-soft); padding: 32px 0; margin-top: 48px; }
.r2-footer-inner { max-width: 1200px; margin: 0 auto; padding: 0 32px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.r2-footer-copy { margin: 6px 0 0; max-width: 520px; font-size: 12px; line-height: 1.5; color: var(--fg-3); }
.r2-footer-links { display: flex; flex-wrap: wrap; gap: 18px; }
.r2-footer-links a { font-size: 13px; font-weight: 600; color: var(--fg-2); transition: color .18s; }
.r2-footer-links a:hover { color: var(--gold); }
