/* ============================================================
   BraneMatrix 全站共享导航样式（由 assets/site-nav.js 注入使用）
   视觉与 index.html 顶部导航完全一致；全部选择器加 bm- 前缀，
   避免与宿主页面（论文列表页 / 微信导出精读页）的样式冲突。
   ============================================================ */

.bm-header,.bm-drawer,.bm-mask{
  --bm-bg-0:#05070E; --bm-bg-1:#0A0E1A; --bm-bg-2:#111726;
  --bm-brand:#3B82F6; --bm-brand-2:#22D3EE;
  --bm-tx-0:#E6EDF7; --bm-tx-1:#A7B4C9; --bm-tx-2:#6B7C98;
  --bm-line:rgba(255,255,255,0.08);
  --bm-glow:rgba(59,130,246,0.35);
  --bm-grad:linear-gradient(90deg,#3B82F6,#22D3EE);
  --bm-grad-c:linear-gradient(90deg,#8B5CF6,#EC4899);
  font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',system-ui,sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.bm-header *,.bm-drawer *{box-sizing:border-box;margin:0;padding:0}
/* :where() 保持零特异性，确保后续 .bm-* 类的颜色声明可覆盖（对齐主页全局 a 重置） */
:where(.bm-header,.bm-drawer) a{color:inherit;text-decoration:none}
.bm-header button,.bm-drawer button{font-family:inherit}

.bm-ico{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:-0.14em}

.bm-header a:focus-visible,.bm-header button:focus-visible,
.bm-drawer a:focus-visible,.bm-drawer button:focus-visible{
  outline:2px solid var(--bm-brand-2);outline-offset:3px;border-radius:8px}

/* buttons */
.bm-btn{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;
  padding:12px 22px;border-radius:10px;cursor:pointer;border:1px solid transparent;transition:.25s;
  white-space:nowrap;background:none}
.bm-btn-primary{background:var(--bm-grad);color:#04121f;box-shadow:0 6px 24px -6px var(--bm-glow)}
.bm-btn-primary:hover{box-shadow:0 8px 34px -4px var(--bm-brand);transform:translateY(-1px)}
.bm-btn-c{background:var(--bm-grad-c);color:#fff;box-shadow:0 6px 24px -6px rgba(139,92,246,.5)}
.bm-btn-c:hover{transform:translateY(-1px)}
.bm-btn-sm{padding:8px 16px;font-size:13px}

/* nav bar */
.bm-header{position:sticky;top:0;left:0;right:0;z-index:9990;background:rgba(5,7,14,.72);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--bm-line)}
.bm-wrap{max-width:1400px;margin:0 auto;padding:0 24px}
.bm-nav{display:flex;align-items:center;justify-content:space-between;height:64px;gap:20px;white-space:nowrap}
.bm-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;
  letter-spacing:.02em;color:var(--bm-tx-0)}
.bm-logo .bm-mk{width:28px;height:28px;flex:0 0 28px;object-fit:contain}
.bm-logo .bm-sub{color:var(--bm-tx-1);font-weight:500;font-size:14px}
.bm-menu{display:flex;gap:26px;font-size:14px;color:var(--bm-tx-1);align-items:center}
.bm-menu>a{transition:.2s;padding:6px 0}.bm-menu>a:hover{color:var(--bm-tx-0)}
.bm-nav-right{display:flex;align-items:center;gap:14px}
.bm-menu-toggle{display:none;background:none;border:1px solid var(--bm-line);border-radius:9px;
  color:var(--bm-tx-0);width:40px;height:40px;cursor:pointer;align-items:center;justify-content:center}
.bm-menu-toggle .bm-ico{font-size:22px}

/* desktop dropdown */
.bm-dd{position:relative}
.bm-dd-trigger{background:none;border:none;color:var(--bm-tx-1);font-size:14px;font-family:inherit;
  cursor:pointer;display:flex;align-items:center;gap:5px;padding:6px 0;transition:.2s}
.bm-dd-trigger:hover{color:var(--bm-tx-0)}
.bm-dd-trigger .bm-car{font-size:10px;display:inline-block;transition:transform .2s;color:var(--bm-tx-2)}
.bm-dd.open .bm-dd-trigger .bm-car,.bm-dd:hover .bm-dd-trigger .bm-car{transform:rotate(180deg)}
.bm-dd-panel{position:absolute;top:100%;left:50%;transform:translate(-50%,6px);margin-top:14px;min-width:230px;
  background:var(--bm-bg-2);border:1px solid var(--bm-line);border-radius:12px;padding:10px;
  opacity:0;visibility:hidden;transition:.18s;box-shadow:0 22px 50px -18px rgba(0,0,0,.65);z-index:9991}
.bm-dd:hover .bm-dd-panel,.bm-dd.open .bm-dd-panel{opacity:1;visibility:visible;transform:translate(-50%,0)}
.bm-dd-panel a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;
  border-radius:8px;font-size:13.5px;color:var(--bm-tx-1);white-space:nowrap}
.bm-dd-panel a:hover{background:rgba(255,255,255,.05);color:var(--bm-tx-0)}
.bm-dd-panel a.bm-dd-more{color:var(--bm-brand-2);border-top:1px solid var(--bm-line);margin-top:6px;padding-top:12px;font-weight:600}
.bm-dd-panel a.bm-soon{color:var(--bm-tx-2);cursor:default;opacity:.6}
.bm-dd-panel a.bm-soon:hover{background:none;color:var(--bm-tx-2)}
.bm-dd-panel .bm-ext-mark{font-size:11px;color:var(--bm-tx-2)}

/* mobile drawer / accordion */
.bm-mask{position:fixed;inset:0;background:rgba(3,5,10,.6);backdrop-filter:blur(2px);z-index:9992;
  opacity:0;visibility:hidden;transition:.3s}
.bm-mask.open{opacity:1;visibility:visible}
.bm-drawer{position:fixed;top:0;right:0;bottom:0;width:min(86vw,360px);background:var(--bm-bg-1);
  border-left:1px solid var(--bm-line);z-index:9993;transform:translateX(100%);transition:.32s cubic-bezier(.4,0,.2,1);
  padding:22px;display:flex;flex-direction:column;gap:2px;overflow-y:auto;color:var(--bm-tx-0)}
.bm-drawer.open{transform:translateX(0)}
.bm-drawer .bm-d-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.bm-drawer .bm-d-close{background:none;border:none;color:var(--bm-tx-1);cursor:pointer;font-size:24px;padding:4px 8px}
.bm-drawer>a.bm-d-link{padding:14px 6px;font-size:16px;border-bottom:1px solid var(--bm-line);color:var(--bm-tx-0);
  display:flex;align-items:center}
.bm-acc{border-bottom:1px solid var(--bm-line)}
.bm-acc-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;
  border:none;color:var(--bm-tx-0);font-size:16px;padding:14px 6px;cursor:pointer;font-family:inherit}
.bm-acc-trigger .bm-car{font-size:13px;color:var(--bm-tx-1);transition:transform .2s}
.bm-acc-trigger.open .bm-car{transform:rotate(90deg)}
.bm-acc-panel{max-height:0;overflow:hidden;transition:max-height .25s ease}
.bm-acc-panel.open{max-height:420px}
.bm-acc-panel a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 10px 11px 16px;
  font-size:14.5px;color:var(--bm-tx-1)}
.bm-acc-panel a .bm-ext-mark{font-size:11px;color:var(--bm-tx-2)}
.bm-acc-panel a.bm-soon{color:var(--bm-tx-2)}
.bm-drawer .bm-d-cta{margin-top:18px;display:flex;flex-direction:column;gap:10px}
.bm-drawer .bm-d-cta .bm-btn{justify-content:center}

/* 响应式：与 index.html 同断点 */
@media(max-width:1366px){
  .bm-menu{gap:15px}
  .bm-nav{gap:12px}
}
@media(max-width:1280px){
  .bm-nav .bm-logo .bm-sub{display:none}
}
@media(max-width:1160px){
  .bm-menu,.bm-nav-right .bm-btn{display:none}
  .bm-menu-toggle{display:flex}
}
