.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--field-height);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-on-primary);font-weight:600;cursor:pointer;transition:background var(--duration-fast) ease}.btn:hover:not(:disabled){background:var(--color-primary-hover)}a.btn{text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--secondary{background:transparent;border-color:var(--color-border-strong);color:var(--color-text)}.btn--secondary:hover:not(:disabled){background:var(--color-surface-alt)}.btn--ghost{background:transparent;color:var(--color-primary)}.btn--ghost:hover:not(:disabled){background:var(--color-surface-alt)}.btn--danger{background:var(--color-danger)}.btn--sm{min-height:2.25rem;padding:0 var(--space-3);font-size:var(--text-sm)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.card__title{font-size:var(--text-sm);color:var(--color-text);font-weight:600;margin-bottom:var(--space-2)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.125rem var(--space-2);border-radius:var(--radius-full);background:var(--color-surface-alt);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600}.badge--link{text-decoration:none;cursor:pointer}.badge--link:hover,.badge--link:focus-visible{text-decoration:underline;background:color-mix(in srgb,currentColor 28%,transparent)}.badge--shared{background:color-mix(in srgb,var(--color-shared) 18%,transparent);color:var(--color-shared)}.badge--debt{background:color-mix(in srgb,var(--color-debt) 18%,transparent);color:var(--color-debt)}.badge--savings{background:color-mix(in srgb,var(--color-savings) 18%,transparent);color:var(--color-savings)}.badge--ok{background:color-mix(in srgb,var(--color-income) 18%,transparent);color:var(--color-income)}.badge--warning{background:color-mix(in srgb,var(--color-warning) 18%,transparent);color:var(--color-warning)}.badge--danger{background:color-mix(in srgb,var(--color-danger) 18%,transparent);color:var(--color-danger)}.alert{display:flex;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-left:3px solid var(--color-text-muted);border-radius:var(--radius-md);background:var(--color-surface)}.alert--info{border-left-color:var(--color-savings)}.alert--warning{border-left-color:var(--color-warning)}.alert--danger{border-left-color:var(--color-danger)}.alert--success{border-left-color:var(--color-income)}.alert__title{font-weight:600}.alert__body{color:var(--color-text-muted);font-size:var(--text-sm)}.amount{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.amount--in{color:var(--color-income)}.amount--out{color:var(--color-expense)}.amount--neutral{color:var(--color-text)}.amount--muted{color:var(--color-text-muted);font-weight:500}.amount--xl{font-size:var(--text-3xl)}.amount--lg{font-size:var(--text-xl)}.empty{display:grid;place-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-4);text-align:center;color:var(--color-text-muted)}.empty__icon{width:88px;height:88px;opacity:.9}.empty__title{font-size:var(--text-lg);font-weight:600;color:var(--color-text)}.empty__body{max-width:34rem}.progress{height:.5rem;background:var(--color-surface-alt);border-radius:var(--radius-full);overflow:hidden}.progress__bar{height:100%;background:var(--color-primary);border-radius:var(--radius-full)}.progress__bar--indeterminate{width:35%;animation:progress-slide 1.1s ease-in-out infinite}@keyframes progress-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}@media(prefers-reduced-motion:reduce){.progress__bar--indeterminate{width:100%;animation:none}}.progress__bar--warning{background:var(--color-warning)}.progress__bar--danger{background:var(--color-danger)}.skeleton{background:linear-gradient(90deg,var(--color-surface-alt),var(--color-border),var(--color-surface-alt));background-size:200% 100%;border-radius:var(--radius-sm);animation:skeleton 1.4s ease-in-out infinite}@keyframes skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.field{display:grid;gap:var(--space-2)}.field__label{font-size:var(--text-sm);font-weight:600}.field__hint{font-size:var(--text-xs);color:var(--color-text-muted)}.field__control{min-height:var(--field-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface)}.form-stack{display:grid;gap:var(--space-4);align-content:start}.form-stack--tight{gap:var(--space-2);margin-top:var(--space-2)}.form-stack>.btn{justify-self:start}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.form-row{display:grid;gap:var(--space-4);align-items:start}@media(min-width:768px){.form-row{row-gap:var(--space-2);column-gap:var(--space-3)}.form-row--2{grid-template-columns:repeat(2,1fr)}.form-row--3{grid-template-columns:repeat(3,1fr)}}@supports (grid-template-rows: subgrid){@media(min-width:768px){.form-row{grid-template-rows:auto auto auto}.form-row>.field{grid-row:span 3;grid-template-rows:subgrid;gap:var(--space-2)}}}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{text-align:left;padding:var(--space-2) var(--space-3);background:var(--color-surface-alt);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600;border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:1}.table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}.table tbody tr:last-child>*{border-bottom:0}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}@media(hover:hover){.table tbody tr:hover>*{background:color-mix(in srgb,var(--color-surface-alt) 55%,transparent)}}.table__row--excluded{opacity:.55}.table__row--future{opacity:.75}.table__row--marker>td{background:var(--color-surface-alt);color:var(--color-text-muted);font-size:var(--text-xs);text-align:center;padding:var(--space-2) var(--space-3)}@media(hover:hover){.table tbody tr.table__row--marker:hover>*{background:var(--color-surface-alt)}}.table__scroll{overflow:auto;max-height:70vh;border-radius:var(--radius-md);background:linear-gradient(to right,var(--color-surface) 60%,transparent) left center,linear-gradient(to left,var(--color-surface) 60%,transparent) right center,linear-gradient(to right,color-mix(in srgb,var(--color-text) 20%,transparent),transparent) left center,linear-gradient(to left,color-mix(in srgb,var(--color-text) 20%,transparent),transparent) right center;background-repeat:no-repeat;background-size:36px 100%,36px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}*+.table__scroll{margin-top:var(--space-3)}p+.table__scroll,.alert+.table__scroll{margin-top:var(--space-2)}.btn+.table__scroll{margin-top:var(--space-4)}.table__scroll:not(:last-child){margin-bottom:var(--space-3)}.table .field__control{min-height:2rem;font-size:var(--text-xs);max-width:14rem}.table__cellTags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.table__cellNote{display:block;margin-top:var(--space-1);font-size:var(--text-xs)}@media(max-width:767px){.table--cards thead{display:none}.table--cards,.table--cards tbody,.table--cards tr,.table--cards td{display:block;width:auto}.table--cards tr{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.table--cards td{border-bottom:none;padding:var(--space-1) 0}.table--cards td:before{content:attr(data-label);display:block;font-size:var(--text-xs);color:var(--color-text-muted)}.table--cards td:not([data-label]):before{display:none}.table--cards td.num{text-align:left}.table--cards .field__control{max-width:none;width:100%}}.rowMenu{display:inline-block}.rowMenu__trigger{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;list-style:none}.rowMenu__trigger::-webkit-details-marker{display:none}.rowMenu__trigger:hover{background:var(--color-surface-alt);color:var(--color-text)}.rowMenu__trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.rowMenu__nested>summary{cursor:pointer;font-size:var(--text-xs);color:var(--color-text-muted);padding:var(--space-1) 0}.rowMenu__nested>.field__control{margin-top:var(--space-1)}.rowMenu__items{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);margin-top:var(--space-1);min-width:max-content}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-overlay);animation:modal-in var(--duration-fast) ease}.modal__panel{width:100%;max-width:26rem;display:grid;gap:var(--space-3);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.modal__title{font-size:var(--text-lg);font-weight:700;line-height:1.3}.modal__body{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5}.modal__field{margin:0}.modal__actions{display:flex;gap:var(--space-2);justify-content:flex-end;flex-wrap:wrap}@media(max-width:30rem){.modal__actions{flex-direction:column-reverse}.modal__actions .btn{width:100%}}@keyframes modal-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.modal{animation:none}}.link-plain{color:inherit;text-decoration:none}.link-plain:hover,.link-plain:focus-visible{text-decoration:underline}.field__control--color{width:3rem;padding:var(--space-1);cursor:pointer}.swatch{width:1.5rem;height:1.5rem;border:2px solid transparent;border-radius:var(--radius-full);cursor:pointer;padding:0}.swatch[aria-pressed=true]{border-color:var(--color-text)}.card--link{position:relative;transition:border-color var(--duration-fast) ease}.card--link:hover{border-color:var(--color-primary)}.card--link:focus-within{border-color:var(--color-primary)}.card__stretched:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg)}.card--link .card__actions,.card--link .card__above{position:relative;z-index:1}.institution-mark{display:inline-flex;align-items:center;justify-content:center;border-radius:30%;font-weight:700;letter-spacing:.02em;flex-shrink:0}.entity-card__head{display:flex;gap:var(--space-3);align-items:start}.entity-card__marks{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:2rem;flex-shrink:0}.entity-card__detail{font-size:var(--text-xs);color:var(--color-text-muted);min-height:1.1rem}.entity-card__notes{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;margin-top:var(--space-3);min-height:1.75rem}.entity-card__foot{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.reorderable{height:100%;border-radius:var(--radius-md);transition:opacity var(--duration-fast) ease,box-shadow var(--duration-fast) ease}.reorderable--dragging{opacity:.45}.reorderable--over{box-shadow:0 0 0 2px var(--color-primary)}.reorderable__grip{cursor:grab}.reorderable__grip:active{cursor:grabbing}.entity-card{display:flex;flex-direction:column;gap:var(--space-4);height:100%}.entity-card>.entity-card__foot{margin-top:auto}.entity-card>.entity-card__notes{margin-top:0}.dropzone{flex:1;min-width:0;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast) ease,background var(--duration-fast) ease}.dropzone--over{border-color:var(--color-primary);background:var(--color-surface-alt)}.dropzone__button{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:2.25rem;padding:0 var(--space-3);border:0;background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-family:inherit;cursor:pointer;border-radius:var(--radius-md)}.dropzone__button:hover,.dropzone__button:focus-visible{color:var(--color-primary)}.btn--icon{min-width:2.75rem;padding:0}.btn--icon.btn--sm{min-width:2.25rem}.page-summary{display:flex;gap:var(--space-4);justify-content:space-between;align-items:center;flex-wrap:wrap}.disclosure__head{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:0;border:0;background:none;color:inherit;cursor:pointer;text-align:left}.disclosure__head svg{transition:transform .12s ease;color:var(--color-text-muted)}.disclosure__head[aria-expanded=true] svg{transform:rotate(90deg)}.disclosure__title{margin:0}.disclosure__body{margin-top:var(--space-4)}@media(prefers-reduced-motion:reduce){.disclosure__head svg{transition:none}}.section-body{display:grid;gap:var(--space-5);align-content:start}.section-body>*,.page-stack>*{min-width:0}.page-summary__actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-5);overflow-x:auto}.tabs__tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);color:var(--color-text-muted);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;font-weight:600}.tabs__tab:hover{color:var(--color-text)}.tabs__tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tabs__badge{min-width:1.25rem;padding:0 var(--space-1);border-radius:var(--radius-full);background:var(--color-surface-alt);color:var(--color-text-muted);font-size:var(--text-xs);text-align:center}.section-head{display:flex;gap:var(--space-4);align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:var(--space-3)}.section-head__title{font-size:var(--text-2xl);font-weight:700}.section-head__title--sub{font-size:var(--text-xl)}.section-head__actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.page-stack>*+*{margin-top:var(--space-4)}.card--raised{background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--color-accent) 10%,transparent),transparent 62%),var(--color-surface-raised);box-shadow:var(--shadow-md)}.card--in,.card--out{border-color:color-mix(in srgb,var(--tint) 22%,var(--color-border));background:color-mix(in srgb,var(--tint) 7%,var(--color-surface))}.card--in{--tint: var(--color-income)}.card--out{--tint: var(--color-expense)}.origin{display:grid}.origin__row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-1) 0}.origin__row--total{margin-top:var(--space-1);border-top:1px solid var(--color-border);padding-top:var(--space-2);font-weight:600}.origin__label{display:flex;align-items:baseline;gap:var(--space-2);text-align:left}@media(max-width:480px){.origin__label{flex-direction:column;gap:0}}.origin__label--action{border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer}.origin__label--action:hover,.origin__label--action:focus-visible{text-decoration:underline}.origin__label--action[aria-pressed=true]{font-weight:600;color:var(--color-accent)}.origin__count,.origin__hint{color:var(--color-text-muted);font-size:var(--text-xs)}.origin__years{display:grid;gap:var(--space-4)}.origin__years>*{min-width:0}.seg,.stepper{display:inline-flex;align-items:stretch;min-height:var(--field-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--color-surface);overflow:hidden}.seg__option,.stepper__step{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--color-text-muted);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) ease,color var(--duration-fast) ease}.seg__option{padding:0 var(--space-4)}.seg__option+.seg__option{border-left:1px solid var(--color-border)}.seg__option:hover:not([aria-pressed=true]),.stepper__step:hover:not(:disabled){background:var(--color-surface-alt);color:var(--color-text)}.seg__option[aria-pressed=true]{background:var(--color-primary);color:var(--color-text-on-primary)}.seg__option:focus-visible,.stepper__step:focus-visible{outline:2px solid var(--color-text);outline-offset:-3px}.stepper__step{width:2.5rem}.stepper__step:disabled{opacity:.4;cursor:not-allowed}.stepper__value{display:inline-flex;align-items:center;justify-content:center;min-width:7ch;padding:0 var(--space-2);border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);font-size:var(--text-sm)}.update{position:fixed;left:50%;bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:50;display:flex;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);box-shadow:var(--shadow-sm);font-size:var(--text-sm);max-width:calc(100vw - var(--space-5) * 2)}.shell{min-height:100%;display:grid;grid-template-columns:1fr}.shell__main{min-width:0;width:100%;max-width:var(--content-max);margin:0 auto;padding:var(--space-5) var(--space-4) calc(var(--nav-height-mobile) + var(--space-6))}.brand{display:flex;align-items:center;gap:var(--space-3)}.brand__logo{width:2rem;height:2rem}.brand__name{font-weight:700;letter-spacing:-.01em}.nav{position:fixed;inset:auto 0 0 0;display:flex;justify-content:space-around;height:var(--nav-height-mobile);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:10}.nav__link{display:grid;place-items:center;gap:2px;flex:1;min-width:0;padding:var(--space-1);color:var(--color-text-muted);text-decoration:none;font-size:var(--text-xs)}.nav__link[aria-current=page],.nav__link--active{color:var(--color-primary);font-weight:600}.nav__icon{width:1.375rem;height:1.375rem}.nav__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.nav__brandName,.nav__brand,.nav__secondary{display:none}.nav__more{position:relative;display:flex;flex:1;min-width:0}.nav__moreButton{border:none;background:transparent;cursor:pointer;width:100%;font-family:inherit;font-size:var(--text-xs)}.nav__moreButton[data-active=true]{color:var(--color-primary);font-weight:600}.nav__sheet{position:absolute;bottom:calc(100% + var(--space-2));right:var(--space-2);display:grid;gap:var(--space-1);min-width:12rem;padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.nav__sheetLink{grid-auto-flow:column;justify-content:start;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm)}@media(min-width:768px){.shell{grid-template-columns:var(--nav-width-collapsed) 1fr}.nav__more{display:none}.nav__secondary{display:contents}.nav__brand{display:grid}.shell__main{padding-bottom:var(--space-6)}.nav{position:sticky;inset:0 auto auto 0;top:0;height:100vh;width:var(--nav-width-collapsed);flex-direction:column;justify-content:flex-start;gap:var(--space-1);padding:var(--space-4) var(--space-2);border-top:none;border-right:1px solid var(--color-border)}.nav__link{flex:0 0 auto;width:100%;padding:var(--space-2);border-radius:var(--radius-md)}.nav__link[aria-current=page],.nav__link--active{background:var(--color-surface-alt)}.nav__label{display:none}.nav__brand{place-items:center;margin-bottom:var(--space-3)}}@media(min-width:1280px){.shell{grid-template-columns:var(--nav-width) 1fr}.nav{width:var(--nav-width);align-items:stretch}.nav__link{grid-auto-flow:column;justify-content:start;gap:var(--space-3);padding:var(--space-3);font-size:var(--text-sm)}.nav__brand{grid-auto-flow:column;justify-content:start;align-items:center;gap:var(--space-2);padding:0 var(--space-3)}.nav__brandName,.nav__label{display:inline}}.grid{display:grid;gap:var(--space-4)}.grid>*{min-width:0}.grid--pair>:last-child:nth-child(odd){grid-column:1 / -1}.grid__full{grid-column:1 / -1}@media(min-width:768px){.grid--2{grid-template-columns:repeat(2,1fr)}}@media(min-width:1280px){.grid--3{grid-template-columns:repeat(3,1fr)}}.lock{min-height:100dvh;display:grid;place-items:center;padding:var(--space-4);background:var(--color-bg)}.lock__panel{width:min(28rem,100%);display:grid;gap:var(--space-4)}.lock__logo{height:2.5rem;width:auto;justify-self:center}.chart__scroll{overflow-x:auto}.chart{display:block;max-width:100%}.chart__axis{stroke:var(--color-border-strong);stroke-width:1.2}.chart__bar--income{fill:var(--color-income)}.chart__bar--expense{fill:var(--color-expense)}.chart__patternLine{stroke:var(--color-surface);stroke-width:1.5}.chart__line{fill:none;stroke:var(--color-primary);stroke-width:1.8;stroke-linejoin:round}.chart__line--strong{stroke:var(--color-savings);stroke-width:2.2}.chart__area{fill:color-mix(in srgb,var(--color-savings) 16%,transparent);stroke:none}.chart__dot{fill:var(--color-surface);stroke:var(--color-primary);stroke-width:1.6}.chart__label{fill:var(--color-text-muted);font-size:10px}.chart__hit{fill:transparent;cursor:pointer}.chart__hit[role=button]:hover{fill:color-mix(in srgb,var(--color-primary) 7%,transparent)}.chart__hit[role=button]:focus-visible{fill:color-mix(in srgb,var(--color-primary) 12%,transparent);outline:2px solid var(--color-text);outline-offset:-2px}.chart__group.is-selected .chart__hit{fill:color-mix(in srgb,var(--color-primary) 10%,transparent)}.chart__legend{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.chart__legendItem{display:inline-flex;align-items:center;gap:var(--space-2)}.chart__swatch{width:.75rem;height:.75rem;border-radius:var(--radius-sm);display:inline-block}.chart__swatch--income{background:var(--color-income)}.chart__swatch--expense{background:var(--color-expense)}.chart__swatch--net{background:var(--color-primary)}.chart__swatch--dashed{height:0;border-top:2px dashed currentColor;border-radius:0;align-self:center}.chart__data{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.chart__data summary{cursor:pointer}.chart{width:100%}.chart__gridline{stroke:var(--color-border);stroke-width:1;stroke-dasharray:2 4;opacity:.7}.chart__tick{fill:var(--color-text-muted);font-size:10px;font-variant-numeric:tabular-nums}.chart__band{fill-opacity:.32;stroke:none}.chart__band--bar{fill-opacity:.85}.chart__bandEdge{fill:none;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.chart__averageLine{stroke:var(--color-text-muted);stroke-width:1.4;stroke-dasharray:2 4}.chart__debtLine{fill:none;stroke-width:1.8;stroke-linejoin:round;stroke-dasharray:5 3}.chart__debtDot{stroke:none}.chart__hover{position:relative}.chart__hover .chart__hit{cursor:default}.chart__hover .chart__hit.is-hovered{fill:color-mix(in srgb,var(--color-primary) 8%,transparent)}.chart__guide{stroke:var(--color-text-muted);stroke-width:1;stroke-dasharray:3 3}.chart__tooltip{position:absolute;top:var(--space-2);z-index:2;pointer-events:none;min-width:11rem;padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md, 0 4px 12px rgb(0 0 0 / 25%));font-size:var(--text-xs)}.chart__tooltipTitle{font-variant-numeric:tabular-nums;color:var(--color-text-muted);margin-bottom:var(--space-1)}.chart__tooltip table{width:100%;border-collapse:collapse}.chart__tooltip th{font-weight:400;text-align:left;padding-right:var(--space-3);white-space:nowrap}.chart__tooltip th .chart__swatch{margin-right:var(--space-2);vertical-align:-1px}.chart__tooltip tfoot th,.chart__tooltip tfoot td{border-top:1px solid var(--color-border);padding-top:var(--space-1);font-weight:600}.chart__srOnly{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.chart__toggles{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.chart__togglesLabel{font-size:var(--text-xs);color:var(--color-text-muted);margin-right:var(--space-1)}.chart__toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-xs);cursor:pointer}.chart__toggle:hover{border-color:var(--color-text-muted)}.chart__toggle[aria-pressed=false]{color:var(--color-text-muted);text-decoration:line-through;background:transparent}.chart__legendToggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.chart__legendToggle:hover{color:var(--color-text);text-decoration:underline}.chart__legendToggle[aria-pressed=false]{text-decoration:line-through}.chart__legendToggle[aria-pressed=false]:hover{text-decoration:line-through underline}.chart__bar--balance{fill:var(--color-primary)}.chart__bar--value{fill:var(--color-income)}.chart__diverging{margin-top:var(--space-2)}.chart__divergingList{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}.chart__divergingRow{display:grid;grid-template-columns:minmax(8ch,22ch) minmax(80px,1fr) minmax(10ch,auto);align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.chart__divergingLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart__divergingTrack{position:relative;display:block;height:14px;border-radius:var(--radius-sm);background:var(--color-surface-alt)}.chart__divergingBar{position:absolute;top:2px;bottom:2px;border-radius:var(--radius-sm)}.chart__divergingBar--expense{background:var(--color-expense)}.chart__divergingBar--income{background:var(--color-income)}.chart__divergingZero{position:absolute;top:-2px;bottom:-2px;left:50%;width:1px;background:var(--color-text-muted)}.chart__divergingValue{text-align:right;white-space:nowrap}.chart__divergingNote{display:block;font-size:var(--text-xs);font-style:normal;color:var(--color-text-muted)}@media(max-width:640px){.chart__divergingRow{grid-template-columns:1fr minmax(9ch,auto);grid-template-areas:"label value" "track track"}.chart__divergingLabel{grid-area:label}.chart__divergingValue{grid-area:value}.chart__divergingTrack{grid-area:track}}.basis{position:relative;display:inline-flex;border:1px solid var(--color-border-strong);border-radius:var(--radius-full);overflow:hidden;background:var(--color-surface)}.basis:before{content:"";position:absolute;top:0;right:50%;bottom:0;left:0;background:var(--color-shared);border-radius:inherit;transition:transform var(--duration-base) var(--ease-out)}.basis:has(.basis__option:last-child[aria-pressed=true]):before{transform:translate(100%)}.basis__option{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:2.125rem;height:2.125rem;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease}.basis__option:hover:not([aria-pressed=true]){background:var(--color-surface-alt);color:var(--color-text)}.basis__option[aria-pressed=true]{color:var(--color-bg)}.basis__option:focus-visible{outline:2px solid var(--color-text);outline-offset:-3px}@media(pointer:coarse){.basis__option{width:2.75rem;height:2.75rem}}.basis__tag{font-size:var(--text-xs);color:var(--color-shared);font-weight:600}@media print{@page{size:A4 portrait;margin:12mm}.nav,.update,.skip,.annual__controls{display:none!important}.shell,.shell__main{display:block;padding:0;margin:0}:root,:root[data-theme=dark]{--color-bg: #ffffff;--color-surface: #ffffff;--color-surface-alt: #ffffff;--color-text: #000000;--color-text-muted: #333333;--color-border: #999999}.card{border:none;box-shadow:none;padding:0 0 6mm;break-inside:avoid}.annual{font-size:10pt}.table__scroll{overflow:visible}}.scope{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.scope__filters{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-left:auto}.scope__filters .field{min-width:14ch}.scope__note{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.card__controls{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end;margin-bottom:var(--space-4)}.picker{position:relative}.picker__head{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;font:inherit;font-size:var(--text-sm);color:var(--color-text);cursor:pointer;text-align:left}.picker__head svg{flex-shrink:0;color:var(--color-text-muted);transform:rotate(90deg)}.picker__summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted)}.picker__summary.is-set{color:var(--color-text);font-weight:600}.picker__body{position:absolute;z-index:20;top:calc(100% + var(--space-1));left:0;min-width:100%;width:max-content;max-width:min(24rem,90vw);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-md)}.picker__search{width:100%;margin-bottom:var(--space-2)}.picker__list{display:grid;gap:var(--space-1);max-height:15rem;overflow-y:auto;margin:0;padding:0;list-style:none}.picker__option{display:flex;gap:var(--space-2);align-items:baseline;font-size:var(--text-sm);cursor:pointer}.picker__hint{display:block;font-size:var(--text-xs);font-style:normal;color:var(--color-text-muted)}.picker__note{margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--color-text-muted)}.picker__clear{margin-top:var(--space-2);padding:0;border:0;background:none;color:var(--color-text-muted);font:inherit;font-size:var(--text-xs);text-decoration:underline;cursor:pointer}.scope__filters .picker__body{left:auto;right:0}@media(max-width:640px){.scope__filters{margin-left:0;width:100%}.scope__filters .field{flex:1 1 12ch}.picker__body{left:0;right:0;width:auto;max-width:none}}.checks{display:grid;gap:var(--space-3);margin:var(--space-3) 0 0;padding:0;list-style:none}.checks__item{border-top:1px solid var(--color-border);padding-top:var(--space-3)}.checks__head{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2)}.checks__numbers{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-2)}.checks__lines{margin:var(--space-2) 0 0;padding:0;list-style:none;display:grid;gap:var(--space-1)}.checks__lines li{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm)}.flow__row--out{padding-left:var(--space-4)}.flow__base{color:var(--color-text-muted);font-size:var(--text-xs)}.explain{display:grid;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface-alt);border-radius:var(--radius-md)}.explain__source{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.field--action{align-content:end}@supports (grid-template-rows: subgrid){@media(min-width:768px){.raise-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.form-row.raise-row>.field--action{grid-row:2;grid-column:3}}}.payroll-block .stepper__value{min-width:19ch}.payroll-block+.payroll-block{margin-top:var(--space-7)}.card__subtitle{margin:var(--space-4) 0 var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.headline__rate{font-size:var(--text-2xl);font-weight:700}.changes{display:grid;gap:var(--space-4)}.changes__step+.changes__step{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.changes__when{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted)}.changes__list{margin:var(--space-2) 0 0;padding-left:var(--space-4);display:grid;gap:var(--space-1)}.checks__rest{margin-top:var(--space-3)}.checks__rest>summary{cursor:pointer;color:var(--color-text-muted);font-size:var(--text-sm)}.doc-facts{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6);margin:0}.doc-facts dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.doc-facts dd{margin:0}.year-notes{display:grid;gap:var(--space-1);margin-top:var(--space-4)}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light;--color-bg: #f7f4ef;--color-surface: #ffffff;--color-surface-raised: #ffffff;--color-surface-alt: #f4eee5;--color-border: #ece4d7;--color-border-strong: #96805f;--color-text: #221c14;--color-text-muted: #6b5f4e;--color-text-on-primary: #ffffff;--color-primary: #8a5a2b;--color-primary-hover: #714823;--color-accent: #a55518;--color-secondary: #5e6b5a;--color-income: #2b7454;--color-expense: #b4482f;--color-savings: #1f6f8b;--color-debt: #6b4a7a;--color-shared: #74644b;--color-warning: #8a600e;--color-danger: #a32b24;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--field-height: 2.75rem;--radius-sm: 4px;--radius-md: 12px;--radius-lg: 20px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgb(60 44 24 / 6%), 0 10px 26px -14px rgb(60 44 24 / 22%);--shadow-md: 0 2px 4px rgb(60 44 24 / 7%), 0 22px 48px -20px rgb(60 44 24 / 30%);--color-overlay: rgb(34 28 20 / 45%);--font-sans: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 1.75rem;--text-3xl: clamp(2.25rem, 6.5vw, 3.125rem);--duration-fast: .12s;--duration-base: .2s;--ease-out: cubic-bezier(.22, 1, .36, 1);--nav-width: 15rem;--nav-width-collapsed: 4.5rem;--nav-height-mobile: 4rem;--content-max: 78rem}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-bg: #14110d;--color-surface: #201c16;--color-surface-raised: #2a251c;--color-surface-alt: #2a241c;--color-border: #373026;--color-border-strong: #7e6e58;--color-text: #f6f0e7;--color-text-muted: #b0a492;--color-text-on-primary: #14110d;--color-primary: #c08a50;--color-primary-hover: #d29d63;--color-accent: #d9a361;--color-secondary: #8fa189;--color-income: #4fa97f;--color-expense: #e0755a;--color-savings: #57a6c2;--color-debt: #a184b0;--color-shared: #b5a183;--color-warning: #e0ac42;--color-danger: #e06a61;--shadow-sm: 0 1px 2px rgb(0 0 0 / 45%), 0 10px 26px -14px rgb(0 0 0 / 60%);--shadow-md: 0 2px 4px rgb(0 0 0 / 50%), 0 22px 48px -20px rgb(0 0 0 / 70%);--color-overlay: rgb(0 0 0 / 65%)}}:root[data-theme=dark]{color-scheme:dark;--color-bg: #14110d;--color-surface: #201c16;--color-surface-raised: #2a251c;--color-surface-alt: #2a241c;--color-border: #373026;--color-border-strong: #7e6e58;--color-text: #f6f0e7;--color-text-muted: #b0a492;--color-text-on-primary: #14110d;--color-primary: #c08a50;--color-primary-hover: #d29d63;--color-accent: #d9a361;--color-secondary: #8fa189;--color-income: #4fa97f;--color-expense: #e0755a;--color-savings: #57a6c2;--color-debt: #a184b0;--color-shared: #b5a183;--color-warning: #e0ac42;--color-danger: #e06a61;--shadow-sm: 0 1px 2px rgb(0 0 0 / 45%), 0 10px 26px -14px rgb(0 0 0 / 60%);--shadow-md: 0 2px 4px rgb(0 0 0 / 50%), 0 22px 48px -20px rgb(0 0 0 / 70%);--color-overlay: rgb(0 0 0 / 65%)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}button,input,select{font:inherit;color:inherit}.tabular{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.skip{position:absolute;left:var(--space-3);top:-4rem;z-index:100;padding:var(--space-2) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);transition:top var(--duration-fast) ease}.skip:focus{top:var(--space-3)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
