@font-face{font-family:Inter;src:url(/fonts/inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-latin-wght-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/playfair-display-latin-wght-normal.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}:root{color-scheme:light;--bg: #f3f6f6;--surface: #ffffff;--surface-2: #f7f9f9;--ink: #152526;--muted: #667777;--line: #dce5e4;--teal-950: #053f42;--teal-800: #07696d;--teal-700: #087f83;--teal-100: #d8eeee;--blue: #3978b9;--purple: #6653a4;--amber: #d97a1c;--yellow: #f2cd23;--red: #c83a3a;--green: #31815f;--logo-red: #ec1c34;--logo-orange: #f27a1a;--logo-yellow: #f0cf00;--logo-green: #3fa64a;--logo-teal: #009494;--logo-blue: #3263ab;--logo-purple: #6a46a2;--tint-light: 4%;--tint-strong: 14%;--shadow: 0 14px 40px rgba(16, 52, 54, .08);--radius: 20px;--sidebar: 246px}[data-theme=dark]{color-scheme:dark;--bg: #081314;--surface: #102123;--surface-2: #14282a;--ink: #f3f8f7;--muted: #a9bcba;--line: #284143;--teal-950: #d8f4f1;--teal-800: #53c4bf;--teal-700: #39aaa8;--teal-100: #163f41;--tint-light: 6%;--tint-strong: 17%;--logo-yellow: #f7a800;--shadow: 0 18px 55px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a,button{-webkit-tap-highlight-color:transparent}.skip-link{position:fixed;left:12px;top:-80px;z-index:100;background:var(--surface);color:var(--ink);padding:10px 14px;border-radius:8px}.skip-link:focus{top:12px}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:22px 16px;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--line);z-index:20}.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 24px}.brand-mark{width:60px;height:60px;display:grid;place-items:center;flex:0 0 auto}.brand-mark img{width:100%;height:100%;object-fit:contain}.brand-mark .logo-for-dark,.auth-logo.logo-for-dark,[data-theme=dark] .brand-mark .logo-for-light,[data-theme=dark] .auth-logo.logo-for-light{display:none}[data-theme=dark] .brand-mark .logo-for-dark,[data-theme=dark] .auth-logo.logo-for-dark{display:block}.brand-kicker{display:block;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.brand-name{display:block;font-size:24px;line-height:1.15;font-weight:800;color:var(--teal-950)}.nav-list{display:grid;gap:5px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;padding:11px 12px;border:0;border-radius:12px;background:transparent;color:var(--muted);font-weight:650;text-align:left;cursor:pointer}.nav-item span{width:22px;display:inline-grid;place-items:center;font-size:18px}.nav-item:hover{background:var(--surface-2);color:var(--ink)}.nav-item.is-active{background:var(--teal-100);color:var(--teal-800)}.sidebar-foot{margin-top:auto;display:grid;gap:10px}.sidebar-import-button{width:100%;min-height:36px;display:flex;align-items:center;justify-content:center;gap:7px;padding:6px 10px;border:0;border-radius:10px;background:var(--teal-700);color:#fff;font-size:13px;font-weight:760;box-shadow:0 5px 14px #087f832e}.sidebar-import-button:hover{background:var(--teal-800)}.sidebar-import-button span{font-size:15px}.sidebar-status{display:grid;gap:5px}.sync-state{margin:0 11px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:7px;text-align:center}.sync-dot{width:8px;height:8px;border-radius:50%;background:var(--amber)}.sidebar-clock{margin:0 11px 1px;color:var(--muted);font-size:13px;font-weight:680;font-variant-numeric:tabular-nums;text-align:center}.app-main{margin-left:var(--sidebar);min-height:100vh}.topbar{min-height:90px;padding:18px clamp(22px,4vw,54px);display:flex;align-items:center;justify-content:space-between;background:color-mix(in srgb,var(--bg) 90%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}.topbar h1{margin:2px 0 0;font-size:clamp(22px,2.3vw,32px);letter-spacing:-.035em;line-height:1.1}.eyebrow{margin:0;color:var(--muted);font-size:11px;font-weight:780;letter-spacing:.09em;text-transform:uppercase}.top-actions{display:flex;gap:10px;align-items:center}.icon-button,.avatar{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink)}.top-actions .icon-button{font-size:29px;line-height:1;font-weight:850}.theme-toggle{font-size:29px;font-weight:850}.avatar{border:0;border-radius:50%;background:var(--teal-800);color:#fff;font-size:12px;font-weight:800}.avatar{overflow:hidden;padding:0}.avatar img{width:100%;height:100%;object-fit:cover}.auth-pending .app-shell{visibility:hidden}.auth-ready .auth-gate{display:none}.auth-gate{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 10%,color-mix(in srgb,var(--teal-100) 72%,var(--bg)),var(--bg) 46%)}.auth-card{width:min(100%,460px);padding:30px;text-align:center;border:1px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:0 24px 80px #04373a2e}.auth-logo{display:block;width:168px;height:168px;object-fit:contain;margin:0 auto 18px}.auth-card h1{margin:0 0 18px;font-size:29px;letter-spacing:-.04em}.auth-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:5px;margin-bottom:18px;border-radius:14px;background:var(--surface-2)}.auth-tab{padding:9px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:750}.auth-tab.is-active{background:var(--surface);color:var(--teal-800);box-shadow:0 3px 12px #07696d1a}.auth-pane{display:none;gap:13px}.auth-pane.is-active{display:grid}.auth-pane label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.auth-pane input{width:100%;text-align:left;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink)}.auth-reset{justify-self:center}.auth-message{min-height:22px;margin:14px 0 0;color:var(--red);font-size:13px}.auth-message.success{color:var(--green)}.auth-use-another{margin-top:4px}#phone-code-panel{display:grid;gap:12px}.account-dialog{width:min(92vw,380px);border:1px solid var(--line);border-radius:20px;padding:22px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.account-dialog::backdrop{background:#02111285}.account-dialog-content{display:flex;align-items:center;gap:12px;margin-bottom:14px}.account-dialog-content img{width:48px;height:48px;border-radius:50%;object-fit:cover}.account-dialog-content strong,.account-dialog-content small{display:block}.account-dialog-content small,.account-dialog p{color:var(--muted)}.account-link-help{display:block;margin:-4px 0 12px;color:var(--muted);line-height:1.45}main{padding:0 clamp(22px,4vw,54px) 70px;max-width:1540px;margin:0 auto}.offline-banner{margin-bottom:18px;border:1px solid color-mix(in srgb,var(--blue) 45%,var(--line));border-radius:12px;padding:10px 14px;background:color-mix(in srgb,var(--blue) 10%,var(--surface));color:var(--muted);display:flex;align-items:center;gap:9px;font-size:13px}.offline-banner strong{color:var(--blue)}.view{display:none;animation:fade .2s ease}.view.is-active{display:block}@keyframes fade{0%{opacity:.25;transform:translateY(3px)}}.summary-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px;margin-bottom:16px}.metric-card{min-height:164px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);position:relative;overflow:hidden}.metric-card.primary{color:#fff;background:linear-gradient(135deg,#066e72,#07565b 65%,#174f70);border:0}.metric-card.primary:after{content:"";position:absolute;width:180px;height:180px;right:-55px;bottom:-90px;border-radius:50%;border:28px solid rgba(255,255,255,.08)}.metric-label{color:var(--muted);font-weight:650;font-size:13px}.primary .metric-label{color:#ffffffb8}.metric-value{margin:14px 0 5px;font-size:clamp(34px,4vw,48px);letter-spacing:-.055em;line-height:1;font-weight:800}.metric-note{margin:0;color:var(--muted);font-size:13px}.primary .metric-note{color:#ffffffbd}.trend{color:var(--green);font-weight:750}.primary .trend{color:#d9f67a}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px 14px}.panel-heading.compact{padding-bottom:8px}.panel-heading h2,.page-intro h2{margin:3px 0 0;font-size:21px;letter-spacing:-.025em}.text-button span{margin-left:4px}.panel-heading-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.upcoming-list{padding:0 10px 10px}.upcoming-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:12px;border-radius:14px}.upcoming-row+.upcoming-row{border-top:1px solid var(--line);border-radius:0}.status-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:850}.status-mark.missing{color:var(--red);background:color-mix(in srgb,var(--red) 12%,transparent)}.status-mark.due-soon{color:var(--amber);background:color-mix(in srgb,var(--amber) 12%,transparent)}.status-mark.pending{color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.status-mark.amount-needed{color:var(--purple);background:color-mix(in srgb,var(--purple) 12%,transparent)}.upcoming-copy{min-width:0}.upcoming-copy strong,.upcoming-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-copy small{color:var(--muted);margin-top:2px}.upcoming-amount{text-align:right}.upcoming-amount strong,.upcoming-amount small{display:block}.upcoming-amount small{color:var(--muted);font-size:11px;text-transform:capitalize;margin-top:2px}.next-payday-card{padding-bottom:18px}.tint,.auto-tint{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--tint) var(--tint-light),var(--surface)),color-mix(in srgb,var(--tint) var(--tint-strong),var(--surface)));border-color:color-mix(in srgb,var(--tint) 24%,var(--line))}.tint:after,.auto-tint:after{content:"";position:absolute;z-index:-1;width:170px;height:170px;right:-60px;bottom:-85px;border-radius:50%;border:26px solid color-mix(in srgb,var(--tint) 9%,transparent);pointer-events:none}.auto-tint{--tint: var(--logo-teal)}.auto-tint:nth-child(7n+2){--tint: var(--logo-blue)}.auto-tint:nth-child(7n+3){--tint: var(--logo-purple)}.auto-tint:nth-child(7n+4){--tint: var(--logo-red)}.auto-tint:nth-child(7n+5){--tint: var(--logo-orange)}.auto-tint:nth-child(7n+6){--tint: var(--logo-yellow)}.auto-tint:nth-child(7n+7){--tint: var(--logo-green)}.tint-red{--tint: var(--logo-red)}.tint-orange{--tint: var(--logo-orange)}.tint-yellow{--tint: var(--logo-yellow)}.tint-green{--tint: var(--logo-green)}.tint-teal{--tint: var(--logo-teal)}.tint-blue{--tint: var(--logo-blue)}.tint-purple{--tint: var(--logo-purple)}.rainbow-edge{position:relative}.rainbow-edge:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--logo-red),var(--logo-orange),var(--logo-yellow),var(--logo-green),var(--logo-teal),var(--logo-blue),var(--logo-purple))}.date-badge,.status-pill,.count-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:11px;font-weight:780;white-space:nowrap}.date-badge{padding:6px 9px;color:var(--teal-800);background:var(--teal-100)}.income-row{display:flex;justify-content:space-between;gap:10px;padding:9px 22px}.income-row.muted{color:var(--muted)}.income-row strong{text-align:right}.income-date{display:block;margin-top:2px;font-size:12px;font-weight:500}.next-payday-card hr{border:0;border-top:1px solid var(--line);margin:12px 22px 14px}.payday-caption{padding:0 22px;color:var(--muted);font-size:12px}.payday-amount{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:2px 22px 0;font-size:28px;font-weight:820;color:var(--teal-800)}.payday-allowance{padding-left:12px;border-left:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:500;line-height:1.3}.payday-allowance strong{color:var(--ink);font-weight:650}.period-meta.period-allowance{margin-top:3px;font-size:11px}.period-meta.period-allowance strong{font-size:11px;font-weight:650}.payday-balance-note{padding:2px 22px 0;color:var(--muted);font-size:11px;line-height:1.35}.period-panel{margin-bottom:16px;overflow:hidden}.period-strip{padding:0 22px 22px;display:grid;grid-template-columns:repeat(4,1fr)}.period-card{padding:13px 18px 11px;border-left:1px solid var(--line)}.period-card:first-child{border-left:0;padding-left:0}.period-card:last-child{padding-right:0}.period-date{display:flex;align-items:baseline;justify-content:space-between;gap:7px}.period-date strong{font-size:17px}.period-date span{color:var(--muted);font-size:11px}.period-bar{height:8px;border-radius:99px;overflow:hidden;background:var(--surface-2);margin:13px 0 11px}.period-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--teal-700),var(--blue));border-radius:inherit}.period-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.period-meta strong{color:var(--ink)}.savings-preview,.alert-preview{padding-bottom:20px}.status-pill{padding:6px 10px}.status-pill.teal{color:var(--teal-800);background:var(--teal-100)}.status-pill.amber{color:var(--amber);background:color-mix(in srgb,var(--amber) 12%,transparent)}.savings-balance{padding:4px 22px 0;font-size:36px;font-weight:830;letter-spacing:-.04em}.savings-track{height:9px;margin:14px 22px 10px;background:var(--surface-2);border-radius:99px;overflow:hidden}.savings-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal-700),var(--blue),var(--purple))}.savings-meta{display:flex;justify-content:space-between;padding:0 22px 16px;color:var(--muted);font-size:12px}.savings-meta strong{color:var(--ink)}.review-list{list-style:none;margin:0;padding:0 22px 13px}.review-list li{display:flex;align-items:center;gap:11px;padding:8px 0}.review-list strong,.review-list small{display:block}.review-list small{color:var(--muted)}.review-icon{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;font-weight:850}.review-icon.amber{color:var(--amber);background:color-mix(in srgb,var(--amber) 12%,transparent)}.review-icon.blue{color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.review-icon.teal{color:var(--teal-800);background:var(--teal-100)}.recent-payments .review-list{padding-top:4px}.count-badge{width:29px;height:29px;background:color-mix(in srgb,var(--red) 12%,transparent);color:var(--red)}.primary-button,.secondary-button{min-height:42px;border-radius:12px;padding:9px 15px;font-weight:760;border:1px solid transparent}.primary-button{background:var(--teal-800);color:#fff}.primary-button:hover{background:var(--teal-700)}.secondary-button{background:var(--surface);color:var(--ink);border-color:var(--line)}.secondary-button:hover{border-color:var(--teal-700);color:var(--teal-800)}.full{display:flex;align-items:center;justify-content:center;width:calc(100% - 44px);margin:0 22px}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:6px 0 18px}.page-intro h2{font-size:clamp(26px,4vw,38px)}.page-intro p:not(.eyebrow){margin:5px 0 0;color:var(--muted);max-width:700px}.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.import-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr);gap:16px}.import-card,.import-help{padding:20px}.import-account-picker{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);color:var(--muted);font-size:12px;font-weight:780}.import-account-picker select{min-width:220px}.segment-control{display:flex;gap:5px;padding:5px;border-radius:14px;background:var(--surface-2);margin-bottom:20px}.segment{flex:1;border:0;border-radius:10px;background:transparent;color:var(--muted);padding:9px;font-weight:760}.segment.is-active{color:var(--teal-800);background:var(--surface);box-shadow:0 5px 16px #10343614}.import-pane{display:none}.import-pane.is-active{display:block}.import-pane label,.setting-card label{display:block;font-weight:750;margin-bottom:2px}.field-help{color:var(--muted);margin:0 0 10px;font-size:13px}textarea,input,select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;outline:none}textarea{width:100%;resize:vertical;min-height:210px;padding:13px;line-height:1.65}textarea:focus,input:focus,select:focus{border-color:var(--teal-700);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal-700) 14%,transparent)}.button-row{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.drop-zone{border:1.5px dashed var(--line);border-radius:16px;min-height:310px;display:grid;place-items:center;align-content:center;gap:7px;padding:30px;text-align:center}.drop-zone h3,.drop-zone p{margin:0}.drop-zone p{max-width:430px;color:var(--muted)}.step-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:16px}.step-list li{display:flex;gap:12px}.step-list li>span{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;background:var(--teal-100);color:var(--teal-800);font-weight:820}.step-list strong,.step-list small{display:block}.step-list small{margin-top:2px;color:var(--muted)}.table-panel{overflow:hidden}.table-scroll{overflow:auto}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line)}th{color:var(--muted);background:var(--surface-2);font-size:11px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.sort-button{display:inline-flex;align-items:center;gap:6px;padding:2px 0;border:0;background:transparent;color:inherit;font-size:inherit;font-weight:800;letter-spacing:inherit;line-height:inherit;text-transform:inherit;white-space:nowrap}.sort-button:hover,.sort-button.is-active{color:var(--teal-800)}.sort-button:focus-visible{outline:2px solid var(--teal-700);outline-offset:4px;border-radius:3px}.sort-indicator{min-width:11px;font-size:13px;line-height:1;opacity:.42}.sort-button.is-active .sort-indicator{opacity:1}th.numeric .sort-button{width:100%;justify-content:flex-end}tbody tr:last-child td{border-bottom:0}td{font-size:13px}.numeric{text-align:right;font-variant-numeric:tabular-nums}.amount-negative{color:var(--ink)}.amount-positive{color:var(--green)}.table-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:750;text-transform:capitalize}.table-status.pending{color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.table-status.posted{color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent)}.filter-row{padding:14px;display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line)}.transaction-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:9px;color:var(--muted);font-size:12px;font-weight:750}.danger-button:not(:disabled){color:var(--red);border-color:color-mix(in srgb,var(--red) 42%,var(--line))}.danger-button:not(:disabled):hover{color:var(--red);border-color:var(--red)}.selection-cell{width:42px;text-align:center}.selection-cell input{width:17px;height:17px;accent-color:var(--teal-700)}.transaction-field-select{width:100%;min-width:145px}.transaction-field-select.destination{min-width:160px}.transaction-field-select.account{min-width:145px}.text-button{border:0;padding:7px 8px;background:transparent;color:var(--teal-800);font-weight:760;cursor:pointer}.text-button.danger{color:var(--red)}.text-button:hover{text-decoration:underline}.search-box{flex:1;max-width:440px;position:relative}.search-box span{position:absolute;left:12px;top:8px;color:var(--muted)}.search-box input{width:100%;min-height:40px;padding:8px 12px 8px 35px}select{min-height:40px;padding:8px 34px 8px 11px}.plan-table th:not(:first-child),.plan-table td:not(:first-child){min-width:170px}.plan-table caption{padding:12px 16px;color:var(--muted);font-size:12px;text-align:left;caption-side:top;border-bottom:1px solid var(--line)}.plan-cell strong,.plan-cell small{display:block}.plan-cell small,.plan-empty-cell{color:var(--muted)}.plan-amount-button{width:100%;min-height:48px;display:grid;justify-items:end;align-content:center;gap:1px;padding:6px 8px;border:1px solid color-mix(in srgb,var(--teal-700) 26%,var(--line));border-radius:10px;background:var(--surface);color:var(--ink);font-variant-numeric:tabular-nums}.plan-amount-button:hover,.plan-amount-button:focus-visible{border-color:var(--teal-700);background:var(--teal-100)}.plan-amount-button.is-edited{border-color:color-mix(in srgb,var(--amber) 65%,var(--line));background:color-mix(in srgb,var(--yellow) 8%,var(--surface))}.plan-amount-button strong,.plan-locked-amount strong{font-size:14px}.plan-amount-button small,.plan-locked-amount small{display:block;color:var(--muted);font-size:10px;font-weight:700}.plan-locked-amount{display:grid;justify-items:end}.plan-summary-row th,.plan-summary-row td{background:color-mix(in srgb,var(--surface-2) 78%,transparent);font-weight:750}.plan-allowance-row th,.plan-allowance-row td{color:var(--teal-800)}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:7px 13px;font-weight:720}.chip.is-active{border-color:var(--teal-700);background:var(--teal-100);color:var(--teal-800)}.debt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.debt-card{padding:20px}.debt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.debt-head h3{margin:0;font-size:19px}.debt-head p{margin:2px 0 0;color:var(--muted);font-size:12px}.owner-pill{padding:5px 8px;border-radius:99px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:760}.debt-balance{margin:19px 0 13px;font-size:31px;font-weight:830;letter-spacing:-.04em}.debt-balance-label{margin-top:17px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.debt-balance-label+.debt-balance{margin-top:2px}.utilization{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden}.utilization span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--teal-700),var(--blue))}.debt-meta{display:flex;justify-content:space-between;margin:8px 0 18px;color:var(--muted);font-size:12px}.debt-stat-row{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:0 0 14px}.debt-stat-row div{min-width:0;padding:8px;border:1px solid var(--line);border-radius:9px}.debt-stat-row div:last-child{grid-column:1 / -1}.debt-stat-row span,.debt-stat-row strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.debt-stat-row span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.debt-stat-row strong{margin-top:2px;font-size:12px}.payment-options{display:grid;gap:7px}.payment-option{display:flex;justify-content:space-between;padding:9px 10px;background:var(--surface-2);border-radius:10px;font-size:12px}.payment-option strong{color:var(--teal-800)}.empty-feature{max-width:660px;margin:40px auto;text-align:center;padding:42px}.empty-feature h3{margin:0;font-size:22px}.empty-feature p{color:var(--muted)}.savings-summary{grid-template-columns:repeat(3,1fr)}.account-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.account-card{min-height:178px}.account-name-form{display:flex;align-items:end;gap:9px}.account-name-form label{min-width:0;flex:1;display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:760}.account-name-form input{width:100%;min-height:38px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-weight:700}.account-name-form input:focus{border-color:var(--teal-700);outline:2px solid color-mix(in srgb,var(--teal-700) 20%,transparent);outline-offset:1px}.account-card .metric-value{font-size:clamp(32px,4vw,44px)}.account-pending{display:inline-flex;margin-top:12px;padding:5px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:750}.account-statement-panel{margin-bottom:18px}.account-statement-heading label{display:grid;gap:5px;min-width:210px;color:var(--muted);font-size:12px;font-weight:750}.statement-bank-description{display:block;max-width:360px;margin-top:3px;color:var(--muted);font-size:11px;white-space:normal}.budget-calculator-panel{margin-top:18px;padding-bottom:22px}.budget-calculator-panel .panel-heading p:not(.eyebrow){margin:5px 0 0;color:var(--muted)}.budget-calculator-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:8px 22px 4px}.budget-calculator-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:760}.budget-calculator-form label>span small{font-weight:600}.budget-calculator-form input,.budget-calculator-form select{width:100%;min-height:44px}.money-input,.suffix-input{display:flex;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}.money-input>span,.suffix-input>span{padding:0 11px;color:var(--muted);font-weight:800}.money-input input,.suffix-input input{min-width:0;border:0;border-radius:0;box-shadow:none}.money-input input{padding-left:0}.suffix-input input{padding-right:0}.calculator-divider{grid-column:1 / -1;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.calculator-divider:before,.calculator-divider:after{content:"";flex:1;height:1px;background:var(--line)}.calculator-option{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(120px,.7fr);gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.calculator-or{display:none}.budget-calculator-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:9px}.budget-calculator-result{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;margin:14px 22px 0;padding:15px;border-radius:14px;background:var(--teal-100);color:var(--teal-950)}.budget-calculator-result>div{display:grid;gap:3px}.budget-calculator-result span,.budget-calculator-result small{color:var(--muted);font-size:11px}.budget-calculator-result strong{font-size:18px}.budget-calculator-result.is-error{display:flex;flex-direction:column;gap:3px;background:color-mix(in srgb,var(--red) 10%,var(--surface));color:var(--red)}.pay-schedules-panel{margin-top:18px;padding:22px}.pay-schedules-heading{align-items:end}.pay-schedules-heading h2{margin:3px 0 0}.pay-schedule-picker{display:grid;gap:5px;min-width:220px;color:var(--muted);font-size:12px;font-weight:750}.pay-schedule-picker select{min-height:42px}.pay-schedule-meta{display:flex;align-items:baseline;gap:10px;margin:8px 0 16px;color:var(--muted)}.pay-schedule-meta strong{color:var(--ink);font-size:20px}.pay-date-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.pay-date-card{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft)}.pay-date-card strong{font-size:13px}.pay-date-card span{color:var(--muted);font-size:11px}.pay-date-card.is-adjusted{border-color:color-mix(in srgb,var(--teal-700) 38%,var(--line))}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.setting-card{padding:22px}.setting-card h3{margin:0 0 5px}.setting-card p{color:var(--muted);margin:0 0 15px}.setting-card input{margin-top:8px;min-height:42px;width:110px;padding:8px 10px}.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.theme-options .secondary-button{width:100%}.theme-options .secondary-button.is-active{background:var(--teal-700);border-color:var(--teal-700);color:#fff;box-shadow:0 5px 14px #087f8333}.setting-note{display:block;min-height:18px;margin-top:10px;color:var(--muted)}.navigation-order-card{grid-row:span 2}.navigation-order-list{display:grid;gap:8px}.navigation-order-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:5px 6px 5px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.navigation-order-actions{display:flex;gap:5px}.navigation-order-button{width:40px;min-width:40px;height:40px;padding:0;font-size:18px}dialog{width:min(1050px,calc(100% - 30px));height:min(780px,calc(100vh - 30px));min-width:min(700px,calc(100% - 30px));min-height:480px;max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);resize:both;overflow:auto;border:0;border-radius:22px;padding:0;background:var(--surface);color:var(--ink);box-shadow:0 24px 80px #00000052}dialog.is-expanded{width:calc(100vw - 20px);height:calc(100vh - 20px);max-width:none;max-height:none;resize:none}dialog::backdrop{background:#041213a8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-card{display:flex;flex-direction:column;height:100%;min-height:0;margin:0;padding:22px}.dialog-heading{display:flex;justify-content:space-between;gap:15px}.dialog-heading-actions{display:flex;align-items:flex-start;gap:8px}.secondary-button.compact{min-height:38px;padding:7px 11px}.primary-button.compact,.page-actions .secondary-button.compact{min-height:36px;padding:6px 12px;font-size:13px;border-radius:10px}.secondary-button.tint-button{background:color-mix(in srgb,var(--tint) 22%,var(--surface));border-color:color-mix(in srgb,var(--tint) 60%,var(--line));color:color-mix(in srgb,var(--tint) 78%,var(--ink))}.secondary-button.tint-button:hover{background:color-mix(in srgb,var(--tint) 32%,var(--surface));border-color:var(--tint);color:color-mix(in srgb,var(--tint) 78%,var(--ink))}[data-theme=dark] .secondary-button.tint-button,[data-theme=dark] .secondary-button.tint-button:hover{background:color-mix(in srgb,var(--tint) 34%,var(--surface));color:color-mix(in srgb,var(--tint) 40%,var(--ink))}.mobile-only{display:none}.dialog-heading h2{margin:3px 0}.dialog-summary{color:var(--muted)}.preview-scroll{flex:1 1 320px;min-height:260px;max-height:none;border:1px solid var(--line);border-radius:14px}.preview-select{display:block;width:100%;min-width:150px}.preview-select.secondary{margin-top:6px;color:var(--muted)}.preview-row.is-duplicate{opacity:.68;background:color-mix(in srgb,var(--surface-2) 72%,transparent)}.preview-row.is-excluded{opacity:.58;background:color-mix(in srgb,var(--surface-2) 60%,transparent)}.preview-description-input{width:100%;min-width:230px;padding:8px 10px}.preview-amount-input{width:110px;padding:8px 10px;text-align:right;font-variant-numeric:tabular-nums;color:inherit}.preview-row-actions{white-space:nowrap}.preview-row-actions .text-button{display:block;padding:3px 0}.import-action{display:inline-flex;max-width:170px;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.25;white-space:normal}.import-action.add{color:var(--teal-800);background:var(--teal-100)}.import-action.update{color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.import-action.duplicate{color:var(--muted);background:var(--surface-2)}.plan-overwrite-warning{display:grid;gap:2px;max-width:230px;margin-top:7px;padding:7px 9px;border:1px solid color-mix(in srgb,var(--amber) 48%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--yellow) 10%,var(--surface));color:var(--muted);font-size:10px;line-height:1.35;white-space:normal}.plan-overwrite-warning strong{color:var(--amber);font-size:11px}.destination-guide{margin:12px 0 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.destination-guide summary{padding:12px 14px;cursor:pointer;font-weight:800;color:var(--teal-800)}.guide-section{padding:0 14px 14px}.guide-section+.guide-section{padding-top:2px;border-top:1px solid var(--line)}.guide-section h3{margin:12px 0 9px;font-size:14px}.destination-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.destination-guide-grid div{padding:10px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--line)}.destination-guide-grid strong,.destination-guide-grid span{display:block}.destination-guide-grid span{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45}.transaction-name-cell{min-width:230px}.transaction-name-input{width:100%;min-width:180px;padding:8px 10px;font-weight:700}.historical-savings-row{background:color-mix(in srgb,var(--teal-100) 20%,transparent)}.historical-savings-row :is(input[readonly],select:disabled){opacity:.78;cursor:default}.history-label{color:var(--muted);font-size:12px;font-weight:750}.transaction-name-cell small{display:block;max-width:260px;margin-top:5px;color:var(--muted);white-space:normal}.setting-card label+input+label{margin-top:14px}.setting-card #save-income-names{margin-top:16px}.preview-select.confidence-high{border:2px solid var(--green)}.preview-select.confidence-medium{border:2px solid var(--yellow)}.preview-select.confidence-low{border:2px solid var(--red)}.confidence-legend{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:4px;font-size:12px}.confidence-legend>span{padding:1px 7px;border:2px solid;border-radius:999px}.confidence-legend .confidence-high{border-color:var(--green)}.confidence-legend .confidence-medium{border-color:var(--yellow)}.confidence-legend .confidence-low{border-color:var(--red)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:18px}.plan-amount-dialog{width:min(480px,calc(100% - 30px));height:auto;min-width:0;min-height:0;max-height:calc(100vh - 30px);resize:none;overflow:auto}.plan-amount-form{display:grid;gap:18px;padding:24px}.plan-amount-form h2{margin:2px 0 0}.plan-amount-context,.plan-amount-impact{margin:5px 0 0;color:var(--muted)}.plan-amount-impact{padding:11px 12px;border-radius:10px;background:var(--surface-2);font-size:12px}.plan-amount-field{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:760}.plan-amount-field select{padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);font:inherit}.plan-amount-button.is-actual{border-style:dashed;background:transparent}.plan-amount-field input{width:100%;min-height:44px}.form-error{margin:-4px 0 0;color:var(--red);font-size:12px;font-weight:700}.toast{position:fixed;right:20px;bottom:22px;z-index:80;transform:translateY(120px);opacity:0;transition:.25s ease;padding:12px 16px;border-radius:12px;background:var(--teal-950);color:var(--surface);box-shadow:var(--shadow);font-weight:680}.toast.is-visible{transform:translateY(0);opacity:1}.pull-refresh{position:fixed;top:calc(env(safe-area-inset-top) - 48px);left:50%;z-index:90;width:40px;height:40px;margin-left:-20px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--muted);border:1px solid var(--line);box-shadow:var(--shadow);opacity:0;transform:translateY(var(--pull, 0px));pointer-events:none}.pull-refresh span{font-size:20px;font-weight:800;line-height:1;transform:rotate(var(--pull-turn, 0deg))}.pull-refresh.is-pulling{opacity:1}.pull-refresh.is-ready{color:var(--teal-800);border-color:var(--teal-700)}.pull-refresh.is-refreshing{opacity:1;transform:translateY(80px);transition:transform .15s ease}.pull-refresh.is-refreshing span{animation:pull-spin .8s linear infinite}@keyframes pull-spin{to{transform:rotate(360deg)}}.update-banner{position:fixed;left:50%;bottom:22px;z-index:85;transform:translate(-50%);width:min(460px,calc(100% - 32px));display:flex;align-items:center;gap:10px;padding:10px 10px 10px 16px;border-radius:14px;background:var(--teal-950);color:var(--surface);box-shadow:var(--shadow);font-weight:650;font-size:14px}.file-button.is-busy{opacity:.6;pointer-events:none}.update-banner span{flex:1}.update-banner .primary-button{background:var(--surface);color:var(--teal-800)}.update-dismiss{border:0;background:transparent;color:inherit;opacity:.7;font-size:15px;padding:6px 8px}.mobile-nav{display:none}.plan-cell-date{display:block;color:var(--ink);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.loan-stat-row div:last-child{grid-column:auto}.debt-stat-row small{display:block;margin-top:2px;color:var(--muted);font-size:10px;line-height:1.35}.payment-confirmed{margin:0;color:var(--green);font-size:11px;font-weight:750}.transaction-date-input{min-width:138px;font-variant-numeric:tabular-nums}.transaction-date-note{display:block;margin-top:3px;color:var(--muted);font-size:10px}.transaction-field-select.status-select{min-width:118px;font-weight:750}.transaction-field-select.status-select.pending{color:var(--blue)}.transaction-field-select.status-select.posted{color:var(--green)}.page-intro>.page-actions{flex-shrink:0}.filter-row{flex-wrap:wrap}.filter-row .search-box{min-width:240px}.transaction-toolbar{flex-wrap:wrap}.page-size-picker{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;font-weight:750}.page-size-picker select{min-width:76px}.account-statement-controls{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.account-statement-controls .page-size-picker{display:grid;gap:5px}.card-import-options{display:grid;gap:8px;margin:-6px 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:14px}.card-import-options label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:760}.card-import-options .field-help{margin:0}.visually-hidden-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.file-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.drop-zone:focus-within .file-button{outline:2px solid var(--teal-700);outline-offset:2px}.debt-target-select{color:var(--ink)}.preview-card-account{font-weight:700}.card-payment-note{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.35}.card-payment-note.is-confirmed{color:var(--green);font-weight:700}.card-import-summary{display:block;margin-top:4px}.card-import-summary .text-button{padding:0 4px}.account-dialog #show-password-setup{margin-bottom:10px}.password-setup-form{display:grid;gap:10px;margin:0 0 12px;padding:12px;border:1px solid var(--line);border-radius:14px}.password-setup-form label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.password-setup-form .account-link-help{margin:0}.password-setup-form input{min-height:42px;padding:8px 10px}.account-dialog #show-phone-link{margin-bottom:10px}.phone-link-code{display:grid;gap:10px}.household-member-names{display:grid;gap:10px;margin-top:14px}.household-member-names label{display:grid;gap:2px;color:var(--muted);font-size:12px;font-weight:760}.setting-card .household-member-names input{width:100%;margin-top:4px}.setting-card label small{display:block;color:var(--muted);font-weight:600}.setting-card>.setting-note{display:block;margin-top:10px}.debt-filter-row{margin-bottom:14px}.debt-filter-row select{min-width:200px}.owner-select{flex-shrink:0;max-width:45%;min-height:32px;padding:4px 8px;border-radius:99px;background:var(--surface-2);color:var(--ink);font-size:12px;font-weight:760}.paid-off-panel{margin-top:18px;opacity:.78}.paid-off-panel td,.paid-off-panel th{color:var(--muted)}.paid-off-panel td strong{color:var(--ink);font-weight:650}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bank-connection-card{grid-column:1 / -1}.bank-steps{margin:0 0 14px;padding-left:20px;color:var(--muted);line-height:1.5}.bank-steps a{color:var(--teal-800);font-weight:700}.bank-connection-card label{display:grid;gap:6px;margin-bottom:12px;color:var(--muted);font-size:12px;font-weight:760}.bank-connection-card textarea{width:100%;min-height:70px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.bank-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted)}.bank-errors{margin:0 0 12px;padding:10px 14px 10px 30px;border-radius:10px;background:color-mix(in srgb,var(--amber) 12%,var(--surface));color:var(--ink);font-size:13px}.bank-account-map{display:grid;gap:4px;margin:10px 0 6px}.bank-account-map label{grid-template-columns:minmax(0,1fr) minmax(200px,260px);align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px}.bank-account-map label span{color:var(--ink);font-size:13px;font-weight:600}.bank-account-map select{width:100%}.bank-feed-panel{margin-bottom:16px}.bank-feed-list{display:grid;gap:8px;padding:0 22px 18px}.bank-feed-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.bank-feed-empty{margin:0;color:var(--muted)}.home-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:6px 0 12px}.home-arrange-hint{color:var(--muted);font-size:12px}.home-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}.home-section{position:relative;min-width:0}.home-section-wide{grid-column:1 / -1}.home-sections .summary-grid,.home-sections .period-panel{margin-bottom:0}.home-section>.next-payday-card{height:100%}.home-section:not(.home-section-wide){min-height:var(--half-height, auto)}.savings-preview,.alert-preview{display:flex;flex-direction:column}.savings-preview>.full,.alert-preview>.full{margin-top:auto;flex-shrink:0}.alert-preview .review-list{flex:1 1 auto;min-height:0}.home-move{position:absolute;top:10px;right:10px;z-index:3;display:none;align-items:center;gap:6px;padding:5px 6px 5px 10px;border:1px solid var(--teal-700);border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-size:12px;font-weight:750;color:var(--teal-800)}.home-sections.is-arranging .home-move{display:inline-flex}.home-sections.is-arranging .home-section{outline:2px dashed color-mix(in srgb,var(--teal-700) 55%,transparent);outline-offset:4px;border-radius:var(--radius)}.home-move button{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--ink);font-weight:800}.home-move button:disabled{opacity:.35}.review-intro{margin:0 22px 10px;color:var(--muted);font-size:13px}.review-list .review-amount{margin-left:auto;font-weight:750;white-space:nowrap}.plan-schedule-picker select{min-width:210px}.plan-empty-filter{padding:18px;color:var(--muted);text-align:center}.plan-remove-button{float:right;padding:0 0 0 8px;font-size:11px;color:var(--muted);opacity:0}.plan-table tr:hover .plan-remove-button,.plan-remove-button:focus-visible{opacity:1;color:var(--red)}@media(hover:none){.plan-remove-button{opacity:1}}.plan-add-button{width:100%;min-height:48px;border:1px dashed var(--line);border-radius:10px;background:transparent;color:var(--muted);font-size:12px;font-weight:700}.plan-add-button:hover,.plan-add-button:focus-visible{border-color:var(--teal-700);color:var(--teal-800);background:var(--teal-100)}.workbook-import-dialog{width:min(560px,calc(100% - 30px))}.workbook-import-list{max-height:52vh;overflow:auto;display:grid;gap:6px}.workbook-import-list h3{margin:8px 0 2px;font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.workbook-import-list ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.workbook-import-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:10px;background:var(--surface-2);font-size:13px}.workbook-import-list li span{color:var(--muted);text-align:right}.reconcile-compare{display:grid;gap:2px;padding:12px 14px;border-radius:12px;background:var(--surface-2)}.reconcile-compare span,.reconcile-compare small{color:var(--muted);font-size:12px;font-weight:700}.reconcile-compare strong{font-size:24px;color:var(--teal-800)}.debt-balance-note{margin:2px 0 8px;color:var(--muted);font-size:12px}.debt-balance-note strong{color:var(--ink)}.debt-reconcile-button{margin-top:12px}.reconciled-row td{background:color-mix(in srgb,var(--teal-100) 45%,transparent);font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1 / -1}.plan-amount-field select{width:100%;min-height:44px}@media(max-width:1100px){:root{--sidebar: 86px}.brand{justify-content:center;padding-left:0;padding-right:0}.brand-kicker,.brand-name,.nav-item{font-size:0}.sidebar{padding-left:10px;padding-right:10px}.nav-list{gap:8px}.nav-item{position:relative;justify-content:center;min-height:52px;padding:8px}.nav-item span{width:auto;font-size:30px;line-height:1}.sidebar-status{display:none}.sidebar-foot>.sync-state{display:none}.sidebar-import-button{width:52px;min-height:48px;margin:0 auto;padding:8px;font-size:0}.sidebar-import-button span{font-size:20px}.summary-grid{grid-template-columns:1.2fr 1fr 1fr}.debt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pay-date-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){body{padding-bottom:calc(92px + env(safe-area-inset-bottom))}.sidebar{display:none}.app-main{margin-left:0}.topbar{min-height:78px;height:auto;padding:15px 18px}main{padding:0 14px 40px}.offline-banner{align-items:flex-start;flex-direction:column;gap:1px}.summary-grid{grid-template-columns:1fr 1fr}.metric-card.primary{grid-column:1 / -1}.import-layout,.home-sections{grid-template-columns:1fr}.home-section:not(.home-section-wide){height:auto}.home-toolbar{justify-content:flex-start;flex-wrap:wrap;margin-top:0}.period-strip{overflow-x:auto;grid-template-columns:repeat(4,minmax(180px,1fr))}.settings-grid,.debt-grid,.account-summary-grid,.budget-calculator-form{grid-template-columns:1fr}.calculator-divider,.budget-calculator-actions{grid-column:auto}.budget-calculator-result,.destination-guide-grid{grid-template-columns:1fr}.pay-schedules-heading{align-items:flex-start;flex-direction:column}.pay-schedule-picker{width:100%}.pay-date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-intro,.account-statement-heading{align-items:flex-start;flex-direction:column}.account-statement-heading label{width:100%}.page-actions{justify-content:flex-start}.mobile-only{display:inline-flex;align-items:center}.update-banner{bottom:calc(86px + env(safe-area-inset-bottom))}.mobile-nav{position:fixed;display:grid;inset:auto 0 0;z-index:30;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:7px max(6px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))}.mobile-nav button{border:0;background:transparent;color:var(--muted);font-weight:700;min-height:60px;display:grid;place-items:center}.mobile-nav button span{display:block;line-height:1;border-radius:999px;color:color-mix(in srgb,var(--tint) 85%,var(--ink))}.mobile-nav button[data-view=accounts]{--tint: var(--logo-blue)}.mobile-nav button[data-view=plan]{--tint: var(--logo-purple)}.mobile-nav button[data-view=home]{--tint: var(--logo-teal)}.mobile-nav button[data-view=transactions]{--tint: var(--logo-orange)}.mobile-nav button[data-view=import]{--tint: var(--logo-green)}.mobile-nav button.is-active span{background:color-mix(in srgb,var(--tint) 18%,transparent)}.mobile-nav button.is-active{color:color-mix(in srgb,var(--tint) 80%,var(--ink))}[data-theme=dark] .mobile-nav button span{color:color-mix(in srgb,var(--tint) 55%,var(--ink))}[data-theme=dark] .mobile-nav button.is-active{color:color-mix(in srgb,var(--tint) 45%,var(--ink))}[data-theme=dark] .mobile-nav button.is-active span{background:color-mix(in srgb,var(--tint) 30%,transparent)}.toast{bottom:88px;left:14px;right:14px;text-align:center}dialog{width:calc(100% - 18px);height:calc(100vh - 18px);min-width:0;min-height:0;resize:none}.dialog-heading-actions .compact{display:none}}@media(max-width:520px){.bank-account-map label,.form-grid{grid-template-columns:1fr}.account-statement-controls{width:100%}.topbar h1{font-size:21px}.topbar .eyebrow{display:none}.summary-grid{grid-template-columns:1fr}.metric-card.primary{grid-column:auto}.metric-card{min-height:138px;padding:18px}.metric-value{font-size:36px}.panel-heading{padding:17px 16px 11px;align-items:flex-start}.upcoming-row{padding:11px 7px}.upcoming-amount small{display:none}.period-strip{padding-left:16px;padding-right:16px}.savings-balance{padding-left:16px}.savings-track,.savings-meta{margin-left:16px;margin-right:16px}.savings-meta{padding-left:0;padding-right:0}.full{width:calc(100% - 32px);margin-left:16px;margin-right:16px}.button-row{flex-direction:column-reverse}.button-row button{width:100%}.filter-row{flex-direction:column}.import-account-picker{align-items:stretch;flex-direction:column}.import-account-picker select{width:100%;min-width:0}.transaction-toolbar{justify-content:flex-start;flex-wrap:wrap}.search-box{max-width:none}.dialog-card{padding:16px}.calculator-option{grid-template-columns:1fr}.budget-calculator-actions{flex-direction:column-reverse}.budget-calculator-actions button{width:100%}.pay-date-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.alert-preview .review-list{max-height:340px;overflow-y:auto}.preview-actions{flex-wrap:wrap;align-items:center}.preview-bulk{display:flex;align-items:center;gap:6px;margin-right:auto;flex-wrap:wrap}.bank-feed-row .bank-feed-actions{display:flex;gap:8px;flex-wrap:wrap}.bank-feed-clear-all{padding:0 22px 16px}.compare-period{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.compare-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.compare-head span{color:var(--muted);font-size:13px}.compare-head .compare-match{color:var(--green);font-weight:750}.compare-head .compare-diff{color:var(--amber);font-weight:750}.workbook-import-list .compare-figures li{background:transparent;padding:3px 0;border-radius:0;border-top:1px solid var(--line);font-size:12px}.transaction-type-card{grid-column:1 / -1}.transaction-type-list{display:grid;gap:6px;max-height:420px;overflow-y:auto;margin:12px 0;padding-right:4px}.transaction-type-row{display:grid;grid-template-columns:minmax(140px,1fr) auto minmax(130px,180px) auto;gap:8px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:10px}.transaction-type-row.has-similar{border-color:color-mix(in srgb,var(--amber, #c98a1b) 55%,var(--line))}.setting-card .transaction-type-row input,.setting-card .transaction-type-row select{width:100%;margin:0}.transaction-type-row input[readonly]{color:var(--muted)}.transaction-type-row .status-pill{grid-column:3 / -1;justify-self:start}.transaction-type-count{color:var(--muted);font-size:12px;white-space:nowrap}.transaction-type-similar{grid-column:1 / -1;color:var(--muted);font-size:12px}.transaction-type-add{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.setting-card .transaction-type-add input{width:100%;margin:0}@media(max-width:640px){.transaction-type-row{grid-template-columns:1fr auto}.transaction-type-row select{grid-column:1}.transaction-type-row .status-pill{grid-column:1 / -1}.transaction-type-add{grid-template-columns:1fr auto}.transaction-type-add label{grid-column:1 / -1}}.workbook-list-option{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:13px;font-weight:700}.transactions-table{min-width:0}.transactions-table th,.transactions-table td{padding:9px 7px}.transactions-table th:first-child,.transactions-table td:first-child{padding-left:12px}.transactions-table th:last-child,.transactions-table td:last-child{padding-right:12px}.transactions-table .selection-cell{width:24px;padding-right:2px}.transactions-table .transaction-date-input{min-width:0;padding:6px 4px 6px 7px}.transactions-table .transaction-field-select{padding-left:8px;padding-right:24px}.transactions-table td.numeric{white-space:nowrap}.transactions-table th.numeric{white-space:normal}.stacked-label{display:inline-block;line-height:1.2;text-align:right}.transactions-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--teal-700) 45%,transparent) transparent}.transactions-scroll::-webkit-scrollbar{height:10px}.transactions-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--teal-700) 40%,transparent);border-radius:999px;border:2px solid var(--surface)}.transactions-scroll::-webkit-scrollbar-track{background:var(--surface-2)}.transactions-table .transaction-field-select{min-width:104px;font-size:12px}.transactions-table .transaction-field-select.account{min-width:112px}.transactions-table .transaction-field-select.destination{min-width:118px}.transactions-table .transaction-name-input{min-width:150px}.transactions-table .transaction-name-cell small{max-width:200px}.transactions-table .transaction-date-input{width:118px;font-size:12px}.transactions-table .transaction-name-cell{min-width:170px}.transactions-table .transaction-field-select.status-select{min-width:112px}.auth-card h1.auth-brand{margin:0 0 18px;font-size:44px;line-height:1.1;font-weight:800;letter-spacing:-.03em;color:var(--teal-950)}.greeting-message{margin:4px 0 0;color:var(--muted);font-size:14px;font-style:italic;max-width:60ch}#summary-grid{grid-template-columns:2fr 1fr;align-items:stretch}#summary-grid .metric-card.primary{grid-column:auto}.balance-pair{display:grid;grid-template-columns:1fr 1fr;align-items:start}.balance-half{min-width:0;position:relative;z-index:1}.balance-half:first-child:not(:last-child){padding-right:24px}.balance-half+.balance-half{padding-left:24px;border-left:1px solid rgba(255,255,255,.24)}.allowance-stack{display:grid;gap:16px}.metric-card.compact{min-height:0;padding:16px 20px}.metric-card.compact .metric-value{margin:8px 0 4px;font-size:clamp(26px,2.6vw,32px)}.account-name-form input{font-size:15px}.account-name-form .secondary-button.compact{min-height:34px;padding:5px 10px;font-size:12.5px}.statement-table{min-width:0}.statement-table th,.statement-table td{padding:10px}.statement-table .statement-description{max-width:240px;min-width:170px;white-space:normal}.statement-table .statement-description strong{display:block;overflow-wrap:anywhere}.statement-table .statement-bank-description{max-width:240px;overflow-wrap:anywhere}.statement-table th.statement-type{min-width:120px}.statement-table th{white-space:nowrap}.stacked-label.left{text-align:left}:is(#plan-head,.pinned-plan-head) th small{display:block}.plan-table th:not(:first-child),.plan-table td:not(:first-child){min-width:150px;border-left:1px solid var(--line)}.plan-table .plan-cell strong{overflow-wrap:anywhere}.plan-table .is-current-period{background:color-mix(in srgb,var(--teal-100) 60%,transparent)}.plan-table .plan-summary-row .is-current-period{background:color-mix(in srgb,var(--teal-100) 80%,var(--surface-2))}.plan-income-button strong{color:var(--green)}.plan-income-button.is-posted{border:2px solid color-mix(in srgb,var(--logo-purple) 78%,var(--ink));border-radius:10px}.plan-amount-button.is-actual.is-posted{border:2px solid var(--green);border-style:solid;border-radius:10px}.transactions-toolbar-row{background:linear-gradient(180deg,color-mix(in srgb,var(--teal-100) 75%,var(--surface)),var(--surface));border-bottom:2px solid color-mix(in srgb,var(--teal-700) 28%,var(--line))}.delete-x-button{width:28px;height:28px;display:inline-grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--red);font-size:15px;font-weight:800;line-height:1;cursor:pointer}.delete-x-button:hover,.delete-x-button:focus-visible{background:color-mix(in srgb,var(--red) 14%,transparent)}.sync-state{font-size:10.5px}#savings-activity-panel .panel-heading{align-items:end}@media(max-width:820px){.mobile-nav{grid-template-columns:repeat(5,minmax(0,60px));justify-content:center;column-gap:4px;padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}.mobile-nav button{font-size:11px;min-width:0;padding:0;gap:3px}.mobile-nav button span{font-size:29px;padding:3px 10px}#summary-grid{grid-template-columns:1fr}.allowance-stack{grid-template-columns:1fr 1fr}}@media(max-width:520px){.balance-pair{grid-template-columns:1fr}.balance-half:first-child:not(:last-child){padding-right:0;padding-bottom:14px}.balance-half+.balance-half{padding-left:0;padding-top:14px;border-left:0;border-top:1px solid rgba(255,255,255,.24)}.metric-card.compact{padding:14px 16px}.greeting-message{font-size:13px}.auth-card h1.auth-brand{font-size:38px}}.plan-table tbody th.plan-cell{white-space:normal;text-transform:none;letter-spacing:0;color:var(--ink);font-size:13px}.plan-table tbody th.plan-cell small{font-size:11px;font-weight:600}[hidden]{display:none!important}.home-toolbar #arrange-home{min-height:30px;padding:4px 11px;font-size:12px;white-space:nowrap;flex-shrink:0}.balance-half{display:flex;flex-direction:column}.balance-details{display:grid;gap:6px;margin:16px 0 0;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.16)}.balance-details div{display:flex;justify-content:space-between;gap:12px;font-size:13px}.balance-details dt{color:#ffffffb8;font-weight:600}.balance-details dd{margin:0;font-weight:750;text-align:right;overflow-wrap:anywhere}.balance-link{align-self:flex-start;margin-top:auto;padding:8px 14px;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:#ffffff1f;color:#fff;font-size:13px;font-weight:750;cursor:pointer}.balance-details+.balance-link{margin-top:16px}.balance-link:hover,.balance-link:focus-visible{background:#ffffff38}.debt-preview{display:flex;flex-direction:column;padding-bottom:20px}.debt-preview>#debt-preview{display:flex;flex-direction:column;gap:4px}.debt-preview h2{font-size:26px;letter-spacing:-.03em}.debt-preview-rows{display:grid;gap:8px;padding:0 22px}.debt-preview-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--ink);text-align:left;cursor:pointer}.debt-preview-row:hover,.debt-preview-row:focus-visible{border-color:var(--teal-700)}.debt-preview-row span{display:grid;gap:2px}.debt-preview-row small{color:var(--muted);font-size:12px}.debt-preview-row>strong{font-size:16px;font-variant-numeric:tabular-nums}.debt-filter-row{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}.secondary-button.is-set-up{cursor:default}[data-theme=dark] .primary-button,[data-theme=dark] .primary-button:hover,[data-theme=dark] .sidebar-import-button,[data-theme=dark] .avatar,[data-theme=dark] .theme-options .secondary-button.is-active{color:#062d2c}.page-intro p.plan-intro-note{font-size:13px}.plan-table{table-layout:fixed;width:100%;min-width:760px}.plan-table th,.plan-table td,.plan-table th:not(:first-child),.plan-table td:not(:first-child){min-width:0}.plan-table th:first-child{width:26%;min-width:0;max-width:none}:is(#plan-head,.pinned-plan-head) th{vertical-align:bottom}@media(min-width:1000px){.page-intro p.plan-intro-note{white-space:nowrap}}.upcoming-panel.home-section:not(.home-section-wide),#review-tile{overflow-y:auto}.account-dialog{height:fit-content;min-height:0;min-width:0;max-height:calc(100vh - 30px);resize:none;overflow:auto;padding-top:26px}.account-dialog-content{padding-right:28px}.dialog-close-x{position:absolute;top:12px;right:12px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:color-mix(in srgb,var(--teal-800) 60%,var(--surface));font-size:17px;font-weight:800;cursor:pointer}.dialog-close-x:hover,.dialog-close-x:focus-visible{background:color-mix(in srgb,var(--teal-800) 14%,transparent)}.secondary-button.is-set-up{opacity:1;color:color-mix(in srgb,var(--teal-800) 60%,var(--surface));border-color:color-mix(in srgb,var(--teal-800) 30%,var(--line));background:transparent}#cloud-sync-status:empty{display:none}@media(max-width:820px){.account-dialog{height:fit-content;min-height:0;width:min(92vw,380px)}}:is(#plan-head,.pinned-plan-head) th{padding:13px 12px;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--line)}:is(#plan-head,.pinned-plan-head) th small{margin-top:3px;font-size:11px;font-weight:650;letter-spacing:0;text-transform:none;color:var(--muted)}:is(#plan-head,.pinned-plan-head) th.is-current-period{color:var(--teal-800);background:color-mix(in srgb,var(--teal-100) 70%,var(--surface-2));box-shadow:inset 0 3px 0 var(--teal-700)}:is(#plan-head,.pinned-plan-head) th.is-current-period small{color:var(--teal-800)}.plan-table .plan-cell strong{font-size:14px}.table-scroll{position:relative}@media(max-width:1100px)and (min-width:821px){.nav-item,.brand{gap:0}.brand>div{display:none}}.sidebar{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.sidebar>*{flex-shrink:0}.file-drop-zone{align-content:start;min-height:0;padding-top:26px}.file-drop-zone .file-button{min-width:210px}.file-drop-zone .field-help{margin-bottom:8px}.account-reconcile{display:flex;margin-top:12px}.page-intro p:not(.eyebrow){font-size:13px}@media(min-width:1000px){.page-intro p:not(.eyebrow){white-space:nowrap}}.import-target{margin:0 0 8px;padding:9px 12px;border-radius:10px;background:color-mix(in srgb,var(--teal-700) 12%,var(--surface));color:var(--ink);font-size:14px}.import-target strong{color:var(--teal-800);font-weight:850}.import-target-foot{margin-right:auto;color:var(--muted);font-size:13px}.import-target-foot strong{color:var(--teal-800)}.preview-actions{align-items:center}.savings-meta{display:grid;grid-template-columns:1fr;justify-content:stretch;gap:6px}.savings-meta>div,.debt-outlook>div{display:flex;justify-content:space-between;gap:12px;font-size:13px}.savings-meta span,.account-card-side span,.debt-outlook dt,.debt-outlook span{color:var(--muted)}.savings-meta strong,.account-card-side strong,.debt-outlook strong{text-align:right;font-variant-numeric:tabular-nums}.debt-outlook{display:grid;gap:6px;margin:12px 22px 0;padding-top:10px;border-top:1px solid var(--line)}.account-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:22px;align-content:start}.account-card>:not(.account-card-side){grid-column:1}.account-card-side{grid-column:2;grid-row:1 / span 5;display:grid;gap:8px;align-content:start;padding-left:20px;border-left:1px solid var(--line)}@media(max-width:820px){.account-card{grid-template-columns:1fr}.account-card-side{grid-column:1;grid-row:auto;margin-top:14px;padding:12px 0 0;border-left:0;border-top:1px solid var(--line)}}.plan-next-payday{display:block;margin-top:2px}.pinned-table-head{position:fixed;z-index:9;overflow:hidden;background:var(--surface-2);box-shadow:0 6px 14px #0000001f;pointer-events:auto}.pinned-table-head table{min-width:0;table-layout:fixed}@media(max-width:820px){.pinned-table-head th{padding-top:6px!important;padding-bottom:6px!important;line-height:1.2}.pinned-table-head th small{margin-top:1px!important}}.page-size-picker select,.transaction-toolbar select,.pay-schedule-picker select,.import-account-picker select,.account-statement-controls select{font-size:13.5px}.metric-card.compact{display:flex;flex-direction:column;justify-content:center}.metric-card.compact .metric-label{font-size:15px}.metric-card.compact .metric-value{font-size:clamp(34px,3.4vw,44px)}.metric-card.compact .metric-note{font-size:14px}.plan-head-split{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.plan-head-arrow{color:var(--muted);font-size:16px;letter-spacing:0;padding-bottom:2px}.plan-head-next{text-align:right;color:var(--muted)}:is(#plan-head,.pinned-plan-head) th .plan-head-next,:is(#plan-head,.pinned-plan-head) th .plan-head-next small{color:var(--muted)}.plan-table tr:not(.plan-summary-row)+tr.plan-summary-row>*{border-top:3px solid color-mix(in srgb,var(--teal-700) 40%,var(--line))}.icon-save-button{width:38px;min-width:38px;padding:0;display:inline-grid;place-items:center}.account-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.account-card-side{grid-row:1 / span 4;display:flex;flex-direction:column;gap:10px}.account-card-side .savings-meta{padding:0}.account-card-side .savings-meta div span{white-space:nowrap}.account-card-side .account-reconcile{margin-top:auto;align-self:flex-start}.account-card{min-height:0}.page-size-picker,.transaction-toolbar,.pay-schedule-picker,.account-statement-controls .page-size-picker{font-size:13.5px}@media(max-width:1480px){.account-card{grid-template-columns:1fr}.account-card-side{grid-column:1;grid-row:auto;margin-top:14px;padding:12px 0 0;border-left:0;border-top:1px solid var(--line)}}.savings-meta>div strong,.debt-outlook>div strong{white-space:nowrap}@media(min-width:1481px){.account-card{grid-template-columns:max-content minmax(0,1fr)}.account-card .metric-value{font-size:clamp(30px,2.5vw,40px)}.account-card .account-name-form input{width:150px}.account-card-side .savings-meta>div strong{white-space:normal}}:is(#plan-head,.pinned-plan-head) th{border-bottom:3px solid color-mix(in srgb,var(--teal-700) 40%,var(--line))}thead th,.pinned-table-head th{border-bottom:3px solid color-mix(in srgb,var(--teal-700) 40%,var(--line))}.update-banner .primary-button#update-reload{background:#fff;color:#07696d;border:1px solid #ffffff;font-weight:800}[data-theme=dark] .update-banner .primary-button#update-reload{background:var(--teal-800);color:#062d2c;border-color:var(--teal-800)}.account-card .metric-value{white-space:nowrap;overflow:hidden;line-height:1.05}@media(min-width:1481px){.account-card{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}.payday-caption{font-size:14px}.payday-amount{justify-content:space-between;gap:6px 16px;font-size:clamp(34px,3.4vw,48px);line-height:1.1;letter-spacing:-.03em}.payday-allowance{padding-left:16px;font-size:15px;letter-spacing:0}.payday-allowance strong{font-size:20px}.payday-balance-note{font-size:13px}@media(min-width:1481px){.account-card-side{grid-row:1 / span 3;gap:8px}.account-card-side .savings-meta{gap:3px}.account-card-side .account-reconcile{margin-top:0;min-height:32px;padding-top:4px;padding-bottom:4px}.account-card.metric-card{min-height:0;padding-top:18px;padding-bottom:18px}}.next-payday-card .income-row{align-items:flex-start;padding-top:8px;padding-bottom:8px;font-size:18px;font-weight:700;line-height:1.2}.next-payday-card .income-row strong{font-size:22px;font-weight:820;font-variant-numeric:tabular-nums}.next-payday-card .income-note{display:block;margin-top:2px;color:var(--muted);font-size:13px;font-weight:500}.next-payday-card .income-date{font-size:13px}:root{--plan-debit-red: #9b1c1c}[data-theme=dark]{--plan-debit-red: #e57373}.plan-table .plan-summary-row td{font-size:16px}.plan-table .plan-summary-row .plan-cell strong{font-size:15.5px}.plan-table tbody .plan-summary-row th.plan-cell small{font-size:12px}.plan-table .plan-debits-row td.amount-negative,.plan-table .plan-adjusted-row td.amount-negative{color:var(--plan-debit-red)}.payday-amount{flex-wrap:nowrap;align-items:center}.payday-balance{min-width:0}.payday-allowance{flex:none;display:flex;flex-direction:column;align-items:flex-end;padding-left:0;border-left:0;text-align:right;line-height:1.15}.payday-allowance strong{font-size:24px;font-weight:800}.payday-allowance small{margin-top:2px;color:var(--muted);font-size:12.5px;font-weight:500;white-space:nowrap}.payday-balance.is-negative{color:var(--plan-debit-red)}.account-card .metric-value{color:var(--teal-800)}.account-card .metric-value.is-negative{color:var(--plan-debit-red)}.metric-card.primary.balance-pair{background:linear-gradient(135deg,#04474b,#033a3e 65%,#0b3a4f)}.balance-pair .metric-value{color:#5fe3b5}.balance-pair .metric-value.is-negative{color:#ee5a50}.transactions-table tr:not(.is-editing) .txn-edit{display:none}.transactions-table tr.is-editing .txn-read{display:none}.transactions-table tr[data-transaction-row]:not(.is-editing){cursor:pointer}.transactions-table tr[data-transaction-row]:not(.is-editing):hover>td{background:color-mix(in srgb,var(--teal-100) 35%,transparent)}.transactions-table tr.is-editing>td{background:color-mix(in srgb,var(--teal-100) 45%,var(--surface))}.transactions-table tr:not(.is-editing) .transaction-name-cell strong.txn-read{display:block;font-size:14px}.transactions-table .transaction-summary-cell{display:none}.transactions-table .transaction-amount-cell{font-weight:750;font-size:14px}.transactions-table .transaction-actions-cell{white-space:nowrap;text-align:right}.transaction-edit-button{padding:6px 8px;font-size:13px;font-weight:750;color:var(--teal-800)}.transactions-table .transaction-account-cell .txn-read,.transactions-table .transaction-category-cell .txn-read,.transactions-table .transaction-destination-cell .txn-read{font-size:13px}.transaction-filters-toggle{display:none}@media(max-width:1180px){.transaction-filters-toggle{display:inline-flex;align-items:center}.filter-row.transactions-toolbar-row{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.transactions-toolbar-row .search-box{flex:1 1 200px;min-width:0;max-width:none}.transaction-toolbar:not(.is-open)>select,.transaction-toolbar:not(.is-open)>.page-size-picker{display:none}.transaction-toolbar:not(.has-selection)>#transaction-selection-count,.transaction-toolbar:not(.has-selection)>button{display:none}.transaction-toolbar:not(.is-open):not(.has-selection){display:none}.transaction-toolbar{flex:1 1 100%;justify-content:flex-start}.transaction-toolbar>select{flex:1 1 180px}.transactions-scroll{overflow-x:visible}.transactions-table,.transactions-table tbody{display:block;width:100%;min-width:0}.transactions-table thead{display:none}.transactions-table tr{display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:3px;padding:12px 14px;border-bottom:1px solid var(--line)}.transactions-table tr>td{display:block;padding:0!important;border:0;background:none!important}.transactions-table tr.is-editing{background:color-mix(in srgb,var(--teal-100) 45%,var(--surface))}.transactions-table .selection-cell{flex:0 0 22px;order:1}.transactions-table .transaction-name-cell{order:2;flex:1 1 calc(100% - 150px);min-width:0}.transactions-table .transaction-name-cell strong.txn-read{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transactions-table .transaction-name-cell small{max-width:none;margin-top:1px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transactions-table .transaction-amount-cell{order:3;flex:0 0 auto;margin-left:auto;font-size:15px}.transactions-table .transaction-actions-cell{order:6;flex:0 0 auto;margin-left:auto}.transactions-table tr:not(.is-editing) :is(.transaction-date-cell,.transaction-account-cell,.transaction-category-cell,.transaction-destination-cell,.transaction-status-cell){display:none}.transactions-table tr:not(.is-editing) .transaction-summary-cell{display:block;order:5;flex:1 1 calc(100% - 110px);min-width:0;margin-left:30px;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transactions-table .transaction-summary-cell .table-status{display:inline;padding:0;background:none;font-size:12px}.transactions-table tr.is-editing :is(.transaction-date-cell,.transaction-account-cell,.transaction-category-cell,.transaction-destination-cell,.transaction-status-cell){order:4;flex:1 1 calc(50% - 20px);min-width:150px;margin-top:8px}.transactions-table tr.is-editing :is(.transaction-date-cell,.transaction-account-cell,.transaction-category-cell,.transaction-destination-cell,.transaction-status-cell):before{content:attr(data-label);display:block;margin-bottom:3px;color:var(--muted);font-size:11px;font-weight:750}.transactions-table tr.is-editing .transaction-name-input{width:100%;min-width:0;margin-bottom:2px}.transactions-table tr.is-editing :is(.transaction-field-select,.transaction-date-input){width:100%;min-width:0;font-size:14px}.transactions-table tr.is-editing .transaction-actions-cell{order:7;flex:1 1 100%;display:flex;justify-content:space-between;align-items:center;margin-top:10px}.transactions-table tr.is-editing .delete-x-button{display:inline-flex;gap:4px;width:auto;padding:6px 10px}.transactions-table tr.is-editing .delete-x-button:after{content:"Delete";font-size:13px}.transactions-table tr.transaction-more-row,.transactions-table tr:has(>td[colspan]){display:block}}.plan-table th:first-child,.plan-table td:first-child{position:sticky;left:0;z-index:2;background:var(--surface);box-shadow:1px 0 0 var(--line),6px 0 10px -8px #00000040}.plan-table thead th:first-child{background:var(--surface-2);z-index:3}.plan-table .plan-summary-row th:first-child{background:color-mix(in srgb,var(--surface-2) 78%,var(--surface))}@media(min-width:700px)and (max-width:1180px){.plan-table{min-width:0}.plan-table th:first-child{width:23%}.plan-table .plan-amount-button{padding-left:5px;padding-right:5px}}@media(max-width:699px){#plan-table-panel .table-scroll{scroll-snap-type:x mandatory}#plan-table-panel .table-scroll{scroll-padding-left:197.6px}.plan-table thead th:not(:first-child){scroll-snap-align:start}}@media(max-width:1180px){.page-intro{flex-wrap:wrap}.page-intro p:not(.eyebrow){white-space:normal}.page-intro>.page-actions{flex-shrink:1;flex-wrap:wrap}}.more-sheet{display:none}@media(max-width:820px){.mobile-nav{grid-template-columns:repeat(6,minmax(0,58px));column-gap:2px}.mobile-nav #more-nav-button{--tint: var(--logo-red)}.more-sheet:not([hidden]){position:fixed;z-index:31;right:max(12px,env(safe-area-inset-right));bottom:calc(76px + env(safe-area-inset-bottom));display:grid;gap:4px;min-width:220px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.more-sheet .eyebrow{padding:2px 8px 6px}.more-sheet button{display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-size:15px;font-weight:700;text-align:left}.more-sheet button span{width:26px;font-size:22px;text-align:center;color:var(--teal-800)}.more-sheet button.is-active{background:var(--teal-100);color:var(--teal-800)}}@media(max-width:1100px)and (min-width:821px){:root{--sidebar: 96px}.sidebar{padding-left:8px;padding-right:8px}.nav-item{flex-direction:column;gap:4px;min-height:60px;padding:8px 2px;font-size:11px;line-height:1.15;text-align:center}.nav-item span{font-size:26px}.sidebar-import-button{width:64px;min-height:56px;display:grid;justify-items:center;gap:2px;font-size:0}.sidebar-import-button:after{content:"Import";font-size:11px}}.plan-table .plan-summary-row td.amount-zero{color:var(--muted)}@media(max-width:820px){.period-strip{overflow-x:visible;grid-template-columns:repeat(4,minmax(0,1fr))}.period-card{min-width:0;padding-left:10px;padding-right:10px}.period-card .period-meta{gap:6px}.period-card .period-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:599px){.period-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.period-card:nth-child(odd){border-left:0;padding-left:0}.period-card:nth-child(2n){padding-right:0}.period-card:nth-child(n+3){border-top:1px solid var(--line)}}.account-name-row{display:flex;align-items:center;gap:8px;min-width:0}.account-name-row[hidden]{display:none}.account-name-display{margin:0;min-width:0;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-rename-toggle{width:32px;height:32px;flex:none;border-radius:9px;font-size:16px;color:var(--muted)}.account-name-form[hidden]{display:none}.debt-stat-row div:last-child{grid-column:auto}@media(max-width:699px){.plan-table caption{position:sticky;left:0;width:calc(100vw - 30px);max-width:calc(100vw - 30px);box-sizing:border-box;white-space:normal}}.settings-grid>:last-child{grid-column:1 / -1}.transaction-edit-panel{display:none}@media(min-width:1181px){.transactions-table tr.is-editing .txn-edit{display:none}.transactions-table tr.is-editing .txn-read{display:revert}.transactions-table tr.is-editing .transaction-name-cell strong.txn-read{display:block;font-size:14px}.transactions-table tr.transaction-edit-panel{display:table-row}.transactions-table tr.transaction-edit-panel>td{padding:4px 12px 16px 44px;background:color-mix(in srgb,var(--teal-100) 45%,var(--surface));border-bottom:1px solid var(--line)}.txn-edit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;align-items:end}.txn-edit-grid label{display:grid;gap:4px;min-width:0;color:var(--muted);font-size:11px;font-weight:750}.txn-edit-grid .txn-edit-name{grid-column:span 2}.txn-edit-grid :is(input,select){width:100%;min-width:0;font-size:13px}.txn-edit-grid .delete-x-button{width:auto;justify-self:start;padding:8px 10px;font-size:13px}}@media(max-width:1180px){.transactions-table tr.transaction-edit-panel.transaction-edit-panel{display:none}}@media(max-width:599px){.transactions-table tr.is-editing :is(.transaction-date-cell,.transaction-account-cell,.transaction-category-cell,.transaction-destination-cell,.transaction-status-cell){flex-basis:100%;margin-left:0}}.home-toolbar{flex-wrap:wrap}.home-hidden-tiles:not([hidden]){display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1 1 100%;color:var(--muted);font-size:12.5px;font-weight:700}.home-hidden-tiles .secondary-button.compact{min-height:32px;padding:5px 12px;font-size:12.5px}#home-sections .home-section.is-hidden-tile{display:none}.home-move button[data-home-hide]{width:auto;padding:0 10px;border-radius:999px;font-size:12px;color:var(--red)}:root{--chart-teal: #009494;--chart-orange: #eb6834;--chart-blue: #3263ab}[data-theme=dark]{--chart-teal: #149a8f;--chart-orange: #d95926;--chart-blue: #4a7fe0}.account-insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.account-insights .recent-activity-panel{grid-column:1 / -1}@media(max-width:1100px){.account-insights{grid-template-columns:1fr}}.chart-panel{padding-bottom:16px}.chart-heading{align-items:flex-start;flex-wrap:wrap;gap:8px 16px}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--muted);font-size:12.5px;font-weight:650}.chart-legend-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.chart-legend-item strong{color:var(--ink);font-weight:750}.chart-legend-item i,.chart-tooltip i{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}.chart-box{position:relative;margin:4px 16px 0 10px;min-height:190px}.chart-svg{display:block;overflow:visible}.chart-grid{stroke:var(--line);stroke-width:1}.chart-grid.is-zero{stroke:color-mix(in srgb,var(--muted) 55%,transparent)}.chart-axis{fill:var(--muted);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.chart-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-end-dot,.chart-hover-dot{stroke:var(--surface);stroke-width:2}.chart-crosshair{stroke:color-mix(in srgb,var(--muted) 70%,transparent);stroke-width:1;stroke-dasharray:3 3}.chart-hit,.chart-bar-hit{fill:transparent;cursor:crosshair}.chart-bar-hit{cursor:default}.chart-tooltip{position:absolute;z-index:5;display:grid;gap:4px;min-width:170px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink);font-size:12.5px;pointer-events:none}.chart-tooltip[hidden]{display:none}.chart-tooltip span{display:flex;align-items:center;gap:7px;color:var(--muted)}.chart-tooltip span.is-current{color:var(--ink);font-weight:700}.chart-tooltip b{margin-left:auto;padding-left:12px;color:var(--ink);font-variant-numeric:tabular-nums}.see-all-link{font-weight:750;color:var(--teal-800);white-space:nowrap}.recent-activity-list{list-style:none;margin:0;padding:0 22px 10px}.recent-activity-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--line)}.recent-activity-list li:first-child{border-top:0}.recent-activity-list li>div{min-width:0}.recent-activity-list strong,.recent-activity-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-activity-list small{margin-top:2px;color:var(--muted);font-size:12px}.recent-activity-list li>span{flex:none;font-weight:750;font-variant-numeric:tabular-nums}.recent-activity-empty{color:var(--muted)}:is(#plan-head,.pinned-plan-head) th .plan-head-arrow,:is(#plan-head,.pinned-plan-head) th .plan-head-next{display:none}:is(#plan-head,.pinned-plan-head) th .plan-head-next-compact{display:block;margin-top:3px;color:var(--muted);white-space:nowrap}.setting-card #primary-income-name,.setting-card #secondary-income-name{display:block;width:100%;margin-top:5px;margin-bottom:10px}.setting-card #save-income-names{display:block}.account-insights{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1100px){.account-insights{grid-template-columns:minmax(0,1fr)}}.account-insights>*{min-width:0}.chart-box{overflow:hidden;margin-right:18px}.balance-details .latest-activity-row dd{display:flex;justify-content:flex-end;min-width:0;white-space:nowrap;overflow-wrap:normal}.balance-details .latest-activity-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.balance-details .latest-activity-amount,.balance-details .latest-activity-row dt{flex:none}.nav-item[data-view=home]{--tint: var(--logo-teal)}.nav-item[data-view=accounts]{--tint: var(--logo-blue)}.nav-item[data-view=plan]{--tint: var(--logo-purple)}.nav-item[data-view=transactions]{--tint: var(--logo-orange)}.nav-item[data-view=debts]{--tint: var(--logo-red)}.nav-item[data-view=loans]{--tint: var(--logo-yellow)}.nav-item[data-view=savings]{--tint: var(--logo-green)}body{--page-tint: var(--logo-teal);--page-strong: #07696d}body[data-page=accounts]{--page-tint: var(--logo-blue);--page-strong: #2c5aa0}body[data-page=plan]{--page-tint: var(--logo-purple);--page-strong: #5b3d94}body[data-page=transactions]{--page-tint: var(--logo-orange);--page-strong: #b0520e}body[data-page=import]{--page-tint: var(--logo-green);--page-strong: #2d7a36}body[data-page=debts]{--page-tint: var(--logo-red);--page-strong: #b8182c}body[data-page=loans]{--page-tint: var(--logo-yellow);--page-strong: #836800}body[data-page=savings]{--page-tint: var(--logo-green);--page-strong: #2d7a36}body[data-page=settings]{--page-tint: #7d8c8e;--page-strong: #4f5f61}[data-theme=dark] body{--page-strong: color-mix(in srgb, var(--page-tint) 70%, #ffffff)}.topbar{background:color-mix(in srgb,color-mix(in srgb,var(--page-tint) 16%,var(--surface)) 94%,transparent);border-bottom:1px solid color-mix(in srgb,var(--page-tint) 22%,var(--line))}[data-theme=dark] .topbar{background:color-mix(in srgb,color-mix(in srgb,var(--page-tint) 22%,var(--surface)) 94%,transparent)}.nav-item.is-active{background:color-mix(in srgb,var(--tint) 18%,transparent);color:color-mix(in srgb,var(--tint) 80%,var(--ink))}[data-theme=dark] .nav-item.is-active{background:color-mix(in srgb,var(--tint) 30%,transparent);color:color-mix(in srgb,var(--tint) 45%,var(--ink))}body:not([data-page=home]){background:color-mix(in srgb,var(--page-tint) 5%,var(--bg))}body:not([data-page=home]) .view.is-active .eyebrow{color:var(--page-strong)}body:not([data-page=home]) .view.is-active .primary-button{background:var(--page-strong);border-color:var(--page-strong);color:#fff}body:not([data-page=home]) .view.is-active .primary-button:hover{background:color-mix(in srgb,var(--page-strong) 85%,#000000)}[data-theme=dark] body:not([data-page=home]) .view.is-active .primary-button{color:#0b1a1b}[data-theme=dark] body:not([data-page=home]) .view.is-active .primary-button:hover{background:color-mix(in srgb,var(--page-strong) 85%,#ffffff)}body:not([data-page=home]) .view.is-active :is(.text-button:not(.danger),.see-all-link){color:var(--page-strong)}body:not([data-page=home]) .view.is-active thead th,body:not([data-page=home]) .pinned-table-head th,body:not([data-page=home]) :is(#plan-head,.pinned-plan-head) th{border-bottom-color:color-mix(in srgb,var(--page-tint) 45%,var(--line))}.nav-item.is-active{color:color-mix(in srgb,var(--tint) 62%,var(--ink))}body:not([data-page=home]) .view.is-active .transactions-toolbar-row{background:linear-gradient(180deg,color-mix(in srgb,var(--page-tint) 12%,var(--surface)),var(--surface));border-bottom-color:color-mix(in srgb,var(--page-tint) 35%,var(--line))}body:not([data-page=home]) .view.is-active .plan-table tr:not(.plan-summary-row)+tr.plan-summary-row>*{border-top-color:color-mix(in srgb,var(--page-tint) 45%,var(--line))}.savings-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.savings-summary .metric-value{font-size:clamp(28px,2.6vw,38px)}@media(max-width:1180px){.savings-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.savings-summary{grid-template-columns:minmax(0,1fr)}}.savings-insights{margin-top:16px}.purchase-planner{margin-bottom:18px;padding-bottom:20px}.purchase-planner .panel-heading p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-size:13px}.planner-form{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr;gap:12px;padding:4px 22px 16px}.planner-form label{display:grid;gap:6px;align-content:start;color:var(--muted);font-size:12px;font-weight:760}.planner-form label small{font-weight:600}.planner-form input{width:100%;min-height:44px}@media(max-width:1180px){.planner-form{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-form label:first-child{grid-column:1 / -1}}@media(max-width:520px){.planner-form{grid-template-columns:minmax(0,1fr)}}.planner-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 22px}@media(max-width:1180px){.planner-results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.planner-results{grid-template-columns:minmax(0,1fr)}}.planner-empty{grid-column:1 / -1;margin:0;padding:14px 16px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:13px}.planner-option{display:grid;align-content:start;gap:6px;min-width:0;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--page-tint) 5%,var(--surface))}.planner-option.is-warning{border-color:color-mix(in srgb,var(--red) 40%,var(--line))}.planner-option h3{margin:0;font-size:15px}.planner-option h3 small{color:var(--muted);font-size:11.5px;font-weight:650}.planner-option p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.4}.planner-option .planner-big{color:var(--ink);font-size:24px;font-weight:820;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.planner-option .planner-big small{color:var(--muted);font-size:12px;font-weight:650;letter-spacing:0}.planner-option .planner-big.is-negative{color:var(--plan-debit-red)}.planner-option .planner-note{font-size:11.5px}.planner-schedule{list-style:none;margin:2px 0;padding:0;display:grid;gap:3px;font-size:12.5px}.planner-schedule li{display:flex;justify-content:space-between;gap:8px}.planner-schedule span{color:var(--muted)}.planner-schedule strong{font-variant-numeric:tabular-nums}.planner-table{width:100%;min-width:0;border-collapse:collapse;font-size:12.5px}.planner-table th,.planner-table td{padding:4px 0;background:none;border:0;font-size:12px;letter-spacing:0;text-transform:none}.planner-table th{color:var(--muted);font-weight:700}.planner-table tbody tr+tr td{border-top:1px solid var(--line)}.planner-form .suffix-input>span{white-space:nowrap}.planner-form label>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planner-plans{list-style:none;margin:2px 0;padding:0;display:grid}.planner-plans li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0}.planner-plans li+li{border-top:1px solid var(--line)}.planner-plans strong,.planner-plans small{display:block}.planner-plans small{color:var(--muted);font-size:11.5px}.planner-plans span{text-align:right;font-variant-numeric:tabular-nums}.planner-plans span strong{font-size:15px}.savings-goals{margin-bottom:18px;padding-bottom:18px}.savings-goals .panel-heading p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-size:13px}.goal-list{list-style:none;margin:0;padding:0 22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.goal-item{display:grid;gap:7px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--page-tint) 5%,var(--surface))}.goal-empty{grid-column:1 / -1;padding:14px 16px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:13px}.goal-top{display:flex;align-items:center;gap:8px;min-width:0}.goal-top strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.goal-actions{margin-left:auto;display:flex;gap:2px}.goal-actions .text-button{padding:4px 7px}.goal-bar{height:8px;border-radius:999px;background:color-mix(in srgb,var(--page-tint) 14%,var(--surface-2));overflow:hidden}.goal-bar span{display:block;height:100%;border-radius:inherit;background:var(--page-strong)}.goal-item p{margin:0;color:var(--muted);font-size:12.5px}.goal-item p strong{color:var(--ink)}.status-pill.goal-reached,.status-pill.goal-on-pace{color:var(--green);background:color-mix(in srgb,var(--green) 14%,transparent)}.status-pill.goal-behind{color:#9a6200;background:color-mix(in srgb,#f0a800 18%,transparent)}.status-pill.goal-overdue{color:var(--plan-debit-red);background:color-mix(in srgb,var(--red) 12%,transparent)}.status-pill.goal-none{color:var(--muted);background:var(--surface-2)}[data-theme=dark] .status-pill.goal-behind{color:#f5c25a}.goal-form{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;align-items:end;padding:14px 22px 0}.goal-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:760}.goal-form label small{font-weight:600}.goal-form input{width:100%;min-height:44px}.goal-form .primary-button{min-height:44px}@media(max-width:820px){.goal-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.goal-form label:first-child,.goal-form .primary-button{grid-column:1 / -1}}.planner-save-goal{justify-self:start;margin-top:4px}.chart-goal{stroke:color-mix(in srgb,var(--muted) 80%,transparent);stroke-width:1.5;stroke-dasharray:5 4}.chart-goal-label{fill:var(--muted);font-size:11px;font-weight:700}.goal-item[data-goal-edit]{cursor:pointer}.goal-item[data-goal-edit]:hover{border-color:color-mix(in srgb,var(--page-tint) 45%,var(--line))}.goal-item.is-editing{border-color:var(--page-strong);box-shadow:0 0 0 2px color-mix(in srgb,var(--page-tint) 30%,transparent)}.planner-editing{margin:0 22px 12px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--page-tint) 12%,var(--surface));color:var(--ink);font-size:13px}.planner-editing[hidden]{display:none}.planner-goal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.view .panel[id]{scroll-margin-top:104px}@media(max-width:820px){.view .panel[id]{scroll-margin-top:96px}}#home-sections .eyebrow{font-size:12.5px}.savings-preview .savings-balance{font-size:clamp(40px,4.2vw,54px);line-height:1.05;padding-top:10px}.savings-preview .savings-meta{margin-top:auto}@media(max-width:820px){.savings-preview .savings-balance{font-size:40px}.savings-preview .savings-meta{margin-top:0}}@media(min-width:821px){.savings-preview .savings-balance{flex:1 1 auto;display:flex;align-items:center;font-size:clamp(44px,4.6vw,60px);padding-top:0}.savings-preview .savings-meta{margin-top:0}}.savings-summary .cushion-value{white-space:nowrap;overflow:hidden}@media(min-width:821px){.next-payday-card .payday-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.next-payday-card .payday-projection{border-left:1px solid var(--line);padding:4px 0}.next-payday-card .payday-projection hr{display:none}.next-payday-card .payday-incomes{padding:4px 0}}.home-sections>.home-section:not(.home-section-wide){min-height:0}.upcoming-panel.home-section:not(.home-section-wide){max-height:none}.spending-panel{display:flex;flex-direction:column;padding-bottom:14px}.spending-total{text-align:right}.spending-total strong,.spending-total small{display:block}.spending-total strong{font-size:22px;font-weight:820;font-variant-numeric:tabular-nums}.spending-total small{color:var(--muted);font-size:12px}.spending-list{list-style:none;margin:0;padding:0 22px;display:grid;gap:12px}.home-section-wide .spending-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));column-gap:28px}.spending-row{display:flex;justify-content:space-between;gap:10px;font-size:14px}.spending-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.spending-row strong{font-variant-numeric:tabular-nums}.spending-bar{height:7px;margin-top:5px;border-radius:999px;background:color-mix(in srgb,var(--logo-orange) 14%,var(--surface-2));overflow:hidden}.spending-bar span{display:block;height:100%;border-radius:inherit;background:color-mix(in srgb,var(--logo-orange) 80%,var(--ink))}.spending-change{display:block;margin-top:3px;color:var(--muted);font-size:11.5px}.spending-change.is-up{color:var(--plan-debit-red)}.spending-change.is-down{color:var(--green)}.spending-empty{color:var(--muted);font-size:13px}@media(max-width:520px){.next-payday-card .payday-amount{flex-wrap:wrap;row-gap:4px}.next-payday-card .payday-allowance{align-items:flex-start;text-align:left}}.debt-preview h2{font-size:clamp(30px,3vw,40px)}.debt-preview>#debt-preview{flex:1 1 auto}.debt-preview .debt-outlook{margin-top:auto}.upcoming-panel.home-section{display:flex;flex-direction:column;overflow:hidden}.upcoming-panel.home-section:not(.home-section-wide){overflow-y:hidden}.upcoming-panel .upcoming-list{flex:1 1 auto;min-height:0;max-height:340px;overflow-y:auto}#review-tile{overflow-y:hidden}.balance-half,.balance-details,.balance-details>div{min-width:0}.balance-details{grid-template-columns:minmax(0,1fr)}.balance-details dd{min-width:0}.balance-details .latest-activity-row dt{flex:0 1 auto;white-space:nowrap}.balance-details .latest-activity-row dd{flex:1 1 auto;overflow:hidden}.upcoming-panel.home-section{padding-bottom:20px}.upcoming-panel>.full{margin-top:auto;flex-shrink:0}.date-badge-long{display:none}@media(min-width:821px){.next-payday-card .payday-body{align-items:start}.next-payday-card .payday-projection{align-self:stretch}.next-payday-card .date-badge-long{display:inline}}.brand-hub{display:inline-block;margin-left:2px;padding:2px 7px 1px;border-radius:7px;background:linear-gradient(135deg,var(--logo-teal),var(--logo-blue));color:#fff;font-size:.55em;font-weight:850;letter-spacing:.08em;vertical-align:.32em;line-height:1.3}.brand-kicker{line-height:1.35;letter-spacing:.06em}.brand-tagline{display:block;margin-top:3px;color:var(--muted);font-size:11.5px;font-style:italic;font-weight:600}.auth-card h1.auth-brand{margin-bottom:4px}.auth-brand .brand-hub{margin-left:-6px}.auth-subtitle{margin:0;color:var(--muted);font-size:13px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.auth-tagline{margin:6px 0 18px;color:var(--teal-800);font-size:16px;font-style:italic;font-weight:650}.brand{flex-wrap:wrap;align-items:flex-start;gap:8px 9px;padding-left:4px;padding-right:4px}.brand-title{flex:1 1 0;min-width:0;min-height:60px;display:flex;flex-direction:column;justify-content:flex-start;gap:2px}.brand .brand-title .brand-name{align-self:flex-start;font-size:24px;line-height:1.1;font-weight:900;letter-spacing:-.05em;white-space:nowrap}.brand-row{flex:0 0 auto;display:flex;align-items:center;gap:4px}.brand .brand-row .brand-hub{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:36px;height:22px;margin:0;padding:0;border-radius:5px;font-size:11px;line-height:1;letter-spacing:.08em;vertical-align:baseline}.brand .brand-row .brand-kicker{position:relative;top:1px;display:block;align-self:center;margin:0;font-size:10px;line-height:1.25;letter-spacing:0;white-space:nowrap}.brand-title .brand-tagline{align-self:flex-start;margin-top:2px;font-size:12px;line-height:1.1;white-space:nowrap}@media(max-width:1100px)and (min-width:821px){.brand>div{display:none}}.metric-value,.savings-balance,.debt-balance,.payday-balance,.panel-heading h2.big-amount{transform:scaleY(.95);transform-origin:left center}.nav-list .nav-item{font-weight:800;letter-spacing:-.025em}.topbar h1{font-family:Playfair Display,Georgia,Times New Roman,serif;font-weight:600;letter-spacing:-.015em}.home-toolbar{justify-content:center;margin:22px 0 6px}[data-page=home] .home-sections{margin-top:16px}.toast-action{margin-left:10px;padding:4px 12px;border:1px solid color-mix(in srgb,var(--surface) 60%,transparent);border-radius:999px;background:transparent;color:var(--surface);font:inherit;font-weight:800;cursor:pointer}.toast-action:hover{background:color-mix(in srgb,var(--surface) 16%,transparent)}.toast.is-visible{pointer-events:auto}[data-page=plan] .page-actions{flex-wrap:nowrap}[data-page=plan] .plan-schedule-picker{min-width:0}[data-page=plan] #toggle-pay-schedules{flex:0 0 auto;white-space:nowrap}@media(max-width:820px){[data-page=plan] .page-intro>.page-actions{width:100%;flex-wrap:nowrap}[data-page=plan] .plan-schedule-picker{flex:1 1 auto}[data-page=plan] .plan-schedule-picker select{min-width:0;width:100%}}[data-page=plan] #toggle-pay-schedules{min-width:120px}.secondary-button.undo-import-button{background:color-mix(in srgb,var(--ink) 6%,var(--surface));border-color:color-mix(in srgb,var(--ink) 10%,var(--line))}.secondary-button.undo-import-button:not(:disabled):hover{background:color-mix(in srgb,var(--ink) 10%,var(--surface))}.button-row .undo-import-button{margin-right:auto}.debt-filter-row{flex-wrap:nowrap;align-items:center}.debt-filter-row .page-size-picker{min-width:0;flex:0 1 auto}.debt-filter-row select{min-width:0;min-height:36px;padding-top:6px;padding-bottom:6px;font-size:13px}.debt-filter-row #add-credit-card{flex:0 0 auto;white-space:nowrap}.debt-filter-row{gap:10px}.debt-filter-row select{padding-right:28px}.debt-filter-row .page-size-picker>span{white-space:nowrap}.card-outline-button{margin-top:14px;padding:8px 14px;border:1px solid rgba(255,255,255,.85);border-radius:10px;background:transparent;color:#fff;font:inherit;font-size:13px;font-weight:750;cursor:pointer;transition:background .15s ease,border-color .15s ease}.card-outline-button:hover,.card-outline-button:focus-visible{background:#2e9e63;border-color:#2e9e63}.card-outline-button:disabled{opacity:.55;cursor:not-allowed;background:transparent;border-color:#ffffffd9}@media(max-width:820px){.settings-grid>.setting-card{order:3}.settings-grid>.setting-card:first-child{order:0}.settings-grid>.household-card{order:1}.settings-grid>.navigation-order-card{order:2}}.transaction-type-card{padding-top:0;padding-bottom:0}.manage-types>summary{display:flex;align-items:center;gap:12px;padding:18px 0;cursor:pointer;list-style:none}.manage-types>summary::-webkit-details-marker{display:none}.manage-types>summary:after{content:"›";margin-left:auto;color:var(--muted);font-size:22px;line-height:1;transition:transform .15s ease}.manage-types[open]>summary:after{transform:rotate(90deg)}.manage-types-title{font-size:17px;font-weight:800;color:var(--ink)}.manage-types-hint{color:var(--muted);font-size:13px}.manage-types[open]{padding-bottom:20px}@media(max-width:820px){.manage-types>summary{flex-wrap:wrap;row-gap:2px}.manage-types-hint{order:3;flex-basis:100%}}.settings-grid>.transaction-type-card{grid-column:auto;align-self:start}@media(max-width:820px){.settings-grid>.cloud-access-card{order:4}}.manage-types>summary{flex-wrap:wrap;row-gap:2px}.manage-types-title{white-space:nowrap}.manage-types-hint{order:3;flex-basis:100%}.settings-grid>.transaction-type-card:has(>.manage-types[open]){grid-column:1 / -1}.settings-grid:has(.manage-types[open])>.cloud-access-card{display:none}.settings-grid>.cloud-access-card{align-self:start;padding-top:18px;padding-bottom:18px}.cloud-access-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.cloud-access-card h3{margin:0;font-size:17px;line-height:1.3}.cloud-access-card p{margin:0;font-size:13px}.settings-grid>.cloud-access-card,.settings-grid>.transaction-type-card{align-self:stretch}.top-icon{width:24px;height:24px;display:block}.transactions-table .amount-negative,.recent-activity-list .amount-negative,#recent-payments-list .amount-negative{color:var(--plan-debit-red)}#loan-grid>.empty-feature{margin-bottom:0}.loans-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;align-items:stretch}.loans-footer:has(>.paid-off-panel[hidden]){grid-template-columns:minmax(0,1fr)}.loans-footer>.panel{margin:0}.add-loan-tile{display:flex;flex-direction:column;border:1.5px dashed color-mix(in srgb,var(--page-strong, var(--teal-700)) 45%,var(--line));background:color-mix(in srgb,var(--page-tint, var(--teal-100)) 10%,var(--surface));box-shadow:none}.add-loan-text{margin:0;padding:0 22px;color:var(--muted);font-size:13px;line-height:1.45}.add-loan-tile #add-loan{align-self:flex-start;margin:auto 22px 22px;white-space:nowrap}.add-loan-text{font-size:14px}@media(max-width:820px){.add-loan-tile #add-loan{margin-top:14px}}.loans-footer .paid-off-panel .table-scroll{height:160px;overflow-y:auto;margin-bottom:8px}.loans-footer .paid-off-panel table{min-width:0}.loans-footer .paid-off-panel th{position:sticky;top:0;z-index:1;height:34px;padding:0 14px}.loans-footer .paid-off-panel td{height:42px;padding:0 14px;white-space:nowrap}.loans-footer .paid-off-panel td:first-child strong{display:block;max-width:16ch;overflow:hidden;text-overflow:ellipsis}@media(max-width:820px){.loans-footer{grid-template-columns:minmax(0,1fr)}}.add-loan-text{margin-bottom:14px}@media(max-width:820px){.add-loan-tile #add-loan{margin-top:0}}.paid-off-date-inline{display:none}.loans-footer .paid-off-panel{container-type:inline-size}@container (max-width: 450px){.loans-footer .paid-off-panel th:nth-child(3),.loans-footer .paid-off-panel td:nth-child(3){display:none}.loans-footer .paid-off-panel .paid-off-date-inline{display:block;margin-top:1px;color:var(--muted);font-size:11.5px}.loans-footer .paid-off-panel td{height:50px;padding:0 12px}.loans-footer .paid-off-panel th{padding:0 12px}.loans-footer .paid-off-panel .table-scroll{height:184px}}@media(min-width:1101px)and (max-width:1240px){main{padding-left:24px;padding-right:24px}.topbar{padding-left:24px;padding-right:24px}}.data-transfer-card{grid-column:1 / -1}.data-transfer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.data-transfer-actions label:has(+.visually-hidden-input:focus-visible){outline:2px solid var(--teal-700);outline-offset:2px}.data-transfer-actions label:has(+.visually-hidden-input:disabled){opacity:.55;pointer-events:none}#data-transfer-status{overflow-wrap:anywhere}.sandbox-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#b45309;color:#fff;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.auth-card .sandbox-badge{margin:-8px 0 14px}body.is-sandbox .topbar{background-image:repeating-linear-gradient(135deg,#b45309 0 10px,#f59e0b 10px 20px);background-size:100% 5px;background-repeat:no-repeat;background-position:bottom}
