/* Paper Ink design tokens. This file contains no application-shell rules. */
@font-face {
  font-family: 'Han Serif';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSerifSC-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: 'Han Serif';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSerifSC-Bold.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: 'Han Sans';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSansSC-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}
/* Light 是 Paper Ink 的独立轻字重角色。 */
@font-face {
  font-family: 'Han Sans Light';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSansSC-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}
@font-face {
  font-family: 'Han Sans';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSansSC-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: 'Han Sans';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSansSC-Bold.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: 'Courier Prime';
  src: url('fonts/CourierPrime-Regular.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: block;
}
@font-face {
  font-family: 'Courier Prime';
  src: url('fonts/CourierPrime-Bold.ttf') format('truetype');
  font-style: normal;
  font-weight: 700;
  font-display: block;
}
@font-face {
  font-family: 'LXGW WenKai';
  src: url('../../../../../assets/fonts/source-han/files/WiseHanSerifSC-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

/* WISE_PPT_THEME_ASSETS_START: generated by themes/paper-ink/scripts/build_theme_assets.py */

:root {
  --wp-theme-preset-id: paper-ink-original;
  --wp-theme-default-typography-mode: all-sans;
  --wp-color-surface-canvas: #DFE0D9;
  --wp-color-surface-recessed: #D4D5CD;
  --wp-color-surface-panel: #E6E7E1;
  --wp-color-primary: #191917;
  --wp-color-functional: rgba(25, 25, 23, .8);
  --wp-color-body: rgba(25, 25, 23, .7);
  --wp-color-chart-label: rgba(25, 25, 23, .55);
  --wp-color-metadata: rgba(25, 25, 23, .45);
  --wp-color-divider: rgba(25, 25, 23, .25);
  --wp-color-construction: rgba(25, 25, 23, .12);
  --wp-color-focus: #C0392B;
  --wp-color-focus-secondary: rgba(192, 57, 43, .85);
  --wp-color-focus-peripheral: rgba(192, 57, 43, .65);
  --wp-color-data-1: rgba(25, 25, 23, .12);
  --wp-color-data-2: rgba(25, 25, 23, .20);
  --wp-color-data-3: rgba(25, 25, 23, .28);
  --wp-color-data-4: rgba(25, 25, 23, .36);
  --wp-color-data-5: rgba(25, 25, 23, .45);
  --wp-color-data-6: rgba(25, 25, 23, .55);
  --wp-private-ink-60: rgba(25, 25, 23, .6);
  --wp-private-ink-30: rgba(25, 25, 23, .3);
}

:root[data-theme-preset="paper-ink-original"] {
  --wp-theme-preset-id: paper-ink-original;
  --wp-theme-default-typography-mode: all-sans;
  --wp-color-surface-canvas: #DFE0D9;
  --wp-color-surface-recessed: #D4D5CD;
  --wp-color-surface-panel: #E6E7E1;
  --wp-color-primary: #191917;
  --wp-color-functional: rgba(25, 25, 23, .8);
  --wp-color-body: rgba(25, 25, 23, .7);
  --wp-color-chart-label: rgba(25, 25, 23, .55);
  --wp-color-metadata: rgba(25, 25, 23, .45);
  --wp-color-divider: rgba(25, 25, 23, .25);
  --wp-color-construction: rgba(25, 25, 23, .12);
  --wp-color-focus: #C0392B;
  --wp-color-focus-secondary: rgba(192, 57, 43, .85);
  --wp-color-focus-peripheral: rgba(192, 57, 43, .65);
  --wp-color-data-1: rgba(25, 25, 23, .12);
  --wp-color-data-2: rgba(25, 25, 23, .20);
  --wp-color-data-3: rgba(25, 25, 23, .28);
  --wp-color-data-4: rgba(25, 25, 23, .36);
  --wp-color-data-5: rgba(25, 25, 23, .45);
  --wp-color-data-6: rgba(25, 25, 23, .55);
  --wp-private-ink-60: rgba(25, 25, 23, .6);
  --wp-private-ink-30: rgba(25, 25, 23, .3);
}

:root[data-theme-preset="scheme-k-hermes"] {
  --wp-theme-preset-id: scheme-k-hermes;
  --wp-theme-default-typography-mode: mixed;
  --wp-color-surface-canvas: #FFFFFF;
  --wp-color-surface-recessed: #FFFFFF;
  --wp-color-surface-panel: #FFFFFF;
  --wp-color-primary: #1A1A1A;
  --wp-color-functional: #D95E00;
  --wp-color-body: rgba(26, 26, 26, .7);
  --wp-color-chart-label: rgba(26, 26, 26, .55);
  --wp-color-metadata: rgba(26, 26, 26, .45);
  --wp-color-divider: rgba(26, 26, 26, .20);
  --wp-color-construction: rgba(217, 94, 0, .12);
  --wp-color-focus: #D95E00;
  --wp-color-focus-secondary: #B24D00;
  --wp-color-focus-peripheral: #8F3900;
  --wp-color-data-1: #F7DFCC;
  --wp-color-data-2: #F3CBAD;
  --wp-color-data-3: #EEB88F;
  --wp-color-data-4: #EAA570;
  --wp-color-data-5: #E59252;
  --wp-color-data-6: #E17E33;
  --wp-private-ink-60: rgba(26, 26, 26, .6);
  --wp-private-ink-30: rgba(26, 26, 26, .3);
  --wp-private-focus-text-small: #B24D00;
  --wp-private-identity-accent: #D95E00;
}

:root[data-theme-preset="scheme-l-klein"] {
  --wp-theme-preset-id: scheme-l-klein;
  --wp-theme-default-typography-mode: mixed;
  --wp-color-surface-canvas: #FFFFFF;
  --wp-color-surface-recessed: #FFFFFF;
  --wp-color-surface-panel: #FFFFFF;
  --wp-color-primary: #1A1A1A;
  --wp-color-functional: #002FA7;
  --wp-color-body: rgba(26, 26, 26, .7);
  --wp-color-chart-label: rgba(26, 26, 26, .55);
  --wp-color-metadata: rgba(26, 26, 26, .45);
  --wp-color-divider: rgba(26, 26, 26, .20);
  --wp-color-construction: rgba(0, 47, 167, .12);
  --wp-color-focus: #002FA7;
  --wp-color-focus-secondary: #1B44B8;
  --wp-color-focus-peripheral: #3B63CC;
  --wp-color-data-1: #DBE2F3;
  --wp-color-data-2: #C7D1EC;
  --wp-color-data-3: #ADBCE3;
  --wp-color-data-4: #94A8DA;
  --wp-color-data-5: #7A93D1;
  --wp-color-data-6: #617EC8;
  --wp-private-ink-60: rgba(26, 26, 26, .6);
  --wp-private-ink-30: rgba(26, 26, 26, .3);
  --wp-private-focus-text-small: #002FA7;
  --wp-private-identity-accent: #002FA7;
}

:root[data-typography-mode="all-serif"] {
  --wp-weight-regular: 500;
  --wp-weight-strong: 700;
}

:root[data-typography-mode="all-serif"] .slide:is([data-primary-type-role="display"], [data-primary-type-role="hero"], [data-primary-type-role="title"], [data-primary-type-role="heading"]) [data-primary-text] {
  font-family: var(--font-serif-family) !important;
}

:root[data-typography-mode="all-serif"] .slide :is(text, tspan):is([font-size*="subheading"], [font-size*="emphasis"], [font-size*="heading"], [font-size*="title"], [font-size*="hero"], [font-size*="display"]) {
  font-family: var(--font-serif-family) !important;
  font-weight: 700 !important;
}

/* 字面 300 重映射到字体档常规字重（不带 !important，让标题档的粗宋优先）。 */
:root[data-typography-mode="all-serif"] .slide :is(text, tspan)[font-weight="300"] {
  font-weight: var(--wp-weight-regular);
}

:root[data-typography-mode="mixed"] {
  --wp-weight-regular: 400;
  --wp-weight-strong: 700;
}

:root[data-typography-mode="mixed"] .slide:is([data-primary-type-role="display"], [data-primary-type-role="hero"], [data-primary-type-role="title"], [data-primary-type-role="heading"]) [data-primary-text] {
  font-family: var(--font-serif-family) !important;
}

:root[data-typography-mode="mixed"] .slide :is(text, tspan):is([font-size*="subheading"], [font-size*="emphasis"], [font-size*="heading"], [font-size*="title"], [font-size*="hero"], [font-size*="display"]) {
  font-family: var(--font-serif-family) !important;
  font-weight: 700 !important;
}

:root[data-typography-mode="mixed"] {
  --wp-private-typography-large-emphasis-min: 24;
}

:root[data-typography-mode="mixed"] .slide [data-typography-emphasis-size="large"]:not(code):not(pre):not(.mono):not([data-text-kind="number"]):not([data-text-kind="meta"]):not([data-text-kind="source"]):not([data-text-kind="furniture"]) {
  font-family: var(--font-serif-family) !important;
}

/* 字面 300 重映射到字体档常规字重（不带 !important，让标题档的粗宋优先）。 */
:root[data-typography-mode="mixed"] .slide :is(text, tspan)[font-weight="300"] {
  font-weight: var(--wp-weight-regular);
}

/* 斜线纹理与灰纸填充抬白：卡片把填充写在表现属性上，这里按属性值接管， */
/* 图形层次交给加粗后的墨色线框。 */
:root[data-theme-preset="scheme-k-hermes"] .slide [fill^="url(#"],
:root[data-theme-preset="scheme-k-hermes"] .slide [fill="var(--paper)"] {
  fill: var(--wp-color-surface-panel);
}

/* 线条整体加粗一号：同时处理 .7 与 0.7 两种等价值。 */
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".4"] { stroke-width: .5; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.4"] { stroke-width: 0.5; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".5"] { stroke-width: .6; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.5"] { stroke-width: 0.6; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".55"] { stroke-width: .65; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.55"] { stroke-width: 0.65; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".6"] { stroke-width: .7; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.6"] { stroke-width: 0.7; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".65"] { stroke-width: .75; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.65"] { stroke-width: 0.75; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".7"] { stroke-width: .8; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.7"] { stroke-width: 0.8; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".75"] { stroke-width: .85; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.75"] { stroke-width: 0.85; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".8"] { stroke-width: .9; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.8"] { stroke-width: 0.9; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".85"] { stroke-width: .95; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.85"] { stroke-width: 0.95; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width=".9"] { stroke-width: 1; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="0.9"] { stroke-width: 1; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1"] { stroke-width: 1.1; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.05"] { stroke-width: 1.15; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.1"] { stroke-width: 1.2; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.15"] { stroke-width: 1.25; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.2"] { stroke-width: 1.3; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.25"] { stroke-width: 1.35; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.3"] { stroke-width: 1.4; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.4"] { stroke-width: 1.5; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.5"] { stroke-width: 1.6; }
:root[data-theme-preset="scheme-k-hermes"] .slide [stroke-width="1.6"] { stroke-width: 1.8; }

:root[data-theme-preset="scheme-k-hermes"] {
  --wp-icon-main-width: 1.3;
  --wp-icon-detail-width: 0.9;
  --wp-icon-hairline-width: 0.65;
  --wp-icon-emphasis-width: 1.7;
}

:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg[data-icon-source] {
  color: var(--wp-private-identity-accent);
}

/* 图标的品牌色必须实色落地：registry 的 .80/.55/.35 透明度阶梯是为
   中性墨色设计的，套在饱和色上会把品牌色稀释成浑浊的浅色，层次改由
   registry 已有的线宽差承担。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg[data-icon-source] * {
  opacity: 1;
}

:root[data-theme-preset="scheme-k-hermes"].accent .slide :is(text, tspan)[id*="focus"]:not([id="focus-caption"]) {
  fill: var(--wp-private-focus-text-small);
}

:root[data-theme-preset="scheme-k-hermes"].accent .slide :is(span, div)[id*="focus"]:not([id="focus-caption"]) {
  color: var(--wp-private-focus-text-small);
}

:root[data-theme-preset="scheme-k-hermes"].accent .slide :is(text, tspan)[id*="focus"]:not([id="focus-caption"]):is([font-size*="subheading"], [font-size*="caption"], [font-size*="emphasis"], [font-size*="heading"], [font-size*="metric"], [font-size*="title"], [font-size*="hero"], [font-size*="display"], [font-size*="particle"]) {
  fill: var(--wp-color-focus);
}

:root[data-theme-preset="scheme-k-hermes"].accent .slide :is([id*="focus"][id$="-dot"], [id*="focus"][id$="-marker"], [id*="focus"][id$="-core"]) {
  fill: var(--wp-color-focus);
}

:root[data-theme-preset="scheme-k-hermes"].accent .slide :is([id*="focus"][id$="-check"], [id*="focus"][id$="-arrow"], [id*="focus"][id$="-badge"]) {
  stroke: var(--wp-color-focus);
}

/* ===== 默认色接管（全橙/全蓝）===== */
/* 线稿接管：形状元素的墨色 stroke 统一投品牌身份色，层次交给 */
/* 卡片原有的 opacity / stroke-width 阶梯。分割线、纸色线、echarts 不在接管范围。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-70)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-55)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-30)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-color-primary)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-color-functional)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--pi-ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--pi-ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--pi-ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-60)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-55)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-30)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-70)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-55)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="currentColor"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="color-mix(in srgb, var(--ink) 82%, transparent)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-70)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-color-primary)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-color-functional)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-60)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-70)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="currentColor"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="color-mix(in srgb, var(--ink) 82%, transparent)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]) {
  stroke: var(--wp-private-identity-accent);
}

:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="color-mix(in srgb, var(--ink) 65%, transparent)"] {
  stroke: var(--wp-color-data-5);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke^="url(#"] {
  stroke: var(--wp-color-data-4);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="color-mix(in srgb, var(--ink) 32%, transparent)"] {
  stroke: var(--wp-color-data-2);
}

/* 实心填充接管：墨色 fill 按浓淡映射焦点色/data 阶梯。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="currentColor"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-color-primary)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-color-functional)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--pi-ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--pi-ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink-80)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="color-mix(in srgb, var(--ink) 82%, transparent)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="currentColor"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-color-primary)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-color-functional)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="color-mix(in srgb, var(--ink) 82%, transparent)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-private-identity-accent);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-70)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-70)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-6);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-60)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-60)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-60)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-60)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-5);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-55)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink-55)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-4);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--pi-ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink-45)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-3);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-30)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-30)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-2);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="color-mix(in srgb, var(--ink) 15%, transparent)"],
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="color-mix(in srgb, var(--ink) 15%, transparent)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-1);
}

/* atlas 组件把颜色写在行内 style 上，表现属性选择器够不着；容器内按 */
/* 元素类型整体接管，放行分割线/纸色/none。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) :is([data-theme-adapter-id="paper-ink.atlas"], .swiss-card) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)
:not([stroke="none"])
:not([stroke="var(--wp-adapter-atlas-ink-25)"])
:not([stroke="var(--wp-adapter-atlas-paper)"])
:not([stroke="#fff"]):not([stroke="#ffffff"]) {
  stroke: var(--wp-private-identity-accent) !important;
}

:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) :is([data-theme-adapter-id="paper-ink.atlas"], .swiss-card) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)
:not([fill="none"]):not([fill="#fff"]):not([fill="#ffffff"]):not([fill="white"])
:not([fill^="rgb(255"]):not([fill^="rgba(255"])
:not([fill="var(--wp-adapter-atlas-paper)"])
:not([fill^="rgba(217"]):not([fill^="url(#"]) {
  fill: var(--wp-private-identity-accent) !important;
}

/* 帧内 CSS 画的 swiss 图形（Q1 韦恩圆）：border 与子节点斜纹 */
/* 都不是 SVG 表现属性，按类名定向接管为默认色。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) .swiss-card .venn-three .circle {
  border-color: var(--wp-private-identity-accent) !important;
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) .swiss-card .venn-three .venn-three__texture {
  background: var(--wp-private-identity-accent) !important;
}

/* HTML 侧图形同步落默认色。文本不在这些定向选择器内。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) .dot {
  background: var(--wp-private-identity-accent);
}
/* K3 KPI 母板的浅分隔线与顶边同属指标横带图形；保持原有 30% 层级， */
/* 但色相随主题，避免只剩顶边上色、内部与底边仍是中性灰。 */
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) .pi-metric-strip {
  border-top-color: var(--wp-private-identity-accent);
  border-bottom-color: color-mix(in srgb, var(--wp-private-identity-accent) 30%, transparent);
}
:root[data-theme-preset="scheme-k-hermes"] :is(.slide, [data-wp-palette-scope="component"]) .pi-metric-strip [data-repeat-unit="metric"] + [data-repeat-unit="metric"] {
  border-left-color: color-mix(in srgb, var(--wp-private-identity-accent) 30%, transparent);
}

/* 斜线纹理与灰纸填充抬白：卡片把填充写在表现属性上，这里按属性值接管， */
/* 图形层次交给加粗后的墨色线框。 */
:root[data-theme-preset="scheme-l-klein"] .slide [fill^="url(#"],
:root[data-theme-preset="scheme-l-klein"] .slide [fill="var(--paper)"] {
  fill: var(--wp-color-surface-panel);
}

/* 线条整体加粗一号：同时处理 .7 与 0.7 两种等价值。 */
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".4"] { stroke-width: .5; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.4"] { stroke-width: 0.5; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".5"] { stroke-width: .6; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.5"] { stroke-width: 0.6; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".55"] { stroke-width: .65; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.55"] { stroke-width: 0.65; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".6"] { stroke-width: .7; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.6"] { stroke-width: 0.7; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".65"] { stroke-width: .75; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.65"] { stroke-width: 0.75; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".7"] { stroke-width: .8; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.7"] { stroke-width: 0.8; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".75"] { stroke-width: .85; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.75"] { stroke-width: 0.85; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".8"] { stroke-width: .9; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.8"] { stroke-width: 0.9; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".85"] { stroke-width: .95; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.85"] { stroke-width: 0.95; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width=".9"] { stroke-width: 1; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="0.9"] { stroke-width: 1; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1"] { stroke-width: 1.1; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.05"] { stroke-width: 1.15; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.1"] { stroke-width: 1.2; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.15"] { stroke-width: 1.25; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.2"] { stroke-width: 1.3; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.25"] { stroke-width: 1.35; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.3"] { stroke-width: 1.4; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.4"] { stroke-width: 1.5; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.5"] { stroke-width: 1.6; }
:root[data-theme-preset="scheme-l-klein"] .slide [stroke-width="1.6"] { stroke-width: 1.8; }

:root[data-theme-preset="scheme-l-klein"] {
  --wp-icon-main-width: 1.3;
  --wp-icon-detail-width: 0.9;
  --wp-icon-hairline-width: 0.65;
  --wp-icon-emphasis-width: 1.7;
}

:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg[data-icon-source] {
  color: var(--wp-private-identity-accent);
}

/* 图标的品牌色必须实色落地：registry 的 .80/.55/.35 透明度阶梯是为
   中性墨色设计的，套在饱和色上会把品牌色稀释成浑浊的浅色，层次改由
   registry 已有的线宽差承担。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg[data-icon-source] * {
  opacity: 1;
}

:root[data-theme-preset="scheme-l-klein"].accent .slide :is(text, tspan)[id*="focus"]:not([id="focus-caption"]) {
  fill: var(--wp-private-focus-text-small);
}

:root[data-theme-preset="scheme-l-klein"].accent .slide :is(span, div)[id*="focus"]:not([id="focus-caption"]) {
  color: var(--wp-private-focus-text-small);
}

:root[data-theme-preset="scheme-l-klein"].accent .slide :is(text, tspan)[id*="focus"]:not([id="focus-caption"]):is([font-size*="subheading"], [font-size*="caption"], [font-size*="emphasis"], [font-size*="heading"], [font-size*="metric"], [font-size*="title"], [font-size*="hero"], [font-size*="display"], [font-size*="particle"]) {
  fill: var(--wp-color-focus);
}

:root[data-theme-preset="scheme-l-klein"].accent .slide :is([id*="focus"][id$="-dot"], [id*="focus"][id$="-marker"], [id*="focus"][id$="-core"]) {
  fill: var(--wp-color-focus);
}

:root[data-theme-preset="scheme-l-klein"].accent .slide :is([id*="focus"][id$="-check"], [id*="focus"][id$="-arrow"], [id*="focus"][id$="-badge"]) {
  stroke: var(--wp-color-focus);
}

/* ===== 默认色接管（全橙/全蓝）===== */
/* 线稿接管：形状元素的墨色 stroke 统一投品牌身份色，层次交给 */
/* 卡片原有的 opacity / stroke-width 阶梯。分割线、纸色线、echarts 不在接管范围。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-70)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-55)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--ink-30)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-color-primary)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-color-functional)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--pi-ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--pi-ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--pi-ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-60)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-55)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-pi-ink-30)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-70)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-55)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="var(--wp-adapter-atlas-ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="currentColor"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="color-mix(in srgb, var(--ink) 82%, transparent)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-70)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-color-primary)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-color-functional)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-60)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-pi-ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-70)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="var(--wp-adapter-atlas-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="currentColor"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[stroke="color-mix(in srgb, var(--ink) 82%, transparent)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([stroke]) {
  stroke: var(--wp-private-identity-accent);
}

:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="color-mix(in srgb, var(--ink) 65%, transparent)"] {
  stroke: var(--wp-color-data-5);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke^="url(#"] {
  stroke: var(--wp-color-data-4);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[stroke="color-mix(in srgb, var(--ink) 32%, transparent)"] {
  stroke: var(--wp-color-data-2);
}

/* 实心填充接管：墨色 fill 按浓淡映射焦点色/data 阶梯。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="currentColor"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-color-primary)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-color-functional)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--pi-ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--pi-ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink-80)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="color-mix(in srgb, var(--ink) 82%, transparent)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="currentColor"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-color-primary)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-color-functional)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink-80)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="color-mix(in srgb, var(--ink) 82%, transparent)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-private-identity-accent);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-70)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-70)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-6);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-60)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-60)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-60)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-60)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-5);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-55)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink-55)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink-55)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-4);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--pi-ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-atlas-ink-45)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-atlas-ink-45)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-3);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--ink-30)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="var(--wp-adapter-pi-ink-30)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]),
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="var(--wp-adapter-pi-ink-30)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-2);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)[fill="color-mix(in srgb, var(--ink) 15%, transparent)"],
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) svg g[fill="color-mix(in srgb, var(--ink) 15%, transparent)"] :is(line, path, circle, rect, ellipse, polygon, polyline, use):not([fill]) {
  fill: var(--wp-color-data-1);
}

/* atlas 组件把颜色写在行内 style 上，表现属性选择器够不着；容器内按 */
/* 元素类型整体接管，放行分割线/纸色/none。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) :is([data-theme-adapter-id="paper-ink.atlas"], .swiss-card) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)
:not([stroke="none"])
:not([stroke="var(--wp-adapter-atlas-ink-25)"])
:not([stroke="var(--wp-adapter-atlas-paper)"])
:not([stroke="#fff"]):not([stroke="#ffffff"]) {
  stroke: var(--wp-private-identity-accent) !important;
}

:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) :is([data-theme-adapter-id="paper-ink.atlas"], .swiss-card) svg :is(line, path, circle, rect, ellipse, polygon, polyline, use)
:not([fill="none"]):not([fill="#fff"]):not([fill="#ffffff"]):not([fill="white"])
:not([fill^="rgb(255"]):not([fill^="rgba(255"])
:not([fill="var(--wp-adapter-atlas-paper)"])
:not([fill^="rgba(217"]):not([fill^="url(#"]) {
  fill: var(--wp-private-identity-accent) !important;
}

/* 帧内 CSS 画的 swiss 图形（Q1 韦恩圆）：border 与子节点斜纹 */
/* 都不是 SVG 表现属性，按类名定向接管为默认色。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) .swiss-card .venn-three .circle {
  border-color: var(--wp-private-identity-accent) !important;
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) .swiss-card .venn-three .venn-three__texture {
  background: var(--wp-private-identity-accent) !important;
}

/* HTML 侧图形同步落默认色。文本不在这些定向选择器内。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) .dot {
  background: var(--wp-private-identity-accent);
}
/* K3 KPI 母板的浅分隔线与顶边同属指标横带图形；保持原有 30% 层级， */
/* 但色相随主题，避免只剩顶边上色、内部与底边仍是中性灰。 */
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) .pi-metric-strip {
  border-top-color: var(--wp-private-identity-accent);
  border-bottom-color: color-mix(in srgb, var(--wp-private-identity-accent) 30%, transparent);
}
:root[data-theme-preset="scheme-l-klein"] :is(.slide, [data-wp-palette-scope="component"]) .pi-metric-strip [data-repeat-unit="metric"] + [data-repeat-unit="metric"] {
  border-left-color: color-mix(in srgb, var(--wp-private-identity-accent) 30%, transparent);
}

/* WISE_PPT_THEME_ASSETS_END */

/* 页面帧不播放 swiss 组件的入场动画：动画属于组件画册的展示行为，
   成页（帧/deck 页）是静帧。仅作用于 .slide 内的 swiss 卡（Q1/S1）。 */
.slide .swiss-card,
.slide .swiss-card * {
  animation: none !important;
}

:root {
  /* Paper Ink component roles point inward to the public semantic contract. */
  --paper: var(--wp-color-surface-canvas);
  --paper-deep: var(--wp-color-surface-recessed);
  --paper-panel: var(--wp-color-surface-panel);
  --ink: var(--wp-color-primary);
  --ink-80: var(--wp-color-functional);
  --ink-70: var(--wp-color-body);
  --ink-55: var(--wp-color-chart-label);
  --ink-45: var(--wp-color-metadata);
  --ink-25: var(--wp-color-divider);
  --ink-12: var(--wp-color-construction);
  /* 主题内部角色统一映射到公开语义 token。 */
  --accent-red: var(--wp-color-focus);
  --accent-red-85: var(--wp-color-focus-secondary);
  --accent-red-65: var(--wp-color-focus-peripheral);
  --data-ramp-1: var(--wp-color-data-1);
  --data-ramp-2: var(--wp-color-data-2);
  --data-ramp-3: var(--wp-color-data-3);
  --data-ramp-4: var(--wp-color-data-4);
  --data-ramp-5: var(--wp-color-data-5);
  --data-ramp-6: var(--wp-color-data-6);

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-14: 56px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-30: 120px;
  --space-40: 160px;
  --shadow-soft: 0 0 4px color-mix(in srgb, var(--ink) 2%, transparent);
  --shadow-specimen: 2px 2px 0 color-mix(in srgb, var(--ink) 4%, transparent);

  --type-display-mark: 300px;
  --type-particle-sample: 240px;
  --type-display: 96px;
  --type-hero: 76px;
  --type-title: 60px;
  --type-metric: 52px;
  --type-heading: 40px;
  --type-emphasis: 36px;
  --type-caption: 33px;
  --type-subheading: 26px;
  --type-body: 22px;
  --type-body-small: 18px;
  --type-micro-secondary: 16px;
  --type-label: 15px;
  --type-meta: 13px;

  --font-serif-family: 'Han Serif', 'Songti SC', serif;
  --font-sans-family: 'Han Sans', 'PingFang SC', sans-serif;
  --font-sans-light-family: 'Han Sans Light', 'PingFang SC', sans-serif;
  --font-mono-family: 'Courier Prime', Menlo, monospace;
  --font-brush-family: 'LXGW WenKai', 'Xingkai SC', cursive;
  --serif: var(--font-serif-family);
  --sans: var(--font-sans-family);
  --mono: var(--font-mono-family);
  --brush: var(--font-brush-family);

  /* --wp-font-* 走可翻转的 --serif/--sans 角色，data-typography-mode 三档
     （all-sans / all-serif / mixed）才真正到达组件、图表与样张。 */
  --wp-font-serif: var(--serif);
  --wp-font-sans: var(--sans);
  --wp-font-mono: var(--font-mono-family);
  --wp-font-brush: var(--font-brush-family);

  /* 原始纸墨只有 Light 一个字重，标题层级只靠字号；其他字体档可覆盖两档。 */
  --wp-weight-regular: 300;
  --wp-weight-strong: 300;

  /* Icon registry: F4/A7/E6-style line and ink hierarchy on 64 units. */
  --wp-icon-main-width: 1.2;
  --wp-icon-main-opacity: .80;
  --wp-icon-detail-width: .8;
  --wp-icon-detail-opacity: .55;
  --wp-icon-hairline-width: .55;
  --wp-icon-hairline-opacity: .35;
  --wp-icon-emphasis-width: 1.6;
  --wp-icon-emphasis-opacity: .90;
  --wp-icon-ink-dot-opacity: .70;

  /* Private adapter roles keep Native and Atlas component sources free of
     literal colors. */
  --wp-adapter-pi-paper: var(--wp-color-surface-canvas);
  --wp-adapter-pi-paper-deep: var(--wp-color-surface-recessed);
  --wp-adapter-pi-paper-panel: var(--wp-color-surface-panel);
  --wp-adapter-pi-ink: var(--wp-color-primary);
  --wp-adapter-pi-ink-80: var(--wp-color-functional);
  --wp-adapter-pi-ink-70: var(--wp-color-body);
  --wp-adapter-pi-ink-60: var(--wp-private-ink-60);
  --wp-adapter-pi-ink-55: var(--wp-color-chart-label);
  --wp-adapter-pi-ink-45: var(--wp-color-metadata);
  --wp-adapter-pi-ink-30: var(--wp-private-ink-30);
  --wp-adapter-pi-weight-regular: var(--wp-weight-regular);
  --wp-adapter-pi-weight-strong: var(--wp-weight-strong);
  --wp-adapter-pi-data-1: var(--wp-color-data-1);
  --wp-adapter-pi-data-2: var(--wp-color-data-2);
  --wp-adapter-pi-data-3: var(--wp-color-data-3);
  --wp-adapter-pi-data-4: var(--wp-color-data-4);
  --wp-adapter-pi-data-5: var(--wp-color-data-5);
  --wp-adapter-pi-data-6: var(--wp-color-data-6);
  --wp-adapter-pi-font-sans: var(--wp-font-sans);
  --wp-adapter-pi-font-serif: var(--wp-font-serif);
  --wp-adapter-pi-font-mono: var(--wp-font-mono);
  --wp-adapter-pi-font-brush: var(--wp-font-brush);

  --wp-adapter-atlas-paper: var(--wp-color-surface-canvas);
  --wp-adapter-atlas-paper-deep: var(--wp-color-surface-recessed);
  --wp-adapter-atlas-paper-panel: var(--wp-color-surface-panel);
  --wp-adapter-atlas-ink: var(--wp-color-primary);
  --wp-adapter-atlas-ink-80: var(--wp-color-functional);
  --wp-adapter-atlas-ink-70: var(--wp-color-body);
  --wp-adapter-atlas-ink-55: var(--wp-color-chart-label);
  --wp-adapter-atlas-ink-45: var(--wp-color-metadata);
  --wp-adapter-atlas-ink-25: var(--wp-color-divider);
  --wp-adapter-atlas-ink-12: var(--wp-color-construction);
  /* Atlas 与 Native 共用同一条数据墨阶。 */
  --wp-adapter-atlas-data-1: var(--data-ramp-1);
  --wp-adapter-atlas-data-2: var(--data-ramp-2);
  --wp-adapter-atlas-data-3: var(--data-ramp-3);
  --wp-adapter-atlas-data-4: var(--data-ramp-4);
  --wp-adapter-atlas-data-5: var(--data-ramp-5);
  --wp-adapter-atlas-data-6: var(--data-ramp-6);
  --wp-adapter-atlas-font-sans: "Wise Han Sans SC";
  --wp-adapter-atlas-font-serif: "Wise Han Sans SC";
  --wp-adapter-atlas-font-mono: "Courier Prime";
  --wp-adapter-atlas-font-brush: "LXGW WenKai";
}

[data-typography-mode="mixed"] {
  --serif: var(--font-serif-family);
  --sans: var(--font-sans-family);
}

[data-typography-mode="all-sans"] {
  --serif: var(--font-sans-light-family);
  --sans: var(--font-sans-light-family);
}

[data-typography-mode="all-serif"] {
  --serif: var(--font-serif-family);
  --sans: var(--font-serif-family);
}

/* mono and brush deliberately remain fixed in all three typography modes. */
