:root{--text:#3f3d45;--text-h:#100e17;--bg:#f7f7f9;--surface:#fff;--border:#e2e1e6;--accent:#6d4bff;--accent-hover:#5a3ce0;--error:#c22b3c;--positive:#17794c;--negative:#c22b3c;--control-height:26px;--ui-font-size:12.5px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font:13px/1.45 system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--text:#cbd0dc;--text-h:#f4f5f8;--bg:#14151b;--surface:#1c1e26;--border:#2d2f3a;--accent:#9c85ff;--accent-hover:#b09eff;--error:#ff8093;--positive:#4ed19b;--negative:#ff8093}}:root[data-theme=dark]{--text:#cbd0dc;--text-h:#f4f5f8;--bg:#14151b;--surface:#1c1e26;--border:#2d2f3a;--accent:#9c85ff;--accent-hover:#b09eff;--error:#ff8093;--positive:#4ed19b;--negative:#ff8093}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;overflow:hidden}h1,h2,h3,h4{color:var(--text-h);margin:0;font-weight:600}h1{font-size:1.25rem}h2{font-size:1rem}h3{text-transform:uppercase;letter-spacing:.03em;opacity:.7;font-size:.85rem}h4{text-transform:uppercase;letter-spacing:.03em;opacity:.7;font-size:.8rem}a{color:var(--accent);text-decoration:none}.muted{color:var(--text);opacity:.65;font-size:.9em}.error{color:var(--error);margin:0;padding:.35rem .7rem;font-size:.9em}input,select,button{font:inherit;font-size:var(--ui-font-size)}input,select{height:var(--control-height);border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:4px;padding:0 .35rem}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}button{height:var(--control-height);background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:0 .7rem;font-weight:500}button:hover{background:var(--accent-hover)}button:disabled{opacity:.6;cursor:default}.app-shell{background:var(--surface);flex-direction:column;height:100%;display:flex}.app-bar{border-bottom:1px solid var(--border);background:var(--bg);flex:none;align-items:stretch;gap:.5rem;padding:0 .5rem;display:flex}.app-back{color:var(--text);opacity:.7;align-items:center;padding:0 .35rem;display:flex}.app-back:hover{opacity:1}.unsaved-badge{border:1px solid var(--border);background:var(--surface);color:var(--text);white-space:nowrap;cursor:default;border-radius:999px;flex:none;align-self:center;padding:.05rem .4rem;font-size:.75rem}.app-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;align-items:center;max-width:22ch;font-weight:600;display:flex;overflow:hidden}.app-actions{flex:none;align-items:center;gap:.35rem;display:flex}.settings-panel{flex-direction:column;gap:.7rem;min-width:17rem;padding:.7rem .8rem;display:flex}.settings-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.settings-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;white-space:nowrap;font-size:11px}.settings-note{color:var(--text);opacity:.6;margin:-.35rem 0 0;font-size:11px;line-height:1.35}.app-logout{color:var(--text);opacity:.7;background:0 0;align-self:center;padding:0 .4rem}.app-logout:hover{background:var(--surface);color:var(--text-h);opacity:1}.tab-nav{-webkit-overflow-scrolling:touch;flex:auto;gap:.1rem;display:flex;overflow-x:auto}.tab-link{color:var(--text);opacity:.65;white-space:nowrap;font-size:var(--ui-font-size);border-bottom:2px solid #0000;flex-shrink:0;align-items:center;margin-bottom:-1px;padding:0 .7rem;display:flex}.tab-link:hover{opacity:1}.tab-link.active{opacity:1;color:var(--text-h);border-bottom-color:var(--accent)}.file-body{flex:auto;min-height:0;display:flex}.panel-content{flex-direction:column;min-width:0;min-height:0;display:flex}.resize-handle{background:var(--border);flex:none}.resize-handle.horizontal{cursor:row-resize;height:3px}.resize-handle.vertical{cursor:col-resize;width:3px}.resize-handle:hover,.resize-handle[data-dragging]{background:var(--accent)}.grid-page,.split-page,.scroll-page{flex:auto;width:100%;min-width:0}.grid-page{flex-direction:column;height:100%;min-height:0;display:flex}.grid-wrapper{flex:auto;min-height:0}.split-page{flex-direction:column;gap:.5rem;height:100%;min-height:0;padding-bottom:1rem;display:flex;overflow-y:auto}.split-section{flex-direction:column;flex:none;display:flex}.grid-wrapper.auto-height{flex:none}.grid-wrapper .ag-row.row-cash{background:color-mix(in srgb, var(--accent) 6%, transparent)}.grid-wrapper .ag-row.row-total{background:color-mix(in srgb, var(--accent) 12%, transparent);font-weight:600}.grid-wrapper .ag-row.row-total .ag-cell{color:var(--text-h)}.split-section h3{padding:.4rem .7rem .25rem}.toolbar{border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap;flex:none;align-items:center;gap:.5rem;padding:.3rem .5rem;display:flex}.toolbar-field{align-items:center;gap:.3rem;margin:0;display:flex}.toolbar-group{align-items:center;gap:.25rem;display:flex}.toolbar-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;white-space:nowrap;font-size:11px}.toolbar-spacer{flex:auto}.toolbar-stat{white-space:nowrap;align-items:baseline;gap:.35rem;display:flex}.toolbar-stat strong{color:var(--text-h);font-size:var(--ui-font-size);font-variant-numeric:tabular-nums}.toolbar-search{width:14rem}.popover{position:relative}.popover-trigger{background:var(--surface);border:1px solid var(--border);color:var(--text-h);margin:.15em}.popover-trigger:hover,.popover-trigger.open{background:var(--bg)}.popover-panel{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;min-width:14rem;max-width:min(22rem,100vw - 2rem);display:flex;position:absolute;top:calc(100% + .25rem);left:0;box-shadow:0 6px 20px #0000002e}.popover-panel.align-right{left:auto;right:0}.column-picker-list{max-height:22rem;padding:.25rem;overflow-y:auto}.column-picker-item{font-size:var(--ui-font-size);white-space:nowrap;cursor:pointer;border-radius:4px;align-items:center;gap:.4rem;padding:.2rem .35rem;display:flex}.column-picker-item:hover{background:var(--bg)}.column-picker-item input{width:auto;height:auto;accent-color:var(--accent);padding:0}.column-picker-actions{border-top:1px solid var(--border);justify-content:flex-end;padding:.35rem;display:flex}.column-picker-actions button{border:1px solid var(--border);color:var(--text-h);background:0 0}.column-picker-actions button:hover{background:var(--bg)}.detail-pane{background:var(--surface);border-top:1px solid var(--border);flex-direction:column;height:100%;min-height:0;display:flex}.detail-header{border-bottom:1px solid var(--border);background:var(--bg);flex:none;align-items:center;gap:.5rem;padding:.3rem .5rem;display:flex}.detail-kind{text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--text-h);border-radius:3px;padding:.1rem .3rem;font-size:10px}.detail-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.detail-actions{gap:.15rem;margin-left:auto;display:flex}.icon-button{color:var(--text);opacity:.7;background:0 0;padding:0 .4rem;font-size:14px;line-height:1}.icon-button:hover{background:var(--surface);color:var(--text-h);opacity:1}.icon-button.active{opacity:1;background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--text-h)}.detail-scroll{flex-direction:column;flex:auto;min-height:0;padding:.5rem .7rem 1rem;display:flex;overflow-y:auto}.detail-body{flex-direction:column;flex:auto;gap:.9rem;min-height:0;display:flex}.detail-columns{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));align-items:start;gap:.9rem 1.75rem;display:grid}.detail-section-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.3rem;display:flex}.link-button{height:auto;color:var(--accent);background:0 0;padding:0;font-size:.8rem;font-weight:500}.link-button:hover{color:var(--accent-hover);background:0 0;text-decoration:underline}.link-button.danger,.link-button.danger:hover{color:var(--error)}.confirm-inline{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}button.secondary{background:var(--surface);color:var(--text-h);border:1px solid var(--border)}button.secondary:hover{background:var(--bg)}.edit-form{font-size:var(--ui-font-size);flex-direction:column;gap:.35rem;display:flex}.edit-field{grid-template-columns:auto 1fr;align-items:center;gap:.1rem .75rem;display:grid}.edit-field>span:first-child{color:var(--text);opacity:.65;white-space:nowrap}.edit-field input[aria-invalid=true]{border-color:var(--error)}.edit-field .error{grid-column:2;padding:0}.edit-actions{gap:.4rem;margin-top:.25rem;display:flex}.modal-backdrop{z-index:40;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--border);background:var(--surface);border-radius:8px;width:min(28rem,100vw - 2rem);max-height:calc(100vh - 2rem);padding:.9rem 1rem 1rem;overflow-y:auto;box-shadow:0 12px 40px #00000047}.modal-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.7rem;display:flex}.modal-readout{text-align:right;font-variant-numeric:tabular-nums;margin:.15rem 0 0}.modal .edit-field select{width:100%}.modal-wide{width:min(56rem,100vw - 2rem)}.dropzone{border:1px dashed var(--border);background:var(--bg);color:var(--text);font-size:var(--ui-font-size);text-align:center;cursor:pointer;border-radius:6px;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1rem;display:flex}.dropzone.dragging{border-color:var(--accent);background:var(--surface)}.import-list{border:1px solid var(--border);border-radius:4px;max-height:40vh;margin:.6rem 0;overflow:auto}.import-list table{border-collapse:collapse;width:100%;font-size:var(--ui-font-size)}.import-list th,.import-list td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.2rem .45rem}.import-list th{background:var(--bg);color:var(--text);font-weight:500;position:sticky;top:0}.import-list .numeric{text-align:right;font-variant-numeric:tabular-nums}.import-row.error,.import-row.skipped{opacity:.55}.import-row.duplicate td{background:color-mix(in srgb, var(--positive) 12%, transparent)}.badge{border:1px solid var(--border);color:var(--text);border-radius:999px;margin-left:.3rem;padding:0 .35rem;font-size:.72rem;display:inline-block}.badge.error{border-color:var(--error);color:var(--error)}.import-targets{gap:.35rem}.import-option{font-size:var(--ui-font-size);align-items:center;gap:.4rem;display:flex}.import-option input{height:auto}.import-file-errors{margin:.3rem 0;padding-left:1.1rem}.import-result{background:var(--bg);color:var(--text-h);font-size:var(--ui-font-size);border-radius:4px;margin:0 0 .6rem;padding:.4rem .6rem}.toast{z-index:50;border:1px solid var(--border);background:var(--surface);color:var(--text-h);font-size:var(--ui-font-size);border-radius:6px;align-items:center;gap:.75rem;padding:.5rem .85rem;display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0000002e}.toast-action{height:auto;color:var(--accent);background:0 0;padding:0;font-weight:500}.toast-action:hover{color:var(--accent-hover);background:0 0;text-decoration:underline}.field-grid{font-size:var(--ui-font-size);grid-template-columns:auto 1fr;gap:.1rem .75rem;margin:0;display:grid}.field-grid dt{color:var(--text);opacity:.65;white-space:nowrap}.field-grid dd{color:var(--text-h);text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.field-value.positive{color:var(--positive)}.field-value.negative{color:var(--negative)}.detail-tabs{flex-direction:column;gap:.4rem;height:100%;min-height:0;display:flex}.detail-tab-bar{border-bottom:1px solid var(--border);flex:none;gap:.15rem;display:flex}.detail-tab{color:var(--text);opacity:.65;font-size:var(--ui-font-size);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:0 .6rem}.detail-tab:hover{opacity:1;background:0 0}.detail-tab.active{opacity:1;color:var(--text-h);border-bottom-color:var(--accent)}.detail-tab-panel{flex:auto;min-height:0;overflow:auto}.detail-tab-panel>.detail-history{height:100%;min-height:8rem}.detail-tab-panel>.chart-block{height:100%}.detail-history{flex-direction:column;height:14rem;display:flex}.page{max-width:900px;height:100%;margin:0 auto;padding:1.5rem 1.25rem 3rem;overflow-y:auto}.centered-page{justify-content:center;align-items:center;height:100%;padding:1.5rem;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;display:flex}.header-actions{align-items:center;gap:.5rem;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:1rem;padding:1rem 1.25rem}.login-card{flex-direction:column;gap:.6rem;width:320px;display:flex}.login-card label{font-size:var(--ui-font-size);flex-direction:column;gap:.25rem;display:flex}.file-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.file-card{flex-direction:column;gap:.15rem;display:flex}.file-label{color:var(--text-h);font-weight:600}.files-page{max-width:46rem}.header-divider{background:var(--border);width:1px;height:16px;margin:0 .15rem}button.ghost{color:var(--text-h);border:1px solid var(--border);background:0 0;align-items:center;gap:.3rem;display:inline-flex}button.ghost:hover:not(:disabled){background:var(--surface)}button.danger{border:1px solid var(--error);color:var(--error);background:0 0}button.danger:hover:not(:disabled){background:color-mix(in srgb, var(--error) 12%, transparent)}.icon-button.danger{color:var(--error);opacity:.75;border:none}.icon-button.danger:hover:not(:disabled){background:color-mix(in srgb, var(--error) 14%, transparent);color:var(--error);opacity:1}.icon-button:disabled{opacity:.3;cursor:default}.file-list{border-top:1px solid var(--border);margin:.25rem 0 0;padding:0;list-style:none}.file-row{border-bottom:1px solid var(--border)}.file-line{align-items:center;gap:.5rem;min-height:30px;padding:0 .15rem;display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-h);flex:auto;align-items:center;gap:.35rem;font-weight:500;text-decoration:none;display:flex;overflow:hidden}a.file-name:hover{color:var(--accent);text-decoration:underline}button.file-name.as-link{text-align:left;cursor:pointer;background:0 0;border:none;height:auto;padding:0}button.file-name.as-link:hover{color:var(--accent);background:0 0;text-decoration:underline}.file-tags{color:var(--text);align-items:center;gap:.3rem;display:flex}.tag{border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:3px;padding:0 .3rem;font-size:11px;line-height:15px}.file-actions{opacity:0;align-items:center;gap:.1rem;transition:opacity .12s ease-out;display:flex}.file-row:hover .file-actions,.file-row:focus-within .file-actions{opacity:1}@media (hover:none){.file-actions{opacity:1}}.inline-form,.row-form{font-size:var(--ui-font-size);align-items:center;gap:.35rem;display:flex}.inline-form{margin:.5rem 0 .25rem}.row-form{flex:auto;min-width:0;padding:.25rem .15rem .35rem}.row-form input{flex:0 16rem;min-width:8rem}.row-error{margin:0 0 .35rem;padding:0 .15rem}.empty-hint{margin-top:1rem}.scroll-page{flex-direction:column;height:100%;min-height:0;display:flex}.scroll-body{flex:auto;min-height:0;padding:.75rem;overflow-y:auto}.preset-row{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.preset-button{background:var(--surface);color:var(--text-h);border:1px solid var(--border);font-weight:500}.preset-button:hover{background:var(--bg)}.preset-button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.preset-chip{align-items:center;gap:.1rem;display:inline-flex}.preset-remove{color:var(--text);opacity:.5;background:0 0;padding:0 .3rem;font-size:13px;line-height:1}.preset-remove:hover{opacity:1;background:var(--bg)}.preset-rolling{opacity:.55;margin-left:.2rem;font-weight:600}.today-badge{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--text-h);white-space:nowrap;border-radius:3px;padding:.05rem .3rem;font-size:10px}.stat-row{flex-wrap:wrap;gap:2rem;margin-bottom:1rem;display:flex}.stat{flex-direction:column;gap:.1rem;display:flex}.stat strong{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:1.15rem}.breakdown-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.75rem 2rem;max-width:60rem;display:grid}.perf-page{flex-direction:column;gap:1rem;max-width:1500px;display:flex}.kpi-strip{background:var(--bg);border:1px solid var(--border);border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem 1.5rem;padding:.6rem .75rem;display:grid}.kpi{flex-direction:column;gap:.05rem;min-width:0;display:flex}.kpi-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;white-space:nowrap;font-size:11px}.kpi-value{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:1.05rem}.kpi-value.positive{color:var(--positive)}.kpi-value.negative{color:var(--negative)}.kpi-sub{color:var(--text);opacity:.55;font-size:11px}.perf-columns{--widget-body-height:18.25rem;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.widget{grid-column:span var(--widget-span)}.widget.size-quarter{--widget-span:1}.widget.size-half{--widget-span:2}.widget.size-full{--widget-span:4}.widget-slot{border:1px dashed #0000;border-radius:6px;align-self:stretch;min-height:100%}.perf-columns.dragging .widget-slot{border-color:color-mix(in srgb, var(--text) 25%, transparent)}.perf-columns.dragging .widget-slot.drop-target{border-style:solid;border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}@media (width<=1100px){.perf-columns{grid-template-columns:minmax(0,1fr)}.widget.size-quarter,.widget.size-half,.widget.size-full{--widget-span:1!important}.widget-slot{display:none}.widget-resize{cursor:ns-resize}.widget.standard-height>.widget-body{height:auto}}.widget{border:1px solid var(--border);border-radius:6px;flex-direction:column;min-width:0;display:flex;position:relative}.widget-bar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--border) 22%, transparent);border-radius:5px 5px 0 0;align-items:center;gap:.4rem;height:22px;padding:0 .25rem 0 .15rem;display:flex}.widget.collapsed .widget-bar{border-bottom:none;border-radius:5px}.widget-bar h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;font-weight:600;overflow:hidden}.widget-status{font-variant-numeric:tabular-nums;color:var(--text);opacity:.55;white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:11px;overflow:hidden}.widget-status .stale,.widget-status.stale{color:var(--negative);opacity:1}.widget-status-note{font-style:italic}.widget-grip,.widget-collapse,.widget-reset{color:var(--text);opacity:.45;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:0 .2rem;font-size:11px;line-height:1}.widget-grip{cursor:grab}.widget-collapse{padding:0 .3rem;font-size:17px}.widget-grip:hover,.widget-collapse:hover,.widget-reset:hover,.widget-grip:focus-visible,.widget-collapse:focus-visible,.widget-reset:focus-visible{opacity:1;background:color-mix(in srgb, var(--text) 10%, transparent)}.widget-resize{width:14px;height:14px;color:var(--text);opacity:0;text-align:right;cursor:nwse-resize;touch-action:none;background:0 0;border:none;padding:0;font-size:12px;line-height:10px;position:absolute;bottom:0;right:0}.widget:hover>.widget-resize,.widget-resize:focus-visible{opacity:.45}.widget-resize:hover,.widget-resize:focus-visible{opacity:.9;background:0 0}.widget.resizing{-webkit-user-select:none;user-select:none}.widget.resizing .widget-body{pointer-events:none}.widget-body{min-width:0;padding:.6rem .75rem .75rem}.widget.standard-height>.widget-body{min-height:var(--widget-body-height)}.widget.standard-height.scrolls>.widget-body{height:var(--widget-body-height);overflow-y:auto}.widget.resized>.widget-body,.widget.standard-height.resized>.widget-body,.widget.standard-height.scrolls.resized>.widget-body{height:var(--widget-body-h);min-height:var(--widget-body-h);overflow-y:auto}.widget.resized .chart-block{height:100%}.widget.resized .chart-block .chart-canvas{flex:auto;height:auto;min-height:5rem}.widget.dragging{opacity:.5}.widget.drop-target{outline:2px solid var(--accent);outline-offset:1px}.pending-upstream code{opacity:.85;font-size:.95em}.waterfall{font-size:var(--ui-font-size);flex-direction:column;gap:2px;display:flex}.waterfall-row{grid-template-columns:11rem 1fr 7rem;align-items:center;gap:.5rem;display:grid}.waterfall-label{color:var(--text);opacity:.75;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.waterfall-track{background:color-mix(in srgb, var(--border) 45%, transparent);border-radius:2px;height:14px;display:flex}.waterfall-bar{background:var(--accent);border-radius:2px;height:100%}.waterfall-bar.base,.waterfall-bar.total{background:color-mix(in srgb, var(--text) 45%, transparent)}.waterfall-bar.positive{background:var(--positive)}.waterfall-bar.negative{background:var(--negative)}.waterfall-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-h);white-space:nowrap}.waterfall-value.positive{color:var(--positive)}.waterfall-value.negative{color:var(--negative)}.chart-block{flex-direction:column;gap:.4rem;display:flex}.chart-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.chart-canvas{width:100%;height:38vh;min-height:15rem}.chart-readout{font-size:var(--ui-font-size);font-variant-numeric:tabular-nums;color:var(--text-h);border-top:1px solid var(--border);flex-wrap:wrap;gap:1rem;padding-top:.35rem;display:flex}.chart-readout i,.ratio-row i{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;margin-right:.2rem;font-size:11px;font-style:normal}.chart-readout-date{font-weight:600}.risk-tiles{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.6rem 1.25rem;display:grid}.ratio-row{border-top:1px solid var(--border);font-size:var(--ui-font-size);font-variant-numeric:tabular-nums;color:var(--text-h);gap:1.25rem;margin-top:.5rem;padding-top:.4rem;display:flex}.leaders{flex-direction:column;gap:.5rem;display:flex}.leaders-split{grid-template-columns:repeat(auto-fit,minmax(21rem,1fr));align-items:start;gap:.5rem 1.5rem;display:grid}.leader-half{min-width:0}.leader-half h4{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;margin:0 0 .15rem;font-size:11px;font-weight:500}.leader-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:var(--ui-font-size)}.leader-table th:nth-child(2),.leader-table td:nth-child(2){width:5.4rem}.leader-table th:nth-child(n+3),.leader-table td:nth-child(n+3){width:4.6rem}.leader-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;border-bottom:1px solid var(--border);white-space:nowrap;padding:.2rem .4rem;font-size:11px;font-weight:500}.leader-table td{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);color:var(--text-h);padding:.2rem .4rem}.leader-table th.num,.leader-table td.num{text-align:right;font-variant-numeric:tabular-nums}.leader-table td.positive{color:var(--positive)}.leader-table td.negative{color:var(--negative)}.leader-row-clickable{cursor:pointer}.leader-row-clickable:hover{background:color-mix(in srgb, var(--text) 8%, transparent)}.leader-row-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.leader-table td.leader-name{font-size:11.5px}.leader-name-row{align-items:center;gap:.35rem;min-width:0;display:flex}.leader-name-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.leader-badge{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--text) 12%, transparent);color:var(--text);border-radius:3px;margin-left:.4rem;padding:.05rem .25rem;font-size:10px}.leader-name-row .leader-badge{flex:none;margin-left:0}.chart-readout-note{color:var(--text);opacity:.55;font-size:11px;font-style:italic}:root{--heat-positive:#008c7d;--heat-negative:#c9313f;--heat-neutral:#f2f2f4}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--heat-positive:#1f8f7a;--heat-negative:#e04a55;--heat-neutral:#262832}}:root[data-theme=dark]{--heat-positive:#1f8f7a;--heat-negative:#e04a55;--heat-neutral:#262832}.heatmap{flex-direction:column;gap:.5rem;display:flex;overflow-x:auto}.heatmap-table{border-collapse:separate;border-spacing:2px;font-variant-numeric:tabular-nums;font-size:11.5px}.heatmap-table th{color:var(--text);opacity:.6;text-align:right;white-space:nowrap;padding:0 .2rem;font-size:11px;font-weight:500}.heatmap-table th[scope=row]{text-align:right;opacity:.8}.heatmap-cell{text-align:right;min-width:3.4rem;color:var(--text-h);background:var(--heat-neutral);white-space:nowrap;border-radius:3px;padding:.25rem .35rem}.heatmap-cell.empty{background:0 0}.heatmap-cell-clickable{cursor:pointer}.heatmap-cell-clickable:hover{outline:2px solid color-mix(in srgb, var(--text) 25%, transparent);outline-offset:-2px}.heatmap-cell-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.heatmap-year{outline:2px solid var(--surface);font-weight:600}.heatmap-year-header{padding-left:.4rem}.heatmap-legend{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.heatmap-ramp{background:linear-gradient(to right, var(--heat-negative), var(--heat-neutral) 50%, var(--heat-positive));border-radius:4px;width:7rem;height:8px}.heatmap-legend-note{margin-left:.35rem}.chart-readout-trade{color:var(--text-h);font-weight:600}.chart-block.fill{height:100%}.chart-block.fill .chart-canvas{flex:auto;height:auto;min-height:5rem}.chart-readout.reserved{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1.2rem;gap:0 1rem;height:3.95rem;display:grid;overflow:hidden}.chart-readout.reserved>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chart-readout.reserved .chart-readout-idle{grid-column:1/-1}.pie-block{flex-direction:column;gap:.4rem;min-width:0;display:flex;container-type:inline-size}.pie-controls{flex-wrap:nowrap;min-width:0}.pie-groupings{scrollbar-width:thin;flex-wrap:nowrap;flex:auto;min-width:0;padding-bottom:2px;overflow:auto hidden}.pie-groupings>.preset-button{flex:none}.pie-body{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.pie-donut{flex:none;width:8.5rem;height:8.5rem}.pie-donut circle{cursor:default;transition:opacity .1s linear}.pie-slice-clickable{cursor:pointer}.pie-legend{min-width:0;font-size:var(--ui-font-size);font-variant-numeric:tabular-nums;flex:12rem;margin:0;padding:0;list-style:none}.pie-legend-row{border-radius:3px;grid-template-columns:.6rem minmax(0,1fr) auto auto;align-items:center;gap:0 .4rem;padding:.05rem .15rem;display:grid}.pie-legend-row.active{background:color-mix(in srgb, var(--text) 8%, transparent)}.pie-legend-clickable{cursor:pointer}.pie-legend-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pie-swatch{border-radius:2px;width:.6rem;height:.6rem}.pie-legend-label{text-overflow:ellipsis;white-space:nowrap;color:var(--text-h);overflow:hidden}.pie-legend-share{color:var(--text-h)}.pie-legend-value{opacity:.65}@container (width<=420px){.pie-legend-value{display:none}.pie-legend-row{grid-template-columns:.6rem minmax(0,1fr) auto}}.refresh-control .icon-button{align-items:center;display:inline-flex;position:relative}.refresh-icon{display:inline-flex}.refresh-icon.spinning{animation:1s linear infinite refresh-spin}@keyframes refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.refresh-badge{background:var(--negative);color:#fff;pointer-events:none;border-radius:999px;padding:2px 4px;font-size:9px;line-height:1;position:absolute;top:-.3rem;right:-.35rem}.refresh-panel{gap:.35rem;padding:.6rem .75rem;font-size:12.5px}.refresh-status{color:var(--text-h);margin:0}.refresh-panel-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.refresh-panel-header .refresh-status{flex:auto;min-width:0}.refresh-now{background:var(--surface);border:1px solid var(--border);color:var(--text-h);white-space:nowrap;border-radius:4px;flex:none;padding:2px 6px;font-size:11px}.refresh-now:hover{background:var(--bg)}.refresh-panel .muted{margin:0}.refresh-failures{flex-direction:column;gap:.3rem;max-height:16rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.refresh-failures li{flex-direction:column;display:flex}.refresh-failure-name{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.refresh-failure-reason{color:var(--text);opacity:.75;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;display:-webkit-box;overflow:hidden}.analysis-page{flex-direction:column;height:100%;min-height:0;display:flex}.subtab-nav{border-bottom:1px solid var(--border);flex:none;gap:.1rem;padding:0 1.25rem;display:flex}.subtab-link{color:var(--text);opacity:.65;font-size:var(--ui-font-size);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.35rem .7rem}.subtab-link:hover{opacity:1}.subtab-link.active{opacity:1;color:var(--text-h);border-bottom-color:var(--accent)}.analysis-scroll{flex:auto;min-height:0;padding:.75rem 1.25rem 2rem;overflow-y:auto}.analysis-section{max-width:64rem}.analysis-section h2{color:var(--text-h);margin:.5rem 0;font-size:15px}.margin-intro{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.margin-intro p{font-size:var(--ui-font-size);margin:0}.margin-intro-controls{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.margin-threshold{font-size:var(--ui-font-size);color:var(--text);white-space:nowrap;align-items:center;gap:.35rem;display:flex}.margin-threshold input{width:5rem;height:var(--control-height);text-align:right;background:var(--surface);border:1px solid var(--border);color:var(--text-h);font:inherit;border-radius:3px;padding:0 .35rem}.margin-method{width:26rem;max-width:70vw;margin:0;padding-left:1.1rem;font-size:11.5px;line-height:1.5}.margin-method li+li{margin-top:.35rem}.margin-account{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:1rem;padding:.6rem .9rem .75rem}.margin-card-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.margin-account h3{color:var(--text-h);margin:0;font-size:13.5px}.margin-account h4{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.7;margin:.9rem 0 .3rem;font-size:11px;font-weight:500}.margin-status{font-size:var(--ui-font-size);font-variant-numeric:tabular-nums;border:1px solid var(--border);border-radius:999px;padding:.1rem .5rem}.margin-status.debit{color:var(--negative);border-color:color-mix(in srgb, var(--negative) 45%, transparent);background:color-mix(in srgb, var(--negative) 8%, transparent)}.margin-status.clear{color:var(--text);opacity:.75}.margin-stats{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.6rem 1.25rem;margin:.6rem 0 .75rem;display:grid}.margin-stat{flex-direction:column;gap:.1rem;display:flex}.margin-stat-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;font-size:11px}.margin-stat-value{font-variant-numeric:tabular-nums;color:var(--text-h);font-size:14px}.margin-chart .chart-canvas{height:11rem;min-height:11rem}.margin-chart .chart-readout .negative{color:var(--negative)}.margin-table{border-collapse:collapse;width:100%;font-size:var(--ui-font-size)}.margin-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;border-bottom:1px solid var(--border);white-space:nowrap;padding:.2rem .5rem;font-size:11px;font-weight:500}.margin-table td{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);color:var(--text-h);white-space:nowrap;padding:.2rem .5rem}.margin-table th.num,.margin-table td.num{text-align:right;font-variant-numeric:tabular-nums}.margin-open-badge{color:var(--negative);font-weight:500}.margin-months{max-width:32rem}.margin-pending{color:var(--text);opacity:.65;cursor:help;font-style:italic}.margin-expand-cell{width:1.4rem;padding:0 0 0 .1rem}.margin-expand{color:var(--text);opacity:.75;cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:11px}.margin-episode{cursor:pointer}.margin-episode:hover td{background:color-mix(in srgb, var(--accent) 6%, transparent)}.margin-episode:hover .margin-expand{opacity:1;color:var(--accent)}.margin-episode.expanded td{border-bottom-color:#0000}.margin-episode-detail td{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);white-space:normal}.margin-detail{padding:.15rem 0 .5rem}.margin-detail-line{font-size:var(--ui-font-size);color:var(--text-h);margin:0 0 .35rem}.margin-funded-table{border-collapse:collapse;font-size:var(--ui-font-size);min-width:28rem}.margin-funded-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text);opacity:.6;padding:.1rem 1.25rem .1rem 0;font-size:11px;font-weight:500}.margin-funded-table td{color:var(--text-h);padding:.12rem 1.25rem .12rem 0}.margin-funded-table th.num,.margin-funded-table td.num{text-align:right;font-variant-numeric:tabular-nums;padding-right:0}.refresh-failure-row{align-items:center;gap:.4rem;min-width:0;display:flex}.refresh-switch-all,.refresh-switch-one{background:var(--surface);border:1px solid var(--border);color:var(--text-h);white-space:nowrap;border-radius:4px;flex:none;padding:2px 6px;font-size:11px}.refresh-switch-all{align-self:flex-start}.refresh-switch-all:hover:not(:disabled),.refresh-switch-one:hover:not(:disabled){background:var(--bg)}.refresh-switch-error{color:var(--negative);margin:0;font-size:11.5px}.taxonomy-editor{flex-direction:column;flex:auto;gap:.5rem;min-height:0;padding:.6rem 1.25rem .75rem;display:flex}.taxonomy-bar{flex:none;justify-content:space-between;align-items:center;gap:1rem;display:flex}.taxonomy-picker{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.taxonomy-pill{height:var(--control-height);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:var(--ui-font-size);cursor:pointer;border-radius:999px;padding:0 .6rem}.taxonomy-pill:hover{color:var(--text-h)}.taxonomy-pill.active{border-color:var(--accent);color:var(--text-h);font-weight:500}.taxonomy-pill.add{border-style:dashed;align-items:center;gap:.25rem;display:inline-flex}.taxonomy-inline-form{align-items:center;gap:.35rem;display:flex}.taxonomy-inline-form input{height:var(--control-height);background:var(--surface);border:1px solid var(--border);color:var(--text-h);font:inherit;font-size:var(--ui-font-size);border-radius:3px;padding:0 .4rem}.taxonomy-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.taxonomy-confirm{width:20rem;font-size:var(--ui-font-size)}.taxonomy-confirm p{margin:0 0 .5rem}.taxonomy-error{border:1px solid var(--negative);color:var(--negative);font-size:var(--ui-font-size);border-radius:3px;flex:none;justify-content:space-between;align-items:center;gap:1rem;margin:0;padding:.35rem .6rem;display:flex}.taxonomy-empty{font-size:var(--ui-font-size);padding:.75rem .25rem}.taxonomy-body{flex:auto;grid-template-columns:minmax(0,2fr) minmax(15rem,1fr);gap:.75rem;min-height:0;display:grid}.taxonomy-side{grid-template-rows:auto minmax(0,1fr);gap:.75rem;min-height:0;display:grid}.taxonomy-pie{border:1px solid var(--border);background:var(--surface);border-radius:4px;align-items:center;gap:.5rem;padding:.4rem .5rem;display:flex}.taxonomy-pie .pie-donut{flex:none;width:8rem;height:8rem}.taxonomy-pie-legend{flex:auto;min-width:0;max-height:8rem;overflow-y:auto}.taxonomy-pie-legend .pie-legend-row{grid-template-columns:.6rem minmax(0,1fr) 3.4rem;padding-right:.2rem}@media (width<=1000px){.taxonomy-body{grid-template-rows:minmax(0,2fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}}.taxonomy-tree,.taxonomy-palette{border:1px solid var(--border);background:var(--surface);border-radius:4px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.taxonomy-tree-head,.taxonomy-row,.taxonomy-assignment{font-size:var(--ui-font-size);grid-template-columns:1.1rem 1.2rem minmax(0,1fr) 7rem 4.5rem 11.5rem;align-items:center;gap:.3rem;padding:0 .5rem;display:grid}.taxonomy-tree-head{border-bottom:1px solid var(--border);height:24px;color:var(--text);opacity:.7;text-transform:uppercase;letter-spacing:.03em;font-size:11px}.taxonomy-head-name{grid-column:1/4}.taxonomy-rows{flex:auto;min-height:0;padding-bottom:.5rem;overflow-y:auto}.taxonomy-row,.taxonomy-assignment{height:26px;padding-left:calc(.5rem + var(--depth,0) * .9rem)}.taxonomy-row:hover,.taxonomy-assignment:hover{background:var(--bg)}.taxonomy-node.dropping{outline:2px solid var(--accent);outline-offset:-2px;background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:3px}.taxonomy-twisty{width:1.1rem;color:var(--text);opacity:.7;cursor:pointer;background:0 0;border:none;padding:0;font-size:10px}.taxonomy-twisty:disabled{cursor:default;opacity:.25}.taxonomy-swatch{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:2px;width:1.1rem;height:1.1rem;padding:0}.taxonomy-swatch::-webkit-color-swatch-wrapper{padding:1px}.taxonomy-swatch::-webkit-color-swatch{border:none;border-radius:1px}.taxonomy-name,.taxonomy-assignment-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;color:var(--text-h);overflow:hidden}.taxonomy-name{font:inherit;font-size:var(--ui-font-size);cursor:pointer;background:0 0;border:none;padding:0}.taxonomy-name-form input,.taxonomy-add-row input{background:var(--bg);border:1px solid var(--accent);width:100%;height:20px;color:var(--text-h);font:inherit;font-size:var(--ui-font-size);border-radius:2px;padding:0 .3rem}.taxonomy-name-cell{align-items:center;gap:.35rem;min-width:0;display:flex}.taxonomy-count{background:var(--bg);color:var(--text);opacity:.7;border-radius:999px;flex:none;padding:0 .25rem;font-size:10px}.taxonomy-value,.taxonomy-share{color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;overflow:hidden}.taxonomy-share{opacity:.75}.taxonomy-split,.taxonomy-split-input{border:1px solid var(--border);height:16px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:2px;flex:none;padding:0 .25rem;font-size:10px}.taxonomy-split.whole{visibility:hidden;border-color:#0000}.taxonomy-assignment:hover .taxonomy-split.whole,.taxonomy-assignment:focus-within .taxonomy-split.whole{visibility:visible;border-color:var(--border)}.taxonomy-split-input{border-color:var(--accent);background:var(--bg);width:3.5rem;color:var(--text-h);cursor:text}.taxonomy-tree-foot{border-top:1px solid var(--border);height:24px;font-size:var(--ui-font-size);color:var(--text-h);grid-template-columns:minmax(0,1fr) 7rem 4.5rem 11.5rem;align-items:center;gap:.3rem;padding:0 .5rem;display:grid}.taxonomy-tree-foot .muted{text-align:right;font-size:11px}.taxonomy-row-actions{visibility:hidden;gap:.05rem;display:flex}.taxonomy-row:hover .taxonomy-row-actions,.taxonomy-row:focus-within .taxonomy-row-actions,.taxonomy-assignment:hover .taxonomy-row-actions,.taxonomy-assignment:focus-within .taxonomy-row-actions{visibility:visible}.taxonomy-row-actions .icon-button{width:20px;height:20px;font-size:11px}.taxonomy-row-actions .icon-button.danger:hover:not(:disabled){color:var(--negative)}.taxonomy-inline-confirm,.taxonomy-add-row{padding:.25rem .5rem .25rem calc(.5rem + var(--depth,0) * .9rem + 2.4rem);font-size:var(--ui-font-size);align-items:center;gap:.4rem;display:flex}.taxonomy-inline-confirm{background:var(--bg)}.taxonomy-add-row input{max-width:14rem}.taxonomy-kind{text-transform:uppercase;letter-spacing:.04em;color:var(--text);opacity:.55;text-align:right;padding-right:.2rem;font-size:9.5px}.taxonomy-assignment .taxonomy-kind{grid-column:span 2}.taxonomy-assignment{color:var(--text)}.taxonomy-assignment-name{opacity:.85}.taxonomy-toplevel{border:1px dashed var(--border);font-size:var(--ui-font-size);border-radius:3px;align-items:center;gap:.6rem;margin:.35rem .5rem 0;padding:.3rem .5rem;display:flex}.taxonomy-toplevel.dropping{border-color:var(--accent);border-style:solid}.taxonomy-toplevel .link-button{align-items:center;gap:.25rem;display:inline-flex}.taxonomy-drop-hint{font-size:11px}.taxonomy-palette-head{border-bottom:1px solid var(--border);flex-direction:column;gap:.3rem;padding:.4rem .5rem;display:flex}.taxonomy-palette-head input[type=search]{height:var(--control-height);background:var(--bg);border:1px solid var(--border);color:var(--text-h);font:inherit;font-size:var(--ui-font-size);border-radius:3px;padding:0 .4rem}.taxonomy-palette-toggle{color:var(--text);align-items:center;gap:.3rem;font-size:11.5px;display:flex}.taxonomy-palette-note{margin:0;padding:.3rem .5rem 0;font-size:11px}.taxonomy-palette-head-row{border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.03em;height:20px;color:var(--text);opacity:.7;grid-template-columns:2.3rem minmax(0,1fr) 2.4rem 5rem 4.2rem;align-items:center;gap:.3rem;padding:0 .5rem;font-size:10px;display:grid}.taxonomy-palette-sort,.taxonomy-palette-sort-share{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;padding:0;overflow:hidden}.taxonomy-palette-sort{cursor:pointer;text-align:right}.taxonomy-palette-head-row .taxonomy-palette-sort:first-of-type{text-align:left}.taxonomy-palette-sort:hover,.taxonomy-palette-sort.active{color:var(--text-h);opacity:1}.taxonomy-palette-sort-share{text-align:right}.taxonomy-palette-list{flex:auto;min-height:0;padding:.25rem 0 .5rem;overflow-y:auto}.taxonomy-vehicle{width:100%;height:24px;color:var(--text);font:inherit;font-size:var(--ui-font-size);text-align:left;cursor:grab;background:0 0;border:none;grid-template-columns:2.3rem minmax(0,1fr) 2.4rem 5rem 4.2rem;align-items:center;gap:.3rem;padding:0 .5rem;display:grid}.taxonomy-vehicle.placing{background:var(--bg);outline:1px solid var(--accent);outline-offset:-1px}.taxonomy-vehicle:hover{background:var(--bg)}.taxonomy-vehicle.assigned{opacity:.45}.taxonomy-vehicle-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-h);overflow:hidden}.taxonomy-vehicle-free{color:var(--text);opacity:.7;text-align:right;font-size:10px}.taxonomy-palette.dropping{outline:2px solid var(--accent);outline-offset:-2px}.taxonomy-palette-toggles{flex-wrap:wrap;gap:.75rem;display:flex}.taxonomy-placing{background:var(--bg);border-bottom:1px solid var(--accent);font-size:var(--ui-font-size);justify-content:space-between;align-items:center;gap:1rem;padding:.3rem .6rem;display:flex}.taxonomy-row-actions.placing{visibility:visible;justify-content:flex-end}.taxonomy-vehicle:disabled{cursor:default}
