:root { --bg:#07111f; --panel:#0c1a2d; --panel-2:#10233b; --line:rgba(152,181,219,.15); --text:#eaf2ff; --muted:#8ea4c2; --red:#ff5f6d; --green:#4bd5a1; --amber:#f6b85e; --blue:#60a5fa; --violet:#a78bfa; }
* { box-sizing:border-box; } body { margin:0; background:radial-gradient(circle at 15% 0%,#153154 0,transparent 28%),radial-gradient(circle at 100% 18%,#172c4c 0,transparent 24%),var(--bg); color:var(--text); font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif; line-height:1.55; }
.dashboard { max-width:1320px; margin:0 auto; padding:38px 24px 48px; }.hero { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding:8px 2px 25px; }.eyebrow,.section-kicker { color:#88a6cc; letter-spacing:.11em; font-size:11px; margin:0 0 7px; text-transform:uppercase; }.eyebrow strong { color:var(--amber); font-weight:700; }.pulse-dot { display:inline-block; width:7px; height:7px; background:var(--red); border-radius:50%; margin-right:7px; box-shadow:0 0 0 4px rgba(255,95,109,.12); }h1,h2,h3,p { margin-top:0; }h1 { font-size:32px; line-height:1.2; letter-spacing:.02em; margin-bottom:8px; }h2 { font-size:18px; margin-bottom:0; }h3 { color:#cddcf0; font-size:14px; margin-bottom:10px; }.hero-subtitle { color:var(--muted); margin:0; font-size:14px; }.update-box { min-width:245px; border:1px solid var(--line); background:rgba(12,26,45,.7); border-radius:12px; padding:12px 15px; color:var(--muted); font-size:12px; }.update-box strong { display:block; color:var(--text); font:600 15px ui-monospace,Consolas,monospace; margin:2px 0; }.update-box small { color:#7188a8; font-size:11px; }.notice { background:rgba(246,184,94,.1); border:1px solid rgba(246,184,94,.3); color:#f8d6a1; border-radius:8px; padding:9px 12px; font-size:13px; margin-bottom:26px; }.notice span { color:#101b2b; background:var(--amber); font-weight:bold; border-radius:4px; padding:2px 6px; margin-right:7px; font-size:11px; }.section-block { margin-bottom:22px; }.section-heading,.card-header { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; margin-bottom:14px; }.market-state { font-size:12px; padding-top:10px; color:var(--muted); }.market-state b { color:var(--red); }.index-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }.index-card,.card,.footer-card { background:linear-gradient(145deg,rgba(16,35,59,.95),rgba(9,24,42,.95)); border:1px solid var(--line); box-shadow:0 12px 35px rgba(0,0,0,.15); border-radius:12px; }.index-card { padding:15px; min-width:0; position:relative; overflow:hidden; }.index-card::after { content:""; position:absolute; height:2px; left:15px; right:15px; bottom:0; background:var(--blue); opacity:.6; }.index-name { color:#a9bdd7; font-size:13px; }.index-value { font:600 22px ui-monospace,Consolas,monospace; margin:7px 0 3px; }.index-change { font-size:13px; font-weight:600; }.up { color:var(--red)!important; }.down { color:var(--green)!important; }.flat { color:var(--amber)!important; }.content-grid { display:grid; gap:18px; margin-bottom:18px; }.overview-grid { grid-template-columns:1.25fr .85fr .9fr; }.theme-grid { grid-template-columns:1.25fr .9fr; }.ladder-grid,.cycle-grid,.outlook-grid { grid-template-columns:1fr 1fr; }.card { padding:19px; min-width:0; }.tag { color:#9eb4d3; border:1px solid rgba(158,180,211,.25); background:rgba(158,180,211,.08); border-radius:99px; font-size:11px; white-space:nowrap; padding:3px 8px; }.tag-red { color:#ff9ba4; border-color:rgba(255,95,109,.28); background:rgba(255,95,109,.1); }.tag-green { color:#8ee8c5; border-color:rgba(75,213,161,.28); background:rgba(75,213,161,.1); }.tag-blue { color:#9bc7ff; border-color:rgba(96,165,250,.28); background:rgba(96,165,250,.1); }.tag-amber { color:#ffd08d; border-color:rgba(246,184,94,.28); background:rgba(246,184,94,.1); }.tag-violet { color:#cabdff; border-color:rgba(167,139,250,.28); background:rgba(167,139,250,.1); }.news-list { padding:0; margin:0; list-style:none; }.news-list li { border-bottom:1px solid var(--line); padding:10px 0; font-size:13px; color:#cbd9ed; display:flex; gap:9px; }.news-list li:last-child { border-bottom:0; padding-bottom:0; }.news-time { color:#7188a8; font:11px ui-monospace,Consolas,monospace; flex:0 0 37px; padding-top:2px; }.metric-list { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; }.metric { padding:10px 0; border-bottom:1px solid var(--line); }.metric:nth-last-child(-n+2) { border-bottom:0; }.metric span,.flow-label { display:block; color:var(--muted); font-size:12px; }.metric b { font:600 18px ui-monospace,Consolas,monospace; }.flow-row { display:grid; grid-template-columns:76px 1fr 54px; align-items:center; gap:8px; margin:11px 0; }.flow-bar { height:7px; border-radius:4px; background:#172b45; overflow:hidden; }.flow-bar i { display:block; height:100%; border-radius:4px; background:linear-gradient(90deg,var(--blue),#75b4ff); }.flow-value { text-align:right; font:600 12px ui-monospace,Consolas,monospace; }.card-note { color:#7188a8; font-size:11px; margin:13px 0 0; }.theme-list { display:grid; gap:10px; }.theme-row { display:grid; grid-template-columns:80px 1fr 86px 70px; gap:10px; align-items:center; font-size:13px; }.theme-name { font-weight:600; }.heat-bar { height:7px; background:#182c47; border-radius:5px; overflow:hidden; }.heat-bar i { display:block; height:100%; background:linear-gradient(90deg,#ff8a79,var(--red)); border-radius:5px; }.heat-score { color:#c5d6ed; font:12px ui-monospace,Consolas,monospace; }.theme-type { color:#9ab0d0; font-size:12px; }.macro-list { display:grid; gap:10px; }.macro-item { border-left:2px solid var(--blue); padding:1px 0 1px 11px; }.macro-item b { display:block; color:#d9e6f8; font-size:13px; }.macro-item span { color:var(--muted); font-size:12px; }.table-wrap { overflow-x:auto; }table { border-collapse:collapse; width:100%; min-width:500px; font-size:12px; }th { color:#8fa9ca; font-weight:500; text-align:left; padding:0 8px 9px; white-space:nowrap; }td { color:#d7e3f3; padding:10px 8px; border-top:1px solid var(--line); white-space:nowrap; }.board { border-radius:4px; padding:2px 5px; font-size:10px; font-weight:700; }.board-hot { background:rgba(255,95,109,.12); color:#ff9fa8; }.board-watch { background:rgba(96,165,250,.12); color:#a8ceff; }.cycle-track { display:flex; justify-content:space-between; position:relative; margin:17px 0 25px; }.cycle-track::before { content:""; position:absolute; top:8px; left:8%; right:8%; height:2px; background:#29415f; z-index:0; }.cycle-track span { z-index:1; color:#7890af; font-size:11px; text-align:center; position:relative; width:20%; }.cycle-track span::before { content:""; display:block; width:13px; height:13px; border-radius:50%; background:#29415f; margin:2px auto 5px; }.cycle-track .active { color:#ffb2b9; font-weight:bold; }.cycle-track .active::before { background:var(--red); box-shadow:0 0 0 5px rgba(255,95,109,.15); }.cycle-summary { padding:12px; background:rgba(96,165,250,.06); border-radius:8px; border:1px solid rgba(96,165,250,.14); }.cycle-summary strong { color:#b8d6ff; font-size:13px; }.cycle-summary p { color:#a3b5cd; margin:4px 0 0; font-size:12px; }.sentiment-numbers { display:grid; grid-template-columns:repeat(3,1fr); margin-top:16px; }.sentiment-numbers div { border-right:1px solid var(--line); text-align:center; }.sentiment-numbers div:last-child { border-right:0; }.sentiment-numbers b { display:block; color:#f2f7ff; font:600 18px ui-monospace,Consolas,monospace; }.sentiment-numbers span { color:#8097b7; font-size:11px; }.overseas-row { display:grid; grid-template-columns:1fr auto; align-items:center; padding:10px 0; border-bottom:1px solid var(--line); }.overseas-row:last-child { border-bottom:0; }.overseas-row b { font-size:13px; }.overseas-row span { color:#839bb9; font-size:11px; display:block; }.overseas-value { text-align:right; font:600 13px ui-monospace,Consolas,monospace; }.outlook-columns { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.outlook-columns > div { border-radius:8px; padding:12px; background:rgba(255,255,255,.025); }.outlook-columns ul { margin:0; padding-left:17px; color:#aebfd5; font-size:12px; }.outlook-columns li { margin:6px 0; }.outlook-columns > div:last-child h3 { color:#ffc180; }.watch-list { padding:0; list-style:none; margin:0; counter-reset:watch; }.watch-list li { counter-increment:watch; display:grid; grid-template-columns:27px 1fr auto; gap:9px; align-items:center; border-bottom:1px solid var(--line); padding:9px 0; }.watch-list li:last-child { border-bottom:0; padding-bottom:0; }.watch-list li::before { content:counter(watch, decimal-leading-zero); color:#7e96b6; font:11px ui-monospace,Consolas,monospace; }.watch-name { font-weight:600; font-size:13px; }.watch-reason { color:#8ea4c2; display:block; font-size:11px; }.watch-focus { color:#f6c179; font-size:11px; white-space:nowrap; }.footer-card { margin-top:24px; padding:20px; border-top:1px solid rgba(246,184,94,.36); }.footer-card p { color:#9bb0cc; font-size:12px; margin:9px 0 14px; }.source-tags { display:flex; gap:8px; flex-wrap:wrap; }.source-tags span { font-size:11px; color:#86a0c2; border:1px solid var(--line); border-radius:5px; padding:3px 7px; }
.validation-grid { grid-template-columns:1fr; }.validation-card { border-left:3px solid var(--blue); }.validation-list { display:grid; gap:8px; }.validation-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:10px 12px; border:1px solid var(--line); background:rgba(255,255,255,.022); border-radius:8px; }.validation-row > div + div { border-left:1px solid var(--line); padding-left:16px; }.validation-row span { color:#8ea8ca; font-size:11px; }.validation-row p { color:#d4e1f2; font-size:12px; margin:3px 0 0; }.watch-list { display:grid; gap:10px; }.watch-item { border:1px solid var(--line); border-radius:8px; padding:12px; background:rgba(255,255,255,.022); }.watch-top { display:grid; grid-template-columns:30px 1fr auto; gap:8px; align-items:center; padding-bottom:9px; border-bottom:1px solid var(--line); }.watch-no { color:#7792b6; font:12px ui-monospace,Consolas,monospace; }.watch-top b { display:block; font-size:14px; }.watch-top div span { display:block; color:#8da5c4; font:11px ui-monospace,Consolas,monospace; }.watch-top em { color:#ffd18f; font-style:normal; font-size:11px; border:1px solid rgba(246,184,94,.25); border-radius:4px; padding:2px 5px; }.watch-details { display:grid; grid-template-columns:1fr 1fr; gap:8px 14px; margin:10px 0 0; }.watch-details div { min-width:0; }.watch-details dt { color:#829bbd; font-size:11px; }.watch-details dd { margin:2px 0 0; color:#c6d5e9; font-size:11px; }
.index-code { display:block; color:#7188a8; font:11px ui-monospace,Consolas,monospace; margin-top:2px; }.index-fields { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; margin-top:10px; padding-top:8px; border-top:1px solid var(--line); color:#7e96b6; font-size:10px; }.index-fields span { min-width:0; }.index-fields b { display:block; color:#c8d7ea; font:600 11px ui-monospace,Consolas,monospace; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.index-data-info { display:flex; flex-wrap:wrap; gap:7px 14px; margin-top:12px; color:#8ea4c2; font-size:11px; }.index-data-info b { color:#ffd08d; }.index-notice { flex-basis:100%; color:#f3c887; }.unavailable { color:#8ea4c2; font-size:17px; padding-top:3px; }
.report-data-meta { display:grid; grid-template-columns:1fr 1fr; gap:6px 14px; min-width:360px; }.report-data-meta div { min-width:0; }.report-data-meta span { display:block; color:#7188a8; font-size:10px; }.report-data-meta strong { display:block; color:#eaf2ff; font:600 11px ui-monospace,Consolas,monospace; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin:0; }.report-data-meta div:first-child strong { color:#ffd08d; }
@media (max-width:1050px) { .index-grid { grid-template-columns:repeat(3,1fr); }.overview-grid { grid-template-columns:1.2fr 1fr; }.fund-card { grid-column:1/-1; }.theme-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:720px) { .dashboard { padding:24px 14px 32px; }.hero { display:block; }.update-box { margin-top:18px; min-width:0; }.index-grid { grid-template-columns:repeat(2,1fr); }.index-card:last-child { grid-column:span 2; }.overview-grid,.theme-grid,.ladder-grid,.cycle-grid,.outlook-grid { grid-template-columns:1fr; }.fund-card { grid-column:auto; }.card { padding:16px; }.theme-row { grid-template-columns:63px 1fr 44px; }.theme-type { display:none; }.outlook-columns { grid-template-columns:1fr; gap:10px; }h1 { font-size:27px; }.section-heading { align-items:flex-end; } }
@media (max-width:720px) { .validation-row,.watch-details { grid-template-columns:1fr; gap:10px; }.validation-row > div + div { border-left:0; border-top:1px solid var(--line); padding:10px 0 0; } }
@media (max-width:720px) { .report-data-meta { grid-template-columns:1fr 1fr; min-width:0; } }

.market-breadth-detail { border-top:1px solid var(--line); margin-top:12px; padding-top:12px; }
.module-pending { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:4px; min-height:72px; padding:13px; border:1px dashed rgba(142,164,194,.35); border-radius:8px; background:rgba(142,164,194,.035); color:#8ea4c2; font-size:12px; }.module-pending b { color:#aebfd5; font-size:13px; font-weight:600; }.module-pending span { color:#7188a8; }.news-list .module-pending { display:flex; }.table-wrap .module-pending { min-width:280px; }
.turnover-verification { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 14px; margin-top:14px; padding:12px; border:1px solid rgba(92,133,184,.2); border-radius:8px; background:rgba(92,133,184,.05); }.turnover-verification > span,.turnover-verification small { grid-column:1/-1; color:#8ea4c2; font-size:12px; }.turnover-verification > span { font-weight:700; color:#b7c9e1; }.turnover-verification div { display:flex; justify-content:space-between; gap:12px; font-size:12px; }.turnover-verification b { color:#9fb4d0; font-weight:500; }.turnover-verification em { color:#d9e5f4; font-style:normal; white-space:nowrap; }
.breadth-summary { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.breadth-summary > div { border:1px solid var(--line); border-radius:7px; padding:8px; background:rgba(255,255,255,.02); }
.breadth-summary span,.distribution > span { display:block; color:#8ea4c2; font-size:11px; }
.breadth-summary b { display:block; font-size:15px; }
.breadth-summary small { display:block; color:#7188a8; font-size:10px; line-height:1.35; }
.ratio-bar { display:flex; height:8px; background:#263b55; overflow:hidden; border-radius:6px; margin:12px 0 5px; }
.ratio-bar i { display:block; height:100%; }.ratio-up { background:var(--red); }.ratio-down { background:var(--green); }
.ratio-legend { display:flex; justify-content:space-between; gap:6px; font-size:10px; }
.distribution { display:grid; grid-template-columns:1fr 1fr; gap:4px 10px; margin-top:12px; }
.distribution > span { grid-column:1/-1; }.distribution div { display:flex; justify-content:space-between; gap:7px; color:#9fb2cb; font-size:10px; }
.distribution em { color:#dce8f8; font-style:normal; font-family:ui-monospace,Consolas,monospace; }.market-unavailable { color:#f3c887; }
@media (max-width:720px) { .breadth-summary { grid-template-columns:1fr; }.distribution { grid-template-columns:1fr; } }
@media (max-width:720px) { .turnover-verification { grid-template-columns:1fr; }.turnover-verification div { align-items:flex-start; flex-direction:column; gap:2px; } }

/* 真实市场数据优先：桌面端采用整行宽卡片，待接入模块收纳在紧凑折叠区。 */
.dashboard { max-width:1400px; }
.market-section { margin-bottom:28px; }.market-card-wide { padding:22px; }.market-card-wide .metric-list { grid-template-columns:repeat(5,minmax(0,1fr)); gap:0 20px; }.market-card-wide .metric { padding:13px 0; }.market-card-wide .metric:nth-last-child(-n+5) { border-bottom:0; }.market-card-wide .metric span { font-size:13px; }.market-card-wide .metric b { font-size:20px; white-space:nowrap; }.market-bottom-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px; margin-top:16px; }.market-bottom-grid .distribution,.market-bottom-grid .turnover-verification { margin-top:0; padding:14px; border:1px solid var(--line); border-radius:8px; background:rgba(255,255,255,.02); }.distribution-table { width:100%; min-width:0; margin-top:8px; font-size:13px; }.distribution-table th,.distribution-table td { padding:7px 3px; border-top:1px solid var(--line); }.distribution-table th { color:#aebfd5; }.distribution-table td { color:#e3edf9; text-align:right; font-family:ui-monospace,Consolas,monospace; }.pending-section { margin-top:30px; }.pending-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.pending-module { padding:0; overflow:hidden; }.pending-module summary { display:grid; grid-template-columns:1fr auto; gap:5px 12px; align-items:center; padding:15px 17px; cursor:pointer; list-style:none; }.pending-module summary::-webkit-details-marker { display:none; }.pending-module summary::after { content:"＋"; color:#8ea4c2; font-size:17px; grid-column:2; grid-row:1 / span 2; }.pending-module[open] summary { border-bottom:1px solid var(--line); }.pending-module[open] summary::after { content:"−"; }.pending-module summary .section-kicker { margin-bottom:4px; }.pending-module summary h2 { font-size:15px; }.pending-module summary small { grid-column:1; color:#7188a8; font-size:12px; }.pending-module .pending-content { margin:14px 17px 17px; }.pending-module .table-wrap.pending-content { margin-right:0; }.pending-module .module-pending.pending-content { margin-right:17px; }
@media (max-width:980px) { .market-card-wide .metric-list { grid-template-columns:repeat(3,minmax(0,1fr)); }.market-card-wide .metric:nth-last-child(-n+5) { border-bottom:1px solid var(--line); }.market-card-wide .metric:nth-last-child(-n+1) { border-bottom:0; } }
@media (max-width:720px) { .market-card-wide { padding:16px; }.market-card-wide .metric-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; }.market-card-wide .metric:nth-last-child(-n+5) { border-bottom:1px solid var(--line); }.market-card-wide .metric:nth-last-child(-n+2) { border-bottom:0; }.market-card-wide .metric b { font-size:18px; }.market-bottom-grid,.pending-grid { grid-template-columns:1fr; }.market-bottom-grid { gap:12px; }.distribution-table { min-width:360px; }.market-bottom-grid .distribution { overflow-x:auto; }.pending-module summary { padding:14px; }.pending-module .pending-content { margin:12px 14px 14px; } }

.limit-status-section { margin:0 0 30px; }.limit-status-card { padding:22px; }.limit-status-card .card-header .tag { max-width:280px; overflow:hidden; text-overflow:ellipsis; }.limit-metrics { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0 20px; }.limit-metrics .metric { padding:13px 0; }.limit-metrics .metric:nth-last-child(-n+5) { border-bottom:0; }.limit-metrics .metric span { font-size:13px; }.limit-metrics .metric b { font-size:20px; white-space:nowrap; }.limit-ladder-panel { margin:17px 0; padding:15px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.022); }.limit-ladder-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }.limit-ladder-grid div { padding:10px 12px; border-radius:7px; background:rgba(255,95,109,.06); border:1px solid rgba(255,95,109,.15); }.limit-ladder-grid span { display:block; color:#9fb4cf; font-size:12px; }.limit-ladder-grid b { color:#ff9ba4; font:600 19px ui-monospace,Consolas,monospace; }.limit-ladder-grid p { grid-column:1 / -1; margin:0; color:#91a6c2; font-size:12px; }.limit-table-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }.limit-table-panel { min-width:0; padding:15px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.018); }.limit-table-panel h3 { margin-bottom:12px; }.limit-previous-panel { margin-top:18px; }.limit-table-toggle { margin-top:12px; border:1px solid rgba(96,165,250,.34); border-radius:6px; padding:6px 10px; color:#b9d6ff; background:rgba(96,165,250,.08); cursor:pointer; font:12px "Microsoft YaHei",sans-serif; }.limit-table-toggle:hover { background:rgba(96,165,250,.16); }.limit-status-info { margin-top:17px; padding:13px 15px; border-radius:8px; background:rgba(96,165,250,.05); border:1px solid rgba(96,165,250,.14); color:#9bb0cb; font-size:12px; }.limit-status-info p { margin:5px 0; }.limit-status-info b { color:#c9dbf0; }
@media (max-width:980px) { .limit-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }.limit-metrics .metric:nth-last-child(-n+5) { border-bottom:1px solid var(--line); }.limit-metrics .metric:nth-last-child(-n+2) { border-bottom:0; }.limit-table-grid { grid-template-columns:1fr; } }
@media (max-width:720px) { .limit-status-card { padding:16px; }.limit-status-card .card-header { flex-direction:column; }.limit-status-card .tag { max-width:100%; white-space:normal; }.limit-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; }.limit-metrics .metric:nth-last-child(-n+5) { border-bottom:1px solid var(--line); }.limit-metrics .metric:nth-last-child(-n+1) { border-bottom:0; }.limit-metrics .metric b { font-size:18px; }.limit-ladder-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.limit-table-grid { gap:12px; }.limit-table-panel { padding:13px; }.limit-status-info { padding:12px; } }

.sentiment-history-section { margin:0 0 30px; }.sentiment-history-card { padding:22px; }.feedback-summary { margin:0 0 13px; }.promotion-panel { margin-top:18px; padding:15px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.018); }.promotion-rate-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }.promotion-rate-list div { padding:10px 12px; border:1px solid rgba(96,165,250,.16); border-radius:7px; background:rgba(96,165,250,.05); }.promotion-rate-list span,.promotion-rate-list small { display:block; color:#91a6c2; font-size:12px; }.promotion-rate-list b { display:block; margin:5px 0; color:#c9dbf0; font:600 19px ui-monospace,Consolas,monospace; }.history-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:16px; }.history-summary div { padding:12px; border:1px solid var(--line); border-radius:8px; background:rgba(255,255,255,.018); }.history-summary span { display:block; color:#91a6c2; font-size:12px; }.history-summary b { display:block; margin-top:6px; color:#d4e1f2; font-size:18px; }.rolling-statistics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.rolling-statistics section { padding:13px; border:1px solid var(--line); border-radius:8px; background:rgba(255,255,255,.018); }.rolling-statistics h3 { margin:0 0 7px; font-size:14px; }.rolling-statistics p { margin:0; color:#91a6c2; font-size:12px; }
@media (max-width:720px) { .sentiment-history-card { padding:16px; }.promotion-rate-list,.history-summary,.rolling-statistics { grid-template-columns:1fr; } }

.capital-flow-section { margin:0 0 30px; }
.capital-flow-card { padding:22px; overflow:hidden; }
.capital-flow-card .card-header .tag { max-width:390px; overflow:hidden; text-overflow:ellipsis; }
.capital-flow-card h3 { margin:20px 0 11px; }
.capital-overview { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.capital-overview > div,.capital-market-metrics > div,.capital-relationship-summary > div { min-width:0; padding:12px; border:1px solid var(--line); border-radius:8px; background:rgba(255,255,255,.018); }
.capital-overview span,.capital-market-metrics span,.capital-relationship-summary span { display:block; color:#91a6c2; font-size:12px; }
.capital-overview b,.capital-market-metrics b,.capital-relationship-summary b { display:block; margin-top:5px; color:#dbe7f6; font-size:16px; overflow-wrap:anywhere; }
.capital-market-panel,.capital-relationship-panel,.capital-candidate-panel,.capital-table-panel { margin-top:17px; padding:15px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.018); min-width:0; }
.capital-market-panel h3,.capital-relationship-panel h3,.capital-candidate-panel h3,.capital-table-panel h3 { margin-top:0; }
.capital-market-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.capital-market-metrics b { font:600 18px ui-monospace,Consolas,monospace; white-space:nowrap; }
.capital-vendor-note { margin:12px 0 0; padding:11px 13px; color:#9fb4cf; font-size:12px; border-left:3px solid var(--amber); background:rgba(246,184,94,.055); border-radius:0 7px 7px 0; }
.capital-vendor-note b { color:#ffd08d; }
.capital-ranking-grid { display:grid; grid-template-columns:1fr; gap:0; }
.capital-table { min-width:1500px; }
.capital-table th,.capital-table td { padding:9px 8px; }
.capital-table td:nth-child(3),.capital-table td:nth-child(4),.capital-table td:nth-child(5),.capital-table td:nth-child(10) { font-family:ui-monospace,Consolas,monospace; }
.capital-relationship-summary { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.capital-relationship-summary b { font:600 16px ui-monospace,Consolas,monospace; }
.capital-candidate-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.capital-candidate { min-width:0; padding:15px; border:1px solid rgba(246,184,94,.25); border-radius:9px; background:rgba(246,184,94,.045); }
.capital-candidate-top { display:flex; justify-content:space-between; gap:12px; }
.capital-candidate-top b { display:block; font-size:16px; }
.capital-candidate-top span { display:block; margin-top:4px; color:#d6b779; font-size:12px; }
.capital-candidate-top strong { color:#ffd18f; white-space:nowrap; font:600 18px ui-monospace,Consolas,monospace; }
.capital-candidate p { margin:8px 0; color:#b7c8dc; font-size:12px; }
.capital-score-detail { padding-top:8px; border-top:1px solid var(--line); color:#8ea4c2!important; }
.capital-divergence-panel { margin-bottom:17px; }
@media (max-width:1100px) { .capital-overview { grid-template-columns:repeat(3,minmax(0,1fr)); }.capital-relationship-summary { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:720px) { .capital-flow-card { padding:16px; }.capital-flow-card .card-header { flex-direction:column; }.capital-flow-card .card-header .tag { max-width:100%; white-space:normal; }.capital-overview,.capital-market-metrics,.capital-relationship-summary,.capital-candidate-grid { grid-template-columns:1fr; }.capital-table-panel,.capital-market-panel,.capital-relationship-panel,.capital-candidate-panel { padding:13px; }.capital-table { min-width:1450px; }.capital-market-metrics b { font-size:17px; }.capital-candidate-top { flex-direction:column; gap:5px; } }

.board-strength-section { margin:0 0 30px; }.board-strength-card { padding:22px; }.board-strength-card h3 { margin:20px 0 11px; }.board-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }.board-rank { min-width:0; padding:13px; border:1px solid var(--line); border-radius:8px; background:rgba(255,255,255,.018); }.board-rank h4 { margin:0 0 8px; font-size:13px; color:#c8d9ed; }.board-rank span { display:flex; justify-content:space-between; gap:8px; padding:5px 0; border-top:1px solid rgba(255,255,255,.05); font-size:12px; }.board-rank span b { font-family:ui-monospace,Consolas,monospace; }.board-candidate-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.board-candidate { padding:15px; border:1px solid rgba(255,95,109,.22); border-radius:9px; background:rgba(255,95,109,.045); }.secondary-candidate-grid .board-candidate { border-color:rgba(96,165,250,.2); background:rgba(96,165,250,.035); }.board-candidate-top { display:flex; justify-content:space-between; gap:12px; }.board-candidate-top b { display:block; font-size:16px; }.board-candidate-top span { display:block; margin-top:4px; color:#8ca3c1; font-size:12px; }.board-candidate-top strong { color:#ffd18f; white-space:nowrap; font:600 18px ui-monospace,Consolas,monospace; }.board-key-metrics { display:flex; flex-wrap:wrap; gap:6px 10px; margin:12px 0; }.board-key-metrics span { color:#b7c8dc; font-size:12px; }.board-candidate p { margin:7px 0; color:#b7c8dc; font-size:12px; }.board-score-note { color:#8ea4c2 !important; }.board-signal-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.board-signal-grid > div { padding:15px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.018); }.board-signal-grid h3 { margin-top:0; }.board-list-item { display:block; padding:8px 0; border-top:1px solid rgba(255,255,255,.06); color:#9fb4cf; font-size:12px; }.board-component-detail details { margin-top:8px; border:1px solid var(--line); border-radius:8px; overflow:hidden; background:rgba(255,255,255,.018); }.board-component-detail summary { display:flex; justify-content:space-between; gap:12px; padding:12px; cursor:pointer; color:#cad9ec; font-size:13px; }.board-component-detail summary span { color:#90a8c5; font-size:12px; }.board-component-detail .table-wrap { margin:0; border-top:1px solid var(--line); }
@media (max-width:980px) { .board-overview { grid-template-columns:repeat(2,minmax(0,1fr)); } }.board-strength-card { overflow:hidden; }@media (max-width:720px) { .board-strength-card { padding:16px; }.board-overview,.board-candidate-grid,.board-signal-grid { grid-template-columns:1fr; }.board-component-detail .table-wrap { overflow-x:auto; }.board-component-detail table { min-width:560px; }.board-component-detail summary { flex-direction:column; gap:4px; } }
