/* 官网 / 分享 / 预览共用顶栏（.l-nav）。变量与 landing.css 对齐，独立页面不依赖落地页其余样式。Orbit 族：深海军蓝 + 绿强调 */
:root {
  --l-border: rgba(122, 168, 255, .16);
  --l-border-2: rgba(122, 168, 255, .28);
  --l-accent: #3dfaa0;
  --l-accent-line: rgba(61, 250, 160, .38);
  --l-accent-soft: rgba(61, 250, 160, .1);
  --l-grad-a: #3dfaa0;
  --l-grad-b: #14b8a6;
  --l-btn-fg: #04130b;
  --l-text: #e8eefb;
  --l-head: #ffffff;
  --l-muted: #9fb0cc;
  /* 与控制台 .nav-links .active 相同：--primary-dark / --primary-soft */
  --l-nav-on: #a7ffcf;
  --l-nav-on-bg: rgba(61, 250, 160, .14);
  --l-panel: #0e1a2e;
  --l-hairline: rgba(255, 255, 255, .04);
  --l-nav-bg: rgba(7, 13, 26, .86);
  --l-nav-bg-2: rgba(7, 13, 26, .94);
  --l-glow: 0 0 24px rgba(61, 250, 160, .22);
  --l-glow-hover: 0 0 34px rgba(61, 250, 160, .34);
}

html[data-theme="light"] {
  --l-border: rgba(23, 64, 148, .12);
  --l-border-2: rgba(23, 64, 148, .22);
  --l-accent: #0a8a5f;
  --l-accent-line: rgba(10, 138, 95, .35);
  --l-accent-soft: rgba(10, 138, 95, .08);
  --l-grad-a: #0a9965;
  --l-grad-b: #0d9488;
  --l-btn-fg: #ffffff;
  --l-text: #0d1b2e;
  --l-head: #081422;
  --l-muted: #4a5b74;
  /* 与控制台 .nav-links .active 相同：--primary-dark / --primary-soft */
  --l-nav-on: #076b4a;
  --l-nav-on-bg: rgba(10, 138, 95, .1);
  --l-panel: #ffffff;
  --l-hairline: rgba(13, 27, 46, .05);
  --l-nav-bg: rgba(246, 248, 252, .86);
  --l-nav-bg-2: rgba(246, 248, 252, .94);
  --l-glow: 0 6px 18px rgba(10, 153, 101, .25);
  --l-glow-hover: 0 10px 26px rgba(10, 153, 101, .32);
}

.l-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  height: 66px; display: flex; align-items: center; gap: 28px;
  /* 登录 / 分享 / 预览：与 .l-wrap（1180px + 26px 内边距）对齐；窄屏回退 26px */
  padding: 0 max(26px, calc(50vw - 564px));
  background: var(--l-nav-bg);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--l-border);
  transition: background .2s;
}
.l-nav.l-nav--scrolled { background: var(--l-nav-bg-2); }
/* 仅首页：与控制台 .topnav 同一内容列（1680px 容器、左右 32px） */
.l-nav.has-landing-links { padding: 0 max(56px, calc(50vw - 808px)); }
.l-logo {
  position: relative; z-index: 2; flex: none;
  display: flex; align-items: center; gap: 9px; font-weight: 700; font-size: 16px;
  letter-spacing: -.4px; color: var(--l-head); text-decoration: none;
}
a.l-logo, a.l-logo:hover { color: var(--l-head); text-decoration: none; }
.l-logo b {
  display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px;
  background: linear-gradient(135deg, var(--l-grad-a), var(--l-grad-b));
  color: var(--l-btn-fg); font-size: 13px;
}
/* 链接相对顶栏水平居中（脱离文档流，避免被左右不等宽的 logo / 右侧按钮挤偏） */
.l-nav-links { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 1; display: flex; gap: 6px; justify-content: center; white-space: nowrap; }
.l-nav-links[hidden] { display: none !important; }
/* .l-site a { color: inherit } 与本规则同优先级且在 landing.css 之后，不加重选择器时首页链接会变成正文色 #0d1b2e，而不是控制台的 --muted */
.l-nav-links a,
.l-site .l-nav-links a {
  font-size: 14px; font-weight: 600; color: var(--l-muted); padding: 8px 14px; border-radius: 8px;
  transition: color .15s, background .15s; text-decoration: none;
}
.l-nav-links a:hover,
.l-site .l-nav-links a:hover { color: var(--l-text); background: var(--l-hairline); }
/* scroll-spy 命中当前区块的菜单项高亮；字色与控制台当前页一致 */
.l-nav-links > a.active,
.l-site .l-nav-links > a.active { color: var(--l-nav-on); background: var(--l-nav-on-bg); }
.l-nav-toggle {
  display: none; align-items: center; justify-content: center; flex-direction: column; gap: 5px;
  width: 38px; height: 38px; padding: 0; border: 1px solid transparent; border-radius: 6px;
  background: transparent; cursor: pointer; flex: none; color: var(--l-head);
}
.l-nav-toggle:hover { border-color: var(--l-border-2); background: var(--l-panel); }
.l-nav-toggle-bar { display: block; width: 18px; height: 2px; border-radius: 1px; background: currentColor; transition: transform .2s, opacity .2s; }
.l-nav-toggle[aria-expanded="true"] .l-nav-toggle-bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.l-nav-toggle[aria-expanded="true"] .l-nav-toggle-bar:nth-child(2) { opacity: 0; }
.l-nav-toggle[aria-expanded="true"] .l-nav-toggle-bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.l-nav-drawer-overlay {
  position: fixed; inset: 0; z-index: 120; background: rgba(8, 10, 18, .48);
  display: flex; justify-content: flex-start; align-items: stretch;
}
.l-nav-drawer-overlay[hidden] { display: none !important; }
.l-nav-drawer {
  width: min(300px, 86vw); background: var(--l-panel); color: var(--l-text);
  box-shadow: 8px 0 32px rgba(0,0,0,.28); display: flex; flex-direction: column;
  animation: lNavDrawerIn .22s ease-out; border-right: 1px solid var(--l-border);
}
@keyframes lNavDrawerIn { from { transform: translateX(-12px); opacity: .6; } to { transform: none; opacity: 1; } }
.l-nav-drawer-head {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 16px 18px; border-bottom: 1px solid var(--l-border);
}
.l-nav-drawer-title { font-weight: 700; font-size: 15px; color: var(--l-head); }
.l-nav-drawer-close {
  width: 32px; height: 32px; border: 0; border-radius: 6px; background: transparent;
  color: var(--l-muted); cursor: pointer; font-size: 16px; line-height: 1;
}
.l-nav-drawer-close:hover { background: var(--l-hairline); color: var(--l-head); }
.l-nav-drawer-links { display: flex; flex-direction: column; padding: 10px 12px 20px; gap: 2px; overflow: auto; }
.l-nav-drawer-links a {
  display: block; padding: 12px 14px; border-radius: 8px; color: var(--l-text);
  font-size: 14.5px; font-weight: 500; text-decoration: none;
}
.l-nav-drawer-links a:hover { background: var(--l-hairline); color: var(--l-accent); }
body.l-nav-open { overflow: hidden; }
.l-nav-right { display: flex; align-items: center; gap: 10px; margin-left: auto; position: relative; z-index: 2; flex: none; --ctl-h: 38px; }
.l-nav-right > .l-btn,
.l-nav-right .l-lang select { height: var(--ctl-h); box-sizing: border-box; line-height: 1; }
.l-lang { display: inline-flex; align-items: center; }
.l-lang select {
  background: var(--l-panel); color: var(--l-muted);
  border: 1px solid var(--l-border-2); border-radius: 6px;
  font-family: inherit; font-size: 13px; padding: 0 10px; cursor: pointer;
}
.l-lang select:hover { color: var(--l-text); border-color: var(--l-accent); }

.l-btn {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 9px 18px; border-radius: 10px; border: 1px solid var(--l-border-2);
  background: transparent; color: var(--l-text);
  font-family: inherit; font-size: 14px; font-weight: 700; cursor: pointer; line-height: 1.2;
  transition: border-color .18s, transform .18s, box-shadow .18s, color .18s;
  text-decoration: none;
}
a.l-btn { color: var(--l-text); text-decoration: none; }
.l-btn:hover { border-color: var(--l-accent); color: var(--l-accent); transform: translateY(-1px); }
.l-btn-primary {
  background: linear-gradient(135deg, var(--l-grad-a), var(--l-grad-b));
  border: 1px solid transparent; color: var(--l-btn-fg); box-shadow: var(--l-glow);
}
a.l-btn-primary, a.l-btn-primary:hover { color: var(--l-btn-fg); }
.l-btn-primary:hover { box-shadow: var(--l-glow-hover); border-color: transparent; color: var(--l-btn-fg); }
.l-btn-ghost { background: transparent; }

/* 导航「开放平台」下拉：官网与控制台顶栏共用本文件，配色走 --l-* 令牌（双主题均有定义） */
.drop { position: relative; display: flex; }
.drop-btn {
  display: inline-flex; align-items: center; gap: 6px;
  font: inherit; font-size: 14px; font-weight: 600; color: var(--l-muted);
  background: none; border: 0; cursor: pointer; padding: 8px 14px; border-radius: 8px;
  transition: color .15s, background .15s;
}
.drop-btn:hover { color: var(--l-text); background: var(--l-hairline); }
.drop-caret { transition: transform .18s; }
.drop.open .drop-caret { transform: rotate(180deg); }
.drop-menu {
  position: absolute; top: calc(100% + 10px); right: 0; min-width: 172px;
  display: none; flex-direction: column; gap: 2px; padding: 6px;
  background: var(--l-panel); border: 1px solid var(--l-border-2); border-radius: 12px;
  box-shadow: 0 14px 36px rgba(7, 13, 26, .16); z-index: 80;
}
.drop.open .drop-menu { display: flex; animation: drop-in .16s ease; }
/* 同上：.l-site a { color: inherit } 会盖掉单类选择器 */
.drop-menu a,
.l-site .drop-menu a {
  padding: 9px 12px; border-radius: 8px; font-size: 13.5px; font-weight: 500;
  color: var(--l-muted); text-decoration: none; transition: background .12s, color .12s;
}
.drop-menu a:hover,
.l-site .drop-menu a:hover { background: var(--l-hairline); color: var(--l-text); }
@keyframes drop-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

.l-btn.l-theme {
  display: inline-grid; place-items: center; width: var(--ctl-h, 38px); padding: 0;
  background: transparent; color: var(--l-muted);
  border: 1px solid var(--l-border-2); border-radius: 10px;
  font-size: 15px; cursor: pointer;
}
.l-btn.l-theme:hover { color: var(--l-accent); border-color: var(--l-accent); transform: none; }
/* GitHub 图标按钮：与主题切换按钮同尺寸同框 */
.l-btn.l-gh {
  display: inline-grid; place-items: center; width: var(--ctl-h, 38px); padding: 0;
  background: transparent; color: var(--l-muted);
  border: 1px solid var(--l-border-2); border-radius: 10px;
  cursor: pointer;
}
.l-btn.l-gh:hover { color: var(--l-accent); border-color: var(--l-accent); transform: none; }
.l-btn.l-theme .i-sun { display: none; }
.l-btn.l-theme .i-moon { display: block; }
html[data-theme="light"] .l-btn.l-theme .i-sun { display: block; }
html[data-theme="light"] .l-btn.l-theme .i-moon { display: none; }
.l-logo-img { width: 36px; height: 36px; border-radius: 9px; object-fit: cover; display: block; }

html[data-theme-anim] .l-nav { transition: background-color .25s, color .25s, border-color .25s, box-shadow .25s; }

/* 阅读 / 密码门 / 项目分享列表：为 fixed 顶栏留出空间 */
.reader-body, body.has-site-nav { padding-top: 66px; box-sizing: border-box; }

@media (max-width: 980px) {
  .l-nav.has-landing-links .l-nav-links { display: none; }
  .l-nav.has-landing-links .l-nav-toggle { display: inline-flex; }
  .l-nav,
  .l-nav.has-landing-links { height: 66px; min-height: 66px; flex-wrap: nowrap; padding: 0 16px; gap: 10px; }
  .l-nav-right { margin-left: auto; flex-wrap: nowrap; gap: 8px; }
  .l-logo { font-size: 15px; max-width: 36vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
@media (max-width: 620px) {
  .l-nav-right { --ctl-h: 34px; gap: 6px; }
  .l-nav-right .l-lang select { font-size: 12px; padding: 0 6px; max-width: 88px; }
  .l-btn.l-btn-ghost, .l-nav-right > .l-btn-primary { padding-left: 10px; padding-right: 10px; font-size: 12.5px; }
}
