
:root{--bg:#f5f4ed;--panel:#faf9f5;--panel2:#ffffff;--bd:#e8e6dc;--fg:#141413;--mut:#5e5d59;
--up:#b53333;--down:#24815d;--accent:#c96442;--warn:#a66a2a;--ring:#d1cfc5;--soft:#f0eee6}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--fg);font:14px/1.5 -apple-system,"PingFang SC",sans-serif;padding:18px}
body[data-page="home"] [data-section-order]:not([data-section-order="0"]),
body[data-page="market"] [data-section-order]:not([data-section-order="1"]):not([data-section-order="2"]):not([data-section-order="3"]):not([data-section-order="4"]),
body[data-page="signals"] [data-section-order]:not([data-section-order^="5"]),
body[data-page="emotion"] [data-section-order]:not([data-section-order="6"]),
body[data-page="chains"] [data-section-order]:not([data-section-order="7"]):not([data-section-order="8"]),
body[data-page="system"] [data-section-order]:not([data-section-order="9"]),
body[data-page="holdings"] [data-section-order]{display:none!important}
.home-only{display:none}body[data-page="home"] .home-only{display:block}
.holdings-only{display:none}body[data-page="holdings"] .holdings-only{display:block}
body[data-page="holdings"] .signal-summary,body[data-page="holdings"]>div.kpi{display:none}
h1{font:500 24px/1.18 Georgia,"Times New Roman","PingFang SC",serif}h2{font:500 16px/1.25 Georgia,"Times New Roman","PingFang SC",serif;color:#3d3d3a;margin:0 0 8px}
h3{font-size:12px;color:var(--fg);font-weight:600;margin:0 0 6px}
.sub{color:var(--mut);font-size:12px;margin-bottom:14px}
.grid{display:grid;gap:14px;margin-top:14px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.chainwrap{display:grid;gap:10px;margin-top:6px;grid-template-columns:minmax(0,1fr)}
.chainlayers{display:flex;margin:4px 58px 0;color:var(--mut);font-size:10.5px;text-align:center}
.chainlayers span{flex:1;border-bottom:1px solid var(--bd);padding-bottom:3px}
.chainnode{cursor:pointer}.chainnode:hover circle{stroke:#141413;stroke-width:2}
.card{background:var(--panel);border:1px solid var(--bd);border-radius:12px;padding:14px;min-width:0;scroll-margin-top:92px;box-shadow:0 0 0 1px rgba(209,207,197,.25)}
.chart{width:100%;height:280px}
table{width:100%;border-collapse:collapse;font-size:12.5px}
th,td{text-align:right;padding:5px 7px;border-bottom:1px solid var(--bd);white-space:nowrap}
th:first-child,td:first-child{text-align:left}th{color:var(--mut);font-weight:600}
.stock-indexed .stock-index{width:42px;min-width:42px;text-align:center!important;color:var(--mut);font-variant-numeric:tabular-nums}
.stock-indexed th:nth-child(2),.stock-indexed td:nth-child(2){text-align:left}
.sort-controls{display:inline-flex;align-items:center;gap:1px;margin-left:4px;vertical-align:middle}
.sort-arrow{width:15px;height:17px;border:0;background:transparent;color:#66717f;padding:0;cursor:pointer;font-size:10px;line-height:17px;text-align:center}
.sort-arrow:hover,.sort-arrow.on{color:var(--accent);background:var(--soft);border-radius:3px}.sort-arrow:focus-visible{outline:1px solid var(--accent);outline-offset:1px}
th.sortable-column{white-space:nowrap}th.sortable-column[aria-sort="ascending"] .sort-asc,th.sortable-column[aria-sort="descending"] .sort-desc{color:var(--accent)}
.scroll thead th{position:sticky;top:0;background:var(--panel);z-index:3;box-shadow:0 1px 0 var(--bd)}
.up{color:var(--up)}.down{color:var(--down)}.mut{color:var(--mut)}
.badge{display:inline-block;padding:2px 9px;border-radius:20px;border:1px solid var(--bd)}
.kpi{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:4px}
.kpi div{background:var(--panel2);border:1px solid var(--bd);border-radius:8px;padding:8px 14px}
.kpi b{font-size:18px;display:block}.kpi span{color:var(--mut);font-size:11px}
.rowclick{cursor:pointer}.rowclick:hover{background:var(--soft)}
.lite{font-size:11px;color:var(--mut);margin-top:6px}.scroll{max-height:300px;overflow:auto}
.lad{display:flex;flex-direction:column-reverse;gap:6px}
.lrow{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:8px}
.lnum{color:var(--warn);font-weight:600;text-align:right;padding-top:2px;white-space:nowrap}.lstocks{min-width:0}
.chip{display:inline-block;padding:2px 8px;margin:2px;border-radius:6px;border:1px solid var(--bd);font-size:12px}
.cmain{background:#fff1ed;border-color:#d9a28f;color:#9f2f25}.cout{background:#f0eee6;color:var(--mut)}
.cst{outline:1px dashed var(--warn)}
.sc{display:flex;align-items:center;gap:8px;margin:5px 0}.sc .bar{height:10px;border-radius:3px;background:var(--accent)}
.sc.dead{opacity:.45}.sc.dead .bar{background:var(--mut)}.sc .lab{width:120px}.sc .w{width:38px;text-align:right;color:var(--mut)}
.fcard{border:1px solid var(--bd);border-radius:8px;padding:8px 10px;margin:6px 0;background:var(--panel2)}
.fcard b{color:var(--fg)}.fcard span{color:var(--mut);font-size:12px}
.pbfilters{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.pbfilter{cursor:pointer;border:1px solid var(--bd);background:var(--panel2);color:var(--mut);padding:4px 10px;border-radius:6px;font-size:12px}
.pbfilter.on{border-color:var(--accent);color:var(--fg);background:#fff0ea}
.pbrow{cursor:pointer}.pbrow:hover{background:var(--soft)}.pbstage{font-weight:600}.stocklink,.marketlink{cursor:pointer;border-bottom:1px dotted var(--accent)}
.s-B0{color:#d2a23a}.s-P1{color:var(--accent)}.s-P2{color:var(--warn)}.s-P3{color:var(--up)}.s-P4{color:#ff9b94}.s-P5{color:#a855f7}.s-X{color:var(--down)}
.decision-card{border-color:var(--ring)}.decision-head{display:grid;grid-template-columns:repeat(6,minmax(92px,1fr));gap:1px;background:var(--bd);margin:8px 0}
.decision-head div{background:var(--panel2);padding:8px 10px;min-width:0}.decision-head span{display:block;color:var(--mut);font-size:10.5px}.decision-head b{font-size:18px}
.decision-section{margin-top:12px}.decision-section h3{font-size:12px;color:var(--fg);font-weight:600;margin-bottom:5px}.risk-section h3{color:var(--down)}
.decision-scroll{max-height:320px}.decision-row .decision-action,.decision-row .decision-evidence{min-width:210px;max-width:330px;white-space:normal;text-align:right;vertical-align:middle}.decision-row .decision-action{color:var(--fg)}.decision-row .decision-evidence{color:var(--mut)}.empty-decision{color:var(--mut);font-size:12px;padding:12px 2px}
.decision-table th:nth-last-child(-n+2),.decision-table td:nth-last-child(-n+2),.next-step-table th:last-child,.next-step-table td:last-child{text-align:right;vertical-align:middle}
.strategy-overview{border-color:var(--ring)}.strategy-head{display:grid;grid-template-columns:repeat(9,minmax(100px,1fr));gap:1px;background:var(--bd);margin:8px 0}
.strategy-head div{background:var(--panel2);padding:8px 10px;min-width:0}.strategy-head span{display:block;color:var(--mut);font-size:10.5px}.strategy-head b{font-size:16px;white-space:normal}
.strategy-lanes{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-top:12px;border-top:1px solid var(--bd)}
.strategy-context,.focus-note{color:var(--mut);font-size:10.5px;text-align:left;padding:3px 0 7px}.strategy-context b{font-size:11px}
.strategy-filters{margin:4px 0 8px}.strategy-filter-sep{width:1px;min-height:24px;background:var(--bd);margin:0 2px}.strategy-screen-scroll{max-height:720px}.strategy-table{min-width:1780px}.strategy-table td{vertical-align:middle;height:92px}.strategy-table th:nth-child(2),.strategy-table td:nth-child(2){text-align:left}.strategy-table small,.strategy-sub,.core-role{display:block;color:var(--mut);font-size:10px;line-height:1.45;margin-top:3px}.core-role{color:#8a6220}.strategy-setups{white-space:normal!important;min-width:210px}.strategy-setups>span{display:block;line-height:1.5}.strategy-setups>span b{color:var(--fg)}.strategy-action,.strategy-evidence,.strategy-risk{white-space:normal!important;min-width:210px;max-width:340px;line-height:1.45}.strategy-action{color:var(--fg)}.strategy-evidence{color:var(--fg)}.strategy-evidence>span{display:block;margin-bottom:3px}.strategy-evidence small i{display:inline-block;font-style:normal;border:1px solid var(--bd);border-radius:3px;padding:0 4px;margin:2px 3px 0 0;color:var(--mut)}.strategy-risk{color:var(--mut)}
.linkage-summary{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:1px;background:var(--bd);margin:4px 0 8px}.linkage-summary>span{background:var(--panel2);padding:7px 9px;color:var(--mut);font-size:10px}.linkage-summary b{display:inline-block;color:var(--fg);font-size:16px;margin-right:3px}.linkage-summary small{display:block;margin-top:2px}.strategy-linkage{white-space:normal!important;min-width:190px}.linkage-path{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.linkage-path>i{font-style:normal;color:var(--mut);font-size:9px}.linkage-chip,.funnel-dest{border:1px solid var(--bd);background:var(--panel2);color:var(--fg);border-radius:4px;padding:2px 6px;font:inherit;font-size:10px;cursor:pointer}.linkage-chip:hover,.funnel-dest:hover{border-color:var(--accent);background:#fff0ea}.linkage-chip.identity{color:#8a6220;border-color:#dbc28b}.linkage-chip.setup,.linkage-chip.confirm{color:#9f2c28;border-color:#d8a993}.linkage-chip.veto{color:#285747;border-color:#7eb69e}.linkage-chip.observe{color:var(--mut)}.funnel-destination{min-width:132px;white-space:normal!important}.funnel-destination small{display:block;color:var(--mut);font-size:9.5px;line-height:1.35;margin-top:3px}.no-funnel{display:inline-block;color:var(--mut);border-bottom:1px dotted var(--mut);font-size:10px}.linkage-flash{animation:linkagePulse 1.8s ease-out}@keyframes linkagePulse{0%,30%{box-shadow:inset 4px 0 0 var(--accent);background:#fff0ea}100%{box-shadow:inset 0 0 0 transparent;background:transparent}}
.action-tier{display:inline-block;border:1px solid;border-radius:4px;padding:2px 6px;margin:0 5px 4px 0;font-size:10.5px;font-weight:700}.action-tier.tier-CONDITIONAL{color:#faf9f5;background:#9f2c28;border-color:#d94942}.action-tier.tier-WATCH{color:#8a6220;background:#fff5d8;border-color:#d2a23a}.action-tier.tier-TRACK{color:#2d5c4d;background:#edf8f2;border-color:#7eb69e}.action-tier.tier-AVOID{color:#faf9f5;background:#2d6a4f;border-color:#4a9d78}.risk-flag{display:block;border-left:3px solid var(--bd);padding-left:7px;margin:3px 0}.risk-flag b{display:block;font-size:9.5px;color:var(--mut)}.risk-flag.hard{border-color:#2d6a4f;color:#285747}.risk-flag.soft{border-color:#d2a23a;color:#72591a}.action-avoid{background:rgba(45,106,79,.035)}
.strategy-ledger{margin-top:13px;border-top:1px solid var(--bd);padding-top:10px}.strategy-ledger-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:6px}.strategy-ledger-head h3{margin:0;font-size:13px}.strategy-ledger-head span{color:var(--mut);font-size:10px;text-align:right}.strategy-ledger-table{min-width:980px}.strategy-ledger-table td,.strategy-ledger-table th{text-align:right}.strategy-ledger-table td:first-child,.strategy-ledger-table th:first-child{text-align:left}
.signal-new{display:inline-block;color:#faf9f5;background:#9f2c28;border:1px solid #d94942;border-radius:3px;padding:0 4px;font-size:9px}.seat-class{display:inline-block;border:1px solid;border-radius:3px;padding:1px 5px;font-size:10px}.seat-class.leader{color:#f2c94c;border-color:#8a7228}.seat-class.watch{color:#9fb4cc;border-color:#46576b}
.ma250-band{display:inline-block;border:1px solid;border-radius:3px;padding:1px 5px;font-size:10px}.ma250-band.weak{color:#67d3a2;border-color:#1b6746}.ma250-band.near{color:#f1c866;border-color:#685427}.ma250-band.healthy{color:#ff9b94;border-color:#74302e}.ma250-band.extended{color:#c7a0ff;border-color:#65408c}.ma250-band.na{color:var(--mut);border-color:var(--bd)}
.strategy-tags{white-space:normal!important;min-width:150px}.strategy-tags span{display:inline-block;margin:1px 3px 1px 0;padding:1px 5px;border:1px solid var(--ring);border-radius:3px;color:#9fb4cc;font-size:10px}.risk-details summary{color:var(--down)}
.focus-panel{border-color:var(--ring)}.focus-note{border-bottom:1px solid var(--bd)}
.focus-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.focus-lane{min-width:0;border-top:1px solid var(--bd);padding-top:8px}.focus-lane-head{display:flex;align-items:center;gap:8px;min-height:28px}.focus-lane-head h3{margin:0}.focus-lane-head>b{color:var(--mut);font-size:10.5px}
.focus-scroll{max-height:none}.focus-scroll table{min-width:1380px}.focus-scroll th,.focus-scroll td{text-align:right!important;vertical-align:middle!important}.focus-scroll th{height:40px}.focus-row{height:104px}.focus-row td{height:104px}.focus-row td>span,.focus-trend>span,.focus-row td>small{display:block;color:var(--mut);font-size:10px;line-height:1.45}.focus-code{letter-spacing:0}
.focus-trend{text-align:right!important;min-width:190px}.focus-boards{text-align:right!important;min-width:280px;white-space:normal!important}.focus-board{display:block!important;margin:1px 0;white-space:normal;text-align:right}.focus-board>small{display:inline!important;margin-left:5px;color:var(--mut)}
.focus-turnover-strip{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;padding:6px 0;color:var(--mut);font-size:10.5px;border-bottom:1px solid var(--bd);text-align:left}.focus-turnover-strip b{color:var(--fg)}.focus-turnover-strip a{color:var(--accent);text-decoration:none;border-bottom:1px dotted var(--accent)}.focus-turnover{display:flex!important;flex-direction:column;align-items:flex-end;gap:1px;min-width:108px}.focus-turnover>b{font-size:15px!important;line-height:1.25;color:var(--fg)}.focus-turnover>small{font-size:10.5px!important;white-space:nowrap}
.turn-badge{display:inline-block;border:1px solid;border-radius:3px;padding:0 4px;font-size:9.5px;margin-left:4px}.turn-badge.strong{color:#ff9b94;border-color:#74302e}.turn-badge.watch{color:#f1c866;border-color:#685427}.turn-badge.baseline{color:#9fb4cc;border-color:#46576b}.turn-badge.suspended,.turn-badge.missing{color:var(--mut);border-color:var(--bd)}.turn-risk{color:var(--down)!important}.turn-monitor-cell{white-space:normal!important;min-width:150px}.turn-monitor-cell span,.turn-monitor-cell small{display:block;color:var(--mut);font-size:10px;line-height:1.4}.turn-monitor-cell .turn-badge{display:inline-block}.turnover-monitor{margin:10px 0 12px;border-top:1px solid var(--ring);border-bottom:1px solid var(--ring);background:var(--panel2);padding:9px}.turnover-monitor h3{color:var(--accent);font-size:12px}.turnover-monitor .scroll{margin-top:7px;max-height:270px}
.position-form{display:grid;grid-template-columns:1.35fr 1fr .8fr .8fr 1fr auto auto;gap:6px;margin:9px 0}
.position-form input,.position-form button{width:100%;min-width:0;border:1px solid var(--bd);border-radius:5px;background:var(--panel2);color:var(--fg);padding:6px 8px;font:inherit}
.position-form button{cursor:pointer;white-space:nowrap}.position-form button:hover{border-color:var(--accent);background:#fff0ea}
.pos-lookup{position:relative;min-width:0}.pos-suggest{display:none;position:absolute;z-index:25;left:0;right:0;top:calc(100% + 3px);max-height:230px;overflow:auto;background:var(--panel2);border:1px solid var(--ring);border-radius:5px;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.pos-suggest.on{display:block}.pos-option{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;cursor:pointer;border-bottom:1px solid var(--bd)}.pos-option:hover,.pos-option.on{background:#fff0ea}.pos-option span:last-child{color:var(--mut)}
.position-actions{display:flex;gap:5px}.position-actions button{border:1px solid var(--bd);background:var(--panel2);color:var(--mut);padding:2px 7px;border-radius:4px;cursor:pointer}
.holding-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--bd);margin:12px 0}.holding-summary div{background:var(--panel2);padding:10px 12px}.holding-summary span{display:block;color:var(--mut);font-size:10.5px}.holding-summary b{display:block;font-size:17px;margin-top:2px}.holding-editor,.holding-analysis{margin-top:14px}.holding-analysis .scroll{max-height:650px}.holdings-analysis-table{min-width:1900px}.holdings-analysis-table td{vertical-align:middle}.holdings-analysis-table td:nth-last-child(2){white-space:normal;min-width:220px}.index-flow-block{border-top:1px solid var(--bd);padding-top:10px;margin-top:6px}.index-flow-block .source-tabs{flex-wrap:wrap}
.tier,.quad{display:inline-block;border:1px solid var(--bd);border-radius:4px;padding:1px 6px;font-size:10.5px;white-space:nowrap}
.tier-EXECUTE{color:#faf9f5;background:#9f2c28;border-color:#d94942}.tier-CONDITIONAL{color:var(--warn);background:#2b2415;border-color:#5f4e22}
.tier-PREPARE{color:var(--accent);background:#16253c;border-color:#294d7d}.tier-MANAGE{color:#c7a0ff;background:#261c35;border-color:#553579}.tier-VETO{color:#8ee1b9;background:#0e2b20;border-color:#1b6746}
.governance{border-color:var(--ring);background:#fffdf8}.governance h2{font-size:15px}.rule-state{display:inline-block;padding:2px 7px;border:1px solid;border-radius:4px;font-size:11px;font-weight:700}.rule-state.formal{color:#1f6f4f;border-color:#9fc9b8;background:#eef8f2}.rule-state.monitor{color:#8b432b;border-color:#d8a993;background:#fff0ea}.rule-state.shadow{color:#8a6220;border-color:#dbc28b;background:#fff7df}
.q-缩量回调{color:var(--accent)}.q-放量回调{color:var(--up)}.q-缩量破位{color:var(--down)}.q-放量破位{color:#c7a0ff}
.source-tabs{display:flex;gap:4px;margin:4px 0 8px}.source-tab{border:1px solid var(--bd);background:var(--panel2);color:var(--mut);padding:4px 12px;border-radius:5px;cursor:pointer}.source-tab.on{color:var(--fg);border-color:var(--accent);background:#fff0ea}.mini-btn{border:1px solid var(--bd);background:var(--panel2);color:var(--fg);padding:2px 8px;border-radius:4px;cursor:pointer;font-size:11px}.mini-btn:hover{border-color:var(--accent);background:#fff0ea}
.cross-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.cross-toolbar .source-tabs{margin:0}.cross-toolbar label{display:flex;align-items:center;gap:5px;color:var(--mut);font-size:11px}.cross-toolbar select{border:1px solid var(--bd);background:var(--panel2);color:var(--fg);padding:5px 8px;border-radius:5px}.capital-panel{min-width:0}
.quad-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.quad-toolbar .source-tabs{margin:0}.quad-toolbar select{min-width:220px;max-width:420px;border:1px solid var(--bd);background:var(--panel2);color:var(--fg);padding:5px 9px;border-radius:5px}.quad-zoom{display:flex;align-items:center;gap:6px;color:var(--mut);font-size:11px}.quad-zoom input{width:150px;accent-color:var(--accent)}.quad-reset{width:28px;height:28px;border:1px solid var(--bd);background:var(--panel2);color:var(--mut);border-radius:5px;cursor:pointer}.quad-summary{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.quad-summary span{border:1px solid var(--bd);background:var(--panel2);border-radius:4px;padding:3px 8px;font-size:11px;color:var(--mut)}.quad-summary b{color:var(--fg)}#c_quad canvas{cursor:grab}#c_quad canvas:active{cursor:grabbing}
.quad-mv{border:1px solid var(--bd);background:var(--panel2);padding:8px 10px;margin:8px 0}.quad-mv-head{display:flex;justify-content:space-between;gap:12px;color:var(--mut);font-size:10.5px;margin-bottom:5px}.quad-mv-bar{display:flex;width:100%;height:12px;overflow:hidden;border-radius:3px;background:#e8e6dc}.quad-mv-bar i{display:block;height:100%;min-width:0}.quad-mv-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:6px}.quad-mv-item{display:flex;align-items:center;gap:5px;min-width:0;font-size:10.5px;color:var(--mut)}.quad-mv-item i{width:8px;height:8px;flex:0 0 8px}.quad-mv-item b{color:var(--fg)}
.hist-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 0 8px}.hist-toolbar .source-tabs{margin:0}.hist-toolbar select{min-width:220px;border:1px solid var(--bd);background:var(--panel2);color:var(--fg);padding:5px 9px;border-radius:5px}
.shadow-score{color:#f1c866}
.flow-lanes{display:flex;gap:3px;flex-wrap:wrap;justify-content:flex-start}.flow-lanes i{font-style:normal;font-size:9.5px;line-height:1.4;padding:0 4px;border:1px solid rgba(255,255,255,.38);border-radius:3px;color:#fff;background:#9b5b3f}
.migration-phase{display:inline-block;padding:1px 5px;border:1px solid;border-radius:3px;font-size:10px;white-space:nowrap;background:#fff8f2}.phase-持续流入{color:#7d2525;border-color:#d9a28f}.phase-当日回流{color:#8b432b;border-color:#d9a28f}.phase-持续流出{color:#1f6f4f;border-color:#9fc9b8;background:#eef8f2}.phase-当日分歧{color:#7b561f;border-color:#dbc28b;background:#fff7df}
.reason-cell{white-space:normal!important;text-align:right!important;min-width:160px;max-width:330px;vertical-align:middle!important}.concept-cell{white-space:normal!important;text-align:left!important;min-width:150px;max-width:300px;vertical-align:middle}.seat-score-table th:nth-child(3),.seat-score-table td:nth-child(3){text-align:right!important}.dragon-stock-table th:nth-child(4),.dragon-stock-table td:nth-child(4),.core-watch-table th:nth-child(13),.core-watch-table td:nth-child(13){text-align:left;vertical-align:middle}.dragon-stock-table th:last-child,.dragon-stock-table td:last-child{text-align:right;vertical-align:middle}.dragon-stock-table td,.core-watch-table td,.seat-score-table td{vertical-align:middle}.score-breakdown{display:block;white-space:normal;min-width:145px;font-size:9.5px;line-height:1.35}.dragon-scroll{max-height:330px}.core-watch-scroll{max-height:520px}.edge{display:inline-block;font-size:9.5px;padding:0 4px;margin:2px 3px 0 0;border:1px solid;border-radius:3px}.edge.gold{color:#f2c94c;border-color:#8a7228}.edge.silver{color:#d7dee8;border-color:#687382}.seat-hit{display:inline-block;color:#f2c94c;border:1px solid #8a7228;border-radius:3px;padding:0 4px;font-size:9.5px;margin-top:2px}
.evidence-details{margin-top:10px;border-top:1px solid var(--bd);padding-top:8px}.evidence-details summary{cursor:pointer;color:var(--accent);font-size:12px}
.kpop{display:none;position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.68);padding:24px;align-items:center;justify-content:center}
.kpop.on{display:flex}.kdialog{width:min(980px,calc(100vw - 24px));height:min(680px,calc(100vh - 24px));background:var(--panel2);border:1px solid var(--ring);border-radius:8px;box-shadow:0 18px 60px rgba(0,0,0,.65);padding:12px;display:flex;flex-direction:column}
.kpophead{min-height:34px;display:flex;align-items:center;gap:8px;font-size:12px}.kpophead b{font-size:15px}.kpophead .mut{flex:1}
.kmodes{display:flex;gap:4px}.kmode{border:1px solid var(--bd);background:var(--panel2);color:var(--mut);padding:3px 10px;border-radius:5px;cursor:pointer}.kmode.on{color:var(--fg);border-color:var(--accent);background:#fff0ea}
.kquadtools{display:none;align-items:center;gap:5px}.kquadtools.on{display:flex}.kquadtools select{max-width:320px;min-width:190px;border:1px solid var(--bd);background:var(--panel2);color:var(--fg);padding:4px 8px;border-radius:5px}
.kmembertools{display:none;align-items:center;gap:5px}.kmembertools.on{display:flex}.kmemberview{display:none;flex:1;min-height:0;overflow:auto}.kmemberview.on{display:block}.member-tags{display:flex;gap:3px;flex-wrap:wrap}.member-tag{border:1px solid var(--bd);border-radius:3px;padding:0 4px;font-size:9.5px}.member-tag.core{color:#f2c94c;border-color:#8a7228}.member-tag.trend{color:var(--up)}.member-tag.elastic{color:var(--accent)}.member-tag.edge{color:var(--mut)}
.kclose{border:0;background:transparent;color:var(--mut);font-size:20px;line-height:20px;cursor:pointer;width:26px;height:26px}.kclose:hover{color:var(--fg)}
.kevent-legend{display:none;gap:14px;flex-wrap:wrap;align-items:center;padding:2px 2px 5px;color:var(--mut);font-size:10.5px}.kevent-legend.on{display:flex}.kevent-legend span{display:flex;align-items:center;gap:5px}.kevent-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}.kevent-legend .ev-p1{background:#3b82f6}.kevent-legend .ev-launch{background:#d2a23a}.kevent-legend .ev-p3{background:#f0473f}
.kchart{width:100%;flex:1;min-height:0}
.ctabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.ctab{cursor:pointer;padding:4px 12px;border:1px solid var(--bd);border-radius:20px;color:var(--mut);font-size:12.5px}
.ctab.on{background:#fff0ea;color:var(--fg);border-color:var(--accent)}
.rib{display:flex;align-items:center;gap:8px;margin:3px 0}
.rib .nm{width:104px;text-align:right;flex:none;font-size:12px}
.rib .strip{display:flex;flex:1;height:15px;border-radius:3px;overflow:hidden;background:var(--bg)}
.rib .strip i{flex:1 1 0;min-width:0}
.rc-up{background:#f0b1a5}.rc-down{background:#a9d6c3}.rc-warn{background:#efd29b}
.rc-cons{background:#e9b9a4}.rc-chaos{background:#d7d2c6}
.rcur{width:72px;flex:none;font-size:11px;text-align:left;padding-left:8px}
.warn-t{color:var(--warn)}.accent-t{color:var(--accent)}
.ribaxis{flex:1;display:flex;justify-content:space-between;color:var(--mut);font-size:10px;border-top:1px solid var(--bd);padding-top:2px;margin-top:2px}
.topnav{position:sticky;top:0;z-index:50;background:rgba(245,244,237,.97);border-bottom:1px solid var(--bd);
  margin:-18px -18px 12px;padding:8px 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px}
.topnav .nvtitle{font-weight:700;color:var(--fg);text-decoration:none;white-space:nowrap}.topnav .nvread{color:var(--mut)}
.page-nav{display:flex;gap:3px;align-items:center;flex-wrap:wrap}.page-nav a{color:var(--mut);text-decoration:none;padding:3px 8px;border-radius:4px;border:1px solid transparent;font-size:11.5px;white-space:nowrap}.page-nav a:hover{color:var(--fg);background:#fff0ea}.page-nav a.on{color:#faf9f5;background:var(--accent);border-color:var(--accent)}
.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}.page-intro h1{margin:0}.page-intro p{color:var(--mut);font-size:11px;text-align:right;max-width:720px}
.page-hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 14px}.page-hub a{display:block;min-width:0;padding:13px 14px;border:1px solid var(--bd);border-top:4px solid var(--accent);border-radius:12px;color:var(--fg);text-decoration:none;background:var(--panel2);box-shadow:0 0 0 1px rgba(209,207,197,.35)}.page-hub a:hover{background:#fff0ea}.page-hub a:nth-child(1){border-top-color:#b53333}.page-hub a:nth-child(2){border-top-color:#c96442}.page-hub a:nth-child(3){border-top-color:#8a6220}.page-hub a:nth-child(4){border-top-color:#24815d}.page-hub a:nth-child(5){border-top-color:#7b6b42}.page-hub a:nth-child(6){border-top-color:#3d3d3a}.page-hub b,.page-hub span,.page-hub small{display:block}.page-hub b{font:500 15px/1.25 Georgia,"Times New Roman","PingFang SC",serif}.page-hub span{color:#3d3d3a;font-size:11px;margin-top:5px;white-space:normal}.page-hub small{color:var(--mut);font-size:10px;margin-top:3px;white-space:normal}.page-hub em{font-style:normal;display:inline-block;font-size:18px;line-height:1.05;font-weight:800;color:var(--accent);margin:0 2px}.page-hub em.up{color:var(--up)}.page-hub em.down{color:var(--down)}.page-hub em.warn{color:var(--warn)}
.health-badge{font-weight:700}.health-green{border-color:#9fc9b8;background:#eef8f2;color:#1f6f4f}.health-yellow{border-color:#dbc28b;background:#fff7df;color:#8a6220}.health-red{border-color:#d8a993;background:#fff0ea;color:#9f2f25}
.signal-summary{margin:10px 0 14px;padding:10px 12px 12px;background:var(--panel2);border-top:1px solid var(--ring);border-bottom:1px solid var(--bd)}.signal-summary-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}.signal-summary-head>div{display:flex;align-items:baseline;gap:8px}.signal-summary-head b{font-size:13px}.signal-summary-head span,.signal-summary-head p{color:var(--mut);font-size:10.5px}.signal-summary-head p{text-align:right}.signal-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--bd)}.signal-stat{display:flex;min-width:0;min-height:94px;flex-direction:column;justify-content:center;padding:9px 11px;background:var(--panel2);color:var(--fg);text-decoration:none;border-top:2px solid transparent}.signal-stat:hover{background:#fff0ea;border-top-color:var(--accent)}.signal-stat>span{color:var(--mut);font-size:10.5px}.signal-stat>b{font-size:23px;line-height:1.2;margin:3px 0}.signal-stat b i{font-style:normal;font-size:10px;color:var(--mut);margin-left:3px;font-weight:500}.signal-stat small{display:block;color:#9ba9b8;font-size:10px;line-height:1.35;white-space:normal}.signal-stat.risk-normal{border-top-color:var(--up)}.signal-stat.risk-cautious{border-top-color:var(--warn)}.signal-stat.risk-observe{border-top-color:var(--down)}
.jumpnav{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
.jl{cursor:pointer;padding:2px 8px;border:1px solid var(--bd);border-radius:12px;color:var(--mut);font-size:11px;text-decoration:none}
.jl:hover{background:#fff0ea;color:var(--fg)}
.jl.on{background:var(--accent);color:#faf9f5;border-color:var(--accent)}
.chlink{cursor:pointer;color:var(--accent);border-bottom:1px dotted var(--accent)}
.backtop{position:fixed;right:16px;bottom:16px;z-index:60;background:var(--panel);border:1px solid var(--bd);
  border-radius:50%;width:40px;height:40px;cursor:pointer;color:var(--fg);font-size:18px;display:none}
  @media(max-width:900px){.g2,.g3,.g4,.chainwrap{grid-template-columns:1fr}body{padding:10px}.quad-mv-legend{grid-template-columns:repeat(2,minmax(0,1fr))}
  .topnav{margin:-10px -10px 10px;padding:6px 10px}.page-nav{order:3;width:100%;overflow-x:auto;flex-wrap:nowrap}.jumpnav{margin-left:auto}.page-intro{display:block}.page-intro p{text-align:left;margin-top:3px}.page-hub{grid-template-columns:1fr 1fr}.signal-summary-head{display:block}.signal-summary-head p{text-align:left;margin-top:3px}.signal-summary-grid{grid-template-columns:1fr 1fr}.signal-stat{min-height:88px}.card{overflow-x:auto}table{font-size:11.5px}
  h1{font-size:17px}.kpi b{font-size:15px}.decision-head{grid-template-columns:repeat(3,minmax(88px,1fr))}.decision-head b{font-size:15px}.strategy-head{grid-template-columns:repeat(2,minmax(120px,1fr))}.strategy-head b{font-size:14px}.linkage-summary{grid-template-columns:1fr 1fr}.position-form{grid-template-columns:1fr 1fr}.holding-summary{grid-template-columns:1fr 1fr}.page-hub{grid-template-columns:1fr 1fr}.kpop{padding:6px}.kdialog{width:100%;height:calc(100vh - 12px);padding:8px}.kpophead{flex-wrap:wrap}.kpophead .mut{order:3;flex-basis:100%}}
