:root{--bg:#f7f6f2;--paper:#ffffff;--panel:#faf9f6;--line:#e3e0d8;--line-soft:#eeece6;--ink:#16171a;--ink-dim:#5f6470;--ink-faint:#9aa0ac;--accent:#1c4ed8;--bar:#2a78d6;--bar-soft:#cde2fb;--spend:#eb6834;--gain:#0f8a5f;--gain-soft:#d9f0e5;--loss:#c2313f;--loss-soft:#fbe0e2;--warn:#a8620a;--warn-soft:#fdeecd;--grid:#ebe9e2;--pie-1:#2a78d6;--pie-2:#eb6834;--pie-3:#1baf7a;--pie-4:#eda100;--pie-5:#e87ba4;--pie-6:#6250d6;--pie-7:#9aa0ac;--f-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;--f-serif:"Instrument Serif",Georgia,"Times New Roman",serif;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#121311;--paper:#1b1c1a;--panel:#20211e;--line:#33342f;--line-soft:#2a2b27;--ink:#f0efec;--ink-dim:#b9b8b0;--ink-faint:#85847d;--accent:#6f95f5;--bar:#3987e5;--bar-soft:#1f3b63;--spend:#d95926;--gain:#2fbf86;--gain-soft:#163a2b;--loss:#e66767;--loss-soft:#3e2023;--warn:#e0a34a;--warn-soft:#3b2d17;--grid:#2c2c2a;--pie-1:#3987e5;--pie-2:#d95926;--pie-3:#199e70;--pie-4:#c98500;--pie-5:#d55181;--pie-6:#9085e9;--pie-7:#6d6c66;color-scheme:dark}}*{box-sizing:border-box}[hidden]{display:none!important}body,html{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--f-sans);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--accent)}button{font:inherit;color:inherit}.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.serif{font-family:var(--f-serif);font-weight:400}.gain,.up{color:var(--gain)}.down,.loss{color:var(--loss)}.warnc{color:var(--warn)}.dim{color:var(--ink-dim)}.faint,.note{color:var(--ink-faint)}.note{font-size:11.5px;margin:0}.h4{font-size:12px;font-weight:600;margin:0 0 8px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{max-width:1280px;margin:0 auto;padding-block:18px 40px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.topbar{gap:10px;justify-content:space-between}.brand,.topbar{display:flex;align-items:center}.brand{gap:9px;text-decoration:none;color:inherit}.mark{width:26px;height:26px;border-radius:7px;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-family:var(--f-serif);font-size:17px}.brand b{font-weight:600;font-size:14px;display:block;line-height:1.1}.brand span{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.12em;color:var(--accent)}.topnav{display:flex;gap:14px;align-items:center;font-size:12.5px}.topnav a{color:var(--ink-dim);text-decoration:none}.topnav a:hover{color:var(--ink)}.card{background:var(--paper);border:1px solid var(--line);border-radius:12px}.pagehead{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap}.pagehead .pt{font-size:34px;line-height:1}.info,.pagehead .pt{font-family:var(--f-serif)}.info{width:16px;height:16px;border-radius:99px;border:1px solid var(--ink-faint);color:var(--ink-faint);font-size:10px;display:inline-grid;place-items:center;cursor:help}.seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;background:var(--paper);position:relative}.seg>a,.seg>button{all:unset;cursor:pointer;padding:6px 12px;font-size:12.5px;color:var(--ink-dim);border-left:1px solid var(--line-soft);white-space:nowrap}.seg>:first-child{border-left:0;border-radius:9px 0 0 9px}.seg>:last-child{border-radius:0 9px 9px 0}.seg>.on{background:var(--ink);color:var(--bg)}.seg>button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.menu{position:absolute;right:0;top:calc(100% + 6px);background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.12);padding:6px;z-index:20;min-width:240px;display:grid}.menu button{all:unset;cursor:pointer;padding:7px 10px;border-radius:8px;font-size:13px;display:flex;justify-content:space-between;gap:10px}.menu button:hover{background:var(--panel)}.menu .ck{font-weight:700;width:16px;text-align:center}.menu .custom{border-top:1px solid var(--line-soft);margin-top:6px;padding:8px 6px 4px;display:grid;gap:6px;font-size:12px}.menu .custom input{font:inherit;padding:5px 7px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink)}.menu .custom .row{display:flex;gap:6px;align-items:center}.btn{all:unset;cursor:pointer;font-size:12px;color:var(--accent);padding:4px 8px;border-radius:7px}.btn:hover{background:var(--panel)}.btn.solid{background:var(--ink);color:var(--bg);padding:6px 12px}.chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.chip{all:unset;cursor:pointer;font-size:12px;border:1px solid var(--line);border-radius:99px;padding:4px 11px;color:var(--ink-dim);background:var(--paper)}.chip.on{border-color:var(--ink);color:var(--ink)}.upd{margin-left:auto;font-size:11.5px;color:var(--ink-faint);display:inline-flex;align-items:center;gap:6px}.live{background:var(--gain)}.live,.wdot{width:7px;height:7px;border-radius:99px;display:inline-block}.wdot{background:var(--warn);flex:none}.stale{opacity:.55;transition:opacity .2s}.band{display:grid;gap:6px;font-size:12.5px;padding:9px 14px;border-radius:10px;background:var(--gain-soft)}.band.w{background:var(--warn-soft)}.band.b{background:var(--loss-soft)}.band .row{display:flex;gap:8px;align-items:baseline}.band button.lnk{all:unset;cursor:pointer;color:var(--accent);white-space:nowrap}.band .head{display:flex;gap:10px;align-items:center;justify-content:space-between}.flow{padding:16px;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}.flow-head{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:end}.flow-head .k .l{font-size:11px;color:var(--ink-dim);display:flex;gap:5px;align-items:center}.flow-head .k .v{font-family:var(--f-mono);font-size:28px;font-weight:600;letter-spacing:-.02em}.flow-head .k .d{font-family:var(--f-mono);font-size:11px}.hscroll{overflow-x:auto}.nodes{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(108px,1fr);min-width:max-content;align-items:end;padding-top:6px}.node{all:unset;cursor:pointer;display:grid;gap:4px;padding:8px 8px 10px;border-radius:10px;text-align:center;position:relative}.node:hover{background:var(--panel)}.node:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.node.on{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}.node .nb{margin:0 auto;width:44px;border-radius:6px 6px 0 0;background:var(--bar)}.node.spend .nb{background:var(--spend)}.node.earn .nb{background:var(--ink)}.node .nv{font-family:var(--f-mono);font-size:15px;font-weight:600}.node .nl{font-size:11.5px;color:var(--ink-dim)}.node .nd,.node .nr{font-family:var(--f-mono);font-size:10.5px}.node .nr{position:absolute;left:100%;transform:translateX(-50%);bottom:70px;white-space:nowrap;color:var(--ink-faint);background:var(--paper);padding:1px 4px;border-radius:4px;z-index:2}.drawer{border-top:1px solid var(--line);padding-top:14px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.drawer-title{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}.drawer-title .serif{font-size:26px;line-height:1}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{all:unset;cursor:pointer;padding:9px 12px;font-size:13px;color:var(--ink-dim);border-bottom:2px solid transparent;white-space:nowrap}.tabs button.on{color:var(--ink);border-bottom-color:var(--ink)}.subtabs{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.subtabs button{all:unset;cursor:pointer;padding:5px 11px;font-size:12.5px;color:var(--ink-dim);border-left:1px solid var(--line-soft)}.subtabs button:first-child{border-left:0}.subtabs button.on{background:var(--ink);color:var(--bg)}.minis{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.mini{padding:10px 12px;display:grid;gap:2px}.mini .l{font-size:10.5px;color:var(--ink-dim)}.mini .v{font-size:17px;font-weight:600}.mini .s,.mini .v{font-family:var(--f-mono)}.mini .s{font-size:10.5px;color:var(--ink-faint)}.tbl-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12.5px}th{font-weight:500;font-size:11px;color:var(--ink-dim);padding:8px 10px;border-bottom:1px solid var(--line)}td,th{text-align:right;white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid var(--line-soft);font-family:var(--f-mono);font-variant-numeric:tabular-nums}td.txt,td:first-child,th:first-child{text-align:left;font-family:var(--f-sans)}td.txt{white-space:normal;min-width:180px}td small{display:block;color:var(--ink-faint);font-size:10.5px}td.hi{background:color-mix(in oklab,var(--bar) 14%,var(--paper))}td.lo{background:var(--loss-soft)}tr.click{cursor:pointer}tr.click:hover td{background:var(--panel)}tr.sel td{box-shadow:inset 0 1px 0 var(--ink),inset 0 -1px 0 var(--ink)}tfoot td{font-weight:600;border-top:1px solid var(--line);border-bottom:0}th button{all:unset;cursor:pointer}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid2,.grid3{display:grid;gap:16px}.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}@media (max-width:1000px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.grid2,.grid3{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.grid4{grid-template-columns:minmax(0,1fr)}}.panel{padding:14px}.cb-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.cb-head .rate{font-family:var(--f-mono);font-size:26px;font-weight:600}.cb-head .tog{margin-left:auto}.cb-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(124px,1fr);min-width:max-content;margin-top:10px}.cb-col{border-left:1px solid var(--line-soft);padding:0 10px;display:grid;grid-template-rows:auto 150px;gap:8px}.cb-col:first-child{border-left:0;padding-left:0}.cb-col .st{font-size:12px;color:var(--ink-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cb-col .p{font-size:17px;font-weight:600}.cb-col .c,.cb-col .p{font-family:var(--f-mono)}.cb-col .c{font-size:11.5px;color:var(--ink-dim)}.cb-col .src{font-size:10px;color:var(--ink-faint);line-height:1.35}.cb-plot{position:relative;height:150px}.cb-plot svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.barlist{display:grid;gap:7px}.barlist .it{display:grid;grid-template-columns:minmax(80px,140px) minmax(0,1fr) 56px;gap:10px;align-items:center;font-size:12px}.barlist .lb{color:var(--ink-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barlist .tr{height:10px;background:var(--line-soft);border-radius:3px;overflow:hidden}.barlist .tr span{display:block;height:100%;background:var(--bar);border-radius:0 3px 3px 0}.barlist .vl{font-family:var(--f-mono);text-align:right}.splits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}@media (max-width:640px){.splits{grid-template-columns:minmax(0,1fr)}}.split .row{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--ink-dim);margin-bottom:4px}.split .row b{color:var(--ink);font-family:var(--f-mono);font-weight:600}.split .track{display:flex;gap:2px;height:10px}.split .track span{border-radius:3px}.supp{background:repeating-linear-gradient(135deg,var(--line-soft) 0 4px,var(--panel) 4px 8px)}.pie{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:center}.pie svg{width:132px;height:132px}.pie .leg{display:grid;gap:4px;font-size:12px}.pie .leg div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:7px;align-items:center}.pie .leg i{width:10px;height:10px;border-radius:3px}.pie .leg span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-dim)}.pie .leg b{font-family:var(--f-mono);font-weight:600}.pie path{cursor:default;transition:opacity .12s}.pie path:hover{opacity:.8}@media (max-width:380px){.pie{grid-template-columns:minmax(0,1fr);justify-items:center}}.tmap{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:3px;max-width:420px}.tmap div{aspect-ratio:1;border-radius:4px;font-size:9px;font-family:var(--f-mono);display:grid;place-items:center}.chart{position:relative}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink-dim);margin-bottom:6px}.legend i{display:inline-block;width:14px;height:3px;border-radius:2px;vertical-align:middle;margin-right:6px}.legend i.sq{width:10px;height:10px;border-radius:3px}.chart svg{display:block;width:100%;height:auto}.sers{display:flex;gap:6px;flex-wrap:wrap}.ser{all:unset;cursor:pointer;font-size:12px;border-radius:99px;padding:3px 11px;border:1.5px solid var(--line);color:var(--ink-faint);display:inline-flex;gap:6px;align-items:center}.ser i{width:12px;height:2px;border-radius:2px;background:currentColor}.ser.on{color:var(--ink)}.tip{position:absolute;pointer-events:none;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:8px 10px;font-size:12px;box-shadow:0 6px 20px rgba(0,0,0,.08);min-width:160px;z-index:5}.tip .r{display:flex;justify-content:space-between;gap:14px}.tip .r b{font-family:var(--f-mono);font-weight:600}.tip .h{color:var(--ink-faint);font-size:11px;margin-bottom:4px}.empty{padding:18px;border:1px dashed var(--line);border-radius:10px;font-size:12.5px;color:var(--ink-dim);display:grid;gap:6px}.empty b{color:var(--ink)}.empty ol{margin:4px 0 0;padding-left:18px;display:grid;gap:3px}.foot{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-faint);text-transform:uppercase;display:grid;gap:4px}.status{display:inline-flex;gap:5px;align-items:center;font-size:12px;padding:2px 9px;border-radius:99px}.status.good{background:var(--gain-soft)}.status.warn{background:var(--warn-soft)}.status.bad{background:var(--loss-soft)}.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.auth form{width:min(380px,100%);display:grid;gap:12px;padding:24px}.auth h1{font-family:var(--f-serif);font-weight:400;font-size:32px;margin:4px 0 0}.auth label{display:grid;gap:5px;font-size:12px;color:var(--ink-dim)}.auth input,.field{font:inherit;font-size:14px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink)}.auth button{all:unset;cursor:pointer;text-align:center;background:var(--ink);color:var(--bg);border-radius:9px;padding:10px;font-weight:500}.err{color:var(--loss);font-size:12.5px}.secret{font-family:var(--f-mono);font-size:15px;padding:10px 12px;background:var(--panel);border:1px dashed var(--line);border-radius:9px;user-select:all;word-break:break-all}.pagenav{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto}.pagenav a{padding:9px 14px;font-size:14px;color:var(--ink-dim);text-decoration:none;border-bottom:2px solid transparent;display:inline-flex;gap:7px;align-items:center;white-space:nowrap}.pagenav a.on,.pagenav a:hover{color:var(--ink)}.pagenav a.on{border-bottom-color:var(--ink);font-weight:500}.navdot{width:7px;height:7px;border-radius:99px;display:inline-block}.navdot.green{background:var(--gain)}.navdot.amber{background:var(--warn)}.navdot.red{background:var(--loss)}a.node{text-decoration:none;color:inherit}.chain{list-style:none;margin:0;padding:0;display:grid}.chain-row{display:grid;grid-template-columns:22px 132px minmax(0,1fr);gap:6px 14px;padding:12px 4px;border-top:1px solid var(--line-soft);align-items:start}.chain-row:first-child{border-top:0}.chain-n{color:var(--ink-faint);font-size:11px;padding-top:4px}.chain-row .status{justify-self:start;white-space:nowrap}.chain-title{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;align-items:baseline}.chain-title .faint{font-size:11.5px;font-family:var(--f-mono)}.chain-reason{font-size:13px;color:var(--ink-dim);margin-top:2px}.chain-row.red .chain-title b{color:var(--loss)}@media (max-width:600px){.chain-row{grid-template-columns:22px minmax(0,1fr)}.chain-row .chain-body,.chain-row .status{grid-column:2}}