:root{color-scheme:light;--bg: #f6f7f2;--surface: #ffffff;--surface-muted: #eef4f1;--ink: #1c2430;--muted: #64707d;--line: #d8ded8;--teal: #0f766e;--teal-soft: #d8f0eb;--coral: #c8553d;--coral-soft: #fde5dd;--amber: #9b6a08;--amber-soft: #fff1c7;--green: #207044;--blue: #2d5f99;--shadow: 0 12px 30px rgba(28, 36, 48, .08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{width:min(1240px,100%);margin:0 auto;padding:18px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0 18px}.topbar h1,.login-panel h1,.month-bar h2,.section-heading h2{margin:0;line-height:1.1}.topbar h1,.login-panel h1{font-size:1.75rem}.audit-line{margin:6px 0 0;color:var(--muted);font-size:.82rem;font-weight:700}.eyebrow{margin:0 0 5px;color:var(--teal);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:10px}.status{display:inline-flex;min-height:34px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:0 12px;color:var(--green);background:var(--surface);font-size:.85rem;font-weight:750;white-space:nowrap}.status-danger{color:var(--coral)}.notice,.empty-state,.form-note,.error-text{border-radius:8px;padding:12px;line-height:1.45}.notice,.error-text{border:1px solid #efb4a3;color:#8f321f;background:#fff0eb}.form-note{color:var(--green);background:var(--teal-soft)}.empty-state{border:1px dashed var(--line);color:var(--muted);background:var(--surface)}.tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:18px}.tab,.primary-button,.secondary-button,.icon-button{border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--surface)}.tab{display:flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:8px;color:var(--muted);font-weight:750}.tab.active{border-color:var(--teal);color:var(--teal);background:var(--teal-soft)}.primary-button,.secondary-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-weight:800}.primary-button{border-color:var(--teal);color:#fff;background:var(--teal)}.secondary-button{color:var(--teal)}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55}.icon-button{display:inline-flex;width:40px;height:40px;flex:0 0 40px;align-items:center;justify-content:center;padding:0}.icon-button.danger{color:var(--coral)}.calendar-layout,.split-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.home-layout{display:grid;gap:14px}.home-heading{display:flex;align-items:end;justify-content:space-between;gap:12px}.home-heading h2{margin:0;font-size:1.35rem}.home-heading>span{color:var(--muted);font-size:.84rem;font-weight:750}.home-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-answer-card{display:grid;min-height:218px;align-content:start;gap:12px;border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--surface);box-shadow:var(--shadow)}.home-answer-card.spendable{border-top:4px solid var(--green)}.home-answer-card.payday{border-top:4px solid var(--teal)}.home-answer-card.next-bill{border-top:4px solid var(--blue)}.home-answer-card.attention{border-top:4px solid var(--amber)}.home-answer-card.attention.clear{border-top-color:var(--green)}.home-answer-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.85rem;font-weight:850}.home-answer-value{color:var(--ink);font-size:1.7rem;line-height:1.1;overflow-wrap:anywhere}.home-answer-value.home-answer-title{font-size:1.3rem}.home-answer-card p{min-height:42px;margin:0;color:var(--muted);line-height:1.4}.home-answer-card .secondary-button{width:fit-content;align-self:end;margin-top:auto}.calendar-panel,.side-panel,.list-panel,.editor-form,.settings-strip,.summary-toolbar,.login-panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.calendar-panel,.side-panel,.list-panel,.editor-form{padding:14px}.month-bar,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.calendar-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:14px}.calendar-toolbar .month-bar{justify-content:flex-start;margin-bottom:0}.calendar-view-toggle{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;border:1px solid var(--line);border-radius:8px;padding:3px;background:var(--surface-muted)}.calendar-view-toggle button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:6px;border:0;border-radius:6px;padding:0 10px;color:var(--muted);background:transparent;font-size:.78rem;font-weight:850}.calendar-view-toggle button.active{color:var(--teal);background:#fff;box-shadow:0 1px 3px #2831301f}.month-bar h2,.section-heading h2{font-size:1.18rem}.weekday-grid,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.weekday-grid{margin-bottom:6px;color:var(--muted);font-size:.74rem;font-weight:800;text-align:center}.date-cell{display:flex;min-width:0;min-height:84px;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:7px;color:var(--ink);background:#fbfcfa;text-align:left}.date-cell.empty{background:transparent;box-shadow:none}.date-cell.today{border-color:var(--blue)}.date-cell.selected{border-color:var(--teal);outline:2px solid rgba(15,118,110,.18)}.date-number{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:999px;font-size:.86rem;font-weight:850}.date-cell.today .date-number{color:#fff;background:var(--blue)}.date-items{display:grid;gap:4px;margin-top:5px}.income-pill,.bill-pill,.lead-warning-pill,.more-pill{display:block;overflow:hidden;border-radius:6px;padding:3px 5px;font-size:.7rem;font-weight:750;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.income-pill{color:var(--green);background:#dcf5e8}.bill-pill{color:#763723;background:var(--coral-soft)}.lead-warning-pill{color:#8f321f;background:#fff0eb}.lead-warning-pill.lead-7{color:#7d2717;background:#ffe5dc}.reserve-pill{display:grid;gap:1px;padding-block:4px;white-space:normal}.reserve-pill.reserve-funded{color:var(--green);background:#dcf5e8}.reserve-pill.reserve-part-funded{color:#7a5200;background:var(--amber-soft)}.reserve-pill.reserve-unfunded{color:#763723;background:var(--coral-soft)}.reserve-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reserve-label{font-size:.62rem;font-weight:900;line-height:1.05;text-transform:uppercase}.settlement-pill.settlement-paid{color:var(--green);background:#dcf5e8}.settlement-pill.settlement-unpaid{color:#763723;background:var(--coral-soft)}.settlement-pill.settlement-part-paid{color:#7a5200;background:var(--amber-soft)}.settlement-pill.settlement-over-plan{color:#8f321f;background:#ffe5dc}.reserve-summary{font-weight:900}.item-card p.reserve-funded{color:var(--green)}.item-card p.reserve-part-funded{color:#9a6a05}.item-card p.reserve-unfunded{color:var(--coral)}.more-pill{color:var(--muted);background:var(--surface-muted)}.calendar-agenda{display:grid;gap:10px}.agenda-heading{display:flex;min-width:0;align-items:flex-end;justify-content:space-between;gap:12px}.agenda-heading h3{margin-top:3px;font-size:1rem}.agenda-heading>span{color:var(--muted);font-size:.78rem;font-weight:850;white-space:nowrap}.agenda-list{display:grid;gap:7px}.agenda-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff}.agenda-row.selected{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.agenda-row-main{display:grid;min-width:0;grid-template-columns:54px minmax(0,1fr) minmax(90px,auto);align-items:center;gap:10px;border:0;padding:0;color:var(--ink);background:transparent;text-align:left}.agenda-date{display:grid;min-height:50px;place-content:center;border-right:1px solid var(--line);padding-right:8px;text-align:center}.agenda-date strong{font-size:1.15rem;line-height:1}.agenda-date span{margin-top:4px;color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase}.agenda-bill-detail,.agenda-amount{display:grid;min-width:0;gap:3px}.agenda-title-line{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:6px}.agenda-title-line>strong{overflow-wrap:anywhere}.agenda-bill-detail>span:not(.agenda-title-line),.agenda-bill-detail small,.agenda-amount small{color:var(--muted);font-size:.72rem;font-weight:750;line-height:1.3}.agenda-bill-detail small.agenda-warning{color:var(--red)}.agenda-amount{justify-items:end;text-align:right}.agenda-amount strong{white-space:nowrap}.item-list,.stack,.editor-form{display:grid;gap:12px}.item-card,.goal-card,.wallet-card,.metric-card{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.item-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px}.item-card p,.goal-card p,.wallet-card p{margin:5px 0 0;color:var(--muted);line-height:1.35}.goal-card p.goal-schedule{color:var(--ink);font-weight:900}.goal-card p.goal-schedule.on-track{color:var(--green)}.goal-card p.goal-schedule.needs-monthly{color:#9a6a05}.goal-card p.goal-schedule.behind{color:var(--coral)}.goal-obligations{display:grid;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0}.goal-obligation-heading,.goal-obligation-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.goal-obligation-heading>div,.goal-obligation-row>span{display:grid;min-width:0;gap:2px}.goal-obligation-heading span,.goal-obligation-heading small,.goal-obligation-row small{color:var(--muted);font-size:.76rem;font-weight:750}.goal-obligation-list{display:grid;gap:7px}.goal-obligation-row{border-top:1px solid var(--line);padding-top:7px}.goal-obligation-row>span:last-child{flex:0 0 auto;text-align:right}.item-title-row{display:flex;min-width:0;align-items:center;gap:8px}.item-title-row strong{overflow-wrap:anywhere}.status-chip{display:inline-flex;min-height:24px;align-items:center;border-radius:999px;padding:0 8px;color:var(--amber);background:var(--amber-soft);font-size:.72rem;font-weight:850}.status-chip.cleared{color:var(--green);background:#dcf5e8}.status-chip.settlement-unpaid{color:#763723;background:var(--coral-soft)}.status-chip.settlement-part-paid{color:#7a5200;background:var(--amber-soft)}.status-chip.settlement-paid{color:var(--green);background:#dcf5e8}.status-chip.settlement-over-plan{color:#8f321f;background:#ffe5dc}.item-card p.occurrence-payment{color:var(--ink);font-weight:800}.item-card p.occurrence-payment.settlement-part-paid{color:#7a5200}.item-card p.occurrence-payment.settlement-paid{color:var(--green)}.item-card p.occurrence-payment.settlement-over-plan{color:#8f321f}.item-card p.amount-estimate{color:var(--teal-dark);font-weight:800}.item-card p.amount-estimate.expired{color:#8f321f}.card-actions{display:flex;align-items:center;gap:6px}.side-panel .item-card{grid-template-columns:minmax(0,1fr)}.side-panel .card-actions{flex-wrap:wrap;justify-content:flex-start}.bill-actions-menu{position:relative}.bill-actions-menu>summary{cursor:pointer;list-style:none}.bill-actions-menu>summary::-webkit-details-marker{display:none}.bill-actions-menu-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:8;width:max-content;min-width:205px;border:1px solid var(--line);border-radius:8px;padding:6px;background:var(--surface);box-shadow:var(--shadow)}.bill-actions-menu:not([open])>.bill-actions-menu-popover{display:none}.bill-actions-menu-popover button{display:flex;width:100%;min-height:38px;align-items:center;gap:8px;border:0;border-radius:6px;padding:7px 9px;color:var(--ink);background:transparent;font-weight:800;text-align:left}.bill-actions-menu-popover button:hover{background:var(--surface-muted)}.editor-form h3{margin:0;font-size:1.05rem}.quick-transaction-heading{display:grid;gap:2px}.quick-transaction-heading .eyebrow,.quick-transaction-heading h3{margin:0}.quick-transaction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-field-wide{grid-column:1 / -1}.transaction-more-options{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.transaction-more-options>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 22px;align-items:center;gap:8px;min-height:48px;cursor:pointer;list-style:none}.transaction-more-options>summary::-webkit-details-marker{display:none}.transaction-more-options>summary:after{content:"+";color:var(--green);font-size:1.25rem;font-weight:850;line-height:1;text-align:center}.transaction-more-options[open]>summary:after{content:"−"}.transaction-more-options>summary span{color:var(--ink);font-size:.88rem;font-weight:900}.transaction-more-options>summary small{color:var(--muted);font-size:.72rem;font-weight:750;text-align:right}.transaction-more-options-content{display:grid;gap:12px;padding:4px 0 14px}label{display:grid;gap:6px;color:var(--muted);font-size:.84rem;font-weight:800}input,select,textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;color:var(--ink);background:#fff}textarea{resize:vertical}.two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.check-row{display:flex;align-items:center;gap:9px}.check-row input{width:18px;min-height:18px}.summary-layout,.settings-layout{display:grid;gap:18px}.summary-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.28fr) auto;align-items:end;gap:12px;padding:14px}.summary-toolbar .month-bar{justify-content:flex-start;margin-bottom:0}.headline-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.headline-metric-grid .metric-card{min-height:138px;align-content:start;border-top-width:4px}.headline-metric-grid .metric-card strong{font-size:1.55rem}.metric-card small{color:var(--muted);font-size:.78rem;font-weight:750;line-height:1.35}.summary-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.summary-details+.summary-details{border-top:0}.summary-details>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:12px;min-height:58px;padding:10px 2px;cursor:pointer;list-style:none}.summary-details>summary::-webkit-details-marker{display:none}.summary-details>summary:after{content:"+";color:var(--green);font-size:1.35rem;font-weight:800;line-height:1;text-align:center}.summary-details[open]>summary:after{content:"−"}.summary-details>summary span{font-weight:900}.summary-details>summary small{color:var(--muted);font-size:.78rem;font-weight:750;text-align:right}.summary-details-content{display:grid;gap:14px;padding:4px 0 18px}.summary-details:not([open])>.summary-details-content,.transaction-more-options:not([open])>.transaction-more-options-content{display:none}.summary-details-actions{display:flex;justify-content:flex-end}.settings-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.settings-action{display:grid;align-content:end;gap:8px}.settings-action span{color:var(--muted);font-size:.82rem;font-weight:850;line-height:1.35}.what-if-panel{display:grid;gap:12px;border-color:#9bd4b9;background:#effaf4}.what-if-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.what-if-note{margin:0;color:var(--green);font-size:.82rem;font-weight:850;line-height:1.35}.metric-grid,.goal-grid,.wallet-grid,.category-grid{display:grid;gap:12px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{display:grid;gap:8px;padding:14px}.metric-card span{color:var(--muted);font-size:.84rem;font-weight:800}.metric-card strong{font-size:1.35rem;overflow-wrap:anywhere}.metric-card.income{border-color:#9bd4b9;background:#effaf4}.metric-card.bill,.metric-card.danger{border-color:#e8b3a4;background:#fff3ef}.metric-card.warning{border-color:#e7ca79;background:var(--amber-soft)}.forecast-panel{display:grid;gap:16px}.category-review-panel{display:grid;gap:12px}.category-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.category-review-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface)}.category-review-card.over-plan{border-color:#e7ca79;background:#fffaf0}.category-review-card.no-data{background:#fbfcfa}.category-review-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.category-review-head span,.category-review-money span,.category-review-months span,.category-review-card p{color:var(--muted);font-size:.8rem;font-weight:800;line-height:1.35}.category-review-money{display:grid;gap:5px}.category-review-money strong{color:var(--ink)}.category-review-months{display:flex;flex-wrap:wrap;gap:6px}.category-review-months span{border-radius:999px;padding:3px 8px;background:var(--surface-muted)}.category-review-months span.warning{color:#8a4b00;background:var(--amber-soft)}.category-review-card.over-plan p{color:#8a4b00}.lead-warning-panel{display:grid;gap:10px;border:1px solid #e8b3a4;border-radius:8px;border-color:#e8b3a4;background:#fff7f4;padding:12px}.lead-warning-panel h3{margin:0;font-size:1rem}.lead-warning-list{display:grid;gap:8px}.lead-warning-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;border:1px solid #e8b3a4;border-left:4px solid var(--coral);border-radius:8px;padding:10px;background:var(--surface)}.lead-warning-row.lead-90{border-color:#e7ca79;border-left-color:var(--amber)}.lead-warning-row strong{overflow-wrap:anywhere}.lead-warning-row span{color:var(--muted);font-size:.78rem;font-weight:850;line-height:1.35}.triage-panel{display:grid;gap:12px}.triage-panel.warning{border-color:#e7ca79;background:#fffaf0}.triage-panel.cleared{border-color:#9bd4b9}.unified-future-costs,.future-cost-list{display:grid;gap:10px}.future-cost-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(210px,.9fr) minmax(150px,auto);align-items:center;gap:14px;border:1px solid var(--line);border-left:4px solid var(--coral);border-radius:8px;padding:12px;background:var(--surface)}.future-cost-row.part-funded,.future-cost-row.needs-setup{border-left-color:var(--amber)}.future-cost-row.funded{border-left-color:var(--green)}.future-cost-identity,.future-cost-money,.planning-suggestion-row>div{display:grid;gap:5px;min-width:0}.future-cost-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.future-cost-title>strong{overflow-wrap:anywhere}.future-cost-identity>span,.future-cost-identity>small,.future-cost-money>span,.planning-suggestion-row span{color:var(--muted);font-size:.78rem;font-weight:750;line-height:1.35}.future-cost-money strong{color:var(--ink)}.future-cost-status.needs-setup,.future-cost-status.part-funded{border-color:#e7ca79;color:#8a4b00;background:var(--amber-soft)}.future-cost-status.unfunded{border-color:#e8b3a4;color:#9e3d2f;background:#fff3ef}.future-cost-status.funded{border-color:#9bd4b9;color:var(--green);background:#effaf4}.future-cost-row>button{width:100%}.planning-suggestions{display:grid;gap:10px}.planning-suggestion-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:10px}.triage-list{display:grid;gap:10px}.triage-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,auto);gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface)}.triage-row.high{border-left:4px solid var(--coral)}.triage-row.medium{border-left:4px solid var(--amber)}.triage-title-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px}.triage-title-row strong{overflow-wrap:anywhere}.triage-row p{margin:6px 0 0;color:var(--muted);font-size:.82rem;font-weight:750;line-height:1.4}.triage-kind{display:inline-flex;min-height:24px;align-items:center;border-radius:999px;padding:0 8px;font-size:.72rem;font-weight:850}.triage-kind.setup{color:#8a4b00;background:var(--amber-soft)}.triage-kind.reserve{color:#8f321f;background:#fff0eb}.triage-kind.category{color:var(--blue);background:#e8f1ff}.triage-kind.unplanned{color:#5f3b98;background:#f0eaff}.triage-meta{display:grid;align-content:start;justify-items:end;gap:4px;text-align:right}.triage-meta strong{color:var(--ink)}.triage-meta span{color:var(--muted);font-size:.78rem;font-weight:800}.triage-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.triage-actions .secondary-button{min-height:36px;padding:0 10px;font-size:.78rem}.reserve-suggestion{color:var(--blue);font-size:.82rem;font-weight:850}.triage-link-action{display:inline-flex;align-items:center;gap:8px}.triage-link-action select{width:min(220px,52vw);min-height:36px;border:1px solid var(--line);border-radius:8px;padding:0 9px;background:#fff;color:var(--ink);font-weight:750}.monthly-close-panel{display:grid;gap:12px}.monthly-close-panel.closed{border-color:#9bd4b9}.monthly-close-panel.open{border-color:#e7ca79;background:#fffaf0}.close-checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.close-task-card{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 9px;background:var(--surface)}.close-task-card.active{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.close-check-control{display:flex;min-width:0;align-items:center;gap:8px;color:var(--ink);font-size:.84rem;font-weight:850;line-height:1.25}.close-check-control input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--green)}.close-check-control input:disabled{opacity:1}.close-count-button{display:inline-flex;min-height:34px;align-items:center;gap:4px;border:1px solid #e7c8c0;border-radius:8px;padding:5px 7px;color:var(--red);background:#fff7f4;font-size:.74rem;font-weight:850;white-space:nowrap}.close-count-button.cleared{border-color:#b9d9c8;color:var(--green);background:#f2fbf6}.close-task-card.active .close-count-button svg{transform:rotate(90deg)}.close-fix-list{display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;padding:11px;background:#fff}.close-fix-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:4px}.close-fix-heading>div,.close-fix-row>div{display:grid;min-width:0;gap:3px}.close-fix-heading span,.close-fix-row span{color:var(--muted);font-size:.76rem;font-weight:750;line-height:1.35}.close-fix-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,auto) auto;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:8px}.close-fix-row>strong{text-align:right;white-space:nowrap}.close-fix-complete{display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);padding-top:9px;color:var(--green);font-size:.82rem;font-weight:850}.check-row{display:flex;min-height:46px;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--surface);color:var(--ink);font-size:.86rem;font-weight:850;line-height:1.25}.check-row input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--green)}.check-label{display:grid;gap:3px}.close-count{color:var(--red);font-size:.74rem;font-weight:850}.close-count.cleared{color:var(--green)}.close-exception-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:14px;border:1px solid #e7ca79;border-radius:8px;padding:12px;background:#fff4d8}.close-exception-panel.recorded{grid-template-columns:minmax(0,1fr);border-color:#d6b960}.close-exception-panel div,.close-exception-panel label{display:grid;gap:5px}.close-exception-panel p{margin:0;color:var(--muted);line-height:1.4}.close-exception-panel textarea{min-height:64px;resize:vertical}.close-exception-panel small{color:var(--muted);font-size:.75rem;font-weight:750}.close-metrics{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.close-metrics-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.close-metrics-head div{display:grid;gap:3px}.close-metrics-head span{color:var(--muted);font-size:.78rem;font-weight:800}.close-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.close-metric{display:grid;gap:4px;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fbfaf7}.close-metric span,.close-metric em{color:var(--muted);font-size:.74rem;font-style:normal;font-weight:800;line-height:1.25}.close-metric strong{color:var(--ink);font-size:.95rem;overflow-wrap:anywhere}.trend-better{color:var(--green)}.trend-worse{color:var(--red)}.trend-mixed,.trend-same,.trend-no-history{color:var(--amber)}.close-actions{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.close-actions span{color:var(--muted);font-size:.82rem;font-weight:850}.forecast-close-warning{display:flex;align-items:center;gap:8px;border:1px solid #e7ca79;border-radius:8px;padding:10px 12px;background:var(--amber-soft);color:#8a4b00;font-size:.86rem;font-weight:850;line-height:1.35}.forecast-confidence-detail{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface-muted)}.forecast-confidence-detail.confidence-low{border-color:#e8b3a4;background:#fff3ef}.forecast-confidence-detail.confidence-medium{border-color:#e7ca79;background:var(--amber-soft)}.confidence-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.confidence-heading span,.confidence-reason span{color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.35}.confidence-reason-list{display:grid;gap:8px}.confidence-reason{display:grid;gap:3px;border-left:4px solid var(--amber);padding-left:9px}.confidence-reason.high{border-left-color:var(--coral)}.forecast-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.forecast-stat{display:grid;gap:6px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface-muted)}.forecast-stat span,.forecast-row span{color:var(--muted);font-size:.78rem;font-weight:800}.forecast-stat strong{font-size:1.05rem}.forecast-stat em{color:var(--muted);font-style:normal;font-weight:800}.forecast-stat.income{border-color:#9bd4b9;background:#effaf4}.forecast-stat.danger{border-color:#e8b3a4;background:#fff3ef}.forecast-stat.warning{border-color:#e7ca79;background:var(--amber-soft)}.forecast-stat.confidence-high{border-color:#9bd4b9;background:#effaf4}.forecast-stat.confidence-medium{border-color:#e7ca79;background:var(--amber-soft)}.forecast-stat.confidence-low{border-color:#e8b3a4;background:#fff3ef}.forecast-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.72fr);gap:14px}.forecast-list{display:grid;align-content:start;gap:8px}.forecast-list h3{margin:0 0 2px;font-size:1rem}.cash-runway{display:grid;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}.cash-runway-heading,.cash-runway-account-head,.cash-runway-day{display:flex;align-items:center;justify-content:space-between;gap:12px}.cash-runway-heading h3{margin:1px 0 0;font-size:1rem}.cash-runway-accounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.cash-runway-account,.cash-runway-days{display:grid;align-content:start;gap:7px}.cash-runway-account-head div,.cash-runway-day div{display:grid;gap:3px}.cash-runway-account-head span,.cash-runway-day span{color:var(--muted);font-size:.76rem;font-weight:750}.cash-runway-day{border-top:1px solid var(--line);padding-top:7px}.cash-runway-day div:last-child{justify-items:end;text-align:right}.allocation-capacity-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0;color:var(--muted);font-size:.82rem;font-weight:800}.payday-task-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.payday-task-heading h3{margin:0}.payday-task-row .secondary-button{margin-top:4px}.allocation-account-capacities{display:grid;gap:6px}.allocation-account-capacities>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;font-size:.82rem}.allocation-account-capacities span{color:var(--muted)}.allocation-account-capacities strong{min-width:0;text-align:right}.timeline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.timeline-bucket{display:grid;align-content:start;gap:8px}.timeline-bucket-header{display:grid;gap:3px}.timeline-bucket-header span{color:var(--muted);font-size:.78rem;font-weight:800}.forecast-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,auto);gap:10px;align-items:center;border-top:1px solid var(--line);padding:9px 0 0}.forecast-row div{display:grid;gap:3px}.forecast-row div:last-child{justify-items:end;text-align:right}.guided-setup-shell{width:min(1080px,100%);margin:0 auto}.guided-setup-panel{display:grid;gap:18px}.guided-setup-heading{align-items:flex-start;margin-bottom:0}.guided-setup-heading p:not(.eyebrow),.guided-setup-launch p,.guided-step-intro p:not(.eyebrow){max-width:680px;margin:5px 0 0;color:var(--muted);line-height:1.45}.guided-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.guided-stepper>div{display:flex;min-width:0;align-items:center;gap:8px;border-bottom:3px solid var(--line);padding:8px 4px 10px;color:var(--muted)}.guided-stepper span{display:inline-grid;width:26px;height:26px;flex:0 0 26px;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:.78rem}.guided-stepper strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.guided-stepper .active{border-color:var(--teal);color:var(--ink)}.guided-stepper .active span{border-color:var(--teal);color:#fff;background:var(--teal)}.guided-stepper .complete{border-color:#7a9a5b;color:var(--ink)}.guided-stepper .complete span{border-color:#7a9a5b;color:#fff;background:#7a9a5b}.guided-step-content{display:grid;min-height:360px;align-content:start;gap:18px}.guided-step-intro h3{margin-top:3px;font-size:1.15rem}.guided-core-fields{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(120px,.6fr);gap:10px}.guided-core-fields label,.guided-input-row label{display:grid;gap:5px;color:var(--muted);font-size:.76rem;font-weight:800}.guided-row-list{display:grid;gap:8px}.guided-row-list h4{margin:4px 0 2px;font-size:.9rem}.guided-input-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(110px,.55fr) minmax(90px,.35fr) minmax(130px,.55fr);gap:9px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.guided-input-row.future{grid-template-columns:minmax(160px,1fr) minmax(105px,.5fr) minmax(80px,.3fr) minmax(135px,.55fr) minmax(125px,.55fr)}.guided-input-row>strong{min-width:0;overflow-wrap:anywhere}.guided-setup-actions{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:14px}.guided-setup-actions>span{color:var(--muted);font-size:.78rem;text-align:center}.guided-setup-launch{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.guided-setup-launch h2{margin-top:3px;font-size:1.18rem}.account-balance-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(90px,110px) minmax(120px,150px) minmax(145px,170px) 34px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff}.account-grid{display:grid;gap:8px}.account-add-form{grid-template-columns:minmax(0,1fr) minmax(90px,120px) auto}.account-balance-row label{display:grid;gap:4px;color:var(--muted);font-size:.76rem;font-weight:800}.account-balance-row span{display:grid;gap:2px}.account-balance-row em{color:var(--muted);font-size:.76rem;font-style:normal;font-weight:800}.account-balance-row button{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--red)}.timeline-row{grid-template-columns:minmax(0,1fr)}.timeline-row div:last-child{justify-items:start;text-align:left}.reserve-allocation-list{gap:10px}.reserve-allocation-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface)}.reserve-allocation-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,auto);gap:12px}.reserve-allocation-head div{display:grid;gap:4px}.reserve-allocation-head div:last-child{justify-items:end;text-align:right}.reserve-allocation-head span,.reserve-allocation-items span{color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.4}.reserve-allocation-items{display:grid;gap:8px}.amount-positive{color:var(--green)}.amount-negative{color:var(--coral)}.amount-warning{color:#9a6a05}.data-check-panel.warning{border-color:#e7ca79;background:#fffaf0}.data-warning-list{display:grid;gap:10px}.data-warning-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,auto);gap:12px;align-items:start;border-top:1px solid var(--line);padding-top:10px}.data-warning-row:first-child{border-top:0;padding-top:0}.data-warning-row div:first-child{display:grid;gap:3px}.data-warning-row span{color:var(--muted);font-size:.8rem;font-weight:750}.warning-field-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.warning-field-list span{display:inline-flex;min-height:26px;align-items:center;border-radius:999px;padding:3px 8px;color:#8a4b00;background:var(--amber-soft);font-size:.76rem;font-weight:850}.goal-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.goal-card,.wallet-card{display:grid;gap:10px;padding:12px}.progress-bar{overflow:hidden;width:100%;height:10px;border-radius:999px;background:var(--surface-muted)}.progress-bar span{display:block;height:100%;border-radius:inherit;background:var(--teal)}.wallet-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:14px}.wallet-stats{display:grid;gap:6px;color:var(--muted);font-size:.88rem;font-weight:700}.badge-row,.category-grid{display:flex;flex-wrap:wrap;gap:8px}.badge-row span,.category-chip{display:inline-flex;min-height:30px;align-items:center;gap:7px;border-radius:999px;padding:4px 9px;color:var(--teal);background:var(--teal-soft);font-size:.8rem;font-weight:800}.category-chip button{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border:0;border-radius:999px;color:var(--coral);background:transparent}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:14px}.mini-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.savings-transfer-form{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr) auto}.compact-action{min-height:40px;padding:0 10px}.splash,.login-screen{min-height:100vh;display:grid;place-items:center;padding:18px}.splash{gap:12px;color:var(--teal);font-weight:850}.login-panel{width:min(420px,100%);padding:22px}@media (min-width: 860px){.calendar-layout{grid-template-columns:minmax(0,1.55fr) minmax(320px,.72fr);align-items:start}.split-layout{grid-template-columns:minmax(0,1fr) minmax(310px,.42fr);align-items:start}.metric-grid,.headline-metric-grid,.settings-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.date-cell{min-height:112px}}@media (max-width: 720px){.app-shell{padding:12px}.topbar{align-items:flex-start}.topbar h1,.login-panel h1{font-size:1.35rem}.tabs{position:sticky;top:0;z-index:5;grid-template-columns:repeat(7,68px);overflow-x:auto;padding:6px 0;background:var(--bg)}.tab{min-width:68px;flex-direction:column;gap:4px;font-size:.72rem}.weekday-grid,.calendar-grid{gap:4px}.calendar-toolbar{grid-template-columns:minmax(0,1fr)}.calendar-toolbar .month-bar{justify-content:space-between}.calendar-view-toggle{width:100%}.agenda-row{grid-template-columns:minmax(0,1fr)}.agenda-row-main{grid-template-columns:48px minmax(0,1fr) auto;gap:8px}.agenda-row>.primary-button,.agenda-row>.secondary-button{width:100%}.date-cell{min-height:70px;padding:5px}.date-number{width:22px;height:22px;font-size:.78rem}.income-pill,.bill-pill,.lead-warning-pill,.more-pill{font-size:.64rem}.item-card,.home-answer-grid{grid-template-columns:minmax(0,1fr)}.home-answer-card{min-height:196px}.card-actions{justify-content:flex-start}.summary-toolbar,.settings-strip,.what-if-grid,.close-checklist,.close-exception-panel,.close-metrics-grid,.metric-grid,.forecast-summary,.forecast-columns,.reserve-allocation-head,.lead-warning-row,.triage-row,.future-cost-row,.planning-suggestion-row,.data-warning-row,.account-add-form,.mini-form,.two-column{grid-template-columns:minmax(0,1fr)}.future-cost-row>button,.planning-suggestion-row>button{width:100%}.headline-metric-grid{grid-template-columns:minmax(0,1fr)}.quick-transaction-grid,.transaction-more-options>summary{grid-template-columns:minmax(0,1fr)}.quick-field-wide{grid-column:auto}.transaction-more-options>summary{position:relative;padding-right:28px}.transaction-more-options>summary:after{position:absolute;right:2px}.transaction-more-options>summary small{display:none}.summary-details>summary{grid-template-columns:minmax(0,1fr) 24px}.summary-details>summary small{display:none}.close-actions{align-items:stretch;flex-direction:column}.close-task-card,.close-fix-row{grid-template-columns:minmax(0,1fr)}.close-count-button,.close-fix-row .primary-button,.close-fix-row .secondary-button{width:100%;justify-content:center}.close-fix-row>strong{text-align:left}.close-fix-heading{align-items:flex-start}.close-metrics-head,.confidence-heading{align-items:flex-start;flex-direction:column}.triage-meta{justify-items:start;text-align:left}.triage-actions,.triage-link-action{align-items:stretch;flex-direction:column}.triage-actions .secondary-button,.triage-link-action select{width:100%}.reserve-allocation-head div:last-child{justify-items:start;text-align:left}.account-balance-row,.guided-setup-heading,.guided-setup-launch{grid-template-columns:minmax(0,1fr)}.guided-setup-heading{display:grid}.guided-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-core-fields,.guided-input-row,.guided-input-row.future,.guided-setup-actions{grid-template-columns:minmax(0,1fr)}.guided-step-content{min-height:0}.guided-setup-actions>span{order:-1;text-align:left}.guided-setup-actions .primary-button,.guided-setup-actions .secondary-button,.guided-setup-launch .primary-button,.guided-setup-heading .secondary-button,.account-balance-row button{width:100%}.warning-field-list{justify-content:flex-start}.summary-toolbar .secondary-button{width:100%}}
