/* ============================================================
   r15-authoritative.css — 众泰云 R15 视觉权威裁决层（v3）
   ------------------------------------------------------------
   定位：注入 layout.php 最后，作为全站视觉的最终裁决。
   标准：以首页为最低标准 —— 底 #0A0A0F / 主色 #E8A33D / 字 #FFFFFF·#A0A0A0·#555555

   为什么需要这一层（全部实证，非推测）：
     站内并存 6 套强调色 token 家族，全部为青色系，互相覆盖：
       --c-*        (98 个)  R15 金 #E8A33D        ← 唯一正确目标
       --wc-*       (59 个)  青 #0E7C7B            world-class.css
       --zt-*       (43 个)  青 #0E5F69/#12808C    tokens-authoritative.css
       --tiance-*   (46 个)  青                    tiance-brand.css
       --admin-*    (77 个)  青                    admin.css
       --ti-*       (10 个)  青                    admin.css
       --color-*    (296 个) 灰/白                 design-system.css
     加上 chatgpt-enhanced.css 用 !important 把
       .btn-primary{background:var(--color-text-primary)!important}   （把"文字色"当按钮底）
       .page-container .btn-primary{background:var(--color-interactive)!important}
       .hero__actions .btn-primary{background:linear-gradient(#6366f1,#8b5cf6)!important}  （紫色）
       [data-theme="dark"] body{background:#0d0d0d!important}
     直接刷掉上层的全部定义。

   本层三件事：
     一、把 6 套家族的颜色变量全部重映射到 R15 甲族 --c-*；
     二、覆盖全局表面（body / 各 section 白底）；
     三、覆盖组件（按钮/卡片/表单/徽章/页首/CTA）。
     全部用 html body 前缀提升特异性，确保在同为 !important 时胜过
     chatgpt-enhanced 的 .page-container .btn-primary（0,2,0）。

   零模板改动 ⇒ 零数据绑定风险。
   回滚：删 layout.php 中本文件那一行 <link> 即可。
   ============================================================ */

/* ══════════════════════════════════════════════════════════
   〇、R15 token 自带定义（自给自足）
   ----------------------------------------------------------
   为什么需要：站内有 115 张「免壳页」自带 <!DOCTYPE>、绕过 layout.php，
   其中部分不加载 theme-contract.css ⇒ var(--c-bg) 解析为空 ⇒ 覆盖失效。
   本层必须在任何页面上都能独立成立，故自带一份完整 token。
   取值与 theme-contract.css 完全一致（R15 设计稿口径），
   后加载覆盖同值定义，幂等无害。
   ══════════════════════════════════════════════════════════ */
:root,
:root[data-theme="dark"] {
    /* 底 */
    --c-bg: #0A0A0F;
    --c-bg-2: #0F0F16;
    --c-bg-3: #13131C;
    --c-card: rgba(255, 255, 255, 0.03);
    --c-bg-card: rgba(255, 255, 255, 0.03);
    --c-bg-nav: rgba(10, 10, 15, 0.92);
    --nav-bg: rgba(10, 10, 15, 0.82);
    --c-bg-nav-2: rgba(10, 10, 15, 0.82);
    --c-bg-nav-strong: rgba(10, 10, 15, 0.95);

    /* 字 */
    --c-ink: #FFFFFF;
    --c-ink-2: #A0A0A0;
    --c-ink-3: #555555;
    --c-ink-row: rgba(255, 255, 255, 0.02);
    --c-ink-hover: rgba(255, 255, 255, 0.04);
    --hero-sub: #B8C2D0;

    /* 主色（金） */
    --c-gold: #E8A33D;
    --c-gold-2: #EBA648;
    --c-gold-d: #C77E1F;
    --c-gold-deep: #C77E1F;
    --c-gold-soft: rgba(232, 163, 61, 0.12);
    --c-gold-tint: rgba(232, 163, 61, 0.08);
    --c-gold-line: rgba(232, 163, 61, 0.4);
    --c-gold-line-strong: rgba(232, 163, 61, 0.5);
    --c-gold-shadow: rgba(232, 163, 61, 0.3);
    --c-gold-hover: rgba(232, 163, 61, 0.10);
    --c-on-accent: #0A0A0F;

    /* 状态 */
    --c-ok: #2E9E5B;
    --c-ok-2: #37AF67;
    --c-ok-line: rgba(46, 158, 91, 0.4);
    --c-ok-line-soft: rgba(46, 158, 91, 0.3);
    --c-ok-tint: rgba(46, 158, 91, 0.08);
    --c-err: #D64545;
    --c-err-line: rgba(214, 69, 69, 0.4);
    --c-err-line-soft: rgba(214, 69, 69, 0.3);
    --c-err-line-strong: rgba(214, 69, 69, 0.5);
    --c-err-tint: rgba(214, 69, 69, 0.08);
    --c-err-focus: rgba(214, 69, 69, 0.15);
    --c-warn: #E8A33D;

    /* 线 / 圆角 / 字体 */
    --c-border: rgba(255, 255, 255, 0.08);
    --r-lg: 14px;
    --r-md: 10px;
    --r-sm: 8px;
    --glow: 0 0 0 1px rgba(255, 255, 255, 0.06), 0 8px 24px rgba(0, 0, 0, 0.5);
    --font-h: "HarmonyOS Sans SC", "Source Han Sans SC", "MiSans", "PingFang SC", "Microsoft YaHei", sans-serif;
    --font-m: "JetBrains Mono", "SF Mono", ui-monospace, monospace;
}

:root[data-theme="light"] {
    --c-bg: #F7F8F7;
    --c-bg-2: #FFFFFF;
    --c-bg-3: #EFF1EF;
    --c-card: rgba(0, 0, 0, 0.02);
    --c-bg-card: rgba(0, 0, 0, 0.02);
    --c-ink: #1A1A1A;
    --c-ink-2: #4A4A4A;
    --c-ink-3: #8A8A8A;
    --c-ink-row: rgba(0, 0, 0, 0.02);
    --c-ink-hover: rgba(0, 0, 0, 0.04);
    --c-gold: #C77E1F;
    --c-gold-2: #B56F1A;
    --c-gold-d: #A86618;
    --c-gold-soft: rgba(199, 126, 31, 0.12);
    --c-gold-tint: rgba(199, 126, 31, 0.08);
    --c-gold-line: rgba(199, 126, 31, 0.4);
    --c-gold-line-strong: rgba(199, 126, 31, 0.5);
    --c-gold-shadow: rgba(199, 126, 31, 0.3);
    --c-on-accent: #FFFFFF;
    --c-border: rgba(0, 0, 0, 0.08);
}

/* ══════════════════════════════════════════════════════════
   一、6 套 token 家族 → R15 甲族
   ══════════════════════════════════════════════════════════ */
:root,
:root[data-theme="dark"],
:root[data-theme="light"] {

    /* ── world-class 家族 --wc-* ── */
    --wc-bg-0: var(--c-bg);
    --wc-bg-1: var(--c-bg-2);
    --wc-bg-2: var(--c-bg-3);
    --wc-bg-3: var(--c-bg-3);
    --wc-line: var(--c-border);
    --wc-line-soft: var(--c-ink-row);
    --wc-text-h: var(--c-ink);
    --wc-text-b: var(--c-ink-2);
    --wc-text-m: var(--c-ink-3);
    --wc-primary: var(--c-gold);
    --wc-primary-2: var(--c-gold-2, #EBA648);
    --wc-primary-deep: var(--c-gold-d, #C77E1F);
    --wc-emerald: var(--c-ok, #2E9E5B);
    --wc-red: var(--c-err, #D64545);
    --wc-amber: var(--c-warn, #E8A33D);
    --wc-blue: var(--c-ink-2);
    --wc-on-accent: var(--c-on-accent, #0A0A0F);
    --wc-r-sm: 8px;
    --wc-r-md: 10px;
    --wc-r-lg: 14px;
    --wc-r-xl: 18px;
    --wc-shadow-card: 0 0 0 1px var(--c-border), 0 8px 24px rgba(0, 0, 0, 0.5);
    --wc-shadow-pop: 0 8px 24px rgba(0, 0, 0, 0.55), 0 0 0 1px var(--c-border);
    --wc-glow: 0 0 0 1px rgba(232, 163, 61, 0.10), 0 6px 24px -8px rgba(232, 163, 61, 0.35);
    --wc-font: var(--font-h, "HarmonyOS Sans SC", "Source Han Sans SC", "MiSans", "PingFang SC", "Microsoft YaHei", sans-serif);

    /* ── zt 家族 --zt-*（原 青 #0B4A52/#0E5F69/#12808C/#7FBFC7）── */
    --zt-primary-700: #B4711A;
    --zt-primary-600: var(--c-gold-d, #C77E1F);
    --zt-primary-500: var(--c-gold, #E8A33D);
    --zt-primary-300: #F0C583;
    --zt-teal: var(--c-gold, #E8A33D);
    --zt-primary: var(--c-gold, #E8A33D);

    /* ── tiance 家族 --tiance-* ── */
    --tiance-primary: var(--c-gold, #E8A33D);
    --tiance-primary-dark: var(--c-gold-d, #C77E1F);
    --tiance-primary-light: var(--c-gold-soft, rgba(232, 163, 61, 0.12));
    --tiance-accent: var(--c-gold, #E8A33D);

    /* ── admin 家族 --admin-* ── */
    --admin-accent: var(--c-gold, #E8A33D);
    --admin-primary: var(--c-gold, #E8A33D);
    --admin-bg: var(--c-bg);
    --admin-surface: var(--c-bg-2);
    --admin-border: var(--c-border);
    --admin-text: var(--c-ink);
    --admin-text-muted: var(--c-ink-2);
    --admin-green: var(--c-ok, #2E9E5B);
    --admin-red: var(--c-err, #D64545);

    /* ── ti 家族 --ti-* ── */
    --ti-600: var(--c-gold-d, #C77E1F);
    --ti-500: var(--c-gold, #E8A33D);
    --ti-400: var(--c-gold-2, #EBA648);

    /* ── 通用 primary 别名 ── */
    --primary: var(--c-gold, #E8A33D);
    --primary-dark: var(--c-gold-d, #C77E1F);
    --primary-light: var(--c-gold-soft, rgba(232, 163, 61, 0.12));

    /* ── design-system 家族 --color-*（表面与强调）── */
    --color-bg-base: var(--c-bg);
    --color-bg-sunken: var(--c-bg-2);
    --color-bg-input: var(--c-bg-3);
    --color-bg-surface: var(--c-bg-2);
    --color-bg-elevated: var(--c-bg-3);
    --color-bg-card: var(--c-bg-2);
    --color-text-secondary: var(--c-ink-2);
    --color-text-tertiary: var(--c-ink-3);
    --color-border: var(--c-border);
    --color-border-subtle: var(--c-ink-row);
    --color-interactive: var(--c-gold, #E8A33D);
    --color-accent: var(--c-gold, #E8A33D);
    /* 语义强调色（原信息蓝/青绿/AI 绿）→ 一律收到 R15 金 */
    --color-info: var(--c-gold, #E8A33D);
    --color-ai: var(--c-gold, #E8A33D);
    --color-success: var(--c-ok, #2E9E5B);
    --color-warning: var(--c-gold, #E8A33D);
    --color-danger: var(--c-err, #D64545);
    --color-error: var(--c-err, #D64545);
    /* --color-primary 家族（原青 #2DD4BF，recharge 页实测）→ R15 金 */
    --color-primary: var(--c-gold, #E8A33D);
    --color-primary-hover: var(--c-gold-2, #EBA648);
    --color-primary-dark: var(--c-gold-d, #C77E1F);
    --color-primary-light: var(--c-gold-soft, rgba(232, 163, 61, 0.12));
    --color-primary-foreground: var(--c-on-accent, #0A0A0F);
    --color-secondary: var(--c-ink-2, #A0A0A0);
    /* 注意：--color-text-primary 保持语义（= 文字色），它在若干按钮内联样式里被
       误当背景用；那些按钮由第三节以更高特异性覆盖。--color-bg 在按钮内联样式里
       被当"按钮文字色"用，故映射为 R15 底（深色），在金色按钮上正好是可读的深字。 */
    --color-bg: var(--c-bg, #0A0A0F);
    /* amber 色阶（fde 图标用）→ R15 金色阶 */
    --amber-50: rgba(232, 163, 61, 0.08);
    --amber-100: rgba(232, 163, 61, 0.16);
    --amber-200: rgba(232, 163, 61, 0.24);
    --amber-300: #F0C583;
    --amber-400: var(--c-gold-2, #EBA648);
    --amber-500: var(--c-gold, #E8A33D);
    --amber-600: var(--c-gold-d, #C77E1F);
    --shadow-glow: 0 0 24px rgba(232, 163, 61, 0.25);
    --color-hero-gradient: linear-gradient(135deg, #0A0A0F 0%, #0F0F16 50%, #13131C 100%);
}

/* 注意：--color-text-primary 保持语义正确（= --c-ink 白），
   但 chatgpt-enhanced.css 把它当按钮背景用，故在第三节以更高特异性覆盖按钮。 */

/* ══════════════════════════════════════════════════════════
   二、全局表面（html body 前缀提升特异性）
   ══════════════════════════════════════════════════════════ */
html body,
html[data-theme="dark"] body,
html[data-theme="light"] body,
html body.app-layout,
html body.main-content,
html body.page-wrap,
html body.page-container {
    background-color: var(--c-bg) !important;
    background-image: none !important;
    color: var(--c-ink-2) !important;
}

/* 主内容区内的白色 section 一律收回 R15 底 */
html body section,
html body .page-container,
html body .main-content {
    background-color: transparent;
}

html[data-theme="dark"] body.app-layout,
html[data-theme="dark"] body.main-content,
html[data-theme="dark"] body.page-wrap {
    background-image:
        radial-gradient(1100px 520px at 82% -6%, rgba(232, 163, 61, 0.10), transparent 56%),
        radial-gradient(820px 460px at -8% 18%, rgba(232, 163, 61, 0.06), transparent 52%) !important;
}

/* 被 world-class.css 硬编码为 #FFFFFF 的区块 */
html body .product-matrix,
html body .product-listing,
html body .industry-eco,
html body .page-hero,
html body .page-cta {
    background: var(--c-bg) !important;
    background-image: none !important;
}

/* ══════════════════════════════════════════════════════════
   三、组件裁决
   ══════════════════════════════════════════════════════════ */

/* ── 按钮：需胜过 chatgpt-enhanced 的 !important + 更高特异性 ── */
html body .btn-primary,
html body a.btn-primary,
html body button.btn-primary,
html body .page-container .btn-primary,
html body .hero__actions .btn-primary,
html body .btn.btn-primary {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    border-color: var(--c-gold, #E8A33D) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
    box-shadow: 0 0 0 1px rgba(232, 163, 61, 0.2), 0 6px 20px -8px rgba(232, 163, 61, 0.5) !important;
}
html body .btn-primary:hover,
html body a.btn-primary:hover,
html body .page-container .btn-primary:hover,
html body .hero__actions .btn-primary:hover,
html body .btn.btn-primary:hover {
    background: var(--c-gold-2, #EBA648) !important;
    border-color: var(--c-gold-2, #EBA648) !important;
}
html body .btn-outline,
html body .btn-secondary,
html body .btn-ghost {
    background: transparent !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .btn-outline:hover,
html body .btn-secondary:hover,
html body .btn-ghost:hover {
    border-color: var(--c-gold-line-strong, rgba(232, 163, 61, 0.5)) !important;
    color: var(--c-gold) !important;
}

/* ── 页首 / CTA：青绿渐变 → R15 深底 + 金辉光 ── */
html body .page-hero,
html body .page-cta {
    background: var(--c-bg) !important;
    background-image: linear-gradient(180deg, var(--c-bg) 0%, var(--c-bg-2) 100%) !important;
}
html body .page-hero::before,
html body .page-cta::before {
    background: radial-gradient(680px 340px at 72% 18%, rgba(232, 163, 61, 0.16), transparent 70%) !important;
}
html body .page-hero__badge {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
    color: var(--c-gold) !important;
}
html body .page-hero__badge-dot {
    background: var(--c-gold) !important;
    box-shadow: 0 0 0 0 rgba(232, 163, 61, 0.5) !important;
}
html body .page-hero__title,
html body .page-cta__title {
    color: var(--c-ink) !important;
}
html body .page-hero__sub,
html body .page-cta__sub {
    color: var(--c-ink-2) !important;
}

/* ── 卡片族 ── */
html body .eco-card,
html body .matrix-card,
html body .product-tile,
html body .industry-card {
    background: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .eco-card:hover,
html body .matrix-card:hover,
html body .product-tile:hover {
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3), 0 24px 48px -24px rgba(232, 163, 61, 0.26) !important;
}
html body .eco-card__icon,
html body .matrix-card__icon {
    background: linear-gradient(135deg, rgba(232, 163, 61, 0.14), rgba(232, 163, 61, 0.04)) !important;
    color: var(--c-gold) !important;
}
html body .eco-card__title,
html body .matrix-card__title {
    color: var(--c-ink) !important;
}
html body .eco-card__desc,
html body .matrix-card__desc {
    color: var(--c-ink-3) !important;
}
html body .eco-card__link {
    color: var(--c-gold) !important;
}

/* ── 表单件 ── */
html body .input-ds,
html body .textarea-ds,
html body .select-ds {
    background: var(--c-bg-2) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink) !important;
}
html body .input-ds::placeholder {
    color: var(--c-ink-3) !important;
}
html body .input-ds:focus {
    border-color: var(--c-gold) !important;
    box-shadow: 0 0 0 3px rgba(232, 163, 61, 0.3) !important;
}

/* ── 徽章 ── */
html body .badge-success {
    color: var(--c-ok, #2E9E5B) !important;
    border-color: rgba(46, 158, 91, 0.4) !important;
    background: rgba(46, 158, 91, 0.1) !important;
}
html body .badge-warning {
    color: var(--c-gold) !important;
    border-color: rgba(232, 163, 61, 0.4) !important;
    background: rgba(232, 163, 61, 0.1) !important;
}
html body .badge-danger,
html body .badge-error {
    color: var(--c-err, #D64545) !important;
    border-color: rgba(214, 69, 69, 0.4) !important;
    background: rgba(214, 69, 69, 0.1) !important;
}

/* ── 聊天微件（zt-hero.css 的青色 chip 族）── */
html body .m-chat__chip {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
    color: var(--c-gold) !important;
}
html body .m-chat__chip:hover {
    background: rgba(232, 163, 61, 0.18) !important;
    border-color: var(--c-gold) !important;
}
html body .m-chat__chip:focus-visible {
    outline: 2px solid var(--c-gold) !important;
}
/* 聊天微件的"记忆"按钮及内部图标（原 #0E5F69 青） */
html body .m-chat__mem,
html body button.m-chat__mem {
    color: var(--c-gold) !important;
}
html body .m-chat__mem svg,
html body button.m-chat__mem svg,
html body .m-chat__mem svg * {
    color: var(--c-gold) !important;
    stroke: var(--c-gold) !important;
}

/* ── 产品矩阵卡（.matrix-card 系列，原 #0E7C7B 青）── */
html body .matrix-card__tag {
    background: linear-gradient(135deg, var(--c-gold, #E8A33D), var(--c-gold-d, #C77E1F)) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}
html body .matrix-card__link {
    color: var(--c-gold) !important;
}
html body .matrix-card:hover .matrix-card__link {
    color: var(--c-gold-2, #EBA648) !important;
}

/* ── 其余 zt 青变量直用的元素兜底 ── */
html body .zt-trustbar__item svg,
html body .zt-calc__card output,
html body a.zt-works__card:hover strong,
html body .zt-works .section-subtitle a,
html body a.zt-trustbar__item:hover strong {
    color: var(--c-gold) !important;
}

/* ── 面包屑 / 次级链接 ── */
html body .breadcrumb-item a:hover {
    color: var(--c-gold) !important;
}
html body .text-primary,
html body .link-primary {
    color: var(--c-gold) !important;
}

/* ── 免壳页自带内联样式里的浅色块（浏览器 computed style 实测）── */
/* /acp-intro（templates/pc/content/acp.php 内联 <style>）实测：
     div.acp-step  bg=rgb(255,255,255)
     div.acp-quote bg=rgb(247,248,247) */
html body .acp-step,
html body .acp-quote,
html body .acp-flow,
html body .acp-cta,
html body .acp-body {
    background: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .acp-step__no {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    color: var(--c-gold) !important;
}
html body .acp-hero {
    background: var(--c-bg) !important;
    background-image: linear-gradient(180deg, var(--c-bg) 0%, var(--c-bg-2) 100%) !important;
    color: var(--c-ink) !important;
}
html body .acp-hero h1,
html body .acp-step strong {
    color: var(--c-ink) !important;
}
html body .acp-hero p,
html body .acp-step p,
html body .acp-quote {
    color: var(--c-ink-2) !important;
}
html body .acp-btn {
    background: var(--c-gold, #E8A33D) !important;
    border-color: var(--c-gold, #E8A33D) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}

/* ── 错误页（pc/errors/*）── */
html body .error-page,
html body .error-wrap,
html body .err-card {
    background: transparent !important;
    color: var(--c-ink-2) !important;
}

/* ── 通用安全网：免壳页里 <main>/<section> 被内联样式刷白的兜底 ──
   仅针对明确的白/近白字面值，不匹配金色 #E8A33D 家族。 */
html body main[style*="background:#fff"],
html body main[style*="background: #fff"],
html body main[style*="background:#FFF"],
html body main[style*="background:white"] {
    background: var(--c-bg) !important;
}

/* ── 聊天微件语音/记忆按钮（zt-hero.css:235 白底 + 青 #0E5F69）── */
html body .chat-mic,
html body .chat-mem {
    background: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    border-color: var(--c-border) !important;
    color: var(--c-gold) !important;
}
html body .chat-mic:hover,
html body .chat-mem:hover {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
    color: var(--c-gold) !important;
}
html body .chat-mic svg,
html body .chat-mem svg,
html body .chat-mic svg *,
html body .chat-mem svg * {
    color: var(--c-gold) !important;
    stroke: var(--c-gold) !important;
}
html body .chat-mic.is-recording {
    border-color: var(--c-err, #D64545) !important;
    color: var(--c-err, #D64545) !important;
    background: rgba(214, 69, 69, 0.08) !important;
}

/* ── FDE 域组件（类未在 CSS 定义，颜色来自内联 var）── */
html body .fde-stat-icon,
html body .fde-toolbox-icon,
html body .fde-playbook-icon {
    background: linear-gradient(135deg, rgba(232, 163, 61, 0.16), rgba(232, 163, 61, 0.06)) !important;
    color: var(--c-gold) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
}
html body .fde-chip {
    background: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .fde-chip--active,
html body .fde-chip.is-active,
html body .fde-chip.on {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
    color: var(--c-gold) !important;
}
html body .fde-playbook-category {
    background: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    color: var(--c-ink-2) !important;
}

/* ── 内联 var 驱动的工具类按钮（原蓝 #60A5FA / 近白，见 computed style 实测）── */
html body .rounded-lg[style*="--color-text-primary"],
html body .rounded-md[style*="--color-info"],
html body .rounded-lg[style*="--color-info"],
html body button[style*="--color-info"],
html body a[style*="--color-info"] {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    color: var(--c-on-accent, #0A0A0F) !important;
    border-color: var(--c-gold, #E8A33D) !important;
}

/* ── 内联硬编码浅灰底的次级按钮（非变量驱动，无法靠 token 映射）──
   实测来源：/seller/price-monitor「取消」按钮 style="background:#f1f5f9" */
html body button[style*="#f1f5f9"],
html body button[style*="#F1F5F9"],
html body a[style*="#f1f5f9"],
html body button[style*="#f8fafc"],
html body button[style*="#F8FAFC"],
html body a[style*="#f8fafc"],
html body button[style*="#f5f5f5"],
html body button[style*="#e5e7eb"],
html body button[style*="#e2e8f0"],
html body a[style*="#f5f5f5"],
html body a[style*="#e5e7eb"] {
    background: var(--c-bg-3, #13131C) !important;
    background-image: none !important;
    color: var(--c-ink-2) !important;
    border: 1px solid var(--c-border) !important;
}
html body button[style*="#f1f5f9"]:hover,
html body button[style*="#f8fafc"]:hover,
html body a[style*="#f1f5f9"]:hover {
    border-color: var(--c-gold-line-strong, rgba(232, 163, 61, 0.5)) !important;
    color: var(--c-gold) !important;
}

/* ── Swagger UI（/api-docs，第三方组件，自带 #fafafa 白底 + #16259c 蓝标题）──
   实测来源：templates/pc/content/api-doc.php 内联 <style>
     body { background: #fafafa }
     .swagger-ui .topbar { background-color: #1a1a2e }
     .swagger-ui .info .title { color: #16259c }
     .swagger-ui .scheme-container { background: #fff } */
html body { background: var(--c-bg) !important; }
html body .swagger-ui,
html body .swagger-ui .wrapper {
    background: var(--c-bg) !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui .topbar {
    background-color: var(--c-bg-2) !important;
    border-bottom: 1px solid var(--c-border) !important;
}
html body .swagger-ui .topbar .download-url-wrapper input[type=text] {
    background: var(--c-bg-3) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink) !important;
}
html body .swagger-ui .info .title,
html body .swagger-ui .info .title small,
html body .swagger-ui .info h1,
html body .swagger-ui .info h2,
html body .swagger-ui .info h3,
html body .swagger-ui .info h4,
html body .swagger-ui .info h5,
html body .swagger-ui .opblock-tag,
html body .swagger-ui .model-title,
html body .swagger-ui .model,
html body .swagger-ui label,
html body .swagger-ui .parameter__name {
    color: var(--c-ink) !important;
}
html body .swagger-ui .info .title small,
html body .swagger-ui .info p,
html body .swagger-ui .info li,
html body .swagger-ui .markdown p,
html body .swagger-ui .parameter__type,
html body .swagger-ui .response-col_status,
html body .swagger-ui .prop-type {
    color: var(--c-ink-2) !important;
}
html body .swagger-ui .scheme-container,
html body .swagger-ui .opblock .opblock-summary,
html body .swagger-ui .opblock-body,
html body .swagger-ui .model-box,
html body .swagger-ui .responses-inner,
html body .swagger-ui section.models,
html body .swagger-ui .dialog-ux .modal-ux {
    background: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    background-color: var(--c-bg-2) !important;
    border-color: var(--c-border) !important;
    box-shadow: none !important;
}
html body .swagger-ui .opblock {
    background: var(--c-bg-2) !important;
    border-color: var(--c-border) !important;
}
html body .swagger-ui .opblock.opblock-get,
html body .swagger-ui .opblock.opblock-post,
html body .swagger-ui .opblock.opblock-put,
html body .swagger-ui .opblock.opblock-delete {
    background: var(--c-bg-2) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
}
html body .swagger-ui .btn,
html body .swagger-ui .btn.execute,
html body .swagger-ui .download-url-wrapper .download-url-button {
    background: var(--c-gold) !important;
    border-color: var(--c-gold) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}
html body .swagger-ui .btn.cancel,
html body .swagger-ui .btn.authorize {
    background: transparent !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui input[type=text],
html body .swagger-ui input[type=email],
html body .swagger-ui input[type=password],
html body .swagger-ui textarea,
html body .swagger-ui select {
    background: var(--c-bg-3) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink) !important;
}
html body .swagger-ui table thead tr th,
html body .swagger-ui table thead tr td {
    border-bottom-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui table tbody tr td {
    border-bottom-color: var(--c-ink-row) !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui .highlight-code,
html body .swagger-ui .microlight,
html body .swagger-ui .model-example,
html body .swagger-ui .responses-table .response {
    background: var(--c-bg-3) !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui svg,
html body .swagger-ui .arrow {
    fill: var(--c-ink-2) !important;
}
html body .swagger-ui a,
html body .swagger-ui .info a,
html body .swagger-ui .markdown a {
    color: var(--c-gold) !important;
}

/* ── 实测残留（浏览器 computed style，修正后的青色判定 |b-g|≤35）── */
/* /gallery：a.tab-item.active bg = rgb(45,212,191) = #2DD4BF（青） */
html body .tab-item.active,
html body .tab-item.is-active,
html body .tab-item[aria-selected="true"],
html body .tabs .tab.active {
    background: var(--c-gold) !important;
    border-color: var(--c-gold) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}
html body .tab-item {
    background: transparent !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body .tab-item:hover {
    color: var(--c-gold) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
}

/* /ai/readiness：main.tiance-main-gray bg = rgb(240,242,245) = #F0F2F5（浅灰） */
html body .tiance-main-gray,
html body .tiance-main,
html body .main-gray,
html body main[class*="gray"] {
    background: var(--c-bg) !important;
    color: var(--c-ink-2) !important;
}

/* Swagger UI 剩余浅色面（/api-docs 实测 rgb(240,244,255) / #FFFFFF） */
html body .swagger-ui .info,
html body .swagger-ui .info .base-url,
html body .swagger-ui .info > div,
html body .swagger-ui .opblock-description-wrapper,
html body .swagger-ui .opblock-external-docs-wrapper,
html body .swagger-ui .opblock-title_normal,
html body .swagger-ui .parameters-col_description,
html body .swagger-ui .responses-wrapper,
html body .swagger-ui .loading-container,
html body .swagger-ui .errors-wrapper {
    background: transparent !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui input,
html body .swagger-ui textarea,
html body .swagger-ui select,
html body .swagger-ui .download-url-wrapper input[type=text] {
    background: var(--c-bg-3) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink) !important;
}
html body .swagger-ui .model-container,
html body .swagger-ui .models,
html body .swagger-ui .model-box-control,
html body .swagger-ui .opblock-summary-description,
html body .swagger-ui .opblock-summary-path,
html body .swagger-ui .opblock-summary-path__deprecated {
    background: transparent !important;
    color: var(--c-ink-2) !important;
}
html body .swagger-ui .opblock-tag-section,
html body .swagger-ui .opblock-tag {
    background: transparent !important;
    border-bottom-color: var(--c-border) !important;
}
html body .swagger-ui .btn.authorize svg,
html body .swagger-ui .btn svg {
    fill: currentColor !important;
}

/* ── 后台（admin）页面族实测残留（computed style，2026-09-12）──
   来源：230 条后台路由视觉审计，15 页未达标，原因集中于以下类名 */

/* 1) 表单件：input / select / textarea 白底
      实测：/admin/change-password · /admin/themes/brand · /admin/audit-log ·
            /admin/api-doc(.search-box) */
html body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="submit"]):not([type="button"]):not([type="file"]),
html body textarea,
html body select {
    background-color: var(--c-bg-2) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink) !important;
}
html body input::placeholder,
html body textarea::placeholder {
    color: var(--c-ink-3) !important;
}
html body input:focus,
html body textarea:focus,
html body select:focus {
    border-color: var(--c-gold) !important;
    box-shadow: 0 0 0 3px rgba(232, 163, 61, 0.28) !important;
    outline: none !important;
}
html body .search-box,
html body .search-input,
html body input.search-box {
    background-color: var(--c-bg-2) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink) !important;
}

/* 2) 按钮族：btn-primary / btn-sm / btn-danger / btn 灰底或白底
      实测：/admin/rebate-tiers · /admin/memory · /admin/mcp-tools ·
            /admin/change-password · /admin/audit-log */
html body button.btn,
html body a.btn,
html body .btn {
    background-color: var(--c-bg-3) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body button.btn-primary,
html body a.btn-primary,
html body .btn-primary,
html body .btn-sm.btn-primary,
html body button.btn-sm.btn-primary,
html body .btn.btn-primary {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    border-color: var(--c-gold, #E8A33D) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}
html body button.btn-primary:hover,
html body a.btn-primary:hover,
html body .btn-primary:hover {
    background: var(--c-gold-2, #EBA648) !important;
    border-color: var(--c-gold-2, #EBA648) !important;
}
html body button.btn-danger,
html body a.btn-danger,
html body .btn-danger {
    background-color: var(--c-err, #D64545) !important;
    border-color: var(--c-err, #D64545) !important;
    color: #FFFFFF !important;
}
html body button.btn-outline,
html body a.btn-outline,
html body .btn-outline,
html body .btn-ghost {
    background-color: transparent !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}

/* 3) 代码块 / 表格头：浅底
      实测：/admin/skill-framework · /admin/engines（code/pre） · /admin/lang（th） */
html body code,
html body pre,
html body kbd,
html body samp,
html body .code,
html body .hljs {
    background-color: var(--c-bg-3) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}
html body th {
    background-color: transparent !important;
    color: var(--c-ink-2) !important;
    border-bottom-color: var(--c-border) !important;
}
html body thead,
html body thead tr {
    background-color: transparent !important;
}
html body td {
    border-bottom-color: var(--c-ink-row) !important;
    color: var(--c-ink-2) !important;
}

/* 4) 青色残留 → R15 金
      实测：#06B6D4（/admin/marketing strong.text-xl · /admin/conversation-logs button）
            #2DD4BF（/admin/gallery button · /admin/lang .admin-lang-edit-btn） */
html body strong.text-xl,
html body .text-xl,
html body .text-2xl,
html body .admin-lang-edit-btn,
html body .admin-lang-edit-btn.border-0 {
    color: var(--c-gold) !important;
}
html body button.border-0,
html body a.border-0,
html body .border-0.rounded-md,
html body .border-0.rounded-lg,
html body button.border-0.rounded-md,
html body button.border-0.rounded-lg,
html body button.border-0.cursor-pointer {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    border-color: var(--c-gold, #E8A33D) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}
html body .admin-lang-edit-btn.border-0 {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    border-color: var(--c-gold-line, rgba(232, 163, 61, 0.4)) !important;
    color: var(--c-gold) !important;
}

/* 5) 其余浅色容器
      实测：/admin/license(div.p-3 #F0FDF4) · /admin/analytics-dashboard(div rgba(255,255,255,.8))
            /admin/change-password · /admin/gallery(aside.position-fixed #F5F5F5) */
html body .p-3.rounded-md,
html body .rounded-md.overflow-hidden,
html body div.d-none.position-absolute,
html body aside.position-fixed,
html body .rounded-lg.text-xs,
html body span.rounded-lg.text-xs {
    background-color: var(--c-card, rgba(255, 255, 255, 0.03)) !important;
    border-color: var(--c-border) !important;
    color: var(--c-ink-2) !important;
}

/* 6) JS 动态创建的按钮（不在初始 HTML 中，故 CSSOM 规则遍历不易定位）
      实测：/admin/memory 的 .memory-manager-header button.btn-primary
            /admin/mcp-tools 的 .mcp-recommend-form button.btn-primary
            两者 computed bg 均为 rgb(255,255,255)，但 HTML 与模板内均无 btn-primary */
html body .memory-manager-header button,
html body .memory-manager-header .btn,
html body .memory-manager-header .btn-primary,
html body .mcp-recommend-form button,
html body .mcp-recommend-form .btn,
html body .mcp-recommend-form .btn-primary {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    border-color: var(--c-gold, #E8A33D) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
    box-shadow: none !important;
}
html body .memory-manager-header button:hover,
html body .mcp-recommend-form button:hover {
    background: var(--c-gold-2, #EBA648) !important;
    border-color: var(--c-gold-2, #EBA648) !important;
}

/* ── 基础件 ── */
:root {
    accent-color: var(--c-gold);
}
::selection {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12));
    color: var(--c-ink);
}
html[data-theme="dark"] {
    scrollbar-color: var(--c-border) var(--c-bg);
}
html[data-theme="dark"] ::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
html[data-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--c-bg);
}
html[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--c-border);
    border-radius: 999px;
}
html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: var(--c-gold-line, rgba(232, 163, 61, 0.4));
}

/* ── tiance / --wc 青色家族清零（第 7 类实测残留，2026-09-12）──
   实测口径：全站 230 条后台路由 computed style 扫描，残留青色全部落在 /admin/business/* 一域，
   共 6 个页面，色值一律为 rgb(14,124,123) = #0E7C7B。
   来源有两个，本块覆盖「类名」路径，模板层同步覆盖「字面量」路径：
     (a) tiance-brand.css:250  .tiance-badge-info { background: rgba(14,124,123,.12) } —— 硬编码，不经 token
     (b) tiance-brand.css:234  .tiance-badge / :56 .tiance-btn 消费 --tiance-primary
   注意：#0E7C7B 不是 R15 调色板成员，R15 在此语义位上用 --c-gold / --c-gold-soft。
   !important 在层叠顺序里高于 style 属性上的普通声明，故本块能压过内联样式。 */
html body .tiance-badge,
html body .tiance-badge-info,
html body .tiance-badge--info,
html body [class*="tiance-badge"] {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    background-image: none !important;
    color: var(--c-gold, #E8A33D) !important;
    border-color: rgba(232, 163, 61, 0.30) !important;
}
html body .tiance-btn,
html body .tiance-btn-primary,
html body .tiance-btn--primary,
html body [class*="tiance-btn"]:not(.tiance-btn-outline):not(.tiance-btn--ghost) {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    color: var(--c-on-accent, #0A0A0F) !important;
    border-color: var(--c-gold, #E8A33D) !important;
}
html body .tiance-btn-outline,
html body .tiance-btn--ghost,
html body .tiance-btn-outline:hover,
html body .tiance-btn--ghost:hover {
    background: transparent !important;
    background-image: none !important;
    color: var(--c-gold, #E8A33D) !important;
    border: 1px solid rgba(232, 163, 61, 0.45) !important;
}
/* tiance 语义 token 兜底：即使某处直接消费变量而非类名，也落在 R15 金上 */
html body {
    --tiance-primary: #E8A33D;
    --tiance-primary-dark: #C77E1F;
    --tiance-accent: #E8A33D;
    --tiance-accent-light: #EBA648;
    --tiance-warn: #E8A33D;
}

/* ══════════════════════════════════════════════════════════════
   特异性破壁层（第 8 类残留，2026-09-12）

   问题本质（方法级，不是个别漏网）：
     chatgpt-enhanced.css 有约 40 条 [data-theme="dark"] .X { ... !important } 规则。
     其特异性为  b=2（属性选择器 1 + 类 1）, c=0。
     本文件此前所有修复写成 html body .X，特异性 b=1, c=2。
     CSS 特异性逐桶比较：先比 b，b=2 > b=1，因此 c 桶再大也无法翻盘。
     → 整个「section 三 组件覆盖」长期在静默输掉，这就是白底按钮一直修不掉的真实机制。

   实测证据（CDP CSS.getMatchedStylesForNode，/admin/memory 的
   .memory-add-form-actions button.btn-primary）：浏览器给出的最终胜出规则为
     [data-theme="dark"] .btn-primary, [data-theme="dark"] .btn-brand
       { background: #fff !important; color: #0d0d0d !important }   ← chatgpt-enhanced.css:2307

   本层统一改用 html[data-theme="dark"] body .X（b=2, c=2）：b 打平、c 胜出。
   另加 html body[data-theme="dark"] .X 兜住 data-theme 挂在 body 上的情况。
   ══════════════════════════════════════════════════════════════ */

/* 1) 按钮族：btn-primary / btn-brand 被反色成白底黑字 */
html[data-theme="dark"] body .btn-primary,
html[data-theme="dark"] body .btn-brand,
html[data-theme="dark"] body button.btn-primary,
html[data-theme="dark"] body a.btn-primary,
html[data-theme="dark"] body .btn.btn-primary,
html body[data-theme="dark"] .btn-primary,
html body[data-theme="dark"] .btn-brand {
    background: var(--c-gold, #E8A33D) !important;
    background-image: none !important;
    border-color: var(--c-gold, #E8A33D) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}
html[data-theme="dark"] body .btn-primary:hover,
html[data-theme="dark"] body .btn-brand:hover,
html[data-theme="dark"] body button.btn-primary:hover,
html[data-theme="dark"] body a.btn-primary:hover,
html body[data-theme="dark"] .btn-primary:hover,
html body[data-theme="dark"] .btn-brand:hover {
    background: var(--c-gold-2, #EBA648) !important;
    background-image: none !important;
    border-color: var(--c-gold-2, #EBA648) !important;
    color: var(--c-on-accent, #0A0A0F) !important;
}

/* 2) 次级按钮：chatgpt-enhanced 强制 color:#1a1a1a（深底上几乎不可见）*/
html[data-theme="dark"] body .btn-ghost,
html[data-theme="dark"] body .btn-secondary,
html[data-theme="dark"] body .btn-outline,
html body[data-theme="dark"] .btn-ghost,
html body[data-theme="dark"] .btn-secondary {
    background: var(--c-bg-3, #13131C) !important;
    background-image: none !important;
    color: var(--c-ink-2, #A0A0A0) !important;
    border: 1px solid var(--c-border, rgba(255,255,255,0.08)) !important;
}
html[data-theme="dark"] body .btn-ghost:hover,
html[data-theme="dark"] body .btn-secondary:hover {
    background: var(--c-bg-2, #0F0F16) !important;
    color: var(--c-gold, #E8A33D) !important;
    border-color: rgba(232, 163, 61, 0.45) !important;
}

/* 3) 表单件：chatgpt-enhanced 给白底 */
html[data-theme="dark"] body input[type="text"],
html[data-theme="dark"] body input[type="email"],
html[data-theme="dark"] body input[type="password"],
html[data-theme="dark"] body input[type="search"],
html[data-theme="dark"] body input[type="number"],
html[data-theme="dark"] body input[type="tel"],
html[data-theme="dark"] body input[type="url"],
html[data-theme="dark"] body textarea,
html[data-theme="dark"] body select,
html[data-theme="dark"] body .input-ds,
html body[data-theme="dark"] input[type="text"],
html body[data-theme="dark"] textarea {
    background: var(--c-bg-2, #0F0F16) !important;
    background-image: none !important;
    color: var(--c-ink, #FFFFFF) !important;
    border: 1px solid var(--c-border, rgba(255,255,255,0.08)) !important;
}
html[data-theme="dark"] body input::placeholder,
html[data-theme="dark"] body textarea::placeholder {
    color: var(--c-ink-3, #555555) !important;
}

/* 4) 卡片族：chatgpt-enhanced 给白底 + 黑字 */
html[data-theme="dark"] body .category-card,
html[data-theme="dark"] body .featured-card,
html[data-theme="dark"] body .service-card,
html[data-theme="dark"] body .article-card,
html[data-theme="dark"] body .auth-card,
html[data-theme="dark"] body .page-container .card,
html body[data-theme="dark"] .category-card,
html body[data-theme="dark"] .featured-card,
html body[data-theme="dark"] .service-card,
html body[data-theme="dark"] .article-card {
    background: var(--c-bg-2, #0F0F16) !important;
    background-image: none !important;
    border: 1px solid var(--c-border, rgba(255,255,255,0.08)) !important;
    color: var(--c-ink, #FFFFFF) !important;
}
html[data-theme="dark"] body .category-card__title,
html[data-theme="dark"] body .featured-card__title,
html[data-theme="dark"] body .service-card__name,
html[data-theme="dark"] body .article-card__title,
html[data-theme="dark"] body .category-card__desc,
html[data-theme="dark"] body .featured-card__desc,
html[data-theme="dark"] body .service-card__desc,
html[data-theme="dark"] body .article-card__summary,
html[data-theme="dark"] body .category-card__price,
html[data-theme="dark"] body .service-card__price,
html[data-theme="dark"] body .featured-card__price,
html[data-theme="dark"] body .section-title,
html[data-theme="dark"] body .service-group__title {
    color: var(--c-ink, #FFFFFF) !important;
}
html[data-theme="dark"] body .category-card__desc,
html[data-theme="dark"] body .featured-card__desc,
html[data-theme="dark"] body .service-card__desc,
html[data-theme="dark"] body .article-card__summary,
html[data-theme="dark"] body .section-subtitle,
html[data-theme="dark"] body .trust-bar__label {
    color: var(--c-ink-2, #A0A0A0) !important;
}
html[data-theme="dark"] body .category-card__price,
html[data-theme="dark"] body .service-card__price,
html[data-theme="dark"] body .featured-card__price,
html[data-theme="dark"] body .trust-bar__num {
    color: var(--c-gold, #E8A33D) !important;
}

/* 5) 徽章 */
html[data-theme="dark"] body .badge-accent,
html[data-theme="dark"] body .badge-warning,
html body[data-theme="dark"] .badge-accent,
html body[data-theme="dark"] .badge-warning {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    color: var(--c-gold, #E8A33D) !important;
    border-color: rgba(232, 163, 61, 0.30) !important;
}

/* 6) 导航 / 页头 */
html[data-theme="dark"] body .site-header,
html[data-theme="dark"] body .navbar,
html[data-theme="dark"] body header[class*="header"],
html body[data-theme="dark"] .site-header,
html body[data-theme="dark"] .navbar {
    background: var(--c-bg-2, #0F0F16) !important;
    background-image: none !important;
    border-bottom: 1px solid var(--c-border, rgba(255,255,255,0.08)) !important;
}

/* 7) 根级背景与文字：body 规则本身也是 b=1 vs b=0 的输局 */
html[data-theme="dark"] body,
html body[data-theme="dark"] {
    background-color: var(--c-bg, #0A0A0F) !important;
    color: var(--c-ink, #FFFFFF) !important;
}
html[data-theme="dark"] body h1,
html[data-theme="dark"] body h2,
html[data-theme="dark"] body .hero__title {
    color: var(--c-ink, #FFFFFF) !important;
}

/* 8) 滚动条与选区（同属 b=2 压制） */
html[data-theme="dark"] body ::-webkit-scrollbar-thumb {
    background: var(--c-border, rgba(255,255,255,0.08)) !important;
}
html[data-theme="dark"] body ::selection {
    background: var(--c-gold-soft, rgba(232, 163, 61, 0.12)) !important;
    color: var(--c-ink, #FFFFFF) !important;
}
