:root{color-scheme:dark;font-family:Avenir Next Condensed,DIN Condensed,PingFang SC,Microsoft YaHei,sans-serif;background:#14110f;color:#f6efe2;--bg: #14110f;--panel: #1d1915;--panel-strong: #262019;--line: rgba(246, 239, 226, .12);--text: #f6efe2;--muted: rgba(246, 239, 226, .62);--faint: rgba(246, 239, 226, .38);--red: #e34b31;--red-soft: rgba(227, 75, 49, .16);--green: #19a875;--green-soft: rgba(25, 168, 117, .16);--amber: #ffd27a;--steel: #8ca1a6}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:1120px;background:linear-gradient(90deg,rgba(255,210,122,.04) 1px,transparent 1px),linear-gradient(0deg,rgba(255,210,122,.04) 1px,transparent 1px),radial-gradient(circle at 82% 8%,rgba(227,75,49,.14),transparent 28%),radial-gradient(circle at 11% 92%,rgba(25,168,117,.12),transparent 31%),var(--bg);background-size:42px 42px,42px 42px,auto,auto,auto}button{color:inherit;font:inherit}.app-shell{width:100%;min-height:100vh;padding:18px}.topbar,.control-row,.workspace,.rank-grid{max-width:1720px;margin:0 auto}.topbar{display:grid;grid-template-columns:310px 1fr;gap:14px;align-items:stretch}.brand-block,.metric,.heatmap-panel,.detail-panel,.rank-panel,.summary-panel,.error-banner,.control-row{border:1px solid var(--line);background:linear-gradient(135deg,#f6efe20e,#f6efe204),#14110fe0;box-shadow:0 20px 50px #00000038}.brand-block{display:flex;min-height:88px;align-items:center;gap:14px;padding:17px;border-radius:8px}.brand-mark{display:grid;width:48px;height:48px;place-items:center;border:1px solid rgba(255,210,122,.38);border-radius:8px;background:#241b12;color:var(--amber)}h1,h2,p{margin:0}h1{font-size:35px;line-height:.95;letter-spacing:0}.brand-block p{margin-top:6px;color:var(--muted);font-size:13px}.market-strip{display:grid;grid-template-columns:1.05fr 1.35fr 1.1fr 1.35fr .9fr;gap:10px}.metric{display:grid;min-height:88px;grid-template-columns:18px 1fr;grid-template-rows:24px 1fr;column-gap:8px;align-items:center;padding:14px;border-radius:8px}.metric svg{color:var(--faint)}.metric span{color:var(--muted);font-size:12px}.metric strong{grid-column:1 / -1;overflow:hidden;align-self:end;font-family:DIN Alternate,Avenir Next Condensed,sans-serif;font-size:clamp(18px,2vw,28px);line-height:1;text-overflow:ellipsis;white-space:nowrap}.metric-positive strong,.is-positive{color:var(--red)}.metric-negative strong,.is-negative{color:var(--green)}.metric-neutral strong,.is-flat{color:var(--text)}.control-row{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:18px;margin-top:12px;padding:10px;border-radius:8px}.segmented-wrap,.refresh-cluster{display:flex;align-items:center;gap:10px}.control-label{color:var(--faint);font-size:12px}.segmented,.refresh-buttons{display:flex;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#0000003d}.segmented button,.refresh-buttons button{min-width:58px;height:34px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.segmented button:last-child,.refresh-buttons button:last-child{border-right:0}.segmented button.is-active,.refresh-buttons button.is-active{background:#f6efe2;color:#16120f;font-weight:800}.icon-button{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:7px;background:#f6efe20f;cursor:pointer}.icon-button:hover,.rank-panel button:hover{border-color:#ffd27a61;background:#ffd27a14}.is-spinning{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{display:flex;max-width:1720px;align-items:center;gap:10px;margin:12px auto 0;padding:11px 14px;border-color:#e34b316b;border-radius:8px;color:#ffb8a8}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;margin-top:14px}.heatmap-panel{position:relative;overflow:hidden;height:min(66vh,710px);min-height:520px;border-radius:8px}.section-heading{display:flex;height:64px;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--line)}.section-heading div:first-child{display:flex;flex-direction:column;gap:4px}.section-heading span{color:var(--faint);font-size:12px}.section-heading strong{font-size:20px}.legend{display:grid;grid-template-columns:auto 160px auto;gap:9px;align-items:center;font-size:12px}.legend-line{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--green),#2a302c 50%,var(--red))}.legend-negative{color:var(--green)!important}.legend-positive{color:var(--red)!important}.heatmap{width:100%;height:calc(100% - 64px)}.loading-mask,.empty-state{display:grid;position:absolute;top:64px;right:0;bottom:0;left:0;place-items:center;background:#14110f9e;color:var(--muted)}.detail-panel{min-height:520px;padding:18px;border-radius:8px}.detail-kicker{color:var(--faint);font-size:12px}.detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:8px}.detail-title-row h2{max-width:230px;font-size:34px;line-height:1;overflow-wrap:anywhere}.detail-title-row span{padding-top:4px;font-size:19px;font-weight:900}.headline-number{margin-top:24px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#00000038}.headline-number span,.headline-number em,.leader-box span{display:block;color:var(--muted);font-size:12px;font-style:normal}.headline-number strong{display:block;margin-top:8px;font-family:DIN Alternate,Avenir Next Condensed,sans-serif;font-size:43px;line-height:.92;overflow-wrap:anywhere}.headline-number em{margin-top:8px;font-weight:800}.sparkline-wrap{margin-top:18px}.sparkline-title{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.sparkline-wrap svg{width:100%;height:86px;margin-top:8px;overflow:visible}.sparkline-wrap line{stroke:#f6efe21f;stroke-width:1}.sparkline-wrap path{fill:none;stroke:var(--amber);stroke-linecap:round;stroke-width:3}.flow-breakdown{display:grid;gap:13px;margin-top:20px}.flow-row{display:grid;grid-template-columns:1fr 92px;gap:7px 12px;align-items:center}.flow-meta{display:flex;grid-column:1 / -1;justify-content:space-between;color:var(--muted);font-size:12px}.flow-meta strong,.flow-row em{font-style:normal;font-weight:800}.flow-track{overflow:hidden;height:9px;border-radius:999px;background:#f6efe217}.flow-track span{display:block;height:100%;border-radius:inherit}.flow-track span.is-positive{background:var(--red)}.flow-track span.is-negative{background:var(--green)}.flow-track span.is-flat{background:var(--steel)}.flow-row em{text-align:right;font-size:12px}.leader-box{margin-top:22px;padding:14px;border:1px solid rgba(255,210,122,.22);border-radius:8px;background:#ffd27a0f}.leader-box strong{display:block;margin-top:8px;font-size:24px}.rank-grid{display:grid;grid-template-columns:1fr 1fr 360px;gap:14px;margin-top:14px}.rank-panel,.summary-panel{min-height:248px;padding:15px;border-radius:8px}.rank-title,.summary-title{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:var(--text);font-size:15px;font-weight:900}.rank-panel ol{display:grid;gap:6px;margin:0;padding:0;list-style:none}.rank-panel button{display:grid;width:100%;min-height:30px;grid-template-columns:minmax(92px,1fr) 120px 70px;gap:10px;align-items:center;border:1px solid transparent;border-radius:6px;background:#00000026;color:var(--muted);cursor:pointer;text-align:left}.rank-name{overflow:hidden;color:var(--text);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.rank-panel em{color:var(--faint);font-size:12px;font-style:normal;text-align:right}.rank-panel button span:nth-child(2){text-align:right}.breadth-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.breadth-bars div{min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#0000002e}.breadth-bars span{display:block;color:var(--faint);font-size:11px}.breadth-bars strong{display:block;margin-top:8px;font-size:24px;line-height:1}.summary-panel p{margin-top:16px;color:var(--muted);font-size:13px;line-height:1.55}@media(max-width:1240px){body{min-width:0}.topbar,.workspace,.rank-grid{grid-template-columns:1fr}.market-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.control-row{flex-wrap:wrap;justify-content:flex-start}.heatmap-panel{height:620px}.rank-grid{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{padding:10px}.market-strip,.breadth-bars{grid-template-columns:1fr}.brand-block{min-height:78px}h1{font-size:30px}.metric{min-height:74px}.heatmap-panel{min-height:520px}.legend{grid-template-columns:1fr;justify-items:end}.legend-line{width:110px}}
