@charset "utf-8";
/* ============================================================================
   知识产权法律法规研习站 · 统一视觉层 site-unify.css  (Unify v1)
   ----------------------------------------------------------------------------
   ⚠ 本文件是**唯一视觉真源**。加载位置：每页 <head> 末尾（site.css / site.js 之后
     / 页内 <style> 之后），所以同特异性下本文件靠后胜出。
   ⚠ deploy/site.css 与 deploy/site.js 本轮**一字未改**（site.js 会重建部分 DOM，
     选择器不能动）；所有覆盖只发生在本文件。

   三层特异性结构（视觉规范 §4）
     L1 令牌   :root / html.dark / html.sepia / html.sepia.dark   —— 不加 !important
     L2 语义   html body .x{...}   （0,1,2 ＞ 页内联 .x 的 0,1,0，无需 !important）
     L3 强制   html body .x{...!important} —— 仅用于「已确认被 !important 占据」的属性

   !important 纪律（先扫频次，再决定用不用 L3）
     实测 deploy/*.html 内联 !important：168 个文件 / 11,222 处（正则
     ([a-z-]+)\s*:\s*[^;{}]*?!important）。属性频次：
       font-size 2820 | padding-left 1154 | padding-right 1154 | line-height 1067
       max-width 577 | flex-wrap 577 | margin 577 | float 577 | margin-left 577
       width 490 | height 490 | right 490 | bottom 490 | padding 174
       background 2 | color 2 | box-shadow 2 | display 1 | outline 1
     site.css 自身另有 444 处 !important（color 53 / background 50 / font-size 48 /
       padding 30 / display 27 / border-color 20 / min-height 17 / border-radius 15 …）。

     → L3 白名单（只对下列属性加 !important）：
        font-size, line-height, max-width, padding, padding-left, padding-right,
        margin, width, height, right, bottom, float,
        color / background / border-color / box-shadow / outline / min-height
        （后 6 项仅用于 site.css 已用 !important 的同一目标，逐条注明理由）
     → 其余属性（display 之外的布局属性、transition、transform…）一律 L2。
     → 已知高危已确认：老页 h2,h2.chap{font-size:15px!important}（84 页）、
        h3,h3.chap{font-size:15px!important}（404 页）、h1{font-size:20px!important}
        （577 处）、header{padding:18px 12px!important}（87 页）、
        .card{padding:16px!important}（87 页）、
        .wrap,.container{max-width:100%!important;padding-*:14px!important}（577 处）、
        .to-top{width/height/right/bottom/line-height!important}（490 处）。

   四皮肤：light（:root）/ html.dark / html.sepia / html.sepia.dark。
     html.sepia.dark 是常态组合，故所有皮肤规则按 .dark → .sepia → .sepia.dark 排列，
     且新令牌**四态各写一条**（漏一条就会出现浅色值压在深底上）。
   禁止：中文标题自动断行（balance / pretty）、退役电光蓝、页头渐变/金边/圆角、卡片默认阴影、红作正文色、
     blue 作填充按钮底、gold 作大面积底、行高第 3 种值、em 定段距。
   ============================================================================ */

/* ==========================================================================
   §1  L1 令牌  —— 不加 !important
   ========================================================================== */
:root{
  --sp-p:10px;   /* 段距统一（D14）：桌面与手机同值，勿分两套 */
  /* 品牌红：只作面（fill）与边（border），不作正文文字色 */
  --c-brand:#8f1f1a; --c-brand-deep:#6e1512; --c-brand-wash:#fdf3f1;
  --c-brand-line:#e4bfba; --c-brand-fg:#8f1f1a; --c-hd-fill:#8f1f1a;
  /* 内容蓝：只作字（color）与线 */
  --c-blue:#1a4f8b; --c-blue-hover:#143c6b; --c-blue-wash:#eef3fa; --c-blue-line:#c9d8ea;
  /* 状态 */
  --c-ok:#0e7c66; --c-ok-wash:#edf7f2;
  --c-gov:#b45309; --c-gov-wash:#fdf4e8; --c-gov-line:#f0dfc2;
  /* 面与线 */
  --c-bg:#f4f6f8; --c-surface:#fff; --c-inset:#f8fafc; --c-hd:#f1f4f8;
  --c-line:#e2e7ee; --c-line-strong:#cdd6e2; --c-ctl:#7c8da3;
  /* 字 */
  --c-ink:#16202e; --c-text:#232b36; --c-sub:#566173; --c-muted:#63707f;
  /* 焦点 */
  --c-focus:#1a4f8b; --c-focus-onbrand:#ffd66b; --c-focus-ring:2px; --c-focus-off:2px;
  /* 条文块 7 色点（直径固定 6px，永不放大成色底） */
  --dot-tw:#5b6b80; --dot-zz:#b45309; --dot-lj:#0f766e; --dot-ct:#7c3aed;
  --dot-rl:#1a4f8b; --dot-bt:#be123c; --dot-case:#a16207;
  /* 字号：正文走 --fs-body / 原文（衬线）走 --fs-orig —— 保留 site.js 的字号档位
     （html.fs-0/2/3 覆盖 --fs-body 的机制不变，只换值） */
  --fs-h1:24px; --fs-h2:19px; --fs-h3:16.5px; --fs-h4:15.5px; --fs-card:16px;
  --fs-body:15.5px; --fs-orig:16px; --fs-aux:13px; --fs-tag:12px; --fs-meta:11.5px;
  --ff-sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans SC",sans-serif;
  --ff-serif:Georgia,"Times New Roman","Songti SC","SimSun","Source Han Serif SC","Noto Serif SC",serif;
  /* 间距 / 圆角 / 阴影 */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:24px; --sp-6:40px; --sp-7:64px;
  --r-1:6px; --r-2:8px; --r-pill:999px;
  --sh-0:none; --sh-1:0 1px 2px rgba(16,24,40,.06); --sh-2:0 8px 24px rgba(16,24,40,.12);
  /* 度量：内容页 800 / 首页 1140（≥1560 放宽 1400） */
  --w-read:800px; --w-wide:1140px;
  /* 行高只三档 */
  --lh-body:1.9; --lh-orig:2.0; --lh-title:1.45;
  /* 吸顶与锚点（裁定 4） */
  --h-head:44px; --h-gap:12px;
  --chapbar-h:0px;                       /* site.js 实测写入，勿删 */
  --safe-b:env(safe-area-inset-bottom,0px);
  /* 横滑容器滚动阴影：只需覆盖 --fade / --shade 两个变量 */
  --fade:#fff; --shade:rgba(22,32,46,.16);
  /* 锚点命中的静态高亮底（reduced-motion 下替代 flash 动画） */
  --c-target:#fdf3d7;
}

/* ---- 暗色（README：先 dark，再 sepia，最后 sepia.dark） ---- */
html.dark{
  --c-bg:#0f1621; --c-surface:#18202c; --c-inset:#141c27; --c-hd:#202a38;
  --c-line:#2a3648; --c-line-strong:#3a4a63; --c-ctl:#61789c;
  --c-focus:#8fc1ff; --c-focus-onbrand:#ffd66b;
  --c-ink:#eef4fb; --c-text:#d9e2ee; --c-sub:#a3b0c2; --c-muted:#93a3bd;
  --c-brand:#a8322a; --c-brand-deep:#8a2a22; --c-brand-wash:#3a1c1a;
  --c-brand-line:#5e3330; --c-brand-fg:#f0b3ac; --c-hd-fill:#6b1a16;
  --c-blue:#8fc1ff; --c-blue-hover:#b6d7ff; --c-blue-wash:#1d3252; --c-blue-line:#2c3950;
  --c-ok:#5fd3b4; --c-ok-wash:#12332c;
  --c-gov:#e0b466; --c-gov-wash:#2b2314; --c-gov-line:#57431c;
  --dot-tw:#94a3b8; --dot-zz:#f0a848; --dot-lj:#4fc4ac; --dot-ct:#c4a3fd;
  --dot-rl:#7fa8f0; --dot-bt:#f87190; --dot-case:#e0b466;
  --fade:#1a2332; --shade:rgba(0,0,0,.5); --c-target:#3a2f14;
}
html.sepia{
  --c-bg:#f2e9d8; --c-surface:#fbf4e4; --c-inset:#f7efdd; --c-hd:#f5ecd9;
  --c-line:#ddd0b8; --c-line-strong:#c9b48a; --c-ctl:#96805a;
  --c-focus:#3d6280; --c-focus-onbrand:#ffd66b;
  --c-ink:#2b2417; --c-text:#332b1f; --c-sub:#6d6152; --c-muted:#746442;
  --c-brand:#8f1f1a; --c-brand-deep:#7a1815; --c-brand-wash:#f7e4d4;
  --c-brand-line:#d3a98e; --c-brand-fg:#8f1f1a; --c-hd-fill:#8a2b21;
  --c-blue:#3d6280; --c-blue-hover:#2f4f68; --c-blue-wash:#f2e8d2; --c-blue-line:#d8c9a8;
  --c-ok:#4f7a34; --c-ok-wash:#e8f0e4;
  --c-gov:#8a5a2b; --c-gov-wash:#f7edd2; --c-gov-line:#dcc491;
  --dot-tw:#7f7361; --dot-zz:#a05a10; --dot-lj:#4f7a34; --dot-ct:#7b4bb5;
  --dot-rl:#3d6280; --dot-bt:#a8324f; --dot-case:#8a6a20;
  --fade:#fbf6ea; --shade:rgba(90,70,35,.18); --c-target:#f6e8c4;
}
html.sepia.dark{
  --c-bg:#1c1811; --c-surface:#262019; --c-inset:#221d15; --c-hd:#2f281c;
  --c-line:#3a3225; --c-line-strong:#4c4433; --c-ctl:#82745a;
  --c-focus:#8fc1ff; --c-focus-onbrand:#ffd66b;
  --c-ink:#f2e8d2; --c-text:#e6d9bd; --c-sub:#b5a684; --c-muted:#a2937a;
  --c-brand:#a8322a; --c-brand-deep:#8a2a22; --c-brand-wash:#33201c;
  --c-brand-line:#553028; --c-brand-fg:#f0b3ac; --c-hd-fill:#5e1a15;
  --c-blue:#8fb4d8; --c-blue-hover:#a9cae8; --c-blue-wash:#2b2418; --c-blue-line:#3a3225;
  --c-ok:#8fbf6a; --c-ok-wash:#1c2b1c;
  --c-gov:#e0b466; --c-gov-wash:#2a2318; --c-gov-line:#4a3a1c;
  --dot-tw:#a99b83; --dot-zz:#e0a94e; --dot-lj:#8fbf6a; --dot-ct:#bda0e8;
  --dot-rl:#82a8d0; --dot-bt:#e08096; --dot-case:#d8b878;
  --fade:#1c1811; --shade:rgba(0,0,0,.55); --c-target:#3a2f14;
}

/* 字号档位（site.js 写 html.fs-0/2/3；这里只补原文衬线一路，正文沿用 --fs-body） */
html.fs-0{--fs-orig:14.5px;}
html.fs-2{--fs-orig:17.5px;}
html.fs-3{--fs-orig:19px;}

/* 页面本地短变量对齐到令牌：各页内联 `:root{--bg/--card/--ink/--sub/--line/--pri}`
   是 214 页里最容易漂移的一层（搜索页的 --pri 就是退役电光蓝）。
   这里把短名重指到 --c-*，四皮肤自动跟随；各页自己的 `html.dark body{--bg:…}`
   仍可覆盖（0,2,1 ＞ :root 的 0,1,0）。 */
:root{
  --bg:var(--c-bg); --card:var(--c-surface); --ink:var(--c-ink);
  --sub:var(--c-sub); --line:var(--c-line); --pri:var(--c-blue);
  --accent:var(--c-blue-wash);
}

/* 首页 / 速查 / 搜索 / 工具页**没有吸顶条与条头**，56px 的滚动内边距是为
   「.chapbar + .dx-hd」预留的；这些页保留 12px 视觉呼吸即可（否则底栏「筛选」
   键 scrollIntoView 时几乎不动，实测只滚 11px）。:has 不受支持时该条被忽略，
   回落到上方公式（无功能损失）。 */
html:has(body.idx-page),
html:has(body.search-page),
html:has(.docx-wrap){scroll-padding-top:var(--h-gap);}

/* ==========================================================================
   §2  L2 基础层（html body → 0,1,2，压过页内联 .x 的 0,1,0）
   ========================================================================== */
html{
  /* D1 单一真源：覆盖 site.css:1410 的 18px 与 :308 的旧算式 —— 见 §13-D1 */
  scroll-padding-top:calc(var(--chapbar-h,0px) + var(--h-head) + var(--h-gap));
  -webkit-text-size-adjust:100%;
}
html body{
  font-family:var(--ff-sans);
  background:var(--c-bg);
  color:var(--c-text);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-variant-numeric:tabular-nums;
  margin:0;
}
/* 47 页 body 底透明 / 老页 font-family 回退 Times New Roman —— 由上面一条统一收口。
   选中态：电光蓝退役，改用品牌红淡底 */
::selection{background:rgba(143,31,26,.14);}

/* 数字统一等宽，避免条号/日期抖动 */
.dx-no,.orig-hd,.docno,.idx-count,.cn-no,.meta b,.hd-stats b{font-variant-numeric:tabular-nums;}

/* 容器度量：内容页 800（含左右 20px），首页 1140，≥1560 放宽 1400 —— 见 §9 断点。
   max-width / padding-* 必须 L3：页内联 `.wrap,.container{max-width:100%!important;
   padding-left/right:14px!important}`（577 处）已把这三项占满。 */
html body .wrap,
html body .container,
html body .wrap2,
html body .s-head-in,
html body .docx-wrap{
  box-sizing:border-box;
  max-width:var(--w-read) !important;
  margin-left:auto; margin-right:auto;
  padding-left:20px !important; padding-right:20px !important;
}
html body header .wrap,
html body header.top .inner,
html body header .inner{max-width:var(--w-read) !important;}
/* 搜索页 .wrap 被 site.css `body.search-page .wrap{max-width:900px!important}`(0,2,1) 占住 */
html body.search-page .wrap{max-width:var(--w-read) !important;}

/* 页头之外的独立整宽块（标签面包屑的告警条是 body 直接子元素） */
html body .law-alert{box-sizing:border-box;max-width:var(--w-read);margin-left:auto;margin-right:auto;}
/* 原文页 footer 是 body 直接子元素（在 .container 之外），需与正文同列 */
html body > footer{box-sizing:border-box;max-width:var(--w-read);margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px;}

/* ==========================================================================
   §3  L2 页头：扁平红条（去渐变 / 去高光 / 去金边 / 圆角 0）
   --------------------------------------------------------------------------
   四皮肤同一声明：只靠 --c-hd-fill 区分。写 4 条选择器是为了同时压过
   site.css 的 `html body header:not(.s-head)`(0,1,3)、`html.dark header.top`(0,2,1)、
   `html.sepia header.top`(0,2,1)、`html.sepia.dark header.top`(0,3,1) 四组 !important。
   ========================================================================== */
html body header:not(.s-head),
html.dark body header:not(.s-head),
html.sepia:not(.dark) body header:not(.s-head),
html.sepia.dark body header:not(.s-head){
  background:var(--c-hd-fill) !important;
  border-bottom:1px solid rgba(0,0,0,.22) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:18px 22px 16px !important;          /* 内联 header{padding:18px 12px!important} 需 L3 */
  color:#fff;
  margin-bottom:0;
}
/* 金色收边伪元素退役 */
html body header:not(.s-head)::after,
html.dark body header:not(.s-head)::after,
html.sepia body header:not(.s-head)::after{content:none !important;display:none !important;}

html body header:not(.s-head) h1,
html.sepia:not(.dark) body header:not(.s-head) h1,
html.sepia.dark body header:not(.s-head) h1{
  color:#fff !important;
  font-size:var(--fs-h1) !important;           /* 内联 h1{font-size:20px!important} 需 L3 */
  line-height:1.35 !important;
  font-weight:700;
  letter-spacing:.3px;
  margin:0 0 6px;
}
/* 页头内的次要文字：四皮肤一律白字（site.css 的皮肤专项把 h1/.meta/.docno/.eff
   写成深色，压在新红底上只有 1.54:1，必须四态各接管一次） */
html body header:not(.s-head) .docno,
html.dark body header:not(.s-head) .docno,
html.sepia:not(.dark) body header:not(.s-head) .docno,
html.sepia.dark body header:not(.s-head) .docno,
html body header:not(.s-head) .eff,
html.dark body header:not(.s-head) .eff,
html.sepia:not(.dark) body header:not(.s-head) .eff,
html.sepia.dark body header:not(.s-head) .eff,
html body header:not(.s-head) .meta,
html.dark body header:not(.s-head) .meta,
html.sepia:not(.dark) body header:not(.s-head) .meta,
html.sepia.dark body header:not(.s-head) .meta{
  color:rgba(255,255,255,.82) !important;
  opacity:1;
}
html body header:not(.s-head) .docno{font-size:12px;margin-top:2px;letter-spacing:.3px;}
html body header:not(.s-head) .eff{font-size:12px;}
html body header:not(.s-head) .meta{gap:6px;margin-top:6px;font-size:12px;}
html body header:not(.s-head) .pill,
html.sepia:not(.dark) body header:not(.s-head) .pill{
  background:rgba(255,255,255,.14) !important;  /* sepia 专项 rgba(255,255,255,.55) 需 L3 */
  border:1px solid rgba(255,255,255,.22) !important;
  color:#fff !important;
  border-radius:var(--r-pill);
  padding:3px 10px;
  font-size:11.5px;
}
html body header:not(.s-head) .ver-link a,
html.sepia:not(.dark) body header:not(.s-head) .ver-link a,
html.sepia.dark body header:not(.s-head) .ver-link a{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.1);}
html body header:not(.s-head) .ver-link b,
html.sepia:not(.dark) body header:not(.s-head) .ver-link b,
html.sepia.dark body header:not(.s-head) .ver-link b{color:rgba(255,255,255,.8);}
html body header:not(.s-head) .tag-crumbs span,
html.sepia:not(.dark) body header:not(.s-head) .tag-crumbs span,
html.sepia.dark body header:not(.s-head) .tag-crumbs span{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.22);color:#fff;}
html body header:not(.s-head) .tag-crumbs span.tc-pri,
html.sepia:not(.dark) body header:not(.s-head) .tag-crumbs span.tc-pri{background:rgba(255,214,107,.2);border-color:rgba(255,214,107,.45);color:#ffd66b;}
html body header:not(.s-head) a{color:#fff;}
html body header:not(.s-head) .hd-stats b{font-size:23px;font-weight:700;letter-spacing:.6px;color:#fff;}
html body header:not(.s-head) .hd-stats i{font-size:11px;letter-spacing:1.6px;opacity:.78;color:#fff;}
html body header:not(.s-head) .law-alert{margin-top:10px;}

/* 搜索页页头：同一条红，但**绝不允许 sticky**（历史故障根因） */
html body header.s-head{
  background:var(--c-hd-fill);
  color:#fff;
  border-bottom:1px solid rgba(0,0,0,.22);
  box-shadow:none;
  position:relative;
}
html body header.s-head h1{color:#fff;font-size:17px;font-weight:600;}

/* ==========================================================================
   §4  L2 条文卡（dx-*）—— 白面 + 1px 线 + 8px 圆角 + 无阴影
   ========================================================================== */
html body .dx-art{
  background:var(--c-surface);
  border:1px solid var(--c-line);
  border-radius:var(--r-2);
  box-shadow:none;
  margin:12px 0;
}
/* 条头：底 --c-hd / 圆角 7 7 0 0 / 高 44（D1 已强制 min-height） */
html body .dx-hd{
  background:var(--c-hd);
  border-bottom:1px solid var(--c-line);
  border-radius:7px 7px 0 0;
  padding:0 16px;                              /* 纵向 0：高度由 min-height 44/60 精确掌控（D1） */
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  box-shadow:none;
  position:sticky; top:var(--chapbar-h,0px); z-index:40;
}
html body .dx-no{font-size:15.5px;font-weight:700;color:var(--c-blue);line-height:1.4;}
html body .dx-ttl{font-size:13px;color:var(--c-sub);font-weight:400;}
html body .dx-bd{padding:4px 16px 14px;}
html body .dx-lab{
  display:inline-block;
  font-size:12px; font-weight:600; line-height:1.5; letter-spacing:.3px;
  color:var(--c-blue);
  background:var(--c-blue-wash);
  border-radius:var(--r-1);
  padding:2px 8px;
  margin:0 8px 0 0;
  white-space:nowrap;
  vertical-align:middle;
}
html body .dx-lab::before{
  content:""; display:inline-block; width:6px; height:6px; border-radius:50%;
  margin-right:6px; vertical-align:1.5px; background:var(--dot-tw);
}
/* 7 色点：令牌四态自解，无需逐皮肤重写（site.css J4 的 6 组已被下面的 specificity 压过） */
html body .dx-blk[data-b="tw"]>.dx-lab::before{background:var(--dot-tw);}
html body .dx-blk[data-b="zz"]>.dx-lab::before{background:var(--dot-zz);}
html body .dx-blk[data-b="lj"]>.dx-lab::before{background:var(--dot-lj);}
html body .dx-blk[data-b="ct"]>.dx-lab::before{background:var(--dot-ct);}
html body .dx-blk[data-b="rl"]>.dx-lab::before{background:var(--dot-rl);}
html body .dx-blk[data-b="bt"]>.dx-lab::before{background:var(--dot-bt);}
html body .dx-blk[data-b="case"]>.dx-lab::before{background:var(--dot-case);}
html body .dx-blk[data-b="pt"]>.dx-lab::before{background:var(--dot-tw);}
html body .dx-blk[data-b]>.dx-lab{background:var(--c-blue-wash) !important;color:var(--c-blue) !important;}

html body .dx-txt{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--c-text);letter-spacing:0;}
html body .dx-txt p{margin:var(--sp-p) 0;}
html body .dx-txt p:first-child{margin-top:0;}
html body .dx-txt p:last-child{margin-bottom:0;}

/* 章标题（dx 页是 h3.chap，多编页有 .part-hd；og 页是 h2.orig-chap）
   —— 内联 h2,h2.chap{font-size:15px!important}（84 页）/ h3,h3.chap{15px!important}（404 页）需 L3 */
html body h2.chap,html body h3.chap,html body h2.orig-chap,html body h3.dx-chap,html body h2.dx-chap{
  font-size:var(--fs-h2) !important;
  line-height:1.5 !important;
  font-weight:700;
  letter-spacing:.2px;
  color:var(--c-ink);
  border-left:3px solid var(--c-brand);
  padding-left:11px;
  background:none;
  border-radius:0;
  margin:40px 0 10px;
}
/* 编标题：方左圆右（“一条线”语法），底色 --c-hd，左 3px 红条 */
html body .part-hd{
  font-size:var(--fs-h3);
  line-height:1.55;
  font-weight:700;
  letter-spacing:.2px;
  color:var(--c-ink);
  background:var(--c-hd);
  border:0;
  border-left:3px solid var(--c-brand);
  border-radius:0 var(--r-2) var(--r-2) 0;
  padding:10px 14px;
  margin:24px 0 10px;
}

/* ==========================================================================
   §5  L2 原文卡（orig-*）—— 原文=衬线，解读=黑体（双重编码）
   ========================================================================== */
html body .orig-art{
  background:var(--c-surface);
  border:1px solid var(--c-line);
  border-radius:var(--r-2);
  box-shadow:none;
  margin:10px 0;
}
html body .orig-hd{
  background:var(--c-hd);
  border-bottom:1px solid var(--c-line);
  border-radius:7px 7px 0 0;
  padding:0 16px;                              /* 同上：高度由 min-height 掌控 */
  font-size:15px; font-weight:700; letter-spacing:.2px;
  color:var(--c-ink);                          /* 不可跳转 → 不用链接蓝 */
  position:sticky; top:var(--chapbar-h,0px); z-index:40;
  box-shadow:none;
}
html body .orig-hd::before{
  content:""; display:inline-block; width:3px; height:14px;
  background:var(--c-brand); margin-right:10px; vertical-align:-2px;
}
html body .orig-body{
  font-family:var(--ff-serif);
  font-size:var(--fs-orig);
  line-height:var(--lh-orig);
  letter-spacing:.1px;
  color:var(--c-text);
  padding:10px 18px 16px;
}
html body .orig-body p{margin:var(--sp-p) 0;}
html body .orig-jump{margin:0 16px 12px;}

/* 解读页的「条文原文」块同样走衬线（成套写，拆开会发虚） */
html body .dx-blk[data-b="tw"]>.dx-txt{
  font-family:var(--ff-serif);
  font-size:var(--fs-orig);
  line-height:var(--lh-orig);
  letter-spacing:.1px;
}

/* ==========================================================================
   §6  L2 首页卡片 / 筛选 / 按钮
   ========================================================================== */
html body .card{
  background:var(--c-surface);
  border:1px solid var(--c-line);
  border-radius:var(--r-2);
  box-shadow:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
html body .card:hover{transform:translateY(-2px);box-shadow:var(--sh-1);border-color:var(--c-line-strong);}
html body .card-h a{font-size:var(--fs-card);line-height:1.5;font-weight:600;letter-spacing:.1px;color:var(--c-ink);}
/* 卡片文号：site.css v6.2 把 `body.idx-page .card .card-h .docno` 写死成 #6b7787
   （护眼底上仅 4.26:1）→ 用令牌 + L3 接管 */
html body .card .docno{display:block;font-size:var(--fs-meta);color:var(--c-muted) !important;font-weight:400;margin-top:3px;}
html body .card .meta{font-size:12px;color:var(--c-sub);line-height:1.7;}
html body .card .desc{
  font-size:13px;color:var(--c-sub);line-height:1.75;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
html body .card .st-cur{font-size:11px;font-weight:600;color:var(--c-ok);background:var(--c-ok-wash);border-radius:5px;padding:0 6px;}
html body .pri-badge{font-size:11px;font-weight:700;color:var(--c-gov);background:var(--c-gov-wash);border:1px solid var(--c-gov-line);border-radius:var(--r-pill);padding:2px 9px;}
html body .card-actions{gap:6px;}
html body .card-actions>.btn{flex:1 1 0;min-width:0;justify-content:center;}
html body .grid{grid-template-columns:repeat(auto-fill,minmax(0,1fr));}
html body .grid>*{min-width:0;}
html body .group-h{
  font-size:16px;font-weight:700;color:var(--c-ink);
  border-left:3px solid var(--c-brand);padding-left:10px;
  background:none;margin:16px 0 2px;
}
html body .group-h small{font-size:11.5px;font-weight:400;color:var(--c-muted);}

/* 筛选胶囊：未选 = 白面 + --c-ctl 边（1.4.11 需 3:1 边界）；选中 = 浅红底 + 红字（四皮肤同一语法） */
html body .chip{
  box-sizing:border-box;
  min-height:36px;
  padding:0 13px;
  border:1px solid var(--c-ctl);
  border-radius:var(--r-pill);
  background:var(--c-inset);
  color:var(--c-sub);
  font-size:12.5px;
  font-weight:400;
  line-height:1.4;
  cursor:pointer;
  user-select:none;
}
html body .chip.on{
  background:var(--c-brand-wash) !important;
  border-color:var(--c-brand-line) !important;
  color:var(--c-brand-fg) !important;
  font-weight:700 !important;
  box-shadow:none !important;
}

/* 按钮三档：主 = 红实心白字 / 次 = 白面描边 / 文字 = 官方金 */
html body .btn{
  box-sizing:border-box;
  min-height:36px;
  padding:0 14px;
  border-radius:var(--r-1);
  border:1px solid var(--c-ctl);
  background:var(--c-surface);
  color:var(--c-text);
  font-size:13px;font-weight:600;line-height:1;
  display:inline-flex;align-items:center;justify-content:center;
  text-decoration:none;
}
html body .btn.orig{background:var(--c-brand) !important;border-color:var(--c-brand) !important;color:#fff !important;}
html body .btn.orig:hover{background:var(--c-brand-deep) !important;}
html body .btn.dx{background:var(--c-surface);border-color:var(--c-ctl);color:var(--c-text);}
html body .btn.gov{background:transparent;border-color:transparent;color:var(--c-gov);font-weight:500;}
html body .btn.gov:hover{background:var(--c-gov-wash);border-color:var(--c-gov-line);}
html body .fs-go,html body .s-go{
  background:var(--c-brand) !important;color:#fff !important;border:1px solid var(--c-brand) !important;
  border-radius:var(--r-1);font-size:13px;font-weight:600;
}
html body .fs-go:hover,html body .s-go:hover{background:var(--c-brand-deep) !important;}

/* 「复制引用」：蓝字 + 淡蓝底（不做实心，避免与主操作抢） */
html body .cite-btn{
  color:var(--c-blue);background:var(--c-blue-wash);
  border:1px solid var(--c-blue-line);border-radius:var(--r-pill);
  font-size:12.5px;padding:3px 11px;
}
html body .cite-btn:hover{background:rgba(26,79,139,.12);}
html body .cite-btn.ok{color:var(--c-ok);background:var(--c-ok-wash);border-color:rgba(23,114,69,.45);}

/* ==========================================================================
   §7  L2 输入控件：边 --c-ctl（对白 3.39:1）、圆角 8、高 42（手机 44+16px）
   ========================================================================== */
html body input:not([type=checkbox]):not([type=radio]),
html body select:not([multiple]),
html body textarea:not([readonly]){
  box-sizing:border-box;
  font-family:inherit;
  font-size:14px;
  color:var(--c-text);
  background:var(--c-surface);
  border:1px solid var(--c-ctl) !important;   /* site.css 多处 !important 边界，需 L3 */
  border-radius:var(--r-2);
  min-height:42px;
  padding:0 12px;
}
html body input::placeholder,html body textarea::placeholder{color:var(--c-muted);}
html body input:not([type=checkbox]):not([type=radio]):focus,
html body select:not([multiple]):focus,
html body textarea:not([readonly]):focus{
  border-color:var(--c-blue);
  box-shadow:0 0 0 3px rgba(26,79,139,.16);
  outline:none;
}
/* 复合框内的输入框：外框由容器承担，故尺寸/边框必须与框架一体
   （通用规则已占住 min-height/font-size → 这几条走 L3，否则会把搜索栏撑成双框） */
html body .fs-box input[type=search]{
  min-height:0 !important;height:36px !important;font-size:14px !important;
  border:0 !important;border-radius:0;background:transparent;
  padding:0 !important;box-shadow:none !important;
}
html body .sbox input{
  min-height:44px !important;height:44px !important;font-size:16px !important;
  border:0 !important;border-radius:0;background:transparent;
  padding:0 4px !important;box-shadow:none !important;
}
html body .idx-search input{
  min-height:0 !important;font-size:14px !important;
  border:0 !important;background:transparent;border-radius:0;padding:0 12px 0 0;
}
html body .idx-search{background:var(--c-inset);border:1px solid var(--c-line);border-radius:var(--r-2);min-height:42px;}
html body .idx-search .f-lab{background:var(--c-inset);border:1px solid var(--c-line);border-right:0;border-radius:var(--r-2) 0 0 var(--r-2);color:var(--c-sub);font-size:12.5px;}
/* 搜索页「检索范围」行：compact 控件，单行横滑（不换行 → 页头不被撑高） */
html body .scope-row{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;}
html body .scope-row::-webkit-scrollbar{height:0;display:none;}
html body .scope-row>*{flex:0 0 auto;}
html body .sc-sel select{min-height:34px !important;font-size:16px !important;padding:0 8px !important;border-radius:var(--r-1);}
html body .sc-chk{min-height:34px;}

/* ==========================================================================
   §8  L2 表格 / 附录区 / 目录 / 关联 / 页脚 / 底栏
   ========================================================================== */
html body .tbl-scroll{max-width:100%;border:1px solid var(--c-line);border-radius:var(--r-2);overflow-x:auto;-webkit-overflow-scrolling:touch;}
html body .tbl-scroll>table{min-width:100%;width:max-content;}
html body table.cmp{font-size:12.5px;border-collapse:collapse;}
html body table.cmp th{
  background:var(--c-hd);color:var(--c-ink);font-weight:600;
  padding:7px 9px;border:1px solid var(--c-line);text-align:left;white-space:nowrap;
}
html body table.cmp td{padding:7px 9px;vertical-align:top;line-height:1.7;border:1px solid var(--c-line);min-width:120px;}

/* 导语 / 沿革：降权为附录（--c-inset 底 + 1px 左边线），不删内容 */
html body .note{
  max-width:var(--w-read);
  font-size:13.5px;line-height:2;color:var(--c-sub);
  background:var(--c-inset);
  border:1px solid var(--c-line);border-left:3px solid var(--c-gov);
  border-radius:0 var(--r-2) var(--r-2) 0;
  padding:10px 12px;
  box-shadow:none;
}
html body .timeline{
  font-size:13px;line-height:1.95;color:var(--c-sub);
  background:var(--c-inset);border:1px solid var(--c-line);border-radius:var(--r-2);
  padding:10px 12px;
}
html body .timeline b{color:var(--c-ink);}
html body .legend{font-size:11.5px;color:var(--c-muted);gap:4px 10px;}
html body .legend i{width:6px;height:6px;border-radius:50%;margin-right:5px;}
/* 图例 7+1 色与块点一一对应（顺序固定：原文/主旨/理解/区别/关联/争议/案例/配套） */
html body .legend span:nth-child(1) i{background:var(--dot-tw) !important;}
html body .legend span:nth-child(2) i{background:var(--dot-zz) !important;}
html body .legend span:nth-child(3) i{background:var(--dot-lj) !important;}
html body .legend span:nth-child(4) i{background:var(--dot-bt) !important;}
html body .legend span:nth-child(5) i{background:var(--dot-rl) !important;}
html body .legend span:nth-child(6) i{background:var(--dot-ct) !important;}
html body .legend span:nth-child(7) i{background:var(--dot-case) !important;}
html body .legend span:nth-child(8) i{background:var(--dot-tw) !important;}

/* 章节吸顶条：底 --c-bg + 1px + 8px 圆角；高 52 由 §13-D1 强制 */
html body .chapbar{
  background:var(--c-bg);
  border:1px solid var(--c-line);
  border-radius:var(--r-2);
  padding:0 12px;
  margin:14px 0;
  position:sticky;top:0;z-index:60;
}
html body .chapbar a{
  min-height:34px;padding:0 13px;
  display:inline-flex;align-items:center;
  font-size:13px;color:var(--c-sub);
  background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-pill);
  text-decoration:none;white-space:nowrap;
}
html body .chapbar a:hover{border-color:var(--c-blue);color:var(--c-blue);}
html body .chapbar .cur{margin-left:auto;font-size:11.5px;color:var(--c-muted);}
/* 无章节链接的空条降噪：site.js 只认 `h2.chap[id]/h2.orig-chap[id]`，
   而 dx 页的章标题是 h3.chap → 这些页的章节条里没有 a，只剩一个空的 .cur。
   **高度必须保留 52px**（D1 的 scroll-padding 算式按它算），只去掉「边框/底色」的盒子感。 */
html body .chapbar:not(:has(a)){
  background:transparent;
  border-color:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
/* 条号（本身是 .rel-link，带 tooltip）的下划线离字形再远一点，避免与汉字底部粘连 */
html body .dx-no a.rel-link,html body .orig-hd a.rel-link{text-underline-offset:4px;text-decoration-thickness:1px;}

/* 顶部导航（详情页 3 键） */
html body .topnav a,html body .topbar a{
  box-sizing:border-box;
  min-height:36px;padding:0 13px;
  display:inline-flex;align-items:center;
  font-size:13px;color:var(--c-blue);
  background:var(--c-surface);border:1px solid var(--c-ctl);border-radius:var(--r-1);
  text-decoration:none;
}
html body .topnav a:hover,html body .topbar a:hover{border-color:var(--c-blue);color:var(--c-blue-hover);}
html body .topnav a.gov-mini,html body .topbar a.gov-mini{
  color:var(--c-gov) !important;background:var(--c-gov-wash) !important;border-color:var(--c-gov-line) !important;
}
html body .quicknav{margin:8px 0 0;}
html body .quicknav label{font-size:12.5px;color:var(--c-sub);}
html body .view-tools button{
  min-height:36px;padding:0 13px;font-size:12.5px;color:var(--c-sub);
  background:var(--c-surface);border:1px solid var(--c-ctl);border-radius:var(--r-1);
}
html body .view-tools button.on{background:var(--c-brand-wash) !important;border-color:var(--c-brand-line) !important;color:var(--c-brand-fg) !important;}

/* 关联条款 / 浮层 */
html body .rel-link{color:var(--c-blue);text-decoration:underline dotted;text-underline-offset:3px;font-weight:700;}
html body .rel-badge{font-size:11px;font-weight:600;color:var(--c-blue);background:var(--c-blue-wash);border:1px solid var(--c-blue-line);border-radius:var(--r-pill);}
html body .rel-pop{background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--sh-2);border-radius:var(--r-2);}

/* 页脚：12/1.9 --c-muted + 上 1px + margin-top 40 + padding-top 14 */
html body footer{
  font-size:12px;line-height:1.9;color:var(--c-muted);
  border-top:1px solid var(--c-line);
  background:none;box-shadow:none;
  margin-top:40px;padding-top:14px;
}
html body footer a{color:var(--c-sub);}

/* 底栏：白面 + 上 1px，栏高 56 + safe，单项 48 */
html body .m-bar{
  background:var(--c-surface);
  border-top:1px solid var(--c-line);
  box-shadow:none;
  padding:5px 8px calc(5px + var(--safe-b));
}
html body .m-bar a{
  min-height:48px;font-size:11.5px;color:var(--c-sub);
  border-radius:var(--r-1);
}
html body .m-bar a b{font-size:18px;line-height:1.15;}
html body .m-bar a[aria-current],html body .m-bar a.on{
  color:var(--c-brand-fg);box-shadow:inset 0 2px 0 var(--c-brand);
}

/* 搜索页状态区（单一容器，三态靠文案自解释） */
html body .empty{
  padding:56px 16px;color:var(--c-sub);font-size:14px;line-height:1.9;text-align:center;
  border-top:1px dashed var(--c-line);margin-top:16px;
}
html body .item{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-2);}
html body .item .no{color:var(--c-blue);font-size:15px;font-weight:700;}
html body .item .prev{color:var(--c-sub);font-size:13px;}
html body .item .law{color:var(--c-blue);background:var(--c-blue-wash);border-radius:var(--r-pill);font-size:11.5px;font-weight:600;}

/* 阅读进度条：电光蓝退役 */
html body #upg-progress{background:linear-gradient(90deg,var(--c-brand),var(--c-brand-deep));}

/* ---- 目录抽屉 + 三处实心蓝处置（视觉规范 §5.1，验收会当场挂的位置） ---- */
html body #toc-panel{background:var(--c-surface);border-left:1px solid var(--c-line);box-shadow:var(--sh-2);}
html body .toc-hd{border-bottom:1px solid var(--c-line);padding:12px 14px;}
html body .toc-hd b{font-size:14px;color:var(--c-ink);}
html body .toc-hd input{font-size:14px;min-height:40px;}
html body .toc-close{color:var(--c-sub);min-width:44px;min-height:44px;}
html body .toc-sec{font-size:12.5px;color:var(--c-muted);}
html body .toc-links a{
  min-height:36px;font-size:13px;color:var(--c-sub);
  background:var(--c-inset);border:1px solid var(--c-line);border-radius:var(--r-1);
  justify-content:center;
}
html body .toc-links a:hover{border-color:var(--c-blue);color:var(--c-blue);}
/* ① .chapbar a.on（site.css:83 实心 #1a4f8b）→ 实心红 + 白字（8.83:1） */
html body .chapbar a.on{
  background:var(--c-brand) !important;border-color:var(--c-brand) !important;
  color:#fff !important;font-weight:600;
}
/* ② .toc-links a.on（361-364 实心蓝）→ 浅红底 + 左红条（抽屉是 15~80 行列表，
      实心红会出现几十个红块，推翻「一枚印」，故用浅底 + 左红条） */
html body .toc-links a.on,
html.dark body .toc-links a.on{
  background:var(--c-brand-wash) !important;
  border-color:var(--c-brand-line) !important;
  border-left:3px solid var(--c-brand) !important;
  color:var(--c-brand-fg) !important;
  font-weight:700;
}
/* ③ html.dark .toc-links a.on（site.css:513 的实心电光蓝）→ 已被 ② 接管 */
html body .toc-links a.on:hover{color:var(--c-brand-fg) !important;}

/* 退役电光蓝的另一批落点（site.css 内的电光蓝填充/描边） */
html body .chip:hover{border-color:var(--c-blue);color:var(--c-blue);background:var(--c-blue-wash);}
html body .idx-searchlink{color:var(--c-blue);border:1px solid var(--c-blue-line);background:var(--c-blue-wash);border-radius:var(--r-1);}
html body .idx-search:focus-within .f-lab{color:var(--c-blue);border-color:var(--c-blue);}
html body .idx-search input:focus{box-shadow:none;}
html body .idx-count{font-size:12.5px;color:var(--c-muted);}
html body .law-nav a:hover{border-color:var(--c-blue);}
html body .ver-link a:hover{border-color:var(--c-blue);}
html body .toc-tools button.on,html body .view-tools button.on{background:var(--c-brand-wash) !important;color:var(--c-brand-fg) !important;border-color:var(--c-brand-line) !important;}
html body .m-fold-bar,html body .bb-toggle,html body .m-sec-btn{
  color:var(--c-blue);background:var(--c-blue-wash);border:1px solid var(--c-blue-line);border-radius:var(--r-pill);
  font-size:12.5px;font-weight:500;
}
html body .m-fold-bar:hover,html body .bb-toggle:hover,html body .m-sec-btn:hover{background:rgba(26,79,139,.12);}

/* ==========================================================================
   §9  断点重写：只用 480 / 700 / 861 / 1200（+ 1560 容器放宽）
   ========================================================================== */
@media (min-width:861px){
  html body .wrap,html body .container,html body .wrap2,
  html body .s-head-in,html body .docx-wrap{
    max-width:var(--w-read) !important;
    padding-left:20px !important;padding-right:20px !important;
  }
  /* 首页卡片内距：内联 .card{padding:16px!important}（87 页）需 L3 */
  html body .card{padding:14px !important;}
  /* 首页容器 1140（site.css 在 1025/1200 两档把 .wrap 拉到 1180） */
  html body.idx-page .wrap{max-width:var(--w-wide) !important;}
}
@media (min-width:1200px){
  /* 内容页恒 800；首页 1140（覆盖 site.css 的 1180/1360/1140 三处 !important） */
  html body .wrap,html body .container,html body .wrap2,
  html body .s-head-in,html body .docx-wrap{max-width:var(--w-read) !important;}
  html body.search-page .wrap{max-width:var(--w-read) !important;}
  html body.idx-page .wrap{max-width:var(--w-wide) !important;}
}
@media (min-width:1560px){
  html body.idx-page .wrap{max-width:1400px !important;}
  html body.idx-page .grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (min-width:1200px) and (max-width:1559px){
  html body.idx-page .grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (min-width:700px) and (max-width:1199px){
  html body.idx-page .grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:699px){
  html body.idx-page .grid{grid-template-columns:minmax(0,1fr);gap:10px;}
  html body .grid{grid-template-columns:minmax(0,1fr);}
}

/* ---- ≤860：手机/平板竖屏（正文字号 16、页头 60、条头 60） ---- */
@media (max-width:860px){
  :root{--h-head:60px;--h-gap:8px;--fs-body:16px;--fs-orig:16px;}
  html body .wrap,html body .container,html body .wrap2,
  html body .s-head-in,html body .docx-wrap{padding-left:16px !important;padding-right:16px !important;}
  html body header:not(.s-head),
  html.dark body header:not(.s-head),
  html.sepia:not(.dark) body header:not(.s-head),
  html.sepia.dark body header:not(.s-head){padding:12px 13px 10px !important;}
  html body header:not(.s-head) h1,
  html.sepia:not(.dark) body header:not(.s-head) h1,
  html.sepia.dark body header:not(.s-head) h1{font-size:18px !important;line-height:1.35 !important;margin-bottom:3px;}
  html body header:not(.s-head) .docno{font-size:11.5px;margin-top:1px;}
  html body header:not(.s-head) .pill{font-size:11.5px;padding:2px 9px;}
  /* 页头副标题（非 docno/eff/meta 的说明行）在手机上隐藏，减首屏负担 */
  html body header:not(.s-head) p.sub,
  html body header:not(.s-head) .sub{display:none;}
  /* 顶部导航单行横滑，触控 44 */
  html body .topnav,html body .topbar{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;}
  html body .topnav a,html body .topbar a{flex:0 0 auto;min-height:44px;white-space:nowrap;}
  html body .toc-fab{display:none !important;}   /* D10：底栏有目录入口，功能不减 */
  html body h2.chap,html body h3.chap,html body h2.orig-chap,html body h3.dx-chap{font-size:17px !important;margin:28px 0 9px;}
  html body .part-hd{font-size:var(--fs-h4);}
  html body .dx-txt p,html body .orig-body p,html body .ap-bd p{margin:var(--sp-p) 0;}
  html body .dx-hd,html body .orig-hd{padding:0 12px;}
  html body .dx-bd{padding:4px 12px 12px;}
  html body .orig-body{padding:8px 14px 14px;}
  html body .note{font-size:13px;line-height:1.9;padding:10px 12px;}
  html body .timeline{font-size:12.5px;padding:10px 12px;}
  html body .legend{font-size:11.5px;}
  html body .chapbar a{min-height:44px;}          /* 触控：条内胶囊 44 */
  html body .chip{min-height:44px;}
  html body .btn{min-height:44px;}
  html body .cite-btn{min-height:44px;display:inline-flex;align-items:center;}
  html body .dx-jump,html body .orig-jump a{min-height:44px;display:inline-flex;align-items:center;}
  html body .m-bar a{min-height:48px;}
  html body{padding-bottom:calc(112px + var(--safe-b)) !important;}
  html body .idx-count{font-size:12.5px;}
  html body footer{font-size:12.5px;margin-top:26px;padding-bottom:calc(20px + var(--safe-b));}
}

/* ---- ≤700：大屏手机 → 小屏（横向留白 16，卡片 13） ---- */
@media (max-width:700px){
  html body .card{padding:13px !important;}
  html body .card-h a{font-size:15px;}
  html body .card .desc{font-size:12.5px;}
  html body .card .meta{font-size:11.5px;}
  html body .group-h{font-size:14.5px;}
  html body .dx-lab{font-size:11.5px;}
}

/* ---- ≤480：小屏手机（横向留白 12） ---- */
@media (max-width:480px){
  html body .wrap,html body .container,html body .wrap2,
  html body .s-head-in,html body .docx-wrap{padding-left:12px !important;padding-right:12px !important;}
  html body .card{padding:12px !important;}
  html body .dx-txt{font-size:var(--fs-body);}
  html body .btn{font-size:12px;}
}

/* ---- ≤360：7 项底栏特例（(320−16)/7 = 43.4 → 收紧到 4px 内距 + 10.5px 字） ---- */
@media (max-width:360px){
  html body .m-bar{padding-left:4px;padding-right:4px;}
  html body .m-bar a{font-size:10.5px;}
  html body .m-bar a b{font-size:15px;}
}

/* ==========================================================================
   §10 形态：`.dx-blk` 双形态（≥861 格栅 / ≤860 行内标签）
   ========================================================================== */
@media (min-width:861px){
  html body .dx-blk{
    display:grid;
    grid-template-columns:90px minmax(0,1fr);
    gap:0 12px;
    align-items:start;
    margin:0;
    padding:10px 0;
  }
  /* 标签列：视觉稿给 72px，实测「理解与适用」5 字在 72px 内必断行
     （5×11.5 + 6px 点 + 间距 + 内距 + 边框，再加 .bk-opt 的 ' ▾' 箭头 > 72）。
     列宽放到 90px、字号 11.5px、字距归零，5 字标签不断行；正文仍 658px ≈ 42 汉字/行。
     偏离 72px 的 12px 属必要修正，已在交付报告里登记。 */
  /* site.css `html body .dx-blk[data-b] > .dx-lab{padding:3px 10px 3px 9px}`(0,1,3)
     在 72~78px 的窄列里会把 5 字标签挤断 → 同特异性+更长选择器接管内距 */
  html body .dx-blk[data-b]>.dx-lab,
  html body .dx-lab{
    display:block;
    width:90px;
    box-sizing:border-box;
    text-align:left;
    background:var(--c-hd);
    border:1px solid var(--c-line);
    border-radius:var(--r-1);
    padding:3px 4px;
    margin:0;
    font-size:11.5px;
    line-height:1.6;
    letter-spacing:0;
    white-space:normal;
  }
  html body .dx-blk[data-b]>.dx-lab::before,
  html body .dx-lab::before{margin-right:3px;}
  html body .dx-txt{display:block;min-width:0;}
  html body .dx-blk + .dx-blk{border-top:0;}
}
@media (max-width:860px){
  html body .dx-blk{display:block;margin:0;padding:12px 0;}
  html body .dx-blk + .dx-blk{border-top:1px solid var(--c-line);}
  html body .dx-lab{
    display:inline-block;
    vertical-align:baseline;
    margin:0 8px 8px 0;
    padding:2px 8px;
    border-radius:var(--r-1);
    font-size:11.5px;
    line-height:1.55;
    white-space:nowrap;
  }
  html body .dx-txt{display:inline;min-width:0;}
  html body .dx-blk[data-b="tw"]>.dx-txt{font-size:var(--fs-orig);}
}
/* focus-bt 模式（site.js 加类）：桌面格栅里 .dx-txt 变 inline 会被 blockify，无需覆盖 */

/* ---- 横滑容器滚动阴影（纯 CSS，四层渐变；首尾不溢出时自动消失） ---- */
html body .idx-tools .chips,
html body .chapbar,
html body .cn-track,
html body .tbl-scroll,
html body header .meta,
html body header .ver-link,
html body .toc-links{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  background-image:
    linear-gradient(to right, var(--fade) 40%, transparent) left center / 40px 100% no-repeat local,
    linear-gradient(to left, var(--fade) 40%, transparent) right center / 40px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%, var(--shade), transparent) left center / 14px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%, var(--shade), transparent) right center / 14px 100% no-repeat scroll;
}
html body .chapbar{background-color:var(--c-bg);}
html body .idx-tools .chips,html body .cn-track,html body .toc-links{background-color:var(--c-surface);}
@media (max-width:860px){
  html body .idx-tools .chips::-webkit-scrollbar,
  html body .chapbar::-webkit-scrollbar,
  html body .cn-track::-webkit-scrollbar{height:0;display:none;}
}

/* ==========================================================================
   §11 交互四态与动效（全站只允许 3 类：hover 微移 / 折叠 / 按压）
   ========================================================================== */
/* 焦点环：0ms 即时出现（outline 不可过渡；box-shadow 环会被 content-visibility 裁切） */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,[role="button"]:focus-visible{
  outline:var(--c-focus-ring) solid var(--c-focus);
  outline-offset:var(--c-focus-off);
  border-radius:6px;
  box-shadow:none;
  transition:none;
}
/* site.css 里写死电光蓝的专项焦点环（特异性更高，需逐个接管颜色） */
html body .qv:focus-visible,html body .bb-toggle:focus-visible,
html body .m-sec-btn:focus-visible,html body .cite-btn:focus-visible,
html body .m-fold-bar:focus-visible,html body .s-go:focus-visible{
  outline:2px solid var(--c-focus);outline-offset:2px;
}
/* 深红面（页头 / 底栏 / 搜索页头）换 --c-focus-onbrand，否则环与底同族不可见 */
html body header:not(.s-head) a:focus-visible,html body header:not(.s-head) button:focus-visible,
html body header.s-head a:focus-visible,html body header.s-head button:focus-visible,
html body header.s-head input:focus-visible,
html body .m-bar a:focus-visible,html body .m-bar button:focus-visible,
html body .fs-go:focus-visible,html body .s-go:focus-visible{
  outline-color:var(--c-focus-onbrand);
}
/* 红实心面上补 1px 白描边，保证可见 */
html body .chip.on:focus-visible,html body .chapbar a.on:focus-visible,
html body .toc-links a.on:focus-visible,html body .btn.orig:focus-visible{
  outline-color:var(--c-focus-onbrand);box-shadow:0 0 0 1px #fff;
}
/* 搜索页输入框焦点环被 inline `outline:none!important` 抑制 → L3 恢复 */
html body .sbox input:focus-visible{outline:2px solid var(--c-focus-onbrand) !important;outline-offset:2px !important;}
/* hover 只在真鼠标设备生效 */
@media (hover:hover) and (pointer:fine){
  html body .card:hover{transform:translateY(-2px);}
  html body .btn:hover,html body .topnav a:hover,html body .topbar a:hover{transform:translateY(-1px);}
  html body .chip:hover{background:var(--c-blue-wash);border-color:var(--c-blue-line);color:var(--c-blue);}
}
/* 按压反馈统一：translateY(1px) + brightness(.97)，120ms */
html body .btn:active,html body .chip:active,html body .qv:active,
html body .cite-btn:active,html body .topnav a:active,html body .topbar a:active,
html body .m-fold-bar:active,html body .bb-toggle:active,html body .m-sec-btn:active,
html body .idx-searchlink:active,html body .fs-go:active,html body .s-go:active{
  transform:translateY(1px);
  filter:brightness(.97);
  transition-duration:120ms;
}
/* 折叠动效：只有目录抽屉做空间位移（220ms） */
#toc-panel{transition:transform 220ms cubic-bezier(.2,.7,.3,1),visibility 0s linear 220ms;}
#toc-panel.open{transition:transform 220ms cubic-bezier(.2,.7,.3,1),visibility 0s;}
.m-fold-bar::after,.bb-toggle::after,.m-sec-btn::after,.dx-lab::after{transition:transform 160ms ease;}
html body .m-bar a{transition:color .16s ease,box-shadow .16s ease;}

/* 减弱动效：全部压到 0.01ms，并把「跳到哪里」的反馈改成静态底色 */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important;
  }
  .dx-art:target>.dx-hd,.orig-art:target>.orig-hd,.upg-flash{
    animation:none !important;background:var(--c-target) !important;
  }
}

/* ==========================================================================
   §12 无障碍：高对比 / 强制颜色
   ========================================================================== */
@media (prefers-contrast:more){
  :root{--c-muted:#4a5563;--c-sub:#3c4653;--c-line:#b9c4d2;--c-ctl:#5a6a7e;}
  html body .card,html body .dx-art,html body .orig-art,html body .note,html body .timeline{box-shadow:none !important;}
  a:focus-visible,button:focus-visible,[role="button"]:focus-visible{outline-width:3px;}
  html body .dx-blk + .dx-blk{border-top:2px solid var(--c-line-strong);}
}
@media (forced-colors:active){
  html body .chip.on,html body .chapbar a.on,html body .toc-links a.on,
  html body .cite-btn.ok{border:1px solid ButtonText;}
  html body .dx-lab{forced-color-adjust:none;border:1px solid CanvasText;background:Canvas;color:CanvasText;}
}

/* ==========================================================================
   §13  六个已确证缺陷（体验规范 §8 / 裁定 4）—— 集中在本区块，保证最后生效
   ========================================================================== */

/* ---- D1 锚点被遮：site.css:1410 的 `html{scroll-padding-top:18px}` 覆盖了 :308 的算式，
           导致 50 个带章节条的页面跨页跳条时条号被遮 34px。
           修法：条头与章节条高度强制成常量，scroll-padding-top 单一真源（§2 已声明，
           此处再声明一次以确保顺序最后）。 ---- */
.chapbar{
  box-sizing:border-box;
  min-height:52px;
  padding-block:0;
  align-items:center;
}
.dx-hd,.orig-hd{
  box-sizing:border-box;
  min-height:var(--h-head);
  padding-block:0;
  align-items:center;
}
html{scroll-padding-top:calc(var(--chapbar-h,0px) + var(--h-head) + var(--h-gap));}
html body .dx-art,html body .orig-art{scroll-margin-top:0;}
/* content-visibility 会让跨页首次加载的锚点落在估算高度上 —— 目标卡强制渲染 */
.dx-art:target,.orig-art:target{content-visibility:visible;}

/* ---- D2 目录抽屉：关闭态 Tab 可进入不可见面板 → visibility:hidden，
           双过渡（开 0s 立即可见 / 关 220ms 后再隐藏）。 ---- */
#toc-panel{
  visibility:hidden;
  transition:transform 220ms cubic-bezier(.2,.7,.3,1),visibility 0s linear 220ms;
  max-height:min(70vh,70dvh);
}
#toc-panel.open{
  visibility:visible;
  transition:transform 220ms cubic-bezier(.2,.7,.3,1),visibility 0s;
}
@supports (height:100dvh){
  #toc-panel{max-height:min(70vh,70dvh);}
}
.toc-body{padding-bottom:calc(12px + var(--safe-b));}

/* ---- D3 FAB 同坐标：≤860 下 .to-top(right:10;bottom:72) 与 .pn-nav(right:8;bottom:72)
           完全重叠 → 拆成两格栈，均 44×44，且距底 ≥66（越过 iOS home indicator）。
           页内联 `.to-top{width/height/right/bottom!important}`（490 处）→ 必须 L3。 ---- */
@media (max-width:860px){
  html body a.to-top{
    right:10px !important;
    bottom:calc(66px + var(--safe-b)) !important;
    width:44px !important;height:44px !important;line-height:42px !important;
    font-size:17px !important;
  }
  html body .pn-nav{
    right:8px !important;
    bottom:calc(118px + var(--safe-b)) !important;
    flex-direction:row !important;gap:8px !important;
  }
  html body .pn-nav a{width:44px !important;height:44px !important;line-height:42px !important;}
  html body .pn-nav a.off{opacity:.45;color:var(--c-muted);cursor:not-allowed;}
  html body .dark-btn{
    left:10px !important;bottom:calc(66px + var(--safe-b)) !important;
    width:44px !important;height:44px !important;
  }
}

/* ---- D4 iOS 聚焦缩放：5 处输入控件 <16px → 手机端 input/select/textarea 统一 16px + 44 高。
           这些控件字号被页内联 / site.css 的 !important 占据，故用 L3。 ---- */
@media (max-width:860px){
  html body input:not([type=checkbox]):not([type=radio]),
  html body select:not([multiple]),
  html body textarea:not([readonly]){
    font-size:16px !important;
    min-height:44px;
    border-radius:var(--r-2);
    padding-block:0;
  }
  /* 复合容器内的输入框不叠双框，高度随容器 */
  html body .fs-box input[type=search]{min-height:40px !important;height:40px !important;font-size:16px !important;padding:0 !important;}
  html body .sbox input{min-height:44px !important;height:44px !important;font-size:16px !important;padding:0 4px !important;}
  html body .idx-search input{min-height:40px !important;font-size:16px !important;}
  html body .sc-sel select{min-height:40px !important;font-size:16px !important;}
  /* 首页「条线」下拉：site.css `body.idx-page .tag-tools select{font-size:12.5px!important}`
     （0,3,2）在手机端被压到 12.5px → 触发 iOS 聚焦缩放，D4 必须接管 */
  html body.idx-page .tag-tools select,
  html body.idx-page #fLine{font-size:16px !important;min-height:44px !important;}
  html body .fs-box .fs-go{min-height:44px;height:44px;font-size:14px;}
  /* .find-bar 在 390 下不换行（内部输入框可收缩） */
  html body .find-bar{flex-wrap:nowrap;min-width:0;}
  html body .idx-search{min-width:0;}
}

/* ---- D5 暗色元信息对比度：3.61 / 4.15 → 6.17 / 7.10（#93a3bd） ---- */
html.dark .meta,
html.dark body.idx-page .idx-count,
html.dark .card .meta,
html.dark .card .card-h .docno,
html.dark .card .docno,
html.dark footer,
html.dark .idx-count,
html.dark .legend,
html.dark .card .desc,
html.dark .tl-i,
html.dark .group-h small{color:#93a3bd !important;}
html.dark .pn-nav a.off{color:#93a3bd;}

/* ---- D6 表头吸顶压住章节条：top:0 → top:var(--chapbar-h)。 ---- */
html body table.cmp th{position:sticky;top:var(--chapbar-h,0px);z-index:1;}

/* ==========================================================================
   §14  打印：页头回退为白底黑字（本层把页头改成实心红 + !important，需在 print 复位）
   ========================================================================== */
@media print{
  html body header:not(.s-head),html body header.s-head{
    background:#fff !important;color:#000 !important;
    border-bottom:2px solid #333 !important;padding:8px 0 !important;
  }
  html body header:not(.s-head) h1,html body header.s-head h1{color:#000 !important;font-size:18px !important;}
  html body header:not(.s-head) .docno,html body header:not(.s-head) .eff,
  html body header:not(.s-head) .pill{color:#333 !important;background:none !important;border-color:#999 !important;}
  html body header:not(.s-head)::after{content:none !important;}
  html body .dx-art,html body .orig-art{box-shadow:none !important;border-color:#bbb !important;}
  html body a{color:#000 !important;}
  html body .chapbar,html body .pn-nav,html body .to-top,html body .dark-btn,
  html body .m-bar,html body .toc-fab,html body .home-fab,html body .swap-fab{display:none !important;}
}

/* ── D15 手机段（team-lead 接管补丁 2026-10-27）─────────────────
   前端只落了桌面一半；手机仍是 .sbox:focus-within 的 26% 白光晕，
   对深红页头实测 1.81:1（要求 ≥3:1）。
   桌面那条 input:focus-visible{outline:2px solid 金} 在手机上会画进
   白色药丸的 4px 内边距（金对白 1.39:1），故手机必须关掉 input 自身环、
   把环画在容器外沿。
   LOAD-BEARING：删除本段 → 手机搜索框焦点指示退回 1.81:1。
   ──────────────────────────────────────────────────────────────── */
@media (max-width:700px){
  html body .sbox input:focus-visible{outline:none !important;}
  html body .sbox:focus-within{
    box-shadow:0 0 0 3px var(--c-focus-onbrand), 0 3px 12px rgba(30,8,6,.20) !important;
  }
}
