/* ============ 站点统一顶栏（与协助采集页同款蓝色导航） ============
   纯 CSS 交互（悬停下拉），不依赖 bootstrap/页面脚本；静态流式布局，不占 body padding。
   各页面引入方式：<link href="__CDN__/assets/css/topnav.css" rel="stylesheet"> + {include file="common/topnav" /}
*/
.tnv-bar {
    background: linear-gradient(90deg, #1E3C72 0%, #2A5298 100%); color: #fff;
    font-family: Microsoft YaHei, PingFang SC, system-ui, -apple-system, sans-serif;
    box-shadow: 0 2px 8px rgba(15,23,42,.10);
}
.tnv-bar__inner {
    max-width: 1360px; margin: 0 auto; padding: 0 24px;
    display: flex; align-items: center; gap: 28px; height: 60px;
}
.tnv-brand {
    display: flex; align-items: center; gap: 10px; flex-shrink: 0;
    color: #fff; font-size: 17px; font-weight: 700; text-decoration: none;
}
.tnv-brand img { width: 30px; height: 30px; border-radius: 8px; display: block; }
.tnv-brand:hover { color: #fff; text-decoration: none; }
.tnv-links { display: flex; gap: 6px; flex: 1; list-style: none; margin: 0; padding: 0; }
.tnv-links a {
    display: block; color: rgba(255,255,255,.82); padding: 7px 14px;
    border-radius: 8px; font-size: 14px; text-decoration: none;
}
.tnv-links a:hover, .tnv-links a:focus { color: #fff; background: rgba(255,255,255,.10); text-decoration: none; }
.tnv-links a.is-active { color: #fff; background: rgba(255,255,255,.18); font-weight: 600; }
.tnv-user { display: flex; align-items: center; gap: 8px; list-style: none; margin: 0; padding: 0; }
.tnv-user > li { position: relative; }
.tnv-user a { color: rgba(255,255,255,.92); font-size: 13px; text-decoration: none; }
.tnv-user a:hover { color: #fff; text-decoration: none; }
.tnv-chip {
    display: inline-flex; align-items: center; padding: 6px 16px;
    border-radius: 8px; font-size: 13px;
}
.tnv-chip--ghost { background: rgba(255,255,255,.16); color: #fff; }
.tnv-chip--ghost:hover { background: rgba(255,255,255,.26); color: #fff; }
.tnv-chip--main { background: rgba(255,255,255,.92); color: #1E3C72; font-weight: 600; }
.tnv-chip--main:hover { background: #fff; color: #1E3C72; }
.tnv-dropdown-toggle { display: flex; align-items: center; gap: 8px; padding: 6px 10px; border-radius: 8px; cursor: pointer; }
.tnv-dropdown-toggle:hover { background: rgba(255,255,255,.10); }
.tnv-avatar {
    width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.22);
    display: inline-flex; align-items: center; justify-content: center; overflow: hidden; font-size: 13px;
}
.tnv-avatar img { width: 100%; height: 100%; object-fit: cover; }
.tnv-caret {
    display: inline-block; vertical-align: middle;
    border-top: 4px dashed rgba(255,255,255,.7); border-right: 4px solid transparent; border-left: 4px solid transparent;
}
/* 悬停下拉（纯 CSS；::before 桥接 6px 间隙防中途闭合） */
.tnv-menu {
    display: none; position: absolute; right: 0; top: 100%; margin-top: 6px; min-width: 160px;
    background: #fff; border: 1px solid #E5EAF2; border-radius: 10px;
    box-shadow: 0 10px 30px rgba(15,23,42,.14); padding: 6px; list-style: none; z-index: 1040;
}
.tnv-menu::before { content: ''; position: absolute; top: -8px; left: 0; right: 0; height: 8px; }
.tnv-dropdown:hover .tnv-menu, .tnv-dropdown:focus-within .tnv-menu { display: block; }
.tnv-menu a {
    display: flex; align-items: center; gap: 9px; padding: 8px 12px;
    border-radius: 8px; color: #243047; font-size: 13px;
}
.tnv-menu a:hover { background: #F1F4F9; color: #243047; text-decoration: none; }
.tnv-menu .fa { width: 14px; text-align: center; color: #64748B; }
.tnv-menu__divider { height: 1px; background: #EEF1F6; margin: 5px 4px; }
@media (max-width: 1023px) {
    .tnv-bar__inner { height: 50px; padding: 0 16px; gap: 12px; }
    .tnv-links { display: none; }
}
