:root{--brand-deep-green:#477f25;--brand-bright-green:#81c63d;--brand-near-black:#17211b;--brand-off-white:#f5f6f1;--ink:#17211b;--muted:#657168;--line:#d8ded9;--line-strong:#aeb8b0;--paper:#f5f6f1;--surface:#ffffff;--surface-soft:#edf0e8;--green:#477f25;--green-hover:#37681b;--green-bright:#81c63d;--mint:#dcefc9;--amber:#c0a928;--red:#b94f2a;--red-inverse:#ffad8c;--header:rgba(245,246,241,.9);--shadow:0 16px 42px rgba(23,33,27,.08);--container-radius:12px;color-scheme:light}:root[data-theme=dark]{--ink:#f5f6f1;--muted:#aeb9b1;--line:#3a463e;--line-strong:#667269;--paper:#17211b;--surface:#1e2a22;--surface-soft:#29362d;--green:#81c63d;--green-hover:#9bd661;--green-bright:#81c63d;--mint:#304823;--amber:#d2bd48;--red:#ed8a63;--red-inverse:#a84220;--header:rgba(23,33,27,.9);--shadow:0 18px 50px rgba(0,0,0,.22);color-scheme:dark}*{box-sizing:border-box}html{color:var(--ink);font-family:Noto Sans Variable,Noto Sans,ui-sans-serif,system-ui,sans-serif;font-optical-sizing:auto;font-feature-settings:"kern";font-kerning:normal;text-rendering:optimizeLegibility;scroll-behavior:smooth}body,html{background:var(--paper)}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}a,button,input,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 55%,transparent);outline-offset:3px}.site-header{min-height:76px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:clamp(2rem,5vw,5rem);gap:clamp(2rem,5vw,5rem);padding:0 max(4vw,calc((100vw - 1180px) / 2));border-bottom:1px solid var(--line);background:var(--header);position:-webkit-sticky;position:sticky;top:0;z-index:10;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.header-primary{gap:1rem}.brand,.header-primary{display:flex;align-items:center}.brand{white-space:nowrap}.brand-logo{display:inline-flex;align-items:center;gap:.72rem;min-width:0}.brand-logo-symbol{width:38px;height:auto;flex:0 0 38px;overflow:visible}.brand-logo-primary{fill:var(--brand-deep-green)}.brand-logo-accent{fill:var(--brand-bright-green)}.brand-logo-wordmark{color:var(--brand-near-black);font-size:1.05rem;font-weight:800;letter-spacing:-.045em}:root[data-theme=dark] .brand-logo-accent,:root[data-theme=dark] .brand-logo-primary{fill:var(--brand-bright-green)}:root[data-theme=dark] .brand-logo-wordmark{color:var(--brand-off-white)}.login-brand{margin-bottom:2.25rem}.login-brand .brand-logo-symbol{width:62px;flex-basis:62px}.login-brand .brand-logo-wordmark{font-size:1.8rem}.site-header nav{min-width:0;display:flex;justify-content:flex-end;gap:clamp(.75rem,1.8vw,1.65rem);overflow-x:auto;scrollbar-width:none;font-size:.86rem;color:var(--muted)}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a{padding:1.8rem 0;white-space:nowrap;transition:color .18s ease}.site-header nav a:hover{color:var(--ink)}.theme-toggle{order:2;display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:36px;padding:.42rem .68rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:.75rem;font-weight:650;transition:border-color .18s ease,color .18s ease,background .18s ease}.theme-toggle:hover{border-color:var(--line-strong);background:var(--surface-soft);color:var(--ink)}.theme-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.theme-icon.sun{display:none}:root[data-theme=dark] .theme-icon.sun{display:block}:root[data-theme=dark] .theme-icon.moon{display:none}main{width:min(1180px,calc(100% - 3rem));margin:0 auto;padding:clamp(2.5rem,5vw,4.5rem) 0 6rem}footer{border-top:1px solid var(--line);padding:2rem max(4vw,calc((100vw - 1180px) / 2));color:var(--muted);font-size:.82rem}h1,h2,h3,p{margin-top:0}h1{font-family:inherit;font-size:clamp(2.65rem,5.6vw,5rem);font-weight:500;letter-spacing:-.057em;max-width:850px;margin-bottom:1.15rem;text-wrap:balance}h1,h2,h3{line-height:1.1em}h2{font-size:1.1rem;letter-spacing:-.02em}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:780;color:var(--green);margin-bottom:1rem}.lede{color:var(--muted);font-size:clamp(1rem,1.5vw,1.1rem);line-height:1.65;max-width:680px}.hero{padding:clamp(1rem,3vw,2rem) 0 clamp(2.75rem,6vw,4.5rem)}.period{display:flex;align-items:center;gap:.6rem;color:var(--muted);margin-top:1.7rem;font-size:.9rem}.dot{width:8px;height:8px;flex:0 0 8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 12%,transparent)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:clamp(3rem,6vw,5rem)}.metric{min-width:0;padding:1.7rem 1.4rem 1.7rem 0;border-right:1px solid var(--line)}.metric+.metric{padding-left:1.4rem}.metric:last-child{border-right:0}.metric span{display:block;color:var(--muted);font-size:.76rem;margin-bottom:.72rem}.metric strong{display:block;overflow-wrap:anywhere;font-family:inherit;font-size:clamp(1.4rem,2.45vw,2.2rem);font-weight:500;line-height:1.1em}.metric small{display:block;color:var(--muted);margin-top:.6rem}.negative{color:var(--red)!important}.monthly-budget-chart-tooltip .negative{color:var(--red-inverse)!important}.portfolio-point-tooltip text.negative{fill:var(--red)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin:3.25rem 0 1rem}.section-head:first-child{margin-top:0}.section-head h2{margin-bottom:.2rem}.section-head p{margin:0;color:var(--muted)}.section-head>a{color:var(--green);font-size:.86rem;font-weight:680;white-space:nowrap}.table-wrap{width:100%;overflow-x:auto;border-top:1px solid var(--ink);scrollbar-color:var(--line-strong) transparent}table{width:100%;border-collapse:collapse;text-align:left}.table-wrap:has(thead) table{min-width:680px}th{padding:.9rem .7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:730;white-space:nowrap}td{padding:1rem .7rem;border-top:1px solid var(--line);font-size:.88rem;line-height:1.4;vertical-align:middle}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0;text-align:right}tbody tr{transition:background .15s ease}tbody tr:hover{background:color-mix(in srgb,var(--surface-soft) 60%,transparent)}small{color:var(--muted)}.amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.status{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.77rem}.status:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--amber)}.status.ok:before{background:var(--green)}.empty{padding:2.75rem 0;border-top:1px solid var(--ink);color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid transparent;background:var(--green);color:var(--paper);padding:.72rem 1.05rem;border-radius:999px;font-weight:680;cursor:pointer;transition:background .18s ease,transform .18s ease,opacity .18s ease}.button:hover:not(:disabled){background:var(--green-hover);transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.55}.button.secondary{background:transparent;color:var(--green);border-color:var(--green)}.button.secondary:hover:not(:disabled){background:color-mix(in srgb,var(--green) 10%,transparent)}.import-area{border:1px dashed var(--line-strong);padding:clamp(1.5rem,4vw,3rem);margin-top:0;background:color-mix(in srgb,var(--surface) 38%,transparent)}.import-area input{display:block;margin:1.4rem 0;max-width:100%;color:var(--muted)}.notice{margin:1.5rem 0;padding:.9rem 0;border-bottom:1px solid var(--line);color:var(--muted);line-height:1.55}.notice.error{color:var(--red)}.split{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.52fr);grid-gap:clamp(3rem,6vw,5.5rem);gap:clamp(3rem,6vw,5.5rem);align-items:start}.split>*{min-width:0;max-width:100%}.facts{margin:0}.facts div{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line)}.facts dt{color:var(--muted)}.facts dd{margin:0;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bank-search input,input[type=email],input[type=text],select{min-height:42px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}select{max-width:280px;padding:.55rem .65rem}.bank-search input,input[type=email],input[type=text]{min-width:min(330px,100%);padding:.7rem .8rem}input::placeholder{color:var(--muted);opacity:.75}.bank-search label{display:block;color:var(--muted);font-size:.78rem;margin-bottom:.5rem}.bank-search>div{display:flex;gap:.6rem;flex-wrap:wrap}.bank-provider-heading{margin-bottom:2.8rem}.bank-results{list-style:none;margin:1.2rem 0 0;padding:0;border-top:1px solid var(--line)}.bank-results li{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line)}.bank-account-table table{min-width:820px}.bank-account-table td:first-child{min-width:390px}.bank-account-table td>small{display:block;margin-top:.25rem}.bank-account-settings{display:grid;grid-template-columns:minmax(145px,.9fr) minmax(150px,1fr) minmax(125px,.7fr) auto;align-items:end;grid-gap:.55rem;gap:.55rem}.bank-account-settings label{display:grid;grid-gap:.3rem;gap:.3rem}.bank-account-settings label>span{color:var(--muted);font-size:.62rem;font-weight:650}.bank-account-settings input,.bank-account-settings select{width:100%;min-width:0}.bank-account-settings>small{grid-column:1/-1;color:var(--green)}.bank-connection-table td:first-child small{display:block;margin-top:.25rem}.connection-account-choices{display:grid;grid-gap:.45rem;gap:.45rem;margin:.8rem 0 0;padding:.7rem 0 0;border:0;border-top:1px solid var(--line)}.connection-account-choices legend{padding:0 .5rem 0 0;color:var(--muted);font-size:.62rem;font-weight:650}.connection-account-choices label{display:flex;align-items:flex-start;gap:.55rem;cursor:pointer}.connection-account-choices input{margin-top:.12rem;accent-color:var(--green)}.connection-account-choices label span{min-width:0;display:grid;grid-gap:.08rem;gap:.08rem}.connection-account-choices label strong{font-size:.72rem}.connection-account-choices label small{margin:0!important;color:var(--muted);font-size:.62rem}.connection-account-choices>small{color:var(--green)}.error-text{color:var(--danger);overflow-wrap:anywhere}form.inline{display:flex;justify-content:flex-end;gap:.5rem}.pill{display:inline-block;padding:.25rem .55rem;background:var(--mint);border-radius:999px;font-size:.69rem}.pill,code{color:var(--ink)}code{padding:.15em .35em;border-radius:4px;background:var(--surface-soft)}.legal-shell{min-height:100vh;display:flex;flex-direction:column}.legal-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,calc((100vw - 900px) / 2));border-bottom:1px solid var(--line);background:var(--header)}.legal-content{width:min(900px,calc(100% - 3rem));padding-top:clamp(2.5rem,6vw,5rem)}.legal-content .hero{border-bottom:1px solid var(--line)}.legal-content h1{max-width:780px}.legal-copy{max-width:760px;padding-top:2.5rem}.legal-copy section{padding:0 0 1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--line)}.legal-copy h2{margin-bottom:.65rem}.legal-copy p{color:var(--muted);line-height:1.72}.legal-copy a,.legal-footer a{color:var(--green);text-decoration:underline;text-underline-offset:.18em}.legal-updated{font-size:.8rem}.legal-footer{justify-content:space-between;margin-top:auto}.legal-footer,.legal-footer nav{display:flex;gap:1rem}.category-overview{margin-bottom:clamp(3.5rem,7vw,6rem)}.category-list{border-top:1px solid var(--ink)}.category-row{display:grid;grid-template-columns:38px minmax(220px,1.15fr) minmax(140px,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;min-height:76px;border-bottom:1px solid var(--line);transition:background .16s ease}.category-row:hover{background:color-mix(in srgb,var(--surface-soft) 60%,transparent)}.category-symbol{font-size:1.25rem}.category-copy{min-width:0;display:flex;flex-direction:column;gap:.28rem}.category-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-track{height:5px;overflow:hidden;border-radius:999px;background:var(--surface-soft)}.category-track>span{display:block;height:100%;border-radius:inherit;background:var(--green)}.category-amount{min-width:112px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.category-sections{min-width:0;display:grid;grid-gap:3.5rem;gap:3.5rem}.category-section{min-width:0;max-width:100%}.category-heading{display:flex;align-items:center;gap:.9rem;margin-bottom:1rem}.category-heading>span{font-size:1.45rem}.category-heading h2,.category-heading p{margin:0}.category-heading p{margin-top:.2rem;color:var(--muted);font-size:.82rem}.budget-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.budget-hero>div{min-width:0}.period-navigator{display:grid;grid-template-columns:38px minmax(170px,1fr) 38px;align-items:center;flex:0 0 auto;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.period-navigator>a{height:100%;min-height:48px;display:grid;place-items:center;color:var(--green);font-size:1rem;font-weight:760}.period-navigator>a:first-child{border-right:1px solid var(--line)}.period-navigator>a:last-child{border-left:1px solid var(--line)}.period-navigator>span{display:flex;flex-direction:column;gap:.14rem;padding:.6rem .8rem;text-align:center;font-size:.72rem;font-weight:680;white-space:nowrap}.period-navigator small{font-size:.57rem;font-weight:620}.period-navigator-stack{display:grid;justify-items:center;grid-gap:.28rem;gap:.28rem}.period-current-link{color:var(--green);font-size:.61rem;font-weight:740;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--green) 35%,transparent);text-decoration-color:color-mix(in srgb,var(--green) 35%,transparent);text-underline-offset:3px}.monthly-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:3.25rem;border-block:1px solid var(--line)}.monthly-summary>div{min-width:0;display:flex;flex-direction:column;padding:1.35rem 1.25rem;border-right:1px solid var(--line)}.monthly-summary>div:first-child{padding-left:0}.monthly-summary>div:last-child{padding-right:0;border-right:0}.monthly-summary span{color:var(--muted);font-size:.7rem}.monthly-summary strong{margin:.65rem 0 .45rem;overflow-wrap:anywhere;font-size:clamp(1.2rem,2vw,1.7rem);letter-spacing:-.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.monthly-summary small{font-size:.62rem;line-height:1.45}.analysis-section{margin:0 0 3.4rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading .eyebrow{margin-bottom:.35rem}.section-heading h2,.section-heading p{margin-bottom:0}.section-heading>p{color:var(--muted);font-size:.7rem}.analysis-table td:not(:first-child),.analysis-table th:not(:first-child){text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.analysis-table tbody th{border-top:1px solid var(--line);color:var(--ink);text-transform:none;letter-spacing:0;font-size:.8rem}.analysis-main-row td,.analysis-main-row th{padding-top:1.05rem;padding-bottom:1.05rem;font-weight:730}.analysis-sub-row th{padding-left:1.5rem;color:var(--muted);font-weight:560}.analysis-sub-row td{color:var(--muted);font-size:.78rem}.wealth-section{padding-top:.2rem}.wealth-list{margin:0;padding:.3rem 1.15rem .8rem}.wealth-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line);font-size:.7rem}.wealth-list>div:last-child{border-bottom:0;font-weight:740}.wealth-list dt{color:var(--muted)}.wealth-list dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.analysis-note{margin:.9rem 0 0;color:var(--amber);font-size:.72rem}.planned-details{margin-top:1rem;border-top:1px solid var(--ink)}.planned-details>summary{padding:1.2rem 0;color:var(--green);font-size:.82rem;font-weight:700;cursor:pointer}.planned-details[open]>summary{margin-bottom:2rem;border-bottom:1px solid var(--line)}.global-budget-add{position:fixed;right:max(1.35rem,env(safe-area-inset-right));bottom:max(1.35rem,env(safe-area-inset-bottom));z-index:40;width:54px;height:54px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--green) 70%,var(--line));border-radius:50%;background:var(--green);color:var(--surface);box-shadow:0 12px 30px rgba(23,33,27,.2);cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.global-budget-add>span{font-size:2rem;font-weight:350;line-height:1;transform:translateY(-1px)}.global-budget-add:hover{transform:translateY(-2px);background:var(--green-hover);box-shadow:0 16px 34px rgba(23,33,27,.25)}.global-budget-add:disabled{cursor:wait;opacity:.6}.global-create{position:relative;z-index:40}.global-create.open .global-budget-add>span{display:block;transform:rotate(45deg)}.global-create-backdrop{position:fixed;inset:0;z-index:38;padding:0;border:0;background:color-mix(in srgb,#000 18%,transparent)}.global-create-actions{position:fixed;right:max(1.35rem,env(safe-area-inset-right));bottom:calc(max(1.35rem, env(safe-area-inset-bottom)) + 66px);z-index:39;display:grid;grid-gap:.5rem;gap:.5rem;visibility:hidden;opacity:0;transform:translateY(.5rem);transition:.16s ease;pointer-events:none}.global-create.open .global-create-actions{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.global-create-actions button{min-height:42px;padding:.7rem 1rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-weight:700;cursor:pointer}.global-create-actions button:hover{border-color:var(--green);color:var(--green)}.global-create-error{position:fixed;right:1.2rem;bottom:5.5rem;z-index:50;max-width:300px;padding:.75rem 1rem;border-radius:var(--container-radius);background:var(--red);color:white;font-size:.74rem}.assistant-layer{position:fixed;inset:0;z-index:90;display:flex;justify-content:flex-end}.assistant-backdrop{position:absolute;inset:0;padding:0;border:0;background:color-mix(in srgb,#0b0d0a 34%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.assistant-panel{width:min(460px,calc(100vw - 1rem));height:calc(100dvh - 1rem);position:relative;z-index:1;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;margin:.5rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--container-radius);background:var(--surface);box-shadow:0 26px 80px rgba(0,0,0,.3)}.assistant-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--line)}.assistant-header .eyebrow{margin:0 0 .25rem;font-size:.56rem}.assistant-header h2{margin:0;font-size:1.15rem}.assistant-header-actions{display:flex;align-items:center;gap:.35rem}.assistant-header-actions button,.assistant-thread-bar button{min-height:34px;padding:.35rem .6rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted);cursor:pointer}.assistant-header-actions button:last-child{width:36px;padding:0;font-size:1.5rem;line-height:1}.assistant-thread-bar{display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-bottom:1px solid var(--line)}.assistant-thread-bar select{width:100%;max-width:none;min-width:0;min-height:36px}.assistant-context{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem 1rem;background:var(--surface-soft)}.assistant-context span{color:var(--green);font-size:.64rem;font-weight:750}.assistant-context small{font-size:.55rem;text-align:right}.assistant-body{min-height:0;display:flex;flex-direction:column;gap:.85rem;padding:1rem;overflow-y:auto;overscroll-behavior:contain}.assistant-empty{margin:auto 0;padding:2rem 1rem;text-align:center}.assistant-empty strong{font-size:1rem}.assistant-empty p{max-width:320px;margin:.55rem auto 0;color:var(--muted);font-size:.72rem;line-height:1.55}.assistant-message{max-width:88%}.assistant-message>span{display:block;margin-bottom:.25rem;color:var(--muted);font-size:.55rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.assistant-message p{margin:0;padding:.7rem .8rem;border-radius:10px;background:var(--surface-soft);font-size:.74rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-message.user{align-self:flex-end}.assistant-message.user>span{text-align:right}.assistant-message.user p{background:color-mix(in srgb,var(--green-bright) 20%,var(--surface))}.assistant-action-card,.assistant-memory-card{padding:.9rem;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));border-radius:var(--container-radius);background:color-mix(in srgb,var(--green-bright) 7%,var(--surface))}.assistant-action-card .eyebrow{margin:0 0 .3rem;font-size:.53rem}.assistant-action-card>strong{font-size:.78rem}.assistant-action-card ul{margin:.65rem 0;padding-left:1.1rem;color:var(--muted);font-size:.67rem;line-height:1.5}.assistant-action-card>div{display:flex;justify-content:flex-end;gap:.5rem}.assistant-action-card .button,.assistant-memory-card .button{min-height:36px;padding:.5rem .7rem;font-size:.66rem}.assistant-action-card.executed{border-color:var(--green)}.assistant-action-card.expired,.assistant-action-card.rejected{opacity:.67}.assistant-memory-card small{display:block;color:var(--green);font-size:.55rem;font-weight:750;text-transform:uppercase}.assistant-memory-card p{margin:.45rem 0 .65rem;font-size:.7rem}.assistant-memory-card>strong{color:var(--green);font-size:.66rem}.assistant-status{margin:0;color:var(--muted);font-size:.66rem;font-style:italic}.assistant-error{margin:0;padding:.65rem .75rem;border-radius:7px;background:color-mix(in srgb,var(--red) 12%,var(--surface));color:var(--red);font-size:.68rem}.assistant-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:.6rem;gap:.6rem;padding:.8rem 1rem max(.8rem,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface)}.assistant-composer textarea{width:100%;min-width:0;max-height:140px;resize:none;padding:.65rem .75rem;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);color:var(--ink);font:inherit;font-size:.75rem}.assistant-composer .button{min-height:43px}.user-memory-list{border-top:1px solid var(--line)}.user-memory-list>div{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.user-memory-list>div>span:first-child{min-width:0;display:flex;flex-direction:column;gap:.2rem}.user-memory-list>div>span:first-child strong{font-size:.72rem;overflow-wrap:anywhere}.user-memory-list>div>span:first-child small{font-size:.6rem}.user-memory-list>div>span:last-child{display:flex;gap:.4rem}.user-memory-list .button{min-height:34px;padding:.4rem .65rem;font-size:.64rem}.budget-item-open{display:inline-flex;align-items:flex-start;flex-direction:column;gap:.35rem;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.budget-item-open strong{color:var(--green);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--green) 30%,transparent);text-decoration-color:color-mix(in srgb,var(--green) 30%,transparent);text-underline-offset:.2em}.budget-item-open:hover strong{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.budget-item-row{cursor:pointer}.budget-item-row:focus-within{background:color-mix(in srgb,var(--green) 6%,transparent)}.budget-analysis-edit-links{display:flex;flex-wrap:wrap;gap:.3rem .5rem;margin-top:.35rem}.budget-analysis-edit-links a{min-height:30px;padding:.2rem 0;border-bottom:1px solid color-mix(in srgb,var(--green) 35%,transparent);color:var(--green);font:inherit;font-size:.64rem;font-weight:680;text-align:left}.budget-analysis-edit-links a:focus-visible,.budget-analysis-edit-links a:hover{border-color:currentColor}.budget-analysis-accordions{display:none}.field-note{color:var(--muted);font-size:.67rem;line-height:1.45}.flow-review-button{margin-top:1rem}.account-filter-block{margin:-1.3rem 0 1.25rem}.filter-label{display:block;margin-bottom:.55rem;color:var(--muted);font-size:.68rem;font-weight:730;text-transform:uppercase;letter-spacing:.09em}.account-filters{display:flex;flex-wrap:wrap;gap:.55rem}.account-filters a{display:inline-flex;align-items:center;gap:.45rem;min-height:38px;padding:.45rem .7rem;border-bottom:1px solid var(--line-strong);color:var(--muted);font-size:.8rem}.account-filters a.active,.account-filters a:hover{border-color:var(--green);color:var(--green)}.account-filters a span{opacity:.68;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.category-filters{display:flex;gap:.55rem;margin:.25rem 0 2rem;padding-bottom:.55rem;overflow-x:auto;scrollbar-width:thin}.category-filters a{display:inline-flex;align-items:center;gap:.45rem;min-height:38px;padding:.45rem .7rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.76rem;white-space:nowrap}.category-filters a.active,.category-filters a:hover{border-color:var(--green);color:var(--green);background:color-mix(in srgb,var(--green) 8%,transparent)}.category-filters a span{color:inherit;opacity:.72;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.transaction-search{display:grid;grid-gap:.55rem;gap:.55rem;margin:-1rem 0 1.5rem}.transaction-search>label{color:var(--muted);font-size:.68rem;font-weight:730;text-transform:uppercase;letter-spacing:.09em}.transaction-search>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:.55rem;gap:.55rem}.transaction-search input[type=search]{width:100%;min-width:0;min-height:42px;padding:.65rem .75rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem}.transaction-search input[type=search]:focus{outline:2px solid color-mix(in srgb,var(--green) 45%,transparent);outline-offset:1px;border-color:var(--green)}.category-cell{display:inline-flex;align-items:center;gap:.6rem;min-width:190px}.category-cell>span:last-child{display:flex;flex-direction:column;gap:.15rem}.category-cell small{display:block}.source-label{display:inline-flex;padding:.25rem .5rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.68rem;white-space:nowrap}.transaction-description-cell{position:relative}.transaction-date{margin-top:.2rem}.transaction-mobile-account,.transaction-mobile-meta{display:none}.transaction-table tr{position:relative}.transaction-row-hit-target{position:absolute;inset:0;z-index:1;width:100%;padding:0;border:0;background:transparent;cursor:pointer}.transaction-row-hit-target:hover{background:color-mix(in srgb,var(--green) 5%,transparent)}.transaction-row-hit-target:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.transaction-period-editor{display:grid;grid-gap:.8rem;gap:.8rem;padding:1rem;border-block:1px solid var(--line)}.transaction-period-editor>div:first-child{display:grid;grid-gap:.2rem;gap:.2rem}.transaction-period-editor small{color:var(--muted);font-size:.65rem;font-weight:680}.transaction-period-editor strong{font-size:.82rem}.transaction-period-editor span{color:var(--green);font-size:.65rem}.transaction-period-editor>div:last-child{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}.transaction-period-editor .button{min-width:0;padding-inline:.7rem}.categorization-control{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:1.3rem}.categorization-control>small{color:var(--muted)}.screener-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:1.25rem;background:color-mix(in srgb,#0b0d0a 62%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.screener{width:min(820px,100%);max-height:min(780px,calc(100dvh - 2.5rem));overflow:auto;border:1px solid var(--line);border-radius:var(--container-radius);background:var(--surface);box-shadow:0 28px 80px rgba(0,0,0,.28)}.screener-header{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.3rem 1.4rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.screener-header .eyebrow{margin:0 0 .35rem}.screener-header h2{margin:0;font-size:1.35rem;letter-spacing:-.035em}.screener-close{width:36px;height:36px;flex:0 0 36px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font:inherit;font-size:1.5rem;line-height:1;cursor:pointer}.screener-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,1.1fr);grid-gap:2rem;gap:2rem;padding:1.5rem 1.4rem}.screener-transaction{min-width:0}.screener-transaction h3{margin:1.4rem 0 .35rem;overflow-wrap:anywhere;font-size:1.2rem;line-height:1.35}.screener-transaction>p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.5}.screener-amount{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.screener-amount strong{font-size:1.65rem;letter-spacing:-.04em}.screener-amount span{color:var(--muted);font-size:.72rem}.screener-examples{display:grid;grid-gap:.45rem;gap:.45rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}.screener-examples>span{margin-bottom:.15rem;font-size:.72rem;font-weight:720}.screener-examples small{overflow:hidden;color:var(--muted);font-size:.65rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.screener-fields{min-width:0;display:grid;grid-gap:1rem;gap:1rem}.screener-fields>label:not(.screener-scope){min-width:0;display:grid;grid-gap:.42rem;gap:.42rem;color:var(--muted);font-size:.7rem;font-weight:680}.screener-fields select{width:100%;max-width:none;min-width:0}.field-hint{float:right;color:var(--green);font-weight:650}.screener-scope{display:flex;align-items:flex-start;gap:.65rem;padding-top:.35rem;color:var(--ink);font-size:.72rem;line-height:1.4;cursor:pointer}.screener-scope input{margin-top:.1rem;accent-color:var(--green)}.screener-actions{position:-webkit-sticky;position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:.7rem;padding:1rem 1.4rem;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.empty-screener{padding:2rem;text-align:center}.empty-screener h2{margin:0 0 1.2rem}.empty-screener-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem}.budget-item-editor{width:min(900px,100%)}.budget-item-editor form{min-width:0}.budget-editor-body{display:grid;grid-gap:1.35rem;gap:1.35rem;padding:1.4rem}.budget-editor-grid,.budget-editor-more>div,.budget-schedule-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.budget-editor-grid label,.budget-editor-more label,.budget-schedule-fields label{min-width:0;display:grid;align-content:start;grid-gap:.4rem;gap:.4rem;color:var(--muted);font-size:.7rem;font-weight:680}.budget-editor-grid input,.budget-editor-grid select,.budget-editor-more input,.budget-editor-more textarea,.budget-schedule-fields input,.budget-schedule-fields select{width:100%;min-width:0;max-width:none}.budget-editor-grid input,.budget-editor-more textarea,.budget-schedule-fields input{min-height:42px;padding:.65rem .75rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.budget-editor-more textarea{resize:vertical}.field-wide{grid-column:1/-1}.budget-recurrence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;padding:1rem;border-block:1px solid var(--line);background:color-mix(in srgb,var(--surface-soft) 55%,transparent)}.budget-recurrence-dates label,.budget-recurrence>label{min-width:0;display:grid;align-content:start;grid-gap:.4rem;gap:.4rem;color:var(--muted);font-size:.7rem;font-weight:680}.budget-recurrence input,.budget-recurrence select{width:100%;min-width:0;max-width:none}.budget-recurrence input{min-height:42px;padding:.65rem .75rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.budget-recurrence-dates{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.budget-recurrence-dates label small{font-weight:500}.budget-repeat-more{grid-column:1/-1;padding-top:.2rem}.budget-repeat-more>summary{color:var(--green);font-size:.7rem;font-weight:700;cursor:pointer}.budget-repeat-more[open]>summary{margin-bottom:.8rem}.budget-schedule-fields{padding-top:.8rem;border-top:1px solid var(--line)}.budget-schedule-fields label small{font-weight:500}.month-picker{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:.55rem;gap:.55rem;margin:0;padding:0;border:0}.edit-scope legend,.month-picker legend{margin-bottom:.6rem;padding:0;color:var(--muted);font-size:.7rem;font-weight:680}.month-picker label{display:flex;align-items:center;gap:.35rem;color:var(--ink);font-size:.68rem;cursor:pointer}.edit-scope input,.month-picker input{width:auto;min-height:auto;padding:0;border:0;background:transparent;accent-color:var(--green)}.budget-editor-more{padding-top:.1rem}.budget-editor-more>summary{color:var(--green);font-size:.75rem;font-weight:700;cursor:pointer}.budget-editor-more[open]>summary{margin-bottom:1rem}.edit-scope{display:flex;flex-wrap:wrap;gap:.65rem 1.2rem;margin:0;padding:1rem 0 0;border:0;border-top:1px solid var(--line)}.edit-scope legend{width:100%;margin-bottom:.15rem}.edit-scope label{display:inline-flex;align-items:center;gap:.45rem;font-size:.72rem;cursor:pointer}.form-error{margin:0;padding:.8rem 0;border-block:1px solid color-mix(in srgb,var(--red) 40%,var(--line));color:var(--red);font-size:.76rem}.budget-editor-actions{align-items:center}.budget-editor-actions>span{flex:1 1}.danger-button{margin-right:auto;border-color:var(--red);background:transparent;color:var(--red)}.danger-button:hover:not(:disabled){background:color-mix(in srgb,var(--red) 10%,transparent)}.notice-inline{color:var(--green);font-size:.78rem}@media (max-width:900px){.site-header{grid-template-columns:1fr;gap:0;padding:.8rem 1.5rem 0}.header-primary{width:100%;justify-content:space-between}.site-header nav{width:calc(100% + 3rem);margin-left:-1.5rem;padding:0 1.5rem;justify-content:flex-start}.site-header nav a{padding:.85rem 0 1rem}main{width:min(100% - 3rem,1180px);padding-top:2rem}.metrics{grid-template-columns:1fr 1fr}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.split{grid-template-columns:1fr}}@media (max-width:580px){.site-header,.site-header nav{padding-inline:1rem}.site-header nav{width:calc(100% + 2rem);margin-left:-1rem;gap:1.15rem}main{width:calc(100% - 2rem);padding:1.4rem 0 4rem}footer{padding:1.5rem 1rem}h1{font-size:clamp(2.45rem,13vw,3.45rem);line-height:1}.hero{padding-bottom:2.5rem}.period{align-items:flex-start;font-size:.82rem;line-height:1.45}.dot{margin-top:.3rem}.metrics{grid-template-columns:1fr}.metric,.metric+.metric{padding:1.3rem 0;border-right:0;border-bottom:1px solid var(--line)}.metric:last-child{border-bottom:0}.metric strong{font-size:1.75rem}.section-head{align-items:flex-start;gap:1rem;margin-top:2.5rem}.section-head p{font-size:.85rem}.table-wrap{width:calc(100% + 1rem);padding-right:1rem}.table-wrap:has(thead) table{min-width:660px}th{padding-top:.75rem}td{padding-top:.85rem;padding-bottom:.85rem}.import-area{padding:1.25rem}.bank-search .button,.bank-search input,.bank-search>div{width:100%}.bank-results li{align-items:flex-start}form.inline{min-width:265px}.theme-toggle span{display:none}.theme-toggle{width:38px;padding:0}.category-row{grid-template-columns:32px minmax(0,1fr) auto;gap:.65rem;padding:.85rem 0}.category-track{display:none}.category-copy small{white-space:normal;line-height:1.35}.category-amount{min-width:86px;font-size:.88rem}.account-filter-block{margin-top:-.75rem}.account-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 .8rem;gap:0 .8rem}.account-filters a{min-width:0;justify-content:space-between}.category-filters{width:calc(100% + 1rem);padding-right:1rem}.legal-header{min-height:64px;padding:0 1rem}.legal-content{width:calc(100% - 2rem)}.legal-footer{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-content,.app-shell{min-height:100vh}.app-content{margin-left:236px}.app-content>main{width:min(1420px,calc(100% - 4rem));padding:2.2rem 0 4rem}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:236px;display:flex;flex-direction:column;padding:1.5rem 1rem;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,var(--paper))}.sidebar .brand{min-height:48px;padding:0 .65rem;font-size:1.08rem}.sidebar-nav{display:flex;flex-direction:column;gap:.3rem;margin-top:2.3rem}.nav-label{margin:0 0 .55rem .75rem;color:var(--muted);font-size:.62rem;font-weight:760;letter-spacing:.14em;text-transform:uppercase}.nav-label-secondary{margin-top:1.65rem}.more-sheet a,.sidebar-account-links>a,.sidebar-nav>a{display:flex;align-items:center;gap:.8rem;min-height:44px;padding:.7rem .75rem;border-radius:9px;color:var(--muted);font-size:.84rem;font-weight:620;transition:color .16s ease,background .16s ease,transform .12s ease}.more-sheet a.active,.more-sheet a:hover,.sidebar-account-links>a.active,.sidebar-account-links>a:hover,.sidebar-nav>a.active,.sidebar-nav>a:hover{color:var(--ink);background:var(--surface-soft)}.sidebar-account-links>a.active,.sidebar-nav>a.active{box-shadow:inset 3px 0 0 var(--green-bright)}.more-sheet a:active,.sidebar-account-links>a:active,.sidebar-nav>a:active{transform:scale(.97);background:color-mix(in srgb,var(--green) 14%,var(--surface))}.app-icon{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sidebar-footer{margin-top:auto;padding:1rem .7rem 0;border-top:1px solid var(--line)}.sidebar-footer .theme-toggle{width:100%;justify-content:flex-start;border:0;padding-inline:0}.sidebar-account-links{display:grid;grid-gap:.15rem;gap:.15rem;margin-top:.35rem}.sidebar-account-links>a{margin-inline:-.75rem}.sidebar-footer p{margin:.8rem 0 0;color:var(--muted);font-size:.7rem;line-height:1.5}.bottom-nav,.mobile-header{display:none}.app-content .hero{padding:.4rem 0 2.5rem}.app-content .hero h1{max-width:920px;margin-bottom:.9rem;font-family:inherit;font-size:clamp(2.2rem,4.2vw,3.8rem);font-weight:720;letter-spacing:-.055em;line-height:1.1em}.app-content .hero .lede{font-size:.92rem;line-height:1.55}.settings-hero{border-bottom:1px solid var(--line-strong)}.settings-list{max-width:920px}.settings-list>a{min-height:92px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;padding:1.1rem 0;border-bottom:1px solid var(--line);transition:color .16s ease}.settings-list>a:hover{color:var(--green)}.settings-list .app-icon{width:24px;height:24px;justify-self:center}.settings-list>a>span:not(.settings-chevron){min-width:0;display:grid;grid-gap:.3rem;gap:.3rem}.settings-list strong{font-size:.95rem}.settings-list small{color:var(--muted);font-size:.75rem;line-height:1.45}.settings-chevron{color:var(--green);font-size:1.6rem;line-height:1}.user-hero{border-bottom:1px solid var(--line-strong)}.user-settings-section{max-width:920px;padding:2rem 0;border-bottom:1px solid var(--line)}.user-profile-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;grid-gap:.8rem;gap:.8rem}.user-profile-form label{min-width:0;display:grid;grid-gap:.35rem;gap:.35rem}.user-profile-form label>span{color:var(--muted);font-size:.66rem;font-weight:650}.user-profile-form input{width:100%;min-width:0}.user-profile-form input[readonly]{color:var(--muted);background:var(--surface-soft)}.user-access-actions{display:flex;align-items:center;gap:1rem}.dashboard-page h1{margin:0;max-width:none;font-family:inherit;font-size:clamp(2rem,3vw,3.35rem);font-weight:580;letter-spacing:-.055em;line-height:1.1em}.dashboard-page h2{margin:0;font-size:1rem;font-weight:710;letter-spacing:-.025em}.dashboard-header{display:block;margin-bottom:0}.dashboard-header .eyebrow{margin-bottom:.7rem}.dashboard-header .lede{margin:.8rem 0 0;font-size:.9rem;line-height:1.5}.dashboard-budget-insight{max-width:calc(100% - 380px);min-height:116px;padding-left:.85rem;border-left:3px solid var(--line-strong)}.dashboard-budget-insight.positive{border-left-color:var(--green-bright)}.dashboard-budget-insight.warning{border-left-color:var(--amber)}.dashboard-budget-insight.warning .eyebrow{color:var(--amber)}.dashboard-budget-insight .lede span{color:var(--ink);font-weight:620}.dashboard-header-actions{position:relative;display:flex;align-items:center;gap:.65rem;flex:0 0 auto}.dashboard-period-sticky{min-height:60px;position:-webkit-sticky;position:sticky;top:.75rem;z-index:18;display:flex;justify-content:flex-end;margin:-64px 0 2rem;pointer-events:none}.dashboard-period-sticky .dashboard-header-actions{padding:.35rem;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:var(--container-radius);background:color-mix(in srgb,var(--paper) 90%,transparent);box-shadow:0 10px 28px rgba(23,33,27,.13);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);pointer-events:auto}.dashboard-warning{position:relative;flex:0 0 auto}.dashboard-warning>summary{width:48px;height:48px;position:relative;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:50%;background:color-mix(in srgb,var(--amber) 11%,var(--surface));color:var(--amber);cursor:pointer;list-style:none}.dashboard-warning>summary::-webkit-details-marker{display:none}.dashboard-warning>summary .app-icon{width:18px;height:18px}.dashboard-warning>summary>span{min-width:18px;height:18px;position:absolute;top:-4px;right:-3px;display:grid;place-items:center;padding:0 4px;border-radius:999px;background:var(--amber);color:var(--surface);font-size:.58rem;font-weight:800}.dashboard-warning-popover{width:min(300px,calc(100vw - 2rem));position:absolute;z-index:20;top:calc(100% + .55rem);right:0;display:block;padding:1rem;border:1px solid color-mix(in srgb,var(--amber) 38%,var(--line));border-radius:var(--container-radius);background:var(--surface);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-.3rem);transition:opacity .15s ease,transform .15s ease,visibility 0s linear .15s}.dashboard-warning[open] .dashboard-warning-popover{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}.dashboard-warning-popover .eyebrow{margin-bottom:.45rem;color:var(--amber)}.dashboard-warning-popover>strong{display:block;font-size:.9rem}.dashboard-warning-popover>p:not(.eyebrow){margin:.55rem 0 .75rem;color:var(--muted);font-size:.68rem;line-height:1.5}.dashboard-warning-popover>a{color:var(--green);font-size:.68rem;font-weight:750}@media (hover:hover){.dashboard-warning:hover .dashboard-warning-popover{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}}.period-chip{display:flex;align-items:center;gap:.75rem;flex:0 0 auto;padding:.7rem .85rem;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:.78rem;font-weight:650}.period-chip .app-icon{color:var(--green)}.period-chip>span{display:flex;flex-direction:column;gap:.15rem}.period-chip small{font-size:.62rem;font-weight:600}.monthly-budget-chart{min-width:0;margin-bottom:.8rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--container-radius);background:var(--surface)}.monthly-budget-chart-header{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1rem 1.15rem;border-bottom:1px solid var(--line)}.monthly-budget-chart-header .eyebrow{margin:0 0 .3rem;font-size:.58rem}.monthly-budget-chart-header h2{margin-bottom:.3rem}.monthly-budget-chart-header small{color:var(--muted);font-size:.64rem}.monthly-budget-chart-legend{display:flex;align-items:center;gap:1rem;color:var(--muted);font-size:.65rem;white-space:nowrap}.monthly-budget-chart-legend span{display:inline-flex;align-items:center;gap:.38rem}.monthly-budget-chart-legend i{width:9px;height:9px;display:inline-block;border-radius:2px 2px 0 0}.monthly-budget-chart-legend .budgeted{background:color-mix(in srgb,var(--green-bright) 42%,var(--surface-soft))}.monthly-budget-chart-legend .realized{background:var(--green)}.monthly-budget-chart-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.monthly-budget-chart-grid{min-width:720px;height:220px;display:grid;grid-template-columns:repeat(10,minmax(68px,1fr));padding:1rem 1rem .85rem;background:repeating-linear-gradient(to top,transparent 0,transparent 40px,color-mix(in srgb,var(--line) 58%,transparent) 40px,color-mix(in srgb,var(--line) 58%,transparent) 41px)}.monthly-budget-chart-month{min-width:0;position:relative;display:grid;grid-template-rows:minmax(0,1fr) 25px;align-items:end;padding:0 .4rem;border-radius:8px;color:var(--muted);text-align:center}.monthly-budget-chart-month:hover{background:color-mix(in srgb,var(--green-bright) 7%,transparent)}.monthly-budget-chart-month.selected{color:var(--green)}.monthly-budget-chart-month.selected .budgeted{background:var(--green-bright)}.monthly-budget-chart-month.selected strong{text-decoration:underline;-webkit-text-decoration-color:var(--green-bright);text-decoration-color:var(--green-bright);text-decoration-thickness:2px;text-underline-offset:5px}.monthly-budget-chart-tooltip{position:absolute;z-index:4;top:.25rem;left:50%;display:flex;flex-direction:column;gap:.28rem;padding:.45rem .55rem;border:1px solid var(--line-strong);border-radius:7px;background:var(--ink);color:var(--paper);box-shadow:var(--shadow);font-size:.58rem;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;transform:translate(-50%,-.25rem);pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility 0s linear .14s}.monthly-budget-chart-tooltip>span{display:flex;align-items:baseline;justify-content:space-between;gap:.7rem}.monthly-budget-chart-tooltip small{color:color-mix(in srgb,var(--paper) 70%,transparent);font-size:.52rem}.monthly-budget-chart-tooltip b{color:inherit;font-size:.58rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.monthly-budget-chart-month.tooltip-open .monthly-budget-chart-tooltip{opacity:1;visibility:visible;transform:translate(-50%);transition-delay:0s}.monthly-budget-chart-month:first-child .monthly-budget-chart-tooltip{left:.25rem;transform:translateY(-.25rem)}.monthly-budget-chart-month:first-child.tooltip-open .monthly-budget-chart-tooltip{transform:translate(0)}.monthly-budget-chart-month:last-child .monthly-budget-chart-tooltip{right:.25rem;left:auto;transform:translateY(-.25rem)}.monthly-budget-chart-month:last-child.tooltip-open .monthly-budget-chart-tooltip{transform:translate(0)}.monthly-budget-chart-bars{height:100%;min-height:0;display:flex;align-items:flex-end;justify-content:center;gap:.28rem;padding-top:.3rem}.monthly-budget-chart-bars i{width:clamp(8px,1.1vw,14px);height:var(--bar-height);display:block;border-radius:3px 3px 0 0;transition:height .18s ease}.monthly-budget-chart-bars .budgeted{background:color-mix(in srgb,var(--green-bright) 42%,var(--surface-soft))}.monthly-budget-chart-bars .realized{background:var(--green)}.monthly-budget-chart-month strong{padding-top:.45rem;font-size:.62rem;font-weight:680;white-space:nowrap}.portfolio-development{min-width:0;margin-top:.8rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--container-radius);background:var(--surface)}.portfolio-development-header{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1rem 1.15rem;border-bottom:1px solid var(--line)}.portfolio-development-header .eyebrow{margin:0 0 .3rem;font-size:.58rem}.portfolio-development-header h2{margin-bottom:.3rem}.portfolio-development-header small{color:var(--muted);font-size:.64rem}.portfolio-development-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem 1rem;color:var(--muted);font-size:.65rem;white-space:nowrap}.portfolio-development-legend span{display:inline-flex;align-items:center;gap:.4rem}.portfolio-development-legend i{width:17px;height:0;border-top:2px solid var(--green)}.portfolio-development-legend i.net{border-color:var(--ink)}.portfolio-development-legend i.forecast{border-top-style:dashed;border-color:var(--muted)}.portfolio-development-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.portfolio-development-svg{width:100%;min-width:720px;height:auto;display:block;overflow:visible}.portfolio-grid-line{stroke:color-mix(in srgb,var(--line) 66%,transparent);stroke-width:1;vector-effect:non-scaling-stroke}.portfolio-line{fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.portfolio-line.net{stroke:var(--ink);stroke-width:2.5}.portfolio-line.forecast{stroke-dasharray:8 7;opacity:.82}.portfolio-point{color:var(--green);outline:none;cursor:help}.portfolio-point-hit-area{fill:transparent;stroke:none}.portfolio-point circle{fill:var(--surface);stroke-width:3;vector-effect:non-scaling-stroke}.portfolio-point .gross{stroke:var(--green)}.portfolio-point .net{stroke:var(--ink)}.portfolio-point .forecast-point{stroke-dasharray:3 2}.portfolio-point.current{color:var(--green-bright)}.portfolio-point.current .actual-point.gross{fill:var(--green);stroke:var(--surface);filter:drop-shadow(0 0 .22rem color-mix(in srgb,var(--green) 45%,transparent))}.portfolio-point.current .actual-point.net{fill:var(--ink);stroke:var(--surface);filter:drop-shadow(0 0 .22rem color-mix(in srgb,var(--ink) 35%,transparent))}.portfolio-point.selected circle{filter:drop-shadow(0 0 .25rem color-mix(in srgb,var(--green-bright) 65%,transparent))}.portfolio-point-tooltip{opacity:0;pointer-events:none;transition:opacity .14s ease}.portfolio-point:focus .portfolio-point-tooltip,.portfolio-point:hover .portfolio-point-tooltip{opacity:1}.portfolio-point-tooltip rect{fill:var(--ink);stroke:var(--line-strong);stroke-width:1;vector-effect:non-scaling-stroke}.portfolio-point-tooltip text{fill:var(--paper);font-family:inherit;font-size:11px;font-weight:650}.portfolio-point-tooltip text.label{fill:color-mix(in srgb,var(--paper) 68%,transparent);font-size:9px;font-weight:600}.portfolio-month-label{fill:var(--muted);font-family:inherit;font-size:11px;font-weight:650}.portfolio-month-label.current{fill:var(--green);font-weight:780}.portfolio-month-label.selected{fill:var(--green);font-weight:800;text-decoration:underline}.dashboard-metrics{display:grid;grid-template-columns:1.35fr repeat(3,1fr);grid-gap:.8rem;gap:.8rem;margin-bottom:.8rem}.dashboard-metrics-mobile,.metric-card.dashboard-mobile-savings{display:none}.metric-card{min-width:0;min-height:138px;display:flex;align-items:flex-start;gap:.9rem;padding:1.1rem;border:1px solid var(--line);border-radius:var(--container-radius);background:var(--surface)}.metric-card>div{min-width:0;display:flex;flex-direction:column}.metric-card span:not(.metric-icon){color:var(--muted);font-size:.7rem}.metric-card strong{margin-top:auto;padding-top:1rem;font-size:clamp(1.25rem,2vw,1.75rem);letter-spacing:-.045em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-card small{margin-top:.25rem;font-size:.67rem;line-height:1.35}.metric-featured{color:var(--brand-near-black);border-color:transparent;background:color-mix(in srgb,var(--brand-bright-green) 38%,var(--brand-off-white))}.metric-featured .negative{color:#a84220!important}.metric-featured small,.metric-featured span:not(.metric-icon){color:color-mix(in srgb,var(--brand-near-black) 70%,var(--brand-deep-green))}.metric-icon{width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px;border-radius:8px;background:var(--surface-soft);color:var(--green)}.metric-featured .metric-icon{background:color-mix(in srgb,var(--brand-off-white) 60%,transparent);color:var(--brand-deep-green)}.metric-icon.warm{color:var(--amber)}.metric-icon.alert{color:var(--red)}.metric-icon.savings{color:#6d7250;background:color-mix(in srgb,#c0b93f 16%,var(--surface-soft))}.metric-icon .app-icon{width:16px;height:16px}.metric-card .metric-comparison{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.metric-card .metric-comparison b{color:inherit;font-size:inherit;font-weight:700}.metric-featured .metric-comparison span{color:color-mix(in srgb,var(--brand-near-black) 72%,var(--brand-deep-green));font-size:inherit;font-weight:650}.metric-card .metric-wealth-flow{margin-top:.4rem;padding-top:.4rem;border-top:1px solid color-mix(in srgb,var(--brand-deep-green) 18%,transparent)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:.8rem;gap:.8rem;align-items:start}.dashboard-panel{min-width:0;border:1px solid var(--line);border-radius:var(--container-radius);background:var(--surface)}.panel-heading{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid var(--line)}.panel-heading .eyebrow{margin:0 0 .3rem;font-size:.58rem}.panel-heading>a,.text-action{color:var(--green);font-size:.7rem;font-weight:700;white-space:nowrap}.budget-panel{grid-column:1}.category-dial-panel{overflow:hidden}.category-dial-list{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scroll-snap-type:x proximity}.category-dial-item{--category-tone:var(--green-bright);min-width:0;min-height:176px;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:1.2rem .9rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;scroll-snap-align:start}.category-dial-item:hover{background:color-mix(in srgb,var(--category-tone) 7%,var(--surface))}.category-dial-backdrop{position:absolute;z-index:-1;left:-2.25rem;bottom:-.55rem;font-size:7.25rem;line-height:1;opacity:.09;filter:saturate(.72);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.category-dial-item>:not(.category-dial-backdrop){position:relative;z-index:1}.category-dial-item:nth-child(5n){border-right:0}.category-dial-item:nth-child(n+6){border-bottom:0}.category-dial-item.attention{--category-tone:var(--amber)}.category-dial-item.over{--category-tone:var(--red)}.category-dial-item.complete{--category-tone:var(--green-bright);background:color-mix(in srgb,var(--green-bright) 7%,transparent)}.category-dial{width:74px;height:74px;position:relative;display:grid;place-items:center;flex:0 0 74px;border-radius:50%;background:conic-gradient(var(--category-tone) var(--category-progress),var(--surface-soft) 0)}.category-dial:before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--surface)}.category-dial>span{position:relative;z-index:1;color:var(--ink);font-size:.78rem;font-weight:760;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.category-dial-item.complete .category-dial>span{color:var(--green);font-size:1.25rem}.category-dial-copy{min-width:0;display:flex;flex-direction:column;align-items:center;gap:.22rem}.category-dial-copy strong{max-width:170px;overflow:hidden;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.category-dial-copy em,.category-dial-copy small{font-size:.61rem;white-space:nowrap}.category-dial-copy em{color:var(--category-tone);font-style:normal;font-weight:700}.category-back-chevron{width:24px;height:24px;display:inline-grid;place-items:center;margin-right:.35rem;border-radius:50%;color:var(--green);font-size:1.4rem;line-height:1;vertical-align:-.12em}.category-back-chevron:hover{background:var(--surface-soft)}.category-open-layout{height:352px;display:grid;grid-template-columns:minmax(430px,2fr) minmax(0,3fr);align-items:stretch;overflow:hidden}.dashboard-category-detail{min-width:0;min-height:0;display:flex;flex-direction:column;padding:0 1.15rem 1.2rem;border-right:1px solid var(--line);overflow:hidden}.category-dial-list-remaining{grid-template-columns:repeat(3,minmax(150px,1fr));overflow-x:hidden;overflow-y:auto}.category-dial-list-remaining .category-dial-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.category-dial-list-remaining .category-dial-item:nth-child(3n){border-right:0}.category-dial-list-remaining .category-dial-item:nth-last-child(-n+3){border-bottom:0}.dashboard-category-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}.dashboard-category-totals>span{min-width:0;display:flex;flex-direction:column;gap:.3rem;padding:1rem;border-right:1px solid var(--line)}.dashboard-category-totals>span:first-child{padding-left:0}.dashboard-category-totals>span:last-child{border-right:0}.dashboard-category-totals small{font-size:.6rem}.dashboard-category-totals strong{overflow-wrap:anywhere;font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-subcategory-list{min-height:0;padding-top:.8rem;overflow-y:auto;scrollbar-width:thin}.main-variable-budget{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.main-variable-budget>span{min-width:0;display:flex;flex-direction:column;gap:.14rem}.main-variable-budget small{color:var(--green);font-size:.55rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.main-variable-budget strong{font-size:.68rem}.main-variable-budget>strong{flex:0 0 auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-subcategory{border-bottom:1px solid var(--line)}.dashboard-subcategory>summary{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr) auto 16px;align-items:center;grid-gap:.65rem;gap:.65rem;padding:.8rem 0;cursor:pointer;list-style:none}.dashboard-subcategory>summary::-webkit-details-marker{display:none}.dashboard-subcategory>summary:hover .subcategory-summary-copy strong{color:var(--green)}.subcategory-summary-amount,.subcategory-summary-copy{min-width:0;display:flex;flex-direction:column;gap:.14rem}.subcategory-summary-copy strong{font-size:.72rem}.subcategory-summary-amount small,.subcategory-summary-copy small{font-size:.56rem}.subcategory-summary-amount{max-width:125px;text-align:right}.subcategory-summary-amount strong{font-size:.65rem;white-space:nowrap}.subcategory-chevron{color:var(--green);font-size:.9rem;transform-origin:center;transition:transform .16s ease}.dashboard-subcategory[open] .subcategory-chevron{transform:rotate(180deg)}.subcategory-entries{padding:0 0 .7rem 2.55rem}.subcategory-entries .detail-list{border-top:0}.entry-kind{min-width:44px;display:inline-flex;justify-content:center;padding:.22rem .35rem;border-radius:999px;background:color-mix(in srgb,var(--green) 12%,transparent);color:var(--green);font-size:.52rem;font-weight:750}.subcategory-entries .detail-row{grid-template-columns:48px minmax(0,1fr) auto;padding:.7rem 0}.subcategory-entries .transaction-edit-row{width:100%;grid-template-columns:minmax(0,1fr) auto;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left;cursor:pointer}.transaction-edit-row:hover{background:color-mix(in srgb,var(--green) 6%,transparent)}.transaction-edit-row:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.category-proposal{display:grid;grid-gap:.35rem;gap:.35rem;margin-top:1.5rem;padding:1rem;border-left:3px solid var(--green);background:var(--surface-soft)}.category-proposal small{color:var(--green);font-size:.62rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.category-proposal strong{font-size:.78rem}.category-proposal span{color:var(--muted);font-size:.68rem}.budget-category-list{padding:.2rem 1.15rem .65rem}.budget-category-row{display:grid;grid-template-columns:32px minmax(130px,.8fr) minmax(105px,.55fr) minmax(100px,.8fr) minmax(95px,auto);align-items:center;grid-gap:.8rem;gap:.8rem;min-height:72px;border-bottom:1px solid var(--line)}.budget-category-row:last-child{border-bottom:0}.budget-category-row:hover .budget-category-copy strong{color:var(--green)}.category-symbol{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--surface-soft);font-size:1rem}.budget-category-copy,.budget-values{min-width:0;display:flex;flex-direction:column;gap:.18rem}.budget-category-copy strong,.budget-values strong{font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-category-copy small,.budget-values small{font-size:.61rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-progress{height:7px;overflow:hidden;border-radius:999px;background:var(--surface-soft)}.budget-progress>span{display:block;height:100%;border-radius:inherit;background:var(--green-bright)}.budget-progress.attention>span{background:var(--amber)}.budget-progress.overBudget>span{background:var(--red)}.budget-remaining{min-width:95px;text-align:right;color:var(--muted);font-size:.63rem;font-weight:650;white-space:nowrap}.dashboard-balance-summary{display:flex;flex-direction:column;align-items:center;padding:clamp(2.4rem,5vw,4rem) 0;text-align:center}.dashboard-balance-summary .eyebrow{margin-bottom:.35rem}.dashboard-balance-summary>h2{margin-bottom:.65rem}.dashboard-balance-summary>strong{font-size:clamp(2rem,4vw,3.4rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.05em}.dashboard-balance-net{display:flex;align-items:baseline;gap:.45rem;margin:.35rem 0 0;color:var(--muted);font-size:.72rem}.dashboard-balance-net>strong{color:var(--ink);font-size:clamp(.95rem,1.5vw,1.2rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-balance-net>strong .negative{color:var(--red)}.dashboard-balance-summary>a{margin-top:.4rem;color:var(--green);font-size:.68rem;font-weight:740}.dashboard-balance-summary.future{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--amber) 7%,transparent),transparent)}.dashboard-balance-summary.future .eyebrow{color:var(--amber)}.dashboard-balance-breakdown{width:min(1040px,100%);display:grid;grid-template-columns:repeat(5,1fr);margin-top:1.7rem;border-top:1px solid var(--line)}.dashboard-balance-breakdown>div{min-width:0;display:flex;flex-direction:column;gap:.2rem;padding:1rem 1.5rem 0}.dashboard-balance-breakdown>div+div{border-left:1px solid var(--line)}.dashboard-balance-breakdown a,.dashboard-balance-breakdown span{color:var(--muted);font-size:.66rem}.dashboard-balance-breakdown strong{font-size:1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-balance-breakdown small{color:var(--muted);font-size:.58rem}.transactions-panel{grid-column:1}.transaction-list{padding:0 1.15rem .35rem}.transaction-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;grid-gap:.7rem;gap:.7rem;min-height:61px;border-bottom:1px solid var(--line)}.transaction-row:last-child{border-bottom:0}.transaction-avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--surface-soft);color:var(--muted);font-size:.7rem;font-weight:760}.transaction-copy{min-width:0;display:flex;flex-direction:column;gap:.17rem}.transaction-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.transaction-copy small{font-size:.6rem}.transaction-row>.amount{font-size:.7rem;font-weight:700}.positive{color:var(--green)}.health-panel{grid-column:2;display:none;padding-bottom:1rem}.health-visual{width:150px;height:76px;margin:1.3rem auto .8rem;position:relative;overflow:hidden}.health-visual:after,.health-visual:before{content:"";position:absolute;width:150px;height:150px;border-radius:50%}.health-visual:before{border:16px solid var(--surface-soft)}.health-visual:after{border:16px solid var(--green-bright);-webkit-clip-path:polygon(0 0,var(--health) 0,var(--health) 100%,0 100%);clip-path:polygon(0 0,var(--health) 0,var(--health) 100%,0 100%)}.health-visual>div{position:absolute;inset:36px 0 auto;z-index:1;display:flex;flex-direction:column;align-items:center}.health-visual strong{font-size:1.15rem}.health-visual small{font-size:.6rem}.health-panel>p{margin:.5rem 1rem 0;text-align:center;color:var(--muted);font-size:.7rem}.investment-hero{padding-bottom:2.5rem}.investment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1.4rem;border-block:1px solid var(--line-strong)}.investment-summary>div{min-width:0;display:grid;grid-gap:.45rem;gap:.45rem;padding:1.25rem;border-right:1px solid var(--line)}.investment-summary>div:first-child{padding-left:0}.investment-summary>div:last-child{border-right:0}.investment-summary span{color:var(--muted);font-size:.68rem}.investment-summary strong{overflow-wrap:anywhere;font-size:clamp(1.05rem,2vw,1.5rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.investment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2.4rem}.investment-toolbar>div{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem}.investment-toolbar>div small{flex-basis:100%;color:var(--muted);font-size:.64rem}.investment-toolbar label{display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.75rem}.investment-toolbar input{accent-color:var(--green)}.investment-account{margin-bottom:3rem}.investment-account>.section-heading{margin-bottom:1rem}.investment-account>.section-heading p{margin:0;color:var(--muted);font-size:.75rem}.investment-development{min-width:0;margin-bottom:1.2rem;padding:1rem 0 0;border-top:1px solid var(--line)}.investment-development>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.investment-development>div:first-child small{font-size:.64rem}.investment-development.empty-history{padding:1.25rem 0;color:var(--muted);font-size:.76rem}.investment-history-scroll{max-width:100%;overflow-x:auto}.investment-history-scroll svg{width:100%;min-width:660px;height:auto;display:block}.investment-history-scroll line{stroke:var(--line);stroke-width:1}.investment-history-scroll polyline{fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.investment-history-scroll circle{fill:var(--surface);stroke:var(--green);stroke-width:3}.investment-history-scroll text{fill:var(--muted);font-size:11px}.investment-position-list{border-top:1px solid var(--ink)}.investment-position{border-bottom:1px solid var(--line)}.investment-position>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;padding:1rem 0;cursor:pointer;list-style:none}.investment-position>summary::-webkit-details-marker{display:none}.investment-position>summary>span{min-width:0;display:grid;grid-gap:.25rem;gap:.25rem}.investment-position>summary>span:last-child{text-align:right}.investment-position>summary small{overflow-wrap:anywhere;font-size:.65rem}.investment-position-detail{padding:.2rem 0 1.25rem}.investment-position-detail dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 1rem;border-block:1px solid var(--line)}.investment-position-detail dl>div{display:grid;grid-gap:.25rem;gap:.25rem;padding:.8rem;border-right:1px solid var(--line)}.investment-position-detail dl>div:first-child{padding-left:0}.investment-position-detail dl>div:last-child{border-right:0}.investment-position-detail dt{color:var(--muted);font-size:.62rem}.investment-position-detail dd{margin:0;font-size:.8rem;font-weight:700}.investment-position-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.investment-events button,.investment-position-actions button{padding:.4rem .65rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--green);font-size:.66rem;font-weight:700;cursor:pointer}.investment-events button:disabled,.investment-position-actions button:disabled{opacity:.4;cursor:not-allowed}.investment-events{border-top:1px solid var(--line)}.investment-events>div{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:42px;border-bottom:1px solid var(--line);font-size:.68rem}.investment-events>div>span:last-child{display:flex;align-items:center;gap:.55rem}.investment-editor{width:min(720px,calc(100vw - 2rem));overflow-x:hidden}.investment-editor .budget-editor-body,.investment-editor .budget-editor-grid,.investment-editor form{min-width:0;max-width:100%}.investment-quota{margin:0;color:var(--muted);font-size:.68rem}.investment-lookup{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.55rem;gap:.55rem}.instrument-confirmation{min-width:0;max-width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;padding:.8rem;border-left:3px solid var(--green-bright);background:var(--surface-soft);font-size:.72rem}.instrument-confirmation>*{min-width:0;max-width:100%;overflow-wrap:anywhere}.instrument-confirmation span{text-align:right}.investment-account-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;grid-gap:.8rem;gap:.8rem;margin-bottom:2rem}.investment-account-form label{display:grid;grid-gap:.4rem;gap:.4rem;color:var(--muted);font-size:.7rem;font-weight:680}.investment-account-form input,.investment-account-form select{width:100%;min-height:42px;padding:.6rem .7rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.investment-account-name{display:flex;align-items:center;gap:.45rem}.investment-account-name input{min-height:36px;padding:.45rem .55rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.mortgage-hero{padding-bottom:2.5rem}.mortgage-balance{padding:clamp(2rem,5vw,4rem) 0;border-block:1px solid var(--line-strong);text-align:center}.mortgage-balance .eyebrow{margin-bottom:.55rem}.mortgage-balance h2{margin-bottom:.7rem}.mortgage-balance>strong{display:block;font-size:clamp(2.5rem,6vw,4.8rem);font-weight:520;letter-spacing:-.055em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mortgage-balance>p{margin:.7rem 0 .4rem;font-size:.76rem;font-weight:700}.mortgage-balance>small{display:block;max-width:720px;margin:0 auto;font-size:.65rem;line-height:1.55}.mortgage-progress{width:min(520px,82%);height:7px;margin:1.5rem auto 0;overflow:hidden;border-radius:999px;background:var(--surface-soft)}.mortgage-progress span{display:block;height:100%;border-radius:inherit;background:var(--green-bright)}.asset-sale-value{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr) minmax(220px,.65fr);align-items:end;grid-gap:clamp(1.5rem,4vw,3.5rem);gap:clamp(1.5rem,4vw,3.5rem);padding:1.5rem 0;border-bottom:1px solid var(--line)}.asset-sale-value>div:first-child{align-self:center}.asset-sale-value .eyebrow,.asset-sale-value h2{margin-bottom:.35rem}.asset-sale-value p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.5}.asset-sale-value form{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.45rem;gap:.45rem;align-items:end}.asset-sale-value form>label{grid-column:1/-1;color:var(--muted);font-size:.62rem;font-weight:700}.asset-sale-value-input{min-width:0;display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.asset-sale-value-input:focus-within{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green-bright) 18%,transparent)}.asset-sale-value-input input{width:100%;min-width:0;height:42px;padding:.65rem .2rem .65rem .75rem;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.asset-sale-value-input span{padding-right:.7rem;color:var(--muted);font-size:.66rem}.asset-sale-value form .button{min-height:42px}.asset-sale-value form>small{grid-column:1/-1;font-size:.62rem}.asset-sale-value-result{display:flex;flex-direction:column;gap:.25rem;padding-left:1.4rem;border-left:1px solid var(--line)}.asset-sale-value-result small,.asset-sale-value-result span{color:var(--muted);font-size:.62rem}.asset-sale-value-result strong{font-size:1.2rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mortgage-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:4rem;border-bottom:1px solid var(--line)}.mortgage-metrics>div{min-width:0;display:grid;grid-gap:.35rem;gap:.35rem;padding:1.35rem;border-right:1px solid var(--line)}.mortgage-metrics>div:first-child{padding-left:0}.mortgage-metrics>div:last-child{border-right:0}.mortgage-metrics small,.mortgage-metrics span{color:var(--muted);font-size:.65rem}.mortgage-metrics strong{overflow-wrap:anywhere;font-size:clamp(1rem,2vw,1.35rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-budget-link{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin:-2.5rem 0 4rem;padding:1rem 0;border-bottom:1px solid var(--line)}.loan-budget-link>div{display:grid;grid-gap:.2rem;gap:.2rem}.loan-budget-link .eyebrow{margin:0}.loan-budget-link strong{font-size:.78rem}.loan-budget-link small{color:var(--muted);font-size:.64rem}.loan-budget-link a{color:var(--green);font-size:.68rem;font-weight:740;white-space:nowrap}.mortgage-development{margin-bottom:4rem}.mortgage-development>.section-heading p{margin:0;color:var(--muted);font-size:.72rem}.mortgage-chart-scroll{max-width:100%;overflow-x:auto;border-top:1px solid var(--line)}.mortgage-chart{width:100%;min-width:700px;height:auto;display:block}.mortgage-chart line{stroke:var(--line);stroke-width:1}.mortgage-chart polygon{fill:color-mix(in srgb,var(--green-bright) 9%,transparent)}.mortgage-chart polyline{fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.mortgage-chart circle{fill:var(--surface);stroke:var(--green);stroke-width:3}.mortgage-chart text{fill:var(--muted);font-size:11px}.mortgage-chart-current circle{fill:var(--green-bright);stroke:var(--surface);stroke-width:4;filter:drop-shadow(0 2px 5px color-mix(in srgb,var(--green) 45%,transparent))}.mortgage-details-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);grid-gap:clamp(2.5rem,7vw,6rem);gap:clamp(2.5rem,7vw,6rem);margin-bottom:4rem}.mortgage-details-grid .section-heading{margin-bottom:.8rem}.mortgage-facts{margin:0;border-top:1px solid var(--ink)}.mortgage-facts>div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:1rem;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.mortgage-facts dt{color:var(--muted);font-size:.68rem}.mortgage-facts dd{margin:0;text-align:right;font-size:.72rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mortgage-source-copy{padding-top:1rem;border-top:1px solid var(--ink);color:var(--muted);font-size:.75rem;line-height:1.7}.mortgage-schedule td:not(:first-child),.mortgage-schedule th:not(:first-child){text-align:right}.car-loan-phases{display:grid;grid-template-columns:3fr 7fr;border-block:1px solid var(--ink)}.car-loan-phases>div{padding:1.4rem 1.5rem;border-right:1px solid var(--line)}.car-loan-phases>div:last-child{border-right:0}.car-loan-phases>div.current{background:var(--green-soft)}.car-loan-phases p,.car-loan-phases span{display:block;margin:0;color:var(--muted);font-size:.68rem}.car-loan-phases strong{display:block;margin:.45rem 0 .35rem;font-size:clamp(1.25rem,3vw,2rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.category-detail-header{margin-bottom:2rem}.category-detail-header h1{margin-bottom:.8rem;font-family:inherit;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:650}.category-detail-header .eyebrow{margin:1.2rem 0 .55rem}.back-link{color:var(--green);font-size:.78rem;font-weight:700}.category-detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:3rem;border-block:1px solid var(--line)}.category-detail-summary>div{min-width:0;display:flex;flex-direction:column;gap:.55rem;padding:1.25rem;border-right:1px solid var(--line)}.category-detail-summary>div:first-child{padding-left:0}.category-detail-summary>div:last-child{border-right:0}.category-detail-summary span{color:var(--muted);font-size:.68rem}.category-detail-summary strong{overflow-wrap:anywhere;font-size:clamp(1.1rem,2vw,1.55rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.category-detail-columns{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-gap:clamp(2rem,5vw,4rem);gap:clamp(2rem,5vw,4rem);align-items:start}.category-detail-section{min-width:0}.detail-list{border-top:1px solid var(--ink)}.detail-row{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;grid-gap:.75rem;gap:.75rem;padding:.9rem 0;border-bottom:1px solid var(--line)}.detail-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--surface-soft)}.detail-amount,.detail-copy{min-width:0;display:flex;flex-direction:column;gap:.2rem}.detail-copy strong{overflow-wrap:anywhere;font-size:.78rem}.detail-amount small,.detail-copy small{font-size:.62rem;line-height:1.35}.detail-amount{max-width:140px;text-align:right}.detail-amount strong{font-size:.74rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.detail-empty{padding:1.4rem 0;border-top:1px solid var(--ink);color:var(--muted);font-size:.82rem}@media (min-width:1500px){.category-dial-list{grid-template-columns:repeat(5,minmax(200px,1fr))}}@media (max-width:1080px){.dashboard-metrics,.investment-account-form,.monthly-summary{grid-template-columns:1fr 1fr}.monthly-summary>div:nth-child(2){border-right:0}.monthly-summary>div:nth-child(n+3){border-top:1px solid var(--line)}.monthly-summary>div:nth-child(3){padding-left:0}.dashboard-grid{grid-template-columns:1fr}.budget-panel,.transactions-panel{grid-column:1;grid-row:auto}.category-detail-columns,.category-open-layout{grid-template-columns:1fr}.category-open-layout{height:auto;overflow:visible}.mortgage-details-grid{grid-template-columns:1fr;gap:2rem}.asset-sale-value{grid-template-columns:1fr 1fr}.asset-sale-value-result{grid-column:1/-1;padding:1rem 0 0;border-top:1px solid var(--line);border-left:0}.dashboard-category-detail{min-width:0;border-right:0;border-bottom:1px solid var(--line);overflow:visible}.dashboard-subcategory-list{overflow:visible}.category-dial-list-remaining{grid-template-columns:repeat(3,minmax(150px,1fr));overflow-y:visible}}@media (max-width:900px){html{touch-action:pan-x pan-y}input,select,textarea{font-size:16px}.app-content{margin-left:0}.app-content>main{width:min(100% - 2rem,760px);padding:1.5rem 0 6.5rem}.sidebar{display:none}.mobile-header{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;border-bottom:1px solid var(--line);background:var(--header);position:-webkit-sticky;position:sticky;top:0;z-index:15;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.mobile-header .theme-toggle span{display:none}.mobile-header .theme-toggle{width:38px;padding:0}.bottom-nav{--bottom-nav-inset:max(.75rem,env(safe-area-inset-bottom));position:fixed;inset:auto 0 0;z-index:30;min-height:calc(58px + var(--bottom-nav-inset));display:grid;grid-template-columns:repeat(4,1fr);padding:.45rem max(.4rem,env(safe-area-inset-right)) var(--bottom-nav-inset) max(.4rem,env(safe-area-inset-left));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav>a,.more-menu>button:not(.more-backdrop){width:100%;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:.6rem;font-weight:650;cursor:pointer;transition:color .16s ease,background .16s ease,transform .12s ease;-webkit-tap-highlight-color:transparent}.bottom-nav>a.active,.more-menu.open>button:not(.more-backdrop),.more-menu>button.active{color:var(--green)}.bottom-nav>a:active,.more-menu>button:not(.more-backdrop):active{transform:scale(.9);background:color-mix(in srgb,var(--green) 12%,transparent)}.bottom-nav .app-icon{width:28px;height:28px;padding:4px;border-radius:8px;transition:background .16s ease,transform .16s ease}.bottom-nav>a.active .app-icon,.more-menu.open>button:not(.more-backdrop) .app-icon,.more-menu>button.active .app-icon{background:color-mix(in srgb,var(--green) 15%,transparent);transform:translateY(-1px)}.more-menu{min-width:0}.more-menu>button:not(.more-backdrop){position:relative;z-index:33;height:100%}.more-backdrop{position:fixed;inset:0;z-index:31;padding:0;border:0;background:color-mix(in srgb,#000 18%,transparent);cursor:default}.more-sheet{position:fixed;inset:auto .75rem calc(66px + max(.75rem, env(safe-area-inset-bottom)));z-index:32;display:grid;grid-gap:.25rem;gap:.25rem;padding:.8rem;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow);visibility:hidden;opacity:0;transform:translateY(.5rem);pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s}.more-menu.open .more-sheet{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto;transition-delay:0s}.more-sheet>p{margin:.25rem .6rem .4rem;font-size:.75rem;font-weight:750}.more-sheet a{min-height:42px}}@media (max-width:620px){.assistant-panel{width:100%;height:100dvh;margin:0;border:0;border-radius:0}.assistant-header{padding-top:max(1rem,env(safe-area-inset-top))}.assistant-context small{display:none}.assistant-message{max-width:94%}.mortgage-metrics{grid-template-columns:1fr 1fr}.mortgage-metrics>div{padding:1rem}.mortgage-metrics>div:nth-child(2){border-right:0}.mortgage-metrics>div:nth-child(n+3){border-top:1px solid var(--line)}.mortgage-metrics>div:nth-child(3){padding-left:0}.mortgage-balance>strong{font-size:clamp(2rem,12vw,3.2rem)}.loan-budget-link{align-items:flex-start;margin-top:-2.5rem}.car-loan-phases{grid-template-columns:1fr}.car-loan-phases>div{border-right:0;border-bottom:1px solid var(--line)}.car-loan-phases>div:last-child{border-bottom:0}.user-memory-list>div{align-items:flex-start;flex-direction:column}.investment-summary{grid-template-columns:1fr 1fr}.investment-summary>div{padding:.9rem}.investment-summary>div:nth-child(2){border-right:0}.investment-summary>div:nth-child(n+3){border-top:1px solid var(--line)}.investment-summary>div:nth-child(3){padding-left:0}.investment-toolbar{align-items:stretch;flex-direction:column}.investment-toolbar>div{display:grid;grid-template-columns:1fr 1fr}.investment-toolbar>div small{grid-column:1/-1}.investment-development>div:first-child{align-items:flex-start;flex-direction:column;gap:.25rem}.investment-position>summary{gap:.6rem}.investment-position-detail dl{grid-template-columns:1fr}.investment-position-detail dl>div,.investment-position-detail dl>div:first-child{padding:.7rem 0;border-right:0;border-bottom:1px solid var(--line)}.investment-position-detail dl>div:last-child{border-bottom:0}.investment-events>div{align-items:flex-start;flex-direction:column;gap:.45rem;padding:.7rem 0}.investment-account-form{grid-template-columns:1fr}.investment-editor{width:100%}.instrument-confirmation{flex-direction:column}.instrument-confirmation span{text-align:left}.global-create-actions{right:max(.9rem,env(safe-area-inset-right));bottom:calc(136px + env(safe-area-inset-bottom))}.user-profile-form{grid-template-columns:1fr}.user-profile-form .button{width:100%}.user-access-actions{align-items:stretch;flex-direction:column}.user-access-actions .button{width:100%;text-align:center}.screener-backdrop{place-items:stretch;padding:0}.screener{width:100%;max-height:100dvh;min-height:100dvh;border:0;border-radius:0}.screener-header{padding:max(1rem,env(safe-area-inset-top)) 1rem 1rem}.screener-header h2{font-size:1.18rem}.screener-body{grid-template-columns:1fr;gap:1.35rem;padding:1.15rem 1rem 1.5rem}.screener-transaction h3{margin-top:1rem;font-size:1.05rem}.screener-examples{margin-top:1rem}.screener-actions{padding:.85rem 1rem max(.85rem,env(safe-area-inset-bottom))}.screener-actions .button{flex:1 1;min-width:0}.screener-review-actions{display:grid;grid-template-columns:1fr 1fr}.screener-review-actions .review-approve{grid-column:1/-1;grid-row:1}.transaction-search>div{grid-template-columns:minmax(0,1fr) auto}.transaction-search>div .button{min-width:0;padding-inline:.75rem}.transaction-search>div .secondary{grid-column:1/-1;grid-row:2;justify-self:start}.budget-editor-grid,.budget-editor-more>div,.budget-recurrence,.budget-recurrence-dates,.budget-schedule-fields{grid-template-columns:1fr}.month-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.budget-editor-body{padding:1rem}.budget-editor-actions{flex-wrap:wrap}.budget-editor-actions>span{display:none}.budget-editor-actions .danger-button{flex-basis:100%;margin-right:0}.global-budget-add{right:max(.9rem,env(safe-area-inset-right));bottom:calc(76px + env(safe-area-inset-bottom));width:50px;height:50px}.app-content .hero{padding:.25rem 0 2rem}.app-content .hero h1{font-size:clamp(2rem,10vw,2.8rem)}.budget-hero{align-items:stretch;flex-direction:column;gap:1.25rem}.category-detail-header{margin-bottom:1.25rem}.category-detail-summary{grid-template-columns:1fr 1fr;margin-bottom:2.25rem}.category-detail-summary>div{min-height:88px;padding:.85rem}.category-detail-summary>div:nth-child(2){border-right:0}.category-detail-summary>div:nth-child(n+3){border-top:1px solid var(--line)}.category-detail-summary>div:nth-child(3){padding-left:0}.category-detail-summary strong{font-size:1rem}.detail-row{grid-template-columns:30px minmax(0,1fr) auto;gap:.6rem}.detail-amount{max-width:94px}.detail-amount strong{font-size:.7rem}.period-navigator,.period-navigator-stack{width:100%}.period-navigator{grid-template-columns:42px minmax(0,1fr) 42px}.period-navigator>span{min-width:0;padding-inline:.35rem;font-size:.66rem;white-space:normal}.monthly-summary{grid-template-columns:1fr 1fr;margin-bottom:2.5rem}.monthly-summary>div{min-height:116px;padding:1rem .8rem}.monthly-summary>div:nth-child(odd){padding-left:0}.monthly-summary strong{font-size:1.12rem}.monthly-summary small{font-size:.58rem}.section-heading{align-items:flex-start;flex-direction:column;gap:.45rem}.analysis-table-wrap{overflow:visible}.table-wrap.analysis-table-wrap:has(thead) table{min-width:0}.analysis-table,.analysis-table tbody{display:block;width:100%}.analysis-table thead{display:none}.analysis-table tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;padding:.8rem 0;border-top:1px solid var(--line)}.analysis-table tbody th{grid-column:1/-1;padding:0 0 .7rem;border:0;white-space:normal}.analysis-table td{min-width:0;padding:0 .35rem 0 0;border:0;font-size:.72rem;text-align:left!important;overflow-wrap:anywhere}.analysis-table td:before{display:block;margin-bottom:.18rem;color:var(--muted);font-size:.52rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.analysis-table td:nth-child(2):before{content:"Budget"}.analysis-table td:nth-child(3):before{content:"Realiseret"}.analysis-table td:nth-child(4):before{content:"Pending"}.analysis-table td:nth-child(5):before{content:"Rest"}.analysis-sub-row{margin-left:1rem;width:calc(100% - 1rem)!important}.analysis-sub-row th{padding-left:0;font-size:.72rem}.budget-analysis-desktop{display:none}.budget-analysis-accordions{display:block;border-top:1px solid var(--line-strong)}.budget-analysis-accordion{border-bottom:1px solid var(--line)}.budget-analysis-accordion>summary{min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.8rem;gap:.8rem;padding:.75rem 0;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}.budget-analysis-accordion>summary::-webkit-details-marker{display:none}.budget-analysis-accordion>summary:after{content:"+";grid-column:3;color:var(--green);font-size:1.25rem;font-weight:500;line-height:1;transition:transform .16s ease}.budget-analysis-accordion[open]>summary:after{transform:rotate(45deg)}.budget-analysis-accordion>summary:active{background:color-mix(in srgb,var(--green) 8%,transparent)}.budget-accordion-title{min-width:0;display:flex;align-items:center;gap:.55rem;font-size:.92rem;font-weight:720}.budget-accordion-title>span{font-size:1.05rem}.budget-accordion-summary-value{display:grid;justify-items:end;grid-gap:.12rem;gap:.12rem;font-size:.72rem;font-weight:730;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.budget-accordion-summary-value small{color:var(--muted);font-size:.5rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.budget-accordion-content{padding:0 0 .85rem 1.6rem}.budget-accordion-amounts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:.65rem 0;border-top:1px solid var(--line)}.budget-accordion-amounts>div{min-width:0;display:grid;grid-gap:.22rem;gap:.22rem}.budget-accordion-amounts dt{color:var(--muted);font-size:.48rem;font-weight:720;letter-spacing:.06em;text-transform:uppercase}.budget-accordion-amounts dd{min-width:0;margin:0;overflow-wrap:anywhere;font-size:.66rem;font-weight:680;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.budget-accordion-amounts .pill{max-width:80px;white-space:normal}.budget-accordion-subcategory{padding-top:.85rem;border-top:1px solid var(--line)}.budget-accordion-subcategory h3{display:flex;align-items:center;gap:.45rem;margin:0 0 .35rem;font-size:.76rem;font-weight:650}.budget-analysis-accordion .budget-analysis-edit-links{display:grid;grid-gap:.2rem;gap:.2rem;margin:.2rem 0 .55rem}.budget-analysis-accordion .budget-analysis-edit-links a{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.65rem .7rem;border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--green) 7%,transparent);font-size:.72rem}.budget-analysis-accordion .budget-analysis-edit-links a:after{content:"Redigér ›";flex:0 0 auto;font-size:.6rem;font-weight:720}.budget-analysis-accordion .budget-analysis-edit-links a:active{transform:scale(.98);background:color-mix(in srgb,var(--green) 15%,transparent)}.wealth-table tr{grid-template-columns:repeat(3,minmax(0,1fr))}.wealth-table td:nth-child(2):before{content:"Budget"}.wealth-table td:nth-child(3):before{content:"Ind"}.wealth-table td:nth-child(4):before{content:"Ud"}.wealth-table td:nth-child(5):before{content:"Pending"}.wealth-table td:nth-child(6):before{content:"Netto"}.wealth-table td:nth-child(n+5){margin-top:.65rem}.planned-details .category-section .table-wrap{max-width:100%}.budget-items-table-wrap{width:100%;padding-right:0;overflow:visible}.table-wrap.budget-items-table-wrap:has(thead) table{min-width:0}.budget-items-table,.budget-items-table tbody{display:block;width:100%}.budget-items-table thead{display:none}.budget-items-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.35rem .7rem;gap:.35rem .7rem;width:100%;padding:.9rem 0;border-top:1px solid var(--line)}.budget-items-table td{min-width:0;padding:0;border:0;text-align:left;overflow-wrap:anywhere}.budget-items-table td:first-child{grid-column:1;grid-row:1}.budget-items-table td:nth-child(2){grid-column:1;grid-row:2;color:var(--muted);font-size:.72rem}.budget-items-table td:nth-child(3){grid-column:1;grid-row:3;color:var(--muted);font-size:.65rem}.budget-items-table td:nth-child(4){grid-column:1/-1;grid-row:4;margin-top:.25rem;color:var(--muted);font-size:.67rem}.budget-items-table td.amount{grid-column:2;grid-row:1;max-width:112px;font-size:.78rem;text-align:right}.budget-items-table .budget-item-open{width:100%;min-height:44px;justify-content:center}.dashboard-header{margin-bottom:0}.dashboard-header .lede{font-size:.82rem}.dashboard-budget-insight{max-width:none;min-height:0;padding-left:.7rem}.dashboard-period-sticky{top:72px;min-height:68px;margin:1rem 0 1.3rem}.dashboard-period-sticky .dashboard-header-actions{width:100%}.dashboard-header-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 48px}.dashboard-warning-popover{right:0}.monthly-budget-chart-header{align-items:flex-start;flex-direction:column;gap:.7rem;padding:.9rem}.monthly-budget-chart-header small{display:block;line-height:1.45}.monthly-budget-chart-grid{min-width:700px;height:190px;padding-inline:.7rem}.portfolio-development-header{align-items:flex-start;flex-direction:column;gap:.7rem;padding:.9rem}.portfolio-development-header small{display:block;line-height:1.45}.portfolio-development-svg{min-width:700px}.dashboard-page h1{font-size:clamp(1.95rem,9vw,2.65rem)}.asset-sale-value{grid-template-columns:1fr;align-items:stretch;gap:1rem}.asset-sale-value-result{grid-column:auto}.period-chip{width:100%}.dashboard-metrics{grid-template-columns:1fr 1fr;gap:.6rem}.dashboard-metrics-desktop{display:none}.dashboard-metrics-mobile{display:grid}.dashboard-metrics-mobile .metric-featured{grid-column:1/-1}.metric-card.dashboard-mobile-savings{display:flex;margin-top:.6rem}.metric-card{min-height:128px;flex-direction:column;gap:.2rem;padding:.85rem}.metric-card>div{width:100%;flex:1 1}.metric-card strong{font-size:1.22rem}.metric-card small{font-size:.6rem}.metric-icon{width:28px;height:28px;flex-basis:28px}.dashboard-grid{gap:.6rem}.dashboard-balance-summary{padding:2.25rem 0}.dashboard-balance-breakdown{grid-template-columns:1fr 1fr}.dashboard-balance-breakdown>div{padding-inline:.65rem}.dashboard-balance-breakdown>div:nth-child(3),.dashboard-balance-breakdown>div:nth-child(5){border-left:0}.dashboard-balance-breakdown>div:nth-child(n+3){margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.category-dial-list{scroll-snap-type:none}.category-dial-list,.category-dial-list-remaining{grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:hidden}.category-dial-list-remaining .category-dial-item:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.category-dial-item{min-height:162px;padding-inline:.45rem;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}.category-dial-item:nth-child(2n){border-right:0!important}.category-dial-copy strong{max-width:138px}.category-dial-copy em,.category-dial-copy small{max-width:145px;overflow:hidden;text-overflow:ellipsis}.category-dial{width:66px;height:66px;flex-basis:66px}.dashboard-category-detail{padding:0 .9rem .9rem}.dashboard-category-totals{grid-template-columns:1fr 1fr}.dashboard-category-totals>span{min-height:72px;padding:.75rem}.dashboard-category-totals>span:nth-child(2){border-right:0}.dashboard-category-totals>span:nth-child(n+3){border-top:1px solid var(--line)}.dashboard-category-totals>span:nth-child(3){padding-left:0}.dashboard-subcategory>summary{grid-template-columns:30px minmax(0,1fr) 16px}.subcategory-summary-amount{grid-column:2;align-items:flex-start;max-width:none;text-align:left}.subcategory-chevron{grid-column:3;grid-row:1}.subcategory-entries{padding-left:0}.subcategory-entries .detail-row{grid-template-columns:45px minmax(0,1fr) auto}.subcategory-entries .transaction-edit-row{grid-template-columns:minmax(0,1fr) auto}.panel-heading{min-height:64px;padding:.9rem}.budget-category-list{padding:.15rem .9rem .4rem}.budget-category-row{grid-template-columns:32px minmax(0,1fr) auto;gap:.65rem;padding:.75rem 0}.budget-category-copy{grid-column:2}.budget-values{grid-column:3;text-align:right}.budget-progress{grid-column:2/4;width:100%}.budget-remaining{grid-column:2/4;min-width:0;margin-top:-.35rem;text-align:left}.transactions-panel{order:3}.transaction-list{padding-inline:.9rem}.transaction-row{grid-template-columns:30px minmax(0,1fr) auto;gap:.6rem}.transaction-row>.amount{max-width:92px;overflow-wrap:anywhere;text-align:right}.transaction-table-wrap{width:100%;padding-right:0;overflow:visible}.table-wrap.transaction-table-wrap:has(thead) table{min-width:0!important}.transaction-table,.transaction-table tbody{display:block;width:100%}.transaction-table td:nth-child(2),.transaction-table td:nth-child(3),.transaction-table td:nth-child(4),.transaction-table td:nth-child(5),.transaction-table thead{display:none}.transaction-table tr{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;grid-column-gap:.8rem;column-gap:.8rem;padding:.95rem 0;border-top:1px solid var(--line)}.transaction-table td{min-width:0;padding:0;border:0}.transaction-table td:first-child,.transaction-table td:last-child{display:block}.transaction-description-cell>strong{display:block;overflow-wrap:anywhere}.transaction-date{margin-top:.25rem}.transaction-mobile-meta{display:flex;flex-wrap:wrap;gap:.25rem .55rem;margin-top:.45rem;color:var(--muted);font-size:.7rem;line-height:1.4}.transaction-mobile-meta>span+span:before{content:"·";margin-right:.55rem;color:var(--line-strong)}.transaction-mobile-status{color:var(--amber)}.transaction-table td.amount{padding-top:.05rem;font-size:.84rem;font-weight:700;text-align:right}.transaction-mobile-account{display:block;max-width:96px;margin-top:.28rem;overflow:hidden;color:var(--muted);font-size:.65rem;font-weight:500;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.match-table-wrap{width:100%;padding-right:0;overflow:visible}.table-wrap.match-table-wrap:has(thead) table{min-width:0}.match-table,.match-table tbody{display:block;width:100%}.match-table thead{display:none}.match-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.55rem .75rem;gap:.55rem .75rem;width:100%;padding:.9rem 0;border-top:1px solid var(--line)}.match-table td{min-width:0;padding:0;border:0;text-align:left;overflow-wrap:anywhere}.match-table td:first-child{grid-column:1;grid-row:1}.match-table td:nth-child(2){grid-column:1;grid-row:2}.match-table td.amount{grid-column:2;grid-row:1;max-width:112px;text-align:right}.match-table td:last-child{grid-column:1/-1;grid-row:3}.match-table form.inline{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;min-width:0}.match-table form.inline select{width:100%;max-width:none;min-width:0}.match-table-existing td:nth-child(2){grid-column:1/-1;grid-row:2;color:var(--muted)}.match-table-existing td:last-child{grid-column:2;grid-row:1;color:var(--ink)}.bank-account-table{width:100%;padding-right:0;overflow:visible}.table-wrap.bank-account-table:has(thead) table{min-width:0}.bank-account-table table,.bank-account-table tbody,.bank-account-table td,.bank-account-table tr{display:block;width:100%;max-width:100%;min-width:0}.bank-account-table td:first-child{min-width:0}.bank-account-table thead{display:none}.bank-account-table tr{padding:1rem 0;border-bottom:1px solid var(--line)}.bank-account-table td{padding:.4rem 0;border:0;text-align:left}.bank-account-table td.amount{display:flex;justify-content:space-between}.bank-account-table td:nth-child(3):before{content:"Bogført";color:var(--muted);font-size:.62rem}.bank-account-table td:nth-child(4):before{content:"Forventet";color:var(--muted);font-size:.62rem}.bank-account-settings{grid-template-columns:1fr;align-items:stretch}.bank-account-settings,.bank-account-settings input[type=text],.bank-account-settings label,.bank-account-settings select{width:100%;max-width:100%;min-width:0}.bank-account-settings .button{width:100%}.bank-connection-table{width:100%;padding-right:0;overflow:visible}.table-wrap.bank-connection-table:has(thead) table{min-width:0}.bank-connection-table table,.bank-connection-table tbody,.bank-connection-table td,.bank-connection-table tr{display:block;width:100%;max-width:100%;min-width:0}.bank-connection-table thead{display:none}.bank-connection-table tr{padding:.9rem 0;border-bottom:1px solid var(--line)}.bank-connection-table td{padding:.25rem 0;border:0}}