@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#243b33;background:#f7f8f2;font-synthesis:none;font-size:15px;--green: #234f3b;--muted: #657467;--line: #dde3d7;--red: #ad3535}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a{color:var(--green)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #6b9657;outline-offset:3px}input,select,textarea{width:100%;min-width:0;background:#fffef9;border:1px solid #bac7b6;border-radius:5px;color:#243b33;padding:11px 12px;line-height:1.3}input:focus,select:focus,textarea:focus{outline:2px solid #86a16c;outline-offset:1px}input:disabled,select:disabled{background:#eef0e8}label{display:flex;flex-direction:column;gap:7px;font-size:.86rem;font-weight:600}h1,h2,h3,.brand,strong{font-family:Manrope,sans-serif}h1{font-size:clamp(2rem,3.5vw,3rem);font-weight:600;letter-spacing:-.05em;line-height:1.12;margin:9px 0 12px}h2{font-size:1.16rem;letter-spacing:-.03em;font-weight:600;margin:0 0 8px}p{color:var(--muted);line-height:1.55;margin:8px 0 16px}.eyebrow{font-size:.69rem;letter-spacing:.14em;font-weight:700;color:#738165}.primary{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fffef3;border:1px solid var(--green);border-radius:5px;padding:12px 18px;font-weight:600;text-decoration:none;font-size:.9rem;min-height:44px}.primary:hover{background:#163f2c}.quiet{border:0;background:transparent;color:var(--green);padding:10px 12px;border-radius:4px;font-size:.88rem;min-height:42px}.quiet:hover{background:#e8eddf}.danger{color:var(--red)}.positive{color:#28764c}.negative,.error{color:var(--red)}.error{font-size:.9rem;line-height:1.4}.notice{background:#e9eddf;border:1px solid #d5dfc7;padding:14px 18px;margin:12px 0 24px;border-radius:4px;font-size:.9rem;line-height:1.5}.notice.error{background:#fff0e9;border-color:#e9c9ba}.notice button{margin-left:12px}.shell{display:grid;grid-template-columns:226px minmax(0,1fr);min-height:100dvh}.sidebar{background:#edf0e4;border-right:1px solid var(--line);padding:36px 25px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.brand{font-size:2.7rem;font-weight:800;letter-spacing:-.09em;text-decoration:none;color:var(--green);line-height:1}.brand>span{font-size:.65rem;vertical-align:top;letter-spacing:0;margin-left:4px}.brand-caption{font-size:.7rem;margin-top:12px;margin-bottom:55px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{font-size:.92rem;font-weight:500;text-decoration:none;color:#4b6051;padding:12px 15px;border-radius:5px}.sidebar nav a.router-link-exact-active{background:#dce5c9;color:#193f2d;font-weight:700}.sidebar-bottom{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center}.privacy-dot{font-size:.72rem;width:100%;margin-bottom:12px}.privacy-dot:before{content:"";display:inline-block;width:6px;height:6px;border-radius:100%;background:#708951;margin-right:7px}main{min-width:0;padding:48px clamp(22px,4vw,64px) 64px;max-width:1600px;width:100%}.page-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:34px}.page-header p{font-size:.92rem;margin-bottom:0}.period-label{min-width:165px}.period-label input{background:transparent}.balance-panel{border-bottom:1px solid #bdcaa7;padding:26px 0 32px;display:flex;justify-content:space-between;align-items:center}.balance-panel .eyebrow{display:block}.balance-panel strong{font-size:clamp(2.5rem,5vw,4rem);font-weight:500;letter-spacing:-.065em;display:block;line-height:1.3}.balance-panel p{font-size:.8rem;margin:8px 0 0}.balance-mark{font-size:6rem;color:#c0cda5;font-weight:400;line-height:1}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}.metrics>div{padding:17px 20px 20px 0;border-bottom:1px solid var(--line)}.metrics span,.account-value>span{display:block;font-size:.78rem;color:var(--muted);margin-bottom:10px}.metrics strong{font-size:clamp(1.1rem,2vw,1.6rem);font-weight:600;letter-spacing:-.04em}.closing{background:#edf0e4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px;margin:24px 0 45px}.closing span{font-size:.85rem}.closing strong{font-size:1.35rem;white-space:nowrap}.chart{padding:24px 0;border-top:1px solid var(--line);margin-bottom:26px;min-width:0}.chart header{display:flex;justify-content:space-between;gap:12px;align-items:center}.chart svg{display:block;width:100%;margin-top:18px;overflow:visible}.chart svg text{font-family:DM Sans,sans-serif;font-size:11px;fill:#74826e}.grid-line{stroke:#dce3d3;stroke-width:1;stroke-dasharray:4 6}.series{fill:none;stroke:#2f6649;stroke-width:2.5;stroke-linejoin:round}.projected{stroke:#a19f55;stroke-dasharray:5 3}.chart-point{fill:#2f6649}.legend{display:flex;gap:20px;font-size:.7rem;color:var(--muted);margin-top:10px}.legend>span:before{content:"";display:inline-block;width:18px;height:2px;background:#2f6649;vertical-align:middle;margin-right:8px}.legend .secondary-legend:before{background:#a19f55}.chart summary{font-size:.75rem;color:var(--muted);cursor:pointer}.chart-values{max-height:300px;overflow:auto;margin-top:15px}.chart-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px}.inline-label{flex-direction:row;align-items:center;white-space:nowrap;font-size:.75rem}.inline-label select{padding:7px;width:auto;max-width:180px}.month-navigation{display:flex;align-items:center;font-size:.8rem;white-space:nowrap}.empty{padding:60px 0;max-width:480px}.empty h2{font-size:1.6rem}.empty p{font-size:.95rem}.account-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;padding:28px 0;border-top:1px solid var(--line)}.account-row h2{margin:8px 0}.account-row p{font-size:.8rem;margin:0}.account-value{align-self:center}.account-value strong{font-size:1.7rem;letter-spacing:-.04em;font-weight:500;white-space:nowrap}.row-actions{display:flex;gap:2px;grid-column:1/-1;flex-wrap:wrap}.entry-row{display:grid;grid-template-columns:90px minmax(120px,1fr) auto auto;gap:18px;align-items:center;border-top:1px solid var(--line);padding:23px 0}.entry-row time{font-size:.78rem;color:var(--muted)}.entry-description h2{font-size:1rem;overflow-wrap:anywhere}.entry-description p{font-size:.78rem;margin-bottom:5px}.entry-row strong{font-size:1.15rem;white-space:nowrap}.entry-row .row-actions{justify-content:flex-end;margin-top:-10px}.status{font-size:.69rem;padding:5px 8px;background:#e7eddf;color:#4f6f47;border-radius:4px}.status.pending{background:#f2e9d3;color:#8a6618}.tags{display:flex;flex-wrap:wrap;gap:5px}.tags span{font-size:.65rem;color:#68735d;border:1px solid var(--line);padding:2px 6px;border-radius:3px}.tag-list article,.invitation-list article{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);padding:22px 0}.tag-list article h2,.invitation-list article>div:first-child{margin-right:auto;overflow-wrap:anywhere;min-width:0}.tag-list article>span{font-size:.8rem;color:var(--muted)}.invitation-list .row-actions{flex-wrap:nowrap}.security-section{padding:32px 0;border-top:1px solid var(--line);display:flex;gap:36px;align-items:center}.security-section>div{max-width:570px}.security-section .primary{flex-shrink:0;max-width:280px}.public-shell{display:block}.public-shell main{max-width:none;padding:0}.access-layout{min-height:100dvh;display:grid;grid-template-columns:1.1fr 1fr}.access-story{background:#e4ead5;display:flex;flex-direction:column;justify-content:space-between;padding:48px clamp(32px,6vw,90px)}.access-story h1{font-size:clamp(3.4rem,6.5vw,6.5rem);letter-spacing:-.065em;line-height:1.05;font-weight:500}.access-story h1 em{font-style:normal;color:#748c4b}.access-story>div{margin:50px 0}.access-story p{font-size:1rem}.access-story .story-footer{font-size:.75rem;margin:0}.access-form{align-self:center;max-width:500px;padding:55px 48px;width:100%;margin:auto}.access-form h2{font-size:2rem;letter-spacing:-.05em;margin-top:12px}.access-form form{display:flex;flex-direction:column;gap:18px;margin-top:34px}.access-form form p{margin:0}.access-note{font-size:.76rem;margin-top:34px;border-top:1px solid var(--line);padding-top:22px}.unlock-page{padding:60px 28px;max-width:500px;margin:auto;display:flex;flex-direction:column;align-items:flex-start;min-height:100dvh;justify-content:center}.unlock-page>.brand{margin-bottom:55px}.unlock-page>form{display:flex;flex-direction:column;gap:18px;width:100%;margin:22px 0}.modal{width:min(740px,calc(100vw - 24px));max-width:none;border:1px solid #c8d1bd;border-radius:8px;padding:22px 26px;background:#fbfcf6;color:#243b33;box-shadow:0 24px 80px #1e352933;overflow:visible}.modal::backdrop{background:#193d3366}.modal>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.modal h2{margin:0;font-size:1.2rem}.icon-button{border:0;background:transparent;font-size:1.6rem;color:var(--muted);width:32px;height:32px}.modal>footer{display:flex;gap:8px;align-items:center;margin-top:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.span-two{grid-column:1/-1}.form-hint{font-size:.76rem;margin:0}.compact{font-size:.78rem;line-height:1.4;margin:8px 0}.checkbox-label{flex-direction:row;align-items:center}.checkbox-label input{width:18px;height:18px}.recovery-code{display:block;font-size:.92rem;overflow-wrap:anywhere;letter-spacing:.03em;line-height:1.6;padding:10px 12px;background:#e8eddf;margin:8px 0 12px;-webkit-user-select:all;user-select:all}.modal textarea{resize:none;padding:7px 10px}table{border-collapse:collapse;width:100%;font-size:.78rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px;white-space:nowrap}th{font-weight:600}details[open] summary{margin-bottom:10px}@media(max-width:1000px){.shell{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding:30px 18px}.chart-pair{grid-template-columns:1fr}.security-section{align-items:flex-start;flex-direction:column;gap:10px}.entry-row{grid-template-columns:90px 1fr auto}.entry-row .status{grid-column:2}.entry-row>strong{grid-column:3;grid-row:1/3}}@media(max-width:650px){:root{font-size:14px}.shell{display:block}.sidebar{position:static;height:auto;padding:20px 18px 0;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:2.1rem}.brand-caption{display:none}.sidebar nav{flex-direction:row;flex-wrap:wrap;gap:0;margin:18px -6px 0}.sidebar nav a{font-size:.78rem;padding:10px 9px}.sidebar-bottom{position:absolute;right:12px;top:16px;gap:0}.sidebar-bottom .privacy-dot{display:none}.sidebar-bottom .quiet{padding:8px;min-height:36px;font-size:.78rem}main{padding:30px 20px 40px}.page-header{gap:15px;align-items:flex-start;margin-bottom:22px}.page-header h1{font-size:2.25rem}.page-header p{font-size:.82rem}.page-header .primary{padding:10px;font-size:.8rem;flex-shrink:0;margin-top:26px}.period-label{min-width:125px;max-width:145px;font-size:.75rem}.period-label input{padding:8px;font-size:.82rem}.balance-panel{padding-top:14px}.balance-panel strong{font-size:2.65rem}.balance-mark{font-size:4rem}.metrics{grid-template-columns:1fr 1fr}.metrics>div{padding:16px 8px 17px 0}.metrics>div:nth-child(3){grid-column:1/-1}.metrics>div:nth-child(6){grid-column:1/-1}.metrics strong{font-size:1.4rem}.closing{padding:16px;align-items:flex-start;flex-direction:column}.chart header{align-items:flex-start;flex-wrap:wrap}.chart h2{font-size:1.1rem}.chart svg{min-height:160px}.account-row{gap:15px;padding:22px 0}.account-value strong{font-size:1.3rem}.account-row .eyebrow{font-size:.62rem}.account-row h2{font-size:1.1rem;overflow-wrap:anywhere}.entry-row{grid-template-columns:1fr auto;gap:8px 12px}.entry-row time{grid-column:1}.entry-description{grid-column:1;grid-row:2}.entry-row .status{grid-column:1;width:fit-content}.entry-row>strong{grid-column:2;grid-row:1/3}.entry-row .row-actions{margin-top:0}.tag-list article{flex-wrap:wrap;gap:5px}.tag-list article h2{flex-basis:65%;font-size:1rem}.tag-list article>span{margin-right:auto}.invitation-list article{display:block}.invitation-list .row-actions{margin-top:10px}.access-layout{display:block;min-height:100dvh}.access-story{padding:24px}.access-story>div{margin:24px 0 0}.access-story h1{font-size:2.7rem}.access-story h1 br{display:none}.access-story h1 em{white-space:nowrap}.access-story>div>p,.story-footer{display:none}.access-form{padding:32px 24px}.access-form h2{font-size:1.7rem}.access-form form{margin-top:24px}.unlock-page{padding:32px 24px;min-height:85dvh}.modal{padding:14px 16px;width:calc(100vw - 20px)}.modal h2{font-size:.97rem}.modal>header{margin-bottom:12px;gap:4px}.modal>footer{margin-top:14px;gap:4px}.modal label{font-size:.73rem;gap:5px}.modal input,.modal select{padding:8px;font-size:.82rem;min-height:35px}.modal .form-grid{gap:10px 12px}.modal .primary,.modal .quiet{font-size:.76rem;padding:9px 10px;min-height:36px}.modal .compact{font-size:.72rem;line-height:1.3;margin:6px 0}.recovery-code{font-size:.75rem;line-height:1.45;letter-spacing:0;padding:8px;margin:6px 0 8px}.modal textarea{font-size:.78rem;line-height:1.25;min-height:44px}.modal .error{overflow-wrap:anywhere}.security-section .primary{max-width:none}}@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .12s ease,color .12s ease}.access-story>div{animation:enter .45s ease-out}@keyframes enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
