.sage-tip{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 32px;gap:12px;width:min(440px,100%);box-sizing:border-box;margin:16px 0 20px auto;padding:16px 12px 10px 16px;border:1px solid #d0dbcf;border-radius:8px;background:#fbfaf3;color:#263e35;box-shadow:0 8px 28px #233e3514;animation:sage-arrive .25s ease-out}.sage-avatar{width:56px;height:56px;object-fit:cover;border-radius:50%;border:1px solid #cfbe8e}.sage-byline{color:#536c5c;font-size:.7rem}.sage-copy{min-width:0;overflow-wrap:anywhere}.sage-copy h3{font-family:Georgia,serif;font-size:1.12rem;line-height:1.3;margin:3px 0 7px;font-weight:500}.sage-copy p{font-size:.83rem;line-height:1.5;margin:0;color:inherit}.sage-tip [role=status]{color:inherit}.sage-tip .sage-dismiss{background:transparent;color:inherit;min-width:44px;width:44px;height:44px;min-height:44px;padding:0;position:relative;right:8px;top:-8px}.sage-tip .sage-action{min-height:44px;padding:8px 0;justify-content:flex-start;background:transparent;color:#275744;font-size:.8rem;gap:8px}.sage-mute{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.68rem;line-height:1.4;color:#536458;cursor:pointer}.sage-mute input,.sage-setting-row input{width:18px;height:18px;min-height:18px;flex:0 0 18px;accent-color:#42674d}.sage-tip :focus-visible,.sage-settings :focus-visible{outline:3px solid #8b6e31;outline-offset:3px}.sage-settings{padding-block:18px;border-bottom:1px solid #ccd8cf}.sage-setting-row{display:flex;align-items:center;gap:12px;min-height:52px;font-size:.88rem}.sage-setting-row>span{margin-right:auto}.sage-setting-row select{width:auto;max-width:55%;min-height:44px;font-size:.85rem}.sage-setting-row strong{min-width:24px;font-size:.8rem}.retreat-dashboard>.sage-tip{margin-right:20px}@media(min-width:1000px){.retreat-dashboard>.sage-tip{position:fixed;right:20px;bottom:20px;z-index:9;margin:0}.retreat-dashboard:has(>.sage-tip){padding-bottom:230px}}[data-theme=dark] .sage-tip{color:#e4ece1;background:#252f28;border-color:#50604e;box-shadow:0 8px 28px #0003}[data-theme=dark] .sage-tip [role=status]{color:#e4ece1}[data-theme=dark] .sage-byline,[data-theme=dark] .sage-mute{color:#bfccb9}[data-theme=dark] .sage-tip .sage-action{color:#d4dfbd}@keyframes sage-arrive{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:599px){.sage-tip{grid-template-columns:40px minmax(0,1fr) 28px;gap:8px;padding:12px 8px 6px 12px;margin:10px auto}.sage-avatar{width:40px;height:40px}.sage-copy h3{font-size:1rem}.sage-copy p{font-size:.78rem}.retreat-dashboard>.sage-tip{width:calc(100% - 24px);margin:12px}}@media(prefers-reduced-motion:reduce){.sage-tip{animation:none}}.ledger-table-tools{position:relative;margin-top:10px;min-width:0}.ledger-match-count{display:block;min-height:18px;margin-bottom:3px;text-align:right;color:#61736a;font-size:.68rem;white-space:nowrap}.ledger-column-headings{overflow:visible;border-top:1px solid #d8e2dc}.ledger-column-control{position:relative;min-width:0}.ledger-column-control:last-child{text-align:right}.ledger-column-button{display:inline-flex;align-items:center;gap:4px;width:auto;min-height:32px;padding:4px 2px;border:0;border-radius:3px;color:#65776f;background:transparent;font-size:.65rem;text-transform:uppercase}.ledger-column-control:last-child .ledger-column-button{justify-content:flex-end}.ledger-column-button:hover,.ledger-column-button[aria-expanded=true],.ledger-column-control.filtered .ledger-column-button{color:#1f5748;background:#e8f0eb}.ledger-filter-menu{position:absolute;z-index:20;top:calc(100% + 3px);left:0;width:min(260px,calc(100vw - 32px));padding:8px;color:var(--retreat-ink);background:var(--retreat-paper);border:1px solid #b9cbc0;border-radius:6px;box-shadow:0 10px 26px #18342f2e;text-align:left;text-transform:none}.ledger-column-control:last-child .ledger-filter-menu{right:0;left:auto}.ledger-filter-menu>button{display:flex;align-items:center;gap:8px;width:100%;min-height:38px;padding:7px 8px;color:var(--retreat-ink);background:transparent;border:0;text-align:left;font-size:.78rem}.ledger-filter-menu>button svg:last-child{margin-left:auto}.ledger-filter-menu>button:hover,.ledger-filter-menu>button.active{background:#e8f0eb}.ledger-filter-menu label{display:grid;gap:5px;margin-top:5px;padding-top:8px;border-top:1px solid var(--retreat-line);font-size:.72rem}.ledger-filter-menu label>span{display:flex;align-items:center;gap:6px}.ledger-filter-menu input{width:100%;min-width:0;min-height:38px;padding:6px 8px;border:1px solid #b9cbc0;background:#fff;color:#18342f}.ledger-filter-actions{display:flex;justify-content:space-between;gap:6px;margin-top:8px}.ledger-filter-actions button{min-height:36px;padding:6px 8px;color:var(--retreat-ink);background:transparent;font-size:.72rem}.ledger-filter-actions button:last-child{display:inline-flex;align-items:center;gap:4px}.ledger-table-tools :focus-visible{outline:2px solid #886c37;outline-offset:2px}[data-theme=dark] .ledger-column-headings{border-color:#34434d}[data-theme=dark] .ledger-match-count,[data-theme=dark] .ledger-column-button{color:#b8c8be}[data-theme=dark] .ledger-column-button:hover,[data-theme=dark] .ledger-column-button[aria-expanded=true],[data-theme=dark] .ledger-column-control.filtered .ledger-column-button,[data-theme=dark] .ledger-filter-menu>button:hover,[data-theme=dark] .ledger-filter-menu>button.active{color:#edf1e9;background:#354c3e}[data-theme=dark] .ledger-filter-menu{border-color:#506151;box-shadow:0 10px 26px #0006}@media(max-width:720px){.ledger-column-headings{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:2px!important;padding:2px 0!important}.ledger-column-headings.account-activity-columns{padding-right:0!important}.ledger-column-button{width:100%;justify-content:center!important;font-size:.58rem}.ledger-column-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ledger-filter-menu{width:calc(400% + 6px);max-width:none;right:auto}.ledger-column-control:nth-child(1) .ledger-filter-menu{left:0}.ledger-column-control:nth-child(2) .ledger-filter-menu{left:calc(-100% - 2px)}.ledger-column-control:nth-child(3) .ledger-filter-menu{left:calc(-200% - 4px);right:auto}.ledger-column-control:nth-child(4) .ledger-filter-menu{right:0;left:auto}}.activity-name{overflow-wrap:anywhere}.activity-name .activity-name-edit{display:inline-flex;vertical-align:middle;margin-left:4px;padding:4px;width:28px;height:28px;min-height:28px;background:transparent;border:0}.activity-name .activity-name-edit[hidden]{display:none}.activity-name-editor{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;margin:4px 0}.activity-name-editor input{flex:1 1 130px;min-width:0;width:100%}.activity-name-editor .icon-button{flex:0 0 36px;width:36px;height:36px;min-height:36px;padding:6px}.activity-name-error{flex-basis:100%;color:var(--retreat-ink)}@media(pointer:coarse){.activity-name .activity-name-edit,.activity-name-editor .icon-button{width:44px;height:44px;min-height:44px}}.account-reconciliation{flex:0 0 100%;order:3;min-width:0}.posting-notice{margin:0;padding:8px 18px;font-size:.8rem;border-bottom:1px solid var(--retreat-line)}.reconciliation-trigger{padding:5px 9px;min-height:32px;font-size:.78rem}.ledger-accounts .reconciliation-trigger{position:absolute;z-index:1;top:12px;right:76px}.ledger-accounts .record-summary,.ledger-accounts .account-activity-columns{padding-right:190px}.reconciliation-editor{padding:12px 0;border-block:1px solid var(--retreat-line);max-width:760px}.reconciliation-editor header{display:flex;justify-content:space-between;align-items:center;gap:12px}.reconciliation-editor h3{font-size:1rem;margin:0}.reconciliation-inputs{display:grid;grid-template-columns:minmax(110px,1fr) minmax(180px,2fr);gap:10px;margin-top:10px}.reconciliation-inputs label{display:grid;gap:5px;font-size:.8rem;min-width:0}.reconciliation-inputs input,.reconciliation-inputs select{width:100%;min-width:0;border:1px solid var(--retreat-line);color:var(--retreat-ink);background:var(--retreat-paper);padding:8px}.reconciliation-inputs input{font-size:1.4rem;font-variant-numeric:tabular-nums}.reconciliation-note{font-size:.8rem;margin:8px 0}.reconciliation-pending{max-height:220px;overflow:auto}.reconciliation-pending .checkbox-label{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--retreat-line)}.reconciliation-pending span{flex:1;min-width:0;overflow-wrap:anywhere}.reconciliation-pending small{display:block}.reconciliation-pending strong{white-space:nowrap;font-variant-numeric:tabular-nums}.reconciliation-preview{margin:12px 0}.reconciliation-preview>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.reconciliation-preview dd{margin:0;white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}@media(max-width:720px){.ledger-accounts .reconciliation-trigger{top:9px;width:34px;min-width:34px;height:34px;min-height:34px;padding:6px}.ledger-accounts .reconciliation-trigger span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ledger-accounts .record-summary{padding-right:0}.ledger-accounts .record-summary .flow-payee{padding-right:114px!important}}@media(max-width:560px){.reconciliation-inputs{grid-template-columns:minmax(0,1fr)}.reconciliation-preview{font-size:.8rem}}:root{color:#24352f;background:#eef3f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;letter-spacing:0}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit;border-radius:6px}button,input,select{min-height:44px}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#174f43;color:#fff;border:1px solid transparent;padding:10px 16px;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:3px solid #8070ba;outline-offset:3px}.secondary{color:#354b43;background:#edf2ef;border-color:#dce5df}.icon-button{padding:0;flex:0 0 44px;width:44px;height:44px}h1,h2,h3,p{overflow-wrap:anywhere}h2{font-size:1.05rem;margin:0}p{line-height:1.5}.muted{display:block;color:#63746c;font-size:.87rem;margin:8px 0}.app-shell{min-height:100dvh;padding-bottom:calc(84px + env(safe-area-inset-bottom));background:#eef3f0}.app-shell>header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:calc(12px + env(safe-area-inset-top)) 20px 12px;background:#f7faf7eb;border-bottom:1px solid #d4dfd9;gap:12px;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.app-shell>main{width:min(1160px,100%);min-width:0;padding:24px;margin:0 auto}nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #d7e0dc;background:#f9fbf9f2;-webkit-backdrop-filter:blur(18px) saturate(1.12);backdrop-filter:blur(18px) saturate(1.12)}nav button{min-width:0;flex-direction:column;background:transparent;color:#64736d;padding:6px 2px;gap:4px;font-size:.7rem}nav button.active{color:#174f43;background:#e7f0eb}.dashboard{display:grid;gap:22px}.hero-panel{padding:28px;color:#fff;background:#174f43;border-radius:8px}.hero-panel p{margin:0}.hero-panel h1{margin:8px 0;font-size:3rem;line-height:1.1}.hero-panel span{font-size:.85rem;color:#c9e3d7}.weather-section{padding:0 4px 16px;border-bottom:1px solid #dfe5e1}.weather-section p{font-size:.9rem;color:#5d6b67;margin-bottom:0}.panel-head,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.weather{padding:6px 10px;background:#e0ece3;border-radius:6px;font-size:.78rem}.weather.storm,.weather.rain{background:#e8e4f0;color:#5e507c}.weather.partly_cloudy{background:#fbefcd;color:#6d602f}.home-columns{display:grid;gap:28px;min-width:0}.home-overview{min-width:0}.home-section{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #dfe5e1}.home-section p{font-size:.9rem}.summary-amount{display:block;font-size:1.8rem;margin-top:8px}.mini-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;font-size:.9rem}.mini-row small{display:block;color:#63746c;margin-top:4px}.money-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border-bottom:1px solid #dfe5e1;margin-bottom:26px}.money-tabs button{background:transparent;color:#63746c;border-radius:0;padding:12px 4px;border-bottom:3px solid transparent}.money-tabs button[aria-selected=true]{color:#174f43;border-bottom-color:#174f43;font-weight:600}.growth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;border-bottom:1px solid #dfe5e1;margin-bottom:26px}.growth-tabs button{background:transparent;color:#63746c;border-radius:0;padding:12px 4px;border-bottom:3px solid transparent}.growth-tabs button[aria-selected=true]{color:#174f43;border-bottom-color:#174f43;font-weight:600}.view-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.view-heading h2{font-size:1.15rem}.entry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:12px 0;margin:10px 0;border-block:1px solid #dfe5e1}.entry-form label{display:grid;gap:5px;font-size:.78rem;color:#596b76}.entry-form>label:first-child{grid-column:1 / -1}.entry-form input,.entry-form select,.entry-form textarea{min-width:0;width:100%;border:1px solid #aabbb2;padding:8px 10px;color:#24312e;background:#fff}.entry-form .checkbox-label{display:flex;align-items:center}.checkbox-label input{width:22px}.form-actions{display:flex;flex-wrap:wrap;gap:8px;grid-column:1 / -1}.compact-entry .form-actions button{flex:1;justify-content:center;padding:8px 12px}.starter-categories{grid-column:1 / -1;border-block:1px solid #dfe5e1}.starter-categories summary{min-height:44px;padding:11px 0;cursor:pointer;font-size:.82rem;font-weight:600;color:#3b5160}.starter-categories section{padding:8px 0}.starter-categories section>strong{display:block;margin-bottom:6px;font-size:.75rem;color:#697782}.starter-options{display:flex;flex-wrap:wrap;gap:6px}.starter-options button{min-height:36px;padding:6px 10px;font-size:.78rem}.starter-options button[aria-pressed=true]{color:#fff;background:#5d5278;border-color:#5d5278}.resource-list{padding:0;list-style:none}.resource-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px 10px;align-items:center;padding:14px 0;border-bottom:1px solid #e2e7e4}.resource-list li>div{min-width:0;overflow-wrap:anywhere}.resource-list p{margin:6px 0 0;color:#63746c;font-size:.8rem}.resource-list li>strong{grid-column:2;grid-row:1;font-size:.9rem}.record-actions{grid-column:3;grid-row:1;display:flex;gap:4px}.record-actions .icon-button{min-width:44px}.bill-edit-form{grid-column:1 / -1;width:100%;background:#f7f8fb;padding:12px;border:1px solid #dce2ed;border-radius:6px}.account-tag{grid-column:1 / 3;grid-row:2;font-size:.78rem;color:#645985}.transaction-account-balance{display:inline-block;margin-left:10px;color:#426256;font-variant-numeric:tabular-nums}.activity-balances{margin:12px 0;padding:12px 0;border-block:1px solid #d4dfd9}.activity-balances h3{margin:0 0 8px;font-size:.78rem;font-weight:500;color:#63746c}.activity-balances>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:12px 20px}.activity-balance{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere;font-size:.8rem}.activity-balance strong{font-size:.9rem;font-variant-numeric:tabular-nums}.activity-balance small{font-size:.7rem;color:#63746c}[data-theme=dark] .activity-balances{border-color:#40534a}[data-theme=dark] .activity-balances h3,[data-theme=dark] .activity-balance small,[data-theme=dark] .transaction-account-balance{color:#adcbbd}.income-destination{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:.8rem;color:#63746c}.income-destination label{display:grid;gap:5px}.income-destination select{width:100%;min-width:0;padding:8px;border:1px solid #aabbb2;color:#24312e;background:#fff}.payday-planner{grid-column:1 / -1;min-width:0;margin-top:4px;border-top:1px solid #dfe5e1}.payday-plan-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px}.payday-plan-summary span{min-width:0;font-size:.8rem}.payday-plan-summary span>strong{font-family:Georgia,serif;font-size:1rem;font-weight:400}.payday-plan-summary small{display:block;margin-top:2px;color:#63746c;font-size:.68rem}.payday-plan-summary button{min-height:40px;padding:7px 10px;font-size:.78rem;white-space:nowrap}.payday-planner.open{margin-top:8px;padding:12px;background:#f5f8f6;border:1px solid #d5dfda;border-radius:6px}.payday-plan-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:10px;font-size:.78rem}.payday-plan-heading span>strong{font-family:Georgia,serif;font-size:1.1rem;font-weight:400}.payday-plan-rows{display:grid;gap:7px}.payday-plan-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(170px,auto) 44px;align-items:end;gap:7px;min-width:0}.payday-plan-row label{display:grid;grid-template-columns:minmax(0,1fr) minmax(92px,.45fr);align-items:center;gap:8px;min-width:0;color:#344b43;font-size:.78rem}.payday-plan-row input,.payday-plan-add select{width:100%;min-width:0;padding:8px 10px;color:#24312e;background:#fff;border:1px solid #aabbb2}.plan-suggestion{min-height:44px;justify-content:flex-start;padding:6px 9px;color:#31584c;background:#e6f0eb;border-color:#cfe0d7;font-size:.72rem}.plan-suggestion small{display:block;color:#5e756c;font-size:.62rem}.payday-plan-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:8px}.payday-plan-add button{padding-inline:11px}.payday-suggestions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid #d9e2dd}.payday-suggestions>strong{grid-column:1 / -1;color:#596b64;font-size:.72rem}.payday-suggestions button{display:grid;justify-items:start;gap:2px;min-width:0;padding:8px;text-align:left}.payday-suggestions button span,.payday-suggestions button strong,.payday-suggestions button small{max-width:100%;overflow-wrap:anywhere}.payday-suggestions button span{font-size:.7rem}.payday-suggestions button strong{font-size:.78rem}.payday-suggestions button small{color:#66766f;font-size:.62rem}.payday-remainder{margin-top:10px;color:#596b64;font-size:.74rem}.payday-planner .form-actions{margin-top:10px}.delete-button{grid-column:3;grid-row:1;background:transparent;color:#9a4851}.delete-confirmation{padding:18px 0;border-block:2px solid #eed6d8;margin-top:20px}.delete-confirmation h3{margin-top:0}.danger{background:#943e4b}.empty-state{padding:24px 0;color:#63746c}[role=alert]{color:#932d36}[role=status]{color:#28614d}.settings-list{display:grid;grid-template-columns:1fr auto;gap:24px;margin:0 0 32px}.settings-list dd{margin:0}.settings-list{grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:14px}.settings-list dd,.settings-list dt{overflow-wrap:anywhere}.record-details{grid-column:1 / -1;display:grid;gap:10px}.record-details label{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.record-details select{max-width:100%;background:#fff;color:#24312e;border:1px solid #aabbb2;padding:8px}.record-details .settings-list{margin:12px 0;font-size:.85rem}.entry-form fieldset{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;min-width:0;border:0;padding:0}.entry-form fieldset legend{font-weight:600;padding:0 0 8px}.entry-form fieldset label{display:grid}.top-envelopes{margin-bottom:0}.envelope-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:18px;margin-top:16px}.envelope-grid article{padding:14px 0;border-top:2px solid #a598bb;min-width:0}.envelope-grid h3{font-size:.95rem;margin:0 0 8px}.envelope-grid strong{overflow-wrap:anywhere}.envelope-grid p{color:#63746c}.money-guide{border-block:1px solid #dfe5e1;padding:8px 0}.money-guide summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:600}.money-guide summary:focus-visible{outline:3px solid #8070ba}.money-guide p{font-size:.9rem;max-width:75ch}.money-guide .settings-list{max-width:680px;margin:20px 0;font-size:.9rem}.signin-shell{position:relative;min-height:100dvh;overflow-x:hidden;background:#17332c;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:40px;padding:56px clamp(24px,6vw,72px)}.signin-shell .signin-art{position:fixed;inset:0;z-index:0;width:100%;height:100%;object-fit:cover}.signin-shell:before{content:"";position:fixed;inset:0;z-index:1;background:#08120e4d}.signin-hero{order:1;position:relative;z-index:2;display:grid;gap:22px;color:#fff;max-width:560px;flex:1 1 480px}.signin-hero-scrim{background:#0a161194;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:14px;padding:22px 26px}.signin-logo{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.01em}.signin-eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600;color:#d8e8de;margin-bottom:10px}.signin-hero h1{font-family:Georgia,Times New Roman,serif;font-weight:500;font-size:clamp(2.4rem,4vw,3.6rem);margin:0 0 12px;line-height:1.05}.signin-hero-copy p{max-width:46ch;color:#eef4f0;font-size:1rem;line-height:1.55;margin:0}.signin-features{list-style:none;margin:0;padding:0;display:grid;gap:16px}.signin-features li{display:flex;align-items:flex-start;gap:10px}.signin-features li>svg{flex:0 0 auto;margin-top:2px;color:#bfe3c9}.signin-features strong{display:block;font-size:.86rem;color:#fff}.signin-features span{display:block;font-size:.78rem;color:#d8e6dc;max-width:30ch;margin-top:2px}.signin-panel{order:2;position:relative;z-index:2;display:flex;flex:0 1 auto}.signin-card{width:min(400px,88vw);padding:32px 28px;background:#fbfdfbf7;border-radius:14px;box-shadow:0 24px 60px #08141073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@media(min-height:760px){.signin-panel{align-self:center}}.signin-card-eyebrow{display:flex;align-items:center;gap:6px;text-transform:uppercase;font-size:.68rem;letter-spacing:.1em;font-weight:700;color:#6b8a3f;margin-bottom:12px}.signin-card h2{font-family:Georgia,Times New Roman,serif;font-weight:500;font-size:1.9rem;margin:0 0 6px;color:#1c2b25}.signin-card-subtitle{color:#5c6d66;font-size:.9rem;margin:0 0 18px}.signin-form{display:grid;gap:14px;margin:0}.signin-form label{display:grid;gap:5px;font-size:.78rem;color:#596b76}.signin-form input{min-width:0;width:100%;border:1px solid #aabbb2;padding:10px 12px;color:#24312e;background:#fff}.signin-field-row{display:grid;gap:5px}.signin-field-row .link-button{justify-self:end;margin-top:-26px}.signin-form>button{width:100%;justify-content:center}.signin-notice{color:#174f43}.link-button{min-height:auto;padding:2px 0;width:fit-content;justify-self:start;background:transparent;color:#244f59;border:0;text-decoration:underline;font-size:.84rem}.signin-switch{font-size:.88rem;margin:14px 0 0;text-align:center}.signin-switch .link-button{display:inline;padding:0}.signin-mfa-note{display:flex;align-items:center;justify-content:center;gap:6px;color:#63746c;font-size:.74rem;text-align:center;margin:14px 0 0}.authenticator-key{display:block;padding:8px 10px;margin-top:4px;font-size:.95rem;letter-spacing:.04em;background:#edf2ef;border-radius:6px;word-break:break-all}@media(max-width:860px){.signin-shell{padding:24px;justify-content:center}.signin-hero{display:none}}.remember-browser{display:flex;align-items:flex-start;gap:10px;margin:20px 0 14px;padding:12px;color:#31463e;background:#f7faf7b8;border:1px solid #d6e0da;border-radius:6px;cursor:pointer}.remember-browser input{flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;accent-color:#244f59}.remember-browser span{display:grid;gap:3px}.remember-browser strong{font-size:.84rem}.remember-browser small{color:#63746c;font-size:.72rem;line-height:1.4}@media(min-width:720px){.app-shell{padding-bottom:0;display:grid;grid-template-columns:160px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"header header" "navigation content"}.app-shell>header{grid-area:header}.app-shell>main{grid-area:content}nav{grid-area:navigation;position:sticky;inset:70px auto auto;height:calc(100dvh - 70px);align-self:start;grid-template-columns:1fr;grid-auto-rows:48px;align-content:start;padding:20px 12px;gap:8px;border-top:0;border-right:1px solid #dfe5e1}nav button{flex-direction:row;justify-content:start;padding:12px;font-size:.88rem;gap:10px}}@media(min-width:1080px){.home-columns{grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr)}}@media(max-width:479px){.app-shell>main{padding:16px}.entry-form,.entry-form fieldset,.income-destination{grid-template-columns:1fr}.hero-panel{padding:22px}.hero-panel h1{font-size:2.65rem}.resource-list li{gap:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.app-shell>header{background:#f8faf8eb;border-color:#d6e0da;min-height:76px}header strong{display:block;font-size:.75rem;font-weight:500;color:#74778d;margin-top:3px}.app-shell>main{container-type:inline-size}button{background:#244f59}.secondary{background:#eef1f6;border-color:#e0e5ee;color:#3b5160}nav{background:#f9fbf9f2;border-color:#d6e0da}nav button.active{background:#e9edf6;color:#304e67}.financial-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;background:#204952;color:#fff;border-block:1px solid #49656d;overflow:hidden}.hero-panel{background:transparent;border-radius:0;padding:14px 18px;min-width:0}.hero-panel h1{font-family:Georgia,serif;font-weight:400;font-size:2.1rem;margin:2px 0;overflow-wrap:anywhere}.hero-panel p{font-size:.78rem;color:#e4eaf0}.hero-panel span{color:#c8d8e1;line-height:1.6;display:block}.hero-amount{display:flex;align-items:baseline;gap:8px 14px;flex-wrap:wrap}.financial-overview .icon-button{color:#e7d7b5;background:transparent}.top-envelopes{padding:14px 18px;border-left:1px solid #ffffff26;border-bottom:0;min-width:0}.top-envelopes h2{font-size:.78rem;font-weight:500;color:#e4eaf0}.top-envelope-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px}.top-envelope-summary h3{margin:0;color:#d0dce9;font-size:.75rem;font-weight:500}.top-envelope-summary>strong{font-family:Georgia,serif;font-size:1rem;font-weight:400;text-align:right}.top-envelope-summary p{margin:2px 0 0;color:#c8d8e1;font-size:.68rem}.top-bill-reserve{display:flex;justify-content:space-between;gap:8px;margin-top:6px;padding-top:6px;border-top:1px solid #ffffff35;color:#dbe4e8;font-size:.68rem}.top-empty{margin:0;color:#c8d8e1;font-size:.75rem}.envelope-grid{display:flex;grid-template-columns:none;gap:16px;margin:4px 0 0;overflow-x:auto;scrollbar-width:thin}.envelope-grid article{flex:0 0 min(230px,82vw);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px;padding:0;border:0}.envelope-grid h3{font-size:.8rem;font-weight:500;color:#d0dce9;margin:0}.envelope-grid strong{font-size:1rem;font-family:Georgia,serif;font-weight:400;text-align:right}.envelope-grid p{grid-column:1 / -1;color:#c8d8e1;font-size:.7rem;margin:0}.weather-section{padding:0 0 16px;border-color:#e0e4ee}.weather-section p{color:#63717e;font-size:.85rem}.weather{background:#e7f0ed;color:#365c55}.weather.storm,.weather.rain{background:#eeeaf5;color:#655c81}.home-columns{grid-template-columns:minmax(0,1fr)}.home-section{border-color:#e0e4ee}.home-section h2{font-family:Georgia,serif;font-weight:400;font-size:1.3rem}.money-guide{border:0;padding:0}.settings-list{font-size:.85rem}.cash-flow-view{min-width:0}.cash-flow-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid #dce2ed}.cash-flow-heading h2{font-family:Georgia,serif;font-size:1.3rem;font-weight:400;margin:0}.cash-flow-heading p{color:#667681;font-size:.78rem;margin:4px 0 0}.cash-flow-heading label{display:grid;gap:4px;color:#667681;font-size:.7rem}.cash-flow-heading input{min-width:0;width:145px;padding:6px 8px;border:1px solid #aab7c3;color:#26373f;background:#fff}.cash-flow-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #dce2ed}.cash-flow-totals>div{min-width:0;padding:14px 10px;border-right:1px solid #e3e7ee}.cash-flow-totals>div:first-child{padding-left:0}.cash-flow-totals>div:last-child{padding-right:0;border-right:0}.cash-flow-totals span{display:block;color:#667681;font-size:.72rem;margin-bottom:4px}.cash-flow-totals strong{display:block;font-family:Georgia,serif;font-size:1.15rem;font-weight:400;overflow-wrap:anywhere}.money-in{color:#28634f}.money-out{color:#8a4954}.money-net{color:#2e5367}.cash-flow-list-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:18px 0 8px}.cash-flow-list-heading h3{font-size:.9rem;margin:0}.cash-flow-list-heading span{color:#667681;font-size:.72rem;text-align:right}.cash-flow-list{list-style:none;margin:0;padding:0;border-top:1px solid #e3e7ee}.cash-flow-list li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:11px 0;border-bottom:1px solid #e3e7ee}.flow-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%}.flow-icon.inflow{color:#28634f;background:#e6f0ec}.flow-icon.outflow{color:#8a4954;background:#f3e9eb}.cash-flow-list li>div{min-width:0}.cash-flow-list li>div>strong{display:block;font-size:.83rem;overflow-wrap:anywhere}.cash-flow-list li>div>span{display:block;color:#687783;font-size:.7rem;margin-top:3px;overflow-wrap:anywhere}.flow-amount{text-align:right}.flow-amount strong{white-space:nowrap}.flow-amount span{font-size:.66rem!important}.cash-flow-note{color:#687783;font-size:.72rem;margin:12px 0 0}@container (min-width: 560px){.financial-overview{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.top-envelopes{border-top:0;border-left:1px solid #ffffff26}}@container (min-width: 820px){.home-columns{grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:32px}}@media(min-width:720px){nav{top:76px;height:calc(100dvh - 76px)}}@media(max-width:719px){.haven-scene{height:380px}}@media(max-width:479px){.hero-panel,.top-envelopes{padding:10px}.hero-panel h1{font-size:1.7rem}.hero-panel p,.top-envelopes h2{font-size:.7rem}.hero-amount{display:block}.hero-panel span{font-size:.7rem;line-height:1.35}.top-envelope-summary{display:block}.top-envelope-summary>strong{display:block;margin-top:3px;text-align:left}.top-envelope-summary p{display:none}}@media(max-width:359px){.haven-controls{gap:4px}.cash-flow-heading{align-items:stretch;flex-direction:column}.cash-flow-heading input{width:100%}.cash-flow-totals>div{padding-inline:6px}.cash-flow-totals strong{font-size:1rem}}.bill-funding{grid-column:1 / -1;width:100%;min-width:0}.payment-calculator{border-top:1px solid #dce2ed;padding-top:16px;display:grid;gap:14px;min-width:0}.payment-calculator h3{margin:0}.payment-calculator select,.payment-calculator input{width:100%;min-width:0}.payment-switch{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:center;text-align:center}.payment-switch span{display:block;font-size:.8rem;margin-top:5px;color:#596b76}.payment-calculator .calculator-amount{font-family:Georgia,serif;font-size:2rem;text-align:center;padding:16px 4px;border:0;border-bottom:1px solid #a4b4c3;border-radius:0;background:transparent}.calculator-shortcuts{display:flex;flex-wrap:wrap;gap:6px}.calculator-shortcuts button{flex:1;padding:8px;font-size:.85rem}.calculator-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.calculator-keys button{min-height:48px;font-size:1.15rem;justify-content:center;background:#edf1f7;color:#26373f;border:0}.allocation-preview{display:grid;gap:10px;border-block:1px solid #dce2ed;padding:14px 0;font-size:.85rem}.allocation-preview>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px 12px}.allocation-preview strong{margin-left:auto}.calculator-confirm{width:100%;justify-content:center}.allocation-entry{display:flex;align-items:center;gap:8px;justify-content:space-between;font-size:.85rem}.allocation-entry span{min-width:0;overflow-wrap:anywhere}.allocated-bills{margin-top:8px;padding-top:7px;border-top:1px solid #ffffff35;font-size:.75rem}.allocated-bills summary{cursor:pointer;min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:10px;overflow-wrap:anywhere}.allocated-bills summary strong{display:inline;flex:0 0 auto;margin:0 0 0 auto;white-space:nowrap}.allocated-bills .mini-row small{color:inherit}.allocated-bills button{white-space:normal}.envelope-month{grid-column:1 / -1;min-width:0;width:100%;border-top:1px solid #dce2ed;padding-top:14px}.envelope-month .settings-list{font-size:.85rem}body{color:#24352f;background:#eef3f0}.header-actions{display:flex;align-items:center;gap:8px}.haven-hero{position:relative;height:300px;overflow:hidden;border:1px solid #b8c9c0;border-radius:7px;background:#d7e5df;box-shadow:0 20px 48px #3652471f,0 2px 8px #36524714;isolation:isolate}.haven-hero .haven,.haven-hero .haven-scene{height:100%}.haven-hero .haven{position:static}.haven-hero .haven-scene{background:#d7e5df}.haven-hero .haven-loading{position:absolute;inset:0;min-height:0;overflow:hidden}.haven-hero .haven-loading{min-height:0}.haven-hero .haven-season{position:absolute;z-index:4;top:14px;left:122px;padding:6px 9px;color:#2f4b55;background:#f6faf7d9;border:1px solid #ffffffa8;border-radius:6px;font-size:.7rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-weather{position:absolute;z-index:4;top:14px;left:14px;box-shadow:0 2px 12px #243b4230}.haven-controls{position:absolute;z-index:5;top:10px;right:10px;display:flex;justify-content:flex-end;gap:5px;padding:0}.haven-controls>.icon-button{color:#2f4650;background:#f7faf7e8;border-color:#ffffffa8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.haven-more-controls{position:absolute;top:50px;right:0;display:flex;gap:5px;padding:5px;background:#f7faf7e8;border:1px solid #ffffffa8;border-radius:6px;box-shadow:0 8px 24px #20333b30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.haven-money-banner{position:absolute;z-index:3;inset:auto auto 14px 14px;width:min(720px,calc(100% - 28px));display:grid;grid-template-columns:minmax(170px,.8fr) minmax(210px,1.2fr);align-items:end;gap:18px;padding:12px 14px;color:#fff;background:#16363a6b;border:1px solid #ffffff70;border-radius:6px;box-shadow:0 14px 34px #17342a24;-webkit-backdrop-filter:blur(16px) saturate(1.16);backdrop-filter:blur(16px) saturate(1.16)}.safe-label{display:flex;align-items:center;gap:5px;color:#dce8eb;font-size:.72rem}.safe-label .icon-button{width:32px;height:32px;min-height:32px;flex-basis:32px;color:#f0dba9;background:transparent}.safe-today>strong{display:block;margin-top:1px;font-family:Georgia,serif;font-size:2rem;font-weight:400;line-height:1}.haven-money-banner small{display:block;margin-top:4px;color:#c7d5da;font-size:.65rem;line-height:1.35}.safe-period{padding-left:16px;border-left:1px solid #ffffff35}.safe-period>strong{display:block;font-family:Georgia,serif;font-size:1.05rem;font-weight:400}.safe-period>span{color:#e7eef0;font-size:.72rem}.home-snapshot{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));margin-top:2px;border-block:1px solid #d4dfd9;background:#f8faf77a}.snapshot-item{display:block;min-width:0;min-height:64px;padding:10px 12px;color:#26373f;text-align:left;background:transparent;border:0;border-right:1px solid #dce2ed;border-radius:0}.snapshot-item:last-child{border-right:0}.snapshot-item span,.snapshot-item small{display:block;color:#667681;font-size:.68rem;overflow-wrap:anywhere}.snapshot-item strong{display:block;margin:2px 0;font-family:Georgia,serif;font-size:.95rem;font-weight:400;overflow-wrap:anywhere}.home-columns{display:block}.home-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}.home-section{margin-bottom:0;padding:16px 0}.guide-lede{display:grid;gap:5px;padding:12px 14px;color:#2b4650;background:#edf2f5;border-left:3px solid #7c6b89}.guide-lede span{color:#596b76;font-size:.82rem;line-height:1.45}.money-guide details{border-top:1px solid #dce2ed}.money-guide details summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:600}.appearance-settings{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #dce2ed}.appearance-settings h2{margin-bottom:10px}.appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.appearance-options button{min-width:0;padding-inline:8px}.appearance-options button.active{background:#244f59;color:#fff}.resource-list{margin:6px 0}.resource-list li{padding:10px 0;gap:5px 8px}.resource-list p{margin-top:3px}.bill-funding{grid-column:1;grid-row:2;width:max-content}.bill-funding.open{grid-column:1 / -1;grid-row:auto;width:100%}.allocate-next{min-height:40px;padding:7px 10px;font-size:.78rem}.payment-calculator{padding-top:10px;gap:10px}.payment-calculator .calculator-amount{padding:10px 4px}.flow-empty{padding:16px 0;border-bottom:1px solid #dce2ed}.flow-empty p,.planned-empty{margin:0 0 10px;color:#667681;font-size:.8rem}.flow-empty>div{display:flex;flex-wrap:wrap;gap:7px}.flow-empty button{padding:8px 10px;font-size:.78rem}.planned-flow-list{border-top-color:#d6ddea}@media(max-width:719px){.haven-hero{height:280px}.home-overview{grid-template-columns:1fr}}@media(max-width:479px){.signout-button{width:44px;padding:0;font-size:0}.haven-hero{height:270px}.haven-hero .haven-season{display:none}.haven-money-banner{inset:auto 8px 8px;width:calc(100% - 16px);grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:9px 10px}.safe-today>strong{font-size:1.75rem}.safe-period{padding-left:9px}.safe-period>strong{font-size:.9rem}.safe-period>span{font-size:.65rem}.safe-period small{font-size:.58rem}.home-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-item{padding-inline:7px}.snapshot-item strong{font-size:.82rem}}[data-theme=dark],[data-theme=dark] body,[data-theme=dark] .app-shell{color:#e7edf1;background:#131c22}[data-theme=dark] .app-shell>header,[data-theme=dark] nav{color:#e7edf1;background:#182229f2;border-color:#34434d}[data-theme=dark] header span,[data-theme=dark] header strong{color:#d9e4e8}[data-theme=dark] .secondary,[data-theme=dark] .calculator-keys button{color:#dce7eb;background:#26343e;border-color:#3a4a55}[data-theme=dark] nav button{color:#aab8c1}[data-theme=dark] nav button.active{color:#ecf5f1;background:#29433f}[data-theme=dark] .home-section,[data-theme=dark] .home-snapshot,[data-theme=dark] .snapshot-item,[data-theme=dark] .resource-list li,[data-theme=dark] .cash-flow-list,[data-theme=dark] .cash-flow-list li,[data-theme=dark] .cash-flow-totals,[data-theme=dark] .appearance-settings,[data-theme=dark] .money-guide details,[data-theme=dark] .flow-empty{border-color:#34434d}[data-theme=dark] .snapshot-item{color:#e7edf1}[data-theme=dark] .snapshot-item span,[data-theme=dark] .snapshot-item small,[data-theme=dark] .muted,[data-theme=dark] .resource-list p,[data-theme=dark] .cash-flow-heading p,[data-theme=dark] .cash-flow-heading label,[data-theme=dark] .cash-flow-list-heading span,[data-theme=dark] .cash-flow-list li>div>span,[data-theme=dark] .cash-flow-note,[data-theme=dark] .planned-empty,[data-theme=dark] .flow-empty p{color:#aab8c1}[data-theme=dark] .entry-form input,[data-theme=dark] .entry-form select,[data-theme=dark] .income-destination select,[data-theme=dark] .record-details select,[data-theme=dark] .cash-flow-heading input{color:#edf3f5;background:#1b272e;border-color:#50616c}[data-theme=dark] .bill-edit-form,[data-theme=dark] .guide-lede{color:#dce7eb;background:#202c34;border-color:#3c4b56}[data-theme=dark] .guide-lede span,[data-theme=dark] .entry-form label,[data-theme=dark] .payment-switch span{color:#b2c0c7}[data-theme=dark] .flow-icon.inflow{color:#8fd4b8;background:#203b34}[data-theme=dark] .flow-icon.outflow{color:#efa8b1;background:#402a30}[data-theme=dark] .money-in{color:#8fd4b8}[data-theme=dark] .money-out,[data-theme=dark] [role=alert]{color:#efa8b1}[data-theme=dark] .money-net,[data-theme=dark] [role=status]{color:#9ecbe1}.app-shell,body{background:#e9f0ec}.dashboard{gap:14px}.haven-hero{position:relative;display:block;height:330px;border-color:#a9beb5;background:#c9ded8;box-shadow:0 22px 55px #2f4d4226,0 3px 10px #29463b17}.haven-hero .haven{position:static;height:100%;min-height:0}.haven-hero .haven-scene{height:100%;background:#c9ded8}.haven-money-banner{position:absolute;inset:auto 22px 20px;z-index:3;width:auto;display:grid;grid-template-columns:minmax(170px,.85fr) minmax(140px,1fr) minmax(205px,.9fr);align-items:end;gap:14px;padding:10px 14px;color:#f8fbfa;background:#153a382e;border:1px solid #ffffff73;border-radius:6px;box-shadow:0 15px 40px #17342a1f;-webkit-backdrop-filter:blur(5px) saturate(1.15);backdrop-filter:blur(5px) saturate(1.15)}.hero-tree-gap{min-width:0}.safe-today,.safe-period{text-shadow:0 1px 6px #15332f99}.safe-today>strong{font-size:1.85rem}.safe-period{justify-self:end;min-width:190px;padding-left:14px;border-left-color:#fff6}.safe-period>strong{font-size:1.12rem}.haven-hero .haven-season,.hero-weather,.haven-controls>.icon-button{box-shadow:0 5px 18px #253f3730}.home-snapshot{margin:0;overflow:hidden;border:1px solid #ccd9d3;border-radius:6px;background:#f8faf7ad;box-shadow:0 8px 24px #2b493e0d}.home-overview{gap:12px}.home-section{min-width:0;margin:0;padding:14px;background:#f8faf7b8;border:1px solid #d2ddd7;border-radius:6px;box-shadow:0 8px 24px #2b493e0c}.home-section h2{font-family:inherit;font-size:.88rem;font-weight:650}.home-section p{margin:5px 0;font-size:.78rem}.home-section .summary-amount{margin-top:6px;font-family:Georgia,serif;font-size:1.35rem;font-weight:400}.home-section .muted{margin-block:4px;font-size:.72rem}.home-section .mini-row{padding:8px 0;font-size:.78rem;border-bottom:1px solid #e1e8e4}.home-section .mini-row:last-child{border-bottom:0}.home-section .section-heading{flex-wrap:nowrap}.home-section .section-heading .icon-button{width:36px;height:36px;min-height:36px;flex-basis:36px}.home-overview{align-items:start;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}.home-summary-line{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 12px;gap:10px;color:#26373f;font-size:.8rem;line-height:1.5;text-align:left}.home-summary-line>span{min-width:0;overflow-wrap:anywhere}.home-summary-line>svg{flex:0 0 18px}.home-summary-line .summary-label{font-weight:600}.home-summary-line strong{font-size:.9rem;font-variant-numeric:tabular-nums}.home-summary-line small{font-size:.72rem}.home-upcoming{grid-column:1 / -1}@media(max-width:800px){.home-overview{grid-template-columns:1fr}}.detail-section{scroll-margin-top:92px;margin-top:34px;padding-top:0;border-block:2px solid #b9c9c0;background:#f8faf8a3}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0 14px;border-bottom:1px solid #d4dfd9}.detail-heading span{display:block;color:#66766f;font-size:.72rem}.detail-heading h1{margin:3px 0 0;font-family:Georgia,serif;font-size:1.55rem;font-weight:400}.detail-content{min-width:0;padding:16px 0 26px}.detail-section .resource-view>.view-heading{justify-content:flex-end;margin-bottom:4px}.detail-section .resource-view>.view-heading h2{display:none}[data-theme=dark] .detail-section{color:#e7edf1;background:#18222980;border-color:#43574f}[data-theme=dark] .detail-heading{border-color:#34434d}[data-theme=dark] .detail-heading span{color:#aab8c1}@media(max-width:719px){.haven-hero{height:310px}.haven-money-banner{inset:auto 10px 10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px 10px}.hero-tree-gap{display:none}.detail-section{scroll-margin-top:72px;margin-top:26px}}@media(max-width:479px){.haven-hero{height:294px}.haven-money-banner{width:auto}.safe-today>strong{font-size:1.55rem}.safe-period{min-width:0;padding-left:8px}.safe-period>strong{font-size:.9rem}.safe-period small{display:none}.home-overview{grid-template-columns:1fr}.detail-heading{padding-block:13px 11px}.detail-heading h1{font-size:1.35rem}.detail-content{padding-top:12px}}[data-theme=dark] .remember-browser,[data-theme=dark] .home-section,[data-theme=dark] .home-snapshot{color:#e7edf1;background:#1d292fbd;border-color:#34434d}[data-theme=dark] .remember-browser small{color:#aab8c1}[data-theme=dark] .signin-card{color:#e7edf1;background:#14201cf0}[data-theme=dark] .signin-card h2{color:#edf3f0}[data-theme=dark] .signin-card-subtitle{color:#aab8c1}[data-theme=dark] .signin-form input{color:#edf3f5;background:#1b272e;border-color:#50616c}[data-theme=dark] .signin-notice{color:#8fd9c2}[data-theme=dark] .link-button{color:#9fd6e6}[data-theme=dark] .authenticator-key{color:#e7edf1;background:#1d292f}[data-theme=dark] .payday-planner,[data-theme=dark] .payday-suggestions{border-color:#34434d}[data-theme=dark] .payday-planner.open{background:#202c34;border-color:#3c4b56}[data-theme=dark] .payday-plan-row label,[data-theme=dark] .payday-remainder,[data-theme=dark] .payday-suggestions>strong{color:#b2c0c7}[data-theme=dark] .payday-plan-row input,[data-theme=dark] .payday-plan-add select{color:#edf3f5;background:#1b272e;border-color:#50616c}[data-theme=dark] .plan-suggestion{color:#bce0d0;background:#203b34;border-color:#315348}[data-theme=dark] .plan-suggestion small,[data-theme=dark] .payday-suggestions button small{color:#9db4aa}@media(max-width:620px){.payday-plan-row{grid-template-columns:minmax(0,1fr) 44px}.payday-plan-row label{grid-column:1 / 2}.plan-suggestion{grid-column:1 / -1;grid-row:2}.payday-plan-row>.icon-button{grid-column:2;grid-row:1}.payday-suggestions{grid-template-columns:1fr}}html,body,#root,.app-shell{max-width:100%;overflow-x:clip}.app-shell>main,.dashboard,.detail-section,.detail-content,.resource-view,.cash-flow-view,.resource-list{min-width:0;max-width:100%}.detail-section{width:min(100%,940px);margin-inline:auto}.detail-heading,.detail-content{padding-inline:18px}.resource-list{overflow:hidden}.resource-list li{min-width:0;max-width:100%}.resource-list button,.bill-funding,.bill-funding>button{max-width:100%}.bill-funding{width:100%}.cash-flow-view{width:min(100%,860px)}.flow-ledger{min-width:0;border-top:1px solid #e3e7ee}.flow-columns,.cash-flow-row{display:grid;grid-template-columns:78px minmax(130px,1fr) minmax(140px,.7fr) minmax(88px,auto);gap:12px;align-items:center}.flow-columns{padding:7px 0;color:#75837d;font-size:.65rem;text-transform:uppercase}.flow-columns span:last-child{text-align:right}.cash-flow-list{border-top:0}.cash-flow-list li.cash-flow-row{grid-template-columns:78px minmax(130px,1fr) minmax(140px,.7fr) minmax(88px,auto);padding:9px 0}.flow-date{display:grid;align-content:center;min-width:0;color:#566b63;font-variant-numeric:tabular-nums}.flow-date strong{font-size:.78rem;white-space:nowrap}.flow-date span{color:#819089;font-size:.64rem;margin-top:2px}.flow-payee{min-width:0}.flow-payee>strong{display:block;font-size:.82rem;overflow-wrap:anywhere}.flow-payee>span{display:block;color:#75837d;font-size:.68rem;margin-top:2px}.flow-category-cell{min-width:0}.flow-amount .flow-clear{display:inline-flex;min-height:44px;margin-top:4px;padding:5px 7px;gap:4px;font-size:.68rem;white-space:nowrap}.flow-clear-error{grid-column:1 / -1;margin:0;font-size:.75rem}.flow-category{min-width:0;min-height:34px;max-width:100%;justify-content:flex-start;padding:5px 8px;color:#3d5b50;background:#e8f0ec;border-color:#d4e1da;font-size:.7rem;overflow-wrap:anywhere;text-align:left}.flow-category.empty{color:#6d7181;background:#f1eff5;border-color:#e1ddea}.flow-category-label{display:inline-block;padding:5px 8px;color:#65736d;background:#eef2f0;border-radius:5px;font-size:.7rem}.flow-category-editor{grid-column:2 / -1;display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:7px;align-items:end;padding:8px;background:#f2f6f3;border:1px solid #d7e1dc;border-radius:6px}.flow-category-editor label{display:grid;gap:4px;color:#66766f;font-size:.68rem}.flow-category-editor input{min-width:0;width:100%;padding:8px 10px;color:#24312e;background:#fff;border:1px solid #aabbb2}.flow-category-editor p{grid-column:1 / -1;margin:0;font-size:.72rem}.envelope-layout-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 12px;padding-bottom:10px;border-bottom:1px solid #d8e2dc}.envelope-layout-toolbar>span{color:#687970;font-size:.74rem}.envelope-layout-toolbar>div{display:flex;gap:5px}.envelope-layout-toolbar .active{color:#fff;background:#315d54;border-color:#315d54}.envelope-collection{overflow:visible;margin-top:0}.envelope-collection.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));align-items:start;gap:10px}.envelope-view{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.envelope-view>*{grid-column:1 / -1}.envelope-view>.view-heading{grid-column:2;grid-row:1;margin:0}.envelope-view>.envelope-layout-toolbar{grid-column:1;grid-row:1;margin:0;padding:0;border:0;justify-content:flex-start}.envelope-view .view-heading button{min-height:44px;padding:8px 10px;font-size:.8rem}.envelope-layout-toolbar .icon-button{width:44px;height:44px;min-height:44px}.envelope-quick-actions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.envelope-quick-actions button{flex:1;min-height:44px;padding:6px;font-size:.75rem}.resource-list .envelope-widget.drag-over{outline:2px solid #6f9a83;outline-offset:2px}.envelope-widget .envelope-basket{cursor:grab;width:44px;height:44px}.envelope-widget .envelope-basket:active{cursor:grabbing}@media(max-width:480px){.envelope-layout-toolbar>span{display:none}}.resource-list .envelope-widget{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:6px 9px;padding:10px;overflow:hidden;background:#f7faf8;border:1px solid #cfddd5;border-left:4px solid #6f9a83;border-radius:7px;box-shadow:0 7px 18px #29463b0d}.resource-list .envelope-widget:nth-child(4n+2){background:#f7f9fc;border-left-color:#7894ac}.resource-list .envelope-widget:nth-child(4n+3){background:#faf8fc;border-left-color:#9683aa}.resource-list .envelope-widget:nth-child(4n){background:#fcf9f5;border-left-color:#b18b6e}.envelope-basket{grid-column:1;grid-row:1;width:34px;height:34px;display:grid;place-items:center;color:#527664;background:#e4eee8;border-radius:6px}.envelope-widget>div:first-of-type{grid-column:2;grid-row:1}.resource-list .envelope-widget>strong{grid-column:3;grid-row:1;text-align:right;white-space:nowrap}.envelope-widget .envelope-month{grid-column:1 / -1;grid-row:2;padding-top:8px;border-top-color:#dbe5df}.envelope-widget .record-actions{grid-column:1 / -1;grid-row:3;justify-self:end}.envelope-manage-toggle{width:100%;min-height:38px;padding:7px 10px;font-size:.74rem}.envelope-month .settings-list{margin-bottom:14px}[data-theme=dark] .flow-ledger,[data-theme=dark] .envelope-layout-toolbar{border-color:#34434d}[data-theme=dark] .flow-date,[data-theme=dark] .flow-payee>span,[data-theme=dark] .flow-columns{color:#aab8c1}[data-theme=dark] .flow-category,[data-theme=dark] .flow-category-label{color:#bce0d0;background:#203b34;border-color:#315348}[data-theme=dark] .flow-category.empty{color:#c7bed5;background:#342e40;border-color:#4b425b}[data-theme=dark] .flow-category-editor{background:#202c34;border-color:#3c4b56}[data-theme=dark] .flow-category-editor input{color:#edf3f5;background:#1b272e;border-color:#50616c}[data-theme=dark] .resource-list .envelope-widget{color:#e7edf1;background:#1d2b29;border-color:#3b554a;border-left-color:#75a38c}[data-theme=dark] .resource-list .envelope-widget:nth-child(4n+2){background:#202b33;border-left-color:#7894ac}[data-theme=dark] .resource-list .envelope-widget:nth-child(4n+3){background:#292632;border-left-color:#9683aa}[data-theme=dark] .resource-list .envelope-widget:nth-child(4n){background:#302b27;border-left-color:#b18b6e}[data-theme=dark] .envelope-basket{color:#a8d0bc;background:#29443a}@media(min-width:720px){.app-shell>main{width:100%;max-width:1160px}}@media(max-width:620px){.detail-heading,.detail-content{padding-inline:0}.detail-section{width:100%}.flow-columns{display:none}.flow-ledger{border-top:0}.cash-flow-list li.cash-flow-row{grid-template-columns:62px minmax(0,1fr) auto;gap:7px 9px;align-items:start}.flow-date{grid-column:1;grid-row:1 / span 2;padding-top:3px}.flow-payee{grid-column:2;grid-row:1}.flow-category-cell{grid-column:2;grid-row:2}.flow-amount{grid-column:3;grid-row:1 / span 2;padding-top:2px}.flow-category{min-height:32px}.flow-category-editor{grid-column:1 / -1}.resource-list li:not(.envelope-widget){grid-template-columns:minmax(0,1fr) auto}.resource-list li:not(.envelope-widget)>strong{grid-column:2}.resource-list li:not(.envelope-widget) .record-actions{grid-column:1 / -1;grid-row:auto;justify-self:end}}@media(max-width:359px){.app-shell>main{padding-inline:12px}.app-shell>header nav{gap:0}.app-shell>header nav button{gap:2px;font-size:.6rem}.cash-flow-list li.cash-flow-row{grid-template-columns:54px minmax(0,1fr) auto}.flow-date strong,.flow-payee>strong{font-size:.74rem}.flow-amount strong{font-size:.75rem}}.brand-button{min-height:44px;padding:0;color:#284b54;background:transparent;border:0;border-radius:0;font-family:Georgia,serif!important;font-size:1.25rem;font-weight:600;white-space:nowrap}.brand-button:hover{color:#174f43}.bill-planner{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #cddbd5}.planner-toggle{min-height:44px;font-size:.82rem}.planner-content{margin-top:12px}.planner-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.planner-toolbar label{display:grid;gap:4px;flex:1;min-width:180px;color:#546860;font-size:.75rem}.planner-toolbar select,.planner-amount{width:100%;min-width:0;padding:8px;color:#24352f;background:#fff;border:1px solid #afc2b7}.planner-toolbar button{font-size:.8rem}.planner-caption{font-size:.75rem;color:#63746c}.planner-payment{display:grid;grid-template-columns:minmax(0,1fr) 100px;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #dce5df;font-size:.8rem}.planner-payment>label{display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;cursor:pointer}.planner-payment input[type=checkbox]{width:20px;flex:0 0 20px;margin:0;accent-color:#315d54}.planner-payment small{display:block;margin-top:3px;color:#63746c;font-size:.7rem}.planner-payment strong{overflow-wrap:anywhere}.planner-payment>strong,.planner-amount{text-align:right}.planner-preview{display:flex;flex-wrap:wrap;gap:12px 30px;padding:14px 0;font-size:.75rem}.planner-preview strong{display:block;margin-top:3px;font-size:.95rem}.sage-message{display:flex;align-items:start;gap:10px;margin:14px 0;padding:12px;color:#294d40;background:#e5f1e9;border-left:3px solid #72a28b;border-radius:6px}.sage-message>svg{flex-shrink:0;margin-top:3px}.sage-message>div{flex:1;min-width:0;font-size:.8rem}.sage-message p{margin:4px 0 0;font-size:.78rem}[data-theme=dark] .sage-message{color:#d1e8da;background:#223d32}[data-theme=dark] .planner-toolbar label,[data-theme=dark] .planner-caption,[data-theme=dark] .planner-payment small{color:#b2c7bb}[data-theme=dark] .planner-toolbar select,[data-theme=dark] .planner-amount{color:#e1ece8;background:#202d28;border-color:#537264}.app-shell>header nav{grid-template-columns:repeat(7,minmax(0,1fr))}@media(max-width:719px){.app-shell>header{background:#f8faf8;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(min-width:720px){.app-shell{display:block;padding-bottom:0}.app-shell>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:70px;padding:calc(10px + env(safe-area-inset-top)) 20px 10px}.app-shell>main{grid-area:auto}.app-shell>header nav{position:static;inset:auto;z-index:auto;grid-area:auto;display:flex;align-items:center;justify-content:flex-start;height:auto;padding:0;gap:4px;background:transparent;border:0;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell>header nav button{width:auto;min-height:44px;flex-direction:row;justify-content:center;gap:6px;padding:8px 10px;font-size:.78rem;white-space:nowrap}.app-shell>header nav button.active{background:#e9edf6}[data-theme=dark] .app-shell>header nav{background:transparent;border:0}[data-theme=dark] .brand-button{color:#e1ece8}}@media(min-width:720px)and (max-width:1099px){.app-shell>header{gap:9px;padding-inline:14px}.app-shell>header nav button{width:44px;padding:0}.app-shell>header nav button span,.signout-button{font-size:0}.signout-button{width:44px;padding:0}}.app-shell>main.haven-workspace{width:100%;max-width:1440px;padding:14px}.haven-workspace .hero-weather{top:10px;left:10px;max-width:calc(100% - 164px);min-height:32px;padding:6px 9px;font-size:.72rem;white-space:normal}.haven-workspace .haven-hero .haven-season{top:62px;left:10px;max-width:calc(100% - 20px);font-size:.65rem}.haven-workspace .haven-hero{height:360px}.haven-workspace .haven-hero .haven-scene{height:calc(100% - 94px)}.haven-workspace .haven-money-banner{inset:auto 10px 10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px 10px;background:#153a381c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.haven-workspace .hero-tree-gap{display:none}.haven-workspace .safe-period{min-width:0;justify-self:stretch;padding-left:10px}.haven-workspace .safe-period small{display:none}.haven-workspace .safe-today>strong{font-size:1.7rem}.haven-workspace .safe-label{font-size:.7rem}.haven-workspace .home-snapshot{margin:0;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}.haven-workspace .snapshot-item{padding:8px 10px;min-width:0}.haven-workspace .snapshot-item strong{font-size:.9rem}.haven-workspace .home-overview{grid-template-columns:1fr}.haven-workspace.has-detail .detail-section{min-height:0;margin:0;border:0;border-left:1px solid #b9c9c0;padding:0 14px;overflow:auto;overscroll-behavior:contain;animation:workspace-enter .22s ease-out}.haven-workspace .detail-heading{padding:8px 0}.haven-workspace .detail-heading h1{font-size:1.3rem;margin:0}.haven-workspace .detail-heading>div>span{display:none}.haven-workspace .detail-content{padding-top:10px}@keyframes workspace-enter{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@media(min-width:1000px){.app-shell>main.haven-workspace.has-detail{display:grid;grid-template-columns:minmax(350px,.85fr) minmax(0,1.35fr);gap:16px;height:calc(100dvh - 76px - env(safe-area-inset-top))}.haven-workspace.has-detail .dashboard{display:flex;flex-direction:column;gap:10px;min-height:0}.haven-workspace.has-detail .haven-hero{flex:0 0 min(360px,44dvh)}.haven-workspace.has-detail .home-snapshot{flex:0 1 auto;max-height:150px;overflow:auto}.haven-workspace.has-detail .home-columns{min-height:0;overflow:auto;margin:0;display:block}}@media(max-width:999px){.app-shell>main.haven-workspace.has-detail{height:calc(100dvh - 76px - env(safe-area-inset-top));display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;padding:8px}.haven-workspace.has-detail .dashboard{display:grid;gap:4px}.haven-workspace.has-detail .haven-hero{height:220px}.haven-workspace.has-detail .haven-hero .haven-scene{height:calc(100% - 75px)}.haven-workspace.has-detail .haven-season,.haven-workspace.has-detail .home-columns{display:none}.haven-workspace.has-detail .home-snapshot{display:flex;overflow:auto;max-height:65px}.haven-workspace.has-detail .snapshot-item{flex:0 0 155px}.haven-workspace.has-detail .snapshot-item small{display:none}.haven-workspace.has-detail .detail-section{border-left:0;border-top:1px solid #b9c9c0;padding:0 6px}}@media(max-width:719px){.app-shell>main.haven-workspace.has-detail{height:calc(100dvh - 152px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.haven-workspace.has-detail .haven-hero{height:min(220px,30dvh);min-height:165px}.haven-workspace .safe-period>span{font-size:.64rem}.haven-workspace .safe-today>strong{font-size:1.35rem}}@media(prefers-reduced-motion:reduce){.haven-workspace.has-detail .detail-section{animation:none}}.ledger-resource{container-type:inline-size}.ledger-resource .resource-list{border-top:1px solid #d8e2dc}.ledger-resource .resource-list>li{grid-template-columns:68px minmax(0,1fr) auto;gap:4px 10px;padding:9px 0;align-items:center}.ledger-resource .resource-list>li>.flow-date{grid-column:1;grid-row:1 / 3;align-self:start;padding-top:2px}.ledger-resource .resource-list>li>div:first-child{grid-column:2;grid-row:1;font-size:.82rem}.ledger-resource .resource-list>li>div:first-child>p{font-size:.68rem;margin:3px 0 0}.ledger-resource .resource-list>li>strong{grid-column:3;grid-row:1;text-align:right;font-size:.82rem;font-variant-numeric:tabular-nums}.ledger-resource .account-tag{grid-column:2 / -1;grid-row:2;font-size:.68rem;color:#75837d}.ledger-resource .transaction-account-balance{display:inline;margin-left:8px}.ledger-resource .record-actions{grid-column:3;grid-row:3;justify-self:end;display:flex;gap:4px}.ledger-resource .record-actions .icon-button{width:44px;height:44px;min-height:44px}.ledger-resource .resource-list>li>.record-details{grid-column:2;grid-row:3;gap:3px;font-size:.68rem}.ledger-resource .record-details label{gap:6px;font-size:.68rem}.ledger-resource .record-details select{min-height:44px;padding:5px 8px;font-size:.72rem;width:auto}.ledger-resource .resource-list>li>.bill-funding{grid-column:2;grid-row:3;margin:0}.ledger-resource .bill-funding .allocate-next{min-height:44px;padding:6px 9px;font-size:.72rem}.ledger-resource .resource-list>li>.bill-funding.open,.ledger-resource .resource-list>li>.bill-edit-form{grid-column:1 / -1;grid-row:auto}.ledger-details{grid-column:2;grid-row:3;min-width:0;font-size:.72rem}.ledger-details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#526960}.ledger-details>summary:before{content:"+";margin-right:7px}.ledger-details[open]>summary:before{content:"-"}.ledger-resource .ledger-details[open]{grid-column:1 / -1;grid-row:4}.ledger-resource .ledger-details .record-details{gap:6px;padding-bottom:8px}.ledger-resource.ledger-accounts .resource-list>li{grid-template-columns:minmax(0,1fr) auto}.ledger-resource.ledger-accounts .resource-list>li>div:first-child{grid-column:1}.ledger-resource.ledger-accounts .resource-list>li>strong{grid-column:2}.ledger-resource.ledger-accounts .ledger-details{grid-column:1;grid-row:2}.ledger-resource.ledger-accounts .record-actions{grid-column:2;grid-row:2}.ledger-resource.ledger-accounts .ledger-details[open]{grid-column:1 / -1;grid-row:3}.upcoming-ledger-row{display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #d8e2dc}.upcoming-ledger-row>strong{font-size:.82rem;text-align:right;font-variant-numeric:tabular-nums}[data-theme=dark] .ledger-details>summary,[data-theme=dark] .ledger-resource .account-tag{color:#aab8c1}[data-theme=dark] .ledger-resource .resource-list,[data-theme=dark] .upcoming-ledger-row{border-color:#34434d}@container (max-width: 380px){.ledger-resource .resource-list>li{grid-template-columns:52px minmax(0,1fr) auto;gap:4px 6px}.ledger-resource .resource-list>li>.record-details{grid-column:1 / 3}.ledger-resource .record-details label{flex-wrap:wrap}.ledger-resource .transaction-account-balance{display:block;margin-left:0}}.ledger-resource .resource-list>li{display:flex;flex-wrap:wrap;gap:4px 8px}.ledger-resource .record-summary{flex:0 0 100%;width:100%;min-width:0;display:grid;grid-template-columns:68px minmax(0,1fr) minmax(90px,.65fr) minmax(88px,auto);align-items:center;gap:10px;padding:3px 0}.ledger-resource .record-summary .flow-payee{min-width:0}.ledger-resource .record-summary .account-tag,.ledger-resource .record-summary .transaction-account-balance{display:block;margin:3px 0 0;font-size:.68rem}.ledger-resource .record-summary .flow-amount{text-align:right}.ledger-resource .record-summary .flow-amount>strong{font-size:.82rem}.ledger-resource .record-summary .flow-amount>span{display:block;margin-top:4px;font-size:.68rem;color:#75837d}.ledger-resource .record-summary .flow-category{min-height:44px}.ledger-resource .record-summary .flow-category-cell{grid-column:3;grid-row:1}.ledger-resource .record-summary .flow-amount{grid-column:4;grid-row:1}.ledger-resource .record-summary .flow-category-editor{grid-row:2}.ledger-resource .record-actions{margin-left:auto;order:2}.ledger-resource .ledger-details{flex:1}.ledger-resource .ledger-details[open],.ledger-resource .bill-funding.open,.ledger-resource .bill-edit-form{flex:0 0 100%;order:3}.ledger-resource .bill-funding:not(.open){flex:1}.account-ledger-icon{color:#637d72}.schedule-scope,.receipt-confirmation label{display:grid;gap:5px;min-width:0;margin:8px 0;font-size:.78rem}.schedule-scope select,.receipt-confirmation select{width:100%;min-width:0}.schedule-bill-options{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.78rem}.schedule-bill-options .checkbox-label{display:flex;align-items:center;gap:8px}.schedule-bill-options input{width:auto;margin:0}.saved-payday-schedules{margin:12px 0;border-top:1px solid #9cac9e55}.saved-payday-schedules h3{font-size:.9rem}.saved-payday-plan{padding:10px 0;border-bottom:1px solid #9cac9e55}.saved-plan-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.78rem}.saved-plan-summary>div{flex:1;min-width:150px}.saved-plan-summary small{display:block;margin-top:4px}.saved-plan-summary button,.receipt-confirmation button{font-size:.75rem}.receipt-confirmation{display:grid;gap:8px;padding-top:8px;font-size:.78rem}.ledger-bills .account-activity-columns,.ledger-resource.ledger-bills .record-summary.cash-flow-row{padding-right:114px}.ledger-resource.ledger-bills .bill-funding:not(.open){flex:0 0 100%}.ledger-resource.ledger-bills .bill-funding:not(.open)>.allocate-next{position:absolute;right:76px;top:12px;width:34px;height:34px;min-height:34px;padding:6px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .resource-list{margin-top:0;border-top:0}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .resource-list>li{position:relative;padding:9px 0;gap:0}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary,.account-activity-columns{grid-template-columns:78px minmax(0,1fr) minmax(90px,.7fr) 132px;gap:12px;padding-right:76px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary .flow-amount{display:flex;flex-direction:column;align-items:flex-end}.account-activity-columns{border-top:1px solid #d8e2dc}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary .flow-category{min-height:34px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary .transaction-account-balance{display:inline;margin:0}.ledger-transactions .record-summary .account-tag{display:inline}.ledger-transactions .record-summary .transaction-account-balance:before{content:" / "}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-actions{position:absolute;right:0;top:12px;margin:0}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-actions .icon-button{flex-basis:34px;width:34px;min-width:34px;height:34px;min-height:34px;padding:6px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details{flex:0 0 100%}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details>summary{position:absolute;right:38px;top:12px;width:34px;height:34px;min-height:34px;justify-content:center;border-radius:4px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details>summary:before{content:none}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details>summary:hover{background:#789b8726}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details[open]>summary svg{transform:rotate(180deg)}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details .record-details{padding:12px 0 4px}.ledger-control-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@container (max-width: 560px){.account-activity-columns{display:none}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary{grid-template-columns:48px minmax(0,1fr) minmax(70px,auto);padding-right:0;gap:6px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary .flow-payee{padding-right:72px;min-height:34px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary .flow-amount{grid-row:2}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-summary .flow-payee{grid-column:2 / -1}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .record-actions{top:9px}.ledger-resource:is(.ledger-accounts,.ledger-transactions,.ledger-income,.ledger-bills) .ledger-details>summary{top:9px}.ledger-resource.ledger-bills .record-summary.cash-flow-row{padding-right:0}.ledger-resource.ledger-bills .record-summary .flow-payee{padding-right:110px}.ledger-resource.ledger-bills .bill-funding:not(.open)>.allocate-next{top:9px}}[data-theme=dark],[data-theme=dark] body,[data-theme=dark] .app-shell{color:#edf0e9;background:#141816}[data-theme=dark] .app-shell>header,[data-theme=dark] nav{background:#191e1cf5;border-color:#37413b}[data-theme=dark] .detail-section,[data-theme=dark] .home-section,[data-theme=dark] .home-snapshot{background:#1b211ee6;border-color:#37413b}[data-theme=dark] .haven-workspace .haven-hero,[data-theme=dark] .haven-hero .haven-scene,[data-theme=dark] .haven-loading,[data-theme=dark] .haven-fallback{background:#19241f;border-color:#3e5045;box-shadow:none}[data-theme=dark] .haven-workspace .haven-money-banner{color:#f2f4ed;background:#101a164a;border-color:#b0c2b52e;box-shadow:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-shadow:none}[data-theme=dark] .haven-money-banner .safe-label,[data-theme=dark] .haven-money-banner .safe-period>span,[data-theme=dark] .haven-money-banner small,[data-theme=dark] .haven-money-banner .safe-today>span{color:#c9d5cb;text-shadow:none}[data-theme=dark] .haven-money-banner strong{text-shadow:none}[data-theme=dark] .haven-hero .haven-season,[data-theme=dark] .haven-controls>.icon-button,[data-theme=dark] .haven-more-controls{color:#d9e4d9;background:#24342ad9;border-color:#52675870;box-shadow:none}[data-theme=dark] .hero-weather{color:#eddfb4;background:#403e2ce6;border-color:#81754a70;box-shadow:none}[data-theme=dark] .secondary,[data-theme=dark] .calculator-keys button{color:#d9e4d9;background:#29342d;border-color:#46564a}[data-theme=dark] .record-summary .flow-amount>span{color:#b5c3b9}@container (max-width: 560px){.ledger-resource .record-summary{grid-template-columns:54px minmax(0,1fr) auto;gap:6px 8px}.ledger-resource .record-summary .flow-category-cell{grid-column:2;grid-row:2}.ledger-resource .record-summary .flow-amount{grid-column:3;grid-row:1 / 3}.ledger-resource .record-summary .flow-category-editor{grid-column:1 / -1;grid-row:3}}:root{--retreat-ink: #18342f;--retreat-muted: #546962;--retreat-line: #d7dfd9;--retreat-paper: #f7f9f6;--retreat-glass: #f9fbf3e6}.app-shell{background:var(--retreat-paper)}.retreat-spending,.retreat-outlook,.retreat-budget-panel,[data-theme=dark] .retreat-spending,[data-theme=dark] .retreat-outlook,[data-theme=dark] .retreat-budget-panel{--retreat-glass: rgb(251 248 238 / 30%);--retreat-ink: #17362f;--retreat-muted: #49635a}.retreat-shortfall{display:flex;align-items:center;gap:6px;min-height:28px;padding:2px 0;background:transparent;color:#963c48;font-size:.8rem}[data-theme=dark] .retreat-shortfall{color:#963c48}.retreat-welcome h1{overflow-wrap:anywhere}.retreat-hero[data-night=true] .retreat-welcome{color:#f2f3df;text-shadow:0 1px 12px #101c1b}.retreat-hero[data-night=true] .retreat-welcome p{color:#dee5d8}.profile-settings{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--retreat-line)}.account-security{margin-bottom:18px}.account-security details{padding:12px 0;border-bottom:1px solid var(--retreat-line)}.account-security summary{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:36px}.account-security p{font-size:.85rem}.account-security .entry-form{padding:12px 0}.account-security .security-enabled{margin-left:auto;color:#2d765c}.account-security .password-help{grid-column:1 / -1;margin:0;color:var(--retreat-muted);font-size:.75rem}.savings-growth{display:grid;gap:0;color:var(--retreat-ink)}.savings-growth>section{padding:22px 0;border-bottom:1px solid var(--retreat-line)}.savings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.savings-heading h2{margin:5px 0 4px;font-family:Georgia,serif;font-size:1.45rem;font-weight:400}.savings-heading p{max-width:62ch;margin:0;color:var(--retreat-muted);font-size:.82rem}.section-kicker{display:flex;align-items:center;gap:7px;color:#577268;font-size:.68rem;font-weight:700;text-transform:uppercase}.savings-rate-value,.projection-ending{flex:0 0 auto;display:grid;text-align:right;font-family:Georgia,serif;font-size:2rem}.savings-rate-value small,.projection-ending span,.projection-ending small{color:var(--retreat-muted);font-family:Inter,system-ui,sans-serif;font-size:.67rem}.projection-ending strong{font-size:1.5rem;font-weight:400}.savings-rate-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.segmented{display:flex;min-width:0;padding:3px;border:1px solid var(--retreat-line);border-radius:6px}.segmented button{min-height:36px;padding:6px 10px;color:var(--retreat-muted);background:transparent;border:0;font-size:.72rem}.segmented button[aria-pressed=true]{color:#fff;background:#2c5d50}.savings-rate-controls fieldset{display:flex;gap:14px;margin:0;padding:0;border:0}.savings-rate-controls legend{float:left;margin-right:10px;color:var(--retreat-muted);font-size:.7rem}.savings-rate-controls label{display:flex;align-items:center;gap:6px;font-size:.75rem}.savings-rate-controls input{accent-color:#2c6654}.rate-explanation{margin:14px 0 0;padding:11px 14px;color:#405c52;background:#eaf1ec;border-left:3px solid #84a692;font-size:.78rem}.savings-goals .section-heading>span{color:var(--retreat-muted);font-size:.7rem}.savings-goals h2{display:flex;align-items:center;gap:8px;font-family:Georgia,serif;font-weight:400}.goal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;margin-top:10px}.goal-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;padding:13px 0;border-top:1px solid var(--retreat-line)}.goal-list article>div{display:grid;gap:3px;min-width:0}.goal-list article>div:nth-child(2){text-align:right}.goal-list span,.goal-list small{color:var(--retreat-muted);font-size:.67rem}.goal-list small{grid-column:1 / -1}.projection-layout{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.6fr);gap:28px;margin-top:22px}.projection-inputs{display:grid;align-content:start;gap:11px}.projection-inputs label{display:grid;gap:5px;color:var(--retreat-muted);font-size:.7rem}.projection-inputs input{width:100%;min-width:0;padding:9px 10px;color:var(--retreat-ink);background:#ffffffa6;border:1px solid #aebdb5}.example-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.example-rates button{min-height:36px;padding:5px;font-size:.65rem}.growth-chart{padding:12px 14px;background:#edf3ee;border:1px solid #d6e1da;border-radius:6px}.growth-chart svg{display:block;width:100%;height:auto;min-height:160px;overflow:visible}.growth-area{fill:#5e94711f}.growth-line{fill:none;stroke:#4e8668;stroke-width:3;stroke-dasharray:6 7}.growth-chart circle{fill:#f7faf6;stroke:#3f725a;stroke-width:3}.growth-chart-labels{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;color:var(--retreat-muted);font-size:.62rem}.growth-chart-labels span:nth-child(2){color:#4e8069;font-style:italic}.growth-chart-labels span:last-child{text-align:right}.growth-chart-labels strong{color:var(--retreat-ink);font-size:.7rem}.projection-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:10px;border-block:1px solid var(--retreat-line)}.projection-metrics>div{display:grid;gap:4px;padding:10px 8px;border-right:1px solid var(--retreat-line)}.projection-metrics span,.projection-breakdown span{color:var(--retreat-muted);font-size:.66rem}.projection-metrics strong{font-family:Georgia,serif;font-size:.9rem;font-weight:400}.projection-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:12px}.projection-breakdown span{display:grid;gap:4px}.projection-breakdown strong{color:var(--retreat-ink);font-size:.75rem}.projection-disclaimer{display:flex;align-items:flex-start;gap:9px;margin:18px 0 0;padding:12px 14px;color:#5c6357;background:#f3f0e5;border:1px solid #ddd6bd;font-size:.72rem}.family-growth-heading{align-items:center}.family-actions,.investment-actions{display:flex;flex-wrap:wrap;gap:7px}.family-actions button,.investment-actions button{min-height:38px;padding:7px 10px;font-size:.72rem}.family-filters{display:flex;gap:6px;margin-top:16px;padding-bottom:12px;overflow-x:auto;scrollbar-width:thin}.family-filters button{flex:0 0 auto;min-height:36px;padding:6px 11px;font-size:.7rem}.family-filters button[aria-pressed=true]{color:#fff;background:#2c5d50;border-color:#2c5d50}.family-message{margin:8px 0 0;color:#456258;font-size:.75rem}.family-form{margin:8px 0 16px;padding:14px;background:#edf3eeb8;border:1px solid var(--retreat-line);border-radius:6px}.family-form h3{grid-column:1 / -1;margin:0;font-family:Georgia,serif;font-size:1.05rem;font-weight:400}.family-form textarea{min-height:76px;resize:vertical}.family-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:0 24px}.family-group{min-width:0;padding:14px 0;border-top:1px solid var(--retreat-line)}.family-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.family-group-heading h3{display:flex;align-items:center;gap:8px;margin:0;font-family:Georgia,serif;font-size:1rem;font-weight:400}.beneficiary-marker{display:inline-grid;place-items:center;flex:0 0 auto}.family-account-row{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;width:100%;min-height:54px;padding:9px 0;color:var(--retreat-ink);background:transparent;border:0;border-bottom:1px solid var(--retreat-line);border-radius:0;text-align:left}.family-account-row span{min-width:0}.family-account-row span strong,.family-account-row span small{display:block;overflow-wrap:anywhere}.family-account-row span small{margin-top:3px;color:var(--retreat-muted);font-size:.65rem}.family-account-row>strong{font-size:.82rem;font-variant-numeric:tabular-nums;white-space:nowrap}.family-total{display:flex;justify-content:space-between;gap:12px;padding-top:10px;font-size:.75rem}.investment-detail{margin-top:18px;padding:18px;background:#f6f8f2b3;border:1px solid var(--retreat-line);border-radius:6px}.investment-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.investment-detail-heading h3{margin:5px 0 0;font-family:Georgia,serif;font-size:1.25rem;font-weight:400}.investment-detail dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:16px 0;border-block:1px solid var(--retreat-line)}.investment-detail dl div{display:grid;gap:4px;padding:11px 8px 11px 0}.investment-detail dt{color:var(--retreat-muted);font-size:.65rem}.investment-detail dd{margin:0;font-family:Georgia,serif;font-size:1rem}.investment-detail .gain{color:#2f7358}.investment-detail .loss{color:#974650}.education-path{margin:14px 0;padding:12px 0;border-bottom:1px solid var(--retreat-line)}.education-path>div{display:flex;justify-content:space-between;gap:12px;font-size:.76rem}.education-path meter{display:block;width:100%;height:11px;margin-top:9px}.education-path p,.investment-notes,.family-disclaimer{color:var(--retreat-muted);font-size:.7rem}.investment-action-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;align-items:end;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--retreat-line)}.investment-action-form label{display:grid;gap:4px;color:var(--retreat-muted);font-size:.68rem}.investment-action-form input{width:100%;min-width:0;padding:8px 9px;color:var(--retreat-ink);background:#fff;border:1px solid #aebdb5}.family-disclaimer{margin:14px 0 0}@media(max-width:720px){.savings-heading,.savings-rate-controls{align-items:stretch;flex-direction:column}.savings-rate-value,.projection-ending{text-align:left}.savings-rate-controls fieldset{display:grid;gap:8px}.savings-rate-controls legend{float:none;margin:0 0 2px}.goal-list,.projection-layout{grid-template-columns:1fr}.segmented button{flex:1;padding-inline:5px}.family-actions{width:100%}.family-actions button{flex:1}.family-form{grid-template-columns:1fr}.family-form h3,.family-form>label:first-of-type{grid-column:1}.investment-action-form{grid-template-columns:1fr 1fr}.investment-action-form button{width:100%}}.authenticator-key{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:1rem}.app-shell>main.haven-workspace{max-width:none;padding:0}.app-shell>header{border-bottom-color:#d8e0d8;background:#fbfcf8f2}.app-shell>header .brand-button{font-family:Georgia,serif;color:#153b37}.app-shell>header nav button.active{color:#204e41;background:#e8ede5}.retreat-dashboard{gap:0;min-width:0;color:var(--retreat-ink)}.retreat-compact-weather{display:none}.retreat-hero{position:relative;isolation:isolate;min-height:530px;height:min(640px,72dvh);display:grid;grid-template-columns:minmax(290px,360px) minmax(120px,1fr) minmax(250px,295px);grid-template-rows:auto 1fr;gap:24px;padding:40px max(32px,calc((100% - 1320px)/2));overflow:hidden}.retreat-environment{position:absolute;inset:0;z-index:-1;overflow:hidden;background:#cddcd8}.retreat-art{position:absolute;width:100%;height:100%;object-fit:cover;object-position:58% 52%;transform:translate(var(--scene-x, 0px),var(--scene-y, 0px)) scale(1.025);transition:transform 1.8s ease-out}.retreat-environment[data-motion=true] .retreat-art{animation:retreat-breathe 24s ease-in-out infinite alternate}@keyframes retreat-breathe{0%{scale:1}to{scale:1.012}}.retreat-life{position:absolute;inset:0;pointer-events:none}.retreat-light{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffe1a3;opacity:.65;box-shadow:0 0 5px #f5ce7ba6}.retreat-environment[data-motion=true] .retreat-light{animation:retreat-shimmer calc(5s + var(--i) * .4s) ease-in-out infinite alternate;animation-delay:calc(var(--i) * -.7s)}@keyframes retreat-shimmer{to{transform:translate(5px,-9px);opacity:.2}}.retreat-water{position:absolute;top:28%;height:9px;width:1px;background:#dcefedb3;opacity:.65}.retreat-environment[data-motion=true] .retreat-water{animation:retreat-rain 1.3s linear infinite;animation-delay:calc(var(--i) * -.12s)}@keyframes retreat-rain{to{transform:translate(-16px,220px);opacity:0}}.retreat-controls{position:absolute;top:18px;right:24px;display:flex;gap:6px}.retreat-controls .icon-button{color:#23483d;background:#f4f8edc9;border-color:#ffffff7a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.retreat-controls .icon-button[aria-pressed=false]:last-child{opacity:.65}.retreat-water-message{position:absolute;top:70px;right:24px;background:#f8faf1eb;color:#23483d;padding:8px 12px;border-radius:6px;font-size:.75rem}.retreat-welcome{grid-column:1 / 3;grid-row:1;align-self:start;width:min(430px,100%);pointer-events:none}.retreat-eyebrow{display:flex;gap:7px;align-items:center;font-size:.67rem;font-weight:600}.retreat-welcome h1{font-family:Georgia,serif;font-size:2.8rem;font-weight:400;line-height:1.12;margin:10px 0}.retreat-welcome h1 span{display:block}.retreat-welcome p{font-family:Georgia,serif;color:#3e5b53;font-size:1.05rem;margin:0}.retreat-spending{grid-column:1;grid-row:2;align-self:end;color:var(--retreat-ink);background:var(--retreat-glass);border:1px solid rgb(255 255 255 / 68%);border-radius:8px;padding:16px 22px 18px;-webkit-backdrop-filter:blur(18px) saturate(1.04);backdrop-filter:blur(18px) saturate(1.04);box-shadow:0 4px 16px #1f30281a;min-width:0}.retreat-hero[data-night=false] .retreat-spending,.retreat-hero[data-night=false] .retreat-outlook,.retreat-hero[data-night=false] .retreat-budget-panel,.retreat-hero[data-night=true] .retreat-spending,.retreat-hero[data-night=true] .retreat-outlook,.retreat-hero[data-night=true] .retreat-budget-panel{--retreat-ink: #17362f;--retreat-muted: #49635a;text-shadow:none}.retreat-spending .retreat-spending-link{text-shadow:none}.retreat-label{display:flex;align-items:center;gap:8px;font-size:.83rem}.retreat-label .icon-button{margin-left:auto;color:#856931;background:transparent}.retreat-daily{display:block;font-family:Georgia,serif;font-size:3.7rem;font-weight:400;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.retreat-caption{display:block;color:var(--retreat-muted);font-size:.73rem;margin-top:5px}.retreat-available{display:flex;gap:6px;flex-wrap:wrap;font-size:.78rem;padding-top:14px}.retreat-available span{color:var(--retreat-muted)}.retreat-spending-link{margin-top:15px;min-height:44px;padding:8px 16px;background:#25594b;font-size:.8rem}.retreat-outlook{grid-column:3;grid-row:2;align-self:end;padding:16px 20px;color:var(--retreat-ink);background:var(--retreat-glass);border:1px solid rgb(255 255 255 / 68%);border-radius:8px;-webkit-backdrop-filter:blur(18px) saturate(1.04);backdrop-filter:blur(18px) saturate(1.04);box-shadow:0 4px 16px #1f30281a;min-width:0}.retreat-budget-panel{grid-column:2;grid-row:2;align-self:end;min-width:0;padding:14px 18px;color:var(--retreat-ink);background:var(--retreat-glass);border:1px solid rgb(255 255 255 / 68%);border-radius:8px;-webkit-backdrop-filter:blur(18px) saturate(1.04);backdrop-filter:blur(18px) saturate(1.04);box-shadow:0 4px 16px #1f30281a}.retreat-budget-panel .section-heading{margin-bottom:3px}.retreat-budget-panel h2{display:flex;align-items:center;gap:8px;margin:0;font-family:Georgia,serif;font-size:1.05rem;font-weight:400}.retreat-budget-panel .icon-button{color:var(--retreat-ink);background:transparent}.retreat-budget-panel .retreat-budget-row{padding:8px 0;border-color:#18342f38}.retreat-budget-panel .retreat-budget-row small{color:var(--retreat-ink);opacity:.78}.retreat-weather{display:block;text-align:left;padding:0 0 15px;width:100%;background:transparent;color:var(--retreat-ink);border-radius:0}.retreat-weather>span{display:flex;gap:8px;align-items:center;font-size:.82rem}.retreat-weather>strong{display:block;font-family:Georgia,serif;font-size:1.5rem;font-weight:400;margin:12px 0 6px}.retreat-weather>small{font-size:.75rem;line-height:1.5;color:var(--retreat-muted);display:block}.retreat-payday{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;width:100%;padding:16px 0 0;text-align:left;color:var(--retreat-ink);background:transparent;border:0;border-top:1px solid var(--retreat-line);border-radius:0;font-size:.68rem}.retreat-payday span strong,.retreat-payday span small{display:block;margin-top:4px}.retreat-payday span strong{font-size:.85rem}.retreat-payday span small{color:var(--retreat-muted);line-height:1.4;overflow-wrap:anywhere}.retreat-payday>b{font-family:Georgia,serif;font-size:1rem;font-weight:400}.retreat-ledgers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:1100px;width:100%;margin:0 auto;padding:24px 28px 10px}.retreat-section{min-width:0;padding:0 22px 14px;border-right:1px solid var(--retreat-line)}.retreat-section:last-child{border-right:0}.retreat-section .section-heading{gap:6px;flex-wrap:nowrap;margin-bottom:5px}.retreat-section h2{display:flex;align-items:center;gap:9px;font-family:Georgia,serif;font-size:1.2rem;font-weight:400}.retreat-section .icon-button{color:var(--retreat-muted);background:transparent}.retreat-bill-row,.retreat-account-row,.retreat-budget-row{display:grid;width:100%;gap:12px;padding:11px 0;text-align:left;border:0;border-top:1px solid var(--retreat-line);border-radius:0;color:var(--retreat-ink);background:transparent;font-size:.78rem;min-width:0}.retreat-bill-row{grid-template-columns:54px minmax(0,1fr) auto;align-items:center}.retreat-bill-row>strong,.retreat-account-row>strong{font-variant-numeric:tabular-nums;font-size:.85rem}.retreat-section .flow-payee>span{display:block;color:var(--retreat-muted);font-size:.7rem;margin-top:4px}.retreat-account-row{grid-template-columns:20px minmax(0,1fr) auto;align-items:center}.retreat-account-row small,.retreat-budget-row small{display:block;margin-top:5px;color:var(--retreat-muted);font-size:.68rem}.retreat-account-total{display:flex;justify-content:space-between;gap:10px;padding:12px 0 0;border-top:1px solid var(--retreat-line);font-size:.78rem}.retreat-budget-row{grid-template-columns:minmax(0,1fr) auto}.retreat-budget-row>span:last-child{text-align:right}.retreat-budget-row meter{display:block;width:100%;height:7px;margin-top:10px;background:#e2e8e1;border:0;border-radius:3px;overflow:hidden}.retreat-budget-row meter::-webkit-meter-bar{background:#e2e8e1;border:0;height:7px}.retreat-budget-row meter::-webkit-meter-optimum-value{background:#7aa98c}.retreat-budget-row meter::-moz-meter-bar{background:#7aa98c}.retreat-empty{background:transparent;color:var(--retreat-muted);padding:10px 0;font-size:.8rem}.retreat-footer{display:flex;align-items:center;gap:8px;padding:20px 40px;color:var(--retreat-muted);font-family:Georgia,serif;font-size:.85rem}.retreat-footer span{margin-left:auto;font-style:italic}.app-shell>main.haven-workspace.has-detail{padding:12px;overflow-x:clip}.drawer-resizer{display:none}@media(min-width:1000px){.app-shell>main.haven-workspace.has-detail{grid-template-columns:minmax(350px,var(--haven-width, 33%)) 20px minmax(360px,1fr);gap:0}.haven-workspace.has-detail>[role=alert]{grid-column:1 / -1}.haven-workspace.has-detail .detail-section{width:100%;border-left:0}.drawer-resizer{display:flex;align-items:center;justify-content:center;min-height:0;color:var(--retreat-muted);cursor:col-resize;touch-action:none;border-radius:4px}.drawer-resizer:hover,.drawer-resizer[data-dragging=true]{color:var(--retreat-ink);background:#789b8726}.drawer-resizer:focus-visible{outline:2px solid #77978b;outline-offset:-2px}body:has(.drawer-resizer[data-dragging=true]){cursor:col-resize;-webkit-user-select:none;user-select:none}}.haven-workspace.has-detail .retreat-dashboard{display:flex;flex-direction:column;min-height:0;overflow:hidden}.has-detail .retreat-hero[data-working=true]{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(110px,1fr) auto auto;height:auto;min-height:100%;flex:1 1 auto;padding:18px;gap:12px}.has-detail .retreat-art{object-position:65% center}.has-detail .retreat-compact-weather,.has-detail .retreat-outlook{display:none}.has-detail .retreat-spending{grid-column:1;grid-row:2;align-self:auto;padding:12px 14px}.has-detail .retreat-daily{font-size:2.4rem}.has-detail .retreat-spending-link{display:none}.has-detail .retreat-budget-panel{display:block;grid-column:1;grid-row:3;align-self:auto;padding:12px 14px}.has-detail .retreat-budget-panel .retreat-budget-row{padding:6px 0}.has-detail .retreat-budget-panel .retreat-budget-row meter{margin-top:6px}.has-detail .retreat-ledgers,.has-detail .retreat-footer{display:none}@media(max-width:999px){.retreat-hero{grid-template-columns:minmax(260px,1fr) minmax(230px,.85fr);grid-template-rows:auto 1fr auto;height:auto;min-height:700px;padding:32px;gap:20px}.retreat-outlook{grid-column:2}.retreat-budget-panel{display:block;grid-column:1 / -1;grid-row:3}.retreat-welcome{max-width:360px}.retreat-welcome h1{font-size:2.4rem}.retreat-ledgers{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 12px}.retreat-section:last-child{grid-column:1 / -1;border-top:1px solid var(--retreat-line);padding-top:14px}.retreat-section:nth-child(2){border-right:0}.haven-workspace.has-detail .retreat-dashboard{overflow:hidden}.has-detail .retreat-hero[data-working=true]{height:310px;min-height:310px;flex-basis:310px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(70px,1fr) auto;padding:10px}.has-detail .retreat-spending{grid-column:1;grid-row:2;align-self:end;padding:9px 10px}.has-detail .retreat-budget-panel{grid-column:2;grid-row:2;align-self:end;padding:9px 10px}.has-detail .retreat-daily{font-size:1.8rem}.has-detail .retreat-label{gap:4px;font-size:.68rem}.has-detail .retreat-label>svg{display:none}.has-detail .retreat-available{padding-top:7px;font-size:.68rem}.has-detail .retreat-budget-panel h2{font-size:.9rem}.has-detail .retreat-budget-panel .retreat-budget-row{padding:4px 0;font-size:.7rem}.has-detail .retreat-budget-panel .retreat-budget-row meter{display:none}}@media(max-width:599px){.retreat-hero{height:auto;min-height:620px;grid-template-columns:1fr;grid-template-rows:220px auto auto auto;gap:12px;padding:22px 16px 16px}.retreat-art{object-position:65% top;height:100%}.retreat-environment{background:#e0e9df}.retreat-environment:after{content:"";position:absolute;inset:0 0 auto;height:258px;pointer-events:none;background:linear-gradient(90deg,#f6faf0e8 0%,#f6faf08c 38%,transparent 75%)}.retreat-hero[data-night=true] .retreat-environment:after{background:linear-gradient(90deg,#0c1a19b3 0%,transparent 75%)}.retreat-welcome{grid-column:1;max-width:200px;padding-top:14px}.retreat-welcome h1{font-size:2rem;max-width:185px}.retreat-welcome p{font-size:.85rem;max-width:150px;line-height:1.45}.retreat-eyebrow{font-size:.59rem}.retreat-controls{top:12px;right:12px;gap:3px}.retreat-controls,.retreat-water-message{z-index:2}.retreat-water-message{top:216px;left:16px;right:auto;font-size:.65rem;padding:6px 9px}.retreat-controls .icon-button{width:44px;height:44px}.retreat-spending{grid-column:1;grid-row:2;padding:10px 18px 14px}.retreat-daily{font-size:3rem}.retreat-spending-link{margin-top:12px}.retreat-outlook{grid-column:1;grid-row:3;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.retreat-budget-panel{display:block;grid-column:1;grid-row:4;padding:12px 16px}.retreat-weather{padding:0}.retreat-weather>span{font-size:.7rem;gap:5px}.retreat-weather>strong{font-size:1.15rem;margin:9px 0 0}.retreat-weather>small{display:none}.retreat-payday{border-top:0;border-left:1px solid var(--retreat-line);padding:0 0 0 12px;grid-template-columns:minmax(0,1fr);gap:5px}.retreat-payday>svg{display:none}.retreat-payday span small{font-size:.65rem}.retreat-ledgers{grid-template-columns:1fr;padding:6px 18px}.retreat-section{padding:14px 0;border-right:0;border-bottom:1px solid var(--retreat-line)}.retreat-section:last-child{border-top:0}.retreat-footer{padding:20px 18px;flex-wrap:wrap}.retreat-footer span{flex-basis:100%;margin:0;font-size:.78rem}.haven-workspace.has-detail .retreat-hero[data-working=true]{height:380px;min-height:380px;flex-basis:380px;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(54px,1fr) auto auto;gap:8px;padding:8px}.has-detail .retreat-spending{width:auto;padding:7px 9px 9px;position:static;grid-column:1;grid-row:2}.has-detail .retreat-budget-panel{grid-column:1;grid-row:3;padding:7px 9px}.has-detail .retreat-art{height:100%;object-position:62% center}.has-detail .retreat-caption{display:none}.has-detail .retreat-label .icon-button{width:44px;flex-basis:44px}.has-detail .retreat-controls{top:8px;right:8px}.has-detail .retreat-environment:after{display:none}.has-detail .retreat-water-message{top:62px;left:auto;right:8px;max-width:40%}}[data-theme=dark]{--retreat-ink: #edf1e9;--retreat-muted: #bac8be;--retreat-line: #445449;--retreat-paper: #161d19;--retreat-glass: #1c2923e8}[data-theme=dark] .retreat-environment{background:#19241e}[data-theme=dark] .retreat-environment:after{background:linear-gradient(90deg,#0c1a19b3 0%,transparent 75%)}[data-theme=dark] .app-shell>header .brand-button{color:#e6eee0}[data-theme=dark] .app-shell>header nav button.active{color:#e8f1e3;background:#354c3e}[data-theme=dark] .retreat-welcome{color:#f2f3df;text-shadow:0 1px 12px #101c1b}[data-theme=dark] .retreat-welcome p{color:#dee5d8}[data-theme=dark] .retreat-spending,[data-theme=dark] .retreat-outlook,[data-theme=dark] .retreat-budget-panel{border-color:#ffffff9e;box-shadow:0 4px 16px #050d0a29}[data-theme=dark] .retreat-controls .icon-button,[data-theme=dark] .retreat-water-message{color:#e5ebd9;background:#25382dd9;border-color:#90a58a50}[data-theme=dark] .retreat-label .icon-button{color:#856931}[data-theme=dark] .retreat-spending-link{background:#426a53}@media(prefers-reduced-motion:reduce){.retreat-art,.retreat-light,.retreat-water{animation:none!important;transition:none!important;transform:none!important;scale:1!important}}
