/* ============================================================
   全站深浅色主题 · 唯一控制点（theme.css，2026-10-31）
   ------------------------------------------------------------
   · 默认深色（出厂观感不变）；html[data-theme="light"] 切浅色
   · 页面 <head> 的内联 bootstrap 读 localStorage('dt_theme')，
     无保存偏好时跟随系统 prefers-color-scheme
   · 只动中性灰阶；品牌色 / 语义色（红绿橙）/ 纯白（强调底上的字）
     各页保持原样不翻转
   · 树页等已有自己的 --bg/--card/--ink 变量：它们的 :root 定义
     已批量改写为引用 --dt-*，因此只需翻 --dt-* 一层
   · SVG 图标里写死的 fill/stroke 属性无法用 var()，浅色下用
     属性选择器统一覆盖（文件里属性值均为小写）
   ============================================================ */
:root{
  --dt-bg:#161616;        /* 页面底 */
  --dt-bg-deep:#111111;   /* 更深一档（分隔带/页脚） */
  --dt-card:#1f1f1f;      /* 卡片底 */
  --dt-elev:#242424;      /* 抬升面（输入框/表头） */
  --dt-elev2:#2b2b2b;     /* 更抬升（选中片/实心块） */
  --dt-line:#3d3d3d;      /* 边框 */
  --dt-ink:#ededed;       /* 主文字 */
  --dt-ink2:#c3c3c3;      /* 次文字 */
  --dt-ink3:#989898;      /* 弱文字 */
  --dt-ink35:#8a8a8a;     /* 弱文字中档（原语义红灰化处） */
  --dt-ink4:#6e6e6e;      /* 最弱文字/静默图标 */
  --dt-a14:#98989814;     /* 弱文字 8% 透明（细线/底纹） */
  --dt-a55:#98989855;     /* 弱文字 33% 透明（描边/阴影） */
  --dt-ta14:#e4e4e414;    /* 主文字 8% 透明 */
  --dt-ta55:#e4e4e455;    /* 主文字 33% 透明 */
}
html[data-theme="light"]{
  --dt-bg:#f6f6f3;
  --dt-bg-deep:#eeeeea;
  --dt-card:#ffffff;
  --dt-elev:#f0f0ed;
  --dt-elev2:#e8e8e4;
  --dt-line:#d9d9d4;
  --dt-ink:#262626;
  --dt-ink2:#4d4d4d;
  --dt-ink3:#767676;
  --dt-ink35:#6b6b6b;
  --dt-ink4:#8f8f8f;
  --dt-a14:#26262614;
  --dt-a55:#26262655;
  --dt-ta14:#26262614;
  --dt-ta55:#26262655;
}
/* ---- 浅色下 SVG 属性位写死的深色值 → 跟随灰阶 ---- */
html[data-theme="light"] svg [fill="#ededed"]{fill:var(--dt-ink)}
html[data-theme="light"] svg [fill="#e4e4e4"]{fill:var(--dt-ink)}
html[data-theme="light"] svg [fill="#e8e8e8"]{fill:var(--dt-ink)}
html[data-theme="light"] svg [fill="#c3c3c3"]{fill:var(--dt-ink2)}
html[data-theme="light"] svg [fill="#b9b9b9"]{fill:var(--dt-ink2)}
html[data-theme="light"] svg [fill="#989898"]{fill:var(--dt-ink3)}
html[data-theme="light"] svg [fill="#8a8a8a"]{fill:var(--dt-ink35)}
html[data-theme="light"] svg [fill="#6e6e6e"]{fill:var(--dt-ink4)}
html[data-theme="light"] svg [fill="#3d3d3d"]{fill:var(--dt-line)}
html[data-theme="light"] svg [fill="#2b2b2b"]{fill:var(--dt-elev2)}
html[data-theme="light"] svg [fill="#242424"]{fill:var(--dt-elev)}
html[data-theme="light"] svg [fill="#222222"]{fill:var(--dt-elev)}
html[data-theme="light"] svg [fill="#1f1f1f"]{fill:var(--dt-card)}
html[data-theme="light"] svg [fill="#1a1a1a"]{fill:var(--dt-bg)}
html[data-theme="light"] svg [fill="#161616"]{fill:var(--dt-bg)}
html[data-theme="light"] svg [fill="#111111"]{fill:var(--dt-bg-deep)}
html[data-theme="light"] svg [stroke="#ededed"]{stroke:var(--dt-ink)}
html[data-theme="light"] svg [stroke="#e4e4e4"]{stroke:var(--dt-ink)}
html[data-theme="light"] svg [stroke="#c3c3c3"]{stroke:var(--dt-ink2)}
html[data-theme="light"] svg [stroke="#989898"]{stroke:var(--dt-ink3)}
html[data-theme="light"] svg [stroke="#6e6e6e"]{stroke:var(--dt-ink4)}
html[data-theme="light"] svg [stroke="#3d3d3d"]{stroke:var(--dt-line)}
html[data-theme="light"] svg [stroke="#2b2b2b"]{stroke:var(--dt-elev2)}
html[data-theme="light"] svg [stroke="#1f1f1f"]{stroke:var(--dt-card)}
/* ---- 示意图零件框：原图用近白色(#ededed/#e4e4e4/#c3c3c3)画"盒子底"，
        浅色下不能跟着文字反转变深块 —— 保持浅灰 ---- */
html[data-theme="light"] svg rect[fill="#ededed"],
html[data-theme="light"] svg circle[fill="#ededed"],
html[data-theme="light"] svg ellipse[fill="#ededed"],
html[data-theme="light"] svg polygon[fill="#ededed"]{fill:#ececea}
html[data-theme="light"] svg rect[fill="#e4e4e4"],
html[data-theme="light"] svg circle[fill="#e4e4e4"],
html[data-theme="light"] svg ellipse[fill="#e4e4e4"],
html[data-theme="light"] svg polygon[fill="#e4e4e4"]{fill:#e9e9e6}
html[data-theme="light"] svg rect[fill="#c3c3c3"],
html[data-theme="light"] svg circle[fill="#c3c3c3"],
html[data-theme="light"] svg ellipse[fill="#c3c3c3"],
html[data-theme="light"] svg polygon[fill="#c3c3c3"]{fill:#dcdcda}
/* ---- 树页头部：深色下用"白色半透明"做的副标题/按钮洗层，
        浅色头部(白底)上会隐形 —— 反转为深色半透明 ---- */
html[data-theme="light"] header .sub{color:rgba(38,38,38,.65)}
html[data-theme="light"] .hbtn{background:rgba(38,38,38,.08)}
html[data-theme="light"] .hbtn:active{background:rgba(38,38,38,.16)}
html[data-theme="light"] .home{background:rgba(38,38,38,.08)}
html[data-theme="light"] .home:active{background:rgba(38,38,38,.16)}
/* ---- 壳页顶栏浅色覆盖（.dv-bar 在 content_view.html 里硬编码深色底，
   浅色模式下出现「黑条」—— 2026-10-31 用户反馈修复 ---- */
html[data-theme="light"] .dv-bar{background:rgba(255,255,255,.96);}
html[data-theme="light"] .dv-bar a:hover{background:#f0f0ed;}

/* ---- 存量树蓝灰系 SVG 属性位（外置快照示意图，服务端主题化后仍写死在 fill=/stroke= 的部分）---- */
html[data-theme="light"] svg [fill="#2b333c"]{fill:var(--dt-elev2)}
html[data-theme="light"] svg [fill="#232a31"]{fill:var(--dt-card)}
html[data-theme="light"] svg [fill="#1b1f24"]{fill:var(--dt-bg)}
html[data-theme="light"] svg [fill="#e8eaed"]{fill:var(--dt-ink)}
html[data-theme="light"] svg [fill="#9aa5b1"]{fill:var(--dt-ink2)}
html[data-theme="light"] svg [fill="#3d4650"]{fill:var(--dt-line)}
html[data-theme="light"] svg [stroke="#2b333c"]{stroke:var(--dt-elev2)}
html[data-theme="light"] svg [stroke="#232a31"]{stroke:var(--dt-card)}
html[data-theme="light"] svg [stroke="#1b1f24"]{stroke:var(--dt-bg)}
html[data-theme="light"] svg [stroke="#e8eaed"]{stroke:var(--dt-ink)}
html[data-theme="light"] svg [stroke="#9aa5b1"]{stroke:var(--dt-ink2)}
html[data-theme="light"] svg [stroke="#3d4650"]{stroke:var(--dt-line)}

/* ---- 树自带 header（深蓝灰底 #1f252c + 白字，存量树与静态树页共用）浅色反转 ---- */
html[data-theme="light"] header{background:var(--dt-card);color:var(--dt-ink);box-shadow:0 2px 8px rgba(0,0,0,.08)}
html[data-theme="light"] header .hbtn{color:var(--dt-ink);background:rgba(0,0,0,.06)}
