.site-header nav a{color:inherit;text-decoration:none;padding:.65rem .8rem;border-radius:.5rem;font-size:.9rem}.site-header nav a:hover,.site-header nav a[aria-current]{background:#e7ede5}.account-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:5rem;align-items:center;padding:5rem 0;min-height:65vh}.account-intro h1{font-family:Newsreader,Georgia,serif;font-size:clamp(2.6rem,5vw,4.5rem);font-weight:400;line-height:1.05;letter-spacing:-.035em}.account-intro p{max-width:35rem;line-height:1.8}.account-panel{background:#fff;padding:2.5rem;border:1px solid #dce2d8;border-radius:16px}.account-panel h2{font-size:1.6rem}.account-panel p{line-height:1.7}.account-panel .text-button{display:block;margin:1rem 0}.google-button{display:flex;align-items:center;justify-content:center;gap:1rem;width:100%;padding:1rem;margin:2rem 0 1rem;background:#fff;color:#21382f;border:1px solid #a9b5aa;border-radius:8px;font:600 1rem 'DM Sans',sans-serif;cursor:pointer;min-height:52px}.google-button:hover{background:#f2f5ef}.google-g{font-size:1.4rem;color:#4285f4;font-weight:700}.google-button:disabled{opacity:.6;cursor:wait}#account-status{color:#744b19;min-height:1.5em}hr{border:0;border-top:1px solid #e0e6dc;margin:2rem 0}.workspace{padding:2rem 0 5rem}.workspace-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}.workspace h1{font-family:Newsreader,Georgia,serif;font-size:3rem;font-weight:400}.workspace-tabs{display:flex;gap:.5rem;overflow:auto;margin:2rem 0}.workspace-tabs button{white-space:nowrap}.workspace-tabs [aria-current]{background:#163c32;color:white}.money-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dce2d8;border:1px solid #dce2d8;border-radius:12px;overflow:hidden}.metric{background:#f8f9f5;padding:1.5rem}.metric strong{display:block;font-size:2rem;font-variant-numeric:tabular-nums;margin:.6rem 0}.money-table{width:100%;border-collapse:collapse;text-align:left}.money-table th,.money-table td{padding:1rem .5rem;border-bottom:1px solid #dce2d8;font-variant-numeric:tabular-nums}.money-table th{font-weight:500;color:#66796d}.table-wrap{overflow:auto}.entry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0;padding:1.5rem;background:#fff;border:1px solid #dce2d8;border-radius:12px}.entry-form label{display:flex;flex-direction:column;gap:.4rem}.entry-form input,.entry-form select{font:inherit;padding:.8rem;border:1px solid #aebcb0;border-radius:6px;background:#fff;min-width:0}.entry-form .form-actions{grid-column:1/-1;display:flex;gap:1rem}.notice{padding:1rem 1.4rem;background:#eee9dc;border-radius:8px;line-height:1.6;margin:1rem 0}.empty-state{padding:3rem 1rem;text-align:center}.balance-note{font-size:.85rem;color:#637568}.workspace a{color:#245940}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #97b18c;outline-offset:3px}dialog{max-width:min(32rem,90vw);border:1px solid #cbd5c7;border-radius:12px;padding:2rem}dialog::backdrop{background:#17352c66}dialog form{display:flex;gap:1rem}.account-panel .button{margin-top:.5rem}@media(max-width:720px){.account-layout{grid-template-columns:1fr;gap:1.5rem;padding:2rem 0}.account-panel{padding:1.5rem}.money-metrics{grid-template-columns:1fr}.metric strong{font-size:1.7rem}.entry-form{grid-template-columns:1fr;padding:1rem}.workspace-head{align-items:flex-start;flex-direction:column}.workspace h1{font-size:2.4rem}.site-header{flex-wrap:wrap}.site-header nav{overflow:auto;max-width:100%}}

/* Keep link specificity from overriding filled-button contrast. */
.workspace a.button,.account-panel a.button,.account-intro a.button{color:#fff}.workspace a.button.secondary,.account-panel a.button.secondary{color:#163c32}

/* Shared mobile-safe application framing and account entry. */
.shell,.account-layout>* ,.workspace,.workspace-head>*{min-width:0}
.brand{font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:-.035em;white-space:nowrap}
.mark{font-family:'DM Sans',sans-serif;font-weight:600;font-size:26px}
.account-layout{gap:clamp(2rem,7vw,7rem);padding:4rem 0 5rem;max-width:1120px;margin:auto}
.account-intro h1,.account-panel h2,.workspace h1{font-family:'DM Sans',sans-serif;font-weight:500;letter-spacing:-.05em}
.account-intro h1{font-size:clamp(2.5rem,4.2vw,4rem);line-height:1.12}
.account-intro>p:not(.eyebrow){max-width:410px;margin-top:1.4rem;color:#5b6b60}
.account-benefits{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:1rem;font-size:.9rem}
.account-benefits li{display:flex;gap:1rem;align-items:baseline}.account-benefits span{color:#647669;font-size:.72rem}
.account-panel{padding:clamp(1.5rem,3.5vw,3rem);box-shadow:0 14px 50px #173c3207;overflow-wrap:anywhere}
.account-symbol{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#163c32;color:#eddfb9;font-size:1.7rem;font-weight:600;margin-bottom:1.5rem}
.account-panel h2{font-size:2.25rem;margin:.6rem 0}.account-panel .eyebrow{font-size:.65rem}
.signup-note{font-size:.8rem;color:#5b6b60;line-height:1.65}.practice-alternative{border-top:1px solid #dce2d8;padding-top:1.4rem;margin-top:1.4rem}
#account-status:empty{display:none}.google-button{margin:1.6rem 0 1rem;min-height:54px}.account-panel .tiny{color:#5b6b60}
.table-wrap{max-width:100%;overscroll-behavior-x:contain}.workspace-tabs{max-width:100%}.workspace-tabs button{flex-shrink:0;min-height:44px}
.entry-form input,.entry-form select, #transaction-account{font-size:16px;min-height:44px;max-width:100%}
.entry-form .form-actions,dialog form{flex-wrap:wrap}.text-button{min-height:44px}
@media(max-width:720px){.account-layout{padding:2rem 0 3rem;gap:2rem}.account-intro h1{font-size:2.5rem}.account-benefits{gap:.65rem;margin-top:1.2rem}.account-panel{padding:1.5rem}.account-panel h2{font-size:2rem}.site-header nav{justify-content:flex-start;white-space:nowrap;overflow-x:auto}.site-header nav a,.site-header nav button{flex-shrink:0;min-height:44px}.brand{font-size:21px}.entry-form .form-actions .button{flex:1 1 130px}dialog{max-height:85dvh;overflow:auto;padding:1.3rem}dialog form .button{flex:1 1 130px}.workspace h1{font-size:2.2rem}}

.account-page .account-layout{display:block;max-width:480px;padding:48px 0 64px;min-height:0}.account-page .account-intro{display:none}.account-page .account-panel{padding:32px;border-radius:12px}.account-page .account-panel h2{font-size:1.85rem}.account-page .account-symbol{width:38px;height:38px;margin-bottom:24px}.account-page .account-panel>p:not(.eyebrow){font-size:.9rem}.account-page .account-panel .signup-note{font-size:.8rem}.account-page .account-panel .tiny{font-size:.75rem}.account-page .site-header{height:76px;min-height:76px}.account-page .google-button{margin-top:24px}.account-page .account-layout:has(#backup){max-width:640px}.account-page .account-layout:has(#backup) .account-intro{display:block;margin-bottom:2rem}.account-page .account-intro h1{font-size:2.5rem}
@media(max-width:540px){.account-page .site-header{height:auto;padding:16px 0;gap:12px}.account-page .account-layout{padding:26px 0 40px}.account-page .account-panel{padding:24px 20px}.account-page .brand{font-size:20px}.account-page .site-header nav{width:100%}.account-page .account-panel h2{font-size:1.75rem}}

.move-stage{padding:1.6rem 0;border-bottom:1px solid #dce2d8}.move-stage h3{margin:0 0 .5rem}.move-stage>p{max-width:650px;line-height:1.6}.move-stage .money-table td{vertical-align:top}#add-move-bill{margin-top:1.5rem}

.savings-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:2rem 0}.savings-progress article{padding:1.3rem;border:1px solid #dce2d8;border-radius:10px}.goal-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.goal-heading h3{margin:0}.goal-heading span{font-size:.8rem;color:#526b5e}.savings-progress progress{width:100%;height:10px;margin:1rem 0;accent-color:#245940}.savings-progress p{font-size:.9rem;overflow-wrap:anywhere}@media(max-width:720px){.savings-progress{grid-template-columns:1fr}}

/* Actionable onboarding for empty and partially configured households. */
.workspace h2,.workspace h3{font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:-.025em}
.household-setup{background:#fff;border:1px solid #dce2d8;border-radius:12px;padding:clamp(20px,3vw,32px);margin-bottom:24px}.household-setup h2{font-size:clamp(24px,3vw,32px);margin:8px 0 12px}.household-setup>p{max-width:720px;line-height:1.65}.setup-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.setup-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.setup-step{display:flex;flex-direction:column;gap:12px;align-items:flex-start;text-align:left;font:inherit;color:#163c32;background:#f6f8f3;border:1px solid #dce2d8;border-radius:8px;padding:20px;cursor:pointer}.setup-step:hover{border-color:#245940;background:#edf2e9}.setup-step strong{font-size:16px}.setup-step>span:last-child{font-size:14px;line-height:1.6;color:#526b5e}.setup-step .eyebrow{font-size:10px}@media(max-width:1000px){.setup-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.setup-steps{grid-template-columns:1fr}.setup-actions>*{width:100%;text-align:center}}

/* Finance workspace: persistent desktop navigation, compact mobile drawer. */
.money-page .shell{max-width:1600px;padding:0 32px}.money-page .workspace{display:grid;grid-template-columns:218px minmax(0,1fr);gap:36px;padding-top:28px;align-items:start}.money-sidebar{position:sticky;top:24px;min-height:calc(100dvh - 160px);border-right:1px solid #dce2d8;padding:16px 20px 24px 0;display:flex;flex-direction:column}.money-sidebar nav{display:grid;gap:6px;margin-top:22px}.money-sidebar button,.money-sidebar a{display:block;text-align:left;width:100%;padding:13px 14px;border:0;border-radius:7px;background:transparent;color:#54685e;font:500 14px 'DM Sans',sans-serif;text-decoration:none;cursor:pointer;min-height:44px}.money-sidebar button:hover,.money-sidebar a:hover{background:#edf2ed;color:#163c32}.money-sidebar [aria-current]{background:#e5eee7;color:#163c32;font-weight:700}.sidebar-bottom{margin-top:16px;padding-top:12px;border-top:1px solid #dce2d8;display:grid;gap:6px}.money-main{min-width:0}.money-page .workspace-head{margin:12px 0 28px}.money-page .workspace h1{font-size:34px;margin:8px 0 12px;line-height:1.2}.money-page .workspace-head p{color:#64786d}.money-surface{background:white;border:1px solid #dce2d8;border-radius:10px;padding:24px;min-width:0}.money-surface .household-setup{border:0;padding:0 0 24px;border-bottom:1px solid #dce2d8;border-radius:0}.section-nav{display:flex;gap:24px;margin-bottom:20px}.section-nav button{font:inherit;color:#245940;background:none;border:0;border-bottom:1px solid #245940;padding:12px 0;cursor:pointer}.mobile-menu{display:none}.money-page .money-table td{padding:20px 12px}.money-page #transaction-account{padding:10px 14px;border:1px solid #cbd7cd;background:white;border-radius:6px}.money-page footer{padding-left:254px}.money-page .empty-state{padding:48px 20px}.money-page .setup-steps{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:800px){.money-page .shell{padding:0 18px}.money-page .workspace{display:block;padding-top:18px}.mobile-menu{display:inline-flex}.money-sidebar{display:none}.nav-open .money-sidebar{display:flex;position:fixed;inset:0 auto 0 0;width:min(280px,82vw);padding:90px 20px 24px;background:#f6f8f3;z-index:30;box-shadow:0 0 0 100vmax #10291f66;min-height:100dvh;overflow:auto}.nav-open .mobile-menu{position:fixed;top:20px;left:20px;z-index:31}.money-page .workspace h1{font-size:28px}.money-surface{padding:18px}.money-page footer{padding-left:0}.money-page .setup-steps{grid-template-columns:1fr}.money-page .site-header{gap:12px;padding:18px 0}.money-page .brand{font-size:19px}.money-page .workspace-head{margin-top:24px}.section-nav{gap:16px;flex-wrap:wrap}}

.account-section-head h2{font-size:22px;margin:0 0 8px}.account-section-head p{color:#65776d;line-height:1.6;margin:0}.connection-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#eef3ed;border-radius:8px;padding:22px;margin:26px 0}.connection-summary p{font-size:13px;color:#65776d;margin:8px 0 0;line-height:1.6}.connection-badge{white-space:nowrap;font-size:12px;border:1px solid #bdcdc0;border-radius:20px;padding:7px 11px}.accounts-label{font-size:15px;margin:28px 0 8px}.account-row{display:flex;align-items:center;gap:18px;padding:24px 0;border-bottom:1px solid #e1e7de}.account-icon{display:grid;place-items:center;width:28px;flex-shrink:0}.account-description{min-width:0;flex:1}.account-description>strong{font-size:14px}.account-description p,.account-description small{color:#6a7c70;font-size:12px;margin:7px 0}.account-balance{text-align:right;font-variant-numeric:tabular-nums}.account-balance strong{display:block;font-size:17px}.account-balance small{display:block;font-size:12px;margin-top:8px;color:#6a7c70}.account-data-footer{border-top:1px solid #dce2d8;margin-top:30px;padding-top:22px;font-size:13px;line-height:1.7}.account-data-footer h3{font-size:16px}.account-data-footer .text-button{display:block;margin-top:10px;background:none;border:0;padding:0;color:#245940;font:inherit;cursor:pointer}@media(max-width:540px){.connection-summary{align-items:flex-start;flex-direction:column;padding:18px}.account-row{gap:12px;flex-wrap:wrap}.account-balance{width:100%;padding-left:40px;text-align:left}.account-balance strong{display:inline}.account-balance small{display:inline;margin-left:12px}}

/* Compact shared application chrome. Keep working content above the fold. */
.shell .site-header,.account-page .site-header,.money-page .site-header{height:64px;min-height:64px;padding:8px 0;margin:0;gap:16px;align-items:center}
.site-header .brand{font-size:20px;gap:10px}.site-header .mark{width:34px;height:34px;min-width:34px;border-radius:8px;font-size:22px}.site-header nav{padding:2px;gap:2px}.site-header nav a,.site-header nav button{padding:8px 12px;font-size:13px;min-height:40px;display:inline-flex;align-items:center}
.money-page .workspace{padding-top:16px;gap:28px}.money-sidebar{padding-top:8px;top:16px;min-height:calc(100dvh - 100px)}.money-sidebar>.eyebrow{margin:4px 0 12px}.money-sidebar nav{margin-top:4px}.money-page .workspace-head{margin:0 0 16px;min-height:34px;display:flex;align-items:center;flex-direction:row}.money-page .workspace h1{font-size:26px;line-height:1.25;margin:0;letter-spacing:-.035em}.money-surface{padding:20px}.section-nav{margin:0 0 14px;gap:20px}.section-nav button{padding:8px 0;font-size:14px}.account-section-head h2{font-size:18px;margin-bottom:6px}.account-section-head p{font-size:14px}.connection-summary{margin:18px 0;padding:16px 18px}.accounts-label{margin-top:20px}.account-row{padding:18px 0}.account-data-footer{margin-top:22px;padding-top:18px}
.account-page .account-layout{padding:24px 0 40px}.account-page .account-layout:has(#backup) .account-intro{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.account-page .account-intro h1{font-size:26px;margin:0}.account-page .account-panel{padding:24px}.workspace:not(#money){padding-top:24px}.workspace:not(#money)>h1{font-family:'DM Sans',sans-serif;font-size:28px;line-height:1.25;margin:0 0 16px}
@media(max-width:800px){.money-page .workspace{position:relative;padding-top:14px}.money-page .mobile-menu{position:absolute;top:14px;right:0;min-height:40px;padding:7px 12px}.money-page .workspace-head{min-height:40px;margin-bottom:12px;padding-right:100px}.money-page .workspace h1{font-size:23px}.money-page .nav-open .mobile-menu{position:fixed;top:16px;left:16px;right:auto}.money-page .money-surface{padding:16px}.money-page .nav-open .money-sidebar{padding-top:74px}.account-page .account-layout:has(#backup) .account-intro{flex-wrap:wrap}}
@media(max-width:540px){.shell .site-header,.account-page .site-header,.money-page .site-header{height:auto;min-height:58px;padding:8px 0;gap:6px 12px;flex-wrap:wrap}.site-header .brand,.money-page .brand,.account-page .brand{font-size:18px}.site-header nav,.account-page .site-header nav{width:auto;max-width:100%;margin:0}.site-header nav a,.site-header nav button{min-height:40px;padding:8px 10px}.account-page .account-layout{padding:18px 0 32px}}

/* All application navigation lives on the left; no duplicate top navigation. */
.money-page>.shell>.site-header{display:none}.money-page .workspace{padding-top:24px}.money-sidebar{min-height:calc(100dvh - 48px)}.money-sidebar .sidebar-brand{display:flex;align-items:center;gap:8px;padding:0 0 24px;width:auto;font-size:16px;white-space:normal;line-height:1.3;color:#163c32}.sidebar-brand .mark{width:34px;height:34px;min-width:34px;font-size:23px}.money-sidebar .sidebar-brand:hover{background:none}.sidebar-bottom>a[aria-current]{display:none}
.sidebar-page .shell{padding:24px 32px 24px 270px;max-width:1600px;margin:auto}.sidebar-page .shell .site-header{position:fixed;left:24px;top:24px;bottom:24px;width:218px;height:auto;min-height:0;padding:0 20px 0 0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;border-bottom:0;border-right:1px solid #dce2d8;gap:24px}.sidebar-page .site-header .brand{font-size:16px;white-space:normal;line-height:1.3}.sidebar-page .site-header nav{display:flex;flex-direction:column;align-items:stretch;border:0;background:none;border-radius:0;padding:0;gap:6px;width:100%;overflow:visible}.sidebar-page .site-header nav a,.sidebar-page .site-header nav button{width:100%;justify-content:flex-start;padding:12px 14px;border-radius:7px;min-height:44px;text-align:left;font-size:14px}.sidebar-page .header-date{margin-top:auto}.sidebar-page .account-layout{padding-top:0}.sidebar-page .workspace{padding-top:0}.shared-menu{display:none}
@media(max-width:800px){.money-page .workspace{padding-top:18px}.money-page .mobile-menu{top:18px}.sidebar-page .shell{padding:72px 18px 24px}.sidebar-page .shell .site-header{display:none}.shared-menu{display:inline-flex;position:absolute;top:16px;left:18px;z-index:31;min-height:40px;padding:8px 12px}.sidebar-page.shared-nav-open .site-header{display:flex;inset:0 auto 0 0;width:min(280px,82vw);padding:74px 20px 24px;background:#f6f8f3;z-index:30;box-shadow:0 0 0 100vmax #10291f66;overflow:auto}.shared-nav-open .shared-menu{position:fixed}.sidebar-page .account-layout{padding-top:0}.sidebar-page .site-header nav{width:100%}.money-page .nav-open .sidebar-brand{padding-bottom:20px}}

.profile-control{position:absolute;top:20px;right:32px;z-index:25;font-family:'DM Sans',sans-serif}.profile-pill{display:flex;align-items:center;gap:8px;border:1px solid #cbd5cd;background:#fff;border-radius:24px;padding:4px 10px 4px 5px;min-height:38px;color:#21382f;font:500 13px 'DM Sans',sans-serif;cursor:pointer}.profile-pill:hover,.profile-pill[aria-expanded=true]{border-color:#46745c;background:#f5f8f3}.profile-avatar{width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:#e6eee5;font-size:11px;font-weight:700;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-chevron{display:block;width:16px;height:16px;flex:none;margin-left:2px;align-self:center;transition:transform .15s ease}.profile-pill[aria-expanded=true] .profile-chevron{transform:rotate(180deg)}.profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:#fff;border:1px solid #dce2d8;border-radius:12px;box-shadow:0 12px 32px #163c321c;overflow:hidden}.profile-dropdown[hidden]{display:none}.profile-identity{display:flex;flex-direction:column;gap:5px;padding:16px;border-bottom:1px solid #e0e6dc}.profile-identity>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#687c70}.profile-identity strong{font-size:14px}.profile-identity small{font-size:12px;color:#687c70;overflow-wrap:anywhere}.profile-dropdown>a,.profile-dropdown>button{display:block;width:100%;text-align:left;padding:13px 16px;background:none;border:0;font:14px 'DM Sans',sans-serif;color:#21382f;text-decoration:none;cursor:pointer;min-height:44px}.profile-dropdown>a:hover,.profile-dropdown>button:hover{background:#f3f6f0}.profile-dropdown>.profile-signout{color:#a43c54}.money-page.has-profile .workspace-head{padding-right:235px;min-height:38px}.sidebar-page.has-profile .account-layout,.sidebar-page.has-profile .workspace,.sidebar-page.has-profile #main{padding-top:46px}@media(max-width:800px){.profile-control{top:16px;right:18px}.money-page.has-profile .workspace{padding-top:72px}.money-page.has-profile .workspace-head{padding-right:0}.money-page .mobile-menu{left:0;right:auto;top:16px}.sidebar-page.has-profile .account-layout,.sidebar-page.has-profile .workspace,.sidebar-page.has-profile #main{padding-top:0}.profile-name{max-width:130px}.profile-dropdown{width:min(260px,calc(100vw - 36px))}}

.banksync-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}.banksync-controls{display:grid;gap:8px;min-width:200px}.banksync-controls label{font-size:12px}.banksync-controls select{padding:10px;border:1px solid var(--line,#cad7ce);border-radius:8px;background:white;color:inherit;font:inherit}.banksync-controls button:disabled{opacity:.6;cursor:wait}@media(max-width:700px){.connection-summary{align-items:stretch;flex-direction:column}.banksync-controls{width:100%}}

.bank-connect-dialog{width:min(560px,calc(100% - 32px));box-sizing:border-box;border:1px solid #d9e1d9;border-radius:16px;padding:28px;color:#183f34;background:white;box-shadow:0 24px 80px #10291f30}.bank-connect-dialog::backdrop{background:#122a2466}.bank-dialog-heading{display:flex;gap:18px;align-items:flex-start}.bank-dialog-heading h2{font-size:23px;margin:0 0 10px}.bank-dialog-heading p{color:#607267;font-size:14px;line-height:1.6}.bank-connect-dialog label{font-size:13px;font-weight:600;display:block;margin:20px 0 8px}.bank-search-row{display:flex;gap:10px}.bank-search-row input{min-width:0;flex:1;font:inherit;font-size:16px;padding:12px;border:1px solid #bbcbbf;border-radius:8px}.bank-choice{display:flex;justify-content:space-between;gap:16px;width:100%;padding:16px 0;background:none;border:0;border-bottom:1px solid #e0e6df;color:inherit;cursor:pointer;text-align:left;font:inherit}.bank-choice:hover{background:#f3f6f2}.bank-security-note{font-size:12px;line-height:1.6;color:#627568;border-top:1px solid #e0e6df;padding-top:18px}.bank-connect-dialog button:disabled{opacity:.55;cursor:wait}#bank-feedback{font-size:14px;line-height:1.5}#bank-results{margin-top:18px}@media(max-width:480px){.bank-connect-dialog{padding:20px}.bank-search-row{flex-wrap:wrap}.bank-search-row .button{width:100%}}
.bank-dialog-heading h2{font-family:inherit;font-style:normal;font-weight:650}#bank-search{display:block;margin:0;padding:0;border:0;background:none}#bank-search label{display:block;margin:20px 0 8px}.bank-search-row{width:100%}
.learning-intro{display:flex;justify-content:space-between;gap:32px;padding:8px 0 28px;border-bottom:1px solid #dce4dc;margin-bottom:24px}.learning-intro h2{font:650 28px/1.2 inherit;letter-spacing:-.6px;margin:8px 0 12px}.learning-intro p{max-width:620px;color:#607366}.learning-progress{display:flex;flex-direction:column;gap:8px;min-width:180px;justify-content:center}.learning-progress strong{font-size:30px}.learning-progress span{font-size:12px}.learning-progress progress{width:100%;accent-color:#204e3f}.learning-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px}.lesson{background:white;border:1px solid #dbe3db;border-radius:10px;margin-bottom:12px;overflow:hidden}.lesson summary{display:flex;gap:16px;align-items:center;padding:20px;cursor:pointer;list-style:none}.lesson summary::-webkit-details-marker{display:none}.lesson summary>span:nth-last-child(2){flex:1}.lesson summary strong{font-size:16px;display:block}.lesson summary small{display:block;font-size:12px;color:#6d7d71;margin-top:6px}.lesson-number{font-size:13px;color:#758a77}.lesson[open] summary{background:#edf3ec;border-bottom:1px solid #dbe3db}.lesson-body{padding:22px;line-height:1.7;font-size:14px}.lesson-body p{margin:0 0 18px}.lesson-body h4{font:650 14px/1.4 inherit;margin:22px 0 8px}.lesson-lead{font-weight:600}.lesson-check{display:block!important;padding:20px 0 0!important;margin-top:24px!important;border-top:1px solid #e0e7df}.lesson-check fieldset{border:0;margin:0 0 16px;padding:0}.lesson-check legend{font-weight:600;margin-bottom:10px}.lesson-check label{display:flex;gap:8px;align-items:baseline;font-size:14px;margin:10px 0}.lesson-check input{width:auto}.lesson-feedback{font-size:13px;margin-top:12px!important}.resource-link{font-size:12px}.learning-tools{margin-top:36px}.calculator-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.calculator-form label{display:grid;gap:6px;font-size:13px}.calculator-form input{min-width:0;width:100%;box-sizing:border-box;border:1px solid #cbd7cb;border-radius:6px;padding:10px;font:inherit;font-size:16px}.calculator-result,.calculator-form>p{grid-column:1/-1}.calculator-result{font-size:14px;line-height:1.7}.learning-guide{align-self:start;background:#edf3ec;border-radius:12px;padding:24px}.learning-guide h3{font:650 22px/1.3 inherit;margin:10px 0}.learning-guide p{font-size:14px;line-height:1.6}.guide-prompts{display:grid;gap:8px;margin:20px 0}.guide-prompts button{background:white;border:1px solid #d3dfd3;border-radius:7px;padding:12px;text-align:left;color:inherit;font:inherit;font-size:13px;cursor:pointer}.guide-messages article{font-size:13px;line-height:1.6;border-bottom:1px solid #ccdacd;padding:14px 0}.guide-messages article p{font-size:13px}#guide-form{display:grid;gap:10px;padding:0;margin:20px 0;background:none;border:0}#guide-form label{font-size:13px}#guide-form textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #becdbf;border-radius:8px;font:inherit;font-size:16px;resize:vertical}.learning-sources{margin-top:28px;border-top:1px solid #cedccc;padding-top:12px}.learning-sources a{display:block;font-size:13px;margin:12px 0}.debt-compare{display:grid;grid-template-columns:1fr 1fr;gap:24px}.debt-order{padding-left:20px}.debt-order li{margin:12px 0;padding-left:4px}.debt-order span,.debt-order strong,.debt-order small{display:block}.debt-order small{color:#6e7e70}@media(max-width:1100px){.learning-layout{grid-template-columns:1fr}.learning-guide{max-width:none}}@media(max-width:600px){.learning-intro{flex-direction:column;gap:16px}.learning-progress{max-width:250px}.calculator-form,.debt-compare{grid-template-columns:1fr}.lesson summary{padding:16px}.lesson-body{padding:18px}.learning-intro h2{font-size:24px}}
.learning-intro h2,.learning-guide h3,.lesson-body h4{font-family:inherit;font-style:normal;font-weight:650}.learning-intro h2{font-size:28px;line-height:1.2}.learning-guide h3{font-size:22px;line-height:1.3}.lesson-body h4{font-size:14px;line-height:1.4}

.account-group{margin-top:28px}.account-group-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 0;border-bottom:1px solid var(--line,#dbe3d9)}.account-group-heading h3{margin:0 0 6px;font-family:inherit;font-size:20px}.account-group-heading p{margin:0;color:#5c7167;font-size:13px}.account-group-total{display:grid;gap:5px;text-align:right}.account-group-total strong{font-size:24px;line-height:1.2}.account-group-total small{color:#5c7167;font-size:12px}.account-group-heading .muted{font-size:14px;font-weight:400;color:#5c7167}@media(max-width:600px){.account-group-heading{flex-direction:column;gap:12px}.account-group-total{text-align:left}.account-group-total strong{font-size:22px}}

/* Native disclosure keeps totals visible and supports keyboard activation. */
summary.account-group-heading{cursor:pointer;list-style:none;align-items:center;position:relative;padding-left:28px}summary.account-group-heading::-webkit-details-marker{display:none}.account-group-chevron{position:absolute;left:2px;top:23px;font-size:27px;line-height:1;transform:rotate(0deg)}.account-group[open] .account-group-chevron{transform:rotate(90deg)}summary.account-group-heading:focus-visible{outline:2px solid #46745c;outline-offset:4px;border-radius:4px}summary.account-group-heading:hover{background:#f7f9f5}@media(max-width:600px){summary.account-group-heading{align-items:flex-start}}

.bank-connect-dialog{position:fixed;padding:30px;border-radius:18px;outline:none}.bank-dialog-heading{padding-right:36px}.bank-dialog-heading h2{margin:0;font-size:23px;line-height:1.3;letter-spacing:-.02em}.bank-connect-dialog #bank-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:0;border:0;border-radius:50%;background:#f1f5f1;color:#496459;text-decoration:none;font-size:18px;line-height:1;cursor:pointer}.bank-connect-dialog #bank-close:hover{background:#e5ede6}.bank-connect-dialog #bank-close:focus-visible{outline:2px solid #46745c;outline-offset:3px}.bank-connect-dialog #bank-feedback{margin:18px 0 0;color:#5c7167;font-size:15px;line-height:1.65}.bank-permission-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:22px;border-top:1px solid #e0e6df}.bank-permission-actions[hidden]{display:none}.bank-permission-actions .button{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none}.bank-permission-actions .button:focus-visible{outline:2px solid #46745c;outline-offset:3px}@media(max-width:480px){.bank-connect-dialog{padding:24px}.bank-dialog-heading h2{font-size:21px}.bank-permission-actions .button{width:100%}}

.import-page-header{padding:0 220px 22px 0;margin-bottom:24px;border-bottom:1px solid var(--line,#dbe3d9)}.import-page-header h1{font-family:inherit;font-size:28px;line-height:1.25;margin:12px 0 8px;letter-spacing:-.03em}.import-page-header>p{margin:0;color:#5c7167;font-size:15px}.page-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;font-size:13px;line-height:1.6}.page-breadcrumbs li{display:flex;align-items:center;gap:8px}.page-breadcrumbs li+li:before{content:'›';color:#87968c}.page-breadcrumbs a{color:#496459;text-decoration:none}.page-breadcrumbs a:hover{text-decoration:underline}.page-breadcrumbs [aria-current]{color:#667b6e}.import-workspace #import>p:first-child{margin-top:0}@media(max-width:800px){.import-page-header{padding:0 0 18px}.import-workspace{padding-top:72px!important}.import-page-header h1{font-size:25px}}

/* Shared workspace header and navigation hierarchy. */
.page-header,.workspace .page-header,.import-workspace .page-header{display:block;padding:0 220px 18px 0;margin:0 0 22px;border:0;border-bottom:1px solid #dbe3d9;background:none;text-align:left}.page-header h1,.workspace .page-header h1,.import-workspace .page-header h1{font-family:'DM Sans',sans-serif;font-size:28px;font-style:normal;font-weight:600;line-height:1.25;letter-spacing:-.035em;margin:10px 0 0;text-wrap:balance}.page-header .page-description{font-size:14px;line-height:1.6;color:#5c7167;margin:8px 0 0;max-width:65ch}.page-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:0;font:400 12px/1.6 'DM Sans',sans-serif}.page-breadcrumbs li{display:flex;align-items:center;gap:7px}.page-breadcrumbs li+li:before{content:'›';color:#8a998e}.page-breadcrumbs a,.page-breadcrumbs button{display:inline;padding:2px 0;border:0;border-radius:2px;background:none;color:#526c5e;font:inherit;text-decoration:none;cursor:pointer;min-height:0}.page-breadcrumbs a:hover,.page-breadcrumbs button:hover{color:#163c32;text-decoration:underline;background:none}.page-breadcrumbs a:focus-visible,.page-breadcrumbs button:focus-visible{outline:2px solid #46745c;outline-offset:3px}.page-breadcrumbs [aria-current]{color:#718276}.money-page .page-header{min-height:62px}.sidebar-page.has-profile .account-workspace{padding-top:28px}.account-workspace .account-layout{padding:8px 0 32px;min-height:0;align-items:start;gap:40px}.account-household-title{font-size:26px;line-height:1.25;margin:0 0 20px}.account-welcome-title{font:400 clamp(2rem,4vw,3.25rem)/1.1 Newsreader,Georgia,serif;margin:0 0 20px}.utility-page main>.page-header{padding-right:0}.heading.page-header{position:relative}.heading.page-header>.pill{position:absolute;right:0;bottom:18px;font-size:11px}.heading.page-header h1{max-width:36ch}.heading.page-header .eyebrow{display:none}
@media(max-width:800px){.page-header,.workspace .page-header,.import-workspace .page-header{padding:0 0 16px;margin-bottom:20px}.page-header h1,.workspace .page-header h1,.import-workspace .page-header h1{font-size:25px}.sidebar-page.has-profile .account-workspace{padding-top:72px}.account-workspace .account-layout{gap:24px}.heading.page-header>.pill{position:static;display:inline-flex;margin-top:12px}.heading.page-header{display:block}.page-breadcrumbs ol{font-size:12px;row-gap:3px}}
.sidebar-page.has-profile .account-workspace .account-layout{padding-top:8px}@media(min-width:801px){.sidebar-page.has-profile .account-workspace,.sidebar-page.has-profile .import-workspace,.sidebar-page.has-profile #main{padding-top:0}}

.card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.card-source{display:flex;align-items:center;gap:6px;font-size:12px;margin-top:6px;color:#64796d}.card-source.connected{color:#28624c}.entry-form input[readonly]{background:#eef3ee;color:#516759}

.account-rename{font-size:12px;margin-left:8px;color:#62766a}.account-rename-dialog{width:min(440px,calc(100% - 32px));box-sizing:border-box;padding:28px;border:1px solid #dbe3d9;border-radius:16px;color:#183f34;background:#fff}.account-rename-dialog::backdrop{background:#122a2466}.account-rename-dialog h2{font:600 23px/1.3 'DM Sans',sans-serif;margin:0 0 10px}.account-rename-dialog label{display:grid;gap:8px;margin:20px 0 10px;font-size:14px}.account-rename-dialog input{width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #bbcbbf;border-radius:8px}
.income-workspace.money-surface{background:transparent;border:0;padding:0;display:grid;gap:24px}.income-panel{background:#fff;border:1px solid #dce2d8;border-radius:12px;padding:24px}.income-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.income-section-head h2{font-size:1.3rem;margin:0 0 6px}.income-section-head p{font-size:.9rem;color:#637568;margin:0;max-width:60ch}.income-section-head .button{white-space:nowrap}.income-panel .money-table td{padding:18px 8px}.income-panel .money-table th{font-size:.82rem}.income-panel .money-table tr:last-child td{border-bottom:0}.income-status{font-size:.8rem;background:#f0f2eb;padding:5px 9px;border-radius:5px;white-space:nowrap}.income-status.received{background:#e2eee5}.income-scenario{color:#637568;font-size:.8rem;white-space:nowrap}.income-readiness{background:#f6f3eb;border-left:3px solid #bba471;padding:16px 20px;margin:20px 0}.income-readiness summary{cursor:pointer;font-weight:600}.income-readiness summary span{font-weight:400;font-size:.8rem;margin-left:12px;color:#746a50}.income-readiness ul{padding-left:20px;max-width:90ch;font-size:.85rem;line-height:1.6}.income-readiness li+li{margin-top:7px}.income-review-actions{display:flex;gap:24px;flex-wrap:wrap}.income-footnote{font-size:.8rem;color:#637568;margin:16px 0 0}.income-gap{color:#875025;font-weight:600}.income-editor{border:1px solid #dce2d8;background:#fff;border-radius:12px;padding:20px 24px}.income-editor>summary{font-weight:600;cursor:pointer}.income-editor .entry-form{padding:20px 0 0;margin:0;border:0}.income-panel .money-table{min-width:690px}@media(max-width:720px){.income-panel{padding:16px}.income-section-head{align-items:flex-start;flex-wrap:wrap}.income-readiness{padding:14px}.income-readiness summary span{display:block;margin:6px 0}.income-editor{padding:16px}}
.money-table .transaction-date{white-space:nowrap;min-width:7.5rem;width:8rem;font-variant-numeric:tabular-nums}.money-table .transaction-amount{white-space:nowrap;text-align:right;min-width:7rem}.money-table .transaction-status{white-space:nowrap;min-width:6rem}.money-table .transaction-name{min-width:15rem;overflow-wrap:anywhere}
.card-row-actions{display:flex;align-items:center;gap:16px;white-space:nowrap}.card-delete{color:#874833}.deleted-cards{margin:24px 0;padding:18px 0;border-top:1px solid #dce2d8}.deleted-cards>summary{cursor:pointer;font-weight:600}.deleted-cards>p{font-size:.9rem;color:#637568}

/* A quiet, standalone sign-in screen. */
.auth-page .shell{padding:24px;max-width:none;min-height:100dvh;display:grid;place-items:center}
.auth-page .shell .site-header,.auth-page .shared-menu,.auth-page #account-page-header,.auth-page>footer{display:none}
.auth-page .account-workspace{width:100%;padding:0!important}
.auth-page .account-layout{width:100%;max-width:420px;margin:0 auto;padding:0}
.auth-page .auth-panel{padding:40px 32px;text-align:center}
.auth-brand{display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;color:inherit;font-size:15px;font-weight:600}
.auth-page .auth-brand .account-symbol{margin:0;width:32px;height:32px;font-size:24px}
.auth-panel h1{font:600 30px/1.2 'DM Sans',sans-serif;letter-spacing:-.035em;margin:32px 0 24px}
.auth-page .google-button{margin:0 0 24px;width:100%;min-height:52px}
.auth-privacy{font-size:12px;color:#65776d;text-underline-offset:3px}
.auth-panel #account-status{font-size:14px;line-height:1.5;margin:0 0 20px}
.connection-toolbar{padding:4px 0 20px;border-bottom:1px solid #dce2d8}
.connection-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.connection-heading h2{font-size:20px;margin:0 0 6px}
.connection-heading p,.connection-toolbar #banksync-status{font-size:13px;color:#65776d;line-height:1.6;margin:0}
.connection-action-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}
.connection-action-row .banksync-controls{display:flex;align-items:center;gap:10px;min-width:0}
.connection-action-row .banksync-controls select{min-height:46px;max-width:260px}
.connection-action-row .button{white-space:nowrap}
.connection-toolbar #banksync-status{margin-top:14px}
.connection-options{position:relative;flex-shrink:0;font-size:13px}
.connection-options summary{cursor:pointer;padding:8px;color:#526b5e}
.connection-options-menu{position:absolute;right:0;top:100%;z-index:5;width:230px;padding:8px;background:white;border:1px solid #dce2d8;border-radius:10px;box-shadow:0 8px 24px #183f3412}
.connection-options-menu a,.connection-options-menu button{display:block;width:100%;box-sizing:border-box;text-align:left;padding:12px;font:inherit;color:#183f34;text-decoration:none;border:0;background:none}
.connection-options-menu a:hover,.connection-options-menu button:hover{background:#f1f5ef;border-radius:6px}
@media(max-width:650px){.connection-heading{flex-wrap:wrap;gap:8px}.connection-options-menu{left:0;right:auto}.connection-action-row{align-items:stretch;flex-direction:column}.connection-action-row .banksync-controls{display:grid;grid-template-columns:minmax(0,1fr) auto}.connection-action-row .sync-label{display:none}.connection-action-row .banksync-controls select{max-width:100%;width:100%}.auth-page .shell{padding:20px}.auth-page .auth-panel{padding:32px 24px}}

/* Plan inputs grouped by the decisions they represent. */
.settings-workspace.money-surface{padding:0;border:0;background:none}
.settings-workspace .plan-settings-form{display:block;margin:0;padding:28px;background:#fff;border:1px solid #dce2d8;border-radius:12px}
.settings-intro h2{margin:0 0 10px;font-size:23px}
.settings-intro>p{max-width:75ch;margin:0;color:#62766a;line-height:1.65;font-size:14px}
.plan-settings-form fieldset{min-width:0;border:0;border-top:1px solid #dce2d8;margin:28px 0 0;padding:22px 0 0}
.plan-settings-form legend{font-weight:600;font-size:18px;padding:0 14px 0 0}
.settings-help{margin:0 0 18px;font-size:14px;line-height:1.6;color:#62766a;max-width:85ch}
.settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.settings-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500}
.settings-fields input{width:100%;box-sizing:border-box;min-height:48px;font-variant-numeric:tabular-nums}
.settings-fields small{font-weight:400;font-size:13px;line-height:1.6;color:#62766a;max-width:60ch}
.settings-example{font-size:13px;line-height:1.6;background:#f2f5ef;border-radius:6px;padding:12px 16px;margin:18px 0 0;color:#526b5e}
.settings-save{display:flex;align-items:center;gap:20px;border-top:1px solid #dce2d8;padding-top:24px;margin-top:28px}
.settings-save p{font-size:13px;color:#62766a;margin:0;max-width:48ch;line-height:1.6}
.settings-export{padding:22px 0;margin-top:10px;font-size:14px}
.settings-export summary{cursor:pointer;font-weight:500;color:#526b5e}
.settings-export p{max-width:80ch;line-height:1.6}
.plan-settings-form #form-status:empty{display:none}
@media(max-width:650px){.settings-workspace .plan-settings-form{padding:20px}.settings-fields{grid-template-columns:1fr}.settings-save{align-items:flex-start;flex-direction:column}.settings-save .button{width:100%}.settings-intro h2{font-size:21px}}

/* Keep adding connections and updating existing ones together. */
.connection-action-row{justify-content:flex-start;align-items:start;gap:32px}
.bank-action-group h3{font-size:15px;margin:0 0 6px}
.bank-action-group>p{font-size:13px;color:#65776d;margin:0 0 14px;line-height:1.5}
.bank-action-group+.bank-action-group{border-left:1px solid #dce2d8;padding-left:32px}
.bank-picker{position:relative;min-width:220px;font-size:14px}
.bank-picker summary{display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;list-style:none;min-height:46px;box-sizing:border-box;padding:10px 14px;border:1px solid #cbd7cd;border-radius:8px;background:#fff}
.bank-picker summary::-webkit-details-marker{display:none}
.bank-picker summary:focus-visible{outline:2px solid #46745c;outline-offset:3px}
.bank-picker summary[inert]{opacity:.6}
.bank-picker-menu{position:absolute;left:0;top:calc(100% + 6px);z-index:10;min-width:100%;width:max-content;max-width:min(340px,80vw);max-height:320px;overflow-y:auto;padding:6px;border:1px solid #dce2d8;border-radius:10px;background:#fff;box-shadow:0 8px 24px #183f341a}
.bank-picker-menu button{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;min-height:40px;padding:10px 12px;border:0;border-radius:5px;background:#fff;color:#163c32;font:inherit;text-align:left;cursor:pointer}
.bank-picker-menu button:hover,.bank-picker-menu button:focus-visible{background:#f0f5ee}
.bank-picker-menu button[aria-pressed=true]{font-weight:600}
@media(max-width:800px){.connection-action-row{flex-direction:column;gap:24px}.bank-action-group+.bank-action-group{border-left:0;border-top:1px solid #dce2d8;padding:22px 0 0;width:100%}.connection-action-row .banksync-controls{display:flex;flex-wrap:wrap}.bank-picker{min-width:190px;max-width:100%}}

.balance-sort{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:18px 0;font-size:13px;color:#62766a}
.balance-sort>span{margin-right:6px}
.balance-sort button{font:inherit;color:#163c32;background:#fff;border:1px solid #cbd7cd;border-radius:6px;padding:9px 14px;cursor:pointer}
.balance-sort button[aria-pressed=true]{background:#163c32;border-color:#163c32;color:#fff}
.balance-sort button:focus-visible{outline:2px solid #46745c;outline-offset:3px}

/* Give account disclosure highlights breathing room without shifting on hover. */
summary.account-group-heading{padding:18px 16px 18px 40px;border-radius:8px}
summary.account-group-heading .account-group-chevron{left:14px}

.account-sync{font-size:12px;margin-left:12px;color:#28624c}
.account-sync:disabled{opacity:.55;cursor:wait}
.account-description .account-sync-status{font-size:13px;color:#28624c;margin-top:8px;max-width:65ch}
.account-description .account-stale{font-size:13px;color:#8a4b14;margin-top:8px;max-width:65ch;font-weight:600}
.account-balance.is-stale strong{color:#8a7f72}

/* Compact account controls keep the balances in view. */
.compact-connections{padding:0 0 16px}
.connection-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.connection-title h2{margin:0 0 5px;font-size:20px}
.connection-title>p{margin:0;color:#65776d;font-size:13px}
.connection-toolbar-actions{display:flex;align-items:center;gap:10px}
.connection-toolbar-actions>.button{white-space:nowrap}
.connection-options-menu .connection-help{padding:10px 12px;margin:0;border-top:1px solid #e1e7df;font-size:12px;line-height:1.6;color:#65776d}
.compact-connections #banksync-status[hidden]{display:none}
@media(max-width:650px){.connection-toolbar-row{align-items:flex-start;flex-direction:column;gap:14px}.connection-toolbar-actions{width:100%;flex-wrap:wrap}.connection-toolbar-actions .connection-options{margin-left:auto}.connection-toolbar-actions .connection-options-menu{left:auto;right:0}}

.account-remove{font-size:12px;margin-left:12px;color:#87513c}
.removed-accounts{border-top:1px solid #dce2d8;margin-top:24px;padding-top:18px;font-size:13px;color:#62766a}
.removed-accounts summary{cursor:pointer;font-weight:500}
.removed-accounts>p{max-width:75ch;line-height:1.6}
.removed-account{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid #edf1eb;color:#163c32}

.account-apr{display:block;margin-left:auto;padding:4px 0;border:0;background:none;color:#28624c;font:400 12px/1.5 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.account-apr:focus-visible{outline:2px solid #46745c;outline-offset:3px;border-radius:3px}

.income-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px}
.income-toolbar [role=tablist]{display:flex;gap:24px;align-self:stretch}
.income-toolbar [role=tab]{font:500 15px 'DM Sans',sans-serif;color:#65776d;background:none;border:0;border-bottom:2px solid transparent;padding:12px 0;cursor:pointer}
.income-toolbar [role=tab][aria-selected=true]{color:#163c32;border-bottom-color:#163c32}
.income-toolbar [role=tab]:focus-visible{outline:2px solid #46745c;outline-offset:3px}
.income-workspace [hidden]{display:none!important}
@media(max-width:600px){.income-toolbar{align-items:flex-start;flex-wrap:wrap;gap:14px}.income-toolbar>.button{width:100%}}

/* Business + household planning */
.expense-heading,.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.expense-heading h2,.expense-heading h3,.dashboard-heading h2{margin:0 0 .35rem}.expense-heading p,.dashboard-heading p{margin:0;color:#61776a}.expense-filters{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:1rem}.expense-filters label,.expense-dialog label,.expense-scope{display:grid;gap:.5rem}.expense-filters input,.expense-filters select,.expense-dialog input,.expense-dialog select,.expense-scope select{width:100%;min-height:44px;padding:.65rem .8rem;border:1px solid #bdccc0;border-radius:7px;background:#fff;color:#183f34;font:inherit}.expense-scope{max-width:20rem;margin-bottom:1rem}.expense-meta{display:block;color:#61776a;margin-top:.35rem}.expense-dialog{max-width:34rem}.expense-dialog label{margin-bottom:1rem}.expense-check{display:flex!important;align-items:flex-start;gap:.65rem!important}.expense-check input{width:1.1rem!important;min-height:0!important;margin-top:.2rem}.expense-dialog [hidden]{display:none!important}.forecast-month{border-top:1px solid #d9dfd3;padding:1rem 0;scroll-margin-top:1rem}.forecast-month summary{cursor:pointer;display:flex;justify-content:space-between;gap:1rem;padding:.75rem;border-radius:6px}.forecast-month summary:hover{background:#f1f5ef}.forecast-month summary span{color:#61776a;font-size:.85rem}.month-cash-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;padding:1.5rem 0}.month-cash-flow div{display:grid;gap:.5rem}.month-cash-flow span,.month-cash-flow small{font-size:.8rem;color:#61776a}.month-cash-flow strong{font-variant-numeric:tabular-nums}.dashboard-heading{align-items:flex-start}.dashboard-heading h2{font-size:clamp(1.5rem,2.5vw,2.25rem);letter-spacing:-.04em}.dashboard-heading .eyebrow{margin-bottom:.65rem}.dashboard-actions{display:flex;gap:.6rem;flex-wrap:wrap}.dashboard-hero{display:grid;grid-template-columns:minmax(240px,.8fr) 1.5fr;gap:1.75rem;padding:1.75rem 0;border-top:1px solid #d9dfd3;border-bottom:1px solid #d9dfd3}.payoff-highlight{background:#eaf1e9;padding:1.7rem;border-radius:10px;display:flex;align-items:flex-start;flex-direction:column;gap:.75rem}.payoff-highlight p{margin:0;max-width:36ch}.payoff-number{font-size:clamp(1.8rem,3vw,3rem);line-height:1.1;letter-spacing:-.04em;text-wrap:balance}.payoff-highlight .text-button{margin-top:auto}.dashboard-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2rem}.dashboard-stats>div{display:flex;align-items:flex-start;flex-direction:column;gap:.45rem}.dashboard-stats strong{font-size:1.75rem;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.dashboard-stats span,.dashboard-stats small{color:#61776a}.dashboard-stats small{font-size:.78rem}.dashboard-stats .text-button{font-size:.8rem}.dashboard-next{padding:1.5rem 0;border-bottom:1px solid #d9dfd3}.dashboard-next>div:first-child{display:flex;justify-content:space-between;gap:1rem;align-items:center}.dashboard-next h3{margin:0}.dashboard-next>div>span{font-size:.8rem;color:#61776a}.dashboard-checklist{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1.5rem;margin-top:.9rem}.dashboard-checklist button{display:flex;gap:.7rem;align-items:center;text-align:left;border:0;border-radius:6px;background:transparent;color:#183f34;padding:.7rem;font:inherit;font-size:.9rem;cursor:pointer}.dashboard-checklist button:hover{background:#f0f5ef}.dashboard-checklist button span:last-child{margin-left:auto}.dashboard-warnings{font-size:.85rem;margin-top:.8rem}.dashboard-warnings summary{cursor:pointer;color:#65755f}.dashboard-bottom{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;margin-top:1.75rem}.dashboard-bottom .expense-heading{margin-bottom:1rem}.dashboard-bottom h3{font-size:1.05rem}.dashboard-bottom .money-table td{padding:.8rem .4rem}.dashboard-links{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem;font-size:.85rem}.debt-trajectory>div{display:grid;grid-template-columns:5rem 1fr 6.5rem;align-items:center;gap:1rem;font-size:.8rem;margin:1rem 0}.debt-trajectory progress{width:100%;height:8px;accent-color:#47765d}.debt-trajectory strong{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:900px){.dashboard-heading,.expense-heading{flex-direction:column;align-items:flex-start}.dashboard-hero,.dashboard-bottom{grid-template-columns:1fr}.expense-filters{grid-template-columns:1fr 1fr}.expense-filters label:first-child{grid-column:1/-1}}@media(max-width:560px){.dashboard-checklist,.expense-filters{grid-template-columns:1fr}.dashboard-stats{gap:1.5rem 1rem}.dashboard-stats strong{font-size:1.35rem}.forecast-month summary{flex-direction:column}.dashboard-actions .button{flex:1}.dashboard-hero{padding-top:1rem}.payoff-highlight{padding:1.25rem}}
.plan-questions{margin-top:2rem;padding-top:1.75rem;border-top:1px solid #d9dfd3}.plan-questions h3{margin-top:0}.question-prompts{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.question-prompts button{border:1px solid #c8d5c7;background:#f3f6f0;border-radius:6px;padding:.65rem .9rem;color:#183f34;font:inherit;cursor:pointer}.plan-questions label{display:grid;gap:.5rem}.plan-questions textarea,.plan-questions input,.plan-questions select{border:1px solid #bdccc0;border-radius:7px;padding:.7rem;background:#fff;color:#183f34;font:inherit;width:100%}.question-controls{display:flex;align-items:end;gap:1rem;margin:1rem 0}.question-controls label{flex:1}#plan-answer{max-width:70rem}#plan-answer:empty{display:none}@media(max-width:560px){.question-controls{display:grid;grid-template-columns:1fr}.question-controls .button{width:100%}}
.entry-form label[hidden]{display:none!important}
