:root{--bg:#d9dde3;--panel:#f4f5f7;--line:#9aa3af;--accent:#2f5d9e;--title:#3a5a8c;--title-off:#8b97a8;color:#1c2430;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:13px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);overflow:hidden}.app{flex-direction:column;height:100vh;display:flex}button{font:inherit;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:3px;padding:3px 9px}button:hover:not(:disabled){background:#e8eef7}button:disabled{opacity:.45;cursor:default}button.small{padding:1px 6px;font-size:11px}input,select,textarea{font:inherit;border:1px solid var(--line);background:#fff;border-radius:3px;width:100%;min-width:0;padding:3px 5px}input[type=checkbox],input[type=range]{width:auto}input[type=range]{width:100%}.menubar{background:var(--panel);border-bottom:1px solid var(--line);z-index:9000;align-items:center;padding:0 4px;display:flex;position:relative}.menubar .menu{position:relative}.menubar .menu>button{background:0 0;border:0;padding:6px 10px}.menubar .menu>button.on,.menubar .menu>button:hover{background:#dfe6f1}.brand{color:#6b7686;margin-left:auto;padding-right:8px;font-weight:600}.dropdown{border:1px solid var(--line);background:#fff;min-width:200px;margin:0;padding:3px 0;list-style:none;position:absolute;top:100%;left:0;box-shadow:0 4px 12px #0003}.dropdown button{text-align:left;background:0 0;border:0;border-radius:0;width:100%;padding:5px 14px;display:block}.dropdown hr{border:0;border-top:1px solid #ddd;margin:3px 0}.toolbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:4px 6px;display:flex}.sep{background:var(--line);align-self:stretch;width:1px;margin:0 4px}.desktop{background:#aeb6c2;flex:1;position:relative;overflow:hidden}.empty{color:#fff;place-items:center;font-size:16px;display:grid;position:absolute;inset:0}.status{background:var(--panel);border-top:1px solid var(--line);color:#445;justify-content:space-between;padding:3px 10px;display:flex}.win{background:#fff;border:1px solid #6d7889;flex-direction:column;height:100%;display:flex;box-shadow:0 3px 10px #0004}.win-title{background:var(--title-off);color:#fff;cursor:move;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;height:26px;min-height:26px;padding:0 4px 0 8px;font-weight:600;display:flex;overflow:hidden}.win.active>.win-title{background:var(--title)}.sub-window .win-title{background:#7d8ba0;height:22px;min-height:22px;font-size:12px}.sub-window.win:hover>.win-title{background:var(--title)}.win-title-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.win-btns{gap:2px;display:flex}.win-btns button{color:#fff;background:#ffffff26;border:0;padding:0 6px;line-height:18px}.win-btns button:hover{background:#fff5!important}.win-toolbar{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px 8px;padding:4px 6px;display:flex}.win-body{flex:1;min-height:0;position:relative;overflow:auto}.chart-window .win-body{background:#c7cdd7;overflow:hidden}.sub-desk{position:absolute;inset:0}.check{white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.toast{color:#1c6b2a;margin-left:auto}.wheel-svg,.grid-svg{width:100%;height:100%;display:block}.settings-panel{flex-direction:column;gap:6px;padding:8px;display:flex}.settings-panel label{flex-direction:column;gap:2px;font-size:12px;display:flex}.settings-panel label.check{flex-direction:row}fieldset{border:1px solid #c5cbd4;border-radius:4px;flex-direction:column;gap:5px;margin:0;padding:6px 8px;display:flex}legend{padding:0 4px;font-size:12px;font-weight:600}.row{align-items:flex-end;gap:6px;display:flex}.row>*{flex:1}.row>button{flex:none}.muted{color:#6b7686;font-size:11px}.err{color:#b00020}.place{gap:4px;display:flex;position:relative}.place-list{z-index:50;border:1px solid var(--line);background:#fff;max-height:200px;margin:0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 4px 10px #0003}.place-list li{cursor:pointer;padding:4px 8px}.place-list li:hover{background:#e8eef7}.data-view{padding:6px;font-size:12px}.data-view table{border-collapse:collapse;width:100%;margin-bottom:8px}.data-view th,.data-view td{text-align:left;border-bottom:1px solid #e3e6eb;padding:2px 6px}.data-view .glyph{text-align:center;font-size:16px}.data-view .na{color:#999}.mono{white-space:pre;font-family:ui-monospace,Menlo,monospace}.meta{color:#556}.placeholder{color:#445;padding:14px}.modal-back{z-index:99999;background:#0006;place-items:center;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #556;flex-direction:column;width:420px;max-width:94vw;max-height:90vh;display:flex;box-shadow:0 10px 30px #0008}.modal.wide{width:880px}.modal-title{background:var(--title);color:#fff;justify-content:space-between;align-items:center;padding:6px 10px;font-weight:600;display:flex}.modal-title button{color:#fff;background:0 0;border:0}.modal-body{flex-direction:column;gap:8px;padding:12px;display:flex;overflow:auto}.modal .f{flex-direction:column;gap:2px;display:flex}.modal .f.inline{flex-direction:row;justify-content:space-between;align-items:center}.modal .f.inline input{width:60px}.modal .actions{justify-content:flex-end;gap:8px;display:flex}.cols{grid-template-columns:1fr 1fr;gap:10px;display:grid}table.list{border-collapse:collapse;width:100%}table.list td,table.list th{text-align:left;border-bottom:1px solid #e5e7eb;padding:3px 6px}a{color:var(--accent);cursor:pointer;text-decoration:underline}.prog-panel,.report{flex-direction:column;gap:8px;padding:8px;font-size:12px;display:flex}.report{height:100%}.prog-panel .row.checks,.checks{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.prog-block table,.report table{border-collapse:collapse;width:100%}.prog-block td,.report td,.report th{text-align:left;white-space:nowrap;border-bottom:1px solid #e5e7eb;padding:2px 6px}.prog-block .glyph{text-align:center;width:28px;font-size:15px}.prog-head{margin-bottom:3px}.report-opts{border-bottom:1px solid #d5d9e0;flex-direction:column;gap:6px;padding-bottom:6px;display:flex}.report-head{color:#445;background:#f4f5f7;border:1px solid #e0e3e8;padding:4px 6px;font-size:11px}.report .sortbar{flex-wrap:wrap;align-items:center}.report .sortbar button.on{color:#fff;background:#2f5d9e}.report-table{border:1px solid #e0e3e8;max-height:100%;overflow:auto}.report-table thead th{background:#eef1f6;position:sticky;top:0}.pad{padding:8px}.aspectograph{height:100%;padding:4px;overflow:auto}details summary{cursor:pointer;color:#2f5d9e}.report-table{flex:1;min-height:90px}.report-opts>summary{margin-bottom:4px;font-weight:600}.report-opts .row>button{align-self:flex-end}.astro{flex-direction:column;gap:8px;padding:8px;font-size:12px;display:flex}.astro .bar{flex-wrap:wrap;align-items:center;gap:8px}.seg{display:inline-flex}.seg button{border-radius:0;margin-left:-1px}.seg button.on{color:#fff;background:#2f5d9e;border-color:#2f5d9e}table.dyne{border-collapse:collapse;width:100%}table.dyne th,table.dyne td{text-align:left;white-space:nowrap;border-bottom:1px solid #e5e7eb;padding:2px 6px}table.dyne thead th{background:#eef1f6;position:sticky;top:0}table.dyne .glyph{text-align:center;font-size:15px}table.dyne .num{text-align:right;font-variant-numeric:tabular-nums}table.dyne .pos{color:#1f7a3a}table.dyne .neg{color:#b03a2e}table.dyne tr.total td{border-top:2px solid #99a;font-weight:700}table.grill td{vertical-align:top;min-width:46px;font-size:11px}table.grill td.gray{background:#f1f2f5}.mini-bar{background:#eef0f4;width:80px;height:8px;display:inline-block}.mini-bar i{height:100%;display:block}.two{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:10px;display:grid}.graphs{flex-direction:column;gap:10px;display:flex}.small{font-size:11px}.astro h4{margin:8px 0 2px}.modal textarea{width:100%;font-family:ui-monospace,Menlo,monospace;font-size:11px}.modal .row{align-items:flex-end}.analysis{padding:8px 14px;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.5}.analysis .report-tools{z-index:5;background:#fff;border-bottom:1px solid #d5d9e0;gap:6px;padding:4px 0;font-family:system-ui,sans-serif;font-size:12px;position:sticky;top:0}.analysis h1{margin:6px 0 2px;font-size:21px}.analysis .rhead{color:#445;margin-bottom:6px;font-family:system-ui,sans-serif;font-size:12px}.analysis h2{-webkit-user-select:none;user-select:none;border-bottom:2px solid #345;margin:22px 0 6px;padding-bottom:2px;font-size:17px}.analysis h3{margin:14px 0 3px;font-size:15px}.analysis h4{color:#234;margin:10px 0 2px;font-size:13px}.analysis p{margin:6px 0}.analysis blockquote.book{background:#f6f8fb;border-left:4px solid #9ab;margin:6px 0;padding:6px 12px;font-size:13px}.analysis blockquote.book p{margin:0}.analysis blockquote.book footer{color:#667;margin-top:4px;font-family:system-ui,sans-serif;font-size:11px}.analysis .tw{overflow-x:auto}.analysis table.rt{border-collapse:collapse;width:100%;margin:6px 0;font-family:system-ui,sans-serif;font-size:12px}.analysis table.rt th,.analysis table.rt td{text-align:left;border:1px solid #ccd;padding:2px 6px}.analysis table.rt th{background:#eef1f6}.analysis table.rt caption{text-align:left;padding:2px 0;font-weight:600}.analysis .note{color:#556;font-family:system-ui,sans-serif;font-size:11px}.analysis details.more{margin:4px 0}.analysis details.more>summary{cursor:pointer;color:#245;font-family:system-ui,sans-serif;font-size:12px}.bubbles{margin:6px 0}.bubble-info{color:#556;min-height:16px;font-family:system-ui,sans-serif;font-size:11px}.bubbles g:focus{outline:none}.help-cols{grid-template-columns:260px 1fr;gap:14px;min-height:260px;display:grid}.help-list{margin:0;padding:0;list-style:none}.help-list li{padding:3px 0}.help-list a.on{color:#1c2430;font-weight:700;text-decoration:none}.help-body{font-family:Georgia,serif;line-height:1.5}.help-topics .topic{background:#f6f8fb;border-left:3px solid #9ab;margin:8px 0;padding:6px 8px}.help-topics .topic a{margin:2px 0;display:block}.hits .hit{border-bottom:1px solid #e5e7eb;padding:6px 0;font-size:12px}.hits .hit a{font-weight:600}.reader pre.page{white-space:pre-wrap;background:#fffef8;border:1px solid #ddd;max-height:56vh;margin-top:6px;padding:10px;font-family:Georgia,serif;font-size:13px;line-height:1.5;overflow:auto}mark{background:#ffe27a}
