:root{--bg:#0f1216;--panel:#161b22;--border:#262d36;--text:#e6e9ee;--muted:#8b95a3;--accent:#4c8dff;--accent-fill:#2563eb;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}h1{margin:0;font-size:14px;font-weight:600}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:16px 0 6px;font-size:12px}.muted{color:var(--muted)}.app{grid-template:"top top top"44px"left canvas right"1fr"status status status"26px/280px 1fr 320px;height:100%;display:grid}.topbar{border-bottom:1px solid var(--border);background:var(--panel);grid-area:top;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.panel{background:var(--panel);padding:4px 14px;overflow:auto}.left{border-right:1px solid var(--border);grid-area:left}.right{border-left:1px solid var(--border);grid-area:right}.canvas{grid-area:canvas;position:relative;overflow:hidden}.empty{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.statusbar{border-top:1px solid var(--border);background:var(--panel);grid-area:status;align-items:center;gap:16px;padding:0 14px;font-size:12px;display:flex}.seg{border:1px solid var(--border);border-radius:6px;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;padding:4px 12px}.seg button[aria-pressed=true]{background:var(--accent-fill);color:#fff}:root{--good:#3fb68b;--warn:#e0a339;--bad:#e5534b;--row:#1b2129}.small{font-size:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.push{margin-left:auto}.stack{flex-direction:column;gap:8px;display:flex}.row{flex-wrap:wrap;gap:6px;display:flex}.btn{font:inherit;color:var(--text);background:var(--row);border:1px solid var(--border);cursor:pointer;text-align:center;border-radius:6px;padding:6px 10px}.btn:hover:not(:disabled){border-color:#3a4552}.btn:disabled{opacity:.6;cursor:progress}.btn.primary{background:var(--accent-fill);border-color:var(--accent-fill);color:#fff}.btn.small{padding:4px 8px;font-size:12px}.btn:focus-visible,.chip:focus-visible,.link:focus-visible,.icon-btn:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.link{color:var(--accent);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:12px}.empty .btn{margin-top:12px}.banner{border:1px solid;border-radius:6px;padding:8px 12px;font-size:12.5px}.banner.good{border-color:color-mix(in srgb, var(--good) 50%, transparent);background:color-mix(in srgb, var(--good) 12%, transparent)}.banner.warn{border-color:color-mix(in srgb, var(--warn) 50%, transparent);background:color-mix(in srgb, var(--warn) 12%, transparent)}.banner.bad{border-color:color-mix(in srgb, var(--bad) 55%, transparent);background:color-mix(in srgb, var(--bad) 14%, transparent)}.overlay{z-index:10;background:#0000008c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dialog{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;width:min(980px,100%);max-height:100%;padding:16px 18px;display:flex;box-shadow:0 20px 60px #00000080}.dialog-head{justify-content:space-between;align-items:flex-start;display:flex}.dialog-head h3{margin:0 0 2px;font-size:15px}.dialog-foot{justify-content:flex-end;gap:8px;display:flex}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:22px;line-height:1}.chips{gap:6px;display:flex}.chip{font:inherit;color:var(--muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px;font-size:12px}.chip[aria-pressed=true]{color:var(--text);border-color:var(--text)}.table-wrap{border:1px solid var(--border);border-radius:6px;min-height:120px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:12.5px}th{text-align:left;color:var(--muted);background:var(--panel);border-bottom:1px solid var(--border);padding:6px 10px;font-weight:500;position:sticky;top:0}td{border-bottom:1px solid var(--row);vertical-align:top;padding:5px 10px}.num{text-align:right;font-variant-numeric:tabular-nums}.issues td:last-child{width:60%}.sev{text-transform:capitalize;border-radius:4px;padding:1px 6px;font-size:12px}.sev.error{color:var(--bad);background:color-mix(in srgb, var(--bad) 15%, transparent)}.sev.warning{color:var(--warn);background:color-mix(in srgb, var(--warn) 15%, transparent)}.sev.info{color:var(--muted);background:var(--row)}.summary{flex-direction:column;gap:14px;padding:16px 20px;display:flex;position:absolute;inset:0;overflow:auto}.summary-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.summary-head h3{margin:0 0 2px;font-size:15px}.field{flex-direction:column;gap:3px;display:flex}select{font:inherit;color:var(--text);background:var(--row);border:1px solid var(--border);border-radius:6px;padding:4px 8px}.kpis{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.kpi{background:var(--panel);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.kpi span{color:var(--muted);font-size:12px}.kpi b{font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.grid2{grid-template-columns:1.3fr 1fr;gap:20px;display:grid}.grid2 h2:first-child{margin-top:0}table.data{background:var(--panel);border:1px solid var(--border);border-radius:6px}.topbar{gap:16px}.topbar-right{align-items:center;gap:10px;display:flex}.graph-host{background:var(--bg);position:absolute;inset:0}.sec-head{justify-content:space-between;align-items:baseline;display:flex}.sec-head h2{margin-bottom:6px}fieldset.checks{border:0;flex-direction:column;gap:2px;margin:0 0 10px;padding:0;display:flex}fieldset.checks legend{color:var(--muted);margin-bottom:3px;padding:0;font-size:12px}.check{cursor:pointer;align-items:center;gap:7px;padding:2px 0;font-size:12.5px;display:flex}.check input{accent-color:var(--accent);margin:0}.count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:400}.swatch{border-radius:2px;flex:none;width:10px;height:3px;display:inline-block}.slider{color:var(--muted);flex-direction:column;gap:3px;margin:6px 0 10px;font-size:12px;display:flex}.slider b{color:var(--text);font-weight:500}.slider input{accent-color:var(--accent);width:100%}.seg.full{margin-bottom:8px;display:flex}.seg.full button{flex:1}.search{flex:0 340px;position:relative}.search input{width:100%;font:inherit;color:var(--text);background:var(--row);border:1px solid var(--border);border-radius:6px;padding:5px 10px}.search input:focus-visible{outline:2px solid var(--accent);outline-offset:0}.search-results{background:var(--panel);border:1px solid var(--border);z-index:20;border-radius:8px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 12px 30px #00000073}.search-results li{cursor:pointer;border-radius:5px;flex-direction:column;padding:5px 8px;display:flex}.search-results li[aria-selected=true]{background:var(--row)}.legend{border:1px solid var(--border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#161b22eb;border-radius:8px;width:236px;padding:8px 10px;font-size:12px;position:absolute;bottom:56px;left:12px}.legend-toggle{color:var(--muted);font:inherit;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.legend-sec{margin-top:8px}.legend-title{color:var(--text);margin-bottom:4px}.legend-note{color:var(--muted);line-height:1.4}.ramp{border-radius:4px;height:8px}.ramp-ticks{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:2px;font-size:12px;display:flex}.legend-item{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:2px 0;font-size:12px;display:flex}.legend-item[aria-pressed=false]{opacity:.4;text-decoration:line-through}.legend-item.static{cursor:default;color:var(--muted)}.fps{color:var(--text);border:1px solid var(--border);font-variant-numeric:tabular-nums;pointer-events:none;background:#161b22d9;border-radius:6px;gap:10px;padding:4px 8px;font-size:12px;display:flex;position:absolute;top:10px;right:12px}.fps-val.good{color:var(--good)}.fps-val.warn{color:var(--warn)}.fps-val.bad{color:var(--bad)}.timeslider{border:1px solid var(--border);background:#161b22eb;border-radius:8px;align-items:center;gap:10px;width:min(560px,100% - 24px);padding:6px 12px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.timeslider input{accent-color:var(--accent);flex:1}.ts-date{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.float-tooltip-kap{border:1px solid var(--border);box-shadow:0 8px 24px #0006;background:var(--panel)!important;color:var(--text)!important;font:inherit!important;border-radius:6px!important;padding:0!important}.tt{padding:7px 10px;font-size:12px}.tt-sub{color:var(--muted);margin:1px 0 4px;font-size:12px}.tt table{width:auto;font-size:12px}.tt td{border:0;padding:1px 12px 1px 0}.tt td:last-child{text-align:right;font-variant-numeric:tabular-nums;padding-right:0}.detail-head{justify-content:space-between;gap:8px;margin-top:14px;display:flex}.detail-head h3{margin:0 0 3px;font-size:14px}.facts{grid-template-columns:auto 1fr;gap:4px 12px;margin:12px 0;font-size:12.5px;display:grid}.facts dt{color:var(--muted)}.facts dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.dot{vertical-align:0;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.sparks{flex-direction:column;gap:8px;margin-bottom:6px;display:flex}.spark{margin:0}.spark figcaption{color:var(--muted);align-items:baseline;gap:8px;font-size:12px;display:flex}.spark figcaption b{color:var(--text);font-weight:500}.spark figcaption .small{margin-left:auto}.exposures h2{align-items:baseline;gap:6px;display:flex}.flowsum{flex-wrap:wrap;gap:4px 10px;margin-bottom:4px;font-size:12px;display:flex}.flowtag{font-variant-numeric:tabular-nums;align-items:center;gap:5px;display:inline-flex}table.compact td{padding:4px 8px}table.compact .link{font-size:12.5px}.layout-progress{border:1px solid var(--border);background:#161b22eb;border-radius:6px;padding:5px 12px;font-size:12px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.canvas{flex-direction:column;display:flex}.canvas-main{flex:1;min-height:0;position:relative}.presets{flex-wrap:wrap;gap:4px;margin-bottom:4px;display:flex}.presets .chip{padding:2px 8px;font-size:12px}.slider.macro span{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.slider .level{font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}h3.sub{color:var(--muted);margin:12px 0 4px;font-size:12px;font-weight:500}.shocks{flex-direction:column;gap:3px;margin:0 0 6px;padding:0;font-size:12px;list-style:none;display:flex}.shocks li{align-items:center;gap:6px;display:flex}.shocks li>:first-child{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.shocks input[type=range]{width:70px;accent-color:var(--accent)}.icon-btn.small{font-size:16px}.group-shock{align-items:center;gap:5px;margin-bottom:8px;display:flex}.group-shock select{flex:1;min-width:0;font-size:12px}.group-shock input{width:48px;font:inherit;color:var(--text);background:var(--row);border:1px solid var(--border);border-radius:6px;padding:3px 5px;font-size:12px}.settings-toggle{margin:4px 0 6px}.settings{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:5px;margin-bottom:8px;padding:8px;display:flex}.field-row{justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.field-row select{max-width:150px;font-size:12px}.num-input{color:var(--muted);align-items:center;gap:3px;display:inline-flex}.num-input input{width:56px;font:inherit;color:var(--text);background:var(--row);border:1px solid var(--border);text-align:right;border-radius:5px;padding:2px 5px;font-size:12px}.results{border-top:1px solid var(--border);background:var(--panel);flex-direction:column;display:flex}.results.open{height:300px}.results-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:6px 12px;display:flex}.player{align-items:center;gap:6px;display:flex}.player input[type=range]{width:160px;accent-color:var(--accent)}.player .btn{min-width:26px;padding:2px 6px}.results-right{align-items:center;gap:10px;margin-left:auto;display:flex}.results-right .gnn{display:none}.bad-text{color:var(--bad)}.results-body{flex:1;grid-template-columns:minmax(280px,380px) 1fr;gap:14px;min-height:0;padding:8px 12px;display:grid}.results-left{overflow:auto}.results-table{flex-direction:column;gap:4px;min-height:0;display:flex}.results-table .table-wrap{flex:1;min-height:0}.results-table-head{justify-content:space-between;align-items:center;display:flex}.metrics th.sel,.metrics td.sel{color:var(--text);background:color-mix(in srgb, var(--accent) 10%, transparent)}.roundbars{margin:0 0 6px}.tag{color:var(--text);border:1px solid var(--border);border-radius:4px;margin-left:6px;padding:0 4px;font-size:12px}.pad{padding:8px 0}.node-scenario .shock-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.node-scenario .shock-row input[type=range]{min-width:80px;accent-color:var(--accent);flex:1}.facts .indent{padding-left:10px;font-size:12px}.ext{margin-top:10px}.fs-key i{vertical-align:-1px;background:#9085e9;border-radius:2px;width:8px;height:8px;display:inline-block}.gnn{align-items:center;gap:6px;display:inline-flex}.statusbar>*{white-space:nowrap;flex-shrink:0}.statusbar>.source{text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.gnn-dot{background:var(--muted);border-radius:50%;width:7px;height:7px}.gnn-dot.ready{background:var(--good)}.gnn-dot.stub{background:var(--warn)}.gnn-dot.error{background:var(--bad)}.tabbar{display:none}@media (max-width:820px){html,body,#root{height:100dvh}.app{grid-template:"top""main"minmax(0,1fr)"tabs"/minmax(0,1fr);height:100dvh}.topbar{padding:calc(6px + env(safe-area-inset-top)) 12px 8px;flex-wrap:wrap;gap:8px}.topbar h1{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;overflow:hidden}.topbar .search{flex:100%;order:3}.topbar-right{gap:6px}.left,.canvas,.right{border:0;grid-area:main;min-width:0;display:none}.app[data-pane=controls] .left,.app[data-pane=graph] .canvas,.app[data-pane=detail] .right{display:block}.app[data-pane=graph] .canvas{flex-direction:column;display:flex}.panel{padding:4px 16px 16px}.statusbar{display:none}.tabbar{border-top:1px solid var(--border);background:var(--panel);padding-bottom:env(safe-area-inset-bottom);grid-area:tabs;display:flex}.tabbar button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;flex:1;padding:12px 4px;font-size:12.5px}.tabbar button[aria-pressed=true]{color:var(--accent);box-shadow:inset 0 2px 0 var(--accent)}.results.open{height:50%}.results-body{grid-template-columns:minmax(0,1fr);align-content:start;overflow:auto}.results-left{overflow:visible}.results-table{min-height:auto}.results-table .table-wrap{flex:none;max-height:340px}.kpis{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:minmax(0,1fr)}.legend{z-index:1;max-width:calc(100% - 24px);max-height:calc(100% - 80px);top:10px;bottom:auto;overflow:auto}.fps{display:none}.timeslider{width:auto;padding:6px 10px;bottom:10px;left:12px;right:12px;transform:none}.timeslider .muted.small{display:none}.results-bar{gap:8px;padding:6px 12px}.player{flex-wrap:wrap;flex:100%}.player input[type=range]{flex:1;width:auto;min-width:100px}.results-right{flex-wrap:wrap;gap:8px;width:100%;margin-left:0}.results-right .gnn{align-items:center;gap:6px;display:flex}.results-right .gnn>span.small{display:none}.results-right .check{white-space:nowrap}.overlay{padding:12px}input,select,textarea{font-size:16px}}@media (max-width:520px){.topbar h1{flex:100%}.topbar-right{margin-left:auto}}
