@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f3f4f1;--surface:#fff;--surface2:#eceeea;--line:#d7dad3;--text:#15171a;--muted:#575c63;--accent:#0d6a65;--accent-ink:#fff;--accent-soft:#ddefec;--warn:#94460a;--warn-soft:#fbeadb;--pos:#1c6a2e;--pos-soft:#e1f0e4;--neg:#a2282a;--bot:#6a6f76;--s1:#0d6a65;--s2:#5fa9a2;--s3:#c77a2e;--s4:#b9bec4;--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101214;--surface:#191c1f;--surface2:#212528;--line:#30353a;--text:#e7e9eb;--muted:#a3a9af;--accent:#4fc0b6;--accent-ink:#08201e;--accent-soft:#15302d;--warn:#efa45f;--warn-soft:#33241a;--pos:#72cf89;--pos-soft:#17301e;--neg:#f28688;--bot:#8f959c;--s1:#4fc0b6;--s2:#2b7b74;--s3:#e09a55;--s4:#4a5056}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#101214;--surface:#191c1f;--surface2:#212528;--line:#30353a;--text:#e7e9eb;--muted:#a3a9af;--accent:#4fc0b6;--accent-ink:#08201e;--accent-soft:#15302d;--warn:#efa45f;--warn-soft:#33241a;--pos:#72cf89;--pos-soft:#17301e;--neg:#f28688;--bot:#8f959c;--s1:#4fc0b6;--s2:#2b7b74;--s3:#e09a55;--s4:#4a5056}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);margin:0;font-size:14px;line-height:1.45}#root{overflow-x:hidden}a{color:var(--accent)}a:hover{color:var(--text)}h1{letter-spacing:-.02em;margin:0;font-size:28px}h2{letter-spacing:-.01em;margin:0;font-size:18px}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:13px}.hint{color:var(--muted);font-size:12px}.pos{color:var(--pos)}.neg{color:var(--neg)}.warn{color:var(--warn)}.sr-only{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.topbar{background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px 28px;padding:10px 32px;display:flex}.brand{align-items:baseline;gap:10px;display:flex}.brand b{letter-spacing:-.02em;font-size:19px;font-weight:700}.nav{flex-wrap:wrap;flex:auto;gap:4px;display:flex}.nav a{min-height:44px;color:var(--muted);border-radius:8px;align-items:center;padding:0 14px;font-weight:500;text-decoration:none;display:inline-flex}.nav a:hover{background:var(--surface2);color:var(--text)}.nav a.on{background:var(--accent-soft);color:var(--accent)}.topbar-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page{flex-direction:column;gap:24px;width:100%;padding:28px 32px 48px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head .titles{flex-direction:column;gap:4px;display:flex}.row-wrap{flex-wrap:wrap;gap:10px;display:flex}.cols{flex-wrap:wrap;align-items:flex-start;gap:20px;display:flex}.cols>.grow{flex:999 560px;min-width:0}.cols>.side{flex:360px;min-width:0}.stack{flex-direction:column;gap:12px;display:flex}.kpis{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.kpis.compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:12px;min-width:0;padding:20px;display:flex}.card.tight{padding:20px 20px 8px}.card.warnb{border-color:var(--warn)}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.kpi{gap:8px;padding:18px 20px}.kpi .value{font-size:30px;font-weight:600}.kpi.compact{gap:6px;padding:16px 18px}.kpi.compact .value{font-size:24px}.kpi .value .unit{color:var(--muted);font-size:16px}.kpi.compact .value .unit{font-size:14px}.kpi .top{justify-content:space-between;align-items:center;gap:8px;display:flex}.badge{background:var(--warn-soft);height:24px;color:var(--warn);border-radius:6px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.pill{background:var(--surface2);height:24px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.pill.open{background:var(--accent-soft);color:var(--accent)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.done,.pill.api{background:var(--accent-soft);color:var(--accent)}.pill.bot{border:1px dashed var(--bot);color:var(--bot);background:0 0}.btn{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface2);color:var(--text)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{color:var(--accent-ink);filter:brightness(1.08)}.btn.small{min-height:36px;padding:0 12px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.seg{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.seg button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 12px;font-size:13px}.seg button.on{background:var(--text);color:var(--surface)}.seg.big button{min-height:44px;padding:0 16px;font-size:14px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.field>.flabel{color:var(--muted);font-size:12px;font-weight:600}.input{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);border-radius:8px;min-width:0;padding:0 12px}textarea.input{resize:vertical;min-height:72px;padding:10px 12px}.radio,.check{align-items:center;gap:10px;min-height:44px;display:flex}.radio{border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:0 12px}.radio input,.check input{width:18px;height:18px;accent-color:var(--accent)}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (width<=640px){.grid2{grid-template-columns:1fr}.topbar,.page{padding-left:16px;padding-right:16px}}.box{background:var(--surface2);border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.help{border:1px solid var(--line);width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:600;display:inline-flex}.help:hover,.help[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.help.in-th{vertical-align:middle;width:22px;height:22px;margin-left:6px;font-size:11px}.help-text{color:var(--text);background:var(--surface2);white-space:normal;text-transform:none;letter-spacing:0;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;font-size:13px;font-weight:400;display:flex}.help-text b{font-weight:600}.notice{border:1px solid var(--line);background:var(--surface2);border-radius:10px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.notice.warn{background:var(--warn-soft);border-color:var(--warn)}.notice.err{border-color:var(--neg)}.notice.ok{background:var(--accent-soft);border-color:var(--accent)}.notice b{font-weight:600}.skeleton{background:var(--surface2);border-radius:6px;height:14px}.table-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:10px 12px;font-size:12px;font-weight:600}.tbl th .thbtn{all:unset;cursor:pointer;align-items:center;gap:2px;display:inline-flex}.tbl th .thbtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tbl th.num,.tbl td.num{text-align:right}.tbl.dense th,.tbl.dense td{padding-left:8px;padding-right:8px}.tbl td{border-bottom:1px solid var(--line);white-space:nowrap;padding:11px 12px}.tbl td.wrap{white-space:normal}.tbl tbody tr:hover{background:var(--surface2)}.tbl tbody tr.sel{background:var(--accent-soft)}.tbl tbody tr.row-worse{background:var(--warn-soft)}.tbl tbody tr.row-better{background:var(--pos-soft)}.tbl tbody tr.row-worse:hover,.tbl tbody tr.row-better:hover{filter:brightness(.97)}.tbl tbody tr.bot td{color:var(--bot)}.tbl tbody tr.locked td{color:var(--muted)}.tbl tfoot td{border-bottom:0;font-weight:600}.tbl th .sort{opacity:.45;margin-left:4px}.tbl th.sorted{color:var(--text)}.tbl th.sorted .sort{opacity:1}.tbl tr.help-row td{white-space:normal;border-bottom:1px solid var(--line);background:var(--surface);padding:6px 12px 10px}.tbl input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.tbl-empty{color:var(--muted);padding:24px 12px}.ledger{border-collapse:collapse;width:100%}.ledger th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:8px 10px;font-size:12px;font-weight:600}.ledger td{border-bottom:1px solid var(--line);padding:9px 10px}.ledger .num{text-align:right}.stackbar{background:var(--surface2);border-radius:6px;height:28px;display:flex;overflow:hidden}.legend{color:var(--muted);flex-wrap:wrap;gap:6px 18px;font-size:13px;display:flex}.swatch{border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.c1{background:var(--s1)}.c2{background:var(--s2)}.c3{background:var(--s3)}.c4{background:var(--s4)}.recv{background:var(--warn-soft);border-radius:10px;flex-direction:column;gap:4px;padding:14px;display:flex}.recv .line{justify-content:space-between;gap:8px;font-weight:600;display:flex}.progress{background:var(--surface2);border-radius:5px;height:10px}.progress>div{background:var(--accent);border-radius:5px;height:10px}.flow{align-items:stretch;min-width:1080px;display:flex}.flow-col{flex-direction:column;flex:220px;justify-content:center;gap:10px;display:flex}.arrow{color:var(--muted);justify-content:center;align-items:center;min-width:36px;font-size:22px;display:flex}.node{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.node.loan{border-color:var(--accent);background:var(--accent-soft)}.node.out{border-color:var(--warn);background:var(--warn-soft)}.node.dashed{border-style:dashed}.dialog-backdrop{background:color-mix(in srgb, var(--text) 45%, transparent);z-index:50;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;width:min(640px,100%);max-height:90vh;padding:22px;display:flex;overflow:auto}.alloc-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.field .help{width:20px;height:20px;font-size:11px}.chip{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.chip:not(.on){opacity:.8;text-decoration:line-through}.chip-n{font-size:12px;font-weight:500}.msel{position:relative}.msel>summary{cursor:pointer;align-items:center;min-width:190px;list-style:none;display:flex}.msel>summary::-webkit-details-marker{display:none}.msel>summary:after{content:"▾";color:var(--muted);margin-left:auto;padding-left:10px}.msel-panel{z-index:20;border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:2px;min-width:260px;padding:12px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #0000002e}.msel-panel .check{justify-content:flex-start;min-height:36px}.msel-panel .check .small{margin-left:auto}.row-voided td{opacity:.6}.pager{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px 16px;padding-top:4px;display:flex}
