

/* ───────────────────────── A. 极光画布 ───────────────────────── */
/* 两层固定伪元素：底层极光光晕（缓慢漂移）+ 顶层微网格 */
body::before {
  content: '';
  position: fixed; inset: -20%;
  z-index: -2;
  pointer-events: none;
  background:
    radial-gradient(38% 32% at 18% 12%, color-mix(in srgb, var(--primary) 26%, transparent), transparent 70%),
    radial-gradient(30% 28% at 85% 8%,  color-mix(in srgb, #22d3ee 12%, transparent), transparent 68%),
    radial-gradient(34% 30% at 78% 88%, color-mix(in srgb, var(--green) 10%, transparent), transparent 70%),
    radial-gradient(28% 26% at 8% 82%,  color-mix(in srgb, #a855f7 12%, transparent), transparent 68%),
    var(--bg);
  /* 性能：极光背景保持静态。背景一旦持续动画，上层 .panel 的 backdrop-filter
     每帧都要对全屏重算高斯模糊，是整体掉帧/打字延迟的主因。 */
}
body::after {
  content: '';
  position: fixed; inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: radial-gradient(circle, rgba(255,255,255,0.028) 1px, transparent 1px);
  background-size: 34px 34px;
  -webkit-mask-image: radial-gradient(ellipse 110% 90% at 50% 0%, #000 20%, transparent 75%);
  mask-image: radial-gradient(ellipse 110% 90% at 50% 0%, #000 20%, transparent 75%);
}
/* 浅色主题：画布更收敛，避免喧宾夺主 */
[data-theme="light"] body::before,
[data-theme="cloud"] body::before {
  background:
    radial-gradient(38% 32% at 18% 12%, rgba(91,92,246,0.09), transparent 70%),
    radial-gradient(30% 28% at 85% 8%, rgba(14,165,183,0.06), transparent 68%),
    radial-gradient(34% 30% at 78% 88%, rgba(20,146,95,0.05), transparent 70%),
    var(--bg);
}
[data-theme="light"] body::after,
[data-theme="cloud"] body::after {
  background-image: radial-gradient(circle, rgba(15,23,42,0.035) 1px, transparent 1px);
}
/* 暖岩主题：画布换成琥珀暖光，与金棕基调保持一致 */
[data-theme="warm"] body::before {
  background:
    radial-gradient(38% 32% at 18% 12%, rgba(226,161,61,0.2), transparent 70%),
    radial-gradient(30% 28% at 85% 8%, rgba(212,116,56,0.12), transparent 68%),
    radial-gradient(34% 30% at 78% 88%, rgba(92,168,107,0.08), transparent 70%),
    radial-gradient(28% 26% at 8% 82%, rgba(200,160,48,0.1), transparent 68%),
    var(--bg);
}
/* 登录页自带背景，不受画布影响（z-index 999 覆盖） */

/* ───────────────────────── B. 悬浮玻璃 Dock（侧边栏） ───────────────────────── */
@media (min-width: 769px) {
  .sidebar {
    margin: 16px 0 16px 16px;
    border-radius: 24px;
    border: 1px solid var(--hairline);
    background: color-mix(in srgb, var(--surface) 94%, transparent);
    /* 性能：常驻大面积 blur 每帧重算，导致掉帧/打字延迟，改为近不透明背景 */
    box-shadow: var(--shadow-lg), inset 0 1px 0 rgba(255,255,255,0.05);
    overflow: hidden;
  }
  /* 品牌区：发光徽标 + 呼吸渐变字 */
  .sidebar-brand { padding: 20px 20px 16px; }
  .sidebar-brand-icon {
    width: 38px; height: 38px; border-radius: 12px;
    box-shadow: 0 6px 20px -2px color-mix(in srgb, var(--primary) 65%, transparent),
                0 0 0 1px color-mix(in srgb, var(--primary) 30%, transparent),
                inset 0 1px 0 rgba(255,255,255,0.3);
  }
  .sidebar-brand-text {
    font-size: 17.5px;
    background: linear-gradient(120deg, var(--text) 20%, var(--primary-hover) 60%, var(--text) 100%);
    background-size: 200% 100%;
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
    /* 性能：brandSheen 无限动画每帧触发 paint，改为静态渐变 */
  }
  @keyframes brandSheen {
    0%, 100% { background-position: 0% 0; }
    50%      { background-position: 100% 0; }
  }
  /* 用户卡：玻璃质感 */
  .sidebar-user {
    background: color-mix(in srgb, var(--surface2) 55%, transparent);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }
  /* 导航分组留白（视觉分区，不动结构） */
  .nav-item[data-panel="dashboard"],
  .nav-item#tools-nav-item { margin-top: 16px; }
  /* 导航项：悬浮药丸 */
  .nav-item { padding: 10px 12px; border-radius: 13px; }
  .nav-item:hover { transform: translateX(2px); }
  .nav-item.active {
    background: var(--grad-primary);
    color: #fff;
    box-shadow: 0 6px 18px -4px color-mix(in srgb, var(--primary) 60%, transparent),
                inset 0 1px 0 rgba(255,255,255,0.22);
  }
  .nav-item.active .nav-icon { color: #fff; }
  .nav-item.active::before { display: none; }
  .nav-item.active .badge { background: rgba(255,255,255,0.22); box-shadow: none; }
  [data-theme="warm"] .nav-item.active { color: #1a1408; }
  [data-theme="warm"] .nav-item.active .nav-icon { color: #1a1408; }

  /* ─────────────────────── C. 悬浮窗口（面板） ─────────────────────── */
  .main { background: transparent; padding-bottom: 16px; }
  .v2-topbar { margin: 16px 16px 0 12px; }
  .panel {
    margin: 12px 16px 0 12px;
    border-radius: 24px;
    border: 1px solid var(--hairline);
    background: color-mix(in srgb, var(--bg) 96%, transparent);
    /* 性能：整屏 backdrop-filter 会在每次滚动/重绘时触发全屏模糊重算，已移除 */
    box-shadow: var(--shadow-lg), inset 0 1px 0 rgba(255,255,255,0.04);
  }
  /* 面板内滚动区与内容依旧；卡片在玻璃底上改用更不透明的表面以保持层级 */
  .panel .stat-card, .panel .dashboard-card, .panel .dashboard-live-card,
  .panel .dashboard-discussion-card, .panel .notif-card, .panel .briefing-box,
  .panel .library-composer, .panel .library-filter-panel, .panel .member-card,
  .panel .node-card, .panel .kanban-card, .panel .wft-card, .panel .mc-card,
  .panel .account-card, .panel .team-focus-board {
    background: color-mix(in srgb, var(--surface) 88%, transparent);
  }

  /* ─────────────────────── D. 对话面板：悬浮式会话轨 + 发光组合框 ─────────────────────── */
  .chat-sessions-sidebar {
    margin: 12px 0 12px 12px;
    border-radius: 18px;
    border: 1px solid var(--hairline);
    background: color-mix(in srgb, var(--surface) 94%, transparent);
    /* 性能：面板内嵌套模糊成本叠加，改为近不透明背景 */
    box-shadow: var(--shadow-sm);
    overflow: hidden;
  }
  .chat-input-area { padding-bottom: 20px; }
  .chat-input-stack {
    border-radius: 20px;
    /* 性能：输入框常驻且每次击键都触发重绘，去掉 blur 消除打字延迟 */
    background: color-mix(in srgb, var(--surface) 96%, transparent);
  }
  .chat-input-area > button { border-radius: 16px; height: 48px; }
  .chat-input-area > button#chat-send {
    box-shadow: 0 6px 20px -4px color-mix(in srgb, var(--primary) 62%, transparent),
                inset 0 1px 0 rgba(255,255,255,0.24);
  }

  /* ─────────────────────── E. 仪表盘：极光 Hero + 发光统计卡 ─────────────────────── */
  .dashboard-hero { position: relative; overflow: hidden; }
  .dashboard-hero::before {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(115deg, transparent 30%, color-mix(in srgb, var(--primary) 9%, transparent) 48%, transparent 62%);
    background-size: 240% 100%;
    background-position: 120% 0; /* 静态微光：原 9s 循环动画强制每帧重绘 hero 区 */
    pointer-events: none;
  }
  .stat-card { position: relative; overflow: hidden; }
  .stat-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md), 0 0 24px -6px color-mix(in srgb, var(--primary) 25%, transparent);
  }

  /* ─────────────────────── F. 顶栏微光 ─────────────────────── */
  .v2-topbar {
    background: color-mix(in srgb, var(--surface) 62%, transparent);
    box-shadow: var(--shadow-md), inset 0 1px 0 rgba(255,255,255,0.05),
                0 0 32px -12px color-mix(in srgb, var(--primary) 18%, transparent);
  }
  .v2-topbar-title { font-size: 19px; letter-spacing: -0.5px; }
}

/* ───────────────────────── G. 登录页：进一步加强（全端） ───────────────────────── */
.login-card {
  border: 1px solid transparent;
  background:
    linear-gradient(color-mix(in srgb, var(--surface) 78%, transparent), color-mix(in srgb, var(--surface) 78%, transparent)) padding-box,
    linear-gradient(140deg, color-mix(in srgb, var(--primary) 45%, transparent), color-mix(in srgb, var(--border) 60%, transparent) 38%, transparent 65%) border-box;
}
[data-theme="light"] .login-card {
  background:
    linear-gradient(rgba(255,255,255,0.86), rgba(255,255,255,0.86)) padding-box,
    linear-gradient(140deg, rgba(91,92,246,0.4), rgba(15,23,42,0.08) 40%, transparent 65%) border-box;
}
.login-orb-1 { opacity: 0.3; }
.login-orb-3 { opacity: 0.2; }
.login-logo-text {
  background: linear-gradient(120deg, var(--text) 15%, var(--primary-hover) 55%, var(--text) 95%);
  background-size: 220% 100%;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  /* 性能：brandSheen 无限动画每帧触发 paint，改为静态渐变 */
}
[data-theme="light"] .login-logo-text {
  background: linear-gradient(120deg, #1a2338 15%, #5b5cf6 55%, #1a2338 95%);
  background-size: 220% 100%;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
