/* 官网顶部导航 v3（2026-10-07）：三大栏目 —— 数字员工 ▾ / AI 桌游 / 资讯订阅 ▾；Logo 回首页。
   配合各页面里 <nav class="desktop-nav nav-v3"> 与移动端 <nav class="nav-v3-m">。 */
.desktop-nav.nav-v3 { gap: 6px; }
.nav-v3 .nv-item { position: relative; }
.nav-v3 .nv-top { display: inline-flex; align-items: center; gap: 4px; height: 38px; padding: 0 12px; border-radius: 999px; font-size: 14.5px; white-space: nowrap; font-weight: 500; color: #3d3d47; letter-spacing: -.01em; transition: color .2s, background .2s; }
.nav-v3 .nv-top:hover, .nav-v3 .nv-item:focus-within > .nv-top, .nav-v3 .nv-drop:hover > .nv-top { color: var(--violet, #6555cb); background: rgba(101, 85, 203, .07); }
.nav-v3 .nv-item.active > .nv-top { color: var(--violet, #6555cb); font-weight: 600; }
.nav-v3 .nv-top .nav-chevron { display: block !important; width: 11px; height: 11px; opacity: .55; stroke: currentColor; fill: none; stroke-width: 2.2; transition: transform .2s; }
.nav-v3 .nv-drop:hover > .nv-top .nav-chevron, .nav-v3 .nv-drop:focus-within > .nv-top .nav-chevron, .nav-v3 .nv-drop.open > .nv-top .nav-chevron { transform: rotate(180deg); }
.nav-v3 .nv-menu { position: absolute; left: 50%; top: calc(100% + 10px); z-index: 120; width: 340px; padding: 8px; border-radius: 16px; background: #fff; border: 1px solid rgba(20, 24, 41, .09);
  box-shadow: 0 26px 60px -30px rgba(20, 24, 58, .34), 0 2px 6px rgba(20, 24, 58, .05); opacity: 0; visibility: hidden; transform: translate(-50%, 6px); transition: opacity .18s, transform .18s, visibility .18s; white-space: normal; }
.nav-v3 .nv-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; } /* 鼠标从标题移到菜单的桥 */
.nav-v3 .nv-drop:hover > .nv-menu, .nav-v3 .nv-drop:focus-within > .nv-menu, .nav-v3 .nv-drop.open > .nv-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.nav-v3 .nv-drop.open > .nv-top { color: var(--violet, #6555cb); background: rgba(101, 85, 203, .07); } /* 点击展开的栏目保持高亮 */
/* 点「收起」后鼠标仍停在栏目上时不要被 :hover 又弹开；鼠标移开自动恢复悬停展开 */
.nav-v3 .nv-drop.hover-off:hover > .nv-menu { opacity: 0; visibility: hidden; transform: translate(-50%, 6px); }
.nav-v3 .nv-drop.hover-off:hover > .nv-top .nav-chevron { transform: none; }
.nav-v3 .nv-menu a { display: grid !important; grid-template-columns: 36px 1fr; gap: 2px 12px; align-items: center; padding: 10px 12px; border-radius: 10px; color: #141829 !important; font-size: 14px !important; transition: background .15s; }
.nav-v3 .nv-menu a:hover, .nav-v3 .nv-menu a.active { background: #f1eff9; }
.nav-v3 .nv-menu a i { grid-row: span 2; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #f1eff9; color: #4938a5; font-style: normal; }
.nav-v3 .nv-menu a i svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.nav-v3 .nv-menu a b { font-weight: 600; font-size: 14px; line-height: 1.35; }
.nav-v3 .nv-menu a small { color: #767c91; font-size: 12.5px; line-height: 1.45; }
.nav-v3 .nv-menu a.nv-new b::after { content: "NEW"; margin-left: 6px; padding: 1px 6px; border-radius: 999px; background: #6555cb; color: #fff; font-size: 10.5px; font-weight: 700; letter-spacing: .02em; vertical-align: 2px; }
/* 1121–1380px 也显示桌面导航（原规则 1380 以下改汉堡菜单）；1120 以下仍用汉堡菜单 */
@media (min-width: 1121px) and (max-width: 1380px) {
  .desktop-nav.nav-v3 { display: flex !important; }
  .site-header .header-inner > .member-entry { display: flex !important; margin-left: auto; }
  .site-header .header-inner > .language-toggle { margin-left: 0 !important; }
  .site-header .mobile-menu { display: none !important; }
}
@media (min-width: 1121px) and (max-width: 1280px) { .site-header .header-inner > .member-entry a:first-child { display: none; } .desktop-nav.nav-v3 { gap: 0; } }
/* 移动端：分组列表 */
.mobile-menu nav.nav-v3-m { gap: 2px; max-height: calc(100vh - 90px); overflow-y: auto; }
.nav-v3-m .nv-h { margin: 10px 16px 4px; font-size: 12px; font-weight: 600; color: #9aa0b3; letter-spacing: .04em; }
.nav-v3-m .nv-h:first-child { margin-top: 4px; }
.nav-v3-m a small { margin-left: auto; color: #9aa0b3; font-size: 12px; font-weight: 400; }
.nav-v3-m hr { border: 0; border-top: 1px solid rgba(20, 24, 41, .08); margin: 6px 12px; }
