/* ============================================================
   press.css — "白纸黑字" 全站设计系统 (方案E, 2026-09-03 批0)
   出处: 竞标 mock_e (Ray 终审胜出)。瑞士网格 / 金融出版风。
   规则见 PRESS_DESIGN.md。深色只保留两处: ①页尾风险披露条(.p-foot)
   ②Discord/X 的 PNG 卡片体系(社交流深色语言, 不归本系统管)。
   曲线组件: 白底单色墨线; 策略色只出现在行首色点(.p-dot)与徽章。
   EN/ZH 双栈内建: body.press=EN 默认, body.press.zh=中文出版栈+行高微调。
   ============================================================ */
/* ============================================================
   字体自托管 (2026-09-04 Ray: 思源宋体出版风, 零外部CDN)
   Noto Serif SC 400/700/900 子集(全站实抓+GB2312一级3755+全角标点,
   25.1MB→1.57MB/档) + IBM Plex Mono 400/500 (22KB/档), font-display:swap
   ============================================================ */
@font-face{font-family:'Noto Serif SC';font-weight:400;font-display:swap;
  src:url('/static/fonts/NotoSerifSC-Regular.woff2') format('woff2')}
@font-face{font-family:'Noto Serif SC';font-weight:700;font-display:swap;
  src:url('/static/fonts/NotoSerifSC-Bold.woff2') format('woff2')}
@font-face{font-family:'Noto Serif SC';font-weight:900;font-display:swap;
  src:url('/static/fonts/NotoSerifSC-Black.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:400;font-display:swap;
  src:url('/static/fonts/IBMPlexMono-Regular.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:500;font-display:swap;
  src:url('/static/fonts/IBMPlexMono-Medium.woff2') format('woff2')}

:root{
  /* 色板 */
  --p-paper:#F7F4EE;         /* 米白纸面 */
  --p-ink:#1a1815;           /* 近黑主字/规则线 */
  --p-ink2:#4a453d;          /* 次级正文 */
  --p-mut:#6e675c;           /* 弱化说明 */
  --p-cap:#736c60;           /* 眉题/列头 (对比度终校 2026-09-03: 8a8376→736c60 ≥4.5) */
  --p-rule:#cfc9bd;          /* 细规则线 */
  --p-rule2:#e4dfd4;         /* 卡边/徽章底 */
  --p-white:#ffffff;         /* 曲线画布 */
  --p-foot-bg:#1a1815;       /* 页尾底 (日=近黑) */
  --p-foot-ink:#b3aca0;      /* 页尾正文 (深底上) */
  --p-foot-hi:#F7F4EE;       /* 页尾强调字 */
  /* 五策略色 — 仅限 .p-dot 色点与徽章, 不得用于文字/曲线 */
  --p-fire:#d75c5c; --p-wood:#39ae64; --p-water:#5588dc;
  --p-gold:#ddb242; --p-terra:#9aa0a6;
  /* 盈亏数字色 → 语义变量接管 (2026-09-04c: zh红盈绿亏/en绿盈红亏, 见文件尾 token) */
  --p-pos:var(--c-profit); --p-neg:var(--c-loss);
  /* 字体栈 */
  --p-serif-en:'Source Serif 4','Source Serif Pro',Georgia,'Times New Roman',serif;
  --p-serif-zh:'Noto Serif SC','Songti SC',serif;   /* 自托管思源宋 2026-09-04 */
  --p-sans-en:'Segoe UI','Noto Sans SC',sans-serif;
  --p-sans-zh:'Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
  --p-num:'IBM Plex Mono','JetBrains Mono',Consolas,monospace;
  --p-mono:'IBM Plex Mono','JetBrains Mono',Consolas,monospace;
  /* 版心 (12列网格基准) */
  --p-maxw:1140px;
}
*{margin:0;padding:0;box-sizing:border-box}
body.press{background:var(--p-paper);color:var(--p-ink);font-family:var(--p-sans-en)}
/* font_upgrade 修正 2026-09-04b: zh 标题+正文全宋 (spec 原意), sans 栈仅兜底
   ⚠ 铁律: 字体只在 :root 一处定义, 主题层([data-theme])只许动颜色变量,
   永远不许在 dark/light 层里声明 font-family / 字体变量 */
body.press.zh{font-family:var(--p-serif-zh)}
.p-serif{font-family:var(--p-serif-en)}
body.press.zh .p-serif{font-family:var(--p-serif-zh)}
.p-mono{font-family:var(--p-num);font-variant-numeric:tabular-nums}
.p-wrap{max-width:var(--p-maxw);margin:0 auto;padding:0 30px}
.p-grid12{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}

/* ---------- 页头 ---------- */
/* nav_icon_fix 2026-09-04: 容器 flex+center 统管垂直对齐, 拆除子项 hack */
.p-head{display:flex;justify-content:space-between;align-items:center;padding:20px 0 14px;border-bottom:2px solid var(--p-ink)}
.p-brand{font-weight:800;font-size:17px;letter-spacing:.02em;color:var(--p-ink);text-decoration:none}
.p-nav{display:inline-flex;align-items:center}
.p-nav a{color:var(--p-ink);text-decoration:none;font-size:13px;margin-left:22px}
.p-nav a:hover{text-decoration:underline}
/* 右上角 Discord/X 圆钮 (2026-09-04 恢复导航原位; 28px 描边, 44px 热区) */
.p-icbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;
 box-sizing:content-box;width:28px;height:28px;padding:8px;
 color:var(--p-ink);text-decoration:none!important;
 font-size:15px;line-height:1}
.p-nav a.p-icbtn{margin-left:6px}
.p-icbtn svg{width:15px;height:15px;display:block}
.p-icbtn::after{content:"";position:absolute;inset:8px;border:1px solid var(--p-ink);
 border-radius:50%;pointer-events:none;z-index:-1}
.p-icbtn:hover{color:var(--p-paper)}
.p-icbtn:hover::after{background:var(--p-ink)}
html[data-theme="dark"] .p-icbtn{color:#8A8377}
html[data-theme="dark"] .p-icbtn::after{border-color:#8A8377}
html[data-theme="dark"] .p-icbtn:hover{color:#14110D}
html[data-theme="dark"] .p-icbtn:hover::after{background:var(--p-goldink);
 border-color:var(--p-goldink)}
@media(max-width:700px){.p-nav a.p-icbtn{margin-left:0}}

/* 375 汉堡 (details 零JS); 语言钮 #wx-langsw 常显于汉堡旁 */
.p-burger{display:none;position:relative;margin-left:16px}
.p-burger summary{list-style:none;cursor:pointer;font-size:19px;line-height:1;user-select:none}
.p-burger summary::-webkit-details-marker{display:none}
.p-burger .bx{position:absolute;right:0;top:calc(100% + 8px);z-index:120;background:var(--p-paper);
 border:2px solid var(--p-ink);padding:14px 18px;min-width:190px;box-shadow:4px 4px 0 rgba(26,24,21,.15)}
.p-burger .bx a{display:block;margin:0 0 12px;font-size:14px}

/* ---------- Hero ---------- */
.p-hero{padding:64px 0 46px;border-bottom:1px solid var(--p-rule)}
.p-hero .eyebrow{grid-column:1/-1;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--p-cap)}
.p-hero h1{grid-column:1/9;font-size:54px;line-height:1.18;font-weight:700}
.p-hero .lede{grid-column:1/8;font-size:17px;line-height:1.75;color:var(--p-ink2);margin-top:16px}
body.press.zh .p-hero .lede{line-height:1.9}
/* —— 中文出版层级 (font_upgrade 2026-09-04): h1=900+.02em, h2/h3=700, 正文=400/1.9 —— */
body.press.zh .p-hero h1{font-weight:900;letter-spacing:.02em}
body.press.zh .p-sechead h2,body.press.zh .p-notesec h3{font-weight:700}
body.press.zh .p-line,body.press.zh .p-note,body.press.zh .p-notesec p,
body.press.zh .p-riskpara p,body.press.zh .p-dnote{line-height:1.9;font-weight:400}
.p-ctas{grid-column:1/8;margin-top:22px}

/* ---------- 按钮 ---------- */
.p-btn{display:inline-block;padding:11px 24px;font-size:14px;font-weight:700;text-decoration:none;margin-right:12px}
.p-btn.pr{background:var(--p-ink);color:var(--p-paper)}
.p-btn.se{border:1px solid var(--p-ink);color:var(--p-ink)}

/* ---------- 节标题 ---------- */
.p-sechead{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;padding:40px 0 10px}
.p-sechead h2{grid-column:1/7;font-size:28px}
.p-sechead .note{grid-column:7/13;font-size:12px;color:var(--p-mut);line-height:1.7;align-self:end}
body.press.zh .p-sechead .note{line-height:1.85}

/* ---------- 研究报告表 (核心组件) ---------- */
.p-table{border-top:2px solid var(--p-ink)}
.p-colhead{display:grid;align-items:center;gap:14px;padding:9px 4px;grid-template-columns:14px 110px 1fr 128px 120px 90px 170px;
 font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--p-cap);border-bottom:1px solid var(--p-ink)}
.p-colhead span:nth-child(4),.p-colhead span:nth-child(5),.p-colhead span:nth-child(6){text-align:right}
.p-row{border-bottom:1px solid var(--p-rule)}
.p-row summary,.p-rowline{list-style:none;cursor:pointer;display:grid;align-items:center;gap:14px;padding:14px 4px;
 grid-template-columns:14px 110px 1fr 128px 120px 90px 170px}
body.press.zh .p-row summary,body.press.zh .p-rowline{padding:16px 4px}
.p-row summary::-webkit-details-marker{display:none}
.p-rowline{cursor:default}
.p-dot{width:10px;height:10px;border-radius:50%;display:inline-block}  /* 2026-09-04c 加大一号 */
.p-name{font-weight:700;font-size:17px}
.p-line{font-size:13px;color:var(--p-mut)}  /* font_upgrade: 描述小字灰阶降一级 ink2→mut */
body.press.zh .p-line{line-height:1.7}
.p-since,.p-eq,.p-pct{font-size:13.5px;text-align:right}
.p-pct{font-weight:700}
.p-badge{display:block;width:fit-content;font-size:9px;background:var(--p-rule2);color:var(--p-mut);border-radius:3px;
 padding:2px 6px;margin-top:4px;font-weight:600;letter-spacing:.03em;white-space:nowrap}
.p-gray{color:#6b7280}
.p-gray .p-line{font-size:12px;color:var(--p-cap);line-height:1.5}
body.press.zh .p-gray .p-line{line-height:1.65}

/* ---------- 曲线 (白底单色墨线) ---------- */
.p-mini{width:160px;height:38px;background:var(--p-white);border:1px solid var(--p-rule2)}
.p-big{width:100%;height:auto;background:var(--p-white);border:1px solid var(--p-rule2)}
/* 墨线规格: stroke #1a1815, 1.5px; 回撤区间阴影用 #1a1815 @ 0.06 alpha 灰 */

/* ---------- 行展开详情 ---------- */
.p-detail{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:8px 4px 22px}
.p-dnote{font-size:12px;color:var(--p-mut);margin-top:6px}
body.press.zh .p-dnote{line-height:1.8}
.p-kv{display:flex;justify-content:space-between;border-bottom:1px dotted var(--p-rule);padding:7px 0;font-size:13.5px}
body.press.zh .p-kv{padding:8px 0}
.p-kv a{color:var(--p-ink)}

/* ---------- 统计行 / 说明段 ---------- */
.p-statline{padding:26px 0;border-bottom:1px solid var(--p-rule);font-size:14px;color:var(--p-ink2);line-height:2}
body.press.zh .p-statline{line-height:2.2}
.p-note{font-size:12px;color:var(--p-mut);line-height:1.8;padding:14px 0}
body.press.zh .p-note{line-height:2}

/* ---------- 数字表 (回测/口径块) ---------- */
.p-numgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:2px solid var(--p-ink)}
.p-num{border-bottom:1px solid var(--p-rule);border-right:1px solid var(--p-rule2);padding:16px 14px}
.p-num:nth-child(4n){border-right:none}
.p-num .k{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--p-cap)}
.p-num .v{font-family:var(--p-mono);font-size:22px;font-weight:700;margin:6px 0 4px}
.p-num .s{font-size:11.5px;color:var(--p-mut);line-height:1.6}
body.press.zh .p-num .s{line-height:1.75}

/* ---------- 页尾 (全站深色仅此一处) ---------- */
.p-foot{background:var(--p-foot-bg);color:var(--p-foot-ink);margin-top:54px;padding:36px 0}
.p-foot .in{max-width:var(--p-maxw);margin:0 auto;padding:0 30px;font-size:12px;line-height:1.9}
body.press.zh .p-foot .in{line-height:2.1}
.p-foot b{color:var(--p-foot-hi)}
.p-foot a{color:var(--p-foot-ink)}
/* 社交链接 (2026-09-04 恢复): 44px 点击热区, 负边距保行高; 日/月同 foot-ink 可见 */
.p-foot .p-social a{display:inline-block;padding:14px 8px;margin:-14px -2px;text-decoration:underline}
.p-foot .p-social a:hover{color:var(--p-foot-hi)}

/* ---------- 批2 详情页组件 ---------- */
.p-ng3{grid-template-columns:repeat(3,1fr)}
.p-ng3 .p-num:nth-child(3n){border-right:none}
.p-ng3 .p-num:nth-child(4n){border-right:1px solid var(--p-rule2)}
.p-num .v.neg{color:var(--p-neg)}
.pos{color:var(--p-pos)}.neg{color:var(--p-neg)}
.p-riskpara{border-left:3px solid var(--p-ink);padding:12px 18px;margin:12px 0;background:var(--p-white)}
.p-riskpara>b{display:block;margin-bottom:6px;font-size:14.5px}
.p-riskpara p{font-size:13.5px;line-height:1.85;color:var(--p-ink2)}
body.press.zh .p-riskpara p{line-height:2}
.p-riskhot{border-left-color:var(--c-alert)}  /* 警示红固定, 不随盈亏语义翻转 */
.p-gtrack{height:8px;background:var(--p-rule2);margin:10px 0;max-width:520px}
.p-gtrack div{height:100%;background:var(--p-ink)}
.p-livegrid{display:grid;grid-template-columns:340px 1fr;gap:30px;align-items:start;margin-top:6px}
.p-bigbox{border:1px solid var(--p-rule2);background:var(--p-white);padding:14px 16px}
.p-bigbox .bh{font-size:13px;font-weight:600;margin-bottom:8px}
.p-lhdr{display:grid;grid-template-columns:1fr 1fr 110px;gap:10px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-cap);padding:6px 0;border-bottom:1px solid var(--p-ink)}
.p-lrow{display:grid;grid-template-columns:1fr 1fr 110px;gap:10px;font-size:13px;padding:7px 0;border-bottom:1px dotted var(--p-rule)}
.p-hrow{display:grid;grid-template-columns:170px 110px 1fr 120px;gap:12px;font-size:13px;padding:9px 4px;border-bottom:1px solid var(--p-rule)}
.p-hrow5{grid-template-columns:170px 100px 90px 1fr 120px}
.p-hhdr{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-cap);border-bottom:1px solid var(--p-ink)}
.p-hbtn{padding:7px 16px;font-size:12.5px;background:none}
.p-hbtn[disabled]{opacity:.35;cursor:default}
@media(max-width:700px){.p-livegrid{grid-template-columns:1fr}
.p-ng3{grid-template-columns:1fr 1fr}
.p-hrow,.p-hrow5{grid-template-columns:1fr 90px;font-size:12px}
.p-hrow span:nth-child(1),.p-hhdr span{display:none}
.p-hrow{display:flex;flex-wrap:wrap;gap:6px 12px}}

/* ---------- 批3 跟单须知 编号节 ---------- */
.p-notesec{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--p-rule)}
.p-notesec .no{font-size:34px;font-weight:700;color:var(--p-cap)}
.p-notesec h3{font-size:20px;margin-bottom:10px}
.p-notesec p{font-size:14px;line-height:1.85;color:var(--p-ink2);margin-bottom:8px}
body.press.zh .p-notesec p{line-height:2}
.p-notesec .p-kv{font-size:13.5px;gap:14px}
.p-notesec .p-kv span:first-child{white-space:nowrap}
@media(max-width:700px){.p-notesec{grid-template-columns:1fr;gap:6px}}

/* ---------- 加入跟单弹窗 (功能件复用 _wx_modal, press 白纸样式) ---------- */
body.press .wx-modal{display:none;position:fixed;inset:0;background:rgba(26,24,21,.5);z-index:200;align-items:center;justify-content:center}
body.press .wx-modal .box{background:var(--p-paper);color:var(--p-ink);border:2px solid var(--p-ink);max-width:380px;width:92%;padding:26px 28px;position:relative}
body.press .wx-x{position:absolute;top:10px;right:16px;font-size:22px;cursor:pointer}
body.press .wx-modal h3{font-size:20px;margin-bottom:6px}
body.press .wx-modal .mt{font-size:13px;color:var(--p-mut);margin-bottom:12px}
body.press .wx-note-modal{display:block;font-size:12.5px;color:var(--p-ink);margin-bottom:14px}
body.press .wx-crow{display:flex;align-items:center;border:1px solid var(--p-rule);padding:9px 12px;margin-top:8px;font-size:13.5px}
body.press .wx-cp{border:1px solid var(--p-ink);background:none;padding:4px 12px;cursor:pointer;font-weight:600}
body.press .wx-toast{display:none;position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--p-ink);color:var(--p-paper);padding:8px 18px;font-size:13px;z-index:300}
/* 切换钮注入款 (i18n 层 wx-langsw): 无深底 nav 时右上浮动款按层默认, 此处仅保底可读 */
body.press #wx-langsw{color:var(--p-ink)}
/* nav_icon_fix: 主题钮融入 flex 居中, 去 vertical-align hack */
.p-nav .wx-themesw{margin-left:18px;vertical-align:baseline;display:inline-flex;align-items:center}

/* ---------- 入口页配置卡移动重排 (portfolio_fix 2026-09-04) ----------
   病灶: inline 4列grid 在窄屏把 1fr 描述列压成逐字竖排。
   桌面(≥768)零改动; <768 纵向堆叠: 标题→徽章→描述整行→CTA块。 */
.p-cfgb-m{display:none}
@media(max-width:767px){
 .p-cfgrow{display:block;padding:14px 0}
 .p-cfgrow>.p-dot{display:none}
 .p-cfgrow .p-name{display:block;font-size:19px}
 .p-cfgrow .p-badge.p-cfgb-m{display:inline-block;margin:8px 0 0}
 .p-cfgrow .p-line{display:block;width:100%;min-width:0;margin-top:8px;
  font-size:13px;line-height:1.75;white-space:normal}
 body.press.zh .p-cfgrow .p-line{line-height:1.85}
 .p-cfgrow .p-cfgb-d{display:none}
 .p-cfgrow .p-cfgcta{display:block;text-align:left!important;
  margin:24px 0 6px}
 .p-cfgrow .p-cfgcta .p-btn{display:block;width:fit-content}
}

/* Terra 移动徽章 (桌面隐藏; 内容=现有 i18n 串) */
.p-tbadge{display:none;font-size:9px;background:var(--p-rule2);color:var(--p-mut);
 border-radius:3px;padding:2px 6px;margin-left:8px;font-weight:600;white-space:nowrap}

/* ---------- 375 响应式 ---------- */
@media(max-width:700px){
 .p-navlinks,.p-head .wx-cta{display:none}
 .p-burger{display:inline-block}
 .p-hero h1{grid-column:1/-1;font-size:34px}
 .p-hero .lede,.p-ctas{grid-column:1/-1}
 .p-sechead h2,.p-sechead .note{grid-column:1/-1}
 .p-colhead{display:none}
 .p-detail{grid-template-columns:1fr}
 .p-numgrid{grid-template-columns:1fr 1fr}
 .p-num:nth-child(2n){border-right:none}
 /* —— E表移动卡 (2026-09-04 Ray): 三行堆叠, 卡间只留发丝线;
    仅作用七列策略行(:not([style])), 入口页行(带inline grid)不受影响 —— */
 .p-row .p-rowline:not([style]){display:flex;flex-wrap:wrap;align-items:baseline;
  column-gap:10px;row-gap:4px;padding:14px 0}
 .p-row .p-rowline:not([style])>:nth-child(1){order:1;align-self:center}
 .p-row .p-rowline:not([style])>:nth-child(2){order:2;flex:1;min-width:34%;white-space:nowrap}
 .p-row .p-rowline:not([style])>:nth-child(6){order:3;font-size:15px}
 .p-row .p-rowline:not([style])>:nth-child(5){order:4;flex:0 0 calc(100% - 110px);
  font-size:17px;text-align:left}
 .p-row .p-rowline:not([style])>:nth-child(7){order:5;display:block;margin-left:auto;
  align-self:center}
 .p-row .p-rowline:not([style]) .p-mini{width:88px;height:32px}
 .p-row .p-rowline:not([style])>:nth-child(4){order:6;font-size:11.5px;
  color:var(--p-mut);text-align:left}
 .p-row .p-rowline:not([style])>:nth-child(3){order:7;flex:1;min-width:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11.5px;
  color:var(--p-mut)}
 .p-row .p-rowline:not([style])>:nth-child(3)::before{content:"· "}
 .p-row .p-rowline:not([style]) .p-badge{display:inline-block;margin:0 0 0 8px;
  vertical-align:1px}
 /* Terra 灰行: 压一行(名+徽章 | —), 说明折叠, 点击展开 */
 .p-gray .p-tbadge{display:inline-block}
 .p-gray .p-rowline:not([style])>:nth-child(3){display:none}
 .p-gray .p-rowline:not([style])>:nth-child(4),
 .p-gray .p-rowline:not([style])>:nth-child(5),
 .p-gray .p-rowline:not([style])>:nth-child(7){display:none}
 .p-gray.open .p-rowline:not([style])>:nth-child(3){display:block;flex:0 0 100%;
  white-space:normal;overflow:visible}
 .p-gray.open .p-rowline:not([style])>:nth-child(3)::before{content:""}
 /* 汇总统计条 2×2 */
 .p-statline{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;line-height:1.6;
  font-size:13px}
 .p-statline .p-statsep{display:none}
}

/* ============================================================
   日/月双主题 (2026-09-03 Ray): dark = E 的暗色镜像, 同一版面两种纸。
   排版/字体/网格零改动; 曲线墨线暗色改暖白; 策略色点不变;
   OG/分享图不随主题变。cookie wx_theme=light|dark, 默认 light。
   ============================================================ */
/* —— 夜航版精修 2026-09-04 (Ray): 降发光度/三级灰阶/金作墨韵; light 零改动 —— */
html[data-theme="dark"]{
  --p-paper:#14110D; --p-ink:#C9C2B4; --p-ink2:#C9C2B4;
  --p-mut:#8A8377; --p-cap:#8A8377;
  --p-rule:rgba(201,194,180,.12); --p-rule2:rgba(201,194,180,.16);
  --p-white:#1b1712;
  --p-foot-bg:#0B0A08; --p-foot-ink:#8A8377; --p-foot-hi:#C9C2B4;
  /* 夜航盈亏旧覆盖已移除 (2026-09-04c): --p-pos/neg 走语义变量, 暗档由 token 层提亮 */
  --p-goldink:#A8894C;
  /* 策略色点降饱和 15% (暗底防过艳) */
  --p-fire:#c96a66; --p-wood:#4fa470; --p-water:#6b8fcb;
  --p-gold:#cfaf5c; --p-terra:#8f948f;
}
/* 纸面: 极浅上暖下深渐变, 无光晕无纹理 */
html[data-theme="dark"] body.press{
  background:linear-gradient(rgba(168,137,76,.015),rgba(168,137,76,0) 520px),#14110D}
/* 标题: 亮半档 #EFE8DA, 减重防暗底衬线膨胀, 字距 +0.01em */
html[data-theme="dark"] .p-hero h1,
html[data-theme="dark"] .p-sechead h2,
html[data-theme="dark"] .p-notesec h3{color:#EFE8DA;font-weight:600;letter-spacing:.01em}
/* 深底防糊 (font_upgrade): zh 900 档在暗底降 700 */
html[data-theme="dark"] body.press.zh .p-hero h1{font-weight:700}
html[data-theme="dark"] .p-name{color:#EFE8DA;font-weight:600;letter-spacing:.01em}
html[data-theme="dark"] .p-brand{color:#EFE8DA;font-weight:700;letter-spacing:.03em}
html[data-theme="dark"] .p-num .v,
html[data-theme="dark"] .p-eq,
html[data-theme="dark"] .p-pct,
html[data-theme="dark"] .p-notesec .no{color:#EFE8DA}
html[data-theme="dark"] .p-num .v.neg{color:var(--p-neg)}
html[data-theme="dark"] .pos{color:var(--p-pos)}
html[data-theme="dark"] .neg{color:var(--p-neg)}
/* 粗规则线 2px → 1px 发丝化 */
html[data-theme="dark"] .p-head{border-bottom-width:1px}
html[data-theme="dark"] .p-table{border-top-width:1px}
html[data-theme="dark"] .p-numgrid{border-top-width:1px}
html[data-theme="dark"] .p-burger .bx{border-width:1px;box-shadow:4px 4px 0 rgba(0,0,0,.45)}
html[data-theme="dark"] body.press .wx-modal .box{border-width:1px}
/* 金作墨韵: eyebrow / 链接hover / 行卡hover左缘 / CTA 描边金 */
html[data-theme="dark"] .p-hero .eyebrow{color:var(--p-goldink);letter-spacing:.12em}
html[data-theme="dark"] .p-nav a:hover,
html[data-theme="dark"] .p-foot a:hover{text-decoration-color:var(--p-goldink)}
html[data-theme="dark"] .p-row:hover{box-shadow:inset 2px 0 0 var(--p-goldink)}
html[data-theme="dark"] .p-btn.pr{background:transparent;color:var(--p-goldink);
  border:1px solid var(--p-goldink)!important}
html[data-theme="dark"] .p-btn.pr:hover{background:var(--p-goldink);color:#14110D}
html[data-theme="dark"] #wx-langsw,
html[data-theme="dark"] .wx-themesw{color:#8A8377}
html[data-theme="dark"] #wx-langsw:hover,
html[data-theme="dark"] .wx-themesw:hover{color:#C9C2B4}
/* 徽章: 哑光低饱和, 不用亮底 */
html[data-theme="dark"] .p-badge{background:rgba(201,194,180,.08);
  border:1px solid rgba(201,194,180,.16);color:#C9C2B4}
/* 曲线墨线暖象牙 */
html[data-theme="dark"] .p-mini polyline,
html[data-theme="dark"] .p-mini path,
html[data-theme="dark"] #wx-bigcurve polyline{stroke:#C9C2B4}
html[data-theme="dark"] #wx-bigcurve rect{fill:rgba(201,194,180,.06)}
html[data-theme="dark"] #wx-bigcurve line{stroke:rgba(201,194,180,.16)}
html[data-theme="dark"] #wx-bigcurve text{fill:#8A8377}
html[data-theme="dark"] body.press .wx-modal{background:rgba(0,0,0,.65)}
/* 主题切换钮 (太阳/月亮线条图标, 语言钮旁) */
.wx-themesw{color:var(--p-ink);margin-left:18px;vertical-align:-3px;display:inline-block}
.wx-themesw svg{display:block}
.p-burger .bx .wx-themesw{margin:2px 0 0}

/* ============================================================
   数据层财经报刊配色 (2026-09-04c Ray): 五行元素色 + 盈亏语义按语言分流
   (zh 红盈绿亏 / en 绿盈红亏, html[lang] 驱动); 主题层只调明度。
   色彩只进数据层与提示层, 正文段落保持墨色。
   ============================================================ */
:root{
  --c-fire:#C0392B; --c-wood:#1E7A46; --c-water:#1F5FA8;
  --c-metal:#8A6508;   /* 赤金 日间加深档: B8860B 2.96:1 不达标→8A6508 4.85:1 */
  --c-earth:#7A5F3B;   /* 陶土 加深档 5.42:1 */
  --c-alert:#C0392B;   /* 警示红: 风险盒专用, 不随语言语义翻转 */
  --c-profit:#1E7A46; --c-loss:#C0392B;   /* EN 默认: 绿盈红亏 */
  --c-thead:#EFE9DE; --c-rowhover:rgba(26,24,21,.03);
}
html[lang="zh-CN"]{--c-profit:#C0392B;--c-loss:#1E7A46}   /* zh: 红盈绿亏 */
html[data-theme="dark"]{
  --c-fire:#E05B4C; --c-wood:#3FA36C; --c-water:#4A86C8;
  --c-metal:#D4A017; --c-earth:#A9895F; --c-alert:#E05B4C;
  --c-profit:#3FA36C; --c-loss:#E05B4C;
  --c-thead:rgba(201,194,180,.07); --c-rowhover:rgba(201,194,180,.045);
}
html[data-theme="dark"][lang="zh-CN"]{--c-profit:#E05B4C;--c-loss:#3FA36C}
/* a. 盈亏列: 语义色 + 700 */
.pos{color:var(--c-profit);font-weight:700}
.neg{color:var(--c-loss);font-weight:700}
.p-num .v.neg{color:var(--c-loss)}
html[data-theme="dark"] .pos{color:var(--c-profit)}
html[data-theme="dark"] .neg{color:var(--c-loss)}
html[data-theme="dark"] .p-num .v.neg{color:var(--c-loss)}
/* c. sparkline: 策略元素色线, 线宽微加 (详情大图保持墨线) */
#pa-cv-fire polyline,#ps-cv-fire polyline{stroke:var(--c-fire);stroke-width:1.8}
#pa-cv-wood polyline,#ps-cv-wood polyline{stroke:var(--c-wood);stroke-width:1.8}
#pa-cv-water polyline,#ps-cv-water polyline{stroke:var(--c-water);stroke-width:1.8}
#pa-cv-gold polyline,#ps-cv-gold polyline{stroke:var(--c-metal);stroke-width:1.8}
/* d. 表头带 */
.p-colhead{background:var(--c-thead)}
body.press.zh .p-colhead{font-weight:600}
/* e. 行 hover 浅底 (夜航金左缘并存) */
.p-row:hover{background:var(--c-rowhover)}
/* f. 徽章语义 */
.p-badge.p-b-verify{background:transparent;border:1px solid var(--c-metal);color:var(--c-metal)}
.p-badge.p-b-open{background:transparent;border:1px solid var(--c-wood);color:var(--c-wood)}
html[data-theme="dark"] .p-badge.p-b-verify{background:transparent;border-color:var(--c-metal);color:var(--c-metal)}
html[data-theme="dark"] .p-badge.p-b-open{background:transparent;border-color:var(--c-wood);color:var(--c-wood)}
/* g. 汇总行: 数字墨色加重, 关键数字赤金 */
.p-statline b{color:var(--p-ink)}
#pa-cap,#pa-inv{color:var(--c-metal)}
html[data-theme="dark"] .p-statline b{color:#EFE8DA}
html[data-theme="dark"] #pa-cap,html[data-theme="dark"] #pa-inv{color:var(--c-metal)}
