:root{color-scheme:dark;--color-surface-100: #0e1011;--color-surface-200: #111518;--color-surface-300: #141a1e;--color-surface-400: #171d22;--color-surface-500: #192026;--color-surface-600: #1b232a;--color-surface-700: #1d252d;--color-surface-800: #212a35;--color-surface-900: #252f3c;--color-surface-1000: #2f3e4d;--color-surface-1100: #748faa;--color-surface-1200: #96a7ab;--color-green-400: #53b591;--color-green-600: #378166;--color-red-100: #e58a93;--color-red-200: #e27984;--color-red-300: #da5865;--color-red-400: #d64755;--color-yellow-500: #ffd275;--color-blue-300: #84bffc;--color-blue-400: #53a3fb;--color-blue-500: #2e90fa;--color-blue-700: #1570cd;--color-purple-500: #9e77ed;--state-pos: var(--color-green-400);--state-neg: #eb6472;--state-pending: #f4e773;--state-transfer: var(--color-blue-500);--state-exchange: var(--color-purple-500);--state-pos-bg: rgba(83, 181, 145, .1);--state-neg-bg: rgba(218, 88, 101, .1);--body-background: var(--color-surface-100);--card-background: var(--color-surface-300);--table-header-background: var(--color-surface-200);--table-hover-background: var(--color-surface-500);--nav-background: var(--color-surface-100);--input-background: var(--color-surface-800);--pill-background: var(--color-surface-900);--pill-tag-background: var(--color-surface-200);--divider: var(--color-surface-800);--divider-light: var(--color-surface-1000);--divider-dark: var(--color-surface-700);--border-nav: var(--color-surface-600);--button-primary: var(--color-surface-1000);--button-primary-hover: var(--color-surface-800);--button-secondary: var(--color-surface-1200);--button-secondary-hover: var(--color-surface-1100);--button-warning: var(--color-red-200);--button-warning-hover: var(--color-red-400);--bg-panel: var(--card-background);--bg-hover: var(--table-hover-background);--border: var(--divider);--shadow-modal: 0 8px 40px rgba(0, 0, 0, .55);--text-body: rgba(255, 255, 255, .9);--text-heading: rgba(255, 255, 255, .95);--text-muted: rgba(255, 255, 255, .6);--text-subtext: rgba(255, 255, 255, .6);--text-offwhite: rgba(255, 255, 255, .7);--text-grey: #76798e;--text-xs: .75em;--text-sm: .875em;--text-base: 1em;--text-lg: 1.125em;--radius: 8px;--radius-sm: 4px;--radius-pill: 16px;--gap-xs: 4px;--gap-sm: 8px;--gap-md: 14px;--gap-lg: 24px;--gap-xl: 44px;--input-height: clamp(30px, calc(30px + .3vw) , 40px);--button-height: 2.5rem;--button-shadow: 0 3px 5px rgba(0, 0, 0, .18);--header-height: clamp(3.375rem, calc(12px + 1.5625vw) , 4.375rem);--transition: .22s all ease-in-out}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0;font-weight:300}html,body{height:100%}body{font-family:Geologica,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:clamp(11px,calc(9px + .5vw),14px);font-variant-numeric:tabular-nums;background-color:var(--body-background);color:var(--text-body);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable both-edges}h1{font-size:clamp(16px,calc(14px + .5vw),24px);font-weight:600}h2{font-size:clamp(14px,calc(12px + .5vw),18px);font-weight:500}h3{font-size:clamp(12px,calc(10px + .5vw),16px);font-weight:400}h4{font-size:clamp(11px,calc(9px + .5vw),14px);font-weight:500}p{font-weight:300}ul,ol{list-style:none}a{color:var(--text-body);text-decoration:none}a:hover{color:var(--text-offwhite)}.subtext,.muted{color:var(--text-subtext);font-weight:200}.unreconciled{font-style:italic}.pos{color:var(--state-pos)}.neg{color:var(--state-neg)}.zero{color:var(--text-subtext)}.pending{color:var(--state-pending)}.transfer{color:var(--state-transfer)}.exchange{color:var(--state-exchange)}input,select,textarea,button{font-family:inherit;font-size:.9rem;font-weight:300;color:var(--text-body)}input:not([type=checkbox]):not([type=radio]),select,textarea{background-color:var(--input-background);border:none;border-radius:var(--radius-sm);padding:0 .8em;height:var(--input-height);outline:none}textarea{height:auto;min-height:calc(var(--input-height) * 2);padding:.5em .8em;line-height:1.4;resize:vertical}input:focus,select:focus,textarea:focus{outline:1px solid var(--color-surface-1100);outline-offset:0}input::placeholder,textarea::placeholder{color:var(--text-grey)}label{display:flex;flex-direction:column;gap:var(--gap-xs);font-weight:500;color:var(--text-body)}fieldset{border:1px solid var(--divider);border-radius:var(--radius);padding:var(--gap-md)}legend{padding:0 var(--gap-sm);color:var(--text-subtext);font-weight:500}button{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:inherit;border:none;padding:0;cursor:pointer;line-height:1}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible{outline:1px solid var(--color-surface-1100);outline-offset:2px;border-radius:var(--radius-sm)}.btn--primary,.btn--secondary,.btn--warning{height:var(--button-height);padding:.25em .75em;border-radius:var(--radius);font-weight:500;transition:var(--transition)}.btn--primary{background-color:var(--button-primary);color:var(--text-body);box-shadow:var(--button-shadow)}.btn--primary:hover:not(:disabled){background-color:var(--button-primary-hover)}.btn--secondary{background-color:transparent;border:1px solid var(--button-secondary);color:var(--button-secondary)}.btn--secondary:hover:not(:disabled){background-color:transparent;border-color:var(--button-secondary-hover);color:var(--button-secondary-hover)}.btn--warning{background-color:transparent;border:1px solid var(--button-warning);color:var(--button-warning)}.btn--warning:hover:not(:disabled){background-color:transparent;border-color:var(--button-warning-hover);color:var(--button-warning-hover)}.btn--text{height:var(--input-height);padding:0 .6em;border-radius:var(--radius-sm);color:var(--text-body);font-weight:400;transition:var(--transition)}.btn--text:hover:not(:disabled){background-color:var(--color-surface-500)}.btn--icon{width:var(--input-height);height:var(--input-height);padding:0;border-radius:var(--radius-sm);color:var(--text-subtext);transition:var(--transition)}.btn--icon:hover:not(:disabled){color:var(--text-body);background-color:var(--color-surface-500)}.btn--inline{height:calc(var(--input-height) - 4px);padding:0 .9em;font-size:.85rem;box-shadow:none;border-radius:var(--radius-sm)}main{width:100%;min-height:100%;padding:var(--gap-md) clamp(1.5rem,calc(8px + 1.5625vw),3rem);display:flex;flex-direction:column;gap:var(--gap-lg)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-md);height:var(--header-height);padding:0 clamp(1.5rem,calc(8px + 1.5625vw),3rem);background-color:var(--nav-background);border-bottom:1px solid var(--border-nav)}.user-info{display:inline-flex;align-items:center;gap:var(--gap-sm);color:var(--text-subtext);font-size:.9rem}.card,fieldset.legs-fieldset{background-color:var(--card-background);border:none;border-radius:var(--radius);padding:var(--gap-md)}.transactions-view{display:flex;flex-direction:column;gap:var(--gap-lg)}.transactions-list{display:flex;flex-direction:column;gap:var(--gap-sm);padding:0}.transaction{background-color:var(--card-background);border:none;border-radius:var(--radius);padding:var(--gap-md)}.tx-header{display:flex;gap:var(--gap-sm);align-items:baseline;font-weight:500;margin-bottom:var(--gap-xs)}.tx-date{color:var(--text-subtext);font-variant-numeric:tabular-nums}.tx-memo{color:var(--text-body)}.legs{display:flex;flex-direction:column;gap:var(--gap-xs);padding-left:var(--gap-md)}.leg{display:flex;gap:var(--gap-md);font-size:.9rem;color:var(--text-subtext)}.leg-amount{font-variant-numeric:tabular-nums;text-align:right;min-width:8rem;color:var(--text-body)}.new-transaction{display:flex;flex-direction:column;gap:var(--gap-md)}.new-transaction .row{display:flex;gap:var(--gap-sm);align-items:flex-end}.new-transaction .memo{flex:1}.legs-fieldset{display:flex;flex-direction:column;gap:var(--gap-md)}.leg-row{display:grid;grid-template-columns:2fr 1fr 2fr auto;gap:var(--gap-sm)}.error{color:var(--state-neg);font-weight:400}.empty{color:var(--text-subtext);font-style:italic}pre{background:#ffffff0a;padding:.75rem 1rem;border-radius:var(--radius-sm);overflow-x:auto;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.85rem;color:var(--text-offwhite)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.app-header__left,.primary-tabs{display:flex;align-items:center;gap:var(--gap-lg);align-self:stretch}.primary-tab__wrapper{position:relative;align-self:stretch;display:flex;align-items:center}.primary-tab,a.primary-tab{display:inline-block;padding:var(--gap-sm) 0;margin:0;font-weight:400;color:var(--text-body);text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none}.primary-tab--menu{outline-offset:2px}.primary-tab--active,a.primary-tab--active,.primary-tab__wrapper--active .primary-tab--menu{font-weight:500}.primary-tab__wrapper--active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:5px;background:var(--color-surface-1100);border-radius:3px 3px 0 0;z-index:1}.accounts-dropdown{position:fixed;top:var(--header-height);left:0;right:0;margin-top:-1px;display:none;flex-wrap:wrap;gap:var(--gap-lg);padding:var(--gap-md) clamp(1.5rem,calc(8px + 1.5625vw),3rem);background:var(--card-background);border-bottom:1px solid var(--divider);border-top:1px solid var(--border-nav);box-shadow:0 .1em .2em #00000073;z-index:50}.primary-tab__wrapper:hover .accounts-dropdown,.primary-tab__wrapper:focus-within .accounts-dropdown{display:flex}.accounts-dropdown__col{display:flex;flex-direction:column;gap:var(--gap-sm);min-width:9rem}.accounts-dropdown__heading{margin:0;font-size:.85rem;font-weight:500;color:var(--text-subtext)}.accounts-dropdown__list{display:flex;flex-direction:column;gap:var(--gap-xs);padding:0;margin:0}.accounts-dropdown__item{display:block;padding:var(--gap-xs) 0;color:var(--text-body);text-decoration:none}.accounts-dropdown__item:hover{color:var(--color-blue-500)}.accounts-dropdown__subcol{margin-top:var(--gap-sm);padding-top:var(--gap-sm);border-top:1px solid var(--divider-dark)}.accounts-dropdown__col--wide .accounts-dropdown__list{display:grid;grid-template-columns:max-content max-content;column-gap:var(--gap-xl)}.top-nav{display:flex;gap:var(--gap-md);padding:var(--gap-sm) var(--gap-lg);border-bottom:1px solid var(--border-nav);background:var(--nav-background)}.top-nav__link{text-decoration:none;color:var(--text-subtext);padding:var(--gap-xs) var(--gap-sm);border-radius:var(--radius-sm);font-weight:500}.top-nav__link:hover{background:var(--color-surface-300);color:var(--text-body)}.top-nav__link--active{color:var(--text-body);background:var(--color-surface-400)}.explore-layout{display:flex;flex-direction:column;gap:var(--gap-lg)}.explore-nav{display:flex;gap:var(--gap-sm);border-bottom:1px solid var(--divider);padding-bottom:var(--gap-sm)}.explore-tab{text-decoration:none;color:var(--text-subtext);padding:var(--gap-xs) var(--gap-md);border-radius:var(--radius-sm)}.explore-tab:hover{color:var(--text-body);background:var(--color-surface-300)}.explore-tab--active{color:var(--text-body);background:var(--color-surface-500)}.month-picker{display:flex;align-items:center;gap:var(--gap-lg)}.shared-month-center{display:flex;align-items:center;gap:var(--gap-sm)}.month-picker__label{font-size:1.05rem;font-weight:500;min-width:10rem;text-align:center;color:var(--text-body)}.month-picker__nav{width:2rem;text-align:center;padding:var(--gap-xs) var(--gap-sm)}.month-picker__mode{margin-left:var(--gap-md)}.monthly-sankey-card{padding-bottom:var(--gap-md)}.monthly-sankey-body{padding:var(--gap-md) var(--gap-md);overflow-x:auto}.monthly-sankey-body .muted{padding:var(--gap-md) 0}.sankey-chart{display:block;max-width:100%}.detail-explore{display:flex;flex-direction:column;gap:var(--gap-md)}.ctm-wrap{position:relative}.ctm-chart{display:block;width:100%;background:var(--color-surface-300)}.ctm-tooltip{position:fixed;background:var(--color-surface-1200);color:var(--color-surface-100);padding:6px 10px;border-radius:var(--radius-sm);font-size:11px;white-space:nowrap;pointer-events:none;z-index:100;box-shadow:0 2px 6px #00000040}.ctm-tooltip-path{font-weight:600;margin-bottom:2px}.ctm-tooltip-amount{opacity:.85}.ctm-tooltip-desc{margin-top:4px;opacity:.7;font-style:italic;max-width:240px;white-space:normal}.ctm-tile-label{box-sizing:border-box;font-size:11px;pointer-events:none;-webkit-user-select:none;user-select:none}.ctm-tile-label--leaf{width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:4px;color:var(--text-body);overflow-wrap:break-word;word-break:break-word}.ctm-tile-label--header{width:100%;height:100%;line-height:18px;padding:0 5px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wall-chart-controls{display:flex;align-items:center;gap:var(--gap-md);padding-bottom:var(--gap-sm)}.wall-chart-body{padding:var(--gap-md);overflow-x:auto}.wall-chart-note{padding:var(--gap-sm) var(--gap-md) 0}.chart-tooltip__label{color:var(--text-subtext);font-size:.85em;min-width:100px}.settings-layout{display:flex;flex-direction:column;gap:var(--gap-md);padding:var(--gap-md) var(--gap-lg)}.settings-nav{display:flex;gap:var(--gap-sm);border-bottom:1px solid var(--divider);padding-bottom:var(--gap-sm)}.settings-tab{text-decoration:none;color:var(--text-subtext);padding:var(--gap-xs) var(--gap-md);border-radius:var(--radius-sm)}.settings-tab:hover{color:var(--text-body);background:var(--color-surface-300)}.settings-tab--active{color:var(--text-body);background:var(--color-surface-500)}.management-page{display:flex;flex-direction:column;gap:var(--gap-md);max-width:880px}.management-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--gap-sm)}.management-controls{display:flex;gap:var(--gap-md);align-items:center}.tab-bar{display:flex;gap:0;border-bottom:1px solid var(--divider);margin-bottom:var(--gap-md)}.tab-bar__tab{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--text-subtext);padding:var(--gap-sm) var(--gap-md);font-size:.95em;font-weight:500;cursor:pointer;margin-bottom:-1px}.tab-bar__tab:hover{color:var(--text-body)}.tab-bar__tab--active{color:var(--text-body);border-bottom-color:var(--color-blue-400);font-weight:600}.filter-box{width:240px}.create-form{display:flex;flex-direction:column;gap:var(--gap-sm);padding:var(--gap-md);background:var(--card-background);border-radius:var(--radius);border:1px solid var(--divider)}.create-form h3{margin:0 0 var(--gap-xs);font-size:1em;color:var(--text-body)}.stmt-attachments{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-xs)}.create-form .row,.management-row .row{display:flex;gap:var(--gap-sm);align-items:center;flex-wrap:wrap}.management-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--gap-xs)}.management-list--tree{gap:0}.management-list--tree li{list-style:none}.management-row{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius);justify-content:space-between;flex-wrap:wrap}.management-row--editing{flex-direction:column;align-items:stretch}.management-row--archived{opacity:.6}.row-main{display:flex;gap:var(--gap-sm);align-items:baseline;flex-wrap:wrap}.row-name{font-weight:600;color:var(--text-body)}.row-kind,.row-meta{color:var(--text-subtext);font-size:.9em}.badge{background:var(--pill-tag-background);color:var(--text-subtext);padding:1px var(--gap-sm);border-radius:var(--radius-pill);font-size:.8em;text-transform:uppercase;letter-spacing:.04em}.labels-tabs{display:flex;gap:var(--gap-xs);border-bottom:1px solid var(--divider)}.labels-tab{background:none;border:none;padding:var(--gap-sm) var(--gap-md);cursor:pointer;color:var(--text-subtext);border-bottom:2px solid transparent}.labels-tab--active{color:var(--text-body);border-bottom-color:var(--color-blue-500)}.labels-section{display:flex;flex-direction:column;gap:var(--gap-md)}.btn--small{height:auto;padding:.15em .5em;font-size:.85em}.goals-section{display:flex;flex-direction:column;gap:var(--gap-xs);padding:var(--gap-sm) 0;border-top:1px solid var(--divider)}.goals-header{display:flex;align-items:center;justify-content:space-between}.goals-label{font-size:.85em;font-weight:600;color:var(--text-subtext);text-transform:uppercase;letter-spacing:.05em}.goals-empty{font-size:.85em;color:var(--text-subtext);margin:0}.goals-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--gap-xs)}.goal-read-row,.goal-edit-row{display:flex;flex-direction:column;gap:var(--gap-xs);padding:var(--gap-sm);background:var(--hover-background);border-radius:var(--radius)}.goal-read-row{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}.goal-fields{display:flex;gap:var(--gap-sm);align-items:baseline;flex-wrap:wrap}.goal-kind{font-weight:600;color:var(--text-body)}.goal-amount{color:var(--text-body);font-variant-numeric:tabular-nums}.goal-date,.goal-reason{font-size:.85em;color:var(--text-subtext)}.goal-actions{display:flex;gap:var(--gap-xs);flex-shrink:0}.goal-form-fields{display:flex;flex-direction:column;gap:var(--gap-xs)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--gap-md)}.modal{position:relative;background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius);box-shadow:0 12px 32px #0006;width:min(720px,100%);max-height:90vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--gap-sm) var(--gap-md);border-bottom:1px solid var(--divider)}.modal-header__end{display:flex;align-items:center;gap:var(--gap-sm)}.modal-scenario-badge{font-size:.75rem;font-weight:500;color:var(--color-yellow-500);background:#ffd2751a;border:1px solid rgba(255,210,117,.25);border-radius:var(--radius-sm);padding:.15rem .5rem;white-space:nowrap}.modal-title{margin:0;font-size:1em;color:var(--text-body)}.modal-close{background:none;border:none;font-size:1.5em;line-height:1;color:var(--text-subtext);cursor:pointer;padding:0 var(--gap-xs)}.modal-close:hover{color:var(--text-body)}.modal-body{padding:var(--gap-md);overflow:auto}.modal-discard-prompt{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);border-top:1px solid var(--divider);background:var(--card-background);border-radius:0 0 var(--radius) var(--radius)}.modal-discard-prompt__text{flex:1;font-size:.875rem;color:var(--text-subtext)}.unsaved-changes-modal__actions{display:flex;flex-wrap:wrap;gap:var(--gap-sm);margin-top:var(--gap-md)}.modal-body .create-form{background:transparent;border:none;padding:0}.create-form__actions{display:flex;align-items:center;justify-content:space-between}.create-form__actions-right{display:flex;gap:var(--gap-sm);margin-left:auto}.row-actions{display:flex;gap:var(--gap-xs);align-items:center}.btn--icon{background:var(--button-primary);color:var(--text-body);border:none;border-radius:var(--radius-sm);width:28px;height:28px;font-size:1.1em;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}.btn--icon:hover{background:var(--button-primary-hover)}.app-header__brand{text-decoration:none;color:var(--text-body);font-size:1.25rem;font-weight:600}.app-header__brand:hover{color:var(--color-blue-500)}.app-header__user{display:inline-flex;align-items:center;gap:var(--gap-md)}.user-role{text-transform:uppercase;font-size:.75em;letter-spacing:.04em;color:var(--text-grey)}.app-header__gear{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);text-decoration:none;color:var(--text-subtext);font-size:1.1rem;line-height:1}.app-header__gear:hover{background:var(--color-surface-300);color:var(--text-body)}.app-header__gear--active{background:var(--color-surface-500);color:var(--text-body)}.general-form{display:flex;flex-direction:column;gap:var(--gap-md);padding:var(--gap-md);background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius);max-width:560px}.general-form__field{display:flex;flex-direction:column;gap:var(--gap-xs)}.general-form__field>span:first-child{font-weight:600;color:var(--text-body)}.general-form .hint{color:var(--text-subtext);font-size:.85em}.general-form .hint--warn{color:var(--state-pending)}.recompute-flash{color:var(--state-pending);font-size:.9em}.general-about{display:flex;flex-direction:column;gap:var(--gap-xs);padding:var(--gap-md);margin-top:var(--gap-md);background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius);max-width:560px}.general-about h3{margin:0;font-size:1em;color:var(--text-body)}.general-about__list{display:grid;grid-template-columns:max-content 1fr;gap:var(--gap-xs) var(--gap-md);margin:0;font-size:.9em}.general-about__list dt{color:var(--text-subtext)}.general-about__list dd{margin:0;color:var(--text-body)}.account-page{display:flex;flex-direction:column;gap:var(--gap-lg)}.account-page__header{display:flex;justify-content:space-between;align-items:center;gap:var(--gap-md)}.account-page__header-actions{display:flex;gap:var(--gap-sm);align-items:center}.account-page__title{margin:0;font-weight:600}.account-page__title .muted{font-weight:300}.account-cards{display:flex;gap:var(--gap-md);flex-wrap:wrap}.account-cards>.balance-card{flex:1 1 0;min-width:16rem}.account-cards>.balance-card--wide{flex:2 1 0;min-width:32rem}.mortgage-card__header{display:flex;justify-content:space-between;align-items:center}.mortgage-card__menu-wrap{position:relative}.mortgage-card__menu-btn{background:none;border:none;color:var(--text-subtext);cursor:pointer;font-size:1.1rem;letter-spacing:.15em;line-height:1;padding:0 .25rem}.mortgage-card__menu-btn:hover{color:var(--text-body)}.mortgage-card__menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--card-background);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px #0000004d;min-width:12rem;z-index:100;overflow:hidden}.mortgage-card__menu-item{display:block;width:100%;background:none;border:none;padding:.5rem .75rem;text-align:left;font-size:.85rem;cursor:pointer;color:var(--text-body)}.mortgage-card__menu-item:hover{background:var(--bg-hover)}.mortgage-overview__bar-area{display:flex;flex-direction:column;gap:5px}.mortgage-overview__balance{align-self:flex-end;font-size:1.4rem;font-weight:500;font-variant-numeric:tabular-nums}.mortgage-overview__payoff{align-self:flex-end;font-size:.85rem;color:var(--text-subtext)}.mortgage-overview__details{display:flex;gap:var(--gap-sm);margin:0;font-size:.85rem;color:var(--text-subtext)}.mortgage-overview__details dt:after{content:":"}.selection-card{flex:0 0 auto;min-width:12rem;border-left:2px solid var(--color-blue-500)}.selection-card__header{display:flex;justify-content:space-between;align-items:center}.selection-card__clear{background:none;border:none;color:var(--text-subtext);cursor:pointer;font-size:1.1rem;line-height:1;padding:0}.selection-card__clear:hover{color:var(--text-body)}.selection-card__controls{display:flex;align-items:center;gap:2px}.selection-card__actions{position:relative;display:flex;align-items:center}.selection-card__menu-btn{background:none;border:none;color:var(--text-subtext);cursor:pointer;font-size:1rem;letter-spacing:.1em;line-height:1;padding:0 .25rem}.selection-card__menu-btn:hover{color:var(--text-body)}.selection-card__menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--card-background);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px #0000004d;min-width:10rem;z-index:100;overflow:hidden}.selection-card__menu-item{display:block;width:100%;background:none;border:none;padding:.5rem .75rem;text-align:left;font-size:.85rem;cursor:pointer;color:var(--text-body)}.selection-card__menu-item:hover{background:var(--bg-hover)}.selection-card__menu-item--danger{color:var(--color-red-400)}.selection-card__menu-item--danger:hover{background:#ef44441a}.bulk-delete-modal__warning{margin:0 0 var(--gap-sm);color:var(--text-subtext);font-size:.85rem}.bulk-delete-modal__list{list-style:none;padding:0;margin:0 0 var(--gap-md);max-height:16rem;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius)}.bulk-delete-modal__item{display:flex;gap:var(--gap-sm);align-items:baseline;padding:.4rem .75rem;border-bottom:1px solid var(--border);font-size:.85rem}.bulk-delete-modal__item:last-child{border-bottom:none}.bulk-delete-modal__date{color:var(--text-subtext);font-variant-numeric:tabular-nums;flex-shrink:0}.bulk-delete-modal__detail{color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.bulk-delete-modal__envs{color:var(--text-subtext)}.bulk-delete-modal__memo{color:var(--text-subtext);font-style:italic}.bulk-delete-modal__footer{display:flex;justify-content:space-between;gap:var(--gap-sm)}.balance-card{background:var(--card-background);border-radius:var(--radius);padding:var(--gap-md);display:flex;flex-direction:column;gap:var(--gap-sm)}.page-card{background:var(--card-background);border-radius:var(--radius);display:flex;flex-direction:column;padding:0 var(--gap-md)}.balance-card--normalized{border-left:2px solid var(--color-blue-500)}.balance-card__detail{font-size:.9em;margin:0}.balance-card__title{margin:0;font-size:.95rem;font-weight:500;color:var(--text-subtext)}.balance-card__rows{display:flex;flex-direction:column;gap:var(--gap-xs);padding:0;margin:0}.balance-card__amount{font-size:1.4rem;font-weight:500;font-variant-numeric:tabular-nums}.account-page__filters{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) 0;border-bottom:1px solid var(--divider)}.leg-list{display:flex;flex-direction:column;gap:var(--gap-md)}.leg-section{background:var(--card-background);border-radius:var(--radius);padding:var(--gap-md);display:flex;flex-direction:column;gap:var(--gap-sm)}.leg-section--highlight{border-left:2px solid var(--state-pending)}.leg-section__header{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--gap-md);border-bottom:1px solid var(--divider);padding-bottom:var(--gap-xs)}.leg-section__title{margin:0;font-size:.95rem;font-weight:500}.leg-section__summary{color:var(--text-subtext);font-size:.9rem;display:inline-flex;align-items:baseline;gap:var(--gap-md)}.leg-section__balances{display:inline-flex;gap:var(--gap-sm);font-variant-numeric:tabular-nums}.leg-section__balance{white-space:nowrap}.leg-section__title-btn{font-size:.95rem;font-weight:500;border-radius:var(--radius-sm);padding:0 .2em}.leg-section__title-btn:hover{background-color:var(--color-surface-500)}.leg-section__add{margin-left:auto}.leg-section__attachment-icon{display:inline-flex;align-items:center;gap:3px;color:var(--text-subtext);line-height:1}.leg-section__attachment-icon:hover{color:var(--text)}.leg-section__attachment-count{font-size:.8em}.account-form__statements{border:1px solid var(--divider);border-radius:var(--radius);padding:var(--gap-sm)}.account-form__statements legend{padding:0 var(--gap-xs);font-size:.85em;color:var(--text-subtext)}.leg-table{display:flex;flex-direction:column;font-variant-numeric:tabular-nums}.leg-table__head,.leg-row{display:grid;grid-template-columns:2rem 7rem 14rem minmax(0,4.5fr) 8rem 8rem;align-items:start;column-gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-sm)}.leg-table--flow .leg-table__head,.leg-table--flow .leg-row{grid-template-columns:2rem 7rem 13rem minmax(0,3fr) minmax(0,1fr) 9rem 9rem}.leg-table--flow .col-container{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.leg-table__head{color:var(--text-subtext);font-weight:500;font-size:.85rem;border-bottom:1px solid var(--divider)}.leg-row{border-bottom:1px solid var(--divider-dark);cursor:pointer}.leg-row:hover{background:var(--table-hover-background)}.leg-table .col-type,.leg-table .col-date,.leg-table .col-account,.leg-table .col-container,.leg-table .col-memo,.leg-table .col-tags,.leg-table .col-amount,.leg-table .col-balance{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.leg-table .col-type{text-align:center;color:var(--text-subtext)}.leg-row__env-badge,.leg-row__env-more{display:inline-flex;align-items:center;background:#2e90fa24;color:var(--color-blue-300);padding:1px var(--gap-sm);border-radius:var(--radius-pill);font-size:.8em;white-space:nowrap;flex-shrink:0}.leg-row__env-badge{text-decoration:none}.leg-row__env-badge:hover,.leg-row__env-more:hover{background:#2e90fa42}.leg-row__env-more{cursor:default}.leg-table .col-tags{display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-xs);white-space:normal;overflow:visible}.leg-table .col-memo{display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-xs);overflow:hidden}.leg-table .col-memo .memo-text{color:var(--text-subtext);font-size:.875em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto}.leg-table .col-memo .memo-attachment-icon{flex-shrink:0;color:var(--text-subtext)}.leg-table .col-memo .memo-attachment-icon:hover{color:var(--text)}.leg-table .col-amount,.leg-table .col-balance{text-align:right}.leg-table .col-balance{color:var(--text-offwhite)}.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}.leg-row--selected{background:#2e90fa14}button.col-type{background:none;border:none;padding:0;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}button.col-type:hover{background:#ffffff12}.drag-select-rect{background:#2e90fa1a;border:1px solid rgba(46,144,250,.45);border-radius:var(--radius-sm)}.leg-row__pending{color:var(--state-pending)}.leg-row__icon{display:inline-block;vertical-align:middle}.leg-row__account-link{color:var(--text-body);text-decoration:none}.leg-row__account-link:hover{color:var(--color-blue-500);text-decoration:underline}.leg-row__tag{flex-shrink:0}.type-pos{color:var(--state-pos)}.type-neg{color:var(--state-neg)}.type-transfer{color:var(--state-transfer)}.type-exchange{color:var(--state-exchange)}.leg-row__date--future{color:#c9941f}button.col-type--scenario{position:relative}button.col-type--scenario:after{content:"";position:absolute;bottom:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--color-yellow-500);pointer-events:none}.tx-detail{display:flex;flex-direction:column;gap:var(--gap-md)}.tx-detail__meta{display:grid;grid-template-columns:max-content 1fr;gap:var(--gap-xs) var(--gap-md);margin:0}.tx-detail__meta dt{color:var(--text-subtext);font-weight:500}.tx-detail__meta dd{margin:0}.tx-detail__legs,.tx-detail__flows{display:flex;flex-direction:column;gap:var(--gap-xs);padding:0}.tx-detail h4{margin:0;color:var(--text-subtext)}.tx-detail__leg{display:flex;align-items:baseline;gap:var(--gap-sm);flex-wrap:wrap}.tx-detail__reconcile{display:inline-flex;align-items:center;gap:var(--gap-xs);font-weight:400;cursor:pointer}.tx-detail__reconcile input[type=checkbox]{width:1rem;height:1rem;margin:0}.tx-detail__simple-grid{display:grid;grid-template-columns:auto 1fr auto 1fr 1fr;align-items:start;gap:var(--gap-xs) var(--gap-md)}.tx-detail__simple-cell{display:flex;flex-direction:column;gap:2px}.tx-detail__simple-cell--right{align-items:flex-end;text-align:right}.tx-detail__simple-amount{font-size:1.4em;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.tx-detail__simple-arrow{color:var(--text-subtext);padding-top:2px}.tx-detail__simple-sub{font-size:.82em;color:var(--text-subtext)}.tx-detail__simple-cell .tx-detail__leg-name{flex:none}.tx-detail__section-title{margin:0 0 var(--gap-xs);padding-bottom:var(--gap-xs);border-bottom:1px solid var(--divider);font-size:.8em;font-weight:600;color:var(--text-subtext);text-transform:uppercase;letter-spacing:.05em}.tx-detail__leg-name{flex:1 1 5em;min-width:5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-detail__leg-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-xs);font-size:.85em;padding-top:var(--gap-xs)}.tx-detail__exchange-meta{display:flex;align-items:center;gap:var(--gap-md);font-size:.9em;color:var(--text-subtext)}.tx-detail__exchange-rates{display:flex;gap:var(--gap-sm);align-items:center;font-variant-numeric:tabular-nums}.tx-detail .leg-amount-col{flex:0 0 auto;width:auto;white-space:nowrap}.tx-detail__actions{display:flex;justify-content:flex-end;gap:var(--gap-sm);border-top:1px solid var(--divider);padding-top:var(--gap-md);margin-top:var(--gap-sm)}.saved-flash{color:var(--state-pos);font-size:.9em}.tx-editor .tx-detail__actions,.transfer-editor .tx-detail__actions,.flow-editor .tx-detail__actions,.basic-purchase .tx-detail__actions,.editor-form .tx-detail__actions{justify-content:space-between}.tx-editor__actions-left,.tx-editor__actions-right{display:flex;align-items:center;gap:var(--gap-sm)}.btn--danger,.btn--danger-text{color:var(--state-neg)}.btn--danger{background-color:var(--state-neg);color:#fff}.btn--danger:hover:not(:disabled){filter:brightness(.95)}.tx-editor .leg-block{display:flex;flex-direction:column;gap:var(--gap-xs);padding:var(--gap-sm) 0;border-bottom:1px solid var(--divider)}.tx-editor .leg-block:last-of-type{border-bottom:none}.tx-editor .leg-memo{flex:1 1 12em}.leg-meta-row{flex-wrap:wrap;align-items:center;gap:var(--gap-xs)}.editor-section{display:flex;flex-direction:column;gap:var(--gap-sm)}.editor-section__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--gap-xs);border-bottom:1px solid var(--divider)}.editor-section__title{font-weight:500;font-size:.9em;color:var(--text-subtext);text-transform:uppercase;letter-spacing:.04em}.btn--icon-sm{width:22px;height:22px;font-size:1em;background:var(--button-primary);color:var(--text-body);border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn--icon-sm:hover{background:var(--button-primary-hover)}.legs-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-md);align-items:start}.legs-column{display:flex;flex-direction:column;gap:var(--gap-xs);min-width:0}.legs-column__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--gap-xs)}.legs-column__title{font-size:.8em;font-weight:600;color:var(--text-subtext);text-transform:uppercase;letter-spacing:.05em}.leg-block--col{padding:var(--gap-xs) 0;border-bottom:1px solid var(--divider-dark)}.leg-block--col:last-of-type{border-bottom:none}.leg-col-row{display:flex;gap:var(--gap-xs);align-items:center;flex-wrap:nowrap}.leg-col-row .searchable-picker{flex:1 1 5em;min-width:5em}.leg-amount-col{flex:0 0 5.5rem;width:5.5rem;font-variant-numeric:tabular-nums;text-align:right}.asset-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:0 var(--gap-xs);height:var(--input-height);min-width:2.8em;background:var(--input-background);border:1px solid var(--divider);border-radius:var(--radius-sm);color:var(--text-subtext);font-size:.8em;font-weight:500;cursor:pointer;white-space:nowrap;letter-spacing:.02em}.asset-btn--set{color:var(--text-body)}.asset-btn:hover{background:var(--color-surface-500)}.asset-btn__select{flex:0 0 auto;height:var(--input-height);background:var(--input-background);border:1px solid var(--divider);border-radius:var(--radius-sm);padding:0 var(--gap-xs);color:var(--text-body);font-size:.85em}@media (max-width: 520px){.legs-columns{grid-template-columns:1fr}}.leg-balance-header{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;font-size:.85em;font-variant-numeric:tabular-nums}.leg-balance--pos{color:var(--state-pos)}.leg-balance--neg{color:var(--state-neg)}.template-picker{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-md);padding:var(--gap-sm) 0}.template-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--gap-xs);padding:var(--gap-md);background:var(--card-background);border:2px solid var(--divider);border-radius:var(--radius);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.template-card:hover{background:var(--color-surface-400);border-color:var(--divider-light)}.template-card__title{font-weight:600;font-size:1em;color:var(--text-body)}.template-card__desc{font-size:.85em;color:var(--text-subtext);line-height:1.4}.editor-form{display:flex;flex-direction:column;gap:var(--gap-md)}.editor-row{display:flex;align-items:flex-end;gap:var(--gap-sm);flex-wrap:wrap}.editor-field{display:flex;flex-direction:column;gap:.2em;flex:0 0 auto}.editor-field--grow{flex:1 1 5em;min-width:5em}.paycheck-deposit__field{min-width:0}.paycheck-deposit__label{overflow:hidden}.paycheck-deposit__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paycheck-deposit__input-row{display:flex;align-items:center;gap:2px}.paycheck-deposit__input-row>input[type=number]{flex:1;min-width:0}.paycheck-deposit__espp{flex:0 0 15%;min-width:0}.paycheck-deposit__recon-date{flex:0 0 auto;width:8.7em}.paycheck-deposit__net-pay{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end;background-color:var(--color-surface-600);border-radius:var(--radius-sm);height:var(--input-height);padding:0 .8em}.editor-label{display:flex;align-items:center;font-size:.75em;font-weight:600;color:var(--text-subtext);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.editor-label>.btn--text.btn--small{margin-left:auto;padding:0;height:auto;font-size:1em;font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-subtext)}.editor-label>.btn--text.btn--small:hover{color:var(--text-body);background:none}.editor-field input[type=number]{text-align:right;font-variant-numeric:tabular-nums;width:100%}.editor-row--summary{justify-content:space-between;align-items:center;gap:var(--gap-md);padding-top:var(--gap-xs);border-top:1px solid var(--divider);font-size:.9em}.editor-summary-right{display:flex;align-items:center;gap:var(--gap-md)}.editor-value{font-variant-numeric:tabular-nums;font-weight:600;min-width:5.5rem;text-align:right}.editor-value--error{color:var(--state-neg)}.info-tip{display:inline-flex;align-items:center;margin-left:.25em;font-size:.9em;color:var(--text-subtext);cursor:default;vertical-align:middle;line-height:1}.info-tip__popup{position:fixed;transform:translate(-50%,-100%);background:var(--color-surface-1200);color:var(--color-surface-100);padding:5px 9px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:400;text-transform:none;letter-spacing:0;white-space:normal;width:max-content;max-width:240px;pointer-events:none;z-index:9999;box-shadow:0 2px 8px #0000004d;line-height:1.4}.basic-purchase{display:flex;flex-direction:column;gap:var(--gap-md)}.basic-purchase__row{display:flex;align-items:center;gap:var(--gap-sm);flex-wrap:wrap}.basic-purchase__date{flex:0 0 auto;width:9.5em}.basic-purchase__arrow{flex-shrink:0;color:var(--text-subtext)}.basic-purchase__row .searchable-picker{flex:1 1 8em;min-width:0}.basic-purchase__amount{flex:0 0 5.5rem;width:5.5rem;font-variant-numeric:tabular-nums;text-align:right}.basic-purchase__memo{flex:1 1 8em;min-width:0}.basic-purchase__split-row{align-items:flex-end}.basic-purchase__split-row .searchable-picker{flex:2 1 7em;min-width:0}.basic-purchase__split-memo{flex:1 1 5em;min-width:0}.basic-purchase__remove-split{flex:0 0 auto;padding:0 .25em;font-size:1.1rem;line-height:1;color:var(--text-subtext);background:none;border:none;cursor:pointer}.basic-purchase__remove-split:hover{color:var(--text-primary)}.basic-purchase__split-balance{font-size:.8rem;white-space:nowrap;color:var(--color-warning, #d97706)}.basic-purchase__split-balance--over{color:var(--color-error, #dc2626)}.basic-purchase__bottom-row{justify-content:flex-start}.basic-purchase__split-rhs{margin-left:auto;display:flex;align-items:center;gap:var(--gap-sm);flex-shrink:0}.basic-purchase__add-split{flex-shrink:0;white-space:nowrap}.transfer-editor__top-actions{margin-left:auto;display:flex;align-items:center;gap:var(--gap-sm);flex-shrink:0}.transfer-editor__accounts{display:flex;align-items:flex-start;gap:var(--gap-sm)}.transfer-editor__account-block{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:var(--gap-sm)}.transfer-editor__reconcile{display:flex;align-items:center;gap:var(--gap-sm)}.transfer-editor__arrow{flex-shrink:0;color:var(--text-subtext);height:var(--input-height);display:flex;align-items:center}.transfer-editor__account-block .searchable-picker{flex:0 0 auto;width:100%;min-width:0}.basic-purchase__tax-total{flex-shrink:0;font-size:.8rem;color:var(--text-subtext);white-space:nowrap}.basic-purchase__tax-total strong{color:var(--text-primary)}.basic-purchase__tax-amount{flex:0 0 4rem;width:4rem;background-color:var(--surface-inset, var(--surface-1));color:var(--text-subtext);cursor:default}.basic-purchase__tax-amount--manual{background-color:var(--surface-0, var(--surface-1));color:var(--text-body);cursor:text}.leg-balance--zero{color:var(--text-subtext)}.flow-editor{display:flex;flex-direction:column;gap:var(--gap-md)}.flow-editor__row{display:flex;align-items:center;gap:var(--gap-sm);flex-wrap:wrap}.flow-editor__date{flex:0 0 auto;width:9.5em}.flow-editor__arrow{flex-shrink:0;color:var(--text-subtext)}.flow-editor__row .searchable-picker{flex:1 1 8em;min-width:0}.flow-editor__amount{flex:0 0 5.5rem;width:5.5rem;font-variant-numeric:tabular-nums;text-align:right}.flow-editor__memo{flex:1 1 8em;min-width:0}.flow-editor__split-row .searchable-picker{flex:2 1 7em;min-width:0}.flow-editor__split-memo{flex:1 1 5em;min-width:0}.flow-editor__remove-split{flex:0 0 auto;padding:0 .25em;font-size:1.1rem;line-height:1;color:var(--text-subtext);background:none;border:none;cursor:pointer}.flow-editor__remove-split:hover{color:var(--text-primary)}.flow-editor__split-balance{font-size:.8rem;white-space:nowrap;color:var(--color-warning, #d97706)}.flow-editor__split-balance--over{color:var(--color-error, #dc2626)}.flow-editor__bottom-row{justify-content:flex-start}.flow-editor__split-rhs{margin-left:auto;display:flex;align-items:center;gap:var(--gap-sm);flex-shrink:0}.flow-editor__add-split{flex-shrink:0;white-space:nowrap}.tag-picker{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-xs)}.tag-picker__label{min-width:7em;font-size:.9em}.tag-picker__selected{display:flex;flex-wrap:wrap;gap:var(--gap-xs);align-items:center}.tag-picker__chip{display:inline-flex;align-items:center;gap:.25em}.tag-picker__chip--archived{opacity:.65}.tag-picker__remove{background:transparent;border:0;padding:0 .2em;font-size:1em;line-height:1;color:inherit;cursor:pointer}.tag-picker__remove:hover{color:var(--state-neg)}.transaction__open{display:block;width:100%;text-align:left;background:transparent;border:0;padding:var(--gap-sm);border-radius:var(--radius-sm);cursor:pointer;color:inherit;transition:var(--transition)}.transaction__open:hover{background-color:var(--color-surface-500)}.searchable-picker{position:relative;display:inline-flex;flex:1 1 12em;min-width:10em}.searchable-picker__input-row{display:flex;align-items:center;gap:var(--gap-xs);flex:1;background:var(--input-background);border-radius:var(--radius-sm);padding-left:var(--gap-xs)}.searchable-picker__leading{color:var(--text-subtext);font-size:.9em;display:inline-flex;align-items:center}.searchable-picker input[type=text]{flex:1;border:0;background:transparent;height:var(--input-height);padding:0 var(--gap-sm);color:var(--text-body);outline:none}.searchable-picker--compact{flex:0 1 14em;min-width:8em}.searchable-picker--compact input[type=text]{font-size:.85em}.searchable-picker__list{max-height:22em;overflow-y:auto;margin:0;padding:var(--gap-xs) 0;list-style:none;background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius-sm);box-shadow:0 .4em 1em #00000073;min-width:24em}.searchable-picker__create{border-top:1px solid var(--divider);color:var(--color-blue-400);font-style:italic}.searchable-picker__option{padding:var(--gap-xs) var(--gap-sm);cursor:pointer;border-left:2px solid transparent}.searchable-picker__option--active{background:var(--table-hover-background);border-left-color:var(--color-blue-500)}.searchable-picker__option--archived{color:var(--text-subtext)}.searchable-picker__archived-hint{display:none}.searchable-picker__path{font-size:.78em;margin-bottom:1px}.searchable-picker__row{display:flex;align-items:baseline;gap:var(--gap-sm)}.searchable-picker__name{font-weight:400;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchable-picker__meta{font-size:.75em;text-transform:lowercase}.searchable-picker__desc{font-size:.82em;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchable-picker__empty{padding:var(--gap-xs) var(--gap-sm);font-style:italic}.searchable-picker__group-header{padding:var(--gap-xs) var(--gap-sm) 2px;font-size:.72em;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtext);-webkit-user-select:none;user-select:none;pointer-events:none}.searchable-picker__group-divider{height:1px;background:var(--divider);margin:var(--gap-xs) 0;padding:0;pointer-events:none;list-style:none}.searchable-picker__pin-btn{background:none;border:none;cursor:pointer;color:var(--text-subtext);padding:0;font-size:.85em;line-height:1;flex-shrink:0;opacity:0;transition:opacity .1s}.searchable-picker__option:hover .searchable-picker__pin-btn,.searchable-picker__option--active .searchable-picker__pin-btn{opacity:1}.searchable-picker__pin-btn--active{color:var(--color-blue-400);opacity:1!important}.searchable-picker__selected-card{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;height:var(--input-height);text-align:left;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--input-background);border:0;border-radius:var(--radius-sm);padding:4px var(--gap-sm) 1px;cursor:pointer;color:var(--text-body);line-height:1;overflow:hidden}.searchable-picker__selected-card .searchable-picker__path{font-size:.6rem;margin-bottom:0;line-height:1.15}.searchable-picker__selected-card .searchable-picker__name{font-size:.7rem;line-height:1.15}.flag-toggle{width:var(--input-height);height:var(--input-height);padding:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-subtext);font-size:1.05em;font-weight:400;transition:var(--transition);border:1px solid transparent;cursor:pointer}.flag-toggle:hover:not(:disabled){color:var(--text-body);background:var(--color-surface-500)}.flag-toggle--on{font-weight:600;border-color:currentColor}.flag-toggle--reconciled.flag-toggle--on{color:var(--state-pos)}.flag-toggle--swap.flag-toggle--on{color:var(--state-exchange)}.flag-toggle--reimb.flag-toggle--on{color:var(--state-transfer)}.flag-toggle--sales-tax--auto,.flag-toggle--sales-tax--manual{color:var(--text-body);font-weight:600;border-color:currentColor}.flag-toggle--sales-tax--auto{border-style:dashed}.flag-toggle--sales-tax--manual{border-style:solid}.flag-toggle--memo.flag-toggle--on,.flag-toggle--tags.flag-toggle--on,.flag-toggle--date.flag-toggle--on,.flag-toggle--options.flag-toggle--on,.flag-toggle--archived.flag-toggle--on,.flag-toggle--external.flag-toggle--on{color:var(--text-body)}.tx-editor__header-row{align-items:center}.header-field{display:inline-flex;align-items:center;gap:var(--gap-xs);height:var(--input-height);padding:0 var(--gap-sm);border-radius:var(--radius-sm);background:transparent;border:1px solid transparent;color:var(--text-subtext);font-size:.9em;cursor:pointer;transition:var(--transition)}.header-field--chip:hover{color:var(--text-body);background:var(--color-surface-500)}.header-field--lit{color:var(--text-body);border-color:var(--divider)}.header-field__icon{font-size:.95em}.header-field__summary{font-variant-numeric:tabular-nums}.header-field__clear{display:inline-flex;align-items:center;justify-content:center;width:1.25em;height:1.25em;border-radius:999px;color:var(--text-subtext);cursor:pointer;transition:var(--transition)}.header-field__clear:hover{color:var(--state-neg);background:var(--color-surface-500)}.header-field--open{background:var(--input-background);border-color:var(--divider)}.header-field--open input,.header-field--open select{border:0;background:transparent;outline:none;height:100%;padding:0;color:var(--text-body)}.tx-editor__header-memo{flex:1;min-width:12em}.leg-detail-row{display:flex;flex-wrap:wrap;gap:var(--gap-xs);align-items:center}.leg-detail-row .searchable-picker{flex:1 1 8em;min-width:8em}.leg-detail-row .leg-memo{flex:1 1 10em;min-width:8em}.leg-detail-row .tag-pills{flex:1 1 auto}.btn--icon.leg-remove-btn{margin-left:auto;color:var(--state-neg)}.btn--icon.leg-remove-btn:hover:not(:disabled){color:var(--state-neg);background-color:var(--state-neg-bg)}.leg-date-override{display:inline-flex;align-items:center;gap:var(--gap-xs);font-size:.9em}.tag-pills{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-xs)}.tag-pill{display:inline-flex;align-items:center;gap:.3em;padding:0 var(--gap-sm);height:var(--input-height);border-radius:var(--radius-sm);background:var(--input-background);color:var(--text-body);font-size:.85em;border:1px solid var(--divider);line-height:1}.tag-pill__icon{display:inline-flex;align-items:center;line-height:0;opacity:.7}.tag-pill__name{font-weight:400}.tag-pill--archived{opacity:.65}.tag-pill__remove{background:transparent;border:0;padding:0 .2em;font-size:.95em;line-height:1;color:inherit;cursor:pointer}.tag-pill__remove:hover{color:var(--state-neg)}.prices-list{list-style:none;padding:0;margin:var(--gap-sm) 0 0;display:flex;flex-direction:column;gap:var(--gap-xs)}.prices-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--gap-md);padding:var(--gap-sm) var(--gap-md);background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius-sm)}.prices-row__date{color:var(--text-offwhite);font-variant-numeric:tabular-nums;font-size:.95rem}.prices-row__price{text-align:right;font-family:ui-monospace,SF Mono,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:1.05rem;color:var(--text-body)}.prices-row__actions{display:flex;gap:var(--gap-xs);align-items:center}.account-page__content-header{display:flex;align-items:center;justify-content:space-between;padding:var(--gap-sm) 0;border-bottom:1px solid var(--divider)}.account-page__content-title{font-weight:600}.page-card .leg-section{background:transparent;border-radius:0;padding-left:0;padding-right:0}.page-card .leg-list{gap:0}.page-card .agg-view{padding:var(--gap-md) 0}.flag-toggle--normalize{margin-left:auto}.flag-toggle--normalize.flag-toggle--on{color:var(--color-blue-500)}.view-toggle{display:inline-flex;align-items:center;background:var(--color-surface-900);padding:4px;border-radius:20px;gap:0}.view-toggle__btn{padding:4px 12px;font-size:.8rem;font-weight:500;background:transparent;border:0;color:var(--text-subtext);cursor:pointer;border-radius:16px;transition:var(--transition);white-space:nowrap}.view-toggle__btn:not(:last-child){border-right:none}.view-toggle__btn:hover:not(.view-toggle__btn--active){color:var(--text-body);background:var(--color-surface-700)}.view-toggle__btn--active{background:var(--color-surface-300);color:#fff;font-weight:500}.agg-view{display:flex;flex-direction:column;gap:var(--gap-md)}.agg-view__options{display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-md)}.agg-view__option{display:flex;align-items:center;gap:var(--gap-xs);font-size:.9em;cursor:pointer;-webkit-user-select:none;user-select:none}.agg-view__note{font-size:.85em;font-style:italic}.agg-table{display:flex;flex-direction:column}.agg-row{display:grid;grid-template-columns:7rem 1fr 1fr 1fr 1fr;gap:0 var(--gap-md);padding:var(--gap-xs) var(--gap-sm);border-bottom:1px solid var(--divider-dark);align-items:start}.agg-row--head{font-size:.8em;font-weight:600;color:var(--text-subtext);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--divider);padding-bottom:var(--gap-xs)}.agg-row:last-child{border-bottom:none}.agg-cell{display:flex;flex-direction:column}.agg-cell--num{align-items:flex-end;font-variant-numeric:tabular-nums;text-align:right}.agg-cell--month-btn{background:none;border:none;padding:0;margin:0;font:inherit;color:var(--text-body);cursor:pointer;text-decoration:underline;text-decoration-color:var(--divider);text-underline-offset:2px}.agg-cell--month-btn:hover{color:var(--text-offwhite);text-decoration-color:var(--text-offwhite)}.agg-amount{display:block;font-size:.9em}.agg-amount.pos{color:var(--state-pos)}.agg-amount.neg{color:var(--state-neg)}.chart-tooltip{background:var(--card-background);border:1px solid var(--divider);border-radius:4px;padding:var(--gap-xs) var(--gap-sm);font-size:.85rem;color:var(--text-body)}.chart-tooltip__date{font-weight:500;margin-bottom:4px}.chart-tooltip__row{display:flex;align-items:center;gap:var(--gap-xs)}.chart-tooltip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.chart-tooltip__value{font-variant-numeric:tabular-nums}.chart-tooltip__value.pos{color:var(--state-pos)}.chart-tooltip__value.neg{color:var(--state-neg)}.leg-row,.agg-row:not(.agg-row--head){font-size:14px;font-weight:500}.browser-search{min-width:16rem}.browser-tx-table,.browser-leg-table,.browser-flow-table{display:flex;flex-direction:column;font-variant-numeric:tabular-nums}.browser-tx-table__head,.browser-tx-row{display:grid;grid-template-columns:7rem minmax(0,3fr) minmax(0,1fr) minmax(0,2fr) minmax(0,2fr);align-items:baseline;column-gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-sm)}.browser-leg-table__head,.browser-leg-row{display:grid;grid-template-columns:7rem 2rem 14rem 12rem minmax(0,3fr) minmax(0,1fr) 9rem;align-items:baseline;column-gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-sm)}.browser-flow-table__head,.browser-flow-row{display:grid;grid-template-columns:7rem 2rem 14rem minmax(0,3fr) minmax(0,1fr) 9rem;align-items:baseline;column-gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-sm)}.browser-tx-table__head,.browser-leg-table__head,.browser-flow-table__head{color:var(--text-subtext);font-weight:500;font-size:.85rem;border-bottom:1px solid var(--divider)}.browser-tx-row,.browser-leg-row,.browser-flow-row{border-bottom:1px solid var(--divider-dark);cursor:pointer;font-size:14px;font-weight:500}.browser-tx-row:hover,.browser-leg-row:hover,.browser-flow-row:hover{background:var(--table-hover-background)}.btx-date,.btx-memo,.btx-tags,.blg-date,.blg-account,.blg-amount,.blg-category,.blg-memo,.blg-tags,.bfl-date,.bfl-envelope,.bfl-amount,.bfl-memo,.bfl-tags{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.btx-accounts,.btx-envelopes{min-width:0;overflow:hidden}.blg-type,.bfl-type{text-align:center;color:var(--text-subtext)}.btx-memo,.blg-memo,.bfl-memo{color:var(--text-subtext)}.blg-amount,.bfl-amount{text-align:right}.detail-link{color:var(--text-body);text-decoration:none}.detail-link:hover{color:var(--color-blue-500);text-decoration:underline}.browser-capped-notice{margin:0;padding:var(--gap-xs) var(--gap-md);font-size:.85em;color:var(--state-pending);border-bottom:1px solid var(--divider)}.tx-editor__meta-strip{display:flex;flex-direction:column;gap:var(--gap-xs);padding:var(--gap-xs) var(--gap-md);border-bottom:1px solid var(--divider)}.tx-editor__meta-controls{display:flex;align-items:center;gap:var(--gap-xs)}.tx-editor__meta-pills{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-xs)}.tx-editor__meta-uploading{font-size:.85em}.basic-attach-btn{display:inline-flex;align-items:stretch;height:var(--input-height);border:1px solid var(--text-body);border-radius:var(--radius-sm);overflow:hidden;color:var(--text-body);flex-shrink:0}.basic-attach-btn__view{display:inline-flex;align-items:center;justify-content:center;width:var(--input-height);padding:0;background:transparent;border:none;border-right:1px solid var(--text-body);color:inherit;cursor:pointer;transition:var(--transition)}.basic-attach-btn__view:hover{background:var(--color-surface-500)}.basic-attach-btn__remove{display:inline-flex;align-items:center;justify-content:center;width:var(--input-height);padding:0;background:transparent;border:none;color:var(--text-subtext);cursor:pointer;font-size:1.1em;line-height:1;transition:var(--transition)}.basic-attach-btn__remove:hover{color:var(--text-body);background:var(--color-surface-500)}.flag-toggle--attach{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.flag-toggle--attach[aria-disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}.attachment-pill{display:inline-flex;align-items:center;gap:.3em;padding:0 var(--gap-sm);height:var(--input-height);border-radius:var(--radius-sm);background:var(--input-background);color:var(--text-body);font-size:.85em;border:1px solid var(--divider);line-height:1;max-width:22em}.attachment-pill__icon{display:inline-flex;align-items:center;line-height:0;opacity:.7;flex-shrink:0}.attachment-pill__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-body);text-decoration:none;font-size:inherit}.attachment-pill__name--btn{background:none;border:none;padding:0;font:inherit;color:var(--color-blue-400);cursor:pointer;text-decoration:underline;text-decoration-color:transparent;transition:var(--transition);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.attachment-pill__name--btn:hover{text-decoration-color:currentcolor}.attachment-pill__size{flex-shrink:0;color:var(--text-muted);font-size:.85em;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btx-attachment-indicator{margin-left:var(--gap-xs);font-size:.85em;opacity:.7;vertical-align:middle}.attachment-viewer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000bf;display:flex;align-items:stretch;justify-content:center}.attachment-viewer{display:flex;flex-direction:column;width:min(1000px,100vw);background:var(--color-surface-300);box-shadow:var(--shadow-modal)}.attachment-viewer__header{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);background:var(--color-surface-500);border-bottom:1px solid var(--color-surface-800);flex-shrink:0}.attachment-viewer__name{flex:1;font-size:var(--text-sm);color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.attachment-viewer__new-tab{font-size:var(--text-xs);color:var(--color-blue-400);text-decoration:none;white-space:nowrap;padding:2px 6px;border:1px solid var(--color-blue-700);border-radius:var(--radius-sm);transition:var(--transition)}.attachment-viewer__new-tab:hover{color:var(--color-blue-300);border-color:var(--color-blue-500)}.attachment-viewer__close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:2px 4px;transition:var(--transition)}.attachment-viewer__close:hover{color:var(--text-body)}.attachment-viewer__body{flex:1;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:0}.attachment-viewer__iframe{width:100%;height:100%;border:none;display:block}.attachment-viewer__img{max-width:100%;max-height:100%;object-fit:contain;display:block}.attachment-viewer__no-preview{display:flex;flex-direction:column;align-items:center;gap:var(--gap-sm);padding:var(--gap-xl);color:var(--text-muted);font-size:var(--text-sm)}.overview-page{padding:0;max-width:1200px}.overview-page__toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--gap-lg)}.overview-page__loading{color:var(--text-muted);font-size:var(--text-sm)}.dashboard-empty{display:flex;flex-direction:column;align-items:center;gap:var(--gap-md);padding:var(--gap-xl) 0;color:var(--text-muted)}.dashboard-empty__message{margin:0;font-size:var(--text-base)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.widget-shell{border-radius:var(--radius);background:var(--bg-panel);display:flex;flex-direction:column;padding:22px 18px;gap:16px}.widget-shell__header{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-sm);padding-bottom:16px;border-bottom:1px solid var(--border)}.widget-shell__title{font-size:1.286em;font-weight:600;color:var(--text-heading);white-space:nowrap;margin:0}.widget-shell__title-link{color:inherit;text-decoration:none}.widget-shell__title-link:hover{text-decoration:underline}.widget-shell__actions{display:flex;gap:2px;flex-shrink:0;margin-left:var(--gap-sm)}.widget-shell__action{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.9rem;line-height:1;padding:2px 5px;border-radius:var(--radius-sm);transition:var(--transition)}.widget-shell__action:hover:not(:disabled){color:var(--text-body);background:var(--bg-hover)}.widget-shell__action:disabled{opacity:.35;cursor:default}.widget-shell__action--danger:hover:not(:disabled){color:var(--color-red-400);background:var(--bg-hover)}.widget-shell__body{flex:1}.widget-unsupported{color:var(--text-muted);font-size:var(--text-sm);font-style:italic}.fh-widget{display:flex;flex-direction:column;gap:var(--gap-md)}.fh-widget--loading,.fh-widget--error{color:var(--text-muted);font-size:var(--text-sm)}.fh-widget__stat{display:flex;justify-content:space-between;align-items:baseline;gap:var(--gap-sm)}.fh-widget__label{font-size:1em;font-weight:700;color:var(--text-heading);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-widget__value{font-size:.95em;font-weight:500;flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.fh-widget__no-asset{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.fh-widget__stat-block{display:flex;flex-direction:column;gap:6px}.fh-sparkline{display:block;width:100%;height:40px}.fh-sparkline__zero{stroke:#ffffff1f;stroke-width:1}.fh-bar{display:flex;flex-direction:column;gap:6px}.fh-bar__header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--gap-sm)}.fh-bar__title{display:flex;align-items:center;gap:4px;min-width:0}.fh-bar__label{font-size:1em;font-weight:700;color:var(--text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-bar__label--link{text-decoration:none}.fh-bar__label--link:hover{text-decoration:underline}.fh-infotip{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.fh-infotip__icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--text-muted);color:var(--text-muted);font-size:9px;font-weight:700;font-style:italic;cursor:default;line-height:1;flex-shrink:0}.fh-infotip__bubble{position:absolute;bottom:calc(100% + 8px);left:0;transform:none;width:280px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;font-size:var(--text-xs);font-weight:400;color:var(--text-primary);white-space:normal;z-index:100;pointer-events:none;opacity:0;transition:opacity .15s ease;box-shadow:0 4px 12px #0000004d}.fh-infotip:hover .fh-infotip__bubble,.fh-infotip:focus-within .fh-infotip__bubble{opacity:1}.fh-bar__amounts{font-size:.95em;font-weight:500;flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.fh-bar__sep{color:var(--text-muted)}.fh-bar__total{color:var(--color-green-400);opacity:.65}.fh-bar__track{height:10px;background:#ffffff14;border-radius:5px;overflow:hidden}.fh-bar__track--overage{height:6px;margin-top:2px}.fh-bar__fill{height:100%;border-radius:5px;transition:width .4s ease}.fh-bar__empty{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.widget-type-picker{display:flex;flex-direction:column;gap:var(--gap-sm);margin-bottom:var(--gap-md)}.widget-type-option{display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:var(--gap-sm) var(--gap-md);cursor:pointer;transition:var(--transition)}.widget-type-option:hover{border-color:var(--color-blue-500);background:var(--bg-hover)}.widget-type-option--selected{border-color:var(--color-blue-500);background:color-mix(in srgb,var(--color-blue-500) 8%,var(--bg-panel))}.widget-type-option__label{font-weight:600;color:var(--text-heading);font-size:var(--text-sm)}.widget-type-option__desc{color:var(--text-muted);font-size:var(--text-xs)}.widget-config-form{display:flex;flex-direction:column;gap:var(--gap-sm);margin-bottom:var(--gap-md)}.widget-config-form__label{margin:0;font-size:var(--text-sm);font-weight:600;color:var(--text-heading)}.widget-config-form__hint{margin:0;font-size:var(--text-xs);color:var(--text-muted)}.env-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.env-chip{display:inline-flex;align-items:center;gap:4px;background:color-mix(in srgb,var(--color-blue-500) 12%,var(--bg-panel));border:1px solid color-mix(in srgb,var(--color-blue-500) 40%,transparent);border-radius:var(--radius-sm);padding:2px 6px 2px 8px;font-size:var(--text-xs)}.env-chip__name{color:var(--text-body);white-space:nowrap}.env-chip__remove{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.65rem;line-height:1;padding:1px 2px;border-radius:2px;transition:var(--transition)}.env-chip__remove:hover{color:var(--color-red-400)}.env-chips__add{background:none;border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:var(--text-xs);padding:2px 8px;transition:var(--transition)}.env-chips__add:hover:not(:disabled){border-color:var(--color-blue-500);color:var(--color-blue-500)}.env-chips__add:disabled{opacity:.4;cursor:default}.env-chips__picker{flex:1;min-width:180px;position:relative}.widget-config-checkbox{display:flex;align-items:center;gap:var(--gap-sm);font-size:var(--text-sm);color:var(--text-body);cursor:pointer}.widget-config-chip{display:inline-flex;align-items:center;gap:4px;background:color-mix(in srgb,var(--color-green-400) 12%,var(--bg-panel));border:1px solid color-mix(in srgb,var(--color-green-400) 40%,transparent);border-radius:var(--radius-sm);padding:2px 6px 2px 8px;font-size:var(--text-xs);color:var(--text-body)}.widget-config-chip__remove{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.65rem;line-height:1;padding:1px 2px;border-radius:2px;transition:var(--transition)}.widget-config-chip__remove:hover{color:var(--color-red-400)}.widget-config-select{font-size:var(--text-sm);color:var(--text-body);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 6px;cursor:pointer}.widget-config-select:focus{outline:2px solid var(--color-blue-500);outline-offset:1px}.sg-widget{display:flex;flex-direction:column;gap:var(--gap-lg)}.sg-widget--loading,.sg-widget--error,.sg-widget--empty{color:var(--text-muted);font-size:var(--text-sm)}.sg-envelope{display:flex;flex-direction:column;gap:12px}.sg-goal{display:flex;flex-direction:column;gap:6px}.sg-goal__header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--gap-sm)}.sg-envelope__name{font-size:1em;font-weight:700;color:var(--text-heading);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sg-goal__kind-suffix{font-weight:400;color:var(--text-muted)}.sg-goal__kind-label{font-size:.88em;font-weight:500}.sg-goal__amounts{font-size:.95em;font-weight:500;flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.sg-amount--pos{color:var(--color-green-400)}.sg-amount--neg{color:var(--color-red-300)}.sg-goal__sep{color:var(--text-muted)}.sg-goal__target{color:var(--color-green-400);opacity:.65}.sg-goal__bar-track{height:10px;background:#ffffff14;border-radius:5px;overflow:hidden}.sg-goal__bar-fill{height:100%;border-radius:5px;transition:width .4s ease}.sg-goal__reason{margin:0;font-size:var(--text-sm);color:var(--text-muted)}.sg-goal__bar-track--overage{height:6px;margin-top:2px}.sg-envelope__name--future{color:var(--text-muted);font-weight:400}.ua-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--gap-sm);border-top:1px solid var(--border)}.ua-total__label{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.ua-total__amount{font-size:.95em;font-variant-numeric:tabular-nums;font-weight:600;color:var(--color-green-400)}.ua-amounts__detail,.sg-goal:hover .ua-amounts__primary{display:none}.sg-goal:hover .ua-amounts__detail{display:inline}.se-status-widget{overflow-x:auto}.se-status-widget--loading,.se-status-widget--error,.se-status-widget--empty{color:var(--text-muted);font-size:var(--text-sm)}.se-status-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.se-status-th{text-align:left;padding:var(--gap-xs) var(--gap-sm);font-weight:600;color:var(--text-subtext);border-bottom:1px solid var(--divider);white-space:nowrap}.se-status-th--num{text-align:right}.se-status-row+.se-status-row td{border-top:1px solid var(--divider)}.se-status-td{padding:var(--gap-xs) var(--gap-sm);white-space:nowrap}.se-status-td--num{text-align:right;font-variant-numeric:tabular-nums}.se-status-month-link{color:var(--text-body);text-decoration:none}.se-status-month-link:hover{color:var(--color-blue-400);text-decoration:underline}.se-status--paid{color:var(--state-pos);font-weight:600}.se-status--ready{color:var(--color-blue-400);font-weight:600}.se-status--pending{color:var(--state-pending);font-weight:600}.landing-page{display:flex;flex-direction:column;gap:var(--gap-lg);max-width:1000px}.landing-page__title{margin:0;font-size:1.25rem;font-weight:600}.landing-page .page-card{padding-top:var(--gap-md);padding-bottom:var(--gap-md);gap:var(--gap-lg)}.landing-group{display:flex;flex-direction:column;gap:0}.landing-group--split .landing-table{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--gap-lg)}.landing-group--split .landing-table__header{grid-column:1 / -1}.landing-group--split .landing-row{border-bottom:none;padding:.3rem .5rem}.landing-subgroup+.landing-subgroup{margin-top:var(--gap-md)}.landing-group__heading{margin:0 0 var(--gap-xs);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding-bottom:var(--gap-xs);border-bottom:1px solid var(--divider)}.landing-table{display:flex;flex-direction:column}.landing-table__header,.landing-row{display:grid;grid-template-columns:1fr 9.5rem 9.5rem;align-items:baseline;gap:var(--gap-sm)}.landing-table__header{padding:.2rem .5rem .3rem;border-bottom:1px solid var(--divider)}.landing-table__header:has(>:nth-child(2):last-child),.landing-row:has(>:nth-child(2):last-child){grid-template-columns:1fr 9.5rem}.landing-col__label{font-size:var(--text-xs);color:var(--text-muted);text-align:right}.landing-row{padding:.45rem .5rem;border-bottom:1px solid var(--divider-dark);transition:background .1s}.landing-row:last-child{border-bottom:none}.landing-row:hover{background:var(--bg-hover);border-radius:var(--radius-sm)}.landing-row__name{color:var(--text-body);text-decoration:none;font-size:var(--text-sm)}.landing-row__name:hover{color:var(--color-blue-400)}.landing-row__balance{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.landing-row__amount{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.allocation-editor{display:flex;flex-direction:column;gap:var(--gap-md);max-width:48rem}.allocation-editor__header{display:flex;flex-direction:row;align-items:flex-start;gap:var(--gap-lg)}.allocation-editor__header-main{display:flex;flex-direction:column;gap:var(--gap-xs);flex:1;min-width:0}.allocation-donut{flex-shrink:0}.allocation-editor__summary{display:flex;gap:var(--gap-lg);font-size:.95rem}.allocation-table{display:flex;flex-direction:column;font-variant-numeric:tabular-nums}.allocation-table__head,.allocation-row{display:grid;grid-template-columns:minmax(0,1fr) 9rem 2rem 9rem 1.5rem 1.5rem 9rem;align-items:start;column-gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-sm)}.allocation-table__head{align-items:end;color:var(--text-subtext);font-weight:500;font-size:.85rem;border-bottom:1px solid var(--divider)}.allocation-row{border-bottom:1px solid var(--divider-dark)}.allocation-col__name{display:flex;flex-direction:column;gap:2px;min-width:0}.allocation-col__name-line{display:flex;align-items:baseline;gap:var(--gap-sm);min-width:0}.allocation-col__note{color:var(--text-subtext);font-size:.85rem;white-space:pre-wrap}.allocation-col__prev,.allocation-col__cur{text-align:right}.allocation-col__arrow{text-align:center}.allocation-input{width:100%;text-align:right}.allocation-editor__footer{display:flex;flex-direction:column;gap:var(--gap-sm)}.allocation-editor__totals{display:flex;gap:var(--gap-lg);font-size:.95rem;padding:var(--gap-xs) var(--gap-sm);border-top:1px solid var(--divider)}.allocation-col__next{text-align:right}.allocation-col__memo{text-align:center;padding:0}.allocation-period-link{color:var(--text-subtext);text-decoration:none}.allocation-period-link:hover{color:var(--text-primary);text-decoration:underline}.allocation-group-header{padding:calc(var(--gap-xs) * 1.5) var(--gap-sm) calc(var(--gap-xs) / 2);font-size:.78rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtext);border-bottom:1px solid var(--divider);margin-top:var(--gap-xs)}.allocation-group-header:first-child{margin-top:0}.allocation-col__balance{font-size:.78rem}.allocation-memo-btn{font-size:.85rem;opacity:.3;color:var(--text-primary);padding:0;line-height:1}.allocation-memo-btn:hover{opacity:.7}.allocation-memo-btn--set{opacity:1;color:var(--color-blue-400)}.allocation-balance-btn{font-size:.85rem;opacity:.2;color:var(--text-primary);padding:0;line-height:1}.allocation-balance-btn:hover:not(:disabled){opacity:.7}.allocation-balance-btn--has-delta{opacity:.5;color:var(--state-pos)}.allocation-balance-btn--has-delta:hover:not(:disabled){opacity:.9}.allocation-memo-edit-row{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-sm);background:var(--color-surface-700);border-bottom:1px solid var(--divider-dark)}.allocation-memo-input{flex:1;font-size:.9rem;padding:.2rem .4rem}.allocation-add-envelope{display:flex;padding:var(--gap-xs) var(--gap-sm);border-top:1px solid var(--divider-dark)}.allocation-add-envelope .searchable-picker{max-width:50%}.env-hover{background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius);box-shadow:var(--shadow-modal);padding:var(--gap-md);display:flex;flex-direction:column;gap:var(--gap-md);max-height:420px;overflow:auto}.env-hover__section{display:flex;flex-direction:column;gap:var(--gap-xs)}.env-hover__section-title{margin:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.alloc-matrix{display:grid;overflow-x:auto;font-variant-numeric:tabular-nums}.alloc-matrix__head,.alloc-matrix__row{display:contents}.alloc-matrix__head>span{padding:.4rem .5rem;font-size:.85rem;font-weight:500;color:var(--text-subtext);border-bottom:1px solid var(--divider);white-space:nowrap}.alloc-matrix__head>span:not(:first-child){text-align:right}.alloc-matrix__summary-row{display:contents}.alloc-matrix__summary-row>span{padding:.3rem .5rem;border-bottom:1px solid var(--divider-dark);font-size:.9rem}.alloc-matrix__summary-label{font-weight:600;color:var(--text-subtext);font-size:.85rem}.alloc-matrix__summary-row--last>span{border-bottom:2px solid var(--divider)}.alloc-matrix__row>span{padding:.3rem .5rem;border-bottom:1px solid var(--divider-dark)}.alloc-matrix__name{font-size:.9rem}.alloc-matrix__cell{text-align:right;font-size:.9rem}.alloc-matrix__total{text-align:right;font-size:.9rem;font-weight:600}.shared-expenses-view{gap:var(--gap-md)}.shared-month-btn{font-size:1.05rem;font-weight:500;text-align:center}.shared-table-wrap{overflow-x:auto;padding-bottom:var(--gap-sm)}.shared-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:.9rem}.shared-table thead tr{border-bottom:1px solid var(--divider)}.shared-table thead th{color:var(--text-subtext);font-weight:500;font-size:.85rem;text-align:right;padding:var(--gap-sm) var(--gap-sm);white-space:nowrap}.shared-th-cat{text-align:left!important}.shared-th-adj{text-align:right}.shared-table tbody tr{border-bottom:1px solid var(--divider-dark)}.shared-table tbody tr:hover{background:var(--table-hover-background)}.shared-num{text-align:right;padding:var(--gap-xs) var(--gap-sm);white-space:nowrap}.shared-category-row td:first-child,.shared-total-row td:first-child{text-align:left;padding:var(--gap-xs) var(--gap-sm)}.shared-expand-btn{background:transparent;border:none;cursor:pointer;color:var(--text-body);font-size:.9rem;justify-content:flex-start;padding:0;width:100%}.shared-expand-btn:hover{color:var(--text-offwhite)}.shared-txn-row td{padding:var(--gap-xs) var(--gap-sm);background:var(--color-surface-200)}.shared-txn-date-memo{display:flex;gap:var(--gap-sm);align-items:baseline;padding-left:var(--gap-lg)}.shared-txn-date{color:var(--text-subtext);font-size:.8rem;white-space:nowrap}.shared-txn-memo{color:var(--text-body);font-size:.85rem}.shared-txn-flow-memo{color:var(--text-subtext);font-size:.85rem;font-style:italic}.shared-txn-merchant{color:var(--text-subtext);font-size:.8rem}.shared-txn-category{color:var(--text-subtext);font-size:.75rem;font-style:italic}.shared-total-row td{padding:var(--gap-sm) var(--gap-sm);font-weight:600;border-top:2px solid var(--divider)}.shared-adj-cell{text-align:right;padding:var(--gap-xs) var(--gap-sm)}.shared-adj-value,.shared-adj-empty{background:transparent;border:none;cursor:pointer;font-variant-numeric:tabular-nums;font-size:inherit;padding:0;transition:var(--transition)}.shared-adj-value:hover{opacity:.8}.shared-adj-empty{color:var(--text-grey)}.shared-adj-editor{display:flex;gap:var(--gap-xs);align-items:center;flex-wrap:wrap;justify-content:flex-end}.shared-adj-input{width:5.5rem}.shared-adj-memo{width:8rem}.shared-num--pending{color:var(--state-pending)}.shared-month-modal{display:flex;flex-direction:column;gap:var(--gap-md);padding:var(--gap-sm) 0}.shared-reconciled{display:flex;align-items:center;gap:var(--gap-sm);cursor:pointer}.shared-people{display:flex;align-items:center;gap:var(--gap-sm)}.shared-people-input{width:4rem}.shared-empty,.shared-loading{color:var(--text-subtext);padding:var(--gap-md) 0}.shared-unconfigured{padding:var(--gap-md) 0}.shared-status-badge{display:inline-block;font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px solid currentColor}.shared-status-badge--paid{color:var(--state-pos)}.shared-status-badge--ready{color:var(--color-blue-400)}.shared-status-badge--pending{color:var(--state-pending)}.checkbox-label{display:flex;align-items:center;gap:var(--gap-sm);font-size:.95em;cursor:pointer;-webkit-user-select:none;user-select:none}.taxes-section{background:var(--card-background);border:1px solid var(--divider);border-radius:var(--radius);overflow:hidden}.taxes-section>summary{list-style:none;display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);font-weight:600;font-size:.95em;color:var(--text-heading);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--color-surface-400);border-bottom:1px solid var(--divider)}.taxes-section>summary::-webkit-details-marker{display:none}.taxes-section>summary:before{content:"▶";font-size:.7em;color:var(--text-muted);transition:transform .1s ease;flex-shrink:0}.taxes-section[open]>summary:before{transform:rotate(90deg)}.taxes-table{width:100%;border-collapse:collapse;font-size:.9em;table-layout:fixed}.taxes-table tbody th{width:56%;text-align:left;color:var(--text-subtext);font-weight:400;padding:5px var(--gap-md);vertical-align:baseline}.taxes-table td{text-align:right;font-variant-numeric:tabular-nums;padding:5px var(--gap-md);vertical-align:baseline;white-space:nowrap}.taxes-table thead th{padding:4px var(--gap-md) 5px;text-align:right;font-size:.78em;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--divider);background:var(--color-surface-300)}.taxes-table thead th:first-child{text-align:left}.taxes-td--ytd{color:var(--text-subtext)}.taxes-td--proj{color:var(--text-body);font-weight:500}.taxes-td--span{color:var(--text-body);font-variant-numeric:tabular-nums}.taxes-table tbody tr:nth-child(2n){background:var(--color-surface-400)}.taxes-table tr.taxes-row--emphasized th,.taxes-table tr.taxes-row--emphasized td{font-weight:600;color:var(--text-heading);background:var(--color-surface-500);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider)}.taxes-table tr.taxes-row--indent1 th{padding-left:calc(var(--gap-md) + 1.25rem);font-size:.9em;color:var(--text-muted)}.taxes-table tr.taxes-row--indent2 th{padding-left:calc(var(--gap-md) + 2.5rem);font-size:.85em;color:var(--text-muted)}.taxes-cap-meta{color:var(--text-muted);font-size:.85em;font-weight:400;white-space:normal}.taxes-person-block{border-top:1px solid var(--divider)}.taxes-person-block:first-of-type{border-top:none}.taxes-person-header{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-xs) var(--gap-md);font-size:.85em;font-weight:600;color:var(--text-subtext);background:var(--color-surface-300);text-transform:uppercase;letter-spacing:.04em}.taxes-catchup-badge{font-weight:400;text-transform:none;letter-spacing:0}.taxes-flags-list{padding:var(--gap-sm) var(--gap-md)}.taxes-flag{margin:0;padding:var(--gap-xs) 0;font-size:.9em;line-height:1.4}.taxes-flag--warn{color:var(--state-pending)}.taxes-flag--info{color:var(--text-subtext)}
