/* Vidlen — dropdown «Функции». Самодостаточный: работает поверх любой шапки.
   Наследует токены страницы (--teal-bright, --edge, --void), с безопасными фолбэками. */
.vl-fdrop{position:relative;display:inline-block}
.vl-fbtn{font:inherit;font-size:13px;font-weight:600;cursor:pointer;color:var(--muted,#9AA3B0);
  background:transparent;border:0;padding:7px 11px;border-radius:9px;min-height:34px;
  display:inline-flex;align-items:center;gap:6px;transition:color .2s,background .2s}
.vl-fbtn:hover,.vl-fdrop.open .vl-fbtn{color:var(--teal-bright,#7FD6DD);background:rgba(127,214,221,.10)}
.vl-fbtn:focus-visible{outline:2px solid var(--teal-bright,#7FD6DD);outline-offset:2px}
.vl-fbtn::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-1px);transition:transform .25s ease;margin-left:2px}
.vl-fdrop.open .vl-fbtn::after{transform:rotate(-135deg) translateY(-1px)}

.vl-fmenu{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;z-index:1200;
  display:flex;flex-direction:column;padding:8px;border-radius:14px;
  background:rgba(8,12,16,.96);border:1px solid var(--edge,rgba(255,255,255,.14));
  box-shadow:0 18px 44px rgba(0,0,0,.5);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility .2s}
.vl-fdrop.open .vl-fmenu{opacity:1;visibility:visible;transform:none}
[dir="rtl"] .vl-fmenu{right:auto;left:0}
.vl-fmenu a{display:block;padding:11px 13px;border-radius:10px;font-size:14px;font-weight:600;
  color:var(--text,#E7ECF2);min-height:44px;line-height:1.5;transition:background .15s,color .15s}
.vl-fmenu a:hover,.vl-fmenu a:focus-visible{background:rgba(127,214,221,.12);color:var(--teal-bright,#7FD6DD);outline:none}
.vl-fmenu a:focus-visible{box-shadow:inset 0 0 0 2px var(--teal-bright,#7FD6DD)}
@media (prefers-reduced-motion:reduce){.vl-fbtn::after,.vl-fmenu{transition:none}}
@media(max-width:560px){.vl-fdrop:not(.in-navmenu) .vl-fmenu{position:fixed;left:12px;right:12px;min-width:0}}

/* ===== Мобильное меню (бургер). Десктоп: .navmenu прозрачна (display:contents),
   бургер скрыт — шапка выглядит как раньше. Мобайл: пункты сворачиваются в панель. ===== */
.navburger{display:none}
.navmenu{display:contents}
/* Ссылки «только для мобильного меню»: на десктопе шапки внутренних страниц компактные,
   а в бургер-панели показываем ПОЛНЫЙ набор вкладок как на главной. */
.mob-only{display:none!important}
@media(max-width:1024px){
  /* На внутренних страницах (logo | burger | пустой nav) space-between ставил бургер по центру —
     прижимаем вправо; на главной .sp уже толкает, margin-left:auto там безвреден. */
  .navburger{margin-left:auto}
  /* Пустой .fnav (все пункты ушли в fixed-панель) съедает gap шапки — бургер отходил от края на 14px */
  header > .fnav{margin-left:-14px}
  .navmenu .mob-only{display:block!important}
  .navburger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;
    width:44px;height:40px;padding:0 11px;cursor:pointer;border:1px solid var(--edge,rgba(255,255,255,.14));
    border-radius:11px;background:var(--glass,rgba(255,255,255,.05));-webkit-appearance:none;appearance:none}
  .navburger span{display:block;height:2px;width:20px;border-radius:2px;background:var(--text,#E7ECF2);
    transition:transform .25s ease,opacity .2s ease}
  .menu-open .navburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-open .navburger span:nth-child(2){opacity:0}
  .menu-open .navburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  /* панель */
  .navmenu{display:flex;position:fixed;top:64px;left:0;right:0;z-index:49;
    flex-direction:column;align-items:stretch;gap:4px;
    padding:12px clamp(16px,4vw,40px) 20px;
    background:rgba(5,7,10,.98);border-bottom:1px solid var(--edge,rgba(255,255,255,.14));
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    max-height:calc(100dvh - 64px);overflow-y:auto;
    opacity:0;visibility:hidden;transform:translateY(-10px);
    transition:opacity .25s ease,transform .25s ease,visibility .25s}
  .menu-open .navmenu{opacity:1;visibility:visible;transform:none}

  /* пункты внутри панели крупные и кликабельные (≥44px) */
  .navmenu .navlink{display:block;padding:12px 6px;font-size:16px;margin:0;min-height:44px;line-height:1.4}
  /* «Функции» в панели — раскрыты сразу (без всплывашки) */
  .navmenu .vl-fdrop{display:block}
  .navmenu .vl-fbtn{width:100%;justify-content:flex-start;pointer-events:none;font-size:16px;padding:12px 6px}
  .navmenu .vl-fbtn::after{display:none}
  .navmenu .vl-fmenu{position:static;opacity:1;visibility:visible;transform:none;
    display:flex;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
    padding:0 0 4px 14px;min-width:0}
  .navmenu .vl-fmenu a{padding:10px 8px;font-size:15px;min-height:auto}
  /* язык и кнопки — на всю ширину */
  .navmenu .lang{width:100%;margin-top:8px}
  .navmenu .navbtn{width:100%;justify-content:center;margin-top:6px;padding:13px 16px;font-size:15px}
}
@media (prefers-reduced-motion:reduce){.navmenu,.navburger span{transition:none}}
