:root{--bg-page: #0a0d12;--bg-panel: #11151c;--bg-panel-2: #161b24;--bg-elev: #1d242f;--bg-hover: #232b38;--border: #2d3543;--border-strong: #3f4a5b;--border-grid: #232b38;--text: #f3f5f8;--text-secondary: #c2cad9;--text-muted: #8e98ad;--text-faint: #707b91;--accent: #ff7a00;--accent-soft: rgba(255, 122, 0, .12);--accent-line: rgba(255, 122, 0, .32);--pos: #22d3a6;--pos-soft: rgba(34, 211, 166, .12);--neg: #ff4d6d;--neg-soft: rgba(255, 77, 109, .12);--warn: #ffb020;--warn-soft: rgba(255, 176, 32, .12);--info: #4a9eff;--info-soft: rgba(74, 158, 255, .12);--font-ui: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--row-h: 32px;--pad-card: 16px;--gap: 12px;--fs-num-xl: 30px;--fs-num-lg: 22px;--fs-num-md: 16px;--fs-label: 10.5px;--fs-body: 12.5px}[data-density=compact]{--row-h: 26px;--pad-card: 11px;--gap: 8px;--fs-num-xl: 26px;--fs-num-lg: 19px;--fs-num-md: 14px;--fs-label: 10px;--fs-body: 11.5px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-page);color:var(--text)}body{font-family:var(--font-ui);font-size:var(--fs-body);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;overflow:hidden;height:100vh}button{font-family:inherit;cursor:pointer}button:focus-visible,[tabindex]:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.mono{font-family:var(--font-mono);font-feature-settings:"tnum","zero"}.tnum{font-variant-numeric:tabular-nums}.up{color:var(--pos)}.dn{color:var(--neg)}.muted{color:var(--text-muted)}.sec{color:var(--text-secondary)}.accent{color:var(--accent)}.label{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.divider-v{width:1px;background:var(--border);height:100%}.divider-h{height:1px;background:var(--border);width:100%}.app{display:grid;grid-template-columns:220px 1fr;grid-template-rows:48px 26px 1fr 22px;grid-template-areas:"topbar topbar" "ticker ticker" "sidebar main" "statusbar statusbar";height:100vh}[data-sidebar=hidden] .app{grid-template-columns:0 1fr}[data-sidebar=hidden] .sidebar{display:none}.topbar{grid-area:topbar;background:var(--bg-panel);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 16px;gap:16px}.ticker{grid-area:ticker;background:#000;border-bottom:1px solid var(--border);overflow:hidden;position:relative;display:flex;align-items:center}.ticker-track{display:flex;gap:32px;white-space:nowrap;font-family:var(--font-mono);font-size:11px;padding-left:16px;animation:tickerScroll 90s linear infinite}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-item{color:var(--text-secondary)}.ticker-item .sym{color:var(--text);margin-right:6px}.sidebar{grid-area:sidebar;background:var(--bg-panel);border-right:1px solid var(--border);overflow-y:auto;padding:12px 0}.main{grid-area:main;overflow:auto;background:var(--bg-page)}.statusbar{grid-area:statusbar;background:var(--bg-panel);border-top:1px solid var(--border);display:flex;align-items:center;padding:0 12px;gap:16px;font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.brand{display:flex;align-items:center;gap:10px;padding-right:16px;border-right:1px solid var(--border);height:100%}.brand-mark{width:26px;height:26px;background:var(--accent);color:#000;display:grid;place-items:center;font-weight:700;font-size:11px;letter-spacing:.04em;font-family:var(--font-mono)}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-text .t1{font-size:12px;font-weight:600;letter-spacing:.04em}.brand-text .t2{font-size:9px;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.tb-section{display:flex;align-items:center;gap:6px}.tb-spacer{flex:1}.seg{display:inline-flex;background:var(--bg-elev);border:1px solid var(--border);height:28px;align-items:stretch}.seg button{background:transparent;border:0;color:var(--text-secondary);padding:0 10px;font-size:11px;font-family:var(--font-mono);letter-spacing:.04em;border-right:1px solid var(--border)}.seg button:last-child{border-right:0}.seg button:hover{color:var(--text);background:var(--bg-hover)}.seg button.active{color:#000;background:var(--accent)}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);font-size:11.5px;font-family:var(--font-mono)}.chip:hover{background:var(--bg-hover)}.chip .caret{color:var(--text-muted);font-size:9px}.chip-dot{width:6px;height:6px;background:var(--accent);border-radius:50%}.nav-section{padding:8px 0;border-bottom:1px solid var(--border)}.nav-section:last-child{border-bottom:0}.nav-section-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--text-muted);padding:6px 16px 8px}.nav-item{display:flex;align-items:center;gap:10px;height:30px;padding:0 14px 0 16px;color:var(--text);font-size:12.5px;cursor:pointer;border-left:2px solid transparent;position:relative}.nav-item:hover{background:var(--bg-panel-2);color:var(--text)}.nav-item.active{background:var(--bg-panel-2);color:var(--text);border-left-color:var(--accent)}.nav-item .glyph{font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);width:14px}.nav-item.active .glyph{color:var(--accent)}.nav-item .badge{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);padding:1px 5px;background:var(--bg-elev);border:1px solid var(--border)}.card{background:var(--bg-panel);border:1px solid var(--border);display:flex;flex-direction:column}.card-head{display:flex;align-items:center;gap:10px;padding:10px var(--pad-card);border-bottom:1px solid var(--border);min-height:36px}.card-head .title{font-size:12px;font-weight:600;letter-spacing:.02em}.card-head .sub{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);margin-left:auto;letter-spacing:.04em}.card-body{padding:var(--pad-card);flex:1}.card-body.noPad{padding:0}.kpi{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-right:1px solid var(--border);min-width:0;flex:1;position:relative;cursor:pointer}.kpi:last-child{border-right:0}.kpi:hover{background:var(--bg-panel-2)}.kpi-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-weight:500;display:flex;align-items:center;gap:6px}.kpi-val{font-family:var(--font-mono);font-size:var(--fs-num-lg);font-weight:500;letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1.1;color:var(--text)}.kpi-row{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10.5px;color:var(--text-muted)}.kpi-row .delta{display:inline-flex;align-items:center;gap:3px}.kpi.warn .kpi-val{color:var(--warn)}.kpi.neg .kpi-val{color:var(--neg)}.kpi-strip{display:flex;background:var(--bg-panel);border:1px solid var(--border)}.kpi-strip .kpi{padding-left:16px;padding-right:16px}.bullet{display:flex;flex-direction:column;gap:4px}.bullet-track{position:relative;height:8px;background:var(--bg-elev);border:1px solid var(--border)}.bullet-fill{position:absolute;top:0;left:0;bottom:0;background:var(--accent)}.bullet-target{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--text)}.bullet-labels{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.spark{width:100%;height:36px}.chart{width:100%;height:100%}table.data{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:11.5px}table.data th{text-align:left;font-weight:600;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);padding:8px var(--pad-card);border-bottom:1px solid var(--border-strong);position:sticky;top:0;background:var(--bg-panel);z-index:1}table.data th.r,table.data td.r{text-align:right;font-variant-numeric:tabular-nums}table.data td{padding:0 var(--pad-card);height:var(--row-h);border-bottom:1px solid var(--border-grid);color:var(--text)}table.data tr:hover td{background:var(--bg-panel-2)}table.data tr.head td{color:var(--text);font-weight:600;background:var(--bg-panel-2)}table.data tr.subtotal td{border-top:1px solid var(--border);font-weight:600}table.data tr.total td{border-top:2px solid var(--accent);background:var(--bg-panel-2);color:var(--text);font-weight:600}table.data td.indent{padding-left:calc(var(--pad-card) + 16px);color:var(--text-secondary)}.aging-row{display:grid;grid-template-columns:130px 1fr 90px;gap:10px;align-items:center;height:var(--row-h)}.aging-bar{display:flex;height:14px;background:var(--bg-elev);overflow:hidden}.aging-seg{display:block;height:100%}.bar-row{display:grid;grid-template-columns:150px 1fr 90px;gap:10px;align-items:center;height:28px;font-family:var(--font-mono);font-size:11.5px}.bar-track{background:var(--bg-elev);height:14px;position:relative;overflow:hidden;border:1px solid var(--border)}.bar-fill{height:100%;background:var(--accent)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.pos{background:var(--pos)}.dot.neg{background:var(--neg)}.dot.warn{background:var(--warn)}.dot.accent{background:var(--accent)}.pill{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border);color:var(--text-muted)}.pill.pos{color:var(--pos);border-color:#22d3a64d;background:var(--pos-soft)}.pill.neg{color:var(--neg);border-color:#ff4d6d4d;background:var(--neg-soft)}.pill.warn{color:var(--warn);border-color:#ffb0204d;background:var(--warn-soft)}.pill.accent{color:var(--accent);border-color:#ff7a004d;background:var(--accent-soft)}.grid{display:grid;gap:var(--gap)}.row{display:flex;gap:var(--gap)}.col{display:flex;flex-direction:column;gap:var(--gap)}.tabs{display:flex;border-bottom:1px solid var(--border);background:var(--bg-panel)}.tab{padding:8px 14px;font-size:11.5px;color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-bottom:2px solid transparent;cursor:pointer;background:transparent;border-top:0;border-left:0;border-right:0}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--accent)}.funnel-row{display:flex;align-items:center;gap:10px}.funnel-stage{display:flex;flex-direction:column;gap:4px;padding:10px 12px;position:relative;cursor:pointer}.funnel-stage:hover{background:var(--bg-panel-2)}.funnel-stage .stg-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-mono)}.funnel-stage .stg-val{font-family:var(--font-mono);font-size:16px;color:var(--text);font-variant-numeric:tabular-nums}.funnel-stage .stg-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.tt{position:absolute;background:var(--bg-elev);border:1px solid var(--border-strong);padding:8px 10px;font-family:var(--font-mono);font-size:11.5px;color:var(--text);pointer-events:none;z-index:50;white-space:nowrap;box-shadow:0 4px 16px #00000080}.tt-row{display:flex;justify-content:space-between;gap:12px}.tt-row .lbl{color:var(--text-secondary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-page)}::-webkit-scrollbar-thumb{background:#2a313e}::-webkit-scrollbar-thumb:hover{background:#3a4151}[data-variant=modular] .kpi-strip{background:transparent;border:0;gap:var(--gap);display:grid;grid-template-columns:repeat(5,1fr)}[data-variant=modular] .kpi-strip .kpi{background:var(--bg-panel);border:1px solid var(--border);padding:14px 16px}[data-variant=modular] .kpi-strip .kpi:last-child{border-right:1px solid var(--border)}[data-variant=executive] .card{border-radius:4px}[data-variant=executive] .kpi-val{font-size:26px}[data-variant=executive] .kpi-strip{gap:var(--gap);background:transparent;border:0;display:grid;grid-template-columns:repeat(4,1fr)}[data-variant=executive] .kpi-strip .kpi{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;padding:16px 18px}[data-variant=editorial] .kpi-strip{background:transparent;border:0}[data-variant=editorial] .kpi-val{font-family:var(--font-ui);font-weight:300;letter-spacing:-.02em}.clickable{cursor:pointer}.clickable:hover{background:var(--bg-panel-2)}.drill-hint{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);letter-spacing:.04em}.drill-hint:before{content:"▸ ";color:var(--accent)}.section-head{display:flex;align-items:baseline;gap:16px;padding:14px 16px 8px}.section-head h1{margin:0;font-size:17px;font-weight:600;letter-spacing:-.005em;color:var(--text)}.section-head .crumbs{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);letter-spacing:.04em}.section-head .meta{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.flex-end{display:flex;justify-content:flex-end;gap:8px;align-items:center}.space-between{display:flex;justify-content:space-between;align-items:center}
