:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#1b2136;--ink-soft:#3d4663;--ink-faint:#656e89;--ink-ghost:#9aa2b8;--paper:#f6f7fa;--surface:#fff;--surface-sunken:#f1f3f7;--surface-raised:#fff;--line:#e4e8ef;--line-strong:#d2d8e3;--accent:#0e7f7a;--accent-deep:#0a615d;--accent-soft:#e6f4f2;--accent-line:#9fd3ce;--over:#b03f2c;--over-wash:#fcece8;--over-line:#e8b5a8;--own:#8a5f18;--own-wash:#fdf2de;--own-line:#e6c88a;--project-indigo:#4254a8;--project-teal:#0e7f7a;--project-amber:#a9761a;--project-rose:#a93c52;--project-violet:#6d48a4;--project-sky:#2378aa;--project-lime:#5d7d22;--project-slate:#6b748f;--rail-bg:#1b2136;--rail-text:#fff;--rail-text-dim:#b4bcd2;--rail-text-faint:#868fa9;--rail-hover:#ffffff12;--rail-active:#ffffff21;--rail-mark-ink:#fff;--on-accent:#fff;--on-over:#fff;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-pill:999px;--rail:248px;--gutter:32px;--step--1:.875rem;--step-0:1rem;--step-1:1.1875rem;--step-2:1.5rem;--step-3:2.125rem;--step-4:3rem;--tap:44px;--shadow-panel:0 1px 2px #1b21360a, 0 2px 8px #1b21360a;--shadow-raised:0 2px 6px #1b21360f, 0 10px 28px #1b213614;--shadow-float:0 18px 56px #1b213638}@media (prefers-color-scheme:dark){:root[data-theme=system]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e8ecf5;--ink-soft:#c2cadc;--ink-faint:#8f98b2;--ink-ghost:#6a7390;--paper:#10141f;--surface:#191e2d;--surface-sunken:#141927;--surface-raised:#1f2537;--line:#2a3044;--line-strong:#3b435c;--accent:#3fb3ac;--accent-deep:#6fcdc6;--accent-soft:#10332f;--accent-line:#1c5b56;--over:#e28872;--over-wash:#36201b;--over-line:#6a3a2c;--own:#d8a84f;--own-wash:#322714;--own-line:#6a5223;--project-indigo:#8292e0;--project-teal:#3fb3ac;--project-amber:#d2a243;--project-rose:#d9798d;--project-violet:#a386d9;--project-sky:#5fabd8;--project-lime:#9dba5c;--project-slate:#8f98b2;--rail-bg:#0b0e18;--rail-mark-ink:#06211f;--on-accent:#06211f;--on-over:#2a0b05;--shadow-panel:0 1px 2px #00000059;--shadow-raised:0 2px 8px #0006;--shadow-float:0 20px 56px #0009}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e8ecf5;--ink-soft:#c2cadc;--ink-faint:#8f98b2;--ink-ghost:#6a7390;--paper:#10141f;--surface:#191e2d;--surface-sunken:#141927;--surface-raised:#1f2537;--line:#2a3044;--line-strong:#3b435c;--accent:#3fb3ac;--accent-deep:#6fcdc6;--accent-soft:#10332f;--accent-line:#1c5b56;--over:#e28872;--over-wash:#36201b;--over-line:#6a3a2c;--own:#d8a84f;--own-wash:#322714;--own-line:#6a5223;--project-indigo:#8292e0;--project-teal:#3fb3ac;--project-amber:#d2a243;--project-rose:#d9798d;--project-violet:#a386d9;--project-sky:#5fabd8;--project-lime:#9dba5c;--project-slate:#8f98b2;--rail-bg:#0b0e18;--rail-mark-ink:#06211f;--on-accent:#06211f;--on-over:#2a0b05;--shadow-panel:0 1px 2px #00000059;--shadow-raised:0 2px 8px #0006;--shadow-float:0 20px 56px #0009}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:Archivo,system-ui,-apple-system,Segoe UI,sans-serif;font-size:var(--step-0);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}h1,h2,h3,h4{letter-spacing:-.018em;margin:0;font-weight:600;line-height:1.25}h1{font-size:var(--step-2)}h2{font-size:var(--step-1)}h3{font-size:var(--step-0)}p{max-width:70ch;margin:0}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}button{font:inherit;font-variant-numeric:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.shell{grid-template-columns:var(--rail) minmax(0, 1fr);min-height:100vh;display:grid}.rail{background:var(--rail-bg);color:var(--rail-text);flex-direction:column;gap:28px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-mark{color:var(--rail-text);align-items:center;gap:11px;padding:0 8px;text-decoration:none;display:flex}.rail-mark-glyph{background:var(--accent);width:30px;height:30px;color:var(--rail-mark-ink);border-radius:8px;flex:none;place-items:center;font-size:16px;font-weight:700;display:grid}.rail-mark-name{font-size:var(--step-1);letter-spacing:-.02em;font-weight:600}.rail-nav{flex-direction:column;gap:2px;display:flex}.rail-link{min-height:var(--tap);border-radius:var(--radius);color:var(--rail-text-dim);justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.rail-link:hover{background:var(--rail-hover);color:var(--rail-text)}.rail-link[aria-current=page]{background:var(--rail-active);color:var(--rail-text)}.rail-link-count{font-size:var(--step--1);color:var(--rail-text-faint)}.rail-foot{font-size:var(--step--1);color:var(--rail-text-faint);margin-top:auto;padding:0 12px}.rail-foot p{max-width:none}.quick-bar{display:none}.main{min-width:0;padding:32px var(--gutter) 96px;max-width:1400px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.page-head-text{flex-direction:column;gap:6px;display:flex}.page-head-text p{color:var(--ink-faint)}.page-actions{flex-wrap:wrap;gap:10px;display:flex}.back-link{font-size:var(--step--1);color:var(--ink-faint);margin-bottom:10px;text-decoration:none;display:inline-block}.back-link:hover{color:var(--accent);text-decoration:underline}.figure{white-space:nowrap;align-items:baseline;gap:.24em;display:inline-flex}.figure:has(>.figure-symbol:first-child){gap:.08em}.figure-digits{letter-spacing:-.022em;font-feature-settings:"tnum" 1;font-weight:600}.figure-symbol{font-weight:inherit;letter-spacing:0}.figure-unit{color:var(--ink-faint);letter-spacing:0;font-size:.8em;font-weight:500}.figure-xl .figure-unit{font-size:.42em}.figure-lg .figure-unit{font-size:.5em}.figure-md .figure-unit{font-size:.68em}.figure-xl{font-size:var(--step-4);line-height:1.05}.figure-lg{font-size:var(--step-3);line-height:1.12}.figure-md{font-size:var(--step-1)}.figure-sm{font-size:var(--step-0)}.figure-sm .figure-digits{font-weight:500}.figure-nil{color:var(--ink-faint)}.figure-negative .figure-digits,.figure-negative .figure-symbol{color:var(--over)}.figure-muted .figure-digits,.figure-muted .figure-symbol,.figure-muted .figure-unit{color:var(--ink-faint);font-weight:500}.figure-accent .figure-digits,.figure-accent .figure-symbol{color:var(--accent)}.figure-own .figure-digits,.figure-own .figure-symbol{color:var(--own)}.holdings{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:flex-start;gap:48px;margin-bottom:32px;padding:4px 0 28px;display:flex}.holdings.is-tight{border-bottom:0;margin-bottom:0;padding-bottom:10px}.holding{flex-direction:column;gap:4px;display:flex}.holding-meta{font-size:var(--step--1);color:var(--ink-faint)}.holdings-aside{text-align:right;font-size:var(--step--1);color:var(--ink-faint);flex-direction:column;align-items:flex-end;gap:10px;margin-left:auto;padding-top:6px;display:flex}.holdings-aside p{max-width:30ch}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);overflow:hidden;container:panel/inline-size}.panel+.panel{margin-top:20px}.panel-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.panel-head h2{font-size:var(--step-0);font-weight:600}.panel-head-note{font-size:var(--step--1);color:var(--ink-faint)}.panel-body{padding:18px 20px}.panel-foot{border-top:1px solid var(--line);background:var(--surface-sunken);padding:12px 20px}.panel-body-flush{padding:0}.grid-two{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.grid-two>.panel+.panel{margin-top:0}.stack{flex-direction:column;gap:20px;display:flex}.table-scroll{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:var(--step-0)}table.data th{text-align:left;font-size:var(--step--1);color:var(--ink-faint);border-bottom:1px solid var(--line);background:var(--surface-sunken);white-space:nowrap;padding:9px 18px;font-weight:500}table.data td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 18px}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr:hover{background:var(--surface-sunken)}.numeric{text-align:right;white-space:nowrap}table.data th.numeric{text-align:right}.cell-primary{font-weight:500}.cell-sub{font-size:var(--step--1);color:var(--ink-faint)}.cell-title{align-items:flex-start;gap:11px;display:flex}.cell-title>.dot{margin-top:.42em}.row-actions{text-align:right;white-space:nowrap}.row-actions .button+.button{margin-left:4px}.row-link{color:inherit;text-decoration:none}.row-link:hover{color:var(--accent)}.bar{border-radius:var(--radius-pill);background:var(--surface-sunken);border:1px solid var(--line);min-width:120px;height:8px;position:relative;overflow:hidden}.bar-fill{background:var(--accent);border-radius:var(--radius-pill);position:absolute;inset:0 auto 0 0}.bar-fill.is-over{background:var(--over)}.bar-fill.is-own{background:repeating-linear-gradient(-45deg, var(--own) 0 3px, transparent 3px 7px);background-color:var(--own-wash)}.bar-row{flex-direction:column;gap:7px;min-width:160px;display:flex}.bar-legend{font-size:var(--step--1);color:var(--ink-faint);justify-content:space-between;gap:12px;display:flex}.badge{border-radius:var(--radius-pill);font-size:var(--step--1);border:1px solid var(--line-strong);color:var(--ink-faint);background:var(--surface);white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-weight:500;display:inline-flex}.badge-over{color:var(--over);border-color:var(--over-line);background:var(--over-wash)}.badge-own{color:var(--own);border-color:var(--own-line);background:var(--own-wash)}.badge-accent{color:var(--accent-deep);border-color:var(--accent-line);background:var(--accent-soft)}.dot{background:var(--project-slate);border-radius:3px;flex:none;width:9px;height:9px}.dot-indigo{background:var(--project-indigo)}.dot-teal{background:var(--project-teal)}.dot-amber{background:var(--project-amber)}.dot-rose{background:var(--project-rose)}.dot-violet{background:var(--project-violet)}.dot-sky{background:var(--project-sky)}.dot-lime{background:var(--project-lime)}.dot-slate{background:var(--project-slate)}.button{min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:500;font-size:var(--step-0);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 18px;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.button:hover{background:var(--surface-sunken);border-color:var(--ink-ghost)}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.button-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep)}.button-quiet{color:var(--ink-faint);background:0 0;border-color:#0000;min-height:34px;padding:6px 10px}.button-quiet:hover{background:var(--surface-sunken);color:var(--ink);border-color:#0000}.button-danger{color:var(--ink-faint)}.button-danger:hover,.button-danger:focus-visible{color:var(--over);background:var(--over-wash);border-color:var(--over-line)}.button-danger-solid{background:var(--over);border-color:var(--over);color:var(--on-over)}.button-danger-solid:hover{background:var(--over);filter:brightness(.93)}.confirm p{color:var(--ink-soft);max-width:52ch}.confirm .form-footer{margin-top:22px}.button-small{font-size:var(--step--1);min-height:34px;padding:6px 12px}.button-block{width:100%}.button:disabled{opacity:.45;cursor:not-allowed}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field-label{font-size:var(--step--1);color:var(--ink-soft);font-weight:500}.field-hint{font-size:var(--step--1);color:var(--ink-faint)}.field-error{font-size:var(--step--1);color:var(--over)}.input,.select,textarea.input{width:100%;min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;padding:10px 14px}textarea.input{min-height:0}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-faint) 50%), linear-gradient(135deg, var(--ink-faint) 50%, transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:36px}.input:focus,.select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.input.has-error,.select.has-error{border-color:var(--over)}.input-numeric{text-align:right;font-weight:500}.input-with-unit{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);align-items:stretch;display:flex;overflow:hidden}.input-with-unit:focus-within{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.input-with-unit.has-error{border-color:var(--over)}.input-with-unit .input{border:0;border-radius:0}.input-with-unit .input:focus{outline:none}.input-unit{background:var(--surface-sunken);border-left:1px solid var(--line);color:var(--ink-faint);font-size:var(--step--1);white-space:nowrap;place-items:center;padding:0 14px;font-weight:500;display:grid}.form-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;display:grid}.form-grid-full{grid-column:1/-1}.form-grid-tight{grid-template-columns:repeat(auto-fit,minmax(176px,1fr))}.form-section{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.form-section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:14px;display:flex}.form-section-head h3{font-size:var(--step-0)}.form-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}.form-footer-note{font-size:var(--step--1);color:var(--ink-faint);margin-right:auto}.form-problem{border-radius:var(--radius);background:var(--over-wash);border:1px solid var(--over-line);color:var(--over);font-size:var(--step--1);margin-bottom:16px;padding:11px 14px}.checkbox-row{font-size:var(--step-0);align-items:center;gap:9px;display:flex}.capture{flex-direction:column;gap:22px;display:flex}.capture-amount{flex-direction:column;align-items:center;gap:14px;padding:10px 0 4px;display:flex}.switch-row{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;display:flex}.switch-row .note{flex:24ch;min-width:24ch;margin:0}.currency-switch{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius-pill);gap:2px;padding:3px;display:inline-flex}.currency-switch button{color:var(--ink-faint);font-weight:500;font-size:var(--step--1);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:0;min-height:36px;padding:7px 16px}.currency-switch button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-panel)}.amount-entry{justify-content:center;align-items:baseline;gap:4px;width:100%;display:flex}.amount-entry-symbol{font-size:var(--step-4);letter-spacing:-.03em;color:var(--ink);font-weight:600}.amount-entry-symbol.is-suffix{font-size:var(--step-1);color:var(--ink-faint);letter-spacing:0;font-weight:500}.amount-entry input{font:inherit;font-size:var(--step-4);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--ink);text-align:left;background:0 0;border:0;min-width:1ch;max-width:100%;padding:0;font-weight:600}.amount-entry input:focus{outline:none}.amount-entry input::placeholder{color:var(--ink-ghost)}.capture-amount.has-error .amount-entry input{color:var(--over)}.capture-field{flex-direction:column;gap:8px;display:flex}.capture-label{font-size:var(--step--1);color:var(--ink-soft);font-weight:500}.chip-select{flex-wrap:wrap;gap:8px;display:flex}.chip{border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--ink-soft);font-weight:500;font-size:var(--step-0);cursor:pointer;align-items:center;gap:8px;padding:8px 15px;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.chip:hover{border-color:var(--ink-ghost);background:var(--surface-sunken)}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-deep)}.chip-add{color:var(--ink-faint);border-style:dashed}.disclosure{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken);overflow:hidden}.disclosure-toggle{width:100%;min-height:var(--tap);color:var(--ink-soft);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-weight:500;display:flex}.disclosure-toggle:hover{background:var(--surface)}.disclosure-summary{font-size:var(--step--1);color:var(--ink-faint);font-weight:400}.disclosure-body{border-top:1px solid var(--line);background:var(--surface);padding:4px 16px 18px}.capture-note{font-size:var(--step--1);color:var(--accent-deep);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.capture-note.is-warning{background:var(--own-wash);border-color:var(--own-line);color:var(--own)}.capture-footer{z-index:2;background:linear-gradient(to bottom, transparent, var(--surface) 22%);gap:12px;padding:16px 0 4px;display:flex;position:sticky;bottom:0}.modal-body:has(.capture-footer){padding-bottom:0}.modal .capture-footer{background:var(--surface);border-top:1px solid var(--line);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:0 -24px;padding:16px 24px}.allocation-rows{flex-direction:column;gap:10px;display:flex}.allocation-row{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.allocation-rate{background:var(--surface-sunken);border-radius:var(--radius);font-size:var(--step--1);color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.allocation-rate-input{max-width:170px}.allocation-rate strong{color:var(--ink);font-weight:500}.allocation-balance{border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface-sunken);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:12px 16px;display:flex}.allocation-balance.is-balanced{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}.allocation-balance.is-off{border-color:var(--own-line);background:var(--own-wash);color:var(--own)}.allocation-balance-label{font-size:var(--step--1);font-weight:500}.modal-backdrop{z-index:50;background:#1b21366b;place-items:center;padding:28px 20px;display:grid;position:fixed;inset:0;overflow:hidden}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);border:1px solid var(--line);flex-direction:column;width:100%;max-width:560px;min-height:0;max-height:100%;display:flex}.modal-mid{max-width:740px}.modal-wide{max-width:920px}.modal-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px 16px;display:flex}.modal-head p{font-size:var(--step--1);color:var(--ink-faint);margin-top:4px}.modal-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:24px;overflow-y:auto}.modal-body:has(.form-footer){padding-bottom:0}.modal .form-footer{z-index:2;background:var(--surface);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:24px -24px 0;padding:16px 24px;position:sticky;bottom:0}.modal-close{color:var(--ink-faint);border-radius:var(--radius);cursor:pointer;background:0 0;border:0;flex:none;width:36px;height:36px;font-size:22px;line-height:1}.modal-close:hover{background:var(--surface-sunken);color:var(--ink)}.empty{text-align:center;color:var(--ink-faint);flex-direction:column;align-items:center;gap:14px;padding:56px 24px;display:flex}.empty h3{color:var(--ink);font-size:var(--step-1)}.empty p{max-width:46ch}.data-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.sync-facts{flex-wrap:wrap;gap:28px;margin-top:16px;display:flex}.sync-facts dt{font-size:var(--step--1);color:var(--ink-faint)}.sync-facts dd{margin-top:2px;font-weight:500}.save-warning{z-index:60;border-radius:var(--radius);background:var(--over-wash);border:1px solid var(--over-line);max-width:min(640px,100vw - 32px);color:var(--over);box-shadow:var(--shadow-float);font-size:var(--step--1);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 16px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.save-warning .button{flex:none}.save-warning.is-mild{background:var(--own-wash);border-color:var(--own-line);color:var(--own)}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.filter-bar .field{flex:160px;min-width:150px;max-width:260px}.filter-bar .field-search{min-width:0}.filter-bar>.field:first-child{flex:1.6 220px;max-width:340px}.filter-toggle{display:none}.month-chart{align-items:stretch;gap:10px;height:150px;padding-top:10px;display:flex}.month-column{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.month-track{flex:1;justify-content:center;align-items:flex-end;min-height:0;display:flex}.month-bar{background:var(--accent);border-radius:4px 4px 0 0;width:100%;max-width:48px;min-height:3px}.month-bar.is-negative{background:var(--over)}.month-label{font-size:var(--step--1);color:var(--ink-faint);white-space:nowrap;text-align:center}.breakdown-list{flex-direction:column;gap:16px;display:flex}.breakdown-row{flex-direction:column;gap:7px;display:flex}.breakdown-head{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.breakdown-name{align-items:center;gap:9px;min-width:0;font-weight:500;display:flex}.breakdown-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kv{font-size:var(--step-0);grid-template-columns:auto 1fr;gap:10px 20px;display:grid}.kv dt{color:var(--ink-faint);font-size:var(--step--1)}.kv dd{text-align:right;margin:0}.summary-figures{flex-wrap:wrap;gap:40px;display:flex}.summary-figure{flex-direction:column;gap:4px;display:flex}.summary-figure-label,.note{font-size:var(--step--1);color:var(--ink-faint)}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.banner{border-radius:var(--radius);border:1px solid var(--own-line);background:var(--own-wash);color:var(--own);font-size:var(--step--1);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:24px;padding:14px 18px;display:flex}.banner-actions{margin-left:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:1120px){.grid-two{grid-template-columns:minmax(0,1fr)}}.project-meta{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:28px;margin:0 0 24px;padding-bottom:20px;display:flex}.project-meta .bar-row{min-width:260px;max-width:380px}.rail-actions{flex-direction:column;gap:8px;display:flex}.rail-actions-row{gap:8px;display:grid}.rail-actions-row .button{color:var(--rail-text-dim);background:0 0;border-color:#ffffff2e;justify-content:center}.rail-actions-row .button:hover{background:var(--rail-hover);color:var(--rail-text);border-color:#ffffff4d}.panel-columns,.widget-grid{columns:2;orphans:1;widows:1;column-gap:20px}.panel-columns>*,.widget{break-inside:avoid;min-width:0;margin-bottom:20px}.widget{flex-direction:column;gap:10px;display:flex}.panel-columns>.span-all,.widget-wide{column-span:all}.panel-columns>.panel+.panel{margin-top:0}table.data tr.is-nested td{padding-top:8px;padding-bottom:8px}.breakdown-name.is-child{color:var(--ink-soft);padding-left:26px}.breakdown-name.is-child .cell-primary{font-weight:400}.share-cell{justify-content:flex-end;align-items:center;gap:12px;display:flex}.share-bar{background:var(--surface-sunken);border-radius:3px;flex:none;width:72px;height:6px;overflow:hidden}.share-bar>span{background:var(--accent);border-radius:3px;height:100%;display:block}.share-value{font-size:var(--step--1);color:var(--ink-faint);text-align:right;min-width:4ch}.widget.is-customising{cursor:grab;outline:1px dashed var(--line-strong);outline-offset:8px;border-radius:var(--radius)}.widget.is-customising:active{cursor:grabbing}.widget.is-dragging{opacity:.4}.widget-handle{border-radius:var(--radius);background:var(--surface-sunken);border:1px solid var(--line);font-size:var(--step--1);color:var(--ink-soft);justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;font-weight:500;display:flex}.widget-handle-actions{gap:2px;display:flex}.customise-bar{border-radius:var(--radius);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-deep);font-size:var(--step--1);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;padding:14px 18px;display:flex}.customise-bar .chip{min-height:34px;font-size:var(--step--1);padding:5px 12px}.widget .holdings{border-bottom:0;margin-bottom:0;padding-bottom:0}.widget .holdings-aside{gap:2px;padding-top:10px}@media (max-width:1120px){.panel-columns,.widget-grid{columns:1}}@media (max-width:1000px){:root{--gutter:16px;--step-4:2.5rem;--step-3:1.75rem;--tap:46px}.shell{grid-template-columns:minmax(0,1fr)}.rail{z-index:20;flex-direction:column;gap:12px;height:auto;padding:12px 16px;position:sticky;top:0}.rail-nav{flex-direction:row;gap:4px;padding-bottom:2px;overflow-x:auto}.rail-link{white-space:nowrap;min-height:40px}.rail-link-count,.rail-foot,.rail-actions,.wide-only{display:none}.quick-bar{z-index:30;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);grid-template-columns:1.2fr 1fr 1fr;gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0}.quick-bar .button{min-height:var(--tap);justify-content:center}.main{padding:20px var(--gutter) 96px}.page-head-text p{display:none}.holdings{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px 24px;display:grid}.holdings .figure-xl{font-size:var(--step-3)}.holdings-aside{text-align:left;grid-column:1/-1;align-items:flex-start;margin-left:0}.allocation-row{grid-template-columns:minmax(0,1fr)}.page-head{margin-bottom:20px}.modal-backdrop{place-items:end stretch;padding:0}.modal,.modal-mid,.modal-wide{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:0;max-width:none;height:92vh;max-height:92vh}.modal-body{padding:20px 18px}.form-footer-note{display:none}.modal .form-footer,.modal .capture-footer{padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-radius:0;margin-left:-18px;margin-right:-18px}.button-small{min-height:40px;padding:8px 14px}.filter-toggle{width:100%;min-height:var(--tap);color:var(--ink-soft);font-weight:500;font-size:var(--step-0);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.filter-bar.is-folded{display:none}.filter-bar{margin-top:14px}.filter-bar .field,.filter-bar .field-search{flex:100%;width:100%;min-width:0}}@container panel (width<=860px){table.data td,table.data th{padding-left:11px;padding-right:11px}.row-actions{white-space:normal}.row-actions .button{margin-bottom:4px}}@container panel (width<=1000px){.optional-column{display:none}}@container panel (width<=700px){.share-bar{display:none}}@container panel (width<=520px){table.data:not(.keeps-columns) thead{display:none}table.data:not(.keeps-columns),table.data:not(.keeps-columns) tbody,table.data:not(.keeps-columns) tr,table.data:not(.keeps-columns) td{width:auto;display:block}table.data:not(.keeps-columns) tr{border-bottom:1px solid var(--line);padding:12px 16px}table.data:not(.keeps-columns) tbody tr:last-child{border-bottom:0}table.data:not(.keeps-columns) tbody tr.is-nested{border-left:2px solid var(--line-strong);margin-left:16px;padding-left:14px}.breakdown-name.is-child{padding-left:0}table.data:not(.keeps-columns) td{text-align:left;border:0;padding:2px 0}table.data:not(.keeps-columns) td.numeric{text-align:left}table.data:not(.keeps-columns) td[data-label]{justify-content:space-between;align-items:baseline;gap:16px;padding:3px 0;display:flex}table.data:not(.keeps-columns) td[data-label]:before{content:attr(data-label);color:var(--ink-faint);font-size:var(--step--1);white-space:nowrap}table.data:not(.keeps-columns) td:empty{display:none}table.data:not(.keeps-columns) .row-actions{text-align:left;flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}.row-actions .button+.button{margin-left:0}.row-actions .button{margin-bottom:0}}.panel-callout{max-width:none;font-size:var(--step--1);border-bottom:1px solid var(--line);margin:0;padding:10px 18px}.panel-callout.is-over{color:var(--over);background:var(--over-wash)}.month-step{align-items:center;gap:4px;display:inline-flex}.link-button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.link-button:hover .cell-primary,.link-button[aria-expanded=true] .cell-primary{color:var(--accent)}.link-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.person-month{gap:8px;padding:4px 0 8px;display:grid}.plain-list{gap:4px;margin:6px 0 0;padding:0;list-style:none;display:grid}.plain-list li{border-radius:var(--radius-sm);background:var(--surface-sunken);font-size:var(--step--1);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 10px;display:flex}.split-editor{gap:6px;margin-top:6px;display:grid}.split-editor-row{grid-template-columns:minmax(0,1fr) 7.5rem;align-items:center;gap:12px;display:grid}.split-editor-row .cell-title{align-items:center}table.payroll td{vertical-align:top}table.payroll td:first-child{min-width:9rem}table.payroll .badge{white-space:nowrap}.page-head h1:first-letter,.panel-head h2:first-letter,.modal-head h2:first-letter{text-transform:uppercase}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:4px;margin:-8px 0 24px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{appearance:none;font:inherit;color:var(--ink-faint);min-height:var(--tap);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--accent-deep);border-bottom-color:var(--accent)}.tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius-sm)}.settings-fields{gap:18px;display:grid}.settings-foot{margin-top:4px}.tree-toggle{text-align:left;align-items:center;gap:9px;font-weight:500;display:inline-flex}.tree-toggle .cell-sub{font-weight:400}.tree-chevron{width:12px;color:var(--ink-faint);font-size:12px}.tree-leaf{padding-left:21px}table.category-list td{vertical-align:middle}table.category-list .row-actions{width:1%}table.category-list .breakdown-name.is-child{padding-left:42px}.row-menu-button{min-width:34px;padding:4px 8px;font-size:18px;line-height:1}.row-menu{z-index:60;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-width:170px;box-shadow:var(--shadow-float);flex-direction:column;padding:6px;display:flex;position:fixed}.row-menu-item{appearance:none;font:inherit;color:var(--ink);text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;min-height:38px;padding:9px 12px}.row-menu-item:hover,.row-menu-item:focus-visible{background:var(--surface-sunken);outline:none}.row-menu-item.is-danger{color:var(--over)}.advanced{margin-top:14px}.advanced summary{cursor:pointer;color:var(--ink-faint);font-size:var(--step--1);width:-moz-fit-content;width:fit-content}.advanced[open] summary{margin-bottom:12px}.panel-danger{border-color:var(--over-line)}.button-danger-outline{color:var(--over);border-color:var(--over-line)}.button-danger-outline:hover{background:var(--over-wash);border-color:var(--over)}@media (max-width:600px){.tabs{gap:0}.tab{font-size:var(--step--1);padding:10px 8px}}.persist-line{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;padding-top:14px;display:flex}.persist-line .note{flex:220px;margin:0}.auth-page{min-height:100vh;place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.auth-card{width:min(440px,100%)}.auth-card .form-grid{grid-template-columns:1fr}.auth-title{font-size:var(--step-1);letter-spacing:-.02em;align-items:center;gap:11px;margin:0 0 8px;font-weight:600;display:flex}
