/* 巨牛工作台 · V2 顶部导航版（全部 html.ui-v2 作用域，V1 经典侧栏零改动） */

/* 默认隐藏 V2 工具区（V1 不显示），V2 下再打开 */
.topbar-tools{ display:none; }

html.ui-v2{
  --v2-bar:54px;
}

@media(min-width:768px){
/* ===== 整体框架 ===== */
html.ui-v2 .app{
  display:block;
  min-height:100vh;
}

/* 顶栏容器：把原 .sidebar 横过来 */
html.ui-v2 .sidebar,
html.ui-v2 .sidebar.open,
html.ui-v2 .sidebar.collapsed{
  position:fixed !important;
  top:0 !important; left:0 !important; right:0 !important; bottom:auto !important;
  width:100% !important; height:var(--v2-bar) !important; flex:0 0 auto !important;
  flex-direction:row !important; align-items:center !important; flex-wrap:nowrap !important;
  gap:0 !important; padding:0 14px 0 8px !important;
  transform:none !important; transition:none !important;
  overflow:visible !important;                           /* 下拉菜单需要伸出顶栏 */
  background:color-mix(in srgb, var(--primary-dark) 70%, #12161b) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 2px 12px rgba(0,0,0,.08) !important;
  z-index:80;
}
html.ui-v2 .sidebar::after{ display:none !important; }   /* 去掉原竖向分割线 */

/* V2 大屏下隐藏页面级标题栏（主栏已标明当前模块，避免"三层 header"重复厚重）；窄屏/非 V2 仍保留 */
html.ui-v2 .page-header{ display:none !important; }

/* 移动端抽屉元素在 V2 不需要 */
html.ui-v2 .hamburger,
html.ui-v2 .overlay,
html.ui-v2 .side-foot,
html.ui-v2 .side-copy,
html.ui-v2 .side-copy-at,
html.ui-v2 .nav-toggle{ display:none !important; }

/* ===== 品牌区（与原版侧栏完全一致，仅参与横条布局） ===== */
html.ui-v2 .brand{
  height:auto !important; padding:0 12px !important; gap:9px !important;
  flex:0 0 auto !important; cursor:pointer;
}
html.ui-v2 .brand .b-logo{
  width:36px !important; height:36px !important; border-radius:9px !important;
  object-fit:contain !important; background:#fff !important;
  mix-blend-mode:normal !important;
}
html.ui-v2 .brand .b-text{ display:flex !important; flex-direction:column !important; width:max-content !important; }
html.ui-v2 .brand .b-name{
  font-size:12px !important; font-weight:700 !important; line-height:1.2 !important; letter-spacing:.3px !important;
  color:#fff !important;
  text-align:justify !important; text-align-last:justify !important; text-justify:inter-character !important;
}
html.ui-v2 .brand .b-slogan{
  display:block !important; font-size:11px !important; color:rgba(255,255,255,.72) !important;
  font-weight:600 !important; letter-spacing:.6px !important; margin-top:2px !important;
  text-align:justify !important; text-align-last:justify !important; text-justify:inter-character !important;
}

/* ===== 主导航 ===== */
html.ui-v2 .nav,
html.ui-v2 .sidebar.collapsed .nav{
  display:flex !important;                                 /* 关键：原 .nav 非 flex */
  flex:1 1 auto !important; min-width:0 !important;
  flex-direction:row !important; align-items:center !important;
  overflow-x:auto !important; overflow-y:hidden !important;
  padding:0 4px !important; gap:3px !important;
  background-image:none !important;
  scrollbar-width:none !important; -ms-overflow-style:none !important;
}
html.ui-v2 .nav::-webkit-scrollbar{ display:none; width:0; height:0; background:transparent; }

html.ui-v2 .nav a,
html.ui-v2 .sidebar.collapsed .nav a{
  flex:0 0 auto !important;
  display:inline-flex !important; align-items:center !important; gap:5px !important;
  padding:10px 12px !important; margin:1px 0 !important;
  border-radius:10px !important;
  font-size:14px !important;
  color:rgba(255,255,255,.85) !important; text-decoration:none;
  white-space:nowrap !important;
  transition:background .15s !important;
  touch-action:none; user-select:none; -webkit-touch-callout:none;
}
/* 图标尺寸/字号与原版侧栏完全一致 */
html.ui-v2 .nav a .ico{
  width:18px !important; font-size:15px !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  text-align:center !important;
}
html.ui-v2 .nav a .ico svg{ width:16px !important; height:16px !important; }
/* 登录管理「导航可见性」隐藏项：必须用 !important 覆盖 .nav a 的 display:inline-flex !important */
html.ui-v2 .nav a.nav-hidden{ display:none !important; }
/* 激活/悬停样式与原版侧栏一致：主色浅底 + 深主色字 */
html.ui-v2 .nav a:hover{
  background:var(--primary-soft) !important;
  color:var(--primary-dark) !important;
}
html.ui-v2 .nav a.active{
  background:var(--primary-soft) !important;
  color:var(--primary-dark) !important;
  font-weight:600 !important;
}
html.ui-v2 .nav a.active:hover{ background:var(--primary-soft) !important; color:var(--primary-dark) !important; }
/* 暗夜紫（深色）主题下，导航悬停/高亮底色是深紫胶囊，深紫字对比不足 → 改白色字 */
html.theme-purple .nav a:hover,
html.theme-purple .nav a.active,
html.theme-purple .nav a.active:hover{ color:#fff !important; }
html.ui-v2 .sidebar .nav-label,
html.ui-v2 .sidebar.collapsed .nav-label{
  overflow:hidden !important; white-space:nowrap !important; flex:0 1 auto !important;
  opacity:1 !important; max-width:200px !important; margin:0 !important; padding:0 !important;
  transition:none !important;                                      /* 取消折叠动画，文字立即显示 */
}

/* ===== 右侧工具区 ===== */
html.ui-v2 .topbar-tools{
  display:flex !important; align-items:center !important; gap:8px !important;
  flex:0 0 auto !important; margin-left:auto !important;
}
html.ui-v2 .v2-drop-wrap{
  position:relative;
  display:flex; align-items:center;
}

/* 图标按钮 */
html.ui-v2 .v2-icon-btn{
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:10px; border:1px solid transparent;
  background:transparent; color:#fff; cursor:pointer; padding:0;
  transition:background .15s, border-color .15s, transform .1s;
}
html.ui-v2 .v2-icon-btn:hover{
  background:var(--primary-soft);
  border-color:color-mix(in srgb, var(--primary) 22%, transparent);
  color:var(--primary-dark);
}
html.ui-v2 .v2-icon-btn:active{ transform:scale(.96); }
html.ui-v2 .v2-icon-btn svg{ width:18px; height:18px; }

/* 下拉面板 */
html.ui-v2 .v2-pop{
  position:absolute; top:calc(100% + 8px); right:0;
  background:var(--panel); border:1px solid var(--line); border-radius:14px;
  box-shadow:0 12px 32px rgba(0,0,0,.14); padding:8px;
  min-width:150px; display:none; z-index:90;
  animation:v2-pop-in .12s ease-out;
}
html.ui-v2 .v2-pop.show{ display:block; }
@keyframes v2-pop-in{
  from{ opacity:0; transform:translateY(-4px); }
  to{ opacity:1; transform:translateY(0); }
}

/* 主题色下拉 */
html.ui-v2 .v2-theme-pop{
  padding:14px; border-radius:18px;
  min-width:auto;
  box-shadow:0 14px 38px rgba(0,0,0,.14);
}
html.ui-v2 .v2-theme-pop .theme-dots{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:8px;
  width:auto; margin:0;
}
html.ui-v2 .v2-theme-pop .theme-dot{
  width:20px; height:20px; border-radius:6px;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.08), 0 2px 5px rgba(0,0,0,.06);
  transition:transform .15s ease, box-shadow .15s ease;
}
html.ui-v2 .v2-theme-pop .theme-dot:hover{ transform:scale(1.08); box-shadow:inset 0 0 0 1px rgba(0,0,0,.08), 0 4px 10px rgba(0,0,0,.12); }
html.ui-v2 .v2-theme-pop .theme-dot.active{
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.08), 0 0 0 2px var(--panel), 0 0 0 3.5px var(--primary);
}

/* 设置下拉 */
html.ui-v2 .v2-menu-item{
  display:flex; align-items:center; gap:11px;
  padding:9px 12px; border-radius:10px; cursor:pointer;
  font-size:14px; color:var(--text); white-space:nowrap;
  transition:background .15s;
}
html.ui-v2 .v2-menu-item:hover{ background:var(--primary-soft); color:var(--primary-dark); }
html.ui-v2 .v2-menu-item .ico{ width:18px; text-align:center; font-size:15px; color:var(--muted); display:inline-flex; align-items:center; justify-content:center; }
html.ui-v2 .v2-menu-item .ico svg{ width:16px; height:16px; }
html.ui-v2 .v2-menu-item:hover .ico{ color:var(--primary); }

/* ===== 主内容区 ===== */
html.ui-v2 .main{
  margin-left:0 !important; padding-top:var(--v2-bar) !important;
  flex:1; min-width:0;
}
html.ui-v2 .content{
  max-width:none !important;
  padding:18px !important;
}

/* ===== 财务管理横向子导航 ===== */
html.ui-v2 .fin-wrap{ display:block !important; margin-top:0; gap:0; }
html.ui-v2 .fin-divider{ display:none !important; }
html.ui-v2 .fin-banner{ margin:0 18px !important; }   /* V2 下 banner 已移到 fin-wrap 内(子导航下/客户订单上)，左右缩进 18px 与内容对齐 */
html.ui-v2 .fin-sync-banner{
  width:auto !important;
  margin:0 0 10px 0 !important;       /* 已移到 fin-main 内，fin-main 自带左右 padding，无需额外 margin */
  padding:10px 14px !important;
  border-radius:10px !important;
  box-sizing:border-box !important;
}
html.ui-v2 .fin-main{
  flex:none !important; width:100% !important; max-width:none !important;
  margin:0 !important; padding:8px 18px 18px !important;
}
html.ui-v2 #page-health .content{ padding:0 !important; max-width:none !important; margin:0 !important; }

/* 财务管理子页面（开票明细 / 回收站）统一 18px 全宽：.fin-main 已提供 18px 内边距，子页面不再追加额外 padding */
html.ui-v2 .fin-inv-page,
html.ui-v2 .fin-recycle{
  padding:0 !important; width:100% !important;
}

/* ===== 响应式收敛 ===== */
@media(max-width:920px){
  html.ui-v2 .brand .b-name{ display:none !important; }
}
@media(max-width:640px){
  html.ui-v2 .nav a{ padding:7px 9px !important; gap:5px !important; }
  html.ui-v2 .nav a .nav-label{ display:none !important; }
  html.ui-v2 .nav a .ico{ width:20px !important; font-size:18px !important; }
}
@media(max-width:480px){
  html.ui-v2 .sidebar{ padding:0 8px 0 4px !important; }
  html.ui-v2 .v2-icon-btn{ width:32px; height:32px; }
}

}

/* ===== V2 通用分段切换导航（AI工具箱 / 电商运营 / 财务管理）【仅桌面端】=====
   底部基线 + 激活项下方圆角短横线，保留 SVG 小图标；移动端恢复之前样式 */
html.ui-v2 .v2-subnav-slider{ display:none !important; }
@media(min-width:768px){
/* V2 子导航：底部基线 + 激活项下方圆角短横线，保留 SVG 小图标 */
html.ui-v2 .ai-tabs,
html.ui-v2 .cm-tabs,
html.ui-v2 .fin-side{
  position:relative !important;
  display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important;
  align-items:center !important; justify-content:flex-start !important;
  gap:8px !important;
  border-bottom:none !important;
  margin:-18px -18px 16px -18px !important;   /* 上贴主导航、左右破 .content 18px padding 实现通栏、下留 16px */
  padding:10px 18px !important;
  width:calc(100% + 36px) !important; max-width:none !important;
  box-sizing:border-box !important;
  background:transparent !important;           /* 透明凹槽，靠内阴影雕刻凹陷，不发深 */
  border-radius:0 !important;                  /* 纯方形凹槽，顶到内容左右边缘 */
  box-shadow:
    inset 0 3px 10px color-mix(in srgb, var(--text) 18%, transparent),
    inset 0 -3px 10px color-mix(in srgb, var(--text) 10%, transparent),
    inset 0 0 0 1px color-mix(in srgb, var(--text) 8%, transparent),
    inset 0 -1px 0 color-mix(in srgb, #fff 32%, transparent) !important;
  overflow-x:auto !important; overflow-y:hidden !important;
  scrollbar-width:none !important; -ms-overflow-style:none !important;
}
html.ui-v2 .fin-side{
  flex:none !important;
  position:relative !important; top:auto !important;
  max-height:none !important;
  padding:10px 18px !important;
  margin:0 0 16px 0 !important;          /* 财务 .content 左右 padding 为 0，已天然通栏，无需破 margin；下方留 16px */
  width:100% !important;
  z-index:auto !important;
}
html.ui-v2 .ai-tabs::-webkit-scrollbar,
html.ui-v2 .cm-tabs::-webkit-scrollbar,
html.ui-v2 .fin-side::-webkit-scrollbar{ display:none !important; }

/* V2 子导航滑动高亮块：用容器 ::before 承载，跟随激活项平滑滑动（重渲染不丢失） */
html.ui-v2 .ai-tabs::before,
html.ui-v2 .cm-tabs::before,
html.ui-v2 .fin-side::before{
  content:'' !important;
  position:absolute !important;
  top:10px !important; bottom:10px !important; left:var(--sx,0) !important;
  width:var(--sw,0) !important;
  background:var(--primary) !important;
  border-radius:999px !important;
  z-index:0 !important;
  opacity:var(--so,0) !important;
  pointer-events:none !important;
  transition:left .3s cubic-bezier(.34,1.56,.64,1), width .3s cubic-bezier(.34,1.56,.64,1), opacity .2s !important;
}

/* V2 子导航下方间距统一机制：子导航 margin-bottom:20px，内容块顶部 margin/padding 清零 */
html.ui-v2 #page-memo .ai-tools,
html.ui-v2 #page-memo .ai-tools:not(:empty){
  padding:0 !important;
  margin:0 !important;
}
html.ui-v2 #page-memo .ai-work:not(.chat){
  margin-top:12px !important;
  padding-top:14px !important;
  border-radius:14px !important;
  border:1px solid var(--line) !important;
  background:var(--panel) !important;
}
html.ui-v2 #page-daily .cm-body{
  margin-top:0 !important;
  padding-top:0 !important;
}
html.ui-v2 .fin-main{
  padding-top:0 !important;
}
html.ui-v2 .fin-mod-head{
  margin-top:0 !important;
}

html.ui-v2 .ai-tab,
html.ui-v2 .cm-tab,
html.ui-v2 .fin-tab{
  position:relative !important;
  z-index:1 !important;
  flex:0 0 auto !important;
  display:inline-flex !important; align-items:center !important; gap:4px !important;
  padding:8px 10px !important;
  border:none !important; border-radius:999px !important;
  background:transparent !important;
  color:var(--text) !important;
  font-size:13px !important; font-weight:500 !important;
  cursor:pointer !important; white-space:nowrap !important;
  transform:none !important; box-shadow:none !important;
  transition:background .15s, color .15s !important;
}
html.ui-v2 .ai-tab:hover,
html.ui-v2 .cm-tab:hover,
html.ui-v2 .fin-tab:hover{
  background:color-mix(in srgb, var(--primary) 12%, transparent) !important;
  color:var(--text) !important; font-weight:500 !important;
  transform:none !important; box-shadow:none !important;
}
html.ui-v2 .ai-tab.active,
html.ui-v2 .cm-tab.active,
html.ui-v2 .fin-tab.active{
  background:transparent !important;
  color:#fff !important; font-weight:600 !important;
  box-shadow:none !important;
}
/* 下划线隐藏 */
html.ui-v2 .ai-tab.active::after,
html.ui-v2 .cm-tab.active::after,
html.ui-v2 .fin-tab.active::after{
  display:none !important;
}

/* 去掉图标圆底背景，保留小 svg，颜色跟随文字 */
html.ui-v2 .ai-tab .ico,
html.ui-v2 .cm-tab .ico,
html.ui-v2 .fin-tab .ico{
  width:16px !important; height:16px !important;
  border-radius:0 !important; background:transparent !important;
  color:inherit !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
}
html.ui-v2 .ai-tab .ico svg,
html.ui-v2 .cm-tab .ico svg,
html.ui-v2 .fin-tab .ico svg{
  width:14px !important; height:14px !important;
}
}
