:root{
  /* Vol.IV warm navy 主调 · 与 reports 004/005 对齐 */
  --bg:#0E1218; --bg2:#161B25; --bg3:#1E2532; --bg4:#283040;
  --panel:#161B25;
  --line:rgba(201,168,76,.22);
  /* cyan 改为辅色 · 数据/状态用 */
  --cyan:#5B8FB8; --cyan-b:#7BAEDE;
  /* warm gold 主 · 跟 Vol.IV 一致 */
  --gold:#C9A84C; --gold-b:#E8C96A;
  /* ink 三阶 + 暖灰 */
  --ink:#E8E4DC; --ink-2:#C8C4BC; --mut:#9A9DA8; --tf:#4A4F5C;
  /* status */
  --ok:#7BAE7E; --warn:#E8C96A; --neg:#C0594A; --pend:#5b6675;
  /* fonts */
  --mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  --sans:'Noto Sans SC','Inter',-apple-system,sans-serif;
  --serif:'Noto Serif SC','Iowan Old Style','Songti SC',serif;
}

/* ===== Light theme · 暖纸 · 报告纸感 ===== */
[data-theme="light"]{
  --bg:#f4ede1; --bg2:#fbf6ec; --bg3:#e9e0cc; --bg4:#d4c8ad;
  --panel:#fbf6ec; --line:rgba(110,83,22,.22);
  --cyan:#1b6e8c; --cyan-b:#155a73;
  --gold:#6e5316; --gold-b:#553f0d;
  --ink:#16202a; --ink-2:#28323d; --mut:#5b6b78; --tf:#8a96a3;
  --ok:#1f8f63; --pend:#93a0ab;
}
[data-theme="light"] body{background:radial-gradient(1100px 520px at 50% -8%, rgba(201,168,76,.10), transparent 70%), var(--bg)}
[data-theme="light"] .topbar{background:rgba(251,246,236,.88)}

/* ===== Emerald theme · 股票日记深海翡翠 ===== */
[data-theme="emerald"]{
  --bg:#08191A; --bg2:#0E2326; --bg3:#163230; --bg4:#1F4340;
  --panel:#0E2326; --line:rgba(44,194,149,.22);
  --cyan:#4FD0E0; --cyan-b:#6FE0C0;
  --gold:#2CC295; --gold-b:#00DF81;
  --ink:#F1F7F6; --ink-2:#C8D8D2; --mut:#7A9690; --tf:#3A4F4A;
  --ok:#00DF81; --warn:#E8C96A; --neg:#FF6B6B; --pend:#4A6660;
}
[data-theme="emerald"] body{background:radial-gradient(1100px 520px at 50% -8%, rgba(44,194,149,.12), transparent 70%), var(--bg)}
[data-theme="emerald"] .topbar{background:rgba(8,25,26,.9)}
[data-theme="emerald"] ::selection{background:rgba(44,194,149,.34);color:#04100f}

/* theme toggle button + icon swap */
.theme-btn{flex:none;width:34px;height:34px;display:grid;place-items:center;background:transparent;
  border:1px solid var(--line);border-radius:8px;color:var(--gold);cursor:pointer;transition:border-color .15s,color .15s}
.theme-btn:hover{border-color:var(--gold);color:var(--gold-b)}
.theme-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6}
.tb-right{display:flex;align-items:center;gap:14px}
.ico-sun{display:none}
[data-theme="light"] .ico-moon{display:none}
[data-theme="light"] .ico-sun{display:block}
*{box-sizing:border-box;margin:0;padding:0}
/* text selection — blue bg for readable contrast against gold text */
::selection{background:rgba(58,124,210,.42);color:#fff}
[data-theme="light"] ::selection{background:rgba(35,90,180,.28);color:#0a1530}
html{min-height:100vh;min-height:100dvh;background:var(--bg)}
body{
  background:radial-gradient(1100px 520px at 50% -8%, rgba(201,168,76,.06), transparent 65%), radial-gradient(800px 400px at 18% 92%, rgba(91,143,184,.04), transparent 60%), var(--bg);
  color:var(--ink);font-family:var(--sans);line-height:1.6;min-height:100vh;min-height:100dvh;
}
.topbar{
  display:flex;align-items:center;justify-content:space-between;padding:16px 22px;
  border-bottom:1px solid var(--line);background:rgba(10,14,20,.82);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:sticky;top:0;z-index:10;
}
.brand{font-family:var(--mono);letter-spacing:.12em;font-size:15px}
.brand b{color:var(--cyan-b)} .brand .mk{color:var(--cyan)}
.sector{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--mut)}
.banner{
  font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--mut);
  padding:8px 22px;border-bottom:1px solid var(--line);background:var(--panel);
}
.tree{max-width:1000px;margin:0 auto;padding:28px 18px 80px}

/* ---- collapsible pyramid tree ---- */
.node>.kids{display:none;margin-left:18px;border-left:1px solid rgba(61,168,201,.35);padding-left:16px;position:relative}
.node.open>.kids{display:block}
/* horizontal connector stub from vertical spine to each child row */
.kids>.node>.row{position:relative}
.kids>.node>.row::before{content:"";position:absolute;left:-16px;top:17px;width:12px;height:1px;background:rgba(61,168,201,.45)}
.row{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:6px;cursor:default;font-family:var(--mono)}
.row.has-kids{cursor:pointer}
.row.has-kids:hover{background:var(--panel)}
.tw{color:var(--cyan);width:14px;font-size:12px;flex:none}
.tw.dot{color:var(--pend)}
.nm{color:var(--ink);font-size:14px}
.role{color:var(--mut);font-size:11px;font-family:var(--sans)}
.badge{font-size:9px;letter-spacing:.1em;color:var(--gold);border:1px solid rgba(214,178,90,.4);border-radius:3px;padding:1px 5px;flex:none}
.cos{margin:2px 0 6px 24px;display:flex;flex-direction:column;gap:3px}
.co{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px}
.cn{color:var(--ink)} .tk{color:var(--cyan-b);font-size:11px}
.px{font-size:11px;margin-left:auto;flex:none} .px.ok{color:var(--ok)} .px.pend,.px.priv{color:var(--pend)}
.as{color:var(--mut);font-size:10px;margin-left:6px;flex:none}
@media(max-width:560px){
  .role{display:none}
  .tree{padding:18px 12px 60px}
  .co{flex-wrap:wrap;gap:4px}
}

/* ---- homepage: sector navigation ---- */
.topbar a.brand{text-decoration:none;color:inherit}
.hero{max-width:1000px;margin:0 auto;padding:34px 22px 6px}
.hero h1{font-size:clamp(22px,3.4vw,34px);font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.hero p{color:var(--mut);font-size:14px;margin-top:12px;max-width:760px}
.hero p b{color:var(--cyan-b)}
.hero .note{font-family:var(--mono);font-size:11px;color:var(--pend);margin-top:14px;letter-spacing:.04em}
.sectors{max-width:1000px;margin:0 auto;padding:18px 22px 80px}
.layer{margin-top:30px}
.layer-h{font-family:var(--mono);font-size:12px;letter-spacing:.18em;color:var(--mut);margin-bottom:14px;border-bottom:1px solid var(--line);padding-bottom:8px}
.layer-h .lk{color:var(--cyan);border:1px solid var(--line);border-radius:4px;padding:1px 7px;margin-right:8px}
.layer-h .le{color:var(--pend);font-size:10px;margin-left:8px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.sc{display:block;text-decoration:none;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;transition:border-color .15s,transform .15s}
.sc.live{cursor:pointer}
.sc.live:hover{border-color:var(--cyan);transform:translateY(-2px)}
.sc:not(.live){opacity:.6}
.sc-head{display:flex;align-items:center;gap:10px}
.sc-head .ic{font-size:22px;flex:none}
.sc-name{font-size:16px;font-weight:600;color:var(--ink)}
.sc-en{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--pend)}
.st{margin-left:auto;flex:none;font-family:var(--mono);font-size:10px;color:var(--pend);border:1px solid var(--line);border-radius:4px;padding:2px 7px}
.st.live{color:var(--ok);border-color:rgba(111,208,160,.4)}
.sc-flag{font-size:12px;color:var(--mut);margin:12px 0 10px;font-family:var(--mono)}
.sc-bs{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sc-bs .bl{font-size:10px;color:var(--gold);font-family:var(--mono);letter-spacing:.1em}
.bs{font-size:10.5px;color:var(--cyan-b);background:none;border:0;border-radius:0;padding:0;
  letter-spacing:.02em;position:relative;margin-right:4px}
.bs:not(:last-child)::after{content:"·";color:rgba(214,178,90,.45);margin-left:6px;font-weight:600}
.ic-dot{width:9px;height:9px;border-radius:50%;background:var(--pend);flex:none}
.ic-dot.on{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.bs-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 6px var(--cyan);margin-right:7px;vertical-align:middle}
.back{display:inline-block;font-family:var(--mono);font-size:11px;color:var(--mut);padding:12px 22px 0;text-decoration:none}
.back:hover{color:var(--cyan-b)}
.back-fab{position:fixed;left:16px;bottom:18px;z-index:50;width:40px;height:40px;border-radius:50%;
  display:grid;place-items:center;background:var(--panel);border:1px solid var(--cyan);color:var(--cyan-b);
  text-decoration:none;font-size:18px;box-shadow:0 0 12px rgba(61,168,201,.25);transition:transform .15s}
.back-fab:hover{transform:translateY(-2px)}
.planned{color:var(--mut);font-family:var(--mono);font-size:13px;padding:40px 8px;line-height:2}
.planned span{color:var(--pend);font-size:11px}
.rank-link{display:inline-block;margin-top:18px;font-family:var(--mono);font-size:12px;color:var(--gold);
  border:1px solid var(--gold-line);border-radius:6px;padding:8px 14px;text-decoration:none;transition:background .15s}
.rank-link:hover{background:var(--gold-soft)}

/* ---- ranking / hidden winners ---- */
.rank{max-width:1000px;margin:0 auto;padding:10px 22px 80px;display:flex;flex-direction:column;gap:8px}
/* === 排行榜金线行(no-boxed-ui rule) === */
.rk{display:flex;align-items:center;gap:14px;background:none;border:0;border-radius:0;text-decoration:none;color:inherit;cursor:pointer;
  padding:13px 4px 13px 0;border-bottom:1px solid rgba(214,178,90,.16);transition:padding-left .15s ease,border-bottom-color .15s ease;
  transition:border-color .15s,padding-left .15s}
.rk:hover{border-bottom-color:rgba(214,178,90,.55);padding-left:8px}
.rk:last-child{border-bottom:0}
.rk.winner{border-bottom-color:rgba(214,178,90,.42)}
.rk.winner:hover{border-bottom-color:rgba(214,178,90,.75)}
.rk-no{font-family:var(--mono);font-size:12px;color:var(--mut);width:26px;flex:none;text-align:right;letter-spacing:.06em}
.rk.winner .rk-no{color:var(--gold);font-weight:600}
.rk-main{flex:1;min-width:0}
.rk-top{display:flex;align-items:center;gap:10px;font-family:var(--mono);flex-wrap:wrap}
.rk-top .cn{color:var(--ink);font-size:14px;font-family:var(--sans);font-weight:500;letter-spacing:.01em}
.rk:hover .rk-top .cn{color:var(--gold)}
.rk-top .tk{color:var(--cyan-b);font-size:11px;letter-spacing:.06em}
.rk-top .px{margin-left:auto;flex:none}
.rk-brief{margin-top:5px;font-family:var(--sans);font-size:12.5px;color:var(--mut);line-height:1.55;display:flex;flex-direction:column;gap:3px}
.rk-brief-txt{color:var(--ink);opacity:.78}
.rk-moat{font-size:11.5px;color:var(--mut);opacity:.85}
.rk-moat::before{content:""}
.rk:hover .rk-brief-txt{color:var(--gold);opacity:1}
.rk-sec{display:flex;flex-wrap:wrap;gap:0;margin-top:4px;font-family:var(--mono);font-size:10.5px}
.rk-stat{flex:none;text-align:right;font-family:var(--mono);min-width:64px;line-height:1.1}
.rk-stat b{display:block;font-size:20px;color:var(--cyan-b);font-weight:700;letter-spacing:-.01em}
.rk.winner .rk-stat b{color:var(--gold)}
.rk-stat span{font-size:9px;color:var(--mut);letter-spacing:.16em;text-transform:uppercase;display:block;margin-top:1px}
.rk-stat i{display:block;font-size:10px;color:var(--mut);font-style:normal;margin-top:3px;letter-spacing:.02em}
@media(max-width:560px){.rk-top .px{margin-left:0}.rk-top{flex-wrap:wrap;gap:6px}}

/* ===== KR (韩国版)徽章 ===== */
:root{
  --kr-kospi:#2e8bff; --kr-kosdaq:#ff7a3d; --kr-strong:#6fd0a0; --kr-medium:#d6b25a; --kr-weak:#7d8a99; --kr-none:#5b6675;
}
.kr-rank{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;
  padding:2px 8px;border-radius:4px;border:1px solid var(--line);color:var(--ink);background:rgba(255,255,255,.03)}
.kr-rank.kr-strong{color:var(--kr-strong);border-color:rgba(111,208,160,.45);background:rgba(111,208,160,.10)}
.kr-rank.kr-medium{color:var(--kr-medium);border-color:rgba(214,178,90,.45);background:rgba(214,178,90,.10)}
.kr-rank.kr-weak{color:var(--kr-weak);border-color:rgba(125,138,153,.45);background:rgba(125,138,153,.10)}
.kr-rank.kr-none{color:var(--kr-none);border-color:rgba(91,102,117,.4);background:rgba(91,102,117,.10)}

.kr-note{font-size:11px;color:var(--mut);margin:6px 0 10px;font-family:var(--mono);line-height:1.5;
  border-left:2px solid var(--cyan);padding:2px 0 2px 8px}

.kr-rank-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;margin:0 0 14px;
  border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.02)}
.kr-rank-banner.kr-strong{border-left:3px solid var(--kr-strong)}
.kr-rank-banner.kr-medium{border-left:3px solid var(--kr-medium)}
.kr-rank-banner.kr-weak{border-left:3px solid var(--kr-weak)}
.kr-rank-banner.kr-none{border-left:3px solid var(--kr-none)}
.kr-rank-note{font-size:12px;color:var(--ink);line-height:1.5}

.kr-ex{font-family:var(--mono);font-size:9px;letter-spacing:.1em;padding:1px 6px;border-radius:3px;margin-left:6px;color:#fff;font-weight:600}
.kr-ex.kos{background:var(--kr-kospi)}
.kr-ex.kdq{background:var(--kr-kosdaq)}
.kr-idx{font-family:var(--mono);font-size:9px;letter-spacing:.08em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--gold);border:1px solid rgba(214,178,90,.5);background:rgba(214,178,90,.08)}
.kr-chb{font-size:10px;padding:1px 7px;border-radius:3px;margin-left:4px;
  color:var(--cyan-b);border:1px solid rgba(61,168,201,.4);background:rgba(61,168,201,.08)}
.kr-th{font-family:var(--mono);font-size:9px;letter-spacing:.06em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:#e2b8d4;border:1px solid rgba(226,184,212,.35);background:rgba(226,184,212,.08)}

.co.kr-miss{opacity:.65;font-style:italic}
.co.kr-miss .cn{color:var(--mut);font-size:12px}

/* ===== JP (日本版)徽章 ===== */
:root{ --jp-tse:#bc002d; --jp-grp-c:#e8a87c; --jp-idx-c:#5b8def; --jp-th-c:#f4afc6; }
.jp-ex{font-family:var(--mono);font-size:9px;letter-spacing:.1em;padding:1px 6px;border-radius:3px;margin-left:6px;color:#fff;font-weight:600}
.jp-ex.tse{background:var(--jp-tse)}
.jp-idx{font-family:var(--mono);font-size:9px;letter-spacing:.08em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--jp-idx-c);border:1px solid rgba(91,141,239,.5);background:rgba(91,141,239,.08)}
.jp-grp{font-size:10px;padding:1px 7px;border-radius:3px;margin-left:4px;
  color:var(--jp-grp-c);border:1px solid rgba(232,168,124,.45);background:rgba(232,168,124,.08)}
.jp-th{font-family:var(--mono);font-size:9px;letter-spacing:.06em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--jp-th-c);border:1px solid rgba(244,175,198,.4);background:rgba(244,175,198,.08)}

/* ===== CH (瑞士版)徽章 ===== */
:root{ --ch-six:#d52b1e; --ch-grp-c:#c9b37e; --ch-idx-c:#6fd0a0; --ch-th-c:#a89cc8; }
.ch-ex{font-family:var(--mono);font-size:9px;letter-spacing:.1em;padding:1px 6px;border-radius:3px;margin-left:6px;color:#fff;font-weight:600}
.ch-ex.six{background:var(--ch-six)}
.ch-idx{font-family:var(--mono);font-size:9px;letter-spacing:.08em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--ch-idx-c);border:1px solid rgba(111,208,160,.5);background:rgba(111,208,160,.08)}
.ch-grp{font-size:10px;padding:1px 7px;border-radius:3px;margin-left:4px;
  color:var(--ch-grp-c);border:1px solid rgba(201,179,126,.45);background:rgba(201,179,126,.08)}
.ch-th{font-family:var(--mono);font-size:9px;letter-spacing:.06em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--ch-th-c);border:1px solid rgba(168,156,200,.4);background:rgba(168,156,200,.08)}

/* ===== TW (台湾版)徽章 ===== */
:root{ --tw-twse:#2d8f4e; --tw-tpex:#e89020; --tw-grp-c:#c89db8; --tw-idx-c:#7fc1e8; --tw-th-c:#e8c87a; }
.tw-ex{font-family:var(--mono);font-size:9px;letter-spacing:.1em;padding:1px 6px;border-radius:3px;margin-left:6px;color:#fff;font-weight:600}
.tw-ex.twse{background:var(--tw-twse)}
.tw-ex.tpex{background:var(--tw-tpex)}
.tw-idx{font-family:var(--mono);font-size:9px;letter-spacing:.08em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--tw-idx-c);border:1px solid rgba(127,193,232,.5);background:rgba(127,193,232,.08)}
.tw-grp{font-size:10px;padding:1px 7px;border-radius:3px;margin-left:4px;
  color:var(--tw-grp-c);border:1px solid rgba(200,157,184,.45);background:rgba(200,157,184,.08)}
.tw-th{font-family:var(--mono);font-size:9px;letter-spacing:.06em;padding:1px 6px;border-radius:3px;margin-left:4px;
  color:var(--tw-th-c);border:1px solid rgba(232,200,122,.4);background:rgba(232,200,122,.08)}

/* ===== META 跨国榜 区域 chip ===== */
.rk-reg{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.meta-reg{font-family:var(--mono);font-size:9px;letter-spacing:.12em;padding:2px 7px;border-radius:3px;
  color:var(--gold);border:1px solid rgba(214,178,90,.4);background:rgba(214,178,90,.08);font-weight:600}
.rk.winner .meta-reg{color:var(--ok);border-color:rgba(111,208,160,.45);background:none}
/* META region chips 也去框金线化 */
.meta-reg{background:none;border:0;color:var(--gold);font-family:var(--mono);font-size:10px;
  letter-spacing:.14em;padding:0;margin-right:6px;text-transform:uppercase;font-weight:600;position:relative}
.meta-reg:not(:last-child)::after{content:"·";color:rgba(214,178,90,.35);margin-left:6px}
.rk-reg{margin-top:3px}

/* ===== 入口 chip 网格(规范化+响应式) ===== */
.entries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}
.entry-chip{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:10px;
  border:1px solid var(--line);background:rgba(255,255,255,.02);
  color:var(--ink);text-decoration:none;font-size:13px;line-height:1.35;
  transition:border-color .15s,background .15s,transform .12s,box-shadow .15s;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.01em}
.entry-chip:hover{border-color:var(--cyan);background:rgba(61,168,201,.07);transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(61,168,201,.10)}
[data-theme="light"] .entry-chip{background:rgba(0,0,0,.02)}
[data-theme="light"] .entry-chip:hover{background:rgba(27,110,140,.08)}
.entry-chip.full{grid-column:1/-1;justify-content:center;font-weight:600;
  background:linear-gradient(90deg,rgba(61,168,201,.10),rgba(214,178,90,.10));
  border-color:var(--cyan);color:var(--cyan-b);letter-spacing:.04em}
.entry-chip.full:hover{background:linear-gradient(90deg,rgba(61,168,201,.18),rgba(214,178,90,.16));
  border-color:var(--cyan-b);box-shadow:0 4px 18px rgba(61,168,201,.18)}
@media(max-width:760px){.entries{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}}
@media(max-width:430px){.entries{grid-template-columns:1fr;gap:6px}.entry-chip{padding:11px 12px;font-size:12.5px}}

/* landing 极简 hero(deprecated kept for safety) */
.hero-minimal{padding-top:24px}
.hero-minimal .note{margin-bottom:18px;font-size:11.5px;color:var(--mut);letter-spacing:.02em}

/* ===== 首页专业版 hero + value cards + sections ===== */
.landing{max-width:1180px;margin:0 auto;padding:0 24px 60px}

/* HERO */
.hero-pro{padding:56px 0 44px;position:relative;text-align:center;
  border-bottom:1px solid var(--line)}
.hero-pro::before{content:"";position:absolute;left:50%;top:0;width:520px;height:160px;
  transform:translateX(-50%);pointer-events:none;z-index:-1;
  background:radial-gradient(60% 100% at 50% 0%,rgba(61,168,201,.20),transparent 70%);filter:blur(8px)}
.hero-eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.28em;color:var(--cyan);
  text-transform:uppercase;margin-bottom:18px;display:inline-block;
  padding:5px 12px;border:1px solid rgba(61,168,201,.28);border-radius:999px;
  background:rgba(61,168,201,.05)}
.hero-title{font-family:"Inter","Noto Sans SC",var(--sans);
  font-size:clamp(30px,5.4vw,52px);font-weight:700;letter-spacing:-.02em;line-height:1.12;
  margin:0 0 14px;color:var(--ink);
  background:linear-gradient(135deg,var(--ink) 35%,var(--cyan-b) 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-sub{font-size:clamp(14px,1.5vw,17px);color:var(--mut);
  margin:0 auto 28px;max-width:560px;line-height:1.55;letter-spacing:.01em}
/* hero stats — 无框,金线分隔(rule: no boxed UI) */
.hero-stats{display:inline-flex;flex-wrap:wrap;gap:0;justify-content:flex-start;align-items:center;margin-top:4px}
.stat-chip{display:inline-flex;align-items:baseline;gap:7px;padding:6px 18px;
  border:0;background:none;border-radius:0;position:relative;
  font-family:var(--mono);font-size:11px;color:var(--mut);letter-spacing:.08em;text-transform:uppercase}
.stat-chip:first-child{padding-left:0}
.stat-chip:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;
  width:1px;height:18px;margin-top:-9px;background:rgba(214,178,90,.32)}
.stat-chip b{font-family:"Inter",var(--sans);font-size:20px;font-weight:700;color:var(--cyan-b);letter-spacing:-.01em}
.stat-chip em{font-style:normal;font-size:10.5px}
.stat-chip.live{color:var(--ok)}
.stat-chip.live .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);
  box-shadow:0 0 8px var(--ok);animation:livepulse 2s ease-in-out infinite;display:inline-block;align-self:center}
.stat-chip.live b{color:var(--ok)}
.stat-chip.views-stat{color:var(--gold)}
.stat-chip.views-stat b{color:var(--gold)}
.stat-chip.views-stat .views-eye{margin-right:0;font-size:13px;line-height:1}
@keyframes livepulse{0%,100%{opacity:1}50%{opacity:.45}}

/* HERO with image backdrop */
.hero-with-img{padding:0;border-bottom:1px solid var(--line);overflow:hidden;position:relative;
  min-height:clamp(320px,52vh,520px);display:flex;align-items:center;justify-content:flex-start;
  border-radius:18px;margin-bottom:0}
.hero-with-img::before{display:none}
.hero-img{position:absolute;inset:0;background:url("/assets/hero.jpg") 70% 30%/cover no-repeat;
  filter:saturate(1) contrast(1.06);z-index:0}
.hero-overlay{position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,rgba(14,18,24,.92) 0%,rgba(14,18,24,.66) 38%,rgba(14,18,24,.08) 70%,rgba(14,18,24,0) 100%),
    linear-gradient(180deg,rgba(14,18,24,.18) 0%,rgba(14,18,24,.72) 100%)}
.hero-content{position:relative;z-index:2;padding:48px 36px;max-width:680px;text-align:left}
.hero-with-img .hero-stats{justify-content:flex-start}
/* 光模式:hero 仍走深色 overlay,避免泛白曝光(其余页面正常浅色) */
[data-theme="light"] .hero-overlay{background:
    linear-gradient(90deg,rgba(8,12,20,.86) 0%,rgba(8,12,20,.62) 40%,rgba(8,12,20,.10) 72%,rgba(8,12,20,0) 100%),
    linear-gradient(180deg,rgba(8,12,20,.18) 0%,rgba(8,12,20,.72) 100%)}
[data-theme="light"] .hero-with-img .hero-title{
  background:linear-gradient(135deg,#f4f7fa 35%,#9adff2 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
[data-theme="light"] .hero-with-img .hero-sub{color:#e8c87a}
.hero-with-img .hero-sub{color:var(--gold);font-weight:500;letter-spacing:.015em}
[data-theme="light"] .hero-with-img .hero-eyebrow{color:#9adff2;background:rgba(95,208,232,.08);border-color:rgba(95,208,232,.4)}
[data-theme="light"] .hero-with-img .stat-chip{color:rgba(255,255,255,.7)}
[data-theme="light"] .hero-with-img .stat-chip b{color:#9adff2}
[data-theme="light"] .hero-with-img .stat-chip.live{color:#6fd0a0}
[data-theme="light"] .hero-with-img .stat-chip.live b{color:#6fd0a0}
[data-theme="light"] .hero-with-img .stat-chip.views-stat,
[data-theme="light"] .hero-with-img .stat-chip.views-stat b{color:#e8c87a}
[data-theme="light"] .hero-with-img .stat-chip:not(:last-child)::after{background:rgba(232,200,122,.42)}

/* === 核心介绍 + Top 3 === */
.intro-section{padding:48px 0 8px}
.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:start}
.intro-text p{font-size:15px;line-height:1.75;color:var(--ink);margin:0 0 14px;letter-spacing:.01em}
.intro-text p:last-child{margin-bottom:0;font-size:13px;color:var(--mut);
  border-left:2px solid var(--gold);padding-left:12px;background:rgba(214,178,90,.04)}
.intro-text b{color:var(--cyan-b);font-weight:600}

/* winners panel — 无框 · 金色细线分隔 · 紧凑 */
.winners-side{display:flex;flex-direction:column;gap:0;
  padding:0;border:0;background:none}
.winners-head{display:flex;justify-content:space-between;align-items:center;
  padding:0 0 8px;margin-bottom:2px;border-bottom:1px solid rgba(214,178,90,.42)}
.wh-tag{font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--gold);
  font-weight:600;text-transform:uppercase}
.wh-cta{font-family:var(--mono);font-size:10.5px;color:var(--cyan);text-decoration:none;
  letter-spacing:.06em;transition:color .15s}
.wh-cta:hover{color:var(--cyan-b)}
.winner-row{display:grid;grid-template-columns:32px 24px 1fr;align-items:center;gap:10px;
  padding:9px 0;border-bottom:1px solid rgba(214,178,90,.18);
  text-decoration:none;color:var(--ink);transition:transform .12s,border-color .15s}
.winner-row:last-child{border-bottom:0}
.winner-row:hover{transform:translateX(2px);border-bottom-color:rgba(214,178,90,.45)}
.w-rank{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--gold);text-align:left}
.w-flag{font-size:16px;text-align:center;line-height:1}
.w-info{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.25}
.w-info b{font-size:13px;font-weight:600;color:var(--ink);letter-spacing:.01em;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.w-info em{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--mut);
  letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}

@media(max-width:760px){
  .hero-with-img{min-height:auto;border-radius:14px}
  .hero-content{padding:36px 22px;max-width:none}
  .hero-overlay{background:
    linear-gradient(180deg,rgba(10,14,20,.30) 0%,rgba(10,14,20,.86) 70%,rgba(10,14,20,.96) 100%)}
  .intro-section{padding:32px 0 4px}
  .intro-grid{grid-template-columns:1fr;gap:18px}
  .intro-text p{font-size:14px}
}

/* VALUE CARDS (legacy, kept for safety) */
.value-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
  padding:40px 0 16px}
.vc{padding:22px 22px 24px;border:1px solid var(--line);border-radius:14px;
  background:rgba(255,255,255,.02);
  transition:border-color .2s,background .2s,transform .15s,box-shadow .2s}
.vc:hover{border-color:rgba(61,168,201,.45);background:rgba(61,168,201,.04);
  transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.30)}
[data-theme="light"] .vc:hover{box-shadow:0 10px 28px rgba(27,110,140,.15)}
.vc-icon{font-size:24px;line-height:1;margin-bottom:14px;color:var(--gold);
  width:42px;height:42px;display:grid;place-items:center;border-radius:10px;
  background:rgba(214,178,90,.10);border:1px solid rgba(214,178,90,.2)}
.vc-title{font-family:"Inter",var(--sans);font-size:16px;font-weight:600;
  margin:0 0 8px;color:var(--ink);letter-spacing:-.005em}
.vc-desc{font-size:13px;color:var(--mut);line-height:1.55;margin:0;letter-spacing:.01em}

/* SECTION HEADER */
.section-h{font-family:var(--mono);font-size:11px;letter-spacing:.28em;color:var(--cyan);
  text-transform:uppercase;margin:36px 0 14px;font-weight:600;
  display:flex;align-items:center;gap:10px}
.section-h::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--line),transparent)}
.enter-section{padding:8px 0 18px}
.enter-section .entries{margin-top:0}

/* ===== 大板块 panel + 金线 row(取代 .entries 卡片) ===== */
.panel{display:flex;flex-direction:column;gap:0;padding:0;margin-top:32px}
.panel:first-of-type{margin-top:20px}
.panel-head{display:flex;justify-content:space-between;align-items:baseline;
  padding:0 0 8px;margin-bottom:4px;border-bottom:1px solid rgba(214,178,90,.42)}
.panel-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;color:var(--gold);
  font-weight:600;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}
.panel-tag::before{content:"◆";color:var(--gold);font-size:9px;opacity:.7;letter-spacing:0}
[data-theme="light"] .panel-tag,
[data-theme="light"] .wh-tag{color:#5a4210;font-weight:700}
[data-theme="light"] .panel-tag::before{color:#5a4210;opacity:.85}
.panel-cta{font-family:var(--mono);font-size:10.5px;color:var(--cyan);text-decoration:none;letter-spacing:.06em}
.panel-cta:hover{color:var(--cyan-b)}
.panel-rows{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:0}
.panel-row{display:flex;flex-direction:column;gap:3px;padding:11px 4px 12px 0;
  border-bottom:1px solid rgba(214,178,90,.16);
  text-decoration:none;color:var(--ink);font-size:13.5px;font-weight:500;letter-spacing:.01em;
  transition:color .15s,border-color .15s,padding-left .15s;position:relative}
.panel-row:hover{color:var(--gold);border-bottom-color:rgba(214,178,90,.55);padding-left:8px}
.panel-row em.pr-desc{display:block;font-style:normal;font-family:var(--mono);
  font-size:10.5px;color:var(--mut);letter-spacing:.02em;line-height:1.45;font-weight:400}
.panel-row:hover em.pr-desc{color:var(--silver,#aab8cc)}
.panel-row.full{grid-column:1/-1;color:var(--cyan-b);font-weight:600}
.panel-row.full:hover{color:var(--cyan)}
.panel-row.soon{opacity:.45;cursor:default;pointer-events:none;color:var(--mut)}
.panel-row.soon::after{content:attr(data-soon);position:absolute;top:11px;right:0;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;color:var(--mut);text-transform:uppercase}

/* 行为优先变体:动作/持仓为主,名字为辅。用于投资人 / 内阁 / 概率推演 */
.panel-row.row-action{padding:13px 4px 14px 0}
.panel-row.row-action b{font-size:11.5px;font-family:var(--mono);color:var(--mut);
  font-weight:500;letter-spacing:.12em;text-transform:uppercase;display:inline-block;margin-bottom:4px}
.panel-row.row-action em.pr-desc{font-family:var(--sans);font-size:13.5px;color:var(--ink);
  line-height:1.65;font-weight:400;letter-spacing:.005em;margin-top:2px;display:block}
.panel-row.row-action em.pr-desc b{display:inline;font-family:var(--sans);font-size:13.5px;
  color:var(--cyan-b);text-transform:none;letter-spacing:.005em;font-weight:600;margin:0}
.panel-row.row-action:hover b{color:var(--gold)}
@media(max-width:580px){.panel-rows{grid-template-columns:1fr;column-gap:0}}

/* === 康波曲线页特化 === */
.kondra-timeline{padding:12px 0 8px}
.kondra-timeline svg{width:100%;height:auto;display:block;max-height:200px}
.kondra-caveat{padding:12px 0 4px;display:flex;flex-direction:column;gap:10px}
.kondra-caveat p{margin:0;font-size:13.5px;color:var(--ink);line-height:1.7;letter-spacing:.01em}
.kondra-caveat p:last-child{font-size:12.5px;color:var(--mut);
  border-left:2px solid var(--gold);padding-left:12px;background:rgba(214,178,90,.04)}
.kondra-caveat b{color:var(--cyan-b);font-weight:600}

/* FOOTER */
.landing-foot{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;flex-direction:column;align-items:center;gap:10px}
.landing-foot .foot-note{margin:0;font-size:12px;color:var(--ink);text-align:center;
  letter-spacing:.02em;line-height:1.7;font-weight:500;opacity:.85;max-width:760px}
.landing-foot .foot-note b{color:var(--gold);font-weight:600}
.landing-foot .views-inline{margin:0;border:0;padding:0}
.landing-foot .foot-twitter{margin:6px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.06em}
.landing-foot .foot-twitter a{color:var(--cyan);text-decoration:none;
  border-bottom:1px solid rgba(61,168,201,.3);padding-bottom:1px;transition:color .15s,border-color .15s}
.landing-foot .foot-twitter a:hover{color:var(--cyan-b);border-bottom-color:var(--cyan-b)}
.foot-meta{margin:8px 0 0;font-family:var(--mono);font-size:11px;color:var(--mut);
  letter-spacing:.04em;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;line-height:1.6}
.foot-meta a{color:var(--gold);text-decoration:none;border-bottom:1px dotted rgba(214,178,90,.35);padding-bottom:1px;transition:color .15s,border-color .15s}
.foot-meta a:hover{color:var(--gold);border-bottom-color:var(--gold);border-bottom-style:solid}
[data-theme="light"] .foot-meta a{color:#5a4210;border-bottom-color:rgba(110,83,22,.45)}
.foot-meta .fm-sep{color:rgba(214,178,90,.4)}
.foot-meta .fm-item{display:inline-flex;align-items:center;gap:5px}
.foot-meta .fm-item.views-tiny{margin:0;color:rgba(214,178,90,.65)}
[data-theme="light"] .foot-meta .fm-item.views-tiny{color:#7a5d1c}
[data-theme="light"] .foot-meta .fm-sep{color:rgba(110,83,22,.55)}
.foot-sponsor{margin:4px 0 0;font-family:var(--mono);font-size:11px;color:var(--mut);
  letter-spacing:.04em;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.foot-sponsor .sp-label{color:rgba(214,178,90,.55)}
.sp-btn{display:inline-flex;align-items:center;gap:6px;border:0;background:none;cursor:pointer;
  color:var(--mut);font-family:inherit;font-size:inherit;padding:2px 4px;
  border-bottom:1px dotted rgba(214,178,90,.30);transition:color .15s,border-color .15s}
.sp-btn:hover{color:var(--gold);border-bottom-color:var(--gold)}
.sp-btn.copied{color:var(--ok);border-bottom-color:var(--ok)}
.sp-chain{font-size:9px;color:var(--gold);font-weight:600;letter-spacing:.18em}
.sp-addr{color:rgba(255,255,255,.65);font-family:inherit;font-size:11px}
[data-theme="light"] .sp-addr{color:rgba(0,0,0,.55)}
.sp-copy{font-size:11px;opacity:.5}
.sp-btn:hover .sp-copy{opacity:.95}
.views-tiny{margin:6px 0 0;font-family:var(--mono);font-size:11px;color:rgba(214,178,90,.55);
  letter-spacing:.10em;text-align:center;line-height:1.2}
.views-tiny b{color:var(--gold);font-weight:600;font-size:13px;margin-right:4px;font-variant-numeric:tabular-nums}
.views-tiny em{font-style:normal;color:rgba(214,178,90,.45);font-size:10px;text-transform:uppercase;letter-spacing:.18em}

/* Responsive */
@media(max-width:760px){
  .landing{padding:0 16px 50px}
  .hero-pro{padding:40px 0 32px}
  .hero-stats{gap:6px}
  .value-cards{grid-template-columns:1fr;gap:10px;padding:28px 0 8px}
  .vc{padding:18px}
}
@media(max-width:430px){
  .hero-pro{padding:32px 0 26px}
  .hero-eyebrow{font-size:9.5px;letter-spacing:.22em;padding:4px 10px}
  .stat-chip{padding:7px 11px;font-size:10px}
  .stat-chip b{font-size:16px}
  .section-h{font-size:10px;margin:28px 0 12px}
}

/* ===== 访问计数徽章(左下角固定) ===== */
.views-badge{position:fixed;left:12px;bottom:12px;z-index:50;padding:7px 11px;border-radius:8px;
  border:1px solid var(--line);background:rgba(15,22,32,.86);backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);font-family:var(--mono);font-size:11px;color:var(--ink);
  letter-spacing:.03em;line-height:1;display:flex;align-items:center;gap:5px;
  box-shadow:0 6px 18px rgba(0,0,0,.30);max-width:calc(100vw - 24px)}
[data-theme="light"] .views-badge{background:rgba(255,255,255,.92)}
.views-badge b{color:var(--cyan-b);font-weight:600}
.views-badge .views-eye{color:var(--gold);margin-right:2px}
.views-badge .views-lbl{color:var(--mut);font-size:10px}
.views-badge .views-sep{color:var(--mut);margin:0 2px}
@media(max-width:560px){.views-badge{font-size:10px;padding:6px 9px}.views-badge .views-lbl{font-size:9.5px}}

/* ===== 阅览数 inline(首页底部嵌入) ===== */
.views-inline{margin:36px auto 14px;padding:14px 18px 0;text-align:center;
  font-family:var(--mono);font-size:12.5px;color:var(--mut);
  border-top:1px solid var(--line);letter-spacing:.05em;
  display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}
.views-inline b{color:var(--cyan-b);font-weight:600;font-size:14px}
.views-inline .views-eye{color:var(--gold);margin-right:4px}
.views-inline .views-lbl{font-size:11px;color:var(--mut);margin-right:2px}
.views-inline .views-sep{color:var(--mut);margin:0 4px}

/* ===== 语言下拉菜单 ===== */
.lang-wrap{position:relative;display:inline-block}
.lang-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;
  min-width:140px;padding:5px;display:none;
  background:rgba(15,22,32,.96);border:1px solid var(--line);border-radius:10px;
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:0 10px 28px rgba(0,0,0,.4)}
[data-theme="light"] .lang-menu{background:rgba(255,255,255,.96)}
.lang-menu.open{display:block;animation:lang-fade-in .15s ease-out}
@keyframes lang-fade-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
.lang-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;padding:8px 12px;text-align:left;cursor:pointer;
  background:transparent;border:0;color:var(--ink);
  font-size:13px;font-family:var(--sans);border-radius:6px;
  transition:background .12s,color .12s}
.lang-opt:hover{background:rgba(61,168,201,.10);color:var(--cyan-b)}
.lang-opt.active{color:var(--cyan);font-weight:600;background:rgba(61,168,201,.06)}
.lang-opt.active::before{content:"●";color:var(--cyan);margin-right:4px;font-size:10px}
.lang-opt .lang-name{flex:1}
.lang-opt .lang-code{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--mut)}
.lang-opt.active .lang-code{color:var(--cyan)}

/* ============================================================
 * 决策路径 · 3 路分流 · 2026-06-04 全面重设计
 * ========================================================== */
.paths{max-width:980px;margin:0 auto;padding:18px 22px 10px}
.paths-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.paths-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--gold);font-weight:600}
.paths-sub{font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;color:var(--mut);text-transform:uppercase}
.paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.path-card{display:flex;flex-direction:column;padding:12px 0 14px;color:var(--ink);text-decoration:none;transition:padding-left .15s ease,border-color .15s ease;border-bottom:1px solid rgba(201,168,76,.16);position:relative;min-width:0}
.path-card+.path-card{border-left:1px solid var(--line);padding-left:14px;margin-left:-1px}
.path-card:nth-child(2),.path-card:nth-child(3){padding-left:14px}
.path-card:nth-child(1){padding-right:14px}
.path-card:hover{border-bottom-color:rgba(201,168,76,.5);padding-left:20px}
.path-card.path-A:hover .path-tag{color:var(--cyan-b)}
.path-card.path-B:hover .path-tag{color:var(--gold-b)}
.path-card.path-C:hover .path-tag{color:var(--ok)}
.path-num{font-family:'Playfair Display','Iowan Old Style',serif;font-style:italic;font-size:22px;font-weight:700;line-height:1;color:rgba(201,168,76,.18);margin-bottom:4px;letter-spacing:-.02em}
.path-card.path-A .path-num{color:rgba(91,143,184,.22)}
.path-card.path-B .path-num{color:rgba(201,168,76,.22)}
.path-card.path-C .path-num{color:rgba(123,174,126,.22)}
.path-tag{font-family:var(--mono);font-size:9px;letter-spacing:.22em;font-weight:700;text-transform:uppercase;margin-bottom:4px;transition:color .15s}
.path-card.path-A .path-tag{color:var(--cyan)}
.path-card.path-B .path-tag{color:var(--gold)}
.path-card.path-C .path-tag{color:var(--ok)}
.path-h{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--ink);margin-bottom:3px;letter-spacing:.005em;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.path-d{font-family:var(--mono);font-size:10.5px;color:var(--mut);line-height:1.5;flex:1;margin-bottom:6px;letter-spacing:.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.path-cta{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--gold);opacity:.85;font-weight:600;white-space:nowrap}
.path-card.path-A .path-cta{color:var(--cyan)}
.path-card.path-C .path-cta{color:var(--ok)}
.path-card:hover .path-cta{opacity:1}
@media (max-width:760px){
  .paths{padding:12px 14px 8px}
  .path-card{padding:10px 8px !important;border-left:1px solid var(--line) !important;margin-left:-1px !important;border-bottom:0}
  .path-card:nth-child(1){border-left:0 !important;margin-left:0 !important}
  .path-card:hover{padding-left:12px !important}
  .path-num{font-size:16px;margin-bottom:2px}
  .path-tag{font-size:8.5px;margin-bottom:2px}
  .path-h{font-size:12.5px}
  .path-d{font-size:9.5px;line-height:1.45;margin-bottom:4px}
  .path-cta{font-size:9px;letter-spacing:.1em}
}

/* ============================================================
 * VOL.IV 工具类共享模块 · 2026-06-04 全面重设计
 * 给所有报告页 / 工具页提供统一 chapter-spread + sh-num 等模式
 * ========================================================== */

/* Chapter Spread · 大数字扉页 */
.chapter-spread{min-height:60vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 28px;text-align:center;position:relative;background:radial-gradient(ellipse 60% 40% at 50% 50%,rgba(201,168,76,.06),transparent 70%),linear-gradient(180deg,var(--bg2) 0%,var(--bg) 100%);border-top:1px solid rgba(201,168,76,.18);border-bottom:1px solid rgba(201,168,76,.18);margin:0 0 36px;overflow:hidden}
.chapter-spread::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}
.chapter-spread::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}
.cs-num{font-family:'Playfair Display','Iowan Old Style',serif;font-style:italic;font-weight:700;font-size:clamp(96px,18vw,220px);color:var(--gold);line-height:.85;opacity:.85;letter-spacing:-.04em;margin-bottom:24px;text-shadow:0 8px 60px rgba(201,168,76,.12)}
.cs-label{font-family:'Noto Sans SC',sans-serif;font-size:11px;letter-spacing:.4em;color:var(--gold);text-transform:uppercase;font-weight:600;margin-bottom:18px}
.cs-title{font-family:'Noto Serif SC',serif;font-size:clamp(28px,4.5vw,46px);font-weight:800;color:var(--ink);line-height:1.15;letter-spacing:-.01em;margin-bottom:18px;max-width:720px}
.cs-title em{color:var(--gold);font-style:normal}
.cs-lede{font-family:'Noto Serif SC',serif;font-size:clamp(15px,2vw,18px);color:var(--mut);font-style:italic;line-height:1.7;max-width:580px;margin-bottom:30px}
.cs-meta{font-family:'Noto Sans SC',sans-serif;font-size:11px;letter-spacing:.22em;color:var(--gold);opacity:.7;line-height:2}
.cs-meta b{color:var(--gold-b);font-weight:600}

/* Section Header (sh) · 跟 civilization 一致 */
.sh{margin-bottom:36px;padding-top:36px}
.sh-num{font-family:'Playfair Display','Iowan Old Style',serif;font-size:clamp(48px,7vw,84px);font-weight:700;color:rgba(201,168,76,.07);line-height:1;font-style:italic;margin-bottom:-14px;letter-spacing:-.03em}
.sh-label{font-family:'Noto Sans SC',sans-serif;font-size:10px;letter-spacing:.32em;color:var(--gold);font-weight:600;margin-bottom:10px;text-transform:uppercase}
.sh-title{font-family:'Noto Serif SC',serif;font-size:clamp(22px,4vw,40px);font-weight:800;color:var(--ink);line-height:1.2;letter-spacing:-.005em;margin-bottom:14px}
.sh-title em{color:var(--gold);font-style:normal}
.sh-line{width:64px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:0 0 18px}
.sh-desc{font-family:'Noto Sans SC',sans-serif;font-size:14px;color:var(--mut);font-weight:300;line-height:1.9;max-width:660px}

/* Bridge · 章节桥 */
.bridge{max-width:860px;margin:0 auto;padding:32px 28px 12px;text-align:center}
.bridge-tag{display:inline-block;font-family:'Noto Sans SC',sans-serif;font-size:9.5px;letter-spacing:.36em;color:var(--gold);font-weight:600;margin-bottom:14px;opacity:.65;padding:3px 14px;border:1px solid rgba(201,168,76,.18);text-transform:uppercase}
.bridge-line{width:1px;height:40px;background:linear-gradient(var(--gold),transparent);margin:0 auto 18px;opacity:.42}
.bridge-text{font-family:'Noto Serif SC',serif;font-size:14.5px;color:var(--mut);font-style:italic;line-height:1.85;max-width:560px;margin:0 auto;font-weight:300}
.bridge-text b{color:var(--gold-b);font-style:normal;font-weight:600;font-family:'Noto Sans SC',sans-serif}
.bridge-text em{color:var(--gold);font-style:normal}

/* ============================================================
 * 卡位强度图例 + 个股 tier 标识 · 2026-06-04
 * ========================================================== */
.tier-legend{max-width:1000px;margin:0 auto;padding:18px 18px 12px 22px;border-bottom:1px solid var(--line)}
.tl-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;color:var(--gold);font-weight:600;margin-bottom:12px;text-transform:uppercase}
.tl-grid{display:flex;flex-wrap:wrap;gap:18px}
.tl-item{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;color:var(--mut)}
.tl-box{display:inline-block;width:18px;height:10px;border-radius:2px}
.tl-strong{background:linear-gradient(90deg,var(--gold),var(--gold-b));box-shadow:0 0 6px rgba(201,168,76,.45)}
.tl-medium{background:linear-gradient(90deg,#5B8FB8,#7BAEDE);box-shadow:0 0 4px rgba(91,143,184,.32)}
.tl-weak{background:rgba(154,157,168,.32)}
.tl-lbl{color:var(--ink);font-weight:600;letter-spacing:.04em}
.tl-d{color:var(--mut);font-size:10.5px;letter-spacing:.02em}
@media(max-width:640px){.tl-grid{gap:14px;flex-direction:column}.tl-item{flex-wrap:wrap}.tl-d{display:block;width:100%;padding-left:30px}}

/* 个股 tier 标识 · 紧跟股票名后 */
.tier{display:inline-flex;align-items:center;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.08em;padding:2px 7px;border-radius:3px;margin-left:6px;vertical-align:middle;text-transform:uppercase;border:1px solid transparent}
.tier.strong{color:var(--gold-b);background:rgba(201,168,76,.12);border-color:rgba(201,168,76,.4)}
.tier.medium{color:#9adff2;background:rgba(91,143,184,.10);border-color:rgba(91,143,184,.35)}
.tier.weak{color:var(--mut);border-color:var(--line);background:transparent}
/* 浅色模式 · 高对比纯文 + 描边 · 不再用渐变发光 */
[data-theme="light"] .tier.strong{color:#6e5316;background:rgba(110,83,22,.10);border-color:rgba(110,83,22,.45)}
[data-theme="light"] .tier.medium{color:#1b6e8c;background:rgba(27,110,140,.10);border-color:rgba(27,110,140,.42)}
[data-theme="light"] .tier.weak{color:var(--mut);background:transparent;border-color:rgba(110,83,22,.25)}

/* 浅色模式 · 图例小色块 */
[data-theme="light"] .tl-strong{background:linear-gradient(90deg,#6e5316,#9a7530);box-shadow:none}
[data-theme="light"] .tl-medium{background:linear-gradient(90deg,#1b6e8c,#3c93b8);box-shadow:none}
[data-theme="light"] .tl-weak{background:rgba(110,83,22,.22)}

/* 个股简介 · 在 .co 后单独行 */
.co-brief{display:block;font-family:var(--mono);font-size:10.5px;color:var(--mut);line-height:1.55;letter-spacing:.01em;margin:2px 0 4px 24px;padding-left:8px;border-left:1px solid rgba(201,168,76,.18);opacity:.85;max-width:680px}
.co-brief b{color:var(--gold);font-weight:600}
@media(max-width:560px){.co-brief{margin-left:0;font-size:10px}}

/* 免责声明 · 树页顶部 */
.tier-disclaim{max-width:1000px;margin:0 auto;padding:14px 22px 16px;border-bottom:1px solid rgba(201,168,76,.16);background:rgba(201,168,76,.04)}
.td-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:#e87a8c;font-weight:600;margin-bottom:8px;text-transform:uppercase}
.tier-disclaim p{font-family:var(--mono);font-size:11px;line-height:1.85;color:var(--mut);letter-spacing:.01em;margin:0;font-weight:400}
.tier-disclaim p b{color:var(--gold);font-weight:600}
[data-theme="light"] .tier-disclaim{background:rgba(110,83,22,.05)}
[data-theme="light"] .td-tag{color:#c0594a}

/* tier 概率 % · 跟随 tier badge */
.tier-pct{font-family:var(--mono);font-size:9px;font-weight:700;margin-left:4px;opacity:.85;letter-spacing:.04em}
.tier.strong .tier-pct{color:var(--gold-b)}
.tier.medium .tier-pct{color:#9adff2}
.tier.weak .tier-pct{color:var(--mut)}
[data-theme="light"] .tier.strong .tier-pct{color:#553f0d}
[data-theme="light"] .tier.medium .tier-pct{color:#155a73}

/* ============================================================
 * 树页全面改造 · 2026-06-04
 * 1 Sector Hero · 2 Filter Strip · 3 Branch Headers · 4 Co Row
 * ========================================================== */

/* === Sector Hero === */
.sector-hero{max-width:1000px;margin:0 auto;padding:30px 22px 24px;border-bottom:1px solid var(--line)}
.sector-hero:empty{display:none}
.sector-hero .sh-eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.28em;color:var(--gold);font-weight:600;margin-bottom:14px;text-transform:uppercase}
.sector-hero .sh-h{font-family:'Noto Serif SC','Inter',serif;font-size:clamp(28px,4.5vw,44px);font-weight:900;color:var(--ink);letter-spacing:-.015em;line-height:1.1;margin-bottom:18px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.sector-hero .sh-en{font-family:'Playfair Display','Iowan Old Style',serif;font-style:italic;font-size:clamp(14px,2vw,18px);font-weight:400;color:var(--gold);opacity:.7;letter-spacing:.01em}

/* 强中弱 比例条 */
.sector-hero .sh-bar{display:flex;height:6px;width:100%;max-width:560px;border-radius:3px;overflow:hidden;background:rgba(154,157,168,.1);margin-bottom:18px;border:1px solid var(--line)}
.sector-hero .sh-bar > span{display:block;height:100%;transition:flex .4s ease}
.sb-strong{background:linear-gradient(90deg,var(--gold),var(--gold-b));box-shadow:0 0 8px rgba(201,168,76,.32)}
.sb-medium{background:linear-gradient(90deg,#5B8FB8,#7BAEDE)}
.sb-weak{background:rgba(154,157,168,.45)}
.sb-none{background:rgba(154,157,168,.15)}

.sector-hero .sh-stats{display:flex;gap:24px;flex-wrap:wrap;font-family:var(--mono)}
.ss-item{display:inline-flex;align-items:baseline;gap:6px;padding:6px 0;font-size:11px;letter-spacing:.04em}
.ss-item b{font-family:'Playfair Display','Iowan Old Style',serif;font-style:italic;font-size:24px;font-weight:700;color:var(--ink);line-height:1}
.ss-item em{color:var(--mut);font-style:normal;font-size:10.5px;letter-spacing:.06em}
.ss-strong b{color:var(--gold-b)}
.ss-strong em{color:var(--gold)}
.ss-medium b{color:#9adff2}
.ss-medium em{color:var(--cyan-b)}
.ss-weak b{color:var(--mut)}
[data-theme="light"] .ss-item b{color:var(--ink)}
[data-theme="light"] .ss-strong b{color:#553f0d}
[data-theme="light"] .ss-strong em{color:#6e5316}
[data-theme="light"] .ss-medium b{color:#1b6e8c}
[data-theme="light"] .ss-medium em{color:#155a73}

/* === Filter Strip · 静态 · 跟页面一起滚动 · 不再 sticky 遮挡 === */
.tier-filter{max-width:1000px;margin:0 auto;padding:14px 22px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-bottom:1px solid rgba(201,168,76,.10);background:transparent}
.tier-filter .tf-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;color:var(--mut);font-weight:600;text-transform:uppercase;margin-right:6px}
.tier-filter .tf-btn{font-family:var(--mono);font-size:11px;letter-spacing:.1em;font-weight:600;padding:6px 14px;border:1px solid var(--line);background:transparent;color:var(--mut);border-radius:99px;cursor:pointer;transition:all .15s;text-transform:uppercase}
.tier-filter .tf-btn:hover{border-color:var(--gold);color:var(--gold)}
.tier-filter .tf-btn.tf-active{background:rgba(201,168,76,.12);border-color:var(--gold);color:var(--gold-b)}
[data-theme="light"] .tier-filter .tf-btn.tf-active{background:rgba(110,83,22,.10);color:#6e5316;border-color:#6e5316}

/* === Branch Header 升级 · top-level row 加 stit 标识 === */
.kids > .node > .row > .nm{font-family:'Noto Sans SC','Inter',sans-serif;font-weight:700}
.node[data-depth="0"] > .row, .node[data-depth="1"] > .row{padding:14px 8px;margin:10px 0 0;border-bottom:1px solid rgba(201,168,76,.10)}
.node[data-depth="0"] > .row{font-size:15px}
.node[data-depth="0"] > .row > .nm{color:var(--gold-b)}

/* === Company Row 视觉升级 === */
.co{padding:8px 0;border-bottom:1px solid rgba(201,168,76,.06);transition:padding-left .15s ease,border-bottom-color .15s ease}
.co:hover{padding-left:8px;border-bottom-color:rgba(201,168,76,.32)}
.co .cn{font-family:'Noto Sans SC','Inter',sans-serif;font-weight:600;color:var(--ink);font-size:13.5px}
.co:hover .cn{color:var(--gold-b)}
.co .tk{font-family:var(--mono);font-size:11px;color:var(--gold);letter-spacing:.04em;opacity:.85}
.co .px{font-family:var(--mono);font-weight:600}
.co .as{opacity:.6;font-size:9.5px}

/* brief 升级 · 含 moat 时显金钩 */
.co-brief{margin-top:2px;margin-bottom:8px;font-size:11px;color:var(--mut);line-height:1.65;border-left:1px solid rgba(201,168,76,.22);padding:2px 0 2px 10px;margin-left:22px;max-width:720px;opacity:.85}
[data-theme="light"] .co-brief{color:var(--mut);border-left-color:rgba(110,83,22,.32)}

@media(max-width:560px){
  .sector-hero{padding:22px 16px 18px}
  .sector-hero .sh-stats{gap:14px}
  .ss-item b{font-size:20px}
  .tier-filter{top:48px;padding:10px 16px;gap:6px}
  .tier-filter .tf-btn{padding:5px 11px;font-size:10px}
  .co-brief{margin-left:0}
}

/* 过滤条 · 展开/闭合按钮 · 跟过滤分隔 */
.tier-filter .tf-sep{display:inline-block;width:1px;height:18px;background:var(--line);margin:0 6px;vertical-align:middle}
.tier-filter .tf-tree{color:var(--cyan-b);border-color:rgba(91,143,184,.35);background:rgba(91,143,184,.06)}
.tier-filter .tf-tree:hover{color:var(--cyan-b);border-color:var(--cyan-b);background:rgba(91,143,184,.14)}
[data-theme="light"] .tier-filter .tf-tree{color:#1b6e8c;border-color:rgba(27,110,140,.35);background:rgba(27,110,140,.06)}
[data-theme="light"] .tier-filter .tf-tree:hover{color:#155a73;border-color:#155a73;background:rgba(27,110,140,.14)}

@media(max-width:560px){
  .tier-filter .tf-sep{display:none}
  .tier-filter .tf-tree{width:100%;margin-top:4px}
}

/* ============================================================
 * 教学块 · 国家页 sectors 上方 · 卡位规则 · 2026-06-04
 * ========================================================== */
.rules-teach{max-width:1000px;margin:24px auto 8px;padding:24px 22px;border:1px solid rgba(201,168,76,.18);background:linear-gradient(180deg,rgba(201,168,76,.04),rgba(201,168,76,.01));border-radius:0;position:relative}
.rules-teach::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.5}
.rt-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid rgba(201,168,76,.14);flex-wrap:wrap}
.rt-tag{font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--gold);font-weight:700;text-transform:uppercase}
.rt-sub{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;color:var(--mut);text-transform:uppercase}

.rt-body{display:flex;flex-direction:column;gap:0;margin-bottom:18px}
.rt-row{display:grid;grid-template-columns:200px 1fr;gap:18px;padding:10px 0;border-bottom:1px solid rgba(201,168,76,.08);align-items:baseline}
.rt-row:last-child{border-bottom:0}
.rt-k{font-family:var(--mono);font-size:12px;color:var(--ink);letter-spacing:.04em}
.rt-k b{color:var(--gold-b);font-weight:700;margin:0 4px}
.rt-d{font-family:var(--sans);font-size:13px;color:var(--mut);line-height:1.7}

.rt-foot{font-family:var(--mono);font-size:11.5px;color:var(--mut);line-height:1.85;padding-top:14px;border-top:1px solid rgba(201,168,76,.10);letter-spacing:.01em}
.rt-foot b{color:var(--gold);font-weight:600;margin-right:4px}

/* light mode */
[data-theme="light"] .rules-teach{background:linear-gradient(180deg,rgba(110,83,22,.05),rgba(110,83,22,.01));border-color:rgba(110,83,22,.22)}
[data-theme="light"] .rt-k b{color:#553f0d}
[data-theme="light"] .rt-foot b{color:#6e5316}

@media(max-width:640px){
  .rules-teach{padding:18px 16px;margin:18px 12px 8px}
  .rt-row{grid-template-columns:1fr;gap:4px;padding:10px 0}
  .rt-k{font-size:11.5px}
  .rt-d{font-size:12px}
  .rt-foot{font-size:11px}
  .rt-head{flex-direction:column;align-items:flex-start;gap:6px}
}

/* 简介默认隐藏 · briefs-hidden 切换 */
body.briefs-hidden .co-brief{display:none !important}

/* ============================================================
 * 视图模式 · 视觉版 vs 详细版 · 2026-06-04
 * ========================================================== */

/* 旧 visual / detail 已被 3 视图重新定义 (见 styles.css 末尾) — 此段保留作回滚锚 */

/* tf-view 按钮 · 跟 tf-tree 同蓝调 */
.tier-filter .tf-view{color:var(--cyan-b);border-color:rgba(91,143,184,.35);background:rgba(91,143,184,.06)}
.tier-filter .tf-view:hover{color:var(--cyan-b);border-color:var(--cyan-b);background:rgba(91,143,184,.14)}
.tier-filter .tf-view.tf-active{background:rgba(91,143,184,.18);border-color:var(--cyan-b);color:var(--cyan-b)}
[data-theme="light"] .tier-filter .tf-view{color:#1b6e8c;border-color:rgba(27,110,140,.35);background:rgba(27,110,140,.06)}
[data-theme="light"] .tier-filter .tf-view.tf-active{background:rgba(27,110,140,.16);border-color:#155a73;color:#155a73}

/* ============================================================
 * 过滤强化版 · 搜索 + 排序 + 计数 + 重置 · 2026-06-04
 * ========================================================== */
.tier-filter{padding:12px 22px;gap:8px}

/* 搜索框 */
.tf-search{font-family:var(--mono);font-size:11.5px;padding:6px 12px;border:1px solid var(--line);background:rgba(14,18,24,.42);color:var(--ink);border-radius:99px;width:180px;outline:none;letter-spacing:.02em;transition:border-color .15s,background .15s}
.tf-search::placeholder{color:var(--mut);opacity:.7}
.tf-search:focus{border-color:var(--gold);background:rgba(201,168,76,.06)}
[data-theme="light"] .tf-search{background:rgba(255,255,255,.62)}
[data-theme="light"] .tf-search:focus{background:rgba(110,83,22,.06)}

/* 排序下拉 */
.tf-select{font-family:var(--mono);font-size:11px;padding:6px 12px;border:1px solid var(--line);background:rgba(14,18,24,.42);color:var(--ink);border-radius:99px;outline:none;letter-spacing:.04em;cursor:pointer;transition:border-color .15s;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:28px}
.tf-select:hover,.tf-select:focus{border-color:var(--gold)}
.tf-select option{background:var(--bg2);color:var(--ink)}
[data-theme="light"] .tf-select{background:rgba(255,255,255,.62);color:var(--ink)}
[data-theme="light"] .tf-select option{background:var(--bg2);color:var(--ink)}

/* 计数 */
.tf-count{font-family:'Playfair Display','Iowan Old Style',serif;font-style:italic;font-size:14px;font-weight:700;color:var(--gold);padding:4px 12px;border-left:1px solid var(--line);letter-spacing:.02em;margin-left:auto}
[data-theme="light"] .tf-count{color:#553f0d}

/* 重置 */
.tf-reset{color:var(--mut) !important;border-color:var(--line) !important;background:transparent !important;letter-spacing:.04em !important}
.tf-reset:hover{color:#e87a8c !important;border-color:#e87a8c !important;background:rgba(199,75,58,.06) !important}

/* tier multi-active state · 跟单选区别 */
.tf-btn.tf-tier{opacity:.4}
.tf-btn.tf-tier.tf-active{opacity:1}
.tf-btn.tf-tier:hover{opacity:.85}

@media(max-width:760px){
  .tier-filter{flex-direction:row;flex-wrap:wrap;padding:10px 14px;gap:6px}
  .tf-search{width:140px;font-size:11px;padding:5px 10px}
  .tf-select{font-size:10.5px;padding:5px 10px;padding-right:26px}
  .tf-count{margin-left:0;font-size:13px;border-left:0;padding:4px 8px}
}
@media(max-width:480px){
  .tf-search{width:calc(100% - 60px)}
  .tf-select{width:100%}
  .tf-count{order:99;width:100%;text-align:center;border-left:0;border-top:1px solid var(--line);padding-top:8px;margin-top:6px}
}

/* ============================================================
 * 3 视图终版 · 视觉(紧凑+条) / 详细(简介) / 逻辑(领域关系) · 2026-06-04
 * ========================================================== */

/* 强度条 · 视觉版主角 */
.co-strbar{display:inline-block;width:56px;height:5px;background:rgba(154,157,168,.14);border-radius:3px;overflow:hidden;margin-left:8px;vertical-align:middle;border:1px solid rgba(201,168,76,.10)}
.csb-fill{display:block;height:100%;border-radius:2px;transition:width .4s ease}

/* ─── 视觉版 · 紧凑 · 跟旧版同密度 · 无进度条 ─── */
body.view-visual .co-brief,
body.view-visual .co-logic,
body.view-visual .co-strbar{display:none}
body.view-visual .co{padding:3px 0;font-size:12px;border-bottom-color:rgba(201,168,76,.04)}
body.view-visual .co .cn{font-size:12px;font-weight:500;font-family:var(--mono);color:var(--ink)}
body.view-visual .co .tk{font-size:10.5px;font-weight:500}
body.view-visual .co .as{display:none}
body.view-visual .tier{font-size:8.5px;padding:1px 5px;margin-left:4px;letter-spacing:.05em}
body.view-visual .tier-pct{font-size:8px;margin-left:3px}
body.view-visual .co:hover{padding-left:6px}

/* ─── 详细版 · 4 字段结构化精炼 · 护城河 / 板块 / 壁垒 / 未来 ─── */
body.view-detail .co-brief.co-brief-detail{display:flex;flex-direction:column;gap:1px;margin:3px 0 8px 22px;padding:6px 0 4px 10px;border-left:1px solid rgba(201,168,76,.28);max-width:740px;font-family:var(--mono)}
body.view-detail .co-logic{display:none}
body.view-detail .co{padding:8px 0 2px;font-size:12.5px}
body.view-detail .co-strbar{display:none}
.cb-row{display:grid;grid-template-columns:48px 1fr;gap:8px;font-size:10.5px;line-height:1.65;padding:1px 0;align-items:baseline}
.cb-k{font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--gold);font-weight:700;font-style:normal;text-transform:uppercase;text-align:right;opacity:.95}
.cb-k-tech{color:#9adff2}
.cb-k-future{color:#7BAE7E}
.cb-v{font-family:var(--sans);font-size:11.5px;color:var(--ink-2,var(--ink));font-weight:400;letter-spacing:.005em}
[data-theme="light"] .cb-k{color:#6e5316}
[data-theme="light"] .cb-k-tech{color:#1b6e8c}
[data-theme="light"] .cb-k-future{color:#1f8f63}
[data-theme="light"] body.view-detail .co-brief.co-brief-detail{border-left-color:rgba(110,83,22,.4)}
@media(max-width:540px){
  body.view-detail .co-brief.co-brief-detail{margin-left:0}
  .cb-row{grid-template-columns:42px 1fr;gap:6px}
}

/* ─── 逻辑版 · 只保留树骨架 · 砍所有股票/简介 · 看大框架 ─── */
body.view-logic .co,
body.view-logic .co-brief,
body.view-logic .co-logic,
body.view-logic .cos{display:none}
/* 树节点高亮 · 突出层级 */
body.view-logic .row{padding:9px 8px;font-size:13.5px;border-bottom:1px solid rgba(201,168,76,.06)}
body.view-logic .row .nm{color:var(--ink);font-weight:600}
body.view-logic .row .role{color:var(--mut);font-size:11px;opacity:.85;margin-left:8px}
/* 顶级分支 (root + 一级) · 更突出 */
body.view-logic > .tree > .node > .row{font-size:17px;padding:14px 8px;border-bottom:1px solid rgba(201,168,76,.22)}
body.view-logic > .tree > .node > .row > .nm{color:var(--gold-b);font-family:'Noto Serif SC',serif;font-weight:800}
body.view-logic .kids > .node > .row{font-size:14px}
body.view-logic .kids > .node > .row > .nm{color:var(--ink)}
/* 二级 (kids > kids > node) · 中等突出 */
body.view-logic .kids .kids > .node > .row{font-size:12.5px;padding:6px 8px}
body.view-logic .kids .kids > .node > .row > .nm{color:var(--ink-2,var(--ink));opacity:.85;font-weight:500}
/* 加重金线连接 */
body.view-logic .node > .kids{border-left:1px solid rgba(201,168,76,.32)}
body.view-logic .kids > .node > .row::before{background:rgba(201,168,76,.55)}
body.view-logic .badge{opacity:.95;font-size:10px}

@media(max-width:640px){
  body.view-visual .co-strbar{width:48px;height:4px}
  body.view-logic .row{padding:7px 6px;font-size:12.5px}
}
