:root{color-scheme:light;--ink:#132a2a;--muted:#617071;--green:#16584d;--green-2:#0d765e;--mint:#e7f3ee;--bg:#f4f7f5;--border:#dae5df;--danger:#a63835;--warning:#996617;--card:#fff;--radius:17px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-size:15px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}.topbar{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,calc((100vw - 1060px)/2));background:#fff;border-bottom:1px solid var(--border)}.brand{display:flex;gap:10px;align-items:center;font-weight:800;color:var(--ink);font-size:18px}.brand:hover{text-decoration:none}.brandmark{font-size:13px;font-weight:900;color:#fff;background:var(--green);border-radius:9px;padding:10px 7px;letter-spacing:1px}.account-name{color:var(--muted);font-size:13px}.app-shell{max-width:1010px;padding:24px 20px 100px;margin:auto}.card{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);box-shadow:0 2px 13px rgba(18,49,39,.025)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(25px,5vw,34px);letter-spacing:-.045em;line-height:1.15;margin-bottom:6px}h2{font-size:18px;letter-spacing:-.022em;margin-bottom:12px}.muted,.hint{color:var(--muted);line-height:1.45}.hint{font-size:12px;margin-top:14px}.eyebrow{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:750;letter-spacing:.11em}.hero{padding:9px 0 20px}.hero h1{margin-top:5px}.hero p{color:var(--muted);margin:0}.stats-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px;margin:5px 0 25px}.stat{display:flex;flex-direction:column;gap:6px;padding:20px;color:var(--ink);min-height:130px}.stat strong{font-size:clamp(21px,3vw,29px);letter-spacing:-.04em;white-space:nowrap}.stat small,.account-card small{color:var(--muted);font-size:12px}.main-stat{background:var(--mint);border-color:#d3e5da}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:26px 0 10px}.section-heading h2{margin:0}.section-heading a{font-size:13px;font-weight:700}.account-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.account-card{padding:18px;display:flex;flex-direction:column;gap:7px;color:var(--ink)}.account-card strong{font-size:21px;letter-spacing:-.025em}.account-card span{font-weight:700}.list-card{padding:8px 20px}.list-card>h2{padding-top:13px}.list-row{display:flex;justify-content:space-between;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid var(--border)}.list-row:last-child{border-bottom:0}.list-row>div:first-child{min-width:0}.list-row strong{font-size:14px}.list-row small,.bill-row small{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:3px}.align-right{text-align:right;white-space:nowrap}.actions-row{display:flex;flex-wrap:wrap;gap:10px;margin:19px 0}.btn{border:1px solid var(--border);padding:12px 17px;border-radius:11px;background:#fff;color:var(--green);font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;min-height:44px;line-height:1.2;text-decoration:none}.btn:hover{text-decoration:none;background:#f5faf7}.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.btn.primary:hover{background:var(--green-2)}.btn.light{background:#f1f5f2;color:#35504a}.btn.small{padding:8px 11px;min-height:40px}.btn.full{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.page-heading{margin-bottom:18px}.page-heading h1{margin-top:7px}.page-heading p{color:var(--muted);line-height:1.45;max-width:620px}.form-card{padding:23px;margin-bottom:18px}.form-card h2{margin-bottom:6px}.form-card form{display:flex;flex-direction:column;gap:14px}.form-card form>h2{margin-top:8px}.form-card label,.auth-card label{font-size:13px;font-weight:700;color:#304a42;display:flex;flex-direction:column;gap:7px;margin:0}.form-card input:not([type=checkbox]):not([type=hidden]),.form-card select,.auth-card input,.bill-pay-form input{background:#fff;border:1px solid #cbd9d1;padding:12px 13px;border-radius:10px;min-height:45px;color:var(--ink);width:100%;min-width:0}.form-card input:focus,.form-card select:focus,.auth-card input:focus{outline:3px solid #b7ded2;outline-offset:1px;border-color:#32856e}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.merchant-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 16px}.merchant-chip{border:1px solid var(--border);background:#f6faf7;color:var(--ink);border-radius:12px;padding:12px 5px;cursor:pointer;min-height:43px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.merchant-chip.selected{background:var(--mint);border:2px solid var(--green)}.form-card details{border-top:1px solid var(--border);padding:12px 0 0;margin-top:2px}.form-card details summary,.bill-row summary{color:var(--green);cursor:pointer;font-weight:750;font-size:13px}.detail-content{padding:14px 0 0;display:flex;flex-direction:column;gap:12px}.detail-content form{display:flex;flex-direction:column;gap:12px}.giving-preview{display:flex;align-items:center;gap:12px;border-radius:10px;background:var(--mint);padding:14px}.giving-preview strong{font-size:22px}.giving-preview span{font-size:12px;color:var(--muted)}.funds-card{margin-bottom:13px}.fund-title{display:flex;align-items:center;justify-content:space-between;padding:13px 0 5px;gap:12px}.fund-title h2{margin:0}.fund-title>span{font-weight:800}.fund-amount{white-space:nowrap}.checkbox-line{flex-direction:row!important;gap:9px!important;align-items:flex-start!important;line-height:1.5}.checkbox-line input{margin-top:3px;width:18px;height:18px;flex-shrink:0}.bill-row{padding:14px 0;border-bottom:1px solid var(--border)}.bill-row:last-child{border-bottom:0}.bill-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}.bill-row>details{margin:8px 0 0}.bill-row summary{font-size:12px}.inline-start{display:flex;align-items:center;gap:6px;margin:0!important;flex-direction:row!important}.inline-start input{width:100px!important;padding:8px!important;min-height:40px!important}.settings-links{padding:18px;display:flex;flex-direction:column;gap:12px}.settings-links form{margin:0}.empty{padding:20px;color:var(--muted);font-size:14px;line-height:1.5}.notice{padding:13px 16px;border-radius:11px;margin-bottom:18px;border:1px solid;font-size:14px;line-height:1.4}.notice.success{background:#e5f4ec;border-color:#b9dcc9;color:#145b3b}.notice.danger{background:#fff0ef;border-color:#f2c5c0;color:#9c3026}.auth-wrap{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:25px 18px}.auth-card{padding:30px;width:100%;max-width:480px}.auth-card form{display:flex;flex-direction:column;gap:16px;margin-top:20px}.auth-card h1{margin:14px 0 5px}.auth-card h2{margin:15px 0 0}.logo-bubble{display:inline-flex;border-radius:14px;padding:12px;background:var(--green);color:#fff;letter-spacing:2px;font-weight:900;font-size:20px}.bottom-nav{position:fixed;z-index:10;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding:8px max(7px,calc((100vw - 750px)/2)) calc(10px + env(safe-area-inset-bottom))}.bottom-nav a{min-width:54px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;font-size:11px;color:#687973;font-weight:650;padding:4px 8px}.bottom-nav .nav-icon{font-size:21px;font-weight:800;line-height:24px}.bottom-nav a.active{color:var(--green)}.bottom-nav a:hover{text-decoration:none}@media(max-width:760px){.app-shell{padding:19px 13px 94px}.stats-grid{grid-template-columns:1fr 1fr}.main-stat{grid-column:span 2}.stat{padding:16px;min-height:107px}.stat strong{font-size:25px}.account-cards{grid-template-columns:1fr}.account-card{padding:15px;gap:5px}.list-card{padding:7px 15px}.form-card{padding:17px}.merchant-grid{grid-template-columns:repeat(2,1fr)}.two-fields{grid-template-columns:1fr}.topbar{height:58px;padding:0 15px}.brand{font-size:16px}}@media(max-width:365px){.stats-grid{gap:8px}.stat{padding:12px}.stat strong{font-size:21px}.account-name{font-size:11px}.bill-summary strong{font-size:12px}}

/* Historical statement import and mobile-friendly banking history. */
.import-table{max-width:100%;overflow-x:auto;margin:15px 0}.import-table table{border-collapse:collapse;width:100%;min-width:550px;font-size:13px}.import-table th,.import-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border)}.import-table th{color:var(--muted);font-size:11px;text-transform:uppercase}.import-table td:not(:first-child){white-space:nowrap}.history-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:14px}.history-stats .card{padding:15px;display:flex;flex-direction:column;gap:7px;min-width:0}.history-stats small{font-size:11px;color:var(--muted)}.history-stats strong{font-size:19px;overflow-wrap:anywhere}.history-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid var(--border)}.history-row:last-child{border-bottom:0}.history-row>div{min-width:0;overflow-wrap:anywhere}.history-row strong{font-size:13px}.history-row small{font-size:11px;color:var(--muted);display:block;margin:5px 0;line-height:1.45}.history-row>strong{white-space:nowrap;font-size:13px}.history-row details summary{font-size:11px;cursor:pointer;color:var(--green)}.history-detail{font-size:11px;color:var(--muted);max-width:600px;padding:6px 0;overflow-wrap:anywhere}.history-in{color:#147653}.history-out{color:#7b4541}.history-pages{display:flex;gap:10px;justify-content:center;align-items:center;padding:19px}.history-pages span{font-size:12px;color:var(--muted)}@media(max-width:760px){.history-stats{grid-template-columns:1fr 1fr}.history-stats>.card:last-child{grid-column:span 2}.history-stats strong{font-size:17px}.history-row strong{font-size:12px}}


/* v0.1.2: Direct bank-account transaction views. */
.account-back{margin:0 0 13px;font-size:13px;font-weight:700}
.account-overview{padding:23px;margin:0 0 22px}
.account-overview h1{margin:8px 0 5px}
.account-balance{font-size:clamp(27px,5vw,39px);font-weight:850;letter-spacing:-.05em}
.account-overview .muted{font-size:13px;margin:3px 0 14px}
.account-meta{display:flex;gap:8px 18px;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-bottom:14px}
.account-meta span{background:var(--bg);padding:6px 9px;border-radius:9px}
.account-quick-actions{display:flex;gap:9px;flex-wrap:wrap}
.account-count{font-size:12px;color:var(--muted);text-align:right}
.account-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 14px}
.account-tabs a{border:1px solid var(--border);padding:9px 13px;border-radius:20px;font-size:13px;font-weight:750;background:#fff;min-height:41px;display:flex;align-items:center}
.account-tabs a.active{background:var(--green);border-color:var(--green);color:#fff}
.account-filter-card{padding:16px;margin:0 0 12px}
.account-search-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:9px}
.account-search-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#304a42;min-width:0}
.account-search-form input,.account-search-form select{min-height:43px;border-radius:9px;padding:9px;border:1px solid #cbd9d1;min-width:0;width:100%;background:#fff;color:var(--ink)}
.account-search-form button{min-height:43px}
.account-history-note{font-size:12px;line-height:1.55;color:var(--muted);margin:12px 0 15px}
.account-ledger-header{padding-top:11px}
.account-ledger-header h2{margin:4px 0 3px}
.account-activity-row .account-entry-info{flex:1;min-width:0}
.account-category{display:inline-block;font-size:11px;padding:3px 7px;border-radius:7px;background:#edf3ef;color:#466558;margin:0 0 6px}
.account-activity-row>strong{white-space:nowrap}
@media(max-width:760px){.account-overview{padding:17px}.account-search-form{grid-template-columns:1fr 1fr}.account-search-form label:first-child{grid-column:span 2}.account-search-form button{grid-column:span 2}.account-count{font-size:11px}.account-activity-row{gap:7px}.account-activity-row>strong{font-size:12px}}

/* v0.1.3 compact, fully tappable transaction rows. Expand only when requested. */
.account-transaction{border-bottom:1px solid var(--border)}
.account-transaction:last-child{border-bottom:0}
.account-tx-summary{display:grid;grid-template-columns:77px minmax(0,1fr) minmax(100px,150px) 115px 13px;gap:12px;align-items:center;min-height:47px;padding:8px 0;cursor:pointer;list-style:none}
.account-tx-summary::-webkit-details-marker{display:none}
.account-tx-summary::marker{content:''}
.account-tx-summary:hover{background:#f6faf8}
.account-tx-summary:focus-visible{outline:3px solid #b7ded2;outline-offset:0;border-radius:5px}
.account-tx-date{font-size:12px;color:var(--muted);white-space:nowrap}
.account-tx-payee{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.account-tx-category{font-size:11px;color:#536d61;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.account-tx-category.is-live{font-weight:750;color:var(--green)}
.account-tx-amount{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.account-tx-chevron{color:var(--muted);font-size:16px;text-align:right;transition:transform .15s ease}
.account-transaction[open] .account-tx-chevron{transform:rotate(180deg)}
.account-tx-expanded{font-size:12px;line-height:1.55;color:var(--muted);background:#f6faf8;border-radius:8px;padding:10px 12px;margin:0 0 9px 77px;overflow-wrap:anywhere;display:grid;gap:4px}
.account-tx-expanded strong{color:var(--ink);font-weight:700}
.account-tx-full-payee{font-size:13px;font-weight:750;color:var(--ink)}
@media(max-width:760px){
.account-tx-summary{grid-template-columns:minmax(0,1fr) max-content 13px;grid-template-rows:20px 16px;gap:2px 8px;min-height:55px;padding:8px 0}
.account-tx-payee{grid-column:1;grid-row:1;font-size:13px}
.account-tx-amount{grid-column:2;grid-row:1;font-size:12px}
.account-tx-date{grid-column:1;grid-row:2;font-size:11px}
.account-tx-category{grid-column:2;grid-row:2;max-width:120px;text-align:right;font-size:10px}
.account-tx-chevron{grid-column:3;grid-row:1/span 2;align-self:center;font-size:15px}
.account-tx-expanded{margin-left:0}
}
@media(max-width:365px){.account-tx-category{max-width:92px}.account-tx-summary{column-gap:5px}}


/* v0.1.4: Fund-first command center. Bank accounts live in More, not Home. */
.pocketbook-intro{padding:6px 0 17px}
.pocketbook-intro h1{margin:5px 0}
.pocketbook-intro p{color:var(--muted);font-size:14px;margin:0}
.home-health{display:flex;gap:13px;align-items:center;padding:17px 18px;border:1px solid var(--border);border-radius:14px;text-decoration:none;color:var(--ink);background:#fff;min-height:76px}
.home-health:hover{text-decoration:none}
.home-health-setup{background:#f5f7f6;border-color:#dae3df}
.home-health-attention{background:#fffaf0;border-color:#efdfbd}
.home-health-covered{background:#e8f4ee;border-color:#c9e3d6}
.health-symbol{display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;height:34px;width:34px;background:#d8e5df;color:var(--green);font-size:18px;font-weight:900}
.home-health-attention .health-symbol{color:#815207;background:#f7e2b7}
.home-health-covered .health-symbol{background:#c9e7d7}
.health-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}
.health-copy strong{font-size:15px;letter-spacing:-.01em}
.health-copy small{font-size:12px;line-height:1.4;color:#5b6d65}
.home-chevron{font-size:24px;color:#7c9688}
.home-wallet-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:11px}
.home-wallet-grid .card{display:flex;flex-direction:column;gap:8px;padding:18px;text-decoration:none;color:var(--ink)}
.wallet-main{background:var(--mint);border-color:#cde5d9}
.home-wallet-grid strong{font-size:clamp(22px,2.6vw,30px);line-height:1.12;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.home-wallet-grid small{font-size:11px;color:var(--muted);line-height:1.3}
.home-clarifier{color:var(--muted);font-size:11px;line-height:1.5;margin:8px 1px 0}
.home-unallocated{padding:0;margin:20px 0 3px;overflow:hidden}
.unallocated-header{display:flex;gap:12px;align-items:center;padding:14px 16px 12px}
.unallocated-account-list{border-top:1px solid var(--border)}
.unallocated-account-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,max-content) 91px;gap:12px;align-items:center;min-height:52px;padding:9px 16px;border-bottom:1px solid var(--border);color:var(--ink)}
.unallocated-account-row:hover{background:#f5faf7;text-decoration:none}
.unallocated-account-row:focus-visible{outline:3px solid #b7ded2;outline-offset:-3px}
.unallocated-account-name{font-size:13px;font-weight:700;min-width:0}
.unallocated-account-amount{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.unallocated-account-action{display:inline-flex;justify-content:flex-end;align-items:center;gap:5px;font-size:12px;font-weight:750;color:var(--green);white-space:nowrap}
.unallocated-note{font-size:11px;color:var(--muted);margin:0;padding:10px 16px 12px;line-height:1.45}
.unallocated-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#edf2ef;color:var(--green);font-size:20px;border-radius:10px;flex-shrink:0}
.unallocated-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.unallocated-text>strong{font-size:14px}
.unallocated-text>small{font-size:11px;color:var(--muted)}
.unallocated-figures{display:flex;gap:4px 12px;flex-wrap:wrap;font-size:12px;color:#34544a}
.home-deadlines{padding:4px 17px}
.home-deadline-row{display:grid;grid-template-columns:97px minmax(0,1fr) minmax(100px,148px);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);color:var(--ink)}
.home-deadline-row:last-child{border-bottom:none}
.home-deadline-row:hover{text-decoration:none}
.deadline-time strong{font-size:12px;white-space:nowrap}
.deadline-time small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.deadline-main strong{display:block;font-size:13px}
.deadline-main small{display:block;color:var(--muted);font-size:11px;margin-top:3px;line-height:1.4}
.deadline-result{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.deadline-result>strong{font-size:12px;font-variant-numeric:tabular-nums}
.funding-pill{font-size:10px;font-weight:750;border-radius:6px;padding:5px 7px;background:#edf1ee;color:#50675d;white-space:nowrap}
.pill-covered{background:#e4f2e8;color:#1d6c46}
.pill-urgent{background:#fff0d7;color:#935b0a}
.pill-plan{background:#eff2f0;color:#53675d}
.pill-setup{background:#eef2f8;color:#516482}
.pill-reminder{background:#edf0f6;color:#5e6680}
.home-empty-plan{padding:24px 14px;color:var(--ink);font-size:13px}
.home-empty-plan p{color:var(--muted);max-width:620px;margin:8px 0 14px;line-height:1.55}
.home-reserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.home-reserve{padding:16px;color:var(--ink)}
.home-reserve:hover{text-decoration:none}
.reserve-header{display:flex;justify-content:space-between;gap:8px;font-size:13px}
.reserve-header>span{font-size:12px;color:var(--muted)}
.reserve-numbers{display:flex;align-items:baseline;gap:6px;margin:10px 0}
.reserve-numbers strong{font-size:21px;font-variant-numeric:tabular-nums}
.reserve-numbers small{font-size:12px;color:var(--muted)}
.reserve-bar{width:100%;height:7px;border-radius:5px;background:#e7ede9;overflow:hidden;margin-bottom:9px}
.reserve-bar span{height:100%;display:block;background:var(--green)}
.home-reserve>small{font-size:11px;color:var(--muted)}
.home-fund-list{padding:3px 17px}
.home-fund-row{display:grid;grid-template-columns:minmax(0,1fr) max-content 13px;align-items:center;gap:11px;border-bottom:1px solid var(--border);min-height:54px;padding:9px 0;color:var(--ink)}
.home-fund-row:last-child{border:0}
.home-fund-row:hover{text-decoration:none}
.home-fund-row strong{font-size:13px}
.home-fund-row div small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.home-fund-row>strong{font-variant-numeric:tabular-nums}
.home-fund-row>span{color:#799288;font-size:18px}
.home-banking-foot{font-size:12px;color:var(--muted);border-top:1px solid var(--border);margin-top:26px;padding:17px 0}
.home-banking-foot>a{font-size:13px;font-weight:750}
.home-banking-foot p{margin:7px 0 0;line-height:1.5}
.settings-account-link{color:var(--ink)}
.settings-account-link:hover{text-decoration:none}
.settings-account-link span{font-size:12px;color:var(--green);font-weight:750}
#transfer,#fund-1,[id^="fund-"]{scroll-margin-top:20px}
@media(max-width:760px){
 .pocketbook-intro{padding-top:3px}
 .home-wallet-grid{grid-template-columns:1fr 1fr;gap:9px}
 .home-wallet-grid .wallet-main{grid-column:span 2}
 .home-wallet-grid .card{padding:14px;gap:6px}
 .home-wallet-grid .eyebrow{font-size:10px;letter-spacing:.045em}
 .home-wallet-grid strong{font-size:23px}
 .unallocated-header{gap:9px;padding:12px}
 .unallocated-account-row{grid-template-columns:minmax(0,1fr) auto 69px;gap:7px;padding:10px 12px;min-height:50px}
 .unallocated-account-name{font-size:12px}
 .unallocated-account-amount{font-size:13px}
 .unallocated-account-action{font-size:11px}
 .unallocated-note{padding:9px 12px 11px}
 .home-deadlines{padding:2px 13px}
 .home-deadline-row{grid-template-columns:minmax(0,1fr) max-content;grid-template-rows:auto auto;gap:6px 8px;padding:12px 0}
 .deadline-main{grid-column:1;grid-row:1}
 .deadline-time{grid-column:1;grid-row:2;display:flex;gap:8px;align-items:center}
 .deadline-time small{margin:0}
 .deadline-result{grid-column:2;grid-row:1 / span 2}
 .deadline-result .funding-pill{font-size:9px}
 .home-reserve-grid{gap:9px}
 .home-reserve{padding:13px}
 .reserve-numbers strong{font-size:17px}
 .reserve-numbers{flex-wrap:wrap;gap:1px 5px}
 .reserve-header{font-size:12px}
 .home-banking-foot{margin-top:20px}
}
@media(max-width:365px){.unallocated-account-row{grid-template-columns:minmax(0,1fr) auto 59px;gap:6px}.unallocated-account-amount{font-size:12px}.unallocated-account-action{font-size:10px}.home-reserve-grid{grid-template-columns:1fr}}


/* v0.1.5: compact due-date planning, clearly separate estimates and actual payment */
.bill-plan-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 17px;margin-bottom:13px}
.bill-plan-bar strong{font-size:14px}.bill-plan-bar small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.bill-schedule{padding:8px 19px;margin-bottom:16px}
.bill-planning-row{border-top:1px solid var(--border);padding:13px 0 14px;scroll-margin-top:90px}
.bill-planning-row:first-of-type{border-top:0}
.bill-planning-main{display:flex;justify-content:space-between;align-items:start;gap:12px}
.bill-planning-text{min-width:0}.bill-planning-text>strong{display:block;font-size:14px}
.bill-planning-text>small{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}
.bill-planning-right{display:flex;flex-direction:column;align-items:flex-end;gap:5px;text-align:right;flex-shrink:0}
.bill-planning-right>strong{font-size:14px;white-space:nowrap}
.bill-funding-copy{margin:8px 0 6px;font-size:11px;color:var(--muted);display:flex;gap:4px 12px;justify-content:space-between;flex-wrap:wrap;line-height:1.4}
.bill-funding-copy strong{color:#28453b}
.bill-short{font-weight:700;color:#946115}
.bill-progress{height:5px;background:#edf1ed;border-radius:5px;overflow:hidden}
.bill-progress>span{display:block;height:100%;background:var(--green);border-radius:5px}
.bill-cash-warning{font-size:11px;color:#925c14;background:#fff7e8;border-radius:8px;padding:8px 10px;margin:8px 0}
.bill-row-actions{display:flex;gap:7px 14px;align-items:center;flex-wrap:wrap;margin-top:9px}
.bill-row-actions>a,.bill-row-actions>details>summary{font-size:12px;font-weight:750;color:var(--green);cursor:pointer}
.bill-row-actions>details{position:relative}
.bill-row-actions details[open]{width:100%;border-radius:11px;padding:9px 11px 12px;background:#f7faf8;border:1px solid var(--border);margin-top:7px}
.bill-row-actions details[open]>.detail-content{max-width:700px}
.bill-row-actions .bill-edit-form label,.bill-row-actions .detail-content label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#345147}
.bill-row-actions input:not([type=hidden]),.bill-row-actions select{width:100%;min-width:0;border-radius:9px;border:1px solid #cadad1;background:#fff;padding:10px;min-height:42px;color:var(--ink)}
.bill-row-actions .bill-edit-form{display:flex;flex-direction:column;gap:11px}
.bill-row-actions .bill-edit-form .two-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bill-edit-form .hint{margin:0;color:var(--muted)}
.bill-new-card{scroll-margin-top:82px}
.bill-new-card form>.two-fields{margin:0}
@media(max-width:760px){
 .bill-schedule{padding:7px 13px}
 .bill-plan-bar{padding:12px}
 .bill-plan-bar .btn{font-size:12px;padding:10px}
 .bill-planning-main{gap:7px}
 .bill-planning-text>strong{font-size:13px}
 .bill-planning-text>small{font-size:10px}
 .bill-planning-right>strong{font-size:13px}
 .bill-planning-right .funding-pill{font-size:9px}
 .bill-row-actions{gap:8px 13px}
 .bill-row-actions .bill-edit-form .two-fields{grid-template-columns:1fr}
}

/* v0.1.6 - quick deposits and pooled fund allocations */
.deposit-form{max-width:680px;padding:19px 21px;margin-bottom:12px;display:flex;flex-direction:column;gap:14px}
.deposit-form>label:first-child input{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}
.deposit-special{border-top:1px solid var(--border);margin-top:1px;padding-top:12px}
.deposit-special summary{font-weight:750;font-size:13px;color:var(--green);cursor:pointer}
.deposit-special .detail-content{margin-top:13px;display:flex;flex-direction:column;gap:12px}
.deposit-special .deposit-choice,.deposit-special .deposit-confirm{display:flex;flex-direction:row;align-items:center;gap:10px;font-size:13px;font-weight:650;color:var(--ink);cursor:pointer}
.deposit-special input[type=radio],.deposit-special input[type=checkbox]{width:18px;height:18px;flex:none;accent-color:var(--green)}
.deposit-special .deposit-confirm{padding:11px;border-radius:9px;background:#fff7e8}
.deposit-next{max-width:680px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;background:#e8f4ee;border-color:#cbe2d4}
.deposit-next strong{display:block;font-size:13px}.deposit-next small{display:block;color:var(--muted);font-size:11px;line-height:1.45;margin-top:4px}
.deposit-pool{max-width:680px;padding:13px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.deposit-pool small{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.deposit-pool strong{display:block;font-size:24px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.allocate-account-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:4px 0 14px}
.allocate-account-tabs a{border:1px solid var(--border);padding:9px 12px;border-radius:10px;background:#fff;font-size:12px;font-weight:750;color:var(--ink)}
.allocate-account-tabs a.selected{background:var(--mint);border-color:#8ecbb0;color:var(--green)}
.allocate-pool{padding:18px 21px;margin-bottom:14px;background:#e9f5ef;border-color:#c9e7d7}
.allocate-pool-amount{font-size:32px;letter-spacing:-.05em;font-weight:850;margin:6px 0;font-variant-numeric:tabular-nums}
.allocate-pool p{font-size:12px;margin:0}
.allocate-form{margin-bottom:16px;overflow:hidden}
.allocate-form-header{padding:16px 18px 10px}.allocate-form-header h2{margin:0 0 4px}.allocate-form-header small{color:var(--muted);font-size:11px}
.allocate-row{padding:10px 18px;display:grid;grid-template-columns:minmax(130px,1fr) minmax(100px,140px) 55px;gap:10px;align-items:center;border-top:1px solid var(--border)}
.allocate-row-label strong{display:block;font-size:13px}.allocate-row-label small{color:var(--muted);font-size:11px;display:block;margin-top:3px}
.allocate-row-input{border:1px solid #cadad1;border-radius:9px;display:flex;align-items:center;padding-left:10px;min-width:0;background:white}
.allocate-row-input>span{color:var(--muted);font-weight:700;font-size:13px}
.allocate-row-input input{width:100%;min-width:0;border:0;border-radius:9px;background:transparent;padding:10px 6px 10px 3px;font-size:14px;text-align:right;font-variant-numeric:tabular-nums}
.allocate-row-input:focus-within{outline:2px solid #b7ded2}
.allocate-all{min-height:38px;padding:6px 8px!important;font-size:12px!important}
.allocate-footer{padding:16px 18px 18px;border-top:1px solid var(--border);background:#f7faf8;display:flex;flex-direction:column;gap:12px}
.allocate-footer .allocate-totals{display:flex;justify-content:space-between;gap:7px 14px;flex-wrap:wrap;font-size:13px}
.allocate-footer .allocate-totals strong{font-variant-numeric:tabular-nums}
.allocate-footer>small{font-size:11px;line-height:1.5;color:var(--muted)}
.allocate-error{color:var(--danger);font-size:12px;font-weight:700;margin:0}
.funds-allocate-links{padding:13px 17px;margin-bottom:13px;display:flex;gap:13px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.funds-allocate-links>div>strong{display:block;font-size:14px}.funds-allocate-links>div>small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.allocate-quick-links{display:flex;flex-wrap:wrap;gap:6px}
@media(max-width:570px){
 .allocate-row{grid-template-columns:minmax(0,1fr) 95px 43px;gap:7px;padding:9px 12px}
 .allocate-row-label strong{font-size:12px}.allocate-row-label small{font-size:10px}
 .allocate-form-header,.allocate-footer{padding-left:12px;padding-right:12px}
 .allocate-all{font-size:11px!important;padding:7px 5px!important}
 .deposit-pool{padding:12px;flex-wrap:wrap}
 .deposit-pool strong{font-size:20px}
 .deposit-next{padding:10px;flex-wrap:wrap}
 .allocate-account-tabs a{padding:8px 10px}
}

.deposit-confirm[hidden],.giving-preview[hidden],.allocate-error[hidden]{display:none!important}


/* v0.1.9: inline bill amount confirmation and marking paid, right from Home. */
.home-deadline-entry{border-bottom:1px solid var(--border)}
.home-deadline-entry:last-child{border-bottom:0}
.home-deadline-entry>.home-deadline-row{border-bottom:0;list-style:none;cursor:pointer}
.home-deadline-entry>.home-deadline-row::-webkit-details-marker{display:none}
.home-deadline-entry>.home-deadline-row::marker{content:''}
.home-deadline-entry>.home-deadline-row:hover{background:#f6faf8}
.home-deadline-entry>.home-deadline-row:focus-visible{outline:3px solid #b7ded2;outline-offset:-3px;border-radius:6px}
.home-deadline-entry[open] .home-deadline-row{background:#f7faf8}
.home-mark-paid{font-size:11px;font-weight:800;color:var(--green);line-height:1.2;white-space:nowrap}
.home-mark-paid span{display:inline-block;transition:transform .15s ease}
.home-deadline-entry[open] .home-mark-paid span{transform:rotate(180deg)}
.home-payment-form{display:grid;grid-template-columns:minmax(130px,190px) minmax(0,1fr);gap:10px 15px;align-items:end;padding:14px;margin:0 0 12px;background:#f4f9f6;border:1px solid #d6e7dc;border-radius:11px}
.home-payment-input{min-width:0}
.home-payment-input label{display:block;font-size:12px;font-weight:750;color:#304a42;margin-bottom:6px}
.home-payment-input input{display:block;width:100%;min-width:0;min-height:43px;border:1px solid #bfd4c7;border-radius:9px;background:#fff;color:var(--ink);padding:10px 12px;font-variant-numeric:tabular-nums}
.home-payment-input input:focus-visible{outline:3px solid #b7ded2;outline-offset:1px}
.home-payment-buttons{display:flex;gap:7px;align-items:center;flex-wrap:wrap;min-width:0}
.home-payment-buttons .btn{font-size:12px;min-height:43px;padding:8px 11px}
.home-bill-details-link{font-size:12px;font-weight:700;white-space:nowrap;padding:9px 2px}
.home-payment-note{grid-column:1/-1;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:760px){
  .home-payment-form{grid-template-columns:1fr;padding:11px;margin-bottom:10px;gap:10px}
  .home-payment-note{grid-column:1}
  .home-payment-buttons{gap:6px}
  .home-payment-buttons .btn{flex-grow:1}
  .home-mark-paid{font-size:10px}
}


/* v0.1.10: compact bills like the bank transaction list; tap to reveal funding and actions. */
.bill-schedule{padding:6px 19px 9px}
.bill-schedule>h2{margin-bottom:5px}
.bill-compact-row{border-bottom:1px solid var(--border);scroll-margin-top:95px}
.bill-compact-row:last-child{border-bottom:0}
.bill-compact-summary{display:grid;grid-template-columns:75px minmax(0,1fr) minmax(100px,150px) 112px 14px;align-items:center;gap:10px;min-height:48px;padding:7px 0;cursor:pointer;list-style:none}
.bill-compact-summary::-webkit-details-marker{display:none}
.bill-compact-summary::marker{content:''}
.bill-compact-summary:hover{background:#f6faf8}
.bill-compact-summary:focus-visible{outline:3px solid #b7ded2;outline-offset:0;border-radius:5px}
.bill-compact-row[open]>.bill-compact-summary{background:#f7faf8}
.bill-compact-date{font-size:12px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.bill-compact-name{font-size:13px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bill-compact-status{justify-self:start;font-size:10px;line-height:1.2;white-space:nowrap}
.bill-status-short{display:none}
.bill-compact-amount{font-size:13px;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.bill-compact-chevron{color:var(--muted);font-size:15px;transition:transform .15s ease;text-align:right}
.bill-compact-row[open] .bill-compact-chevron{transform:rotate(180deg)}
.bill-compact-expanded{padding:10px 13px 14px;margin:0 0 7px 75px;background:#f7faf8;border:1px solid #e4ece7;border-radius:10px}
.bill-compact-meta{display:flex;flex-wrap:wrap;gap:5px 16px;font-size:11px;color:var(--muted);line-height:1.45}
.bill-compact-meta b{color:var(--ink)}
.bill-compact-expanded .bill-funding-copy{margin:11px 0 7px}
.bill-compact-expanded .bill-row-actions{margin-top:10px}
.bill-compact-expanded .bill-row-actions details[open]{background:#fff}
@media(max-width:760px){
 .bill-schedule{padding:7px 13px 9px}
 .bill-compact-summary{grid-template-columns:minmax(0,1fr) max-content 13px;grid-template-rows:19px 18px;gap:2px 8px;min-height:56px;padding:8px 0}
 .bill-compact-name{grid-column:1;grid-row:1;font-size:13px}
 .bill-compact-amount{grid-column:2;grid-row:1;font-size:12px}
 .bill-compact-date{grid-column:1;grid-row:2;font-size:11px;align-self:center}
 .bill-compact-status{grid-column:2;grid-row:2;justify-self:end;font-size:9px;max-width:135px;overflow:hidden;text-overflow:ellipsis;padding:4px 7px}
 .bill-status-wide{display:none}
 .bill-status-short{display:inline}
 .bill-compact-chevron{grid-column:3;grid-row:1/span 2;align-self:center}
 .bill-compact-expanded{margin:0 0 8px 0;padding:10px 11px 13px}
 .bill-compact-meta{gap:4px 13px}
}
@media(max-width:365px){
 .bill-compact-summary{column-gap:5px}
 .bill-compact-status{max-width:105px}
}

/* v0.1.11: display recorded cash and unallocated envelopes independently in Home. */
.unallocated-column-head,.unallocated-account-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,125px) minmax(105px,125px) 91px;gap:12px;align-items:center}
.unallocated-column-head{padding:9px 16px 6px;color:var(--muted);font-size:11px;background:#fafcfb;border-bottom:1px solid var(--border)}
.unallocated-column-head>span:nth-child(2),.unallocated-column-head>span:nth-child(3){text-align:right}
.unallocated-account-row{min-height:60px;padding:8px 16px;background:#fff}
.unallocated-account-row:hover{background:#fcfefd}
.unallocated-account-identity{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:4px}
.unallocated-account-name{color:var(--ink);text-decoration:none}
.unallocated-account-name:hover{color:var(--green);text-decoration:underline}
.unallocated-account-name:focus-visible,.unallocated-account-action:focus-visible{outline:3px solid #b7ded2;outline-offset:3px;border-radius:3px}
.unallocated-reconciled{color:var(--muted);font-size:10px;line-height:1.3}
.unallocated-ledger-cell,.unallocated-amount-cell{min-width:0;display:flex;align-items:center;justify-content:flex-end}
.unallocated-ledger-amount,.unallocated-account-amount{font-size:14px;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.unallocated-ledger-amount{color:var(--muted);font-weight:650}
.unallocated-account-amount{color:var(--ink);font-weight:750}
.unallocated-value-label{display:none}
@media(max-width:760px){
 .unallocated-column-head{display:none}
 .unallocated-account-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 69px;gap:6px 8px;padding:10px 12px;min-height:74px}
 .unallocated-account-identity{grid-column:1/span 2;grid-row:1;gap:2px}
 .unallocated-reconciled{font-size:10px}
 .unallocated-ledger-cell,.unallocated-amount-cell{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:3px;grid-row:2}
 .unallocated-ledger-cell{grid-column:1}
 .unallocated-amount-cell{grid-column:2}
 .unallocated-value-label{display:block;font-size:10px;color:var(--muted);line-height:1.2}
 .unallocated-ledger-amount,.unallocated-account-amount{font-size:13px;text-align:left}
 .unallocated-account-action{grid-column:3;grid-row:1/span 2;align-self:center;justify-self:end;font-size:11px}
}
@media(max-width:365px){
 .unallocated-account-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 60px;gap:5px}
 .unallocated-ledger-amount,.unallocated-account-amount{font-size:12px}
 .unallocated-account-action{font-size:10px}
}
/* v0.1.12 - intuitive, compact funding recommendations with deadline progress. */
.allocation-summary{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.allocation-summary-breakdown{display:flex;flex-direction:column;gap:8px;min-width:215px}
.allocation-summary-breakdown>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:12px}
.allocation-summary-breakdown span{color:var(--muted)}
.allocation-summary-breakdown strong{font-size:15px;font-variant-numeric:tabular-nums}
.allocation-guide{padding:13px 18px;margin-bottom:14px}
.allocation-guide-title{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.allocation-guide-title small{color:var(--muted)}
.allocation-guide>p{margin:4px 0 0;color:var(--muted);font-size:12px}
.allocation-smart-row{padding:13px 17px 14px;border-bottom:1px solid var(--border)}
.allocation-smart-row:last-of-type{border-bottom:0}
.allocation-smart-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.allocation-smart-title{display:flex;gap:8px;align-items:center;min-width:0}
.allocation-smart-title>strong{font-size:14px}
.allocation-protected{font-size:10px;color:#617069;background:#edf2ef;border-radius:6px;padding:3px 6px}
.allocation-status{font-size:10px;white-space:nowrap;font-weight:700;padding:5px 8px;border-radius:7px}
.allocation-status-needs-funding{color:#9d3f1b;background:#fff1e8}
.allocation-status-up-to-date{color:#137b51;background:#e9f7ef}
.allocation-status-no-requirement{color:#526079;background:#edf0f4}
.allocation-smart-figures{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;color:var(--muted);padding:8px 0 4px}
.allocation-smart-figures>b,.allocation-smart-figures b{color:var(--ink)}
.allocation-progress{height:9px;background:#e8f0eb;border-radius:30px;overflow:hidden;margin:3px 0 7px}
.allocation-progress span{display:block;height:100%;background:#208c68;border-radius:30px}
.allocation-smart-meta{display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--muted);font-size:11px;line-height:1.4}
.allocation-smart-meta .allocation-short,.allocation-remaining-warning{color:#a45125}
.allocation-smart-entry{display:grid;grid-template-columns:minmax(105px,1fr) 150px auto auto;gap:8px;align-items:center;margin-top:9px}
.allocation-smart-entry>label{font-size:12px;color:var(--ink);font-weight:600}
.allocation-smart-entry .allocate-row-input{width:100%}
.allocation-smart-entry .btn{min-height:42px;padding:8px 10px}
.allocation-remaining-warning{display:block;margin-top:7px;font-size:11px}
.allocation-bills{margin-top:8px;font-size:11px;color:var(--muted)}
.allocation-bill-list{background:#f7faf8;padding:6px 10px;border-radius:8px}
.allocation-bill-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid #e8ede9}
.allocation-bill-list>div:last-child{border-bottom:0}
.allocation-bill-list small{display:block;color:var(--muted)}
.allocation-bill-list b{white-space:nowrap;color:var(--ink)}
.allocation-transfer-card,.allocation-bank-warning{padding:18px;margin-top:13px}
.allocation-warning-head{display:flex;gap:12px}
.allocation-warning-head>span{background:#fff1e8;color:#a45125;padding:5px 11px;height:max-content;border-radius:50%;font-size:18px;font-weight:800}
.allocation-warning-head h2{margin:0;font-size:16px}
.allocation-warning-head p,.allocation-transfer-option p,.allocation-bank-warning p{font-size:12px;color:var(--muted);line-height:1.5}
.allocation-transfer-option{padding:10px;margin:9px 0;background:#f7faf8;border-radius:9px}
.allocation-transfer-option strong{font-size:13px}
@media(max-width:680px){
 .allocation-summary{align-items:stretch}
 .allocation-summary-breakdown{width:100%;min-width:0}
 .allocation-smart-figures{flex-wrap:wrap}
 .allocation-smart-entry{grid-template-columns:1fr 1fr;gap:7px}
 .allocation-smart-entry>label{grid-column:1/-1}
 .allocation-smart-entry .allocate-row-input{grid-column:1/-1}
 .allocation-smart-entry .btn{width:100%}
 .allocation-smart-row{padding:13px 12px}
 .allocation-status{font-size:9px}
}

/* Respect reserve-specific hidden billing fields despite flex label styling. */
.bill-edit-form .bill-date-field[hidden],.bill-edit-form .bill-frequency-field[hidden],
.bill-edit-form .bill-priority-field[hidden],.bill-edit-form .bill-reserve-hint[hidden]{display:none!important}


/* v0.1.13 — allocation recommendations: only active requirements, concise on desktop & mobile. */
.allocate-page-heading{margin-bottom:10px}.allocate-page-heading p{margin-bottom:0;font-size:13px}
.allocation-snapshot{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:14px 18px;margin:0 0 13px;background:#ebf6f0;border-color:#c9e7d7}
.allocation-snapshot-major{display:flex;flex-direction:column;gap:3px}.allocation-snapshot-major strong{font-size:28px;letter-spacing:-.04em;font-variant-numeric:tabular-nums;line-height:1.15}
.allocation-snapshot-major small,.allocation-snapshot-stats span{font-size:11px;color:var(--muted)}
.allocation-snapshot-stats{display:flex;gap:22px}.allocation-snapshot-stats>div{display:flex;flex-direction:column;gap:5px}.allocation-snapshot-stats b{font-size:16px;font-variant-numeric:tabular-nums}
.allocation-compact{overflow:hidden}.allocation-compact-header{padding:13px 17px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}
.allocation-compact-header h2{margin:0 0 3px;font-size:16px}.allocation-compact-header small{font-size:11px;color:var(--muted)}.allocation-rule{color:#657672;font-size:11px;text-align:right;white-space:nowrap}
.allocation-compact-row{padding:10px 16px 9px}.allocation-compact-grid{display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(195px,1.3fr) 135px;align-items:center;gap:10px 15px}
.allocation-compact-identity{min-width:0}.allocation-compact-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:4px}.allocation-compact-title strong{font-size:13px}.allocation-compact-status{font-size:10px;font-weight:700;display:inline-block;border-radius:6px;padding:3px 7px;white-space:nowrap}
.allocation-compact-next{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.allocation-compact-funding{min-width:0}.allocation-compact-track{height:8px;border-radius:50px;position:relative;overflow:hidden;background:#e7ede9;width:100%}
.allocation-compact-track .allocation-compact-filled,.allocation-compact-track .allocation-compact-pending{position:absolute;top:0;bottom:0;display:block;height:100%;margin:0;padding:0;border-radius:0;max-width:100%}
.allocation-compact-filled{left:0;background:#168566}.allocation-compact-pending{background:#a7dfca}
.allocation-compact-funding-caption{display:flex;justify-content:space-between;gap:5px 10px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-top:5px;font-variant-numeric:tabular-nums}.allocation-compact-pending-legend{color:#2f7c61}
.allocation-compact-input{min-width:0;display:flex;flex-direction:column;gap:3px}.allocation-compact-input>label{font-size:10px;color:var(--muted);font-weight:750}.allocation-compact-input .allocate-row-input input{padding-top:8px;padding-bottom:8px;font-weight:700}
.allocation-compact-details{margin-top:5px;color:var(--green);font-size:11px}.allocation-compact-details>summary{cursor:pointer;width:max-content;font-weight:700;list-style:none}.allocation-compact-details>summary::-webkit-details-marker{display:none}.allocation-compact-details>summary:hover{text-decoration:underline}.allocation-compact-details>summary span{font-size:12px}.allocation-compact-details[open]>summary span{display:inline-block;transform:rotate(180deg)}
.allocation-compact-details-inner{margin-top:7px;border-top:1px dashed var(--border);padding-top:11px;color:var(--ink);display:grid;grid-template-columns:1fr 1.4fr;gap:12px}
.allocation-details-metrics{display:grid;grid-template-columns:1fr;gap:6px;font-size:11px;color:var(--muted)}.allocation-details-metrics span{display:flex;justify-content:space-between;gap:8px}.allocation-details-metrics strong{color:var(--ink);font-variant-numeric:tabular-nums}
.allocation-compact-tools{display:flex;gap:7px;grid-column:1/-1;flex-wrap:wrap}.allocation-compact-tools .btn{min-height:35px;padding:7px 11px;font-size:11px}
.allocate-footer.allocation-compact-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 16px}
.allocation-compact-footer .allocate-totals{display:flex;justify-content:flex-start;gap:8px 24px;flex-wrap:wrap}.allocation-compact-footer .allocate-totals span{font-size:12px}.allocation-compact-footer .allocate-totals strong{font-size:14px;white-space:nowrap}
.allocation-compact-footer .btn{padding:10px 15px;white-space:nowrap;min-height:43px}.allocation-compact-footer .allocate-error{grid-column:1/-1;order:4}
.allocation-manual-link{font-size:11px;margin:8px 4px 16px;color:var(--muted)}.allocation-manual-link a{font-weight:700;white-space:nowrap}
.allocation-empty{padding:20px;margin-bottom:14px}.allocation-empty p{color:var(--muted);font-size:13px;line-height:1.5}.allocation-empty .btn{margin-right:7px;margin-top:4px}
@media(max-width:750px){
 .allocation-compact-grid{grid-template-columns:minmax(0,1fr) 120px;gap:7px 9px}
 .allocation-compact-identity{grid-column:1;grid-row:1}.allocation-compact-input{grid-column:2;grid-row:1}.allocation-compact-funding{grid-column:1/-1;grid-row:2}
 .allocation-compact-title strong{font-size:12px}.allocation-compact-title{gap:4px;margin-bottom:3px}.allocation-compact-status{font-size:9px;padding:2px 5px}
 .allocation-compact-next{font-size:10px}.allocation-compact-row{padding:10px 12px 8px}
 .allocation-compact-input>label{font-size:9px}.allocation-compact-input .allocate-row-input input{padding:7px 6px 7px 3px;font-size:13px}
 .allocation-compact-header{padding:12px;align-items:flex-start;flex-wrap:wrap;gap:4px 8px}.allocation-rule{white-space:normal;text-align:left;font-size:10px}
 .allocation-compact-funding-caption{font-size:10px;margin-top:4px}
 .allocation-compact-details-inner{grid-template-columns:1fr}
 .allocation-compact-tools{grid-column:1}
 .allocation-snapshot{padding:13px}.allocation-snapshot-major strong{font-size:26px}.allocation-snapshot-stats{gap:14px}
 .allocate-footer.allocation-compact-footer{grid-template-columns:1fr;gap:8px;padding:10px 12px}
 .allocation-compact-footer .btn{width:100%}
}
@media(max-width:420px){
 .allocation-snapshot{gap:11px}.allocation-snapshot-stats{width:100%;padding-top:8px;border-top:1px solid #d4eadd;justify-content:space-between}
 .allocation-compact-title{display:block}.allocation-compact-status{margin-top:3px}.allocation-compact-next{max-width:210px}
}


/* v0.1.14 — deadline-aware bars. The thin marker is the share of the combined
   bill + reserve target that should already be funded by today's date. */
.allocation-deadline-track{height:13px;background:#e7ede9;position:relative;overflow:hidden;border-radius:5px;margin:0;isolation:isolate}
.allocation-deadline-track .allocation-compact-filled,.allocation-deadline-track .allocation-compact-pending{position:absolute;display:block;height:100%;top:0;bottom:0;margin:0;max-width:100%;border-radius:0}
.allocation-deadline-track .allocation-compact-filled{background:#168566;left:0;z-index:1}
.allocation-deadline-track .allocation-compact-pending{background:#a7dfca;z-index:2}
.allocation-deadline-track .allocation-deadline-marker{position:absolute;z-index:4;top:0;bottom:0;width:3px;background:#253c50;box-shadow:0 0 0 1px rgba(255,255,255,.65);border-radius:1px}
.allocation-pace-caption{margin-top:3px;display:flex;justify-content:space-between;gap:6px 12px;flex-wrap:wrap;font-size:10px;line-height:1.35;color:#5f706c}
.allocation-pace-caption strong{font-weight:750;color:#293f39}
.funding-pace-behind{color:#a44f2c}.funding-pace-ontrack{color:#137b51}
@media(max-width:750px){.allocation-deadline-track{height:12px}.allocation-pace-caption{font-size:10px}}

/* v0.1.16: per-account deadline-pace indicator within existing Home rows.
   The fill is one solid color; only its color value changes with the ratio.
   The target marker stays at 2/3 of the track (150% display domain). */
.unallocated-account-row{min-height:66px}
.unallocated-account-identity{width:100%;gap:4px}
.unallocated-identity-top{display:flex;align-items:baseline;gap:9px;min-width:0;width:100%}
.unallocated-identity-top .unallocated-reconciled{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-pace-line{display:flex;align-items:center;gap:8px;width:100%;min-width:0;text-decoration:none;color:var(--muted)}
.account-pace-line:hover{text-decoration:none}
.account-pace-line:focus-visible{outline:2px solid #60a5a4;outline-offset:3px;border-radius:4px}
.account-pace-track{position:relative;display:block;height:8px;flex:1 1 100px;min-width:40px;max-width:230px;border-radius:50px;background:#e4e9e6;overflow:visible}
.account-pace-fill{position:absolute;top:0;bottom:0;left:0;border-radius:50px;transition:width .15s ease,background-color .15s ease}
.account-pace-marker{position:absolute;top:-3px;bottom:-3px;left:66.66667%;z-index:2;border-left:2px solid #30433d;box-shadow:1px 0 0 rgba(255,255,255,.65)}
.account-pace-status{flex:0 0 auto;font-size:10px;font-weight:700;white-space:nowrap;max-width:135px;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.account-pace-none .account-pace-track{background:#f0f2f1}
.account-pace-none .account-pace-marker{opacity:.25}
.account-pace-none .account-pace-status{font-weight:500;color:#77857e}
.account-pace-cash-warning{display:block;font-size:10px;font-weight:650;color:#a3452d}
@media(max-width:760px){
 .unallocated-account-row{min-height:77px}
 .unallocated-account-identity{gap:5px}
 .unallocated-identity-top{gap:7px}
 .unallocated-identity-top .unallocated-reconciled{font-size:9px}
 .account-pace-track{max-width:190px;flex-basis:80px}
 .account-pace-status{font-size:10px}
}
@media(max-width:365px){
 .unallocated-identity-top .unallocated-reconciled{font-size:8px}
 .account-pace-status{font-size:9px;max-width:105px}
}
@media(prefers-reduced-motion:reduce){.account-pace-fill{transition:none}}

.account-pace-cash-icon{display:inline-grid;place-items:center;width:14px;height:14px;flex:0 0 14px;background:#ae4e2c;color:#fff;border-radius:50%;font-size:10px;font-weight:800;line-height:1}

/* v0.1.17: HTML progress meters are compatible with Pocketbook's strict CSP.
   No inline width/color, and no reliance on stale app.js. Each bar is ONE color. */
.account-pace-progress{display:block;appearance:none;-webkit-appearance:none;border:0;
  width:100%;height:8px;margin:0;padding:0;background:transparent;border-radius:50px;overflow:hidden}
.account-pace-progress::-webkit-progress-bar{background:#e4e9e6;border-radius:50px}
.account-pace-progress::-webkit-progress-value{background:#65877e;border-radius:50px}
.account-pace-progress::-moz-progress-bar{background:#65877e;border-radius:50px}
.account-pace-goal::-webkit-progress-value{background:#64748b}
.account-pace-goal::-moz-progress-bar{background:#64748b}
.account-pace-level-0::-webkit-progress-value{background-color:#be303b}
.account-pace-level-0::-moz-progress-bar{background-color:#be303b}
.account-pace-level-1::-webkit-progress-value{background-color:#be313b}
.account-pace-level-1::-moz-progress-bar{background-color:#be313b}
.account-pace-level-2::-webkit-progress-value{background-color:#bf313b}
.account-pace-level-2::-moz-progress-bar{background-color:#bf313b}
.account-pace-level-3::-webkit-progress-value{background-color:#bf323b}
.account-pace-level-3::-moz-progress-bar{background-color:#bf323b}
.account-pace-level-4::-webkit-progress-value{background-color:#c0323b}
.account-pace-level-4::-moz-progress-bar{background-color:#c0323b}
.account-pace-level-5::-webkit-progress-value{background-color:#c0333b}
.account-pace-level-5::-moz-progress-bar{background-color:#c0333b}
.account-pace-level-6::-webkit-progress-value{background-color:#c1333b}
.account-pace-level-6::-moz-progress-bar{background-color:#c1333b}
.account-pace-level-7::-webkit-progress-value{background-color:#c1343b}
.account-pace-level-7::-moz-progress-bar{background-color:#c1343b}
.account-pace-level-8::-webkit-progress-value{background-color:#c2343b}
.account-pace-level-8::-moz-progress-bar{background-color:#c2343b}
.account-pace-level-9::-webkit-progress-value{background-color:#c2353b}
.account-pace-level-9::-moz-progress-bar{background-color:#c2353b}
.account-pace-level-10::-webkit-progress-value{background-color:#c2353c}
.account-pace-level-10::-moz-progress-bar{background-color:#c2353c}
.account-pace-level-11::-webkit-progress-value{background-color:#c3363c}
.account-pace-level-11::-moz-progress-bar{background-color:#c3363c}
.account-pace-level-12::-webkit-progress-value{background-color:#c3363c}
.account-pace-level-12::-moz-progress-bar{background-color:#c3363c}
.account-pace-level-13::-webkit-progress-value{background-color:#c4373c}
.account-pace-level-13::-moz-progress-bar{background-color:#c4373c}
.account-pace-level-14::-webkit-progress-value{background-color:#c4373c}
.account-pace-level-14::-moz-progress-bar{background-color:#c4373c}
.account-pace-level-15::-webkit-progress-value{background-color:#c5383c}
.account-pace-level-15::-moz-progress-bar{background-color:#c5383c}
.account-pace-level-16::-webkit-progress-value{background-color:#c5383c}
.account-pace-level-16::-moz-progress-bar{background-color:#c5383c}
.account-pace-level-17::-webkit-progress-value{background-color:#c6393c}
.account-pace-level-17::-moz-progress-bar{background-color:#c6393c}
.account-pace-level-18::-webkit-progress-value{background-color:#c6393c}
.account-pace-level-18::-moz-progress-bar{background-color:#c6393c}
.account-pace-level-19::-webkit-progress-value{background-color:#c73a3c}
.account-pace-level-19::-moz-progress-bar{background-color:#c73a3c}
.account-pace-level-20::-webkit-progress-value{background-color:#c73a3c}
.account-pace-level-20::-moz-progress-bar{background-color:#c73a3c}
.account-pace-level-21::-webkit-progress-value{background-color:#c73b3c}
.account-pace-level-21::-moz-progress-bar{background-color:#c73b3c}
.account-pace-level-22::-webkit-progress-value{background-color:#c83b3c}
.account-pace-level-22::-moz-progress-bar{background-color:#c83b3c}
.account-pace-level-23::-webkit-progress-value{background-color:#c83c3c}
.account-pace-level-23::-moz-progress-bar{background-color:#c83c3c}
.account-pace-level-24::-webkit-progress-value{background-color:#c93c3c}
.account-pace-level-24::-moz-progress-bar{background-color:#c93c3c}
.account-pace-level-25::-webkit-progress-value{background-color:#c93d3c}
.account-pace-level-25::-moz-progress-bar{background-color:#c93d3c}
.account-pace-level-26::-webkit-progress-value{background-color:#ca3d3c}
.account-pace-level-26::-moz-progress-bar{background-color:#ca3d3c}
.account-pace-level-27::-webkit-progress-value{background-color:#ca3e3c}
.account-pace-level-27::-moz-progress-bar{background-color:#ca3e3c}
.account-pace-level-28::-webkit-progress-value{background-color:#cb3e3c}
.account-pace-level-28::-moz-progress-bar{background-color:#cb3e3c}
.account-pace-level-29::-webkit-progress-value{background-color:#cb3f3c}
.account-pace-level-29::-moz-progress-bar{background-color:#cb3f3c}
.account-pace-level-30::-webkit-progress-value{background-color:#cc403c}
.account-pace-level-30::-moz-progress-bar{background-color:#cc403c}
.account-pace-level-31::-webkit-progress-value{background-color:#cc403d}
.account-pace-level-31::-moz-progress-bar{background-color:#cc403d}
.account-pace-level-32::-webkit-progress-value{background-color:#cc413d}
.account-pace-level-32::-moz-progress-bar{background-color:#cc413d}
.account-pace-level-33::-webkit-progress-value{background-color:#cd413d}
.account-pace-level-33::-moz-progress-bar{background-color:#cd413d}
.account-pace-level-34::-webkit-progress-value{background-color:#cd423d}
.account-pace-level-34::-moz-progress-bar{background-color:#cd423d}
.account-pace-level-35::-webkit-progress-value{background-color:#ce423d}
.account-pace-level-35::-moz-progress-bar{background-color:#ce423d}
.account-pace-level-36::-webkit-progress-value{background-color:#ce433d}
.account-pace-level-36::-moz-progress-bar{background-color:#ce433d}
.account-pace-level-37::-webkit-progress-value{background-color:#cf433d}
.account-pace-level-37::-moz-progress-bar{background-color:#cf433d}
.account-pace-level-38::-webkit-progress-value{background-color:#cf443d}
.account-pace-level-38::-moz-progress-bar{background-color:#cf443d}
.account-pace-level-39::-webkit-progress-value{background-color:#d0443d}
.account-pace-level-39::-moz-progress-bar{background-color:#d0443d}
.account-pace-level-40::-webkit-progress-value{background-color:#d0453d}
.account-pace-level-40::-moz-progress-bar{background-color:#d0453d}
.account-pace-level-41::-webkit-progress-value{background-color:#d0453d}
.account-pace-level-41::-moz-progress-bar{background-color:#d0453d}
.account-pace-level-42::-webkit-progress-value{background-color:#d1463d}
.account-pace-level-42::-moz-progress-bar{background-color:#d1463d}
.account-pace-level-43::-webkit-progress-value{background-color:#d1463d}
.account-pace-level-43::-moz-progress-bar{background-color:#d1463d}
.account-pace-level-44::-webkit-progress-value{background-color:#d2473d}
.account-pace-level-44::-moz-progress-bar{background-color:#d2473d}
.account-pace-level-45::-webkit-progress-value{background-color:#d2473d}
.account-pace-level-45::-moz-progress-bar{background-color:#d2473d}
.account-pace-level-46::-webkit-progress-value{background-color:#d3483d}
.account-pace-level-46::-moz-progress-bar{background-color:#d3483d}
.account-pace-level-47::-webkit-progress-value{background-color:#d3483d}
.account-pace-level-47::-moz-progress-bar{background-color:#d3483d}
.account-pace-level-48::-webkit-progress-value{background-color:#d4493d}
.account-pace-level-48::-moz-progress-bar{background-color:#d4493d}
.account-pace-level-49::-webkit-progress-value{background-color:#d4493d}
.account-pace-level-49::-moz-progress-bar{background-color:#d4493d}
.account-pace-level-50::-webkit-progress-value{background-color:#d44a3e}
.account-pace-level-50::-moz-progress-bar{background-color:#d44a3e}
.account-pace-level-51::-webkit-progress-value{background-color:#d54a3e}
.account-pace-level-51::-moz-progress-bar{background-color:#d54a3e}
.account-pace-level-52::-webkit-progress-value{background-color:#d54b3e}
.account-pace-level-52::-moz-progress-bar{background-color:#d54b3e}
.account-pace-level-53::-webkit-progress-value{background-color:#d64b3e}
.account-pace-level-53::-moz-progress-bar{background-color:#d64b3e}
.account-pace-level-54::-webkit-progress-value{background-color:#d64c3e}
.account-pace-level-54::-moz-progress-bar{background-color:#d64c3e}
.account-pace-level-55::-webkit-progress-value{background-color:#d74c3e}
.account-pace-level-55::-moz-progress-bar{background-color:#d74c3e}
.account-pace-level-56::-webkit-progress-value{background-color:#d74d3e}
.account-pace-level-56::-moz-progress-bar{background-color:#d74d3e}
.account-pace-level-57::-webkit-progress-value{background-color:#d84d3e}
.account-pace-level-57::-moz-progress-bar{background-color:#d84d3e}
.account-pace-level-58::-webkit-progress-value{background-color:#d84e3e}
.account-pace-level-58::-moz-progress-bar{background-color:#d84e3e}
.account-pace-level-59::-webkit-progress-value{background-color:#d94e3e}
.account-pace-level-59::-moz-progress-bar{background-color:#d94e3e}
.account-pace-level-60::-webkit-progress-value{background-color:#d94f3e}
.account-pace-level-60::-moz-progress-bar{background-color:#d94f3e}
.account-pace-level-61::-webkit-progress-value{background-color:#da533d}
.account-pace-level-61::-moz-progress-bar{background-color:#da533d}
.account-pace-level-62::-webkit-progress-value{background-color:#da573c}
.account-pace-level-62::-moz-progress-bar{background-color:#da573c}
.account-pace-level-63::-webkit-progress-value{background-color:#db5a3b}
.account-pace-level-63::-moz-progress-bar{background-color:#db5a3b}
.account-pace-level-64::-webkit-progress-value{background-color:#dc5e3a}
.account-pace-level-64::-moz-progress-bar{background-color:#dc5e3a}
.account-pace-level-65::-webkit-progress-value{background-color:#dc623a}
.account-pace-level-65::-moz-progress-bar{background-color:#dc623a}
.account-pace-level-66::-webkit-progress-value{background-color:#dd6639}
.account-pace-level-66::-moz-progress-bar{background-color:#dd6639}
.account-pace-level-67::-webkit-progress-value{background-color:#de6a38}
.account-pace-level-67::-moz-progress-bar{background-color:#de6a38}
.account-pace-level-68::-webkit-progress-value{background-color:#df6d37}
.account-pace-level-68::-moz-progress-bar{background-color:#df6d37}
.account-pace-level-69::-webkit-progress-value{background-color:#df7136}
.account-pace-level-69::-moz-progress-bar{background-color:#df7136}
.account-pace-level-70::-webkit-progress-value{background-color:#e07535}
.account-pace-level-70::-moz-progress-bar{background-color:#e07535}
.account-pace-level-71::-webkit-progress-value{background-color:#e17934}
.account-pace-level-71::-moz-progress-bar{background-color:#e17934}
.account-pace-level-72::-webkit-progress-value{background-color:#e17d33}
.account-pace-level-72::-moz-progress-bar{background-color:#e17d33}
.account-pace-level-73::-webkit-progress-value{background-color:#e28032}
.account-pace-level-73::-moz-progress-bar{background-color:#e28032}
.account-pace-level-74::-webkit-progress-value{background-color:#e38431}
.account-pace-level-74::-moz-progress-bar{background-color:#e38431}
.account-pace-level-75::-webkit-progress-value{background-color:#e48830}
.account-pace-level-75::-moz-progress-bar{background-color:#e48830}
.account-pace-level-76::-webkit-progress-value{background-color:#e48c30}
.account-pace-level-76::-moz-progress-bar{background-color:#e48c30}
.account-pace-level-77::-webkit-progress-value{background-color:#e5902f}
.account-pace-level-77::-moz-progress-bar{background-color:#e5902f}
.account-pace-level-78::-webkit-progress-value{background-color:#e6932e}
.account-pace-level-78::-moz-progress-bar{background-color:#e6932e}
.account-pace-level-79::-webkit-progress-value{background-color:#e6972d}
.account-pace-level-79::-moz-progress-bar{background-color:#e6972d}
.account-pace-level-80::-webkit-progress-value{background-color:#e79b2c}
.account-pace-level-80::-moz-progress-bar{background-color:#e79b2c}
.account-pace-level-81::-webkit-progress-value{background-color:#e69e2d}
.account-pace-level-81::-moz-progress-bar{background-color:#e69e2d}
.account-pace-level-82::-webkit-progress-value{background-color:#e6a12e}
.account-pace-level-82::-moz-progress-bar{background-color:#e6a12e}
.account-pace-level-83::-webkit-progress-value{background-color:#e5a430}
.account-pace-level-83::-moz-progress-bar{background-color:#e5a430}
.account-pace-level-84::-webkit-progress-value{background-color:#e5a731}
.account-pace-level-84::-moz-progress-bar{background-color:#e5a731}
.account-pace-level-85::-webkit-progress-value{background-color:#e4aa32}
.account-pace-level-85::-moz-progress-bar{background-color:#e4aa32}
.account-pace-level-86::-webkit-progress-value{background-color:#e4ad33}
.account-pace-level-86::-moz-progress-bar{background-color:#e4ad33}
.account-pace-level-87::-webkit-progress-value{background-color:#e3b034}
.account-pace-level-87::-moz-progress-bar{background-color:#e3b034}
.account-pace-level-88::-webkit-progress-value{background-color:#e2b436}
.account-pace-level-88::-moz-progress-bar{background-color:#e2b436}
.account-pace-level-89::-webkit-progress-value{background-color:#e2b737}
.account-pace-level-89::-moz-progress-bar{background-color:#e2b737}
.account-pace-level-90::-webkit-progress-value{background-color:#e1ba38}
.account-pace-level-90::-moz-progress-bar{background-color:#e1ba38}
.account-pace-level-91::-webkit-progress-value{background-color:#e1bd39}
.account-pace-level-91::-moz-progress-bar{background-color:#e1bd39}
.account-pace-level-92::-webkit-progress-value{background-color:#e0c03b}
.account-pace-level-92::-moz-progress-bar{background-color:#e0c03b}
.account-pace-level-93::-webkit-progress-value{background-color:#e0c33c}
.account-pace-level-93::-moz-progress-bar{background-color:#e0c33c}
.account-pace-level-94::-webkit-progress-value{background-color:#dfc63d}
.account-pace-level-94::-moz-progress-bar{background-color:#dfc63d}
.account-pace-level-95::-webkit-progress-value{background-color:#c1bc41}
.account-pace-level-95::-moz-progress-bar{background-color:#c1bc41}
.account-pace-level-96::-webkit-progress-value{background-color:#a2b346}
.account-pace-level-96::-moz-progress-bar{background-color:#a2b346}
.account-pace-level-97::-webkit-progress-value{background-color:#84aa4a}
.account-pace-level-97::-moz-progress-bar{background-color:#84aa4a}
.account-pace-level-98::-webkit-progress-value{background-color:#66a04e}
.account-pace-level-98::-moz-progress-bar{background-color:#66a04e}
.account-pace-level-99::-webkit-progress-value{background-color:#479653}
.account-pace-level-99::-moz-progress-bar{background-color:#479653}
.account-pace-level-100::-webkit-progress-value{background-color:#298d57}
.account-pace-level-100::-moz-progress-bar{background-color:#298d57}
.account-pace-level-101::-webkit-progress-value{background-color:#278d5b}
.account-pace-level-101::-moz-progress-bar{background-color:#278d5b}
.account-pace-level-102::-webkit-progress-value{background-color:#258d60}
.account-pace-level-102::-moz-progress-bar{background-color:#258d60}
.account-pace-level-103::-webkit-progress-value{background-color:#238e64}
.account-pace-level-103::-moz-progress-bar{background-color:#238e64}
.account-pace-level-104::-webkit-progress-value{background-color:#218e69}
.account-pace-level-104::-moz-progress-bar{background-color:#218e69}
.account-pace-level-105::-webkit-progress-value{background-color:#208e6d}
.account-pace-level-105::-moz-progress-bar{background-color:#208e6d}
.account-pace-level-106::-webkit-progress-value{background-color:#1e8e71}
.account-pace-level-106::-moz-progress-bar{background-color:#1e8e71}
.account-pace-level-107::-webkit-progress-value{background-color:#1c8e76}
.account-pace-level-107::-moz-progress-bar{background-color:#1c8e76}
.account-pace-level-108::-webkit-progress-value{background-color:#1a8f7a}
.account-pace-level-108::-moz-progress-bar{background-color:#1a8f7a}
.account-pace-level-109::-webkit-progress-value{background-color:#188f7f}
.account-pace-level-109::-moz-progress-bar{background-color:#188f7f}
.account-pace-level-110::-webkit-progress-value{background-color:#168f83}
.account-pace-level-110::-moz-progress-bar{background-color:#168f83}
.account-pace-level-111::-webkit-progress-value{background-color:#178e86}
.account-pace-level-111::-moz-progress-bar{background-color:#178e86}
.account-pace-level-112::-webkit-progress-value{background-color:#188d88}
.account-pace-level-112::-moz-progress-bar{background-color:#188d88}
.account-pace-level-113::-webkit-progress-value{background-color:#1a8c8b}
.account-pace-level-113::-moz-progress-bar{background-color:#1a8c8b}
.account-pace-level-114::-webkit-progress-value{background-color:#1b8c8d}
.account-pace-level-114::-moz-progress-bar{background-color:#1b8c8d}
.account-pace-level-115::-webkit-progress-value{background-color:#1c8b90}
.account-pace-level-115::-moz-progress-bar{background-color:#1c8b90}
.account-pace-level-116::-webkit-progress-value{background-color:#1d8a92}
.account-pace-level-116::-moz-progress-bar{background-color:#1d8a92}
.account-pace-level-117::-webkit-progress-value{background-color:#1e8995}
.account-pace-level-117::-moz-progress-bar{background-color:#1e8995}
.account-pace-level-118::-webkit-progress-value{background-color:#1f8897}
.account-pace-level-118::-moz-progress-bar{background-color:#1f8897}
.account-pace-level-119::-webkit-progress-value{background-color:#21879a}
.account-pace-level-119::-moz-progress-bar{background-color:#21879a}
.account-pace-level-120::-webkit-progress-value{background-color:#22869c}
.account-pace-level-120::-moz-progress-bar{background-color:#22869c}
.account-pace-level-121::-webkit-progress-value{background-color:#23869f}
.account-pace-level-121::-moz-progress-bar{background-color:#23869f}
.account-pace-level-122::-webkit-progress-value{background-color:#2485a2}
.account-pace-level-122::-moz-progress-bar{background-color:#2485a2}
.account-pace-level-123::-webkit-progress-value{background-color:#2584a4}
.account-pace-level-123::-moz-progress-bar{background-color:#2584a4}
.account-pace-level-124::-webkit-progress-value{background-color:#2783a7}
.account-pace-level-124::-moz-progress-bar{background-color:#2783a7}
.account-pace-level-125::-webkit-progress-value{background-color:#2882a9}
.account-pace-level-125::-moz-progress-bar{background-color:#2882a9}
.account-pace-level-126::-webkit-progress-value{background-color:#2981ac}
.account-pace-level-126::-moz-progress-bar{background-color:#2981ac}
.account-pace-level-127::-webkit-progress-value{background-color:#2a80ae}
.account-pace-level-127::-moz-progress-bar{background-color:#2a80ae}
.account-pace-level-128::-webkit-progress-value{background-color:#2b7fb1}
.account-pace-level-128::-moz-progress-bar{background-color:#2b7fb1}
.account-pace-level-129::-webkit-progress-value{background-color:#2c7fb3}
.account-pace-level-129::-moz-progress-bar{background-color:#2c7fb3}
.account-pace-level-130::-webkit-progress-value{background-color:#2e7eb6}
.account-pace-level-130::-moz-progress-bar{background-color:#2e7eb6}
.account-pace-level-131::-webkit-progress-value{background-color:#2f7db8}
.account-pace-level-131::-moz-progress-bar{background-color:#2f7db8}
.account-pace-level-132::-webkit-progress-value{background-color:#307cbb}
.account-pace-level-132::-moz-progress-bar{background-color:#307cbb}
.account-pace-level-133::-webkit-progress-value{background-color:#307abb}
.account-pace-level-133::-moz-progress-bar{background-color:#307abb}
.account-pace-level-134::-webkit-progress-value{background-color:#3078bb}
.account-pace-level-134::-moz-progress-bar{background-color:#3078bb}
.account-pace-level-135::-webkit-progress-value{background-color:#3076ba}
.account-pace-level-135::-moz-progress-bar{background-color:#3076ba}
.account-pace-level-136::-webkit-progress-value{background-color:#3075ba}
.account-pace-level-136::-moz-progress-bar{background-color:#3075ba}
.account-pace-level-137::-webkit-progress-value{background-color:#3073ba}
.account-pace-level-137::-moz-progress-bar{background-color:#3073ba}
.account-pace-level-138::-webkit-progress-value{background-color:#3071ba}
.account-pace-level-138::-moz-progress-bar{background-color:#3071ba}
.account-pace-level-139::-webkit-progress-value{background-color:#306fb9}
.account-pace-level-139::-moz-progress-bar{background-color:#306fb9}
.account-pace-level-140::-webkit-progress-value{background-color:#306db9}
.account-pace-level-140::-moz-progress-bar{background-color:#306db9}
.account-pace-level-141::-webkit-progress-value{background-color:#306cb9}
.account-pace-level-141::-moz-progress-bar{background-color:#306cb9}
.account-pace-level-142::-webkit-progress-value{background-color:#316ab9}
.account-pace-level-142::-moz-progress-bar{background-color:#316ab9}
.account-pace-level-143::-webkit-progress-value{background-color:#3168b9}
.account-pace-level-143::-moz-progress-bar{background-color:#3168b9}
.account-pace-level-144::-webkit-progress-value{background-color:#3166b8}
.account-pace-level-144::-moz-progress-bar{background-color:#3166b8}
.account-pace-level-145::-webkit-progress-value{background-color:#3164b8}
.account-pace-level-145::-moz-progress-bar{background-color:#3164b8}
.account-pace-level-146::-webkit-progress-value{background-color:#3162b8}
.account-pace-level-146::-moz-progress-bar{background-color:#3162b8}
.account-pace-level-147::-webkit-progress-value{background-color:#3160b8}
.account-pace-level-147::-moz-progress-bar{background-color:#3160b8}
.account-pace-level-148::-webkit-progress-value{background-color:#315fb7}
.account-pace-level-148::-moz-progress-bar{background-color:#315fb7}
.account-pace-level-149::-webkit-progress-value{background-color:#315db7}
.account-pace-level-149::-moz-progress-bar{background-color:#315db7}
.account-pace-level-150::-webkit-progress-value{background-color:#315bb7}
.account-pace-level-150::-moz-progress-bar{background-color:#315bb7}

/* v0.1.18 — responsive More popup, never a page change on tap. */
.bottom-nav .nav-more-root{flex:1;display:flex;align-items:stretch;justify-content:center;min-width:0}
.bottom-nav .nav-more-toggle{appearance:none;border:0;background:transparent;cursor:pointer;min-width:54px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;font-size:11px;color:#687973;font-weight:650;padding:4px 8px;line-height:normal}
.bottom-nav .nav-more-toggle:hover,.bottom-nav .nav-more-toggle.active{color:var(--green)}
.bottom-nav .nav-more-toggle:focus-visible,.nav-more-close:focus-visible{outline:3px solid #9ccfbe;outline-offset:1px;border-radius:9px}
.nav-more-backdrop{position:fixed;inset:0;z-index:11;background:rgba(18,36,30,.32)}
.nav-more-backdrop[hidden],.nav-more-panel[hidden]{display:none!important}
.nav-more-panel{position:fixed;right:max(12px,calc((100vw - 750px)/2));bottom:calc(77px + env(safe-area-inset-bottom));z-index:13;width:min(354px,calc(100vw - 24px));max-height:min(72vh,580px);overflow-y:auto;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 14px 50px rgba(12,37,28,.24);padding:5px 13px 9px;text-align:left}
.nav-more-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 4px;border-bottom:1px solid var(--border)}
.nav-more-heading strong{font-size:15px}
.nav-more-close{border:0;border-radius:8px;background:#f2f6f3;color:var(--ink);font-size:24px;line-height:1;padding:3px 9px;cursor:pointer}
.nav-more-panel>a{display:flex;align-items:center;justify-content:flex-start;flex-direction:row;gap:12px;min-height:53px;border-bottom:1px solid #edf2ee;color:var(--ink);padding:9px 5px;font-size:13px;font-weight:normal;min-width:0}
.nav-more-panel>a:last-child{border-bottom:0}
.nav-more-panel>a>span:first-child{display:flex;align-items:center;justify-content:center;width:31px;flex:0 0 31px;height:31px;border-radius:9px;background:#eaf2ed;color:var(--green);font-size:18px;font-weight:800}
.nav-more-panel>a>span:last-child{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:2px}
.nav-more-panel>a strong{font-size:13px;color:var(--ink)}
.nav-more-panel>a small{display:block;font-size:10px;color:var(--muted)}
.nav-more-panel>a:hover{background:#f4f9f6;border-radius:7px}
/* Tight action tabs: filters change the data set, not just its highlight. */
.bill-view-switch{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:0 0 10px}
.bill-view-switch a{display:inline-flex;gap:6px;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid var(--border);border-radius:10px;background:#fff;font-size:12px;font-weight:750;color:#506760}
.bill-view-switch a.selected{background:var(--green);color:#fff;border-color:var(--green)}
.bill-view-switch a:hover{text-decoration:none;border-color:var(--green)}
.bill-view-switch b{font-variant-numeric:tabular-nums;opacity:.85}
.bill-visible-count{font-size:11px;font-weight:600;color:var(--muted)}
.account-activity{margin-top:14px}.account-activity-link{padding:12px 0 7px;margin:0;font-size:13px;font-weight:700}
.settings-signout{margin:12px 0 0!important}
@media(max-width:480px){
 .nav-more-panel{bottom:calc(72px + env(safe-area-inset-bottom));right:12px;padding:3px 12px 7px}
 .nav-more-panel>a{min-height:48px;padding:7px 5px}
 .bill-view-switch{gap:5px}
 .bill-view-switch a{padding:6px 8px;font-size:11px;min-height:33px}
}
/* Keep all five navigation positions equally spaced and above the backdrop. */
.bottom-nav{z-index:40}
.bottom-nav>a,.bottom-nav>.nav-more-root{flex:1 1 0}
.nav-more-backdrop{z-index:30}

/* Reserve goals live in Funds, collapsed by default to preserve focus. */
.fund-goals-fold{margin:0 0 13px;overflow:hidden}
.fund-goals-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;cursor:pointer;list-style:none;font-size:14px}
.fund-goals-fold>summary::-webkit-details-marker{display:none}
.fund-goals-fold>summary span{font-size:11px;color:var(--muted)}
.fund-goals-fold[open]>summary{border-bottom:1px solid var(--border)}
.fund-goal-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 17px;border-bottom:1px solid #e8eee9;color:var(--ink)}
.fund-goal-row:last-child{border-bottom:0}
.fund-goal-row:hover{text-decoration:none;background:#f7faf8}
.fund-goal-row>span:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.fund-goal-row strong{font-size:12px}.fund-goal-row small{font-size:10px;color:var(--muted)}
.fund-goal-meter{display:flex;align-items:center;gap:7px;flex-shrink:0}
.fund-goal-meter progress{appearance:none;-webkit-appearance:none;width:82px;height:7px;border:0;border-radius:7px;background:#e5ede8;overflow:hidden}
.fund-goal-meter progress::-webkit-progress-bar{background:#e5ede8}
.fund-goal-meter progress::-webkit-progress-value{background:#1b8065}
.fund-goal-meter progress::-moz-progress-bar{background:#1b8065}
.fund-goal-meter b{font-size:11px;font-variant-numeric:tabular-nums;min-width:28px;text-align:right}
@media(max-width:360px){.fund-goal-meter progress{width:55px}}

/* v0.1.19 — one funding plan per bill, compact pacing vs fully-funded checkpoints */
.pill-onpace{background:#e4f2e8;color:#1d6c46}
.pill-behind{background:#fff3d9;color:#8b600e}
.bill-funding-checkpoints{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:11px 0 9px}
.bill-funding-checkpoints>div{display:flex;flex-direction:column;gap:4px;padding:10px 11px;border:1px solid #dfe9e3;background:#fff;border-radius:9px;min-width:0}
.bill-funding-checkpoints small{font-size:10px;line-height:1.3;color:var(--muted)}
.bill-funding-checkpoints strong{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink)}
.bill-funding-checkpoints span{font-size:10px;line-height:1.35;font-weight:700}
.bill-plan-need{color:#9f5424}.bill-plan-good{color:#1c7c50}
.bill-pace-visual{display:flex;gap:10px;align-items:center;max-width:460px;margin:8px 0}
.bill-pace-track{flex:1 1 auto;max-width:none;height:9px}
.bill-pace-track .account-pace-progress{height:9px}
.bill-pace-caption{flex:0 0 auto;font-size:10px;color:#61756b;font-weight:750}
.bill-plan-weekly{font-size:11px;color:var(--muted);margin:7px 0;line-height:1.4}
.allocation-bill-entry>span{min-width:0}
.allocation-bill-entry>span>strong{font-size:11px}
.allocation-bill-list .allocation-bill-entry small{font-size:10px;line-height:1.55}
.allocation-bill-list .allocation-bill-entry small b{font-size:10px;color:#346252;font-weight:750;white-space:normal}
@media(max-width:720px){
 .bill-funding-checkpoints{gap:5px}
 .bill-funding-checkpoints>div{padding:8px 6px}
 .bill-funding-checkpoints small{font-size:9px}
 .bill-funding-checkpoints strong{font-size:12px}
 .bill-funding-checkpoints span{font-size:9px}
}
@media(max-width:365px){
 .bill-funding-checkpoints{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bill-funding-checkpoints>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center}
}


/* v0.1.20 — compact bill-list funding meters, same deadline pace and
   smooth SOLID-color scale as Home; width/value are native CSP-safe progress. */
.bill-compact-name-block{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-width:0;overflow:hidden}
.bill-compact-name-block .bill-compact-name{display:block;min-width:0;max-width:100%;font-weight:800;line-height:17px}
.bill-row-pace{display:block;width:100%;max-width:225px;min-width:0;line-height:0}
.bill-row-pace-track{display:block;max-width:none;width:100%;height:6px;min-width:0}
.bill-row-pace-track .account-pace-progress{height:6px}
.bill-row-pace-track .account-pace-marker{top:-2px;bottom:-2px;border-left-width:1.5px}
.bill-row-pace-neutral .account-pace-marker{opacity:.22}
.bill-row-pace-zero .bill-row-pace-track::before{content:'';position:absolute;z-index:1;left:0;top:0;width:4px;height:6px;border-radius:50px;background:#be303b}
.bill-compact-summary{min-height:57px}
@media(max-width:760px){
 .bill-compact-summary{grid-template-rows:minmax(34px,auto) 18px;min-height:67px;row-gap:4px}
 .bill-compact-name-block{grid-column:1;grid-row:1;align-self:center;gap:4px}
 .bill-row-pace{max-width:200px}
 .bill-compact-amount{align-self:start;padding-top:2px}
}
@media(max-width:365px){
 .bill-compact-summary{grid-template-rows:minmax(33px,auto) 18px;min-height:65px}
 .bill-row-pace{max-width:155px}
}


/* v0.1.21: Manual bank-balance checks. Compact, no horizontal scrolling. */
.recon-context{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;font-size:12px;color:var(--muted)}
.recon-context a{font-weight:750}
.recon-account-picker{padding:0 17px;margin-bottom:15px}
.recon-account-choice{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 3px;border-bottom:1px solid var(--border);color:var(--ink)}
.recon-account-choice:last-child{border-bottom:0}
.recon-account-choice:hover{text-decoration:none}
.recon-account-choice>span{display:flex;flex-direction:column;gap:4px;min-width:0}
.recon-account-choice>span:last-child{text-align:right}
.recon-account-choice strong{font-size:15px}
.recon-account-choice small{font-size:12px;color:var(--muted)}
.recon-account-choice>span:last-child small{color:var(--green);font-weight:750}
.recon-main{padding:22px;margin-bottom:13px}
.recon-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}
.recon-title h2{font-size:23px;margin:4px 0 0}
.recon-ledger{text-align:right;white-space:nowrap;display:flex;flex-direction:column;gap:3px}
.recon-ledger small{font-size:11px;color:var(--muted)}
.recon-ledger strong{font-size:23px;letter-spacing:-.03em}
.recon-verify-form{display:flex;flex-direction:column;gap:11px}
.recon-inputs{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}
.recon-main label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#304a42;font-weight:750}
.recon-main input{min-width:0;width:100%;border:1px solid #cbd9d1;border-radius:10px;padding:12px 13px;min-height:45px;background:#fff;color:var(--ink)}
.recon-main input:focus{outline:3px solid #b7ded2;outline-offset:1px}
.recon-difference{display:flex;align-items:center;justify-content:space-between;background:#f3f7f4;padding:13px 15px;border-radius:12px;gap:12px}
.recon-difference span{font-size:13px;font-weight:700}
.recon-difference strong{font-size:20px;white-space:nowrap;letter-spacing:-.02em;color:var(--muted)}
.recon-difference strong.recon-match{color:#12694a}
.recon-difference strong.recon-mismatch{color:#ad4738}
.recon-guidance{color:var(--muted);font-size:12px;line-height:1.45}
.recon-verify-actions{display:flex;flex-wrap:wrap;gap:9px}
.recon-safeguard{margin:12px 0 0}
.recon-corrections-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}
.recon-corrections-heading h2{margin:0 0 4px}
.recon-corrections-heading p{font-size:12px;margin:0}
.recon-corrections-heading>a{font-size:12px;font-weight:750;white-space:nowrap}
.recon-correction-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}
.recon-correction-choices>details{border:1px solid var(--border);border-radius:11px;padding:0;margin:0;min-width:0}
.recon-correction-choices>details[open]{grid-column:span 2;background:#fcfefd}
.recon-correction-choices>details summary{padding:13px 15px;border-radius:10px;min-height:45px;display:flex;align-items:center;list-style:none;cursor:pointer;font-size:13px;font-weight:800}
.recon-correction-choices>details summary::-webkit-details-marker{display:none}
.recon-correction-choices .detail-content{padding:15px;border-top:1px solid var(--border)}
.recon-correction-choices .detail-content form{display:flex;flex-direction:column;gap:12px}
.recon-correction-choices .detail-content label{display:flex;flex-direction:column;gap:6px}
.recon-correction-choices .detail-content label.checkbox-line{flex-direction:row}
.recon-correction-choices .hint{margin:0;font-size:12px}
.recon-recent{margin:6px 0 13px;font-size:13px}
.recon-recent>details>summary{color:var(--green);cursor:pointer;font-weight:700;padding:10px 3px}
.recon-recent-list{margin-top:9px;padding:6px 17px}
.recon-recent-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--border);align-items:center}
.recon-recent-row:last-child{border-bottom:0}
.recon-recent-row>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.recon-recent-row strong{font-size:12px;overflow-wrap:anywhere}
.recon-recent-row>strong{white-space:nowrap}
.recon-recent-row small{color:var(--muted);font-size:11px}
.account-dir-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:13px}
.account-dir-actions>a{font-size:12px;font-weight:750}
@media(max-width:600px){
 .recon-title h2{font-size:20px}
 .recon-ledger strong{font-size:19px}
 .recon-main{padding:17px}
 .recon-corrections-heading{align-items:flex-start;flex-direction:column;gap:7px}
 .recon-verify-actions .btn{flex:1}
}
@media(max-width:370px){
 .recon-inputs{grid-template-columns:1fr}
 .recon-title{gap:8px}
 .recon-ledger strong{font-size:17px}
 .recon-verify-actions{flex-direction:column}
 .recon-correction-choices{gap:7px}
 .recon-correction-choices>details summary{padding:11px 8px;font-size:12px}
}
.recon-corrections [hidden]{display:none!important}

/* v0.1.22: One searchable transaction journal for bank and virtual-fund entries. */
.history-counts{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 8px}
.history-counts span{border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:12px;color:var(--muted);background:#fff}
.history-counts strong{color:var(--ink);font-variant-numeric:tabular-nums}
.history-view-tabs{display:flex;gap:7px;overflow-x:auto;margin:15px 0 12px;padding-bottom:3px;scrollbar-width:thin}
.history-view-tabs a{white-space:nowrap;flex:0 0 auto;border:1px solid var(--border);padding:10px 12px;border-radius:11px;background:#fff;color:var(--green);font-weight:750;font-size:12px;min-height:41px;display:flex;align-items:center}
.history-view-tabs a.active{background:var(--green);color:#fff;border-color:var(--green)}
.history-view-tabs a:hover{text-decoration:none}
.history-filter-card{padding:16px;margin-bottom:12px}
.history-filter-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(125px,.6fr);gap:10px;align-items:end}
.history-filter-form label{display:flex;flex-direction:column;gap:6px;min-width:0;color:#304a42;font-size:12px;font-weight:700}
.history-filter-form input,.history-filter-form select{border-radius:9px;border:1px solid #cbd9d1;padding:9px 10px;min-height:43px;width:100%;min-width:0;background:#fff;color:var(--ink)}
.history-search-label{grid-column:1/span 2}
.history-filter-actions{display:flex;gap:8px;align-items:end}
.history-filter-actions .btn{padding:9px 13px;min-height:43px}
.history-explanation{color:#5e6e68;font-size:12px;line-height:1.6;margin:12px 1px 14px}
.history-explanation strong{color:#3c554d}
.history-records{padding:0 18px;margin-bottom:14px}
.history-records-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 0 10px}
.history-records-heading h2{margin:0;font-size:16px}
.history-records-heading a{font-size:12px;white-space:nowrap;font-weight:700}
.history-record{border-top:1px solid var(--border)}
.history-record-summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) max-content 16px;gap:10px;min-height:73px;align-items:center;cursor:pointer;padding:10px 2px}
.history-record-summary::-webkit-details-marker{display:none}
.history-record-summary::marker{content:''}
.history-record-summary:hover{background:#f6faf8}
.history-record-summary:focus-visible{outline:3px solid #b7ded2;outline-offset:0;border-radius:6px}
.history-record-main{display:flex;flex-direction:column;gap:3px;min-width:0}
.history-record-main strong{font-size:14px;line-height:1.3;min-width:0;overflow-wrap:anywhere}
.history-record-main small{font-size:11px;color:var(--muted);line-height:1.3}
.history-record-context{font-size:11px;color:#557164;line-height:1.35;overflow-wrap:anywhere}
.history-record-value-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:0}
.history-record-value{font-variant-numeric:tabular-nums;font-weight:800;font-size:14px;white-space:nowrap}
.history-record-value-wrap small{color:var(--muted);font-size:10px}
.history-neutral{color:var(--ink)}
.history-record-chevron{color:var(--muted);font-size:14px;transition:transform .16s ease}
.history-record[open] .history-record-chevron{transform:rotate(180deg)}
.history-record-detail{margin:0 0 12px;padding:14px;background:#f6faf8;border-radius:10px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.history-record-detail p{margin:5px 0}
.history-detail-meta{display:flex;gap:6px 18px;flex-wrap:wrap;margin-bottom:10px;color:var(--muted)}
.history-record-detail strong{color:var(--ink)}
.history-movement-heading{font-weight:800;font-size:12px;margin:13px 0 5px;color:var(--ink)}
.history-movement-list{border-radius:9px;overflow:hidden;border:1px solid #dce8e1;background:#fff}
.history-movement-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-top:1px solid #e6efea}
.history-movement-list>div:first-child{border-top:none}
.history-movement-list strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}
.history-movement-list span,.history-movement-list a{min-width:0;overflow-wrap:anywhere}
.history-movement-list a{text-decoration:underline;text-decoration-color:#a7c8b7;text-underline-offset:3px}
.history-footnote{color:var(--muted);margin-top:13px!important;font-size:11px}
.fund-history-link{color:var(--ink)}
.fund-history-link:hover{color:var(--green);text-decoration:underline}
@media(max-width:760px){
 .history-filter-form{grid-template-columns:1fr 1fr}
 .history-filter-form .history-search-label{grid-column:1/span 2}
 .history-filter-actions{grid-column:1/span 2}
 .history-filter-actions .btn{flex:1}
 .history-records{padding:0 13px}
 .history-record-summary{gap:8px;min-height:70px}
 .history-record-main strong{font-size:13px}
 .history-record-value{font-size:12px}
 .history-record-detail{padding:11px}
 .history-records-heading h2{font-size:14px}
}
@media(max-width:380px){.history-record-summary{grid-template-columns:minmax(0,1fr) max-content 12px;gap:5px}.history-record-value{font-size:11px}.history-records-heading a{font-size:11px}}

/* v0.1.23 - transaction-first navigation and clear Bank > Fund > Entries drilldown. */
.topbar-actions{display:flex;align-items:center;gap:12px;min-width:0}
.top-menu-toggle{appearance:none;display:inline-flex;align-items:center;gap:7px;border:1px solid #d6e5dc;background:#f5faf7;border-radius:10px;color:#16584d;font-size:12px;font-weight:800;padding:9px 12px;min-height:40px;cursor:pointer;white-space:nowrap}
.top-menu-toggle span{font-size:19px;line-height:1}
.top-menu-toggle:hover,.top-menu-toggle.active{background:#e3f1e9}
.top-menu-toggle:focus-visible{outline:3px solid #9ccfbe;outline-offset:2px}
.nav-top-menu-panel{top:62px;bottom:auto!important;z-index:61;right:max(12px,calc((100vw - 1060px)/2));width:min(354px,calc(100vw - 24px))}
.nav-more-backdrop{z-index:50}
.bottom-nav{justify-content:center;gap:0;padding:7px max(6px,calc((100vw - 750px)/2)) calc(9px + env(safe-area-inset-bottom));z-index:40}
.bottom-nav>a{flex:1 1 0;min-width:0;padding:5px 1px;border-radius:10px;gap:3px}
.bottom-nav>a.active{background:#eaf4ee;color:#13634d}
.bottom-nav .nav-icon{font-size:22px;line-height:23px}
.bottom-nav .nav-label{white-space:nowrap;font-size:clamp(9px,2.55vw,11px);letter-spacing:-.035em;font-weight:750}
@media(max-width:760px){.nav-top-menu-panel{top:54px;right:12px}.top-menu-toggle{padding:8px 9px}.topbar-actions{gap:8px}}
@media(max-width:360px){.bottom-nav .nav-label{font-size:8px}.bottom-nav .nav-icon{font-size:20px}.account-name{display:none}}

.history-heading{margin-bottom:11px}
.history-heading p{margin-bottom:0;max-width:780px;font-size:13px}
.history-view-tabs{gap:7px;margin:12px 0;flex-wrap:wrap;overflow:visible}
.history-view-tabs a{flex:1 1 auto;justify-content:center;text-align:center;font-size:12px;min-width:84px}
.history-browse{background:#eaf3ee;border:1px solid #d8e6dd;border-radius:13px;padding:12px 14px;margin:0 0 11px}
.history-browse-title{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:#516962;font-size:12px;margin-bottom:9px}
.history-browse-title strong{font-size:13px;color:#164b3d}
.history-quick-filters{display:flex;flex-wrap:wrap;gap:7px}
.history-quick-filters a{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border:1px solid #c9dcd1;background:#fff;border-radius:9px;font-size:12px;font-weight:700;color:#24554a;min-height:37px;text-align:center}
.history-quick-filters a.selected{background:#17654f;color:#fff;border-color:#17654f}
.history-quick-filters a:hover{text-decoration:none;border-color:#17654f}
.history-browse-hint{margin:1px 0;color:#4c665c;font-size:12px;line-height:1.5}
.history-fund-selector{margin-top:10px;background:#fff;border:1px solid #d6e5dc;border-radius:10px;padding:0 11px}
.history-fund-selector summary{padding:10px 3px;list-style:none;cursor:pointer;color:#1a5949;font-weight:750;font-size:12px}
.history-fund-selector summary::-webkit-details-marker{display:none}
.history-fund-selector[open] summary{border-bottom:1px solid #dfebe3}
.history-fund-selector summary span{float:right}
.history-fund-groups{padding:10px 0;display:flex;flex-direction:column;gap:8px}
.history-fund-bank-title{display:block;margin-top:5px;color:#3f5d50;font-size:11px}
.history-active-filter{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:4px 2px 13px;font-size:12px;color:#546c60}
.history-active-filter strong{color:#174d3d}
.history-active-filter a{font-size:12px;font-weight:800}
.history-filter-card{padding:0 14px;margin-bottom:12px}
.history-filter-card>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;min-height:46px;font-size:12px;color:#346758;font-weight:750}
.history-filter-card>summary::-webkit-details-marker{display:none}
.history-filter-card[open]>summary{border-bottom:1px solid #e3ebe6}
.history-filter-card>summary span{font-size:14px}
.history-filter-form{padding:12px 0 15px;grid-template-columns:minmax(140px,.6fr) minmax(200px,1.4fr) auto;gap:10px;align-items:end}
.history-filter-form .history-search-label{grid-column:auto}
.history-filter-form .history-filter-actions{grid-column:auto}
.history-records-heading{flex-wrap:wrap;padding:16px 0 13px;gap:4px 12px}
.history-records-heading h2{font-size:17px}
.history-records-heading small{flex-basis:100%;font-size:11px;line-height:1.5;color:#6a7a72}
.history-day{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.065em;color:#647970;padding:14px 2px 7px;border-top:1px solid #e2ece6;background:#fff}
.history-day:first-of-type{border-top:0}
.history-day + .history-record{border-top:0}
.history-record-main strong{font-size:14px}
.history-record-context{font-size:12px;color:#28715b;font-weight:700}
.history-record-summary{min-height:76px}
.history-record-value{font-size:15px}
.history-end-note{margin:16px 0 8px;text-align:center;font-size:12px;color:#60756a}
.history-end-note a{font-weight:750}
@media(max-width:760px){
 .history-view-tabs a{flex:1 1 30%;font-size:11px;min-width:0;padding:8px 9px}
 .history-browse{padding:11px}
 .history-quick-filters a{font-size:11px;padding:8px 9px}
 .history-filter-form{grid-template-columns:1fr 1fr}
 .history-filter-form .history-search-label{grid-column:1/span 2}
 .history-filter-form .history-filter-actions{grid-column:1/span 2}
 .history-records-heading h2{font-size:16px}
 .history-record-summary{min-height:72px}
 .history-record-value{font-size:13px}
}
@media(max-width:375px){.history-view-tabs{gap:5px}.history-view-tabs a{padding:7px 5px;font-size:10px}}

.entry-history-confirm{padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;flex-wrap:wrap}
.entry-history-confirm>div:first-child{display:flex;flex-direction:column;gap:4px}
.entry-history-confirm strong{font-size:13px;color:#184c3a}
.entry-history-confirm small{font-size:11px;color:#5f7769;line-height:1.45}
.entry-history-links{display:flex;gap:7px;flex-wrap:wrap}
.entry-history-confirm .btn{font-size:11px}

/* v0.1.24 - Personal starred funds and conservative, audited corrections. */
.fund-star-row{display:grid;grid-template-columns:45px minmax(0,1fr) max-content;gap:10px;align-items:center}
.fund-star-row>.fund-star-name{min-width:0}
.fund-star-form{padding:0;margin:0;display:flex;align-items:center;justify-content:center}
.fund-star{display:inline-grid;place-items:center;min-width:42px;min-height:42px;border:1px solid transparent;background:transparent;color:#8c9d95;font-size:26px;line-height:1;border-radius:11px;cursor:pointer}
.fund-star:hover,.fund-star:focus-visible{border-color:#d5e6d9;background:#f5faf4;outline-offset:2px}
.fund-star.is-starred{color:#bc8c19}
.fund-star-name strong{display:block}
.fund-star-row:target{background:#f3f9f4;box-shadow:0 0 0 7px #f3f9f4}
.favorite-heading-star{color:#bb8c1f;font-size:17px;vertical-align:1px}
.home-favorite-section{scroll-margin-top:20px;margin:22px 0 6px}
.home-favorite-section>.section-heading{margin:0 0 11px}
.favorite-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.favorite-card{padding:15px;display:flex;flex-direction:column;gap:12px;min-width:0}
.favorite-card-top{display:flex;align-items:flex-start;gap:8px;justify-content:space-between}
.favorite-card-top>div{min-width:0}
.favorite-card-top small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.favorite-card-title{font-size:14px;font-weight:850;color:var(--ink);line-height:1.3;overflow-wrap:anywhere}
.favorite-card-title:hover{text-decoration:underline;color:var(--green)}
.favorite-card-top .fund-star{min-width:38px;min-height:38px;font-size:24px;margin:-7px -6px 0 0}
.favorite-money{display:flex;flex-direction:column;gap:4px}
.favorite-money small{font-size:11px;color:var(--muted)}
.favorite-money strong{font-variant-numeric:tabular-nums;font-size:25px;letter-spacing:-.04em}
.favorite-progress-label{display:flex;gap:7px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:11px;line-height:1.4;color:#3a574a}
.favorite-progress-label>span:first-child{flex:1;min-width:120px}
.favorite-progress-label .funding-pill{font-size:10px}
.favorite-progress-label a{font-weight:750;text-decoration:underline;text-decoration-color:#bdd5c7}
.favorite-progress{display:block;margin:0;min-height:8px}
.favorite-checkpoints,.favorite-multiple{font-size:10px;color:var(--muted);line-height:1.45}
.favorite-checkpoints{margin-top:-6px}
.favorite-multiple{display:block;padding:8px 9px;border-radius:8px;background:#f4f7f5}
.favorite-multiple a{font-weight:750}
.favorite-no-goal{font-size:11px;line-height:1.45;color:var(--muted);margin:0}
.favorite-transactions{display:block;margin-top:auto;padding-top:8px;border-top:1px solid var(--border);font-size:11px;font-weight:800}
.favorites-empty{display:flex;gap:14px;align-items:center;padding:13px 17px}
.favorites-empty>span{font-size:28px;color:#af8b34}
.favorites-empty p{font-size:12px;line-height:1.5;color:#597063;margin:0;flex:1}
.favorites-empty strong{color:var(--ink)}
.favorites-empty .btn{white-space:nowrap}
.history-delete-options{margin-top:16px;padding:10px 0 0;border-top:1px solid #d6e3da}
.history-delete-options>summary{cursor:pointer;color:#923c39;font-size:12px;font-weight:800;list-style:revert}
.history-delete-options>summary:hover{text-decoration:underline}
.history-delete-body{padding:11px 0 0;color:#6d4e47}
.history-delete-body p{line-height:1.55;margin:0 0 12px}
.history-delete-form{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.history-delete-confirm{display:flex;align-items:center;gap:8px;flex:1 1 235px;font-weight:700;font-size:11px;color:#6a4e49;line-height:1.5}
.history-delete-confirm input{width:18px;height:18px;flex-shrink:0;accent-color:#923c39}
.history-delete-btn{border-color:#c98784;background:#fff3f2;color:#952f2a;min-height:41px;font-size:12px;padding:8px 12px}
.history-delete-btn:hover{background:#fae4e2;border-color:#b85a53}
.history-delete-body>small{display:block;font-size:11px;line-height:1.5;color:var(--muted)}
.history-deleted-amount{color:#78877f;text-decoration:line-through}
@media(max-width:800px){.favorite-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.favorite-grid{grid-template-columns:1fr}.favorite-card{padding:14px}.favorite-money strong{font-size:24px}.favorites-empty{align-items:flex-start;flex-wrap:wrap;gap:8px}.favorites-empty p{flex-basis:calc(100% - 47px)}.favorites-empty .btn{margin-left:43px}.history-delete-form{flex-direction:column}.history-delete-confirm{flex:0 0 auto;width:100%}.history-delete-btn{width:100%}}
.favorite-progress.account-pace-track{width:100%;max-width:none;flex:auto}

/* v0.1.28 - Explicit bank-entry clearance and direct correction controls. */
.account-tx-category.is-pending,.bank-status-tag.is-pending{color:#805815}
.account-tx-category.is-cleared,.bank-status-tag.is-cleared{color:#17634b}
.account-tx-category.is-imported{color:#65746c}
.account-tx-category.is-pending,.account-tx-category.is-cleared{font-weight:800}
.bank-status-tag{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:2px 7px;border-radius:7px;background:#f9f0de;border:1px solid #f0dfb8;font-size:11px;font-weight:800;line-height:1.5}
.bank-status-tag.is-cleared{background:#e7f5ea;border-color:#d0e8d4}
.history-record-main>.bank-status-tag{color:#805815;font-size:10px}
.history-record-main>.bank-status-tag.is-cleared{color:#17634b}
.account-transaction:target{scroll-margin-top:80px;outline:2px solid #98c9b2;outline-offset:2px;border-radius:8px}
.bank-clearance-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0 8px;margin:3px 0;border-top:1px solid #dae8df}
.bank-clearance-form .btn{min-width:132px;font-size:12px}
.bank-clearance-form small{color:#5f7568;font-size:11px;line-height:1.45;flex:1;min-width:175px}
.account-tx-expanded .account-history-note{margin:5px 0}
.account-delete-options{margin:6px 0 0}
.account-delete-options .history-delete-form{display:flex;align-items:flex-start}
.history-bank-movement .history-bank-source{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1 1 auto;min-width:0}
.history-bank-movement .history-bank-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.history-bank-movement .history-bank-controls>strong{font-variant-numeric:tabular-nums}
.history-clearance-form{margin:0}
.history-clearance-form .btn{font-size:11px;min-height:34px;padding:6px 9px}
@media(max-width:500px){
 .history-bank-movement{flex-wrap:wrap}
 .history-bank-movement .history-bank-controls{width:100%;justify-content:space-between}
 .bank-clearance-form .btn{flex:1 1 145px}
 .bank-clearance-form small{flex:1 1 175px}
}

/* v0.1.29 — Six predictable navigation destinations; actions and menu are pages. */
.bottom-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;justify-content:center;gap:0}
.bottom-nav>a{display:flex;min-width:0;padding:6px 2px 5px;gap:4px;align-items:center;justify-content:center;flex-direction:column;border-radius:11px;text-decoration:none}
.bottom-nav>a:focus-visible{outline:3px solid #8ac3ae;outline-offset:-2px}
.bottom-nav .nav-svg{width:22px;height:22px;flex-shrink:0;display:block}
.bottom-nav .nav-label{font-size:clamp(8.5px,2.55vw,11px);letter-spacing:-.02em;white-space:nowrap;line-height:1.3}
.actions-hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:0 0 14px}
.action-choice{color:var(--ink);text-decoration:none;display:flex;align-items:flex-start;flex-direction:column;gap:12px;padding:19px;min-height:176px;border:1px solid var(--border);transition:background .15s,border-color .15s}
.action-choice:hover,.action-choice:focus-visible{text-decoration:none;background:#f2f8f4;border-color:#9fc7af}
.action-choice:focus-visible{outline:3px solid #8bc3b0;outline-offset:2px}
.action-choice-icon{display:grid;place-items:center;width:40px;height:40px;font-size:25px;font-weight:650;line-height:1;color:var(--green);background:#e5f3eb;border-radius:13px}
.action-choice-text{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.action-choice-text strong{font-size:17px;line-height:1.25;letter-spacing:-.025em}
.action-choice-text small{font-size:12px;line-height:1.5;color:var(--muted)}
.action-choice-arrow{align-self:flex-end;font-size:19px;color:var(--green);line-height:1}
.transfer-hub{grid-template-columns:repeat(2,minmax(0,1fr))}
.actions-hub-note{color:var(--muted);font-size:12px;line-height:1.6;margin:14px 0 22px}
.actions-hub-note a{font-weight:750}
.menu-directory .list-row{text-decoration:none;color:var(--ink);min-height:75px}
.menu-directory .list-row:hover{background:#f5faf7;text-decoration:none}
.menu-directory .list-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.menu-directory .list-row strong{font-size:14px}
.menu-directory .list-row small{font-size:12px;line-height:1.45}
.menu-directory .list-row>span{font-size:19px;color:var(--green)}
#transfer{scroll-margin-top:18px}
@media(max-width:680px){.actions-hub{grid-template-columns:1fr;gap:11px}.action-choice{flex-direction:row;align-items:center;min-height:94px;gap:13px;padding:15px}.action-choice-text strong{font-size:16px}.action-choice-arrow{align-self:center}.transfer-hub{grid-template-columns:1fr}}
@media(max-width:360px){.bottom-nav .nav-svg{width:20px;height:20px}.bottom-nav .nav-label{font-size:8px}.bottom-nav>a{padding:6px 1px 5px}}


/* v0.1.30 — Bottom Action/Menu popovers with one-tap shared bank/fund clearance */
.bottom-nav>.nav-popup-root{min-width:0;display:flex;align-items:stretch;justify-content:center}
.bottom-nav .nav-popup-toggle{display:flex;width:100%;min-width:0;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:6px 2px 5px;border:0;border-radius:11px;cursor:pointer;background:transparent;color:#687973;font-size:11px;font-weight:700}
.bottom-nav .nav-popup-toggle.active,.bottom-nav .nav-popup-toggle[aria-expanded="true"]{color:var(--green)}
.bottom-nav .nav-popup-toggle:focus-visible{outline:3px solid #8ac3ae;outline-offset:-2px}
.bottom-nav .nav-popup-toggle .nav-svg{width:22px;height:22px}
.nav-popover{position:fixed;bottom:calc(78px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(395px,calc(100vw - 24px));max-height:min(65vh,540px);overflow:auto;background:var(--card);border:1px solid #bbd6c8;box-shadow:0 12px 35px rgba(12,49,36,.22);padding:8px;border-radius:16px;z-index:45;display:flex;flex-direction:column;gap:2px}
.nav-popover[hidden]{display:none}
.nav-popover-heading{font-weight:850;padding:10px 12px 7px;font-size:15px;color:var(--ink);border-bottom:1px solid var(--border)}
.nav-popover>a{min-height:56px;display:flex;align-items:flex-start;justify-content:center;gap:2px;padding:9px 12px;flex-direction:column;border-radius:10px;color:var(--ink);text-decoration:none}
.nav-popover>a:hover,.nav-popover>a:focus-visible{background:#edf7f0;outline:none}
.nav-popover>a strong{font-size:13px;font-weight:800}
.nav-popover>a small{font-size:11px;line-height:1.4;color:var(--muted)}
.history-status-switch{display:flex;gap:6px;align-items:center;margin:10px 0 3px}
.history-status-switch a{display:flex;align-items:center;justify-content:center;min-height:39px;min-width:105px;border:1px solid #c8dcd0;color:var(--green);background:white;padding:7px 16px;border-radius:11px;font-size:13px;font-weight:750;text-decoration:none}
.history-status-switch a.active{background:var(--green);color:#fff;border-color:var(--green)}
.history-quick-help{color:var(--muted);font-size:12px;margin:8px 0 15px;line-height:1.45}
.history-quick-row,.account-quick-row{display:flex;align-items:stretch;border-top:1px solid var(--border)}
.history-quick-row>.history-record{flex:1;min-width:0;border:0}
.account-quick-row{border-top:0;border-bottom:1px solid var(--border)}
.account-quick-row:last-child{border-bottom:0}
.account-quick-row>.account-transaction{flex:1;min-width:0;border:0}
.quick-clear-form{display:flex;align-items:center;justify-content:center;gap:3px;flex:0 0 61px;margin:0;padding:2px 4px 2px 0;min-width:0}
.quick-clear-label{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;cursor:pointer;color:#507465;font-size:10px;line-height:1.1;font-weight:700;text-align:center}
.quick-clear-checkbox{appearance:auto;accent-color:#1c7258;width:23px;height:23px;cursor:pointer;margin:0}
.quick-clear-checkbox:focus-visible{outline:3px solid #9ed2bc;outline-offset:2px}
.quick-clear-empty{flex:0 0 61px}
.account-bank-activity-row{color:var(--ink);text-decoration:none}
.account-bank-activity-row:hover{background:#f4faf6;text-decoration:none}
@media(max-width:500px){
 .nav-popover{bottom:calc(76px + env(safe-area-inset-bottom))}
 .quick-clear-form,.quick-clear-empty{flex-basis:49px}
 .quick-clear-label{font-size:9px}
 .quick-clear-checkbox{width:22px;height:22px}
 .account-tx-summary{column-gap:5px}
 .history-record-summary{gap:6px}
 .history-status-switch a{flex:1}
}

/* Keep clearing control beside the summary even when its details are expanded. */
.quick-clear-form{align-self:flex-start}
.history-quick-row>.quick-clear-form{min-height:76px}
.account-quick-row>.quick-clear-form{min-height:55px}


/* v0.1.31: real account buttons with clearly separated projected/cleared/pending balances */
.account-balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:10px}
.account-balance-tile{min-width:0;display:flex;flex-direction:column;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
.account-balance-tile:hover,.account-balance-tile:focus-within{border-color:#a3c8b6;box-shadow:0 4px 18px rgba(21,88,77,.08)}
.account-balance-tile-main{display:flex;flex:1;flex-direction:column;align-items:stretch;gap:7px;padding:18px;color:var(--ink);min-width:0}
.account-balance-tile-main:hover{text-decoration:none}
.account-balance-tile-main:focus-visible,.account-balance-tile-footer a:focus-visible{outline:3px solid #97c9b5;outline-offset:-3px;border-radius:10px}
.account-balance-tile-title{font-size:15px;font-weight:800;color:var(--green);min-height:34px}
.account-balance-tile-label{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.055em;color:var(--muted)}
.account-balance-tile-amount{font-size:clamp(22px,2.4vw,29px);letter-spacing:-.04em;white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1.12;margin-bottom:6px}
.account-balance-tile-breakdown{display:flex;justify-content:space-between;align-items:baseline;gap:7px;font-size:12px;color:var(--muted)}
.account-balance-tile-breakdown strong{color:var(--ink);font-weight:750;white-space:nowrap;font-variant-numeric:tabular-nums}
.account-balance-tile-open{margin-top:auto;padding-top:12px;color:var(--green);font-size:12px;font-weight:750}
.account-balance-tile-footer{border-top:1px solid var(--border);padding:10px 15px;display:flex;justify-content:space-between;gap:9px;align-items:center;font-size:11px;color:var(--muted)}
.account-balance-tile-footer a{font-weight:750;white-space:nowrap}
.account-balance-help{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 3px 18px}
.account-balance-label{font-size:11px;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.06em;margin:12px 0 2px}
.account-balance-breakdown{display:flex;flex-wrap:wrap;gap:5px 20px;font-size:12px;color:var(--muted);margin:5px 0 12px}
.account-balance-breakdown strong{color:var(--ink);font-variant-numeric:tabular-nums}
.bill-cash-warning p{font-size:12px;line-height:1.48;margin:7px 0 0}
.bill-cash-explanation{margin:10px 0 0}
.bill-cash-explanation>summary{cursor:pointer;font-weight:750;font-size:12px;color:#76511a}
.bill-cash-explanation-body{border-radius:10px;background:rgba(255,255,255,.58);padding:12px;margin-top:10px;color:var(--ink);font-size:12px}
.bill-cash-explanation-body p{margin:8px 0;line-height:1.5}
.bill-cash-math{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #e8d9c2}
.bill-cash-math strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.bill-cash-total{font-weight:750;color:#915e18;border-bottom:0}
.bill-cash-prior-bills{padding:0;margin:5px 0;list-style:none}
.bill-cash-prior-bills li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dashed #e8d9c2}
.bill-cash-prior-bills li strong{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:880px){.account-balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:590px){.account-balance-grid{grid-template-columns:1fr}.account-balance-tile-title{min-height:0}.account-balance-tile-amount{font-size:28px}.account-balance-tile-main{padding:16px}.account-balance-tile-footer{padding:10px 15px}}

/* v0.1.32 — Funds becomes a bank-scoped workspace, not a directory of every envelope. */
.funds-page-heading{margin-bottom:15px}
.funds-page-heading p{max-width:100%;margin-bottom:0}
.funds-account-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0 0 12px}
.funds-account-option{border:1px solid var(--border);box-shadow:0 2px 10px rgba(11,58,46,.025);background:#fff;border-radius:15px;display:flex;flex-direction:column;padding:13px 16px 11px;gap:4px;min-width:0;text-decoration:none;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}
.funds-account-option:hover,.funds-account-option:focus-visible{border-color:#91bbaa;background:#f9fcfa;box-shadow:0 3px 15px rgba(20,88,68,.1);text-decoration:none}
.funds-account-option.is-selected{border:2px solid var(--green);padding:12px 15px 10px;background:#eff7f2;box-shadow:0 3px 14px rgba(20,88,68,.085)}
.funds-account-option strong{color:var(--green);font-size:13px;font-weight:800;white-space:normal;line-height:1.4}
.funds-account-option-caption{color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:750;letter-spacing:.055em;margin-top:2px}
.funds-account-option b{font-size:21px;font-variant-numeric:tabular-nums;line-height:1.24;letter-spacing:-.025em;white-space:nowrap}
.funds-account-option-indicator{font-size:11px;font-weight:700;color:#537467;margin-top:2px}
.funds-account-option.is-selected .funds-account-option-indicator{color:var(--green)}
.funds-topline{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 17px;margin-bottom:12px;box-shadow:none}
.funds-topline>span{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.funds-topline strong{font-size:20px;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--ink)}
.funds-topline small{font-size:12px;color:var(--muted)}
.funds-lookup{display:flex;flex-direction:column;gap:5px;margin:0 0 13px}
.funds-lookup>label{font-size:12px;font-weight:750;margin:0}
.funds-lookup-controls{display:flex;gap:7px;align-items:center}
.funds-lookup-controls>input{flex:1;min-width:0;margin:0;min-height:43px}
.funds-lookup-controls>.btn{min-height:43px;display:inline-flex;align-items:center;justify-content:center}
.funds-workspace{display:grid;grid-template-columns:minmax(255px,40fr) minmax(0,60fr);align-items:start;gap:13px;margin-bottom:15px}
.funds-envelope-panel,.funds-activity-panel{min-width:0;overflow:hidden;padding:12px 15px 13px}
.funds-panel-head{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:0 0 9px}
.funds-panel-head>div{min-width:0}
.funds-panel-head h2{font-size:16px;line-height:1.3;margin:0 0 3px}
.funds-panel-head small{color:var(--muted);font-size:11px;line-height:1.3;display:block}
.fund-manage-link{font-size:11px;font-weight:800;white-space:nowrap;text-decoration:none}
.fund-manage-link:hover{text-decoration:underline}
.funds-all-choice{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;color:var(--ink);padding:7px 10px;font-size:12px;font-weight:750;border:1px solid var(--border);border-radius:9px;margin:6px 0 6px;text-decoration:none}
.funds-all-choice.is-active{background:#eaf5ee;border-color:#a9cdb8;color:var(--green)}
.funds-all-choice:hover{background:#f1f7f3;text-decoration:none}
.funds-envelope-row{display:grid;grid-template-columns:34px minmax(0,1fr) 25px;align-items:center;gap:4px;border-bottom:1px solid var(--border);min-height:66px;padding:4px 0}
.funds-envelope-row:last-of-type{border-bottom:0}
.funds-envelope-row.is-current{background:#f0f7f2;box-shadow:0 0 0 5px #f0f7f2}
.funds-envelope-row:target{background:#edf7f0}
.funds-envelope-row .fund-star{min-height:32px;min-width:31px;padding:0;font-size:23px}
.funds-envelope-pick{display:flex;align-items:center;gap:8px;justify-content:space-between;text-decoration:none;color:var(--ink);padding:5px 0;min-width:0}
.funds-envelope-pick:hover{text-decoration:none;color:var(--green)}
.funds-envelope-pick:focus-visible{outline:3px solid #a4d0b6;border-radius:4px}
.funds-envelope-info{display:flex;flex-direction:column;min-width:0;gap:4px;flex:1}
.funds-envelope-info strong{font-size:12px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}
.funds-envelope-info small{font-size:10px;color:var(--muted);line-height:1.2}
.funds-envelope-balance{display:flex;flex-direction:column;text-align:right;gap:4px;align-items:flex-end;font-variant-numeric:tabular-nums;font-weight:850;font-size:13px;white-space:nowrap;flex-shrink:0}
.funds-envelope-balance.is-negative{color:#9e413b}
.funds-envelope-balance small{font-size:10px;font-weight:600;color:var(--muted)}
.funds-meter-track{width:100%;max-width:144px;height:5px;background:#e4ece6;border-radius:8px;overflow:hidden}
.funds-meter-fill{display:block;height:100%;background:#388d67;border-radius:8px}
.funds-meter-fill.is-behind{background:#d9934b}
.fund-hide-form{margin:0;display:flex;justify-content:center;align-items:center}
.fund-hide-form button{border:0;background:transparent;color:#899b91;cursor:pointer;width:25px;height:32px;font-size:21px;line-height:1;border-radius:7px}
.fund-hide-form button:hover,.fund-hide-form button:focus-visible{color:#a04642;background:#fff3f0;outline-offset:2px}
.funds-panel-note{font-size:10px;color:var(--muted);line-height:1.5;margin:10px 2px 0}
.funds-empty,.funds-search-note{font-size:12px;color:var(--muted);margin:9px 2px;line-height:1.5}
.funds-activity-panel{scroll-margin-top:14px}
.funds-activity-panel .history-record-summary{min-height:60px;gap:7px;padding:7px 1px}
.funds-activity-panel .history-record-main strong{font-size:12px}
.funds-activity-panel .history-record-context{font-size:10px}
.funds-activity-panel .history-record-value{font-size:12px}
.funds-activity-panel .history-record-main small{font-size:10px}
.funds-activity-panel .history-quick-row>.quick-clear-form{min-height:64px}
.funds-activity-panel .quick-clear-form{flex-basis:48px}
.funds-activity-panel .quick-clear-empty{flex-basis:48px}
.funds-activity-panel .history-quick-row{margin:0}
.funds-activity-panel .history-record-detail{padding:12px}
.funds-activity-heading{margin-bottom:9px}
.funds-activity-switch{display:flex;gap:7px;margin:8px 0 8px}
.funds-activity-switch>a{font-size:12px;font-weight:750;text-decoration:none;color:var(--green);padding:8px 16px;min-width:85px;text-align:center;border-radius:9px;border:1px solid #cbded2;background:#fff}
.funds-activity-switch>a:hover{border-color:var(--green)}
.funds-activity-switch>a.is-active{color:#fff;border-color:var(--green);background:var(--green)}
.funds-clearing-explain{font-size:10px;line-height:1.5;color:var(--muted);margin:0 0 8px}
.funds-linked-bill{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;background:#f0f6f2;border-radius:9px;padding:9px;font-size:11px;line-height:1.45;margin:8px 0}
.funds-linked-bill a{font-weight:750;white-space:nowrap}
.funds-no-activity{background:#f6faf8;border-radius:10px;padding:15px 12px;font-size:12px;margin:8px 0}
.funds-no-activity p{font-size:11px;color:var(--muted);margin:4px 0 0}
.funds-activity-pages{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;padding:13px 0 3px;color:var(--muted)}
.funds-activity-pages a{font-weight:800}
.funds-management{padding:0;margin:7px 0 20px}
.funds-management>summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;justify-content:space-between;align-items:center;gap:15px;color:var(--ink)}
.funds-management>summary::-webkit-details-marker{display:none}
.funds-management>summary span:first-child{display:flex;flex-direction:column;gap:4px}
.funds-management>summary small{font-size:11px;color:var(--muted);font-weight:500}
.funds-management-content{border-top:1px solid var(--border);padding:14px 18px 18px}
.funds-secondary-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.funds-secondary-columns h3{font-size:13px;margin:4px 0 7px}
.funds-secondary-columns .muted{font-size:11px;line-height:1.5}
.funds-manage-row{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border);text-decoration:none}
.funds-manage-row span:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.funds-manage-row strong{font-size:12px}
.funds-manage-row small{color:var(--muted);font-size:10px}
.funds-manage-row a,.funds-manage-row .btn{font-size:10px;white-space:nowrap}
.funds-reserves,.funds-transfer-fold,.funds-create-fold{border-top:1px solid var(--border);padding:12px 0 0;margin-top:14px}
.funds-reserves>summary,.funds-transfer-fold>summary,.funds-create-fold>summary{font-size:13px;cursor:pointer;color:var(--green);font-weight:750}
.funds-transfer-form,.funds-create-fold form{max-width:600px;padding:13px 0;display:flex;flex-direction:column;gap:10px}
.funds-transfer-form label,.funds-create-fold label{font-size:12px}
.funds-transfer-form .btn,.funds-create-fold .btn{align-self:flex-start}
.funds-transfer-form .hint{font-size:11px}
@media(max-width:850px){.funds-workspace{grid-template-columns:minmax(0,1fr)}.funds-activity-panel{scroll-margin-top:80px}.funds-account-option b{font-size:18px}}
@media(max-width:640px){
 .funds-account-selector{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 1px 8px;margin-bottom:4px}
 .funds-account-option{flex:0 0 176px;scroll-snap-align:start;padding:11px 12px}
 .funds-account-option.is-selected{padding:10px 11px}
 .funds-lookup-controls{gap:5px}
 .funds-lookup-controls>.btn{padding:7px 9px;font-size:11px}
 .funds-topline{padding:12px;align-items:flex-start}
 .funds-topline>span{flex-direction:column;gap:3px}
 .funds-topline strong{font-size:19px}
 .funds-secondary-columns{grid-template-columns:1fr;gap:10px}
 .funds-envelope-panel,.funds-activity-panel{padding:13px}
}


/* v0.1.33: choice between fully undoing a scheduled payment and correcting an old charge only. */
.history-bill-delete-modes{flex:1 1 100%;margin:3px 0 8px;padding:12px;border:1px solid #e4cfbd;background:#fffaf5;border-radius:10px;min-width:0}
.history-bill-delete-modes legend{padding:0 5px;font-size:12px;color:#654633;font-weight:800}
.history-bill-delete-choice{display:flex;align-items:flex-start;gap:10px;padding:9px 6px;color:#263f36;cursor:pointer;line-height:1.4}
.history-bill-delete-choice + .history-bill-delete-choice{border-top:1px solid #eadccc}
.history-bill-delete-choice input[type=radio]{width:18px;height:18px;flex:none;margin:1px 0 0;accent-color:#1b5f51}
.history-bill-delete-choice span{display:block;min-width:0;flex:1}
.history-bill-delete-choice strong{display:block;font-size:12px}
.history-bill-delete-choice small{display:block;font-size:11px;color:#685e53;margin-top:4px;line-height:1.5}
.history-bill-delete-warning{color:#785842!important;font-size:11px;line-height:1.5;margin:8px 6px 0!important}


/* v0.1.36: entry autocomplete, in-context bank clearing, contextual Home. */
.purchase-merchant-block{position:relative;margin-bottom:6px}
.purchase-merchant-block>label{display:block;font-size:13px;font-weight:750;color:#304a42;margin-bottom:7px}
.merchant-combobox{position:relative}
.merchant-combobox>input{width:100%;min-height:48px;padding:12px 13px;border:1px solid #cbd9d1;background:#fff;border-radius:10px;color:var(--ink)}
.merchant-combobox>input:focus{outline:3px solid #b7ded2;outline-offset:1px;border-color:#32856e}
.merchant-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:12;max-height:310px;overflow:auto;background:#fff;border:1px solid #bdcec3;box-shadow:0 13px 35px #10251d24;border-radius:12px;padding:5px}
.merchant-suggestions[hidden],.merchant-suggestion[hidden],.purchase-entry-alert[hidden],.merchant-last-amount[hidden]{display:none!important}
.merchant-suggestion{display:flex;width:100%;text-align:left;flex-direction:column;gap:3px;background:#fff;border:0;border-radius:8px;cursor:pointer;padding:11px;color:var(--ink)}
.merchant-suggestion strong{font-size:13px}
.merchant-suggestion small{font-size:11px;color:var(--muted)}
.merchant-suggestion:hover,.merchant-suggestion.is-active{background:#eaf4ef}
.merchant-helper{color:var(--muted);font-size:12px;margin:7px 0 0;line-height:1.35}
.merchant-last-amount{background:#eef6f1;border:1px solid #bad5c7;color:var(--green);padding:9px 12px;border-radius:9px;margin-top:8px;cursor:pointer;font-weight:750}
.purchase-entry-alert{padding:12px 14px;border-radius:11px;background:#fff7e9;border:1px solid #e9d5ad;color:#5d451a;font-size:12px;line-height:1.55;margin:5px 0}
.purchase-entry-alert > strong{display:block;font-size:13px}
.purchase-entry-alert a{color:var(--green);font-weight:750}
.purchase-duplicate-confirm{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;margin-top:8px!important;font-size:12px!important}
.purchase-duplicate-confirm input{width:18px;height:18px;flex:0 0 auto}
.deposit-save-actions{display:grid;grid-template-columns:1.2fr 1fr;gap:10px}
.deposit-save-actions .btn{min-height:45px}
.recon-pending{padding:19px 21px;margin-bottom:14px}
.recon-pending-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}
.recon-pending-heading h2{font-size:17px;margin:0 0 3px}
.recon-pending-heading p{color:var(--muted);font-size:12px;margin:0;line-height:1.5}
.recon-pending-count{white-space:nowrap;background:#eef3ef;border-radius:7px;padding:6px 9px;color:#326253;font-size:11px;font-weight:750}
.recon-pending-select-all{display:flex;gap:9px;align-items:center;padding:9px 8px;background:#f7faf8;border-radius:8px;font-size:12px;font-weight:750;margin-bottom:5px}
.recon-pending-select-all input,.recon-pending-row>input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--green)}
.recon-pending-list{max-height:360px;overflow-y:auto}
.recon-pending-row{display:flex;align-items:center;gap:11px;padding:10px 8px;border-bottom:1px solid var(--border);cursor:pointer;font-size:13px}
.recon-pending-row:last-child{border-bottom:0}
.recon-pending-description{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}
.recon-pending-description strong{white-space:normal;overflow-wrap:anywhere}
.recon-pending-description small{font-size:11px;color:var(--muted)}
.recon-pending-row>strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.recon-pending-row:has(input:checked){background:#eff7f1}
.recon-bulk-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.recon-bulk-footer span{font-size:12px;color:var(--muted);line-height:1.4}
.recon-bulk-footer button{white-space:nowrap}
.recon-pending-empty{font-size:13px;color:var(--muted);margin:8px 0}
.home-wallet-grid.home-wallet-count-1{grid-template-columns:minmax(0,1fr)}
.home-wallet-grid.home-wallet-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-unallocated.is-all-allocated .unallocated-column-head,.home-unallocated.is-all-allocated .unallocated-account-row{grid-template-columns:minmax(0,1fr) minmax(115px,160px)}
@media(max-width:760px){
 .home-wallet-grid.home-wallet-count-2{grid-template-columns:1fr}
 .home-unallocated.is-all-allocated .unallocated-account-row{grid-template-columns:1fr 1fr}
 .home-unallocated.is-all-allocated .unallocated-account-identity{grid-column:1/span 2;grid-row:1}
 .home-unallocated.is-all-allocated .unallocated-ledger-cell{grid-row:2;grid-column:1/span 2}
 .deposit-save-actions{grid-template-columns:1fr}
 .recon-pending{padding:15px}
 .recon-bulk-footer{flex-direction:column;align-items:stretch}
 .recon-bulk-footer button{width:100%}
}

@media(max-width:760px){
 .home-wallet-grid.home-wallet-count-1 .wallet-main,.home-wallet-grid.home-wallet-count-2 .wallet-main{grid-column:auto}
}

/* v0.1.39: gentle, non-blocking notice for purchases above their fund allocation. */
.purchase-fund-shortfall{background:#fff9ed;border-color:#e9d7b0;color:#655026}
.purchase-fund-shortfall strong{margin-bottom:3px}

.funds-envelope-balance.is-negative small{color:#a04642;font-weight:750}
