:root{--bg:#f6f7f4;--surface:#fffdfa;--ink:#1a1f1c;--muted:#66706b;--accent:#1f8f5f;--accent-soft:#d8f2e5;--danger:#b63a3a;--border:#d8ddd7}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);margin:0;font-family:Avenir Next,Segoe UI,sans-serif;font-size:15px;overflow-x:hidden}a{color:inherit;text-decoration:none}main{width:100%;max-width:1180px;margin:0 auto;padding:1rem 1rem 3rem}h1,h2,h3,p{margin-top:0}.app-header{z-index:20;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdfaf0;align-items:center;gap:1rem;padding:.65rem 1rem;display:flex;position:sticky;top:0}.brand{letter-spacing:0;flex:none;align-items:center;gap:.45rem;font-weight:800;display:inline-flex}.brand-mark{width:1.8rem;height:1.8rem;display:block}.app-nav{flex:auto;align-items:center;display:flex}.app-menu-toggle{display:none}.app-nav-panel{scrollbar-width:thin;white-space:nowrap;gap:.25rem;display:flex;overflow-x:auto}.app-nav-panel a{color:var(--muted);border-radius:8px;flex:none;padding:.38rem .55rem}.app-nav-panel a:hover,.app-nav-panel a.active{background:var(--accent-soft);color:var(--ink)}.app-toolbar{flex:none;align-items:center;gap:.5rem;margin-left:auto;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.85rem}.grid{gap:1rem;display:grid}.section-tabs{background:#eef3ef;border-radius:8px;grid-template-columns:repeat(2,auto);gap:.2rem;margin-bottom:.75rem;padding:.2rem;display:inline-grid}.section-tabs a{color:var(--muted);text-align:center;border-radius:6px;padding:.45rem .75rem;font-weight:700}.section-tabs a.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #1a1f1c1a}.rules-page .rules-manager,.categories-page .category-manager{max-width:60rem}@media (min-width:920px){.grid.cols-2{grid-template-columns:1fr 1fr}.grid.cols-2-uneven{grid-template-columns:1.6fr 1fr;align-items:start}}input,select,button{font:inherit}input,select{border:1px solid var(--border);background:#fff;border-radius:8px;min-width:0;min-height:2.1rem;padding:.35rem .5rem}.field{gap:.3rem;display:grid}.field span{color:var(--muted);font-size:.82rem}button{cursor:pointer;border:1px solid var(--border);background:#fff;border-radius:8px;padding:.4rem .65rem}button.primary,.button-link.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button:disabled{cursor:not-allowed;opacity:.7}.button-processing{justify-content:center;align-items:center;gap:.4rem;display:inline-flex}.button-processing:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:.8rem;height:.8rem;animation:.75s linear infinite planner-button-spin}@keyframes planner-button-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.button-processing:before{animation-duration:1.5s}}.button-link{border:1px solid var(--border);text-align:center;white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;min-height:2.1rem;padding:.4rem .65rem;display:inline-flex}small,.muted{color:var(--muted)}.error-text{color:var(--danger)}.auth-page{place-items:center;min-height:calc(100vh - 4.5rem);display:grid}.auth-card{width:min(100%,28rem);max-width:28rem}.auth-form,.security-action,.settings-panel{gap:.75rem;display:grid}.sync-panel{gap:.5rem;display:grid}.sync-panel.compact{align-items:center;gap:.4rem;display:flex}.sync-panel.compact .sync-message{text-overflow:ellipsis;white-space:nowrap;max-width:11rem;overflow:hidden}.sync-meta{gap:.25rem;display:grid}.status-pill{border:1px solid var(--border);color:var(--muted);border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:1.45rem;padding:.25rem .5rem;font-size:.76rem;font-weight:700;line-height:1;display:inline-flex}.sync-panel.loading .status-pill{color:#39413c;background:#eef3ef}.sync-panel.success .status-pill{background:var(--accent-soft);color:#14643f;border-color:#a8dec2}.sync-panel.partial .status-pill,.status-pill.warning{color:#735300;background:#fff4d8;border-color:#e7c56a}.sync-panel.error .status-pill,.sync-panel.error .sync-message{color:var(--danger)}.sync-panel.error .status-pill{background:#ffe8e8;border-color:#efb2b2}.section-header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:.75rem;display:flex}.section-header>*{min-width:0}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.field-inline{align-items:center;gap:.35rem;display:inline-flex}.field-inline span{color:var(--muted);font-size:.82rem}.connect-teller{place-items:start end;gap:.45rem;display:inline-grid}.connect-teller-status{border:1px solid var(--border);color:var(--muted);border-radius:8px;width:fit-content;max-width:22rem;padding:.42rem .55rem;font-size:.88rem;line-height:1.3}.connect-teller-status.error{color:var(--danger);background:#fff4f2;border-color:#e3b2ad}.connect-teller-status.warning{color:#725a18;background:#fff8e8;border-color:#e8d6a8}.connect-teller-status.success{background:var(--accent-soft);color:#17623f;border-color:#a9dcc3}.compact-list{margin:0;padding:0;list-style:none}.compact-list li{border-top:1px solid #edf0ec;gap:.12rem;padding:.55rem 0;display:grid}.compact-list li:first-child{border-top:0}.account-manager{gap:.75rem;display:grid}.account-layout,.account-groups,.account-institution-group,.account-institution-body{gap:.65rem;display:grid}.account-groups{gap:1rem}.account-institution-sidebar{display:none}.account-institution-header{border-bottom:1px solid var(--border);color:inherit;cursor:pointer;text-align:left;background:0 0;border-top:0;border-left:0;border-right:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;width:100%;padding-bottom:.35rem;display:grid}.account-institution-header span:first-child{margin:0;font-size:1rem;font-weight:800}.account-institution-chevron{color:var(--muted);font-size:.75rem;transition:transform .14s}.account-institution-group.is-open .account-institution-chevron{transform:rotate(180deg)}.account-institution-body{display:none}.account-institution-group.is-open .account-institution-body{display:grid}.account-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.account-row{border:1px solid var(--border);border-radius:8px;gap:.65rem;padding:.7rem;display:grid}.account-card-layout,.account-card-summary,.account-card-controls{gap:.65rem;display:grid}.account-main{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.account-main div,.account-meta{gap:.15rem;min-width:0;display:grid}.account-main small,.account-meta small{overflow-wrap:anywhere}.account-name-edit-trigger{appearance:none;color:inherit;cursor:default;font:inherit;pointer-events:none;text-align:left;background:0 0;border:0;width:fit-content;padding:0}.account-name-edit-trigger:disabled{color:inherit}.account-name-inline-editor{margin:0}.account-name-inline-editor input{font:inherit;width:min(22rem,100%);min-width:min(18rem,100%);min-height:2rem;font-weight:700}.account-stats{background:#f8faf8;border:1px solid #e5ebe6;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.account-stats div{gap:.15rem;padding:.55rem .6rem;display:grid}.account-stats div+div{border-left:1px solid #e5ebe6}.account-stats strong{font-size:.95rem}.account-budget-treatment{align-items:start;gap:.35rem;display:grid}.account-budget-treatment label{color:var(--muted);font-size:.78rem;font-weight:700}.account-budget-treatment select{width:100%;min-width:0}.account-list-summary{gap:.25rem;margin-bottom:.65rem;display:grid}.account-alerts,.account-sync-details .account-meta{gap:.15rem;display:grid}.account-sync-details summary{color:var(--accent);cursor:pointer;width:fit-content;font-size:.82rem;font-weight:700}.account-sync-details[open] summary{margin-bottom:.35rem}.account-actions-modal{width:min(100%,34rem)}.account-actions-modal-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;position:relative}.modal-close-link{appearance:none;color:var(--muted);background:0 0;border:0;width:auto;min-height:2rem;padding:.15rem .25rem;font-size:1.45rem;line-height:1}.modal-close-link:hover,.modal-close-link:focus-visible{color:var(--text)}.account-action-list{gap:.65rem;display:grid}.account-modal-field,.account-modal-action{border:1px solid var(--border);border-radius:8px;gap:.3rem;padding:.7rem;display:grid}.account-modal-field span,.account-modal-action strong{font-size:.95rem}.account-modal-field small,.account-modal-action small{color:var(--muted);font-weight:500;line-height:1.35}.account-modal-name-row{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.account-modal-action{color:inherit;cursor:pointer;text-align:left;background:#fff;width:100%}.account-modal-action:hover:not(:disabled),.account-modal-action:focus-visible{background:#f8faf8}.account-modal-action.danger strong{color:#a6422f}.category-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.category-row{border:1px solid var(--border);cursor:grab;background:#fbfcf8;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.2rem .5rem;padding:.6rem;display:grid}.category-row.dragging{opacity:.55}.category-row:active{cursor:grabbing}.drag-handle{color:var(--muted);letter-spacing:0;padding:0 .1rem;font-size:.82rem;font-weight:800;line-height:1}.category-main{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem;min-width:0;display:grid}.category-name{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;display:flex}.category-name strong{overflow-wrap:anywhere}.category-name input{width:100%;min-height:2.5rem}.category-counts{grid-column:2;line-height:1.35}.card-action-menu{position:relative}.card-action-menu summary{border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:2.75rem;min-height:2.5rem;padding:.2rem .6rem;font-weight:800;list-style:none;display:inline-flex}.card-action-menu summary::-webkit-details-marker{display:none}.card-action-menu summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-action-menu[open] summary{background:#eef3ef}.card-action-menu>div{background:var(--surface);border:1px solid var(--border);z-index:10;border-radius:8px;gap:.4rem;width:11rem;padding:.45rem;display:none;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 12px 30px #1a1f1c24}.card-action-menu[open]>div{display:grid}.card-action-menu button,.card-action-menu select,.card-action-menu .button-link{width:100%;min-height:2.5rem}.category-manager-summary{color:var(--muted);margin:0 0 .75rem;font-size:.82rem}.rule-preview{border:1px solid var(--border);border-radius:8px;gap:.65rem;padding:.75rem;display:grid}.rule-preview-heading,.rule-manager-header,.rule-form-heading,.rule-card-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.rule-preview-heading>div,.rule-manager-header>div,.rule-form-heading>div,.rule-card-heading>div{gap:.15rem;min-width:0;display:grid}.rule-preview-heading button,.rule-manager-header button,.rule-form-heading button{flex:none;width:auto}.rule-manager-status{margin-bottom:.65rem;display:block}.rule-form-modal{gap:.85rem;width:min(100%,52rem);max-width:52rem;display:grid}.rule-form-heading{border-bottom:1px solid #edf0ec;padding-bottom:.65rem}.rule-form-heading h2{margin:0}.warning-list{color:var(--danger);gap:.25rem;margin:0;padding-left:1.1rem;display:grid}.rule-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.rule-row{border:1px solid var(--border);cursor:grab;background:#fbfcf8;border-radius:8px;grid-template-columns:auto minmax(12rem,1fr) auto;align-items:start;gap:.55rem;padding:.65rem;display:grid}.rule-row.dragging{opacity:.55}.rule-row:active{cursor:grabbing}.rule-expression{overflow-wrap:anywhere;min-width:0;line-height:1.4}.rule-card-content{gap:.45rem;min-width:0;display:grid}.rule-card-heading strong,.rule-card-heading small{display:block}.danger-button{color:var(--danger);background:#fff6f6;border-color:#efb2b2;font-weight:700}.danger-button:hover{background:#ffe8e8}.danger-text-action:not(:disabled){color:var(--danger)}.rule-builder,.rule-condition-group{gap:.75rem;display:grid}.rule-builder{margin-bottom:.75rem}.rule-manager-header{margin-bottom:.85rem}.rule-builder-header,.rule-builder-actions{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem;display:grid}.rule-builder-actions{grid-template-columns:minmax(0,1fr) auto auto}.rule-condition-row{border:1px solid var(--border);background:#fbfcf8;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;padding:.65rem;display:grid}.rule-condition-heading{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.rule-condition-heading .text-action{width:auto;min-height:2rem}.rules-manager input,.rules-manager select,.rules-manager button{min-height:2.5rem}.rules-manager small{font-size:.8rem;line-height:1.4}.rules-manager button:disabled{color:#747c77;opacity:1;background:#f1f3f0;border-color:#dfe4df}.rules-manager button.primary:disabled{color:#68706b;background:#dfe4df;border-color:#d5dad5}.review-queue{margin-bottom:1rem}.review-status{margin-top:.6rem;display:block}.review-list{border:1px solid var(--border);border-radius:8px;gap:0;margin:.9rem 0 0;padding:0;list-style:none;display:grid;overflow:hidden}.review-row{border:0;border-bottom:1px solid var(--border);background:0 0;border-radius:0;grid-template-columns:auto minmax(15rem,1fr) minmax(16rem,22rem);align-items:start;gap:.8rem;padding:.7rem .75rem;display:grid}.review-row:last-child{border-bottom:0}.review-row.has-suggestion{background:0 0}.review-item-main{grid-area:1/2;gap:.15rem;min-width:0;display:grid}.review-row-select{grid-area:1/1/span 2;align-items:start;display:flex}.review-row-select input{margin-top:.25rem}.review-row-category{grid-area:2/2;align-items:center;gap:.5rem;max-width:22rem;margin-top:.45rem;display:flex}.review-row-category span{color:var(--muted);font-size:.8rem;font-weight:700}.review-row-category select{width:100%;min-height:2.15rem}.review-recommendation-summary{color:var(--muted);text-align:right;justify-items:end;gap:.2rem;display:grid}.review-recommendation-summary a{font-weight:700}.inline-link{color:var(--accent);font:inherit;background:0 0;border:0;width:auto;min-height:auto;padding:0;font-weight:700;text-decoration:underline;display:inline}.review-similar-modal{gap:.85rem;max-width:36rem;display:grid}.modal-backdrop.review-similar-backdrop{z-index:45}.review-similar-list{border:1px solid var(--border);border-radius:8px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.review-similar-list li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:.65rem;display:grid}.review-similar-list li:last-child{border-bottom:0}.review-similar-list li>div{gap:.1rem;min-width:0;display:grid}.review-recommendation-summary small{align-items:center;gap:.25rem;display:inline-flex}.review-recommendation-summary small:first-child:before{content:"";background:#1f8f5f;border-radius:999px;width:.45rem;height:.45rem;display:inline-block}.review-row-actions{grid-area:1/3/span 2;place-items:start end;gap:.45rem;display:grid}.review-recommendation-actions{gap:.35rem;display:flex}.review-recommendation-actions button,.review-group-toolbar button{min-height:2rem;padding:.25rem .55rem}.review-workbench{grid-template-columns:minmax(13rem,16rem) minmax(0,1fr);align-items:start;gap:1rem;margin-top:1rem;display:grid}.review-group-sidebar{border-right:1px solid var(--border);gap:.35rem;padding-right:.75rem;display:grid;position:sticky;top:1rem}.review-group-sidebar button{color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:.65rem;min-height:auto;padding:.55rem .6rem;display:flex}.review-group-sidebar button.active{background:#eef6f2;border-color:#cfe2d7}.review-group-sidebar button>span{gap:.1rem;display:grid}.review-group-sidebar button>span:last-child{justify-items:end}.review-mobile-group-switcher{display:none}.review-group-panel{min-width:0}.review-manager-header,.review-section-header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.review-manager-header>div:first-child{gap:.15rem;display:grid}.review-selection-actions{gap:.35rem;display:flex}.review-selection-actions button{min-height:2.25rem;padding:.3rem .5rem}.review-queue-section h3{margin-bottom:.2rem}.review-group-toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-top:.7rem;display:flex}.review-group-toolbar>div{gap:.35rem;display:flex}.review-rule-prompts{background:#fff8e8;border:1px solid #ead9aa;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin-top:.85rem;padding:.75rem;display:flex}.review-rule-prompts>div:first-child{gap:.2rem;display:grid}.review-rule-prompt-list{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.danger-text{color:var(--danger)}.warning-text{color:#735300}.budget-manager{gap:1rem;display:grid}.budget-summary{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;display:grid}.budget-summary div,.debt-summary div{border:1px solid var(--border);border-radius:8px;gap:.2rem;padding:.65rem;display:grid}.budget-form-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));align-items:end;gap:.65rem;display:grid}.budget-allocation-form{align-items:end;margin-bottom:.75rem}.budget-allocation-form .field-stack:first-child{flex:14rem}.budget-allocation-form .field-stack:nth-child(2){flex:0 9rem}.field-stack{gap:.25rem;display:grid}.field-stack span{color:var(--muted);font-size:.82rem;font-weight:700}.form-actions{align-items:center;gap:.5rem;display:flex}.empty-state{border:1px dashed var(--border);border-radius:8px;justify-items:start;gap:.6rem;padding:.85rem;display:grid}.dashboard-error{border:1px dashed var(--danger);border-radius:8px;gap:.35rem;padding:.85rem;display:grid}.dashboard-error small{color:var(--danger)}.disabled-link{color:var(--muted);pointer-events:none}.dashboard-loading{min-height:8.25rem}.skeleton-list{gap:.65rem;display:grid}.skeleton-line{background:linear-gradient(90deg,#edf0ec 25%,#f7f8f5 45%,#edf0ec 65%) 0 0/200% 100%;border-radius:999px;width:100%;max-width:100%;height:.8rem;animation:1.25s ease-in-out infinite skeleton-pulse}.skeleton-line.large{width:45%;height:1.5rem;margin-top:.35rem}.skeleton-line.medium{width:72%}.skeleton-line.short{width:58%;margin-top:.65rem}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.preview-panel{border:1px solid var(--border);border-radius:8px;gap:.4rem;width:100%;padding:.75rem;display:grid}.budget-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.budget-row{border:1px solid var(--border);border-radius:8px;gap:.5rem;padding:.75rem;display:grid}.budget-row.over-budget{border-color:#efb2b2}.budget-row-main{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.budget-row-main>div:first-child{gap:.15rem;min-width:0;display:grid}.budget-actions{flex-wrap:wrap;justify-content:end;align-items:center;gap:.25rem;display:inline-flex}.budget-move-actions,.budget-amount-actions{align-items:center;gap:.25rem;display:flex}.budget-amount-actions input{width:7.5rem}.budget-actions button{min-height:1.85rem;padding:.22rem .45rem}.budget-progress{background:#eef3ef;border-radius:999px;height:.55rem;overflow:hidden}.budget-progress span{background:var(--accent);height:100%;display:block}.over-budget .budget-progress span{background:var(--danger)}.budget-disclosure{color:var(--accent);background:0 0;border:0;justify-self:start;align-items:center;gap:.25rem;min-height:auto;padding:0;font-weight:700;display:inline-flex}.budget-disclosure:hover{text-decoration:underline}.budget-transaction-list{border-top:1px solid #edf0ec;gap:0;margin:.15rem 0 0;padding:0;list-style:none;display:grid}.budget-transaction-list li{border-bottom:1px solid #edf0ec;grid-template-columns:minmax(10rem,1fr) auto auto;align-items:center;gap:.6rem;padding:.45rem 0;display:grid}.budget-transaction-list li:last-child{border-bottom:0}.budget-transaction-list li div{gap:.12rem;min-width:0;display:grid}.debt-tracker{gap:1rem;display:grid}.debt-summary{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;display:grid}.debt-summary-band{margin-bottom:.9rem}.debt-workspace-mode{background:#eef3ef;border-radius:10px;grid-template-columns:repeat(2,minmax(7rem,1fr));justify-self:start;gap:.25rem;width:min(22rem,100%);padding:.3rem;display:grid}.debt-workspace-mode button{background:0 0;border-color:#0000;min-height:2.5rem;font-weight:750}.debt-workspace-mode button:hover,.debt-workspace-mode-active{color:var(--accent);background:var(--surface)!important;border-color:var(--border)!important}.debt-workspace{grid-template-columns:minmax(15rem,18rem) minmax(0,1fr);align-items:start;gap:.9rem;display:grid}.debt-accounts-panel{gap:.85rem;display:grid}.debt-collapsible-heading{align-items:center;margin-bottom:0}.debt-section-toggle{color:var(--ink);text-align:left;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.15rem;display:flex}.debt-section-toggle>span:first-child{gap:.12rem;min-width:0;display:grid}.debt-section-toggle>span:last-child{color:var(--accent);font-size:1.25rem;line-height:1}.debt-section-toggle h2{margin-top:0}.debt-workspace-main{min-width:0}.debt-workspace-plan{grid-template-columns:minmax(0,1fr)}.debt-workspace-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:10px;gap:.65rem;max-height:calc(100vh - 8rem);padding:.65rem;display:grid;position:sticky;top:1rem;overflow:auto}.debt-sidebar-heading,.debt-sidebar-title{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.4rem;min-width:0;display:grid}.debt-sidebar-heading>div{gap:.08rem;min-width:0;display:grid}.debt-sidebar-heading button{width:auto;min-height:1.9rem;padding:.2rem .5rem}.debt-sidebar-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.debt-sidebar-item{text-align:left;background:0 0;border-color:#0000;gap:.2rem;width:100%;padding:.55rem;display:grid}.debt-sidebar-item:hover,.debt-sidebar-item-selected{background:#f4f8f4;border-color:#d7e5d9}.debt-sidebar-title{gap:.4rem}.debt-sidebar-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.debt-sidebar-title .debt-health{text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem;font-size:.66rem;overflow:hidden}.debt-sidebar-balance{font-size:1rem;font-weight:800}.debt-sidebar-meta{color:var(--muted);font-size:.72rem;font-weight:650}.debt-detail-title{color:var(--ink)}.debt-workspace-nav{background:var(--surface);border:1px solid var(--border);border-radius:10px;gap:.25rem;margin-bottom:.75rem;padding:.3rem;display:flex;overflow-x:auto}.debt-workspace-nav button{background:0 0;border-color:#0000;flex:1 0 auto;min-height:2rem;padding:.3rem .65rem}.debt-workspace-nav button:hover,.debt-workspace-nav-active{color:var(--accent);background:#edf5ef!important;border-color:#d1e3d5!important}.debt-planner-workspace .debt-planner-form,.debt-planner-workspace .planner-authoritative-timeline,.debt-planner-workspace .planner-payment-allocation,.debt-planner-workspace .planner-payment-plan,.debt-planner-workspace .planner-scenarios,.debt-planner-workspace .budget-suggestion-panel,.debt-planner-workspace .planner-upcoming,.debt-planner-workspace>.debt-summary,.debt-planner-workspace>.danger-text{display:none}.debt-planner-view-schedule .planner-authoritative-timeline,.debt-planner-view-schedule .planner-payment-allocation,.debt-planner-view-schedule .planner-payment-plan,.debt-planner-view-schedule .budget-suggestion-panel,.debt-planner-view-schedule>.debt-summary,.debt-planner-view-calendar .planner-upcoming,.debt-planner-view-scenarios .planner-scenarios,.debt-planner-view-schedule .debt-planner-form{display:grid}.debt-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.debt-row{border:1px solid var(--border);border-radius:8px;gap:.55rem;padding:.75rem;display:grid}.debt-row-main{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.debt-stats{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.5rem;display:grid}.debt-stats div{gap:.15rem;display:grid}.debt-stats strong{font-size:.92rem}.debt-health{border-radius:999px;width:fit-content;margin-top:.25rem;padding:.22rem .45rem;font-size:.74rem;font-weight:700;line-height:1;display:inline-flex}.debt-health-neutral{color:#39413c;background:#eef3ef}.debt-health-good{background:var(--accent-soft);color:#14643f}.debt-health-warning{color:#735300;background:#fff4d8}.debt-health-danger{color:var(--danger);background:#ffe8e8}.debt-detail{border-top:1px solid #edf0ec;gap:.65rem;padding-top:.65rem;display:grid}.debt-payment-form,.debt-planner-form{align-items:end}.debt-payment-form{grid-template-columns:repeat(2,minmax(0,1fr)) auto;display:grid}.debt-payment-form-manual{grid-template-columns:minmax(0,1fr) auto}.debt-payment-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center}.debt-payment-list li div{gap:.12rem;min-width:0;display:grid}.debt-planner-form{align-items:stretch;gap:.75rem;margin-bottom:.75rem;display:grid}.planner-form-section{border:1px solid var(--border);border-radius:10px;gap:.75rem;width:100%;padding:.8rem;display:grid}.planner-form-section-heading{gap:.12rem;display:grid}.planner-form-section-heading h3{margin:0}.planner-form-section-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));align-items:start;gap:.75rem;display:grid}.planner-form-section-grid>.field-stack{align-content:start;align-self:start;min-width:0}.planner-form-section-grid>.field-stack>input,.planner-form-section-grid>.field-stack>select{width:100%;height:2.2rem}.planner-form-actions{justify-content:flex-end}.planner-monthly-payment{background:#f7faf7;border:1px solid #dce8de;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:.75rem;padding:.75rem;display:grid}.planner-monthly-payment>div{gap:.18rem;display:grid}.planner-monthly-payment strong{font-size:1.08rem}.planner-timing-summary{background:#edf5ef;border-radius:8px;gap:.2rem;padding:.7rem;display:grid}.debt-planner-wide{grid-column:1/-1}.debt-form{gap:.65rem;display:grid}.budget-suggestion-panel{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(12rem,1fr) auto auto;align-items:center;gap:.75rem;margin-top:.75rem;padding:.75rem;display:grid}.budget-suggestion-panel div{gap:.15rem;display:grid}.income-streams{gap:.65rem;display:grid}.income-streams .section-header{margin-bottom:0}.income-streams .section-header>div{gap:.15rem;display:grid}.income-stream-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(8rem,1fr) minmax(8rem,.85fr) minmax(7rem,.7fr) repeat(2,minmax(6rem,.55fr)) auto;align-items:end;gap:.55rem;padding:.7rem;display:grid}.income-stream-custom-dates,.income-stream-summary{grid-column:1/-1}.income-stream-summary{color:var(--muted)}.planner-paychecks,.planner-payment-plan{gap:.65rem;margin-top:.9rem;display:grid}.planner-payment-plan .section-header{align-items:center;margin-bottom:0}.planner-payment-plan-table{max-height:none}.planner-event-filter{background:var(--bg);border:1px solid var(--border);border-radius:8px;gap:.2rem;padding:.2rem;display:flex}.planner-event-filter button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:.38rem .65rem}.planner-event-filter button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #1421191f}.planner-event-type{border-radius:999px;padding:.18rem .42rem;font-size:.72rem;font-weight:700;display:inline-block}.planner-event-funding{color:#245f99;background:#e8f2ff}.planner-event-payment{color:var(--accent);background:#edf5ef}.planner-coverage-pill{white-space:nowrap;border-radius:999px;padding:.18rem .42rem;font-size:.72rem;font-weight:700;line-height:1.15;display:inline-block}.planner-coverage-covered{color:#14643f;background:#f5fbf6}.planner-coverage-late{color:#805b16;background:#fffaf0}.planner-coverage-short{color:var(--danger);background:#fff7f7}.planner-coverage-extra{color:#24506f;background:#edf5ff}.planner-coverage-warning{background:#fffaf0;border:1px solid #f1dfb8;border-radius:8px;gap:.45rem;padding:.7rem;display:grid}.planner-coverage-warning ul{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.planner-coverage-warning li{gap:.1rem;display:grid}.planner-scenarios{gap:.65rem;margin-top:.9rem;display:grid}.planner-scenarios .section-header{margin-bottom:0}.planner-scenario-table{max-height:none}.planner-scenario-table td>div{gap:.12rem;min-width:0;display:grid}.planner-scenario-table td[data-label=Payoff]{gap:.12rem;display:grid}.planner-scenario-current{background:#f5fbf6}.planner-scenario-current td:first-child{border-left:3px solid var(--accent)}.planner-reverse-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.planner-reverse-card{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;padding:.7rem;display:grid}.planner-reverse-card>div{gap:.18rem;min-width:0;display:grid}.planner-reverse-card small{color:var(--muted);font-weight:700}.planner-reverse-card span{color:var(--muted);font-size:.82rem}.planner-reverse-card button{white-space:nowrap;align-self:center}.planner-reverse-impossible,.planner-reverse-target_unreachable,.planner-reverse-underfunded,.planner-reverse-non_amortizing,.planner-reverse-infeasible{background:#fff7f7}.planner-reverse-ready,.planner-reverse-already_paid,.planner-reverse-paid_off{background:#f5fbf6}.planner-saved-scenarios{border:1px solid var(--border);border-radius:8px;gap:.5rem;padding:.7rem;display:grid}.planner-saved-scenarios ul{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.planner-saved-scenarios li{background:#f7f8f5;border:1px solid #edf0ec;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.45rem .55rem;display:grid}.planner-saved-scenarios li>div,.planner-engine-status,.planner-engine-status>div{gap:.15rem;display:grid}.planner-engine-status{background:#f5fbf6;border:1px solid #cfe5d5;border-radius:8px;gap:.55rem;margin:.8rem 0;padding:.75rem}.planner-engine-underfunded,.planner-engine-infeasible,.planner-engine-shortfall{background:#fff7f7;border-color:#efcaca}.planner-engine-status ul{margin:0;padding-left:1.2rem}.planner-engine-shortfall{border:1px solid #efcaca;border-radius:6px;padding:.55rem}.planner-unified-table,.planner-authoritative-timeline{margin-top:.9rem}.planner-payment-allocation{border:1px solid var(--border);border-radius:8px;gap:.7rem;margin-top:.9rem;padding:.75rem}.planner-payment-allocation summary{cursor:pointer;font-weight:700}.planner-payment-allocation summary span{vertical-align:middle;gap:.15rem;margin-left:.25rem;display:inline-grid}.planner-payment-allocation summary small{color:var(--muted);font-weight:400}.planner-payment-allocation[open] .planner-allocation-details-table{margin-top:.7rem}.planner-upcoming{gap:.65rem;margin-top:.9rem;display:grid}.planner-upcoming .section-header{margin-bottom:0}.planner-calendar-layout{grid-template-columns:minmax(18rem,.85fr) minmax(20rem,1.15fr);align-items:start;gap:.85rem;display:grid}.planner-upcoming-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.planner-upcoming-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.7rem;display:grid}.planner-upcoming-heading{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.planner-upcoming-row>div:first-child{gap:.16rem;min-width:0;display:grid}.planner-upcoming-actions{align-content:start;justify-items:end;gap:.35rem;display:grid}.planner-upcoming-actions button{min-height:1.9rem;padding:.22rem .5rem}.planner-event-chips{flex-wrap:wrap;gap:.3rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.planner-event-chips li,.planner-calendar-item{color:#39413c;background:#eef3ef;border-radius:999px;padding:.18rem .38rem;font-size:.72rem;font-weight:700;line-height:1.15}.planner-calendar{border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.planner-calendar-weekday,.planner-calendar-day{border-bottom:1px solid #edf0ec;border-right:1px solid #edf0ec;min-width:0;padding:.45rem}.planner-calendar-weekday:nth-child(7n),.planner-calendar-day:nth-child(7n){border-right:0}.planner-calendar-weekday{color:var(--muted);text-align:center;background:#f7f8f5;font-size:.72rem}.planner-calendar-day{align-content:start;gap:.25rem;min-height:6.5rem;display:grid}.planner-calendar-day>strong{color:var(--muted);font-size:.76rem}.planner-calendar-empty{background:#fbfaf7}.planner-calendar-planned{color:#24506f;background:#edf5ff}.planner-calendar-actual,.planner-status-paid{background:#f5fbf6}.planner-calendar-actual{color:#14643f}.planner-status-due_soon{background:#fffaf0}.planner-status-underpaid,.planner-status-missed{background:#fff7f7}.planner-paychecks .section-header{margin-bottom:0}.planner-warning{display:block}.planner-paycheck-table{max-height:none}.paycheck-source-list,.paycheck-minimum-list,.paycheck-payment-list{gap:.28rem;margin:0;padding:0;list-style:none;display:grid}.paycheck-source-list li,.paycheck-minimum-list li,.paycheck-payment-list li{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.5rem;display:grid}.paycheck-minimum-list li{gap:.25rem .45rem}.paycheck-minimum-list small{color:var(--muted);grid-column:2}.paycheck-payment-list li div{gap:.12rem;min-width:0;display:grid}.planner-paycheck-table td[data-label=Available],.planner-paycheck-table td[data-label=Min\ Left],.planner-paycheck-table td[data-label=Carry]{white-space:nowrap}.planner-allocation{gap:.65rem;margin-top:.9rem;display:grid}.planner-allocation .section-header{margin-bottom:0}.planner-allocation-table{max-height:none}.planner-allocation-table td>div{gap:.12rem;min-width:0;display:grid}.planner-allocation-target{background:#f5fbf6}.planner-allocation-target td:first-child{border-left:3px solid var(--accent)}.modal-backdrop{z-index:40;background:#1a1f1c6b;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:min(100%,720px);max-width:720px;max-height:min(760px,100vh - 2rem);padding:.95rem;overflow:auto;box-shadow:0 24px 70px #1a1f1c3d}.modal-panel .debt-form{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.debt-form-section,.debt-form-advanced{border:1px solid var(--border);border-radius:10px;padding:.8rem}.debt-form-section-heading{gap:.12rem;margin-bottom:.7rem;display:grid}.debt-form-section-heading h3{margin:0}.debt-form-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.debt-form-section-grid>.field-stack{align-content:start;align-self:start;width:100%}.debt-form-section-grid>.field-stack>input,.debt-form-section-grid>.field-stack>select{height:2.2rem}.debt-form-section-grid .debt-form-wide{grid-column:1/-1}.debt-field-source{color:var(--accent)}.debt-form-advanced summary{cursor:pointer;gap:.12rem;font-weight:750;display:grid}.debt-form-advanced summary small{color:var(--muted);font-weight:500}.debt-form-advanced[open] summary{border-bottom:1px solid var(--border);margin-bottom:.75rem;padding-bottom:.7rem}.debt-form-wide{grid-column:1/-1}.modal-actions{align-self:end}.metric-grid{gap:.75rem;display:grid}@media (min-width:720px){.account-layout{grid-template-columns:minmax(10rem,13rem) minmax(0,1fr);align-items:start;gap:1rem}.account-institution-sidebar{border-right:1px solid var(--border);align-self:start;gap:.25rem;padding-right:.75rem;display:grid;position:sticky;top:.75rem}.account-institution-sidebar button{color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;place-items:start;gap:.15rem;width:100%;padding:.55rem .6rem;display:grid}.account-institution-sidebar button:hover,.account-institution-sidebar button:focus-visible{border-color:var(--border);background:#f8faf8}.account-institution-sidebar button.active{background:#eef3ef;border-color:#d6ded7}.account-institution-sidebar span{font-weight:800}.account-institution-sidebar small{color:var(--muted);font-weight:600}.account-institution-group.is-desktop-hidden{display:none}.account-institution-header{cursor:default;pointer-events:none}.account-institution-chevron{display:none}.account-institution-body{display:grid}.account-card-layout{grid-template-columns:minmax(0,1fr) minmax(16rem,.42fr);align-items:start}.account-card-controls{align-content:start}.account-name-edit-trigger{cursor:text;pointer-events:auto}.account-name-edit-trigger:hover strong,.account-name-edit-trigger:focus-visible strong{text-underline-offset:.18rem;text-decoration:underline;text-decoration-thickness:1px}.account-name-edit-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}}.spreadsheet-wrap{border:1px solid var(--border);border-radius:8px;max-height:70vh;overflow:auto}.spreadsheet{border-collapse:separate;border-spacing:0;width:100%;font-size:.88rem}.spreadsheet th{border-bottom:1px solid var(--border);color:#39413c;z-index:1;background:#eef3ef;font-size:.76rem;position:sticky;top:0}.spreadsheet th,.spreadsheet td{border-right:1px solid var(--border);vertical-align:middle;padding:.28rem .45rem}.spreadsheet td{border-bottom:1px solid #edf0ec}.spreadsheet th:last-child,.spreadsheet td:last-child{border-right:0}.spreadsheet tbody tr:hover{background:#fbfcf8}.spreadsheet select{width:100%;min-height:1.8rem;padding:.2rem .35rem}.sortable{font-size:inherit;background:0 0;border:0;padding:0;font-weight:700}.transaction-filter-shell,.transaction-table-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.transaction-table-tools{margin-bottom:.65rem}.transaction-table-header{gap:.55rem;margin-bottom:.65rem;display:grid}.transaction-result-count{font-weight:700}.transaction-search{min-width:min(18rem,100%)}.transaction-filter-toggle,.transaction-mobile-summary,.transaction-rule-actions-mobile{display:none}.transaction-rule-actions-desktop{flex-wrap:wrap;gap:.35rem;margin-top:.35rem;display:flex}.transaction-open-button{text-align:left;white-space:normal;background:0 0;border:0;justify-items:start;gap:.12rem;min-height:auto;padding:0;display:grid}.transaction-open-button span{font-weight:700}.transaction-link-badge{color:#39413c;background:#eef3ef;border:1px solid #dce5dd;border-radius:999px;padding:.18rem .4rem;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.transaction-pending-marker,.transaction-inline-status{margin-top:.12rem;display:block}.transaction-category-suggestion{background:#f4faf4;border:1px solid #d9ead9;border-radius:8px;gap:.35rem;margin-bottom:.35rem;padding:.4rem;display:grid}.transaction-category-suggestion div,.transaction-detail-suggestion div:last-child{flex-wrap:wrap;gap:.35rem;display:flex}.transaction-category-suggestion button{min-height:1.8rem;padding:.18rem .45rem}.transaction-detail-modal{gap:.85rem;display:grid}.transaction-detail-heading{border-bottom:1px solid #edf0ec;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;padding-bottom:.75rem;display:grid}.transaction-detail-heading div,.transaction-detail-summary div{gap:.15rem;min-width:0;display:grid}.transaction-detail-summary{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.65rem;display:grid}.transaction-detail-list{border-top:1px solid #edf0ec;border-bottom:1px solid #edf0ec;display:grid}.transaction-detail-list div{border-bottom:1px solid #edf0ec;grid-template-columns:minmax(7rem,.34fr) minmax(0,1fr);align-items:start;gap:.65rem;padding:.55rem 0;display:grid}.transaction-detail-list div:last-child{border-bottom:0}.transaction-detail-list p{gap:.12rem;min-width:0;margin:0;display:grid}.transaction-detail-list span{color:var(--muted);font-size:.86rem}.transaction-transfer-panel{border:1px solid var(--border);background:#fbfcf8;border-radius:8px;grid-template-columns:minmax(0,1fr);align-items:start;gap:.75rem;padding:.65rem;display:grid}.transaction-transfer-panel>div:first-child,.transaction-transfer-panel p{gap:.12rem;min-width:0;margin:0;display:grid}.transaction-transfer-panel span{color:var(--muted);font-size:.86rem}.transaction-transfer-controls{grid-template-columns:minmax(12rem,22rem) auto;justify-content:start;align-items:center;gap:.45rem;max-width:100%;display:grid}.transaction-transfer-controls select{width:100%}.transaction-transfer-controls small{grid-column:1/-1}.transaction-transfer-linked-actions{flex-wrap:wrap;justify-content:start;gap:.45rem;display:flex}.transaction-detail-actions{justify-items:start;gap:.45rem;display:grid}.transaction-detail-suggestion{background:#f4faf4;border:1px solid #d9ead9;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.65rem;display:grid}.transaction-detail-suggestion div:first-child{gap:.12rem;display:grid}.transaction-rule-link{width:auto;min-height:2.35rem}.mobile-action-bar,.mobile-sheet,.mobile-sheet-backdrop,.transaction-mobile-action-bar,.transaction-mobile-pagination,.transaction-mobile-sheet,.transaction-filter-sheet-header,.transaction-update-toast{display:none}.text-action{color:var(--accent);background:0 0;border:0;min-height:auto;padding:.2rem 0;font-weight:700}.text-action:hover{text-decoration:underline}.text-action:focus-visible,.transaction-open-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.transaction-detail-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;display:grid}.transaction-detail-header h2{margin:0;font-size:1.05rem}@media (max-width:720px){body{font-size:14px}main{padding:.75rem .65rem 2rem}.page-title{gap:.25rem;margin-bottom:.55rem}.page-title h1{margin-bottom:0;font-size:1.35rem}.page-subtitle{display:none}.app-header{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.6rem;padding:.65rem;display:grid}.brand{min-height:2rem}.app-nav{flex:none;order:2;grid-area:1/2;justify-self:end;position:relative;overflow:visible}.app-menu-toggle{place-items:center;gap:.22rem;width:2.1rem;height:2.1rem;padding:.35rem;display:inline-grid}.app-menu-toggle span{background:var(--ink);border-radius:999px;width:1.05rem;height:2px;display:block}.app-nav-panel{background:var(--surface);border:1px solid var(--border);white-space:normal;z-index:30;border-radius:8px;gap:.2rem;min-width:min(16rem,100vw - 1.3rem);padding:.35rem;display:none;position:absolute;top:calc(100% + .45rem);right:0;overflow:hidden;box-shadow:0 16px 40px #1a1f1c24}.app-nav-panel.open{display:grid}.app-nav-panel a{width:100%;padding:.6rem .65rem}.app-toolbar{flex-wrap:wrap;flex:0 auto;grid-area:1/3;width:auto;min-width:0;margin-left:0}.sync-panel.compact{min-width:0}.app-header .sync-panel.compact .status-pill,.sync-panel.compact .sync-message{display:none}.section-header{gap:.65rem;display:grid}.card{padding:.75rem}.section-tabs{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.section-tabs a{min-height:2.75rem;padding:.7rem .5rem}.toolbar,.connect-teller,.field-inline,.form-actions{grid-template-columns:1fr;align-items:stretch;width:100%;display:grid}.toolbar>*,.connect-teller>*,.field-inline>*,.form-actions>*,.button-link,button,input,select{width:100%;max-width:100%}.app-header .app-menu-toggle,.app-header .app-toolbar,.app-header .app-toolbar>*,.app-header .app-toolbar button,.app-header .app-toolbar .button-link{width:auto}.connect-teller{place-items:start}.connect-teller>button{justify-self:start;width:fit-content}.connect-teller-status{justify-self:stretch;width:auto;max-width:100%}.field-inline{gap:.25rem}.account-main,.budget-row-main{align-items:start;display:grid}.account-main{grid-template-columns:minmax(0,1fr) auto}.account-list-card{background:0 0;border:0;padding:0}.account-stats div{min-width:0}.account-stats strong{overflow-wrap:anywhere}.account-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.account-main .status-pill{justify-self:end}.account-row .account-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.account-budget-treatment{grid-template-columns:1fr;align-items:start}.account-row{padding:.6rem}.card-action-menu summary{width:2.75rem}.card-action-menu>div{width:min(11rem,100vw - 3.5rem)}.rule-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}.rules-page .grid.cols-2-uneven,.review-page .grid.cols-2{gap:.75rem}.rule-manager-header,.rule-card-heading{align-items:start}.rule-preview-heading{align-items:stretch;display:grid}.rule-preview-heading button{width:100%}.rule-form-modal{border-bottom-right-radius:0;border-bottom-left-radius:0;max-height:calc(100dvh - .5rem)}.rule-form-heading{align-items:start}.rule-builder-header{grid-template-columns:minmax(0,1fr) auto}.rule-condition-row{grid-template-columns:1fr}.rule-condition-heading{grid-column:1}.rule-builder-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.rule-builder-actions .field-stack{grid-column:1/-1}.rules-manager input,.rules-manager select,.rules-manager button{min-height:2.75rem}.rule-row{cursor:default}.review-queue{padding:0 0 calc(4.5rem + env(safe-area-inset-bottom));background:0 0;border:0}.review-manager-header{gap:.35rem}.review-manager-header small,.review-status{font-size:.72rem;line-height:1.25}.review-status{margin-top:.3rem}.review-manager-header>.toolbar{display:none}.review-workbench{grid-template-columns:minmax(0,1fr);gap:.5rem;margin-top:.45rem;display:grid}.review-group-sidebar{display:none}.review-mobile-group-switcher{display:block}.review-mobile-group-switcher .field-stack{gap:.2rem}.review-mobile-group-switcher select{min-height:2rem}.review-group-panel,.review-queue-section{min-width:0}.review-section-header{align-items:center;gap:.45rem;display:flex}.review-section-header h3{margin-bottom:.1rem;font-size:1rem}.review-section-header small{display:none}.review-selection-actions button{width:auto;min-height:1.9rem;padding:.15rem .45rem;font-size:.78rem}.review-group-toolbar{align-items:center;gap:.45rem;margin-top:.35rem;display:flex}.review-group-toolbar small{font-size:.72rem}.review-group-toolbar>div{justify-content:flex-end;gap:.3rem;display:flex}.review-group-toolbar button{width:auto;min-height:1.9rem;padding:.15rem .45rem;font-size:.78rem}.review-list{border:0;gap:.45rem;margin-top:.45rem;overflow:visible}.review-row{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"select main actions""select category actions";gap:.08rem .55rem;padding:.45rem .6rem}.review-row:last-child{border-bottom:1px solid var(--border)}.review-row.has-suggestion{background:#fff}.review-row-select input{flex:none;width:1rem;min-height:1rem;margin-top:.1rem}.review-row-select{grid-area:select;padding-top:.05rem}.review-item-main{grid-area:main;gap:.05rem}.review-item-main strong{font-size:.86rem;line-height:1.25}.review-item-main strong,.review-item-main small{overflow-wrap:anywhere;line-height:1.25}.review-row-category{grid-area:category;justify-self:start;width:100%;max-width:min(11rem,100%);margin-top:.35rem;display:block}.review-row:not(.has-suggestion) .review-row-category{max-width:min(11rem,100%)}.review-row-category span{display:none}.review-row-category select{text-overflow:ellipsis;width:100%;min-height:1.95rem;padding:.16rem .35rem;font-size:.78rem}.review-recommendation-summary{text-align:left;background:#f4faf4;border:1px solid #d9ead9;border-radius:8px;gap:.12rem;max-width:min(15rem,58vw);padding:.35rem;font-size:.72rem;display:grid}.review-recommendation-summary small{font-size:.72rem;line-height:1.25;display:block}.review-recommendation-summary small:first-child:before{margin-right:.25rem}.review-row-actions{grid-area:actions;align-self:stretch;justify-items:stretch;gap:.3rem;display:grid}.review-recommendation-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-self:end;gap:.3rem;display:grid}.review-recommendation-actions button{width:100%;min-height:1.95rem;padding:.15rem .45rem;font-size:.8rem}.budget-summary,.debt-summary,.account-stats,.debt-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-actions{flex-direction:column;justify-content:stretch;align-items:stretch;width:100%;display:flex}.budget-month-nav{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.budget-month-nav>*{width:100%}.budget-month-nav button:last-child{grid-column:1/-1}.budget-plan-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-allocation-form{grid-template-columns:minmax(0,1fr) minmax(7rem,.65fr);gap:.5rem;display:grid}.budget-allocation-form>*{width:100%}.budget-allocation-form .primary{grid-column:1/-1}.budget-move-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.budget-amount-actions{grid-template-columns:minmax(0,1fr) auto auto;display:grid}.budget-amount-actions input,.budget-move-actions button,.budget-amount-actions button{width:100%}.debt-row-main{align-items:start;display:grid}.debt-row-main .status-pill{justify-self:start}.debt-stats div{min-width:0}.debt-stats strong{overflow-wrap:anywhere}.debt-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.debt-payment-form{grid-template-columns:1fr;display:grid}.debt-payment-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}.debt-payment-list button{width:auto;margin-top:0}.debt-modal-header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.debt-modal-header button{width:auto}.debt-planner-form{grid-template-columns:1fr;display:grid}.debt-planner-form>*{width:100%}.budget-suggestion-panel{grid-template-columns:1fr;align-items:start}.planner-calendar-layout,.planner-reverse-grid,.planner-reverse-card{grid-template-columns:1fr}.planner-reverse-card button{width:100%}.planner-upcoming-row{grid-template-columns:1fr;align-items:start}.planner-upcoming-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:stretch}.planner-upcoming-actions button{width:100%}.planner-calendar{font-size:.78rem}.planner-calendar-weekday,.planner-calendar-day{padding:.28rem}.planner-calendar-day{min-height:4.7rem}.planner-calendar-item{border-radius:6px;padding:.12rem .2rem;font-size:.64rem}.income-stream-row{grid-template-columns:1fr;align-items:stretch}.income-stream-row button{width:100%}.planner-paycheck-table .spreadsheet tr{grid-template-columns:minmax(0,1fr) minmax(6rem,auto)}.planner-paycheck-table .spreadsheet td[data-label=Pay\ Date],.planner-paycheck-table .spreadsheet td[data-label=Planned\ Payments]{grid-column:1/-1}.planner-paycheck-table .spreadsheet td[data-label=Pay\ Date]:before,.planner-paycheck-table .spreadsheet td[data-label=Planned\ Payments]:before{display:none}.planner-paycheck-table .spreadsheet td:before{color:var(--muted);content:attr(data-label);font-size:.72rem;font-weight:700;display:block}.planner-payment-plan-table .spreadsheet tr{grid-template-columns:minmax(0,1fr) minmax(6rem,auto)}.planner-payment-plan-table .spreadsheet td[data-label="Debt or Source"],.planner-payment-plan-table .spreadsheet td[data-label=Amount]{grid-column:1/-1}.planner-payment-plan-table .spreadsheet td[data-label="Debt or Source"]:before,.planner-payment-plan-table .spreadsheet td[data-label=Amount]:before{display:none}.planner-payment-plan-table .spreadsheet td:before{color:var(--muted);content:attr(data-label);font-size:.72rem;font-weight:700;display:block}.planner-scenario-table .spreadsheet tr{grid-template-columns:minmax(0,1fr) minmax(6rem,auto)}.planner-scenario-table .spreadsheet td[data-label=Scenario],.planner-scenario-table .spreadsheet td[data-label=Payoff]{grid-column:1/-1}.planner-scenario-table .spreadsheet td[data-label=Scenario]:before,.planner-scenario-table .spreadsheet td[data-label=Payoff]:before{display:none}.planner-scenario-table .spreadsheet td:before{color:var(--muted);content:attr(data-label);font-size:.72rem;font-weight:700;display:block}.planner-allocation-table .spreadsheet tr{grid-template-columns:minmax(0,1fr) minmax(6rem,auto)}.planner-allocation-table .spreadsheet td[data-label=Debt],.planner-allocation-table .spreadsheet td[data-label=Planned]{grid-column:1/-1}.planner-allocation-table .spreadsheet td[data-label=Debt]{margin-bottom:.15rem}.planner-allocation-table .spreadsheet td[data-label=Debt]:before,.planner-allocation-table .spreadsheet td[data-label=Planned]:before{display:none}.planner-allocation-table .spreadsheet td:before{color:var(--muted);content:attr(data-label);font-size:.72rem;font-weight:700;display:block}.budget-transaction-list li{grid-template-columns:1fr;align-items:start}.modal-backdrop{align-items:end;padding:.5rem}.modal-panel{max-height:calc(100dvh - 1rem);padding:.8rem}.review-similar-modal{align-content:start;width:min(100%,36rem);min-height:50dvh}.modal-panel .debt-form,.debt-form-section-grid{grid-template-columns:1fr}.planner-monthly-payment{grid-template-columns:1fr;align-items:stretch}.spreadsheet-wrap{border:0;max-height:none;overflow:visible}.transaction-filter-shell{grid-template-columns:minmax(0,1fr);gap:.4rem;width:100%;display:grid}.transaction-table-card{padding:0 0 calc(4.5rem + env(safe-area-inset-bottom));background:0 0;border:0}.transaction-table-header{gap:.4rem;margin-bottom:.5rem}.transaction-result-count{font-size:.78rem}.transaction-search{min-width:0}.transaction-filter-toggle,.transaction-filters{display:none}.transaction-filters.open{background:var(--surface);border:1px solid var(--border);bottom:calc(3.4rem + env(safe-area-inset-bottom));z-index:42;border-radius:8px 8px 0 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;width:auto;max-height:min(70dvh,34rem);margin:0;padding:.65rem;display:grid;position:fixed;left:.5rem;right:.5rem;overflow-y:auto;box-shadow:0 -16px 40px #1a1f1c29}.transaction-filter-sheet-header{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-bottom:.15rem;display:grid}.transaction-filter-sheet-header div{gap:.7rem;display:flex}.transaction-filter-sheet-header button{width:auto}.transaction-filters .field-inline{align-content:start;gap:.2rem}.transaction-detail-header .text-action{width:auto}.transaction-table-tools,.transaction-table-tools.open{display:none}.transaction-bulk-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.transaction-bulk-actions .primary,.transaction-bulk-actions small{grid-column:1/-1}.transaction-pagination{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.transaction-pagination small{grid-column:1/-1}.transaction-pagination select,.transaction-pagination.single-page{display:none}.mobile-action-bar{border-top:1px solid var(--border);padding:.65rem .75rem calc(.65rem + env(safe-area-inset-bottom));z-index:41;background:#fffdfaf7;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:.35rem;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #1a1f1c1f}.transaction-mobile-action-bar.selection{grid-template-columns:auto repeat(3,minmax(0,1fr))}.review-mobile-action-bar{grid-template-columns:auto repeat(4,minmax(0,1fr));gap:.2rem}.mobile-action-bar strong{white-space:nowrap;font-size:.74rem}.mobile-action-bar button{justify-self:center;width:auto;min-height:2.25rem;padding-inline:.2rem;font-size:.74rem}.mobile-sheet{background:var(--surface);border:1px solid var(--border);bottom:calc(3.4rem + env(safe-area-inset-bottom));z-index:42;border-radius:8px 8px 0 0;gap:.65rem;padding:.7rem;position:fixed;left:.5rem;right:.5rem;box-shadow:0 -16px 40px #1a1f1c29}.mobile-sheet.open{display:grid}.review-category-sheet{grid-template-columns:minmax(0,1fr) auto}.review-category-sheet .mobile-sheet-header{grid-column:1/-1}.review-category-sheet button.primary{align-self:end;width:auto;min-height:2.5rem}.transaction-mobile-sheet select,.transaction-mobile-sheet button,.transaction-filters.open select,.transaction-filters.open input,.transaction-filter-sheet-header button{min-height:2.5rem}.mobile-sheet-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.mobile-sheet-header button{width:auto}.transaction-sort-sheet{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-sort-sheet .mobile-sheet-header{grid-column:1/-1}.transaction-category-sheet{grid-template-columns:minmax(0,1fr) auto}.transaction-category-sheet .mobile-sheet-header{grid-column:1/-1}.transaction-category-sheet button.primary{width:auto}.mobile-sheet-backdrop{z-index:40;background:#1a1f1c38;border:0;width:100%;padding:0;display:block;position:fixed;inset:0}.transaction-mobile-pagination{text-align:center;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;margin-top:.65rem;display:grid}.transaction-mobile-pagination button{width:auto;min-height:2.5rem}.transaction-update-toast{bottom:calc(4.4rem + env(safe-area-inset-bottom));color:#fff;white-space:nowrap;z-index:39;background:#1a1f1c;border-radius:8px;max-width:calc(100vw - 2rem);padding:.5rem .7rem;font-size:.8rem;display:block;position:fixed;left:50%;transform:translate(-50%)}.spreadsheet,.spreadsheet thead,.spreadsheet tbody,.spreadsheet tr,.spreadsheet th,.spreadsheet td{width:100%;display:block}.spreadsheet thead{width:1px;height:1px;position:absolute;overflow:hidden}.spreadsheet tbody{gap:.45rem;display:grid}.spreadsheet tr{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:.08rem .55rem;padding:.45rem .6rem;display:grid}.spreadsheet tbody tr:hover{background:#fff}.spreadsheet td{text-align:left;border:0;align-items:start;padding:0;display:block}.spreadsheet td:before,.spreadsheet td[data-label=Select]{display:none}.spreadsheet td[data-label=Select] input{width:auto;min-height:auto}.spreadsheet td[data-label=Description]{grid-area:1/1}.spreadsheet td[data-label=Description] .transaction-open-button{color:inherit;width:100%;min-height:2.5rem}.spreadsheet td[data-label=Description] .transaction-open-button span{text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.spreadsheet td[data-label=Date]{grid-area:2/1;font-size:.78rem}.spreadsheet td[data-label=Account]{display:none}.spreadsheet td[data-label=Amount]{text-align:right;white-space:nowrap;grid-area:1/2;font-weight:800}.spreadsheet td[data-label=Category]{text-align:right;grid-area:2/2;justify-self:end;gap:.35rem;margin-top:0;display:grid}.spreadsheet td[data-label=Category] select{text-overflow:ellipsis;width:auto;max-width:min(10rem,46vw);min-height:2.25rem;padding:.16rem .35rem}.transaction-category-suggestion{text-align:left;max-width:min(14rem,58vw)}.transaction-table-card.selection-mode .spreadsheet tr{grid-template-columns:auto minmax(0,1fr) auto}.transaction-table-card.selection-mode .spreadsheet td[data-label=Select]{grid-area:1/1/span 2;align-items:center;padding-top:.1rem;display:flex}.transaction-table-card.selection-mode .spreadsheet td[data-label=Description],.transaction-table-card.selection-mode .spreadsheet td[data-label=Date]{grid-column:2}.transaction-table-card.selection-mode .spreadsheet td[data-label=Amount]{grid-column:3}.transaction-table-card.selection-mode .spreadsheet td[data-label=Category]{grid-area:2/3}.spreadsheet td>div,.spreadsheet td small{overflow-wrap:anywhere;min-width:0}.transaction-rule-actions-desktop{display:none}.transaction-detail-backdrop{z-index:43;align-items:end;padding:0}.transaction-detail-modal{max-width:none;max-height:min(82dvh,46rem);padding:.85rem .85rem calc(.85rem + env(safe-area-inset-bottom));border-bottom-right-radius:0;border-bottom-left-radius:0;width:100%}.transaction-detail-heading{gap:.55rem;padding-bottom:.6rem}.transaction-detail-summary{grid-template-columns:1fr}.transaction-detail-list div{grid-template-columns:1fr;gap:.35rem}.transaction-detail-actions{grid-template-columns:1fr;justify-items:stretch}.transaction-rule-link{width:100%}.debt-summary-band{margin-bottom:.65rem}.debt-workspace{grid-template-columns:1fr}.debt-workspace-mode{justify-self:stretch;width:100%}.debt-workspace-sidebar{max-height:none;display:none;position:static}.debt-workspace-sidebar-active{display:grid}.debt-workspace-nav{scrollbar-width:none;z-index:8;position:sticky;top:.35rem}.debt-workspace-nav::-webkit-scrollbar{display:none}.debt-workspace-nav button{flex:none;width:auto;min-height:2.75rem;padding-inline:.75rem;font-size:.78rem}.debt-tracker button,.debt-tracker input,.debt-tracker select{min-height:2.75rem}.debt-planner-workspace{padding:.75rem}.debt-planner-view-schedule .debt-planner-form{display:grid}}
