@font-face{font-family:Circular;src:local("Circular Std Book"),local("CircularStd-Book"),local("Circular Book");font-weight:400;font-display:swap}@font-face{font-family:Circular;src:local("Circular Std Medium"),local("CircularStd-Medium");font-weight:500 600;font-display:swap}@font-face{font-family:Circular;src:local("Circular Std Bold"),local("CircularStd-Bold");font-weight:700 800;font-display:swap}:root{--ink:#333b38;--muted:#6c746f;--green:#315443;--line:#dcded8;--soft:#eeefe9;--sage:#e6ecdf;--orange:#a76d35}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px Circular,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a7bf91;outline-offset:3px}button:disabled:not(.budgetrow):not(.transaction):not(.debtrow button){opacity:.6}a{color:var(--green)}button{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:32px;letter-spacing:-1.2px;line-height:1.25}h1,h2{font-weight:600}h2{font-size:16px;letter-spacing:-.2px}h3{font-size:14px;font-weight:600}p{line-height:1.65}.small,p,small{color:var(--muted)}.small,small{font-size:12px;line-height:1.55}strong{font-weight:600}svg{flex-shrink:0}button{border:0;background:none}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;padding:30px 18px 20px;background:#e9ebe5;display:flex;flex-direction:column;z-index:20}.brand{font-size:25px;font-weight:800;letter-spacing:-1px;padding:0 10px}.brand span{font-size:13px;letter-spacing:1.5px;color:var(--green);margin-left:5px}.workspace{display:grid;gap:7px;margin:26px 8px 28px;padding-bottom:25px;border-bottom:1px solid var(--line)}.workspace strong{font-size:14px}.eyebrow{text-transform:uppercase;font-weight:600;letter-spacing:1.5px;font-size:10px;color:var(--muted)}.navlabel{margin:0 12px 12px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{display:flex;gap:12px;align-items:center;text-align:left;min-height:44px;padding:11px 12px;border-radius:7px;color:#626e75;font-size:13px}.sidebar nav button.active{background:#eaf0e6;color:var(--green);font-weight:600}.sidebar nav button:hover{background:#eef1ee}.sidebar nav small{margin-left:auto;font-size:10px;background:#e0e7db;padding:1px 5px;border-radius:4px}.sidebottom{margin-top:auto}.sidenote{margin:24px 7px;padding:17px 14px;background:#edf1e9;border-radius:8px;color:var(--green)}.sidenote svg{margin-bottom:12px;display:block}.sidenote strong{display:block;font-size:12px}.sidenote p{font-size:11px;margin-top:6px;color:#7c8874}.account{display:flex;align-items:center;gap:9px;margin:0 8px}.account strong{font-size:12px}.account small{display:block;font-size:10px}.account a{margin-left:auto;color:var(--muted)}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e8edde;color:var(--green);font-size:13px}.main{margin-left:224px;padding:0 44px 28px;max-width:1660px}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.topbar>div,.topbar>span{display:flex;align-items:center;gap:12px}.privacy{display:flex;align-items:center;gap:6px;background:#f5f7f4;padding:6px 9px;border-radius:5px;font-size:10px;color:#6c7a6b}.iconbtn{display:inline-grid;place-items:center;min-width:36px;min-height:36px;border-radius:6px;color:var(--muted)}.iconbtn:hover{background:var(--soft)}.intro{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:34px 0 26px}.intro h1{margin:8px 0}.intro p{font-size:13px}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions,.btn{align-items:center}.btn{display:inline-flex;justify-content:center;gap:8px;background:var(--green);color:#fff;border:1px solid var(--green);border-radius:7px;padding:10px 15px;min-height:40px;font-size:12px;font-weight:600;text-decoration:none;box-shadow:0 1px 2px #0000000b;white-space:nowrap}.btn:hover{filter:brightness(.96)}.btn.light{background:var(--surface);color:var(--ink);border-color:var(--line)}.textbtn{display:inline-flex;gap:6px;font-size:11px;color:var(--green);font-weight:600;padding:5px 0;text-decoration:none}.hero,.textbtn{align-items:center}.hero{display:flex;justify-content:space-between;gap:24px;background:#f3f7ed;border:1px solid #dde6d3;border-radius:10px;padding:30px 34px;margin-bottom:24px}.hero .eyebrow{color:#718269}.heroamount{font-size:46px;font-weight:600;letter-spacing:-2px;line-height:1.2;margin:14px 0 12px;font-variant-numeric:tabular-nums;color:var(--green)}.hero p{font-size:12px;color:#7b8575}.hero .textbtn{margin-top:14px}.heroaside{display:grid;justify-items:center;gap:12px;padding:0 15px}.heroaside .small{font-size:10px}.ring{width:112px;height:112px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--green) var(--progress),#dfe8d5 0);position:relative;transform:rotate(-90deg)}.ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#f3f7ed}.ring span{position:relative;transform:rotate(90deg);font-size:28px;letter-spacing:-1px;text-align:center}.ring small{display:block;font-size:10px;letter-spacing:0}.hero.compact{padding:26px 30px}.hero.compact h2{font-size:26px;line-height:1.35;margin:13px 0}.heroicon{color:#93a88b;margin-right:25px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:9px;margin-bottom:26px;overflow:hidden}.stats>div{padding:22px 26px;border-right:1px solid var(--line);min-width:0}.stats>div:last-child{border-right:0}.stats span{color:var(--muted);font-size:12px}.stats strong{display:block;font-size:28px;letter-spacing:-1px;margin:13px 0 8px;font-variant-numeric:tabular-nums}.stats small{display:flex;align-items:center;gap:5px;font-size:10px}.grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px}.details{margin-top:24px}.grid>div>.panel+.panel{margin-top:22px}.panel{border:1px solid var(--line);border-radius:9px;background:var(--surface);overflow:hidden;min-width:0;box-shadow:0 2px 4px #1a234002}.panelhead{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:19px 22px;border-bottom:1px solid var(--line);min-height:60px}.panelbody{padding:22px}.panelbody>p{margin-top:16px}.panelbody>h3{margin-top:18px}.taskrow{display:flex;align-items:center;gap:13px;padding:21px 22px;width:100%;text-align:left;border-bottom:1px solid #edf0ed}.taskrow:last-child{border-bottom:0}.taskrow:hover{background:#fafbf9}.taskrow>span:nth-child(2){flex:1}.taskrow strong{display:block;font-size:12px}.taskrow small{display:block;font-size:11px;margin-top:5px}.taskrow>svg{color:#9aa59c}.tile{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:7px;background:#f0f2f5;color:#77828c}.tile.olive{background:#edf2e7;color:#6a805a}.tile.cream{background:#f7f1e5;color:#a68c55}.badge{display:inline-block;background:#edf3e9;color:#638052;font-size:10px;padding:5px 8px;border-radius:4px;line-height:1.4}.badge.warning{background:#faf1e1;color:#9d783b}.split{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px;font-size:12px}.split>span{color:var(--muted)}.split strong{font-variant-numeric:tabular-nums;white-space:nowrap}.split small{display:block}.split.total{border-top:1px solid var(--line);padding-top:18px}.notice{display:flex;align-items:flex-start;gap:12px;padding:16px 19px;background:#fbf8ef;border:1px solid #eee6d4;border-radius:8px;font-size:12px;line-height:1.6;color:#88724c;margin:24px 0}.notice>span{flex:1}.notice strong,.notice>button{font-weight:600}.notice>button{color:inherit;font-size:11px;min-height:24px}.notice.danger{color:#a04239;background:#fcf3f1;border-color:#efd7d3}.budgetrow{display:flex;align-items:center;gap:9px;justify-content:space-between;width:100%;padding:15px 22px;text-align:left;border-bottom:1px solid #f0f2ef;font-size:12px}.budgetrow:last-child{border-bottom:0}.budgetrow>span:first-child{flex:1}.budgetrow small{display:block;font-size:10px;margin-top:4px}.budgetrow>strong{white-space:nowrap;font-variant-numeric:tabular-nums}.budgetrow>svg{color:#adb4ae}.budgetrow:not(:disabled):hover,.note{background:#fafbf9}.note{padding:22px;border:1px solid var(--line);border-radius:9px;margin-top:22px}.note>svg{color:#7d9271;margin-bottom:12px}.note h3{font-size:13px}.note p{font-size:12px;margin-top:9px}.toolbar{display:flex;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}.search{display:flex;align-items:center;gap:9px;flex:1;border:1px solid var(--line);border-radius:6px;padding:0 12px;color:var(--muted);min-width:0}.search input{border:0;padding:10px 0;min-width:0;width:100%;font-size:12px}.search input:focus{outline:0}input,select,textarea{border:1px solid var(--line);border-radius:6px;padding:10px 12px;background:var(--surface);color:var(--ink);min-width:0;max-width:100%;min-height:40px}input[type=month]{font-size:12px;width:158px}input[type=checkbox]{min-height:18px;width:17px;height:17px;accent-color:var(--green)}input[type=range]{accent-color:var(--green);padding:0;min-height:24px}select{font-size:12px}.transaction{display:flex;align-items:center;gap:13px;width:100%;padding:16px 22px;text-align:left;border-bottom:1px solid #eef1ed}.transaction:hover{background:#fafbf9}.transaction:last-child{border-bottom:0}.txdescription{flex:1;min-width:0}.txdescription strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px}.txdescription small{display:block;font-size:10px;margin-top:5px}.txamount{text-align:right;white-space:nowrap}.txamount strong{font-size:12px;font-variant-numeric:tabular-nums}.txamount small{display:block;font-size:10px;margin-top:5px}.positive{color:#458163}.negative{color:#b2574d!important}.empty{text-align:center;padding:48px 24px}.empty>svg{color:#94a589;margin-bottom:16px}.empty h2,.empty h3{margin-bottom:12px}.empty p{font-size:12px}.empty .btn{margin-top:22px}.bar{height:6px;background:#edf1e9;overflow:hidden}.bar,.bar i{border-radius:5px}.bar i{display:block;height:100%;background:#779366}.bar i.over{background:#c49a61}.match{margin-bottom:23px}.match .split{margin-bottom:10px}.match .split small{display:inline;font-size:10px}.debtrow{display:flex;align-items:center;gap:9px;padding:15px 18px;border-top:1px solid var(--line)}.debtrow button{display:flex;justify-content:space-between;gap:14px;width:100%;text-align:left;min-width:0}.debtrow strong{font-size:12px;display:block}.debtrow small{font-size:10px;display:block;margin-top:5px}.debtrow .right{text-align:right;white-space:nowrap}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}label{display:grid;gap:9px;font-size:12px;font-weight:500}.panelbody>label{margin:18px 0}.simulation{background:#f4f7ef;padding:20px;border-radius:7px;margin:20px 0;color:var(--green)}.simulation>span{display:block;font-size:11px;line-height:1.6}.simulation>strong{font-size:28px;letter-spacing:-1px;display:block;margin:8px 0}.simulation strong small{font-size:12px;letter-spacing:0;margin-left:4px}.warningtext{background:#fcf2e3;color:#9b7339;padding:13px;border-radius:6px;font-size:12px;line-height:1.6}.goalgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.goal{padding:26px}.goal>svg{color:#7a906b;margin-bottom:18px}.goal h2{margin-bottom:20px}.goal>strong{display:block;font-size:28px;letter-spacing:-.8px;margin-bottom:18px}.goal strong small{font-size:12px;letter-spacing:0}.goal p{font-size:12px;margin:18px 0}.timeline{padding:22px}.event{display:flex;gap:12px;align-items:flex-start;padding-bottom:24px}.event:last-child{padding-bottom:0}.eventdot{height:7px;width:7px;background:#a1b593;border-radius:50%;flex-shrink:0;margin-top:6px}.event strong{font-size:12px;display:block}.event small{font-size:10px;display:block;margin-top:5px}.person{display:flex;align-items:center;gap:12px;margin-bottom:22px}.person strong{font-size:12px}.person small{display:block;font-size:10px;margin-top:3px}.member{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.member strong{font-size:11px}.member small{font-size:10px;display:block}.stack{display:grid;gap:10px;margin-top:20px}.full{width:100%}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.panelbody p.prewrap{margin-top:0}footer{display:flex;align-items:center;gap:7px;margin:28px 0 0;color:#8f9994;font-size:10px;line-height:1.6}dialog{border:1px solid var(--line);border-radius:12px;box-shadow:0 28px 90px #263e3329;padding:0;width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 40px);color:var(--ink);background:var(--surface)}dialog::backdrop{background:#25382e55;backdrop-filter:blur(3px)}.modalhead{padding:19px 23px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--surface);z-index:1}.form{display:grid;gap:19px;padding:24px}.form>p{font-size:12px}.form input,.form select,.form textarea{width:100%}.form .actions{margin-top:6px}.importlist{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:14px}.importlist .split{padding-bottom:12px;border-bottom:1px solid var(--line);font-size:11px}.importlist .split:last-child{border:0;padding:0;margin:0}.importlist .split>span{min-width:0;overflow-wrap:anywhere}.importlist small{font-size:10px;margin-top:4px}.toast{position:fixed;bottom:24px;left:calc(50% + 112px);transform:translateX(-50%);background:#284e3e;color:white;border-radius:9px;box-shadow:0 8px 35px #263e3322;display:flex;align-items:center;gap:10px;padding:15px 20px;font-size:12px;z-index:100;max-width:calc(100vw - 40px);width:max-content}.login{max-width:600px;margin:10vh auto;padding:36px}.login .brand{padding:0;margin-bottom:70px}.login h1{font-size:50px;letter-spacing:-2px;margin:20px 0}.login p{margin:20px 0 30px}.login .btn{margin-right:20px}.login>small{display:block;margin-top:25px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(min-width:1600px){.main{margin-right:auto}}@media(max-width:1150px){.main{padding:0 25px 28px}.grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px}.stats>div{padding:20px}.stats strong{font-size:24px}.hero{padding:26px}.panelbody,.panelhead,.taskrow{padding:18px}.transaction{padding:15px}.budgetrow{padding:15px 18px}.intro{gap:12px}.intro .actions{justify-content:flex-end}}@media(max-width:900px){.sidebar{width:194px;padding:25px 12px 18px}.main{margin-left:194px;padding:0 22px 25px}.grid{grid-template-columns:1fr}.heroamount{font-size:40px}.heroaside{padding:0}.ring{width:94px;height:94px}.stats strong{font-size:23px}.stats>div{padding:18px 15px}.stats span{font-size:11px}.intro{align-items:flex-start}.intro .actions{max-width:160px}.goalgrid{grid-template-columns:1fr}.toast{left:calc(50% + 97px)}}@media(max-width:650px){body{font-size:14px}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:auto;padding:6px 6px max(7px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#f2f1ebed;backdrop-filter:blur(15px)}.navlabel,.sidebar>.brand,.sidebottom,.workspace{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.sidebar nav button{flex-direction:column;justify-content:center;gap:5px;font-size:9px;padding:9px 0;min-height:52px;position:relative}.sidebar nav button svg{width:19px;height:19px}.sidebar nav small{position:absolute;top:2px;right:8px;font-size:8px;margin:0}.main{margin:0;padding:0 18px 98px}.topbar{height:58px;font-size:10px}.topbar>span{gap:7px}.topbar>div{gap:5px}.privacy{font-size:9px;padding:5px 6px}.intro{margin:26px 0 22px;gap:12px;align-items:flex-start;flex-wrap:wrap}.intro>div:first-child{flex:1;min-width:190px}.intro h1{font-size:29px;margin:8px 0}.intro p{font-size:12px}.intro .actions{max-width:none;width:100%;justify-content:space-between}.intro .actions .btn{margin-left:auto}.intro .eyebrow{font-size:9px}.hero{padding:23px 20px;gap:12px;margin-bottom:18px;border-radius:9px}.heroamount{font-size:38px;letter-spacing:-1.7px;margin:14px 0 10px}.hero p{font-size:11px}.hero .eyebrow{font-size:9px;letter-spacing:.9px}.heroaside{gap:9px}.heroaside>.small{display:none}.ring{width:74px;height:74px}.ring:before{inset:5px}.ring span{font-size:22px}.ring small{font-size:9px}.hero .textbtn{font-size:10px}.stats{margin-bottom:20px}.stats>div{padding:16px 11px}.stats strong{font-size:20px;letter-spacing:-.8px;margin:10px 0 8px;white-space:nowrap}.stats span{font-size:10px;display:block;line-height:1.5;min-height:30px}.stats small{font-size:9px;line-height:1.6}.panelhead{padding:17px 16px;gap:8px}.panelhead h2{font-size:14px}.panelbody,.taskrow{padding:18px 16px}.taskrow{gap:10px}.taskrow strong{font-size:12px}.taskrow small{font-size:10px}.tile{width:33px;height:33px}.notice{font-size:11px;padding:14px 13px;margin:20px 0;gap:8px}.notice>button{font-size:10px}.grid{gap:18px}.details{margin-top:20px}.budgetrow{padding:14px 16px;font-size:12px}.note{padding:20px 17px;margin-top:18px}.note p{font-size:11px}.toolbar{padding:14px;flex-wrap:wrap;gap:10px}.toolbar .search{flex-basis:100%}.toolbar select{width:100%}.transaction{padding:15px 13px;gap:10px}.txdescription strong{font-size:11px}.txdescription small{font-size:9px;line-height:1.6}.txamount strong{font-size:11px}.txamount small{font-size:9px}.transaction .tile{width:28px;height:28px}.debtrow{padding:15px 13px}.debtrow strong{font-size:11px}.debtrow small{font-size:9px}.hero.compact{padding:24px 20px}.hero.compact h2{font-size:22px}.heroicon{width:40px;margin-right:0}.formgrid{gap:10px}.simulation>strong{font-size:26px}.toast{left:50%;bottom:85px;font-size:11px;width:calc(100vw - 32px)}footer{font-size:9px;align-items:flex-start}.form{padding:20px}.form input,.form select,.form textarea{font-size:16px}.login{margin:4vh auto;padding:30px 24px}.login h1{font-size:42px}.login .brand{margin-bottom:50px}.goal{padding:22px}.prewrap{font-size:12px}}.grid>div{min-width:0}.btn.recoverybtn{flex-direction:column;gap:5px;white-space:normal;overflow-wrap:anywhere;text-align:left;align-items:flex-start;line-height:1.5}.btn.recoverybtn small{font-weight:400}.deletezone{border-top:1px solid var(--line);padding-top:16px;margin-top:6px}.deletebtn{color:#a04239;min-height:44px}.btn.dangerbtn{background:#963d35;border-color:#963d35}.form .actions .btn{white-space:normal}.creditor-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}.creditor-due{margin-bottom:22px}.creditor-due h2,.creditor-toggle{display:flex;align-items:center;gap:8px}.creditor-toggle{padding:16px;font-size:12px}.creditor-toggle input{width:auto;min-height:20px}.creditor-selected{background:var(--sage)}.creditor-info dl{display:grid;gap:7px;margin:20px 0}.creditor-info dt{font-size:11px;color:var(--muted)}.creditor-info dd{margin:0 0 9px;overflow-wrap:anywhere;font-size:13px}.creditor-activity{padding:22px;border-top:1px solid var(--line);display:grid;gap:15px;overflow-wrap:anywhere}.creditor-activity .split{margin:0}.creditor-activity h3{font-size:13px}.creditor-activity p{font-size:12px}.creditor-grid .panelhead h2{overflow-wrap:anywhere}.creditor-grid .panelbody .btn{margin-top:16px}.creditor-grid .empty p+p{margin-top:15px}@media(max-width:900px){.creditor-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:650px){.sidebar nav{grid-template-columns:repeat(6,minmax(0,1fr))}.sidebar nav button{font-size:8px}.creditor-activity{padding:18px 16px}.creditor-grid .panelhead{flex-wrap:wrap}.form .formgrid{grid-template-columns:minmax(0,1fr);margin:0}.creditor-toggle{padding:14px 0}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;scroll-behavior:auto!important}}.priority-summary{display:flex;gap:12px;padding:22px;background:var(--sage);border-bottom:1px solid #dce5d5;color:var(--green)}.priority-summary>svg{margin-top:3px}.priority-summary span{font-size:11px}.priority-summary strong{display:block;font-size:26px;letter-spacing:-.7px;margin:9px 0}.priority-summary strong small{font-size:11px;letter-spacing:0;font-weight:400}.priority-summary p{font-size:11px;line-height:1.6}.expense-group{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 22px;background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.expense-group h3{font-size:11px;letter-spacing:.3px}.expense-group>span{font-size:11px;white-space:nowrap;color:var(--muted)}.expense-group.essential{color:var(--green);background:#f6f9f2}.budgetrow.priority-row{border-left:3px solid #829a70;padding-left:19px}.priority-label{display:inline-flex;align-items:center;gap:3px;color:#587344;font-weight:600}.budgetrow.priority-row:not(:disabled):hover{background:#f4f8ef}@media(max-width:650px){.priority-summary{padding:18px 16px;gap:10px}.priority-summary strong{font-size:25px}.expense-group{padding:14px 16px}.expense-group h3,.expense-group>span{font-size:10px}.budgetrow.priority-row{padding-left:13px}}.planning-panel{margin-bottom:24px}.planning-panel .panelhead h2{margin-top:6px}.scenario-control{display:grid;gap:12px}.money-input{display:flex;align-items:center;gap:9px}.money-input input{width:100%;font-size:21px;font-weight:600}.money-input>span{white-space:nowrap;color:var(--muted);font-size:11px}.scenario-result{display:grid;grid-template-columns:1fr 1fr;background:var(--sage);border-radius:9px;margin:22px 0;padding:24px;gap:24px}.scenario-result>div{min-width:0}.scenario-result span{font-size:12px;color:var(--muted)}.scenario-result strong{display:block;font-size:28px;letter-spacing:-.8px;margin:10px 0;color:var(--green);overflow-wrap:anywhere}.scenario-result small{display:block}.scenario-next{display:grid;gap:16px}.scenario-next .btn{justify-self:start}.scenario-next p{max-width:780px}.journey-scope{display:flex;align-items:start;justify-content:space-between;gap:20px}.journey-scope .textbtn{flex-shrink:0}.segmented{display:flex;gap:5px;padding:5px;background:var(--soft);border-radius:8px;width:fit-content;margin:22px 0}.segmented button{padding:11px 15px;border-radius:5px;font-size:12px;min-height:44px}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--green);box-shadow:0 1px 4px #233a2520;font-weight:600}.debt-chart{margin:24px 0}.debt-chart svg{display:block;width:100%;height:auto;max-height:350px}.debt-chart text{fill:var(--muted);font-size:11px}.chart-legend{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.chart-legend span{display:flex;align-items:center;gap:8px}.chart-legend i{width:22px;border-top:3px solid #9ca99a}.chart-legend i.dark{border-color:var(--green)}.chart-period{max-width:180px;margin-left:auto}.milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.milestones>div{padding:18px 10px;text-align:center;border:1px solid var(--line);border-radius:8px}.milestones strong{display:block;font-size:24px;color:var(--green)}.milestones small{display:block;font-size:10px}.milestones span{display:block;font-size:11px;margin-top:10px}.journey-focus{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.journey-focus h3{margin:18px 0 10px}.journey-focus .btn{margin-top:20px}.focus-row{padding:15px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}.focus-row strong{font-size:12px}.focus-row small{display:block;margin-top:7px;max-width:650px}.focus-row .textbtn{flex-shrink:0}.history-details{margin:22px 0;overflow:auto}.history-details summary{cursor:pointer;font-size:12px;padding:12px 0}.history-details table{border-collapse:collapse;width:100%;font-size:11px;text-align:left}.history-details td,.history-details th{padding:12px 8px;border-bottom:1px solid var(--line)}@media(max-width:650px){.debt-chart text{font-size:20px}.planning-panel .panelhead{align-items:start;flex-wrap:wrap}.planning-panel .formgrid,.scenario-result{grid-template-columns:1fr}.scenario-result{padding:20px;gap:22px}.scenario-result strong{font-size:28px}.scenario-next .btn{white-space:normal;text-align:left}.journey-scope{flex-direction:column;gap:8px}.milestones{grid-template-columns:1fr 1fr}.segmented{width:100%}.segmented button{flex:1;padding:11px 6px;font-size:11px}.chart-legend{gap:14px}.money-input input{font-size:20px}.history-details td{font-size:10px}}:root{color-scheme:light;--chart-base:#7c897b;--chart-scenario:#315443}html[data-theme=dark]{color-scheme:dark;--ink:#e6ece8;--muted:#a6b3ab;--line:#35433c;--soft:#202b25;--sage:#243629;--orange:#e8b879;--surface:#19231e;--canvas:#111914;--chart-base:#91a8b7;background:var(--canvas)}.theme-toggle{min-width:44px;min-height:44px;border:1px solid var(--line);color:var(--ink)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-theme{position:absolute;top:20px;right:24px}.chart-legend i{border-color:var(--chart-base)}.chart-legend i.dark{border-color:var(--chart-scenario)}html[data-theme=dark] body{background:var(--canvas);color:var(--ink)}html[data-theme=dark] .sidebar{background:#16201b}html[data-theme=dark] .sidebar nav button{color:var(--muted)}html[data-theme=dark] .sidebar nav button:hover{background:var(--soft)}html[data-theme=dark] .sidebar nav button.active{background:var(--sage);color:var(--green)}html[data-theme=dark] .sidebar nav small{background:#354b35;color:#d5e8c6}html[data-theme=dark] :is(.sidenote,.avatar,.tile.olive,.badge){background:var(--sage);color:var(--green)}html[data-theme=dark] :is(.sidenote p,.hero .eyebrow,.hero p){color:#afbeac}html[data-theme=dark] .privacy{background:var(--soft);color:var(--muted)}html[data-theme=dark] .btn{background:var(--green);color:#142014;border-color:var(--green)}html[data-theme=dark] .btn.light{background:var(--surface);color:var(--ink);border-color:#53655a}html[data-theme=dark] .hero{background:#213023;border-color:#40543b}html[data-theme=dark] .ring{background:conic-gradient(var(--green) var(--progress),#41533c 0)}html[data-theme=dark] .ring:before{background:#213023}html[data-theme=dark] .heroicon{color:#9bb38f}html[data-theme=dark] :is(.panel,dialog,.modalhead){background:var(--surface);box-shadow:none}html[data-theme=dark] :is(.taskrow,.budgetrow,.transaction,.importlist .split){border-color:var(--line)}html[data-theme=dark] :is(.taskrow:hover,.budgetrow:not(:disabled):hover,.transaction:hover){background:var(--soft)}html[data-theme=dark] .tile{background:#29343c;color:#bdcbd4}html[data-theme=dark] .tile.cream{background:#3b3225;color:#e4c18b}html[data-theme=dark] .badge.warning{background:#3b3021;color:#edc68e}html[data-theme=dark] :is(.notice,.warningtext){background:#342c20;border-color:#655139;color:#f0cf9d}html[data-theme=dark] .notice.danger{background:#3e2625;border-color:#81504a;color:#ffc0b6}html[data-theme=dark] .note{background:var(--soft)}html[data-theme=dark] :is(.note>svg,.empty>svg,.goal>svg){color:var(--green)}html[data-theme=dark] :is(input,select,textarea){background:#131d17;color:var(--ink);border-color:#586a5e}html[data-theme=dark] .search input{background:transparent}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:var(--muted);opacity:1}html[data-theme=dark] .positive{color:#a4d9b6}html[data-theme=dark] .negative{color:#ffb1a6!important}html[data-theme=dark] .bar{background:#35433b}html[data-theme=dark] .bar i{background:var(--green)}html[data-theme=dark] .bar i.over{background:#edbf7b}html[data-theme=dark] .simulation{background:var(--sage)}html[data-theme=dark] .eventdot{background:var(--green)}html[data-theme=dark] footer{color:var(--muted)}html[data-theme=dark] dialog::backdrop{background:#050b08b3}html[data-theme=dark] .toast{background:#cee3bc;color:#182719;box-shadow:0 8px 35px #0006}html[data-theme=dark] .deletebtn{color:#ffb1a6}html[data-theme=dark] .btn.dangerbtn{background:#963d35;border-color:#da8e83;color:#fff}html[data-theme=dark] .priority-summary{border-color:#40543b}html[data-theme=dark] .expense-group.essential{background:#1e2d22}html[data-theme=dark] .budgetrow.priority-row{border-left-color:var(--green)}html[data-theme=dark] .priority-label{color:var(--green)}html[data-theme=dark] .budgetrow.priority-row:not(:disabled):hover{background:var(--sage)}html[data-theme=dark] .segmented button[aria-pressed=true]{background:#334536;color:#d1e5bf;box-shadow:none}html[data-theme=dark] ::selection{background:#bcf49b;color:#142014}@media(max-width:650px){html[data-theme=dark] .sidebar{background:#16201bf2}}@media(max-width:380px){.topbar .privacy{display:none}}.budget-brand{--brand-accent:#294b3b;display:inline-flex;align-items:center;gap:11px;flex-shrink:0;color:var(--brand-accent);white-space:nowrap;vertical-align:middle}.budget-brand__mark{width:38px;height:38px;display:block}.budget-brand__wordmark{display:inline-flex;align-items:baseline;gap:7px;color:var(--ink);font-family:var(--terminal-mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:24px;font-weight:500;letter-spacing:-1.25px;line-height:1}.budget-brand__os{font-size:10px;font-weight:500;letter-spacing:1.5px;color:var(--brand-accent)}.budget-brand--compact{gap:8px}.budget-brand--compact .budget-brand__mark{width:28px;height:28px}.budget-brand--compact .budget-brand__wordmark{font-size:17px;letter-spacing:-.8px}.budget-brand--compact .budget-brand__os{font-size:8px;letter-spacing:1.2px}.sidebar>.budget-brand{margin:0 10px}.login>.budget-brand{margin-bottom:48px}.login .cl-headerTitle{font-size:24px;line-height:1.3;letter-spacing:-.5px;margin:0}.login .cl-headerSubtitle{font-size:13px;line-height:1.6;margin:10px 0 0}.topbar{position:sticky;top:0;z-index:15;background:#f2f1ebf2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);gap:12px}.topbar .screen-signature{gap:16px;min-width:0}.screen-location{display:flex;align-items:center;gap:9px;min-width:0;border-left:1px solid var(--line);padding-left:16px;font-size:11px}html{scroll-padding-top:88px}html[data-theme=dark] .budget-brand{--brand-accent:#bcf49b}html[data-theme=dark] .topbar{background:#1f261ff2}@media(max-width:1050px){.screen-location{display:none}}@media(max-width:650px){.sidebar>.budget-brand{display:none}.login>.budget-brand{margin-bottom:38px}.topbar{gap:8px;top:0}.topbar .privacy{display:none}.topbar .screen-signature{gap:0}html{scroll-padding-top:72px}}@media print{.topbar{position:static;backdrop-filter:none;background:transparent!important}.budget-brand{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.period-filter{border:1px solid var(--line);border-radius:9px;background:var(--soft);padding:20px 22px;margin-bottom:24px}.period-heading{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:18px}.period-heading strong{font-size:14px;font-weight:600}.period-filter form{display:grid;grid-template-columns:minmax(150px,1.2fr) repeat(2,minmax(130px,1fr)) auto;gap:12px;align-items:end}.period-filter label{font-size:11px;min-width:0}.period-filter input,.period-filter select{width:100%;min-width:0;min-height:44px}.period-filter .btn{min-height:44px}.period-filter>p{margin-top:12px;font-size:11px}.period-error{color:#a04239}html[data-theme=dark] .period-error{color:#ffb1a6}@media(max-width:1050px){.period-filter form{grid-template-columns:repeat(2,minmax(0,1fr))}.period-filter label:first-child{grid-column:1/-1}.period-filter .btn{grid-column:1/-1;justify-self:end}}@media(max-width:650px){.period-filter{padding:18px 16px;margin-bottom:20px}.period-filter input,.period-filter select{font-size:16px}.period-heading{gap:8px}.period-heading strong{font-size:13px}.period-filter .btn{width:100%}.period-filter form{column-gap:10px}}@media(max-width:380px){.period-filter form{grid-template-columns:minmax(0,1fr)}}:root{--surface:#faf9f5;--canvas:#f2f1eb}.main{max-width:1320px}.intro .eyebrow,.sidenote{display:none}.intro{margin:26px 0 24px}.intro p{font-size:15px}.intro h1{font-size:30px}.btn,.textbtn{font-size:14px;min-height:44px}.iconbtn{min-width:44px;min-height:44px}input,select,textarea{font-size:16px;min-height:48px}label{font-size:14px}.mobile-nav{display:none}.simple-budget{display:grid;gap:20px}.budget-result{display:grid;grid-template-columns:1fr 1fr;gap:18px 32px;padding:26px;background:var(--sage);border:1px solid var(--line);border-radius:14px}.budget-result>div>span{font-size:14px;color:var(--muted)}.budget-result>div>strong{display:block;font-size:36px;letter-spacing:-1.4px;color:var(--green);margin-top:8px;font-variant-numeric:tabular-nums}.budget-result dl{margin:0;display:grid;align-content:center;gap:12px;font-size:14px}.budget-result dl>div{display:flex;justify-content:space-between;gap:12px}.budget-result dt{color:var(--muted)}.budget-result dd{margin:0;font-weight:600;white-space:nowrap}.budget-result p{grid-column:1/-1;font-size:12px}.budget-step{border-radius:14px;box-shadow:none}.step-heading{display:flex;gap:12px;align-items:center;padding:22px;border-bottom:1px solid var(--line)}.step-number{display:grid;place-items:center;background:var(--soft);border:1px solid var(--line);border-radius:50%;width:30px;height:30px;font-size:13px;flex-shrink:0}.step-heading>div{flex:1}.step-heading h2{font-size:20px}.step-heading p{font-size:12px;margin-top:4px}.step-heading>strong{font-size:18px;white-space:nowrap;font-variant-numeric:tabular-nums}.step-action{padding:16px 22px}.step-action .btn{border-style:dashed;box-shadow:none;min-height:48px}.budget-empty{padding:22px}.budget-help{display:flex;gap:9px;font-size:12px;align-items:flex-start}.budget-help svg{margin-top:3px}.budgetrow{min-height:68px;font-size:15px;padding:18px 22px}.budgetrow>span:first-child{min-width:0;overflow-wrap:anywhere}.budgetrow small,.row-edit{font-size:12px}.row-edit{display:flex;align-items:center;gap:7px;color:var(--green);margin-left:10px}.row-edit>span{display:inline}.priority-summary{padding:14px 22px;background:var(--soft);border-color:var(--line);align-items:center}.priority-summary strong{font-size:16px;margin:0}.priority-summary p{display:none}.priority-summary span{font-size:12px}.priority-summary>div{display:flex;flex:1;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.priority-summary strong small{display:none}.expense-group h3,.expense-group>span{font-size:12px}.simple-budget .expense-group{padding:12px 22px}.simple-budget .panelbody.small{font-size:12px}.optional-section{margin:22px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.optional-section>summary{cursor:pointer;padding:20px;font-size:15px;font-weight:600;min-height:60px}.optional-section>summary small{display:block;font-weight:400;margin:6px 0 0 18px}.optional-body{padding:0 20px 20px}.optional-body>.planning-panel{margin:0}.optional-body .period-filter{margin-bottom:18px}.optional-section summary:focus-visible{outline:3px solid var(--green);outline-offset:3px}.form{gap:22px}.form>p{font-size:13px}.form .actions{position:sticky;bottom:0;background:var(--surface);padding:16px 0;margin:0;z-index:2;border-top:1px solid var(--line)}.form .actions .btn{flex:1;min-height:48px}.form-hint{line-height:1.6}.form-extra{border-block:1px solid var(--line);padding:0 0 4px}.form-extra summary{padding:16px 0;cursor:pointer;font-size:14px}.form-extra>div{display:grid;gap:20px;padding:6px 0 18px}.field-optional{font-size:11px;color:var(--muted)}.deletezone{margin:0;padding-top:0;border:0}.modalhead h2{font-size:20px}.form-hint+.actions{margin-top:0}.more-links{display:grid;gap:8px;padding:20px}.more-links button{display:flex;align-items:center;gap:14px;text-align:left;padding:18px;background:var(--soft);border-radius:8px;min-height:56px;font-size:16px}.debtrow strong,.transaction .txamount strong,.transaction .txdescription strong{font-size:14px}.debtrow small,.transaction .txamount small,.transaction .txdescription small{font-size:12px}.debtrow button{min-height:44px}.panelhead{flex-wrap:wrap}.panelhead h2{font-size:17px}@media(max-width:650px){.sidebar{display:none}.main{padding:0 16px 110px}.intro{margin:22px 0}.intro h1{font-size:28px}.intro .actions:empty{display:none}.intro .actions .btn{margin:0;flex:1}.intro p{font-size:14px}.mobile-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;border-top:1px solid var(--line);background:var(--surface);padding:7px 8px max(8px,env(safe-area-inset-bottom))}.mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:54px;font-size:11px;border-radius:9px;color:var(--muted)}.mobile-nav button.active{background:var(--sage);color:var(--green);font-weight:600}.simple-budget{gap:16px}.budget-result{grid-template-columns:1fr;padding:22px;gap:18px}.budget-result>div>strong{font-size:36px}.budget-result dl{border-top:1px solid var(--line);padding-top:16px}.budget-result p{font-size:12px}.step-heading{padding:18px 16px;gap:10px;flex-wrap:wrap}.step-heading h2{font-size:18px}.step-heading>strong{font-size:16px;margin-left:40px}.step-heading>div{min-width:160px}.step-action{padding:14px 16px}.budgetrow{padding:18px 16px;font-size:15px;gap:8px}.budgetrow>strong{font-size:14px}.row-edit{margin-left:3px}.row-edit>span{display:none}.budgetrow.priority-row{padding-left:13px}.priority-summary{padding:14px 16px}.priority-summary>svg{display:none}.simple-budget .expense-group{padding:12px 16px}.expense-group{flex-wrap:wrap;gap:5px}.optional-section>summary{padding:18px 16px}.optional-body{padding:0 12px 16px}.optional-body .period-filter{padding:14px}.stats{grid-template-columns:1fr}.stats>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border-right:0;border-bottom:1px solid var(--line);padding:15px 16px}.stats>div:last-child{border-bottom:0}.stats span{font-size:13px;min-height:0}.stats strong{font-size:22px;margin:0}.stats small{width:100%;font-size:11px}.transaction{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:18px 16px}.transaction .tile{display:none}.transaction .txdescription strong{white-space:normal;overflow-wrap:anywhere}.txdescription small{overflow-wrap:anywhere}.txamount{max-width:130px}.transaction .txamount strong{font-size:13px}.transaction .txamount small{font-size:11px;white-space:normal}.debtrow button{flex-wrap:wrap}.debtrow button>span:first-child{min-width:0;overflow-wrap:anywhere}.debtrow .right{margin-left:auto}dialog{width:100%;max-width:none;margin:auto 0 0;max-height:calc(100dvh - 20px);border-radius:18px 18px 0 0;border-bottom:0}.modalhead{padding:16px 20px}.form{padding:20px 20px max(20px,env(safe-area-inset-bottom))}.form .actions{bottom:-20px;padding:16px 0 max(16px,env(safe-area-inset-bottom))}.toast{bottom:90px;font-size:13px}}:root{--terminal-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--terminal-accent:#94703c;--terminal-head:#eeeae0}html[data-theme=dark]{--ink:#eceee8;--muted:#b5bcb1;--green:#bcf49b;--line:#4e5a49;--soft:#323c31;--sage:#3a4535;--orange:#e4bf7c;--surface:#293229;--canvas:#1f261f;--chart-base:#9ab1bf;--chart-scenario:#bcf49b;--terminal-accent:#bcf49b;--terminal-head:#343e32}body{font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font-family:inherit}.sidebar{width:220px}.main{margin-left:220px;max-width:none;padding:0 30px 30px}.topbar{height:66px}.intro{margin:32px 0 25px}.intro h1{font-size:32px;letter-spacing:-1px;font-weight:500}.eyebrow{font-family:var(--terminal-mono);font-size:9px;letter-spacing:1.2px}.intro p{font-size:12px}.sidebar .workspace{border:0}.sidebar nav button{border:1px solid transparent;border-radius:4px;font-size:12px}.sidebar nav button.active{border-color:var(--line)}.badge,.privacy{font-family:var(--terminal-mono);font-size:9px}.sidebar .sidenote{background:transparent;border-top:1px solid var(--line);border-radius:0}.sidebar .sidenote strong{font-weight:400}.btn,.iconbtn{border-radius:4px}html[data-theme=dark] .sidebar{background:#262f26}html[data-theme=dark] .sidebar nav button.active{background:#3d4737;color:#f0cc8a}html[data-theme=dark] :is(.hero,.budget-result){background:#343e31;border-color:#5c6954}html[data-theme=dark] :is(input,textarea,select){background:#242d24;border-color:#66735c}html[data-theme=dark] .btn.light{background:#30392e;border-color:#66725c}html[data-theme=dark] :is(.notice,.warningtext){background:#443c2d;border-color:#746341;color:#f2d9aa}.terminal-controls{margin-bottom:12px}.terminal-command{display:flex;align-items:center;gap:14px;padding:7px 8px 7px 16px;height:52px;background:var(--surface);border:1px solid #687254;border-radius:5px}.terminal-command>span{font:20px var(--terminal-mono);color:var(--terminal-accent)}.terminal-command input{flex:1;min-width:0;background:transparent!important;border:0;padding:0;font:11px var(--terminal-mono);color:var(--ink);outline-offset:4px}.terminal-command kbd{font:9px var(--terminal-mono);border:1px solid var(--line);padding:4px 5px;color:var(--muted);border-radius:3px;white-space:nowrap}.terminal-command>button{border:0;background:var(--terminal-accent);color:#fff7e6;font:10px var(--terminal-mono);padding:11px 16px;border-radius:3px;white-space:nowrap}html[data-theme=dark] .terminal-command>button{color:#212719}.terminal-quick{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:10px 0 25px;font:8px var(--terminal-mono)}.terminal-quick>span{color:var(--muted);letter-spacing:.6px;margin-right:6px}.terminal-quick button{border:1px solid var(--line);padding:5px 7px;border-radius:3px;font:8px var(--terminal-mono);color:var(--muted)}.terminal-quick button:hover{color:var(--terminal-accent);border-color:var(--terminal-accent)}.terminal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:5px;background:var(--surface);margin-bottom:26px}.terminal-metrics>div{padding:20px;border-right:1px solid var(--line);min-width:0}.terminal-metrics>div:last-child{border-right:0}.terminal-metrics span{font:8px var(--terminal-mono);letter-spacing:.7px;color:var(--muted)}.terminal-metrics strong{display:block;font:500 clamp(18px,2vw,27px) var(--terminal-mono);margin:13px 0 10px;letter-spacing:-.6px;overflow-wrap:anywhere}.terminal-metrics>div:nth-child(3) strong{color:var(--terminal-accent)}.terminal-metrics small{font-size:9px;line-height:1.6;color:var(--muted)}.terminal-desktop-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font:9px var(--terminal-mono);color:var(--muted)}.terminal-desktop-label>span{display:flex;gap:8px;align-items:center;letter-spacing:.8px}.terminal-desktop-label i,.terminal-window-dot{background:#8ca477;width:5px;height:5px;border-radius:50%;display:inline-block}.terminal-desktop-label>div{display:flex;gap:15px}.terminal-desktop-label button{display:flex;gap:5px;align-items:center;font:9px var(--terminal-mono)}.terminal-status{font:9px var(--terminal-mono);color:var(--muted);line-height:1.7;margin:12px 0;min-height:16px}.terminal-guide{background:var(--surface);border:1px solid var(--line);padding:22px;border-radius:5px;margin-bottom:16px}.terminal-guide>strong{font-size:14px;font-weight:500}.terminal-guide>div{display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;margin-top:20px}.terminal-guide>div>div{display:flex;gap:15px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:10px}.terminal-guide code{font:10px var(--terminal-mono);color:var(--terminal-accent)}.terminal-guide p,.terminal-guide span{font-size:10px;color:var(--muted);line-height:1.7}.terminal-guide p{margin-top:20px}.terminal-canvas{display:block;position:relative;isolation:isolate;min-width:0;border:1px solid var(--line);border-radius:6px;background-image:radial-gradient(#77875b26 1px,transparent 0);background-size:16px 16px;min-height:650px;overflow:hidden}.floating-window{position:absolute;display:flex;flex-direction:column;background:var(--surface);border:1px solid #46513a;border-radius:5px;box-shadow:0 8px 24px #0003;min-width:0;overflow:hidden}.floating-window:focus-within{border-color:var(--terminal-accent)}.panel-header{height:44px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);background:var(--terminal-head);padding:0 15px;flex-shrink:0;cursor:grab;touch-action:none;user-select:none}.panel-header h2{font-size:12px;font-weight:500;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-header code{font:8px var(--terminal-mono);border:1px solid var(--line);color:var(--muted);padding:3px 5px;border-radius:3px}.terminal-add{margin-left:auto;font:9px var(--terminal-mono);gap:4px;flex-shrink:0}.terminal-expand{font-size:19px;min-width:28px;min-height:28px;margin-left:auto}.terminal-add+.terminal-expand{margin-left:0}.terminal-window-body{flex:1;overflow:auto;min-height:0;padding:16px;scrollbar-width:thin;scrollbar-color:#65784d transparent;container-type:inline-size}.terminal-window-body .goalgrid,.terminal-window-body .grid{grid-template-columns:1fr;gap:15px}.terminal-window-body .panel{border-radius:4px;margin-bottom:15px}.terminal-window-body .hero{padding:20px;margin-bottom:16px;border-radius:4px}.terminal-window-body .heroamount{font:500 27px var(--terminal-mono);letter-spacing:-.5px}.terminal-window-body .hero p{font-size:10px;max-width:100%}.terminal-window-body .heroicon{display:none}.terminal-window-body .stats{margin-bottom:16px}.terminal-window-body .stats>div{padding:13px 9px}.terminal-window-body .stats strong{font:500 18px var(--terminal-mono);white-space:normal;overflow-wrap:anywhere;letter-spacing:-.6px}.terminal-window-body .stats span{font-size:9px}.terminal-window-body .stats small{font-size:8px}.terminal-window-body .budget-result{padding:20px;border-radius:4px}.terminal-window-body .budget-result strong{font:500 28px var(--terminal-mono)}.terminal-window-body .budget-result dl{gap:15px}.terminal-window-body .budget-result p{font-size:10px}.terminal-window-body .panelbody,.terminal-window-body .panelhead{padding:17px}.terminal-window-body .panelhead h2,.terminal-window-body .step-heading h2{font-size:12px}.terminal-window-body .budgetrow{padding:13px 15px;font-size:11px}.terminal-window-body .budgetrow strong,.terminal-window-body .debtrow strong{font-size:11px}.terminal-window-body .step-heading{flex-wrap:wrap;gap:10px;padding:15px}.terminal-window-body .step-heading>strong{font:12px var(--terminal-mono)}.terminal-window-body .priority-summary{padding:17px}.terminal-window-body .priority-summary strong{font:23px var(--terminal-mono)}.terminal-window-body .notice{padding:13px;font-size:10px}.terminal-window-body .optional-section{margin-top:16px}.terminal-window-body .goal{padding:20px}.terminal-window-body .goal>strong{font:19px var(--terminal-mono)}.terminal-window-body .goal>strong small{font-size:11px}.terminal-window-body .simulation>strong{font:26px var(--terminal-mono)}.terminal-window-body .row-edit{font-size:9px}.terminal-window-body .row-edit>span{display:none}.terminal-window-body .date-range-filter{flex-wrap:wrap}.window-moving{box-shadow:0 15px 42px #0008;border-color:var(--terminal-accent);user-select:none}.window-moving .panel-header{cursor:grabbing}.window-maximized{inset:0;width:100%;height:100%;box-shadow:none}.window-maximized .terminal-window-body{padding:22px}.window-maximized .terminal-window-body .grid{grid-template-columns:1.2fr 1fr}.window-maximized .terminal-window-body .goalgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.resize-edge{position:absolute;z-index:3;touch-action:none}.resize-n,.resize-s{left:8px;right:8px;height:7px;cursor:ns-resize}.resize-n{top:0}.resize-s{bottom:0}.resize-e,.resize-w{top:8px;bottom:8px;width:7px;cursor:ew-resize}.resize-e{right:0}.resize-w{left:0}.resize-ne,.resize-nw,.resize-se,.resize-sw{width:12px;height:12px}.resize-ne{top:0;right:0;cursor:nesw-resize}.resize-nw{top:0;left:0;cursor:nwse-resize}.resize-se{bottom:0;right:0;cursor:nwse-resize}.resize-sw{bottom:0;left:0;cursor:nesw-resize}.resize-keyboard{position:absolute;bottom:1px;right:1px;z-index:4;padding:0;width:19px;height:19px;font-size:13px;color:#8c9f70;cursor:nwse-resize;touch-action:none}@container(max-width:420px){.terminal-window-body .formgrid,.terminal-window-body .scenario-result{grid-template-columns:1fr}.terminal-window-body .date-range{flex-wrap:wrap}.terminal-window-body .budgetrow{gap:8px}.terminal-window-body .milestones{grid-template-columns:1fr 1fr}}@media(max-width:1000px){.terminal-metrics{grid-template-columns:1fr 1fr}.terminal-metrics>div:nth-child(2){border-right:0}.terminal-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.terminal-guide>div{grid-template-columns:1fr}.main{padding-left:22px;padding-right:22px}.window-maximized .terminal-window-body .grid{grid-template-columns:1fr}}@media(max-width:650px){.main{margin-left:0;padding:0 14px 98px}.sidebar{width:auto}.intro h1{font-size:27px}.terminal-command{gap:8px;padding-left:10px}.terminal-command input{font-size:10px}.terminal-command kbd{display:none}.terminal-command>button{padding:11px 10px;font-size:9px}.terminal-metrics>div{padding:15px 12px}.terminal-metrics strong{font-size:23px}.terminal-metrics span{font-size:7px}.terminal-desktop-label{font-size:8px}.terminal-desktop-label>div{gap:10px}.terminal-desktop-label button{font-size:8px}.terminal-desktop-label>div>button:last-child{display:none}.terminal-window-body{padding:12px}.panel-header{padding:0 11px;gap:6px}.panel-header code{display:none}.terminal-window-body .budget-result dl{grid-template-columns:1fr}.window-maximized .terminal-window-body{padding:12px}.window-maximized .terminal-window-body .goalgrid{grid-template-columns:1fr}}html[data-theme=dark]:has(.budget-home){--ink:#eef1ee;--muted:#b9c1bc;--green:#bcf49b;--line:#526057;--soft:#344038;--sage:#3c493f;--surface:#2a352f;--canvas:#202823}body:has(.budget-home),body:has(.budget-home) :is(button,input,select,textarea){font-family:var(--terminal-mono)}body:has(.budget-home) .sidebar nav button{font-family:var(--terminal-mono)}html[data-theme=dark] body:has(.budget-home) .sidebar{background:#27312b}html[data-theme=dark] body:has(.budget-home) .sidebar nav button.active{color:var(--green);background:#3d4c41}html[data-theme=dark] body:has(.budget-home) .mobile-nav button.active{color:var(--green);background:#3d4c41}.budget-home .intro{display:none}.budget-home .screen-location{font-size:12px}.budget-home>footer{max-width:620px;margin:32px auto 0;opacity:.8}.budget-focus{max-width:620px;margin:36px auto 0}.focus-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.focus-heading h1{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:500;letter-spacing:-.5px}.focus-heading h1 svg{color:var(--green)}.focus-heading>span{font-size:10px;color:var(--muted);letter-spacing:1px}.focus-month{display:flex;align-items:center;justify-content:center;gap:16px}.focus-month span{text-transform:uppercase;letter-spacing:1px;font-size:11px;min-width:140px;text-align:center}.focus-month button{display:grid;place-items:center;width:44px;height:44px;border-radius:4px;color:var(--muted)}.focus-month button:hover{background:var(--soft);color:var(--ink)}.focus-balance{text-align:center;padding:20px 0 30px}.focus-balance>span{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted)}.focus-balance output{display:block;font-size:clamp(32px,6vw,56px);font-weight:400;letter-spacing:-3px;line-height:1.2;margin:18px 0 10px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--green)}.focus-balance output.negative{color:#d77968}.focus-balance p{font-size:12px;margin:12px 0 0}.focus-explainer{max-width:360px;margin:auto}.focus-explainer summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;font-size:11px;color:var(--muted);cursor:pointer;list-style:none}.focus-explainer summary::-webkit-details-marker{display:none}.focus-explainer[open]{padding-bottom:8px}.focus-explainer p{font-size:12px;line-height:1.7;margin-top:0}.focus-steps{border-top:1px solid var(--line)}.focus-step{border-bottom:1px solid var(--line)}.focus-step>summary{list-style:none;display:flex;align-items:center;gap:13px;min-height:68px;cursor:pointer;padding:16px 0}.focus-step summary::-webkit-details-marker{display:none}.focus-step summary>span:nth-child(2){flex:1}.focus-step summary strong,.focus-step-heading h2{font-size:13px;font-weight:500;margin:0;display:block}.focus-step summary small,.focus-step-heading p{font-size:12px;color:var(--muted);display:block;margin:6px 0 0;line-height:1.5}.focus-step summary>svg{color:var(--muted);transition:transform .15s}.focus-step[open] summary>svg{transform:rotate(45deg)}.focus-step-number{border:1px solid var(--line);width:30px;height:30px;display:grid;place-items:center;border-radius:4px;color:var(--muted);flex-shrink:0}.focus-entry{padding:18px 0 8px;border-bottom:1px solid var(--line)}.focus-step-heading{display:flex;align-items:center;gap:15px}.focus-add{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.focus-add button{min-height:56px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.focus-add button:first-child{color:var(--green)}.focus-add button:last-child{background:var(--green);color:var(--canvas);border-color:var(--green)}.focus-add button:hover{filter:brightness(.9)}.focus-import{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;margin:6px auto 0;min-height:44px;color:var(--muted)}.focus-detail{padding:0 0 24px}.focus-detail h2{font-size:15px;font-weight:500;margin:24px 0 12px}.focus-help{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 20px}.focus-breakdown{margin:0}.focus-breakdown>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.focus-breakdown dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.focus-breakdown+.focus-help{margin-top:14px}.focus-transactions button{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:12px;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px}.focus-transactions button>span:first-child{min-width:0}.focus-transactions strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.focus-transactions small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.focus-transactions button>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.focus-positive{color:var(--green)}.focus-history{display:flex;gap:8px;align-items:center;min-height:48px;font-size:14px;margin-top:12px}.budget-focus :is(button,summary):focus-visible{outline:2px solid var(--green);outline-offset:4px}.budget-focus button:disabled{opacity:.65;cursor:default}.focus-mobile-import,.focus-mobile-transactions{display:none}@media(max-width:650px){.budget-home.main{padding-left:22px;padding-right:22px}.budget-focus{margin-top:24px}.focus-heading{margin-bottom:18px}.focus-heading h1{font-size:16px}.focus-heading>span{font-size:9px}.focus-balance{padding:16px 0 24px}.focus-balance output{font-size:clamp(27px,7.5vw,44px);letter-spacing:-1.8px}.focus-step>summary{min-height:64px}.focus-transactions button{font-size:12px}.focus-transactions strong{font-size:13px}.budget-home.main{padding:0 16px calc(86px + env(safe-area-inset-bottom))}.budget-home .topbar{height:56px}.budget-home>footer{display:none}.budget-focus{display:flex;flex-direction:column;margin-top:8px}.focus-heading,.focus-step-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.focus-month{gap:10px}.focus-month span{font-size:11px}.focus-balance{padding:12px 0 4px}.focus-balance output{font-size:clamp(26px,9vw,44px);letter-spacing:-2px;margin:12px 0 0}.focus-balance>span{font-size:10px}.focus-balance p{font-size:11px}.focus-explainer summary{min-height:40px;font-size:10px}.focus-steps{display:contents}.focus-entry{order:1;border:0;padding:8px 0 18px}.focus-add{margin:0;gap:10px}.focus-add button{min-height:52px;font-size:13px}.focus-entry .focus-import{display:none}.focus-mobile-transactions{display:block;order:2;margin-bottom:20px}.focus-mobile-transactions>header{display:flex;align-items:center;justify-content:space-between;min-height:44px;border-bottom:1px solid var(--line);gap:10px}.focus-mobile-transactions h2{font-size:12px;font-weight:500;margin:0}.focus-mobile-transactions>header button{font-size:11px;color:var(--muted);min-height:44px;min-width:64px}.focus-mobile-transactions>.focus-help{margin:0;padding:20px 0;font-size:12px}.focus-mobile-row{border-bottom:1px solid var(--line);gap:4px}.focus-mobile-edit,.focus-mobile-row{display:flex;align-items:center;min-width:0}.focus-mobile-edit{justify-content:space-between;flex:1;gap:8px;padding:13px 0;text-align:left;min-height:64px}.focus-mobile-edit>span:first-child{min-width:0}.focus-mobile-edit strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}.focus-mobile-edit small{display:block;font-size:10px;margin-top:5px}.focus-mobile-edit>span:last-child{font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}.focus-mobile-delete{width:44px;min-width:44px;min-height:48px;display:grid;place-items:center;color:var(--muted);border-radius:4px}.focus-mobile-delete:hover{color:#d77968;background:var(--soft)}.focus-step{order:3}.focus-step>summary{min-height:52px;padding:10px 0}.focus-step-number{border:0;width:22px;height:26px}.focus-step summary strong{font-size:12px;color:var(--muted)}.focus-mobile-import{display:flex;align-items:center;gap:8px;min-height:44px;font-size:12px;color:var(--green)}.focus-desktop-history{display:none}}@media(min-width:651px){.sidebar{width:208px;padding:18px 12px;border-right:1px solid var(--line);transition:width .18s ease}.sidebar+.main{margin-left:208px;transition:margin-left .18s ease}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;margin-bottom:22px}.sidebar-toggle{display:grid;place-items:center;min-width:40px;width:40px;height:44px;border-radius:5px;color:var(--muted)}.sidebar-toggle:hover{background:var(--soft);color:var(--ink)}.sidebar .workspace{margin:0 8px 20px;padding:0;min-width:0}.sidebar .workspace strong{display:block;font:11px var(--terminal-mono);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar nav button{min-height:44px;gap:10px;font-size:12px;position:relative}.sidebar .account{margin:16px 0 0;border-top:1px solid var(--line);padding-top:16px;gap:8px}.sidebar .account>div{min-width:0;flex:1}.sidebar .account strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.sidebar .account>button{min-width:36px;min-height:44px}.sidebar[data-collapsed=true]{width:64px;padding:18px 8px}.sidebar[data-collapsed=true]+.main{margin-left:64px}.sidebar[data-collapsed=true] .sidebar-head{justify-content:center}.sidebar[data-collapsed=true] :is(.sidebar-head>.budget-brand,.workspace,.account>.avatar,.account>div){display:none}.sidebar[data-collapsed=true] nav button{justify-content:center;padding:10px 0;gap:0}.sidebar[data-collapsed=true] nav button>span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.sidebar[data-collapsed=true] nav small{position:absolute;top:1px;right:0;font-size:9px;padding:0 3px}.sidebar[data-collapsed=true] .account{justify-content:center}}@media(max-width:650px){.sidebar-head{display:none}}@media(prefers-reduced-motion:reduce){.sidebar,.sidebar+.main{transition:none}}.debt-focus{max-width:680px;margin:36px auto 0}.debt-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;gap:16px}.debt-heading h1{font-size:18px;font-weight:500;letter-spacing:-.5px;margin:0}.debt-heading>span{font-size:10px;color:var(--muted);letter-spacing:1px}.debt-summary{text-align:center;padding:16px 0 20px}.debt-month-browser{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:2px}.debt-month-browser span{min-width:150px;text-align:center;text-transform:uppercase;letter-spacing:1px;font-size:11px}.debt-month-browser button{width:44px;height:44px;display:grid;place-items:center;border-radius:4px;color:var(--muted)}.debt-month-browser button:hover:not(:disabled){background:var(--soft);color:var(--ink)}.debt-monthly>span,.debt-total>span{display:block;text-transform:uppercase;letter-spacing:1.2px;font-size:11px;color:var(--muted)}.debt-total output{display:block;color:var(--green);font-size:clamp(30px,5vw,54px);letter-spacing:-2.5px;line-height:1.25;margin:14px 0 28px;overflow-wrap:anywhere}.debt-total>small{display:block;margin:-18px 0 22px}.debt-total>small b{font-weight:500;color:var(--green)}.debt-total>small b.negative{color:#d77968}.debt-missing{display:block;color:var(--muted);font-size:24px;font-weight:500;margin:18px 0 10px}.debt-history-empty{font-size:11px;margin:0 auto 22px;max-width:390px}.debt-monthly output{display:block;font-size:26px;letter-spacing:-1px;margin:10px 0 12px;overflow-wrap:anywhere}.debt-checkpoint{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;margin:8px auto 4px;padding:0 14px;border:1px solid var(--line);border-radius:5px;color:var(--green);font-size:11px}.debt-caution{font-size:11px;color:var(--muted);margin:0}.debt-add{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;border-radius:5px;background:var(--green);color:var(--canvas);font-size:14px;margin:0 0 20px}.debt-payment-checklist{margin:8px 0 20px;padding:18px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.debt-payment-checklist>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.debt-payment-checklist>header small,.debt-payment-checklist>header strong{display:block}.debt-payment-checklist>header strong{font-size:13px}.debt-payment-checklist>header small{font-size:10px;color:var(--muted);margin-top:5px}.debt-payment-checklist>header b{font-size:12px;font-weight:500;color:var(--green);text-align:right;font-variant-numeric:tabular-nums}.debt-payment-checklist>progress{display:block;width:100%;height:5px;margin:0 0 12px;accent-color:var(--green)}.debt-payment-checklist>div{border-top:1px solid var(--line)}.debt-payment-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:60px;border-bottom:1px solid var(--line);cursor:pointer}.debt-payment-row input{width:20px;height:20px;accent-color:var(--green)}.debt-payment-row small,.debt-payment-row strong{display:block}.debt-payment-row strong{font-size:12px;font-weight:500}.debt-payment-row small{font-size:10px;color:var(--muted);margin-top:4px}.debt-payment-row>b{font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}.debt-payment-row[data-paid=true]{color:var(--green)}.debt-payment-checklist>p{font-size:10px;color:var(--muted);line-height:1.6;margin:12px 0 0}.loan-list{border-top:1px solid var(--line)}.debt-attack{margin:0 0 18px;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.debt-attack label{display:grid;gap:10px;font-size:11px;color:var(--muted)}.debt-attack select{width:100%;min-width:0;min-height:44px;font:inherit;font-size:13px;background:var(--canvas);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:10px}.debt-attack p{font-size:11px;color:var(--muted);line-height:1.7;margin:12px 0 0}.loan-rank{font-size:11px;min-width:20px;font-variant-numeric:tabular-nums}.loan-edit .loan-next,.loan-rank{color:var(--green)}.loan-row{gap:10px;border-bottom:1px solid var(--line)}.loan-edit,.loan-row{display:flex;align-items:center}.loan-edit{justify-content:space-between;gap:16px;text-align:left;padding:20px 0;min-height:76px}.loan-edit,.loan-edit>span:first-child{flex:1;min-width:0}.loan-edit strong{font-size:14px;font-weight:500;display:block;overflow-wrap:anywhere}.loan-edit small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.loan-edit>span:last-child{text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.loan-delete{display:grid;place-items:center;width:44px;min-width:44px;height:48px;color:var(--muted);border-radius:5px}.loan-delete:hover{color:#d77968;background:var(--soft)}.debt-empty{padding:28px 0;font-size:13px}.debt-closed,.debt-more{border-bottom:1px solid var(--line);margin-top:16px}.debt-closed>summary,.debt-more>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;min-height:52px;font-size:12px;color:var(--muted);cursor:pointer}.debt-closed>summary::-webkit-details-marker,.debt-more>summary::-webkit-details-marker{display:none}.debt-closed[open]>summary>svg,.debt-more[open]>summary>svg{transform:rotate(180deg)}.debt-contact{display:flex;align-items:center;gap:8px;min-height:44px;font-size:12px;color:var(--green);margin:8px 0 20px}.debt-more .grid{grid-template-columns:1fr}.debt-more .optional-section{margin-bottom:20px}.debt-focus :is(button,summary):focus-visible{outline:2px solid var(--green);outline-offset:4px}.debt-focus button:disabled{opacity:.65;cursor:default}@media(max-width:650px){.debt-focus{margin:18px auto 0}.debt-heading{margin-bottom:12px}.debt-heading h1{font-size:15px}.debt-heading>span{font-size:9px}.debt-summary{padding:16px 0 14px}.debt-total output{font-size:clamp(25px,8.5vw,40px);letter-spacing:-1.8px;margin:12px 0 22px}.debt-monthly output{font-size:23px}.debt-summary .focus-explainer summary{font-size:10px}.loan-row{gap:4px}.loan-edit{gap:8px;padding:16px 0}.loan-edit strong{font-size:12px}.loan-edit small{font-size:10px}.loan-edit>span:last-child{max-width:52%;flex-shrink:1}.debt-add{font-size:13px}.debt-payment-checklist{padding:14px 12px}.debt-payment-checklist>header{gap:8px}.debt-payment-row{gap:9px}.debt-payment-row>b{font-size:11px}}.debt-lab{border:1px solid var(--line);border-radius:10px;padding:24px;margin:4px 0 28px;background:var(--surface);min-width:0}.debt-lab-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.debt-lab-kicker{display:flex;align-items:center;gap:6px;font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:var(--green)}.debt-lab h2{font-size:23px;letter-spacing:-1px;font-weight:500;margin:10px 0}.debt-lab-reset{display:flex;align-items:center;gap:7px;color:var(--muted);min-height:44px;font-size:11px}.debt-lab-scope{font-size:10px;color:var(--muted);margin:0 0 24px;line-height:1.7}.debt-lab-controls{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.debt-lab-upfront{grid-column:1/-1;padding-bottom:20px;border-bottom:1px solid var(--line)}.debt-lab-upfront>label{flex-direction:row!important;align-items:center;justify-content:space-between;gap:12px}.debt-lab-upfront-result{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:11px;line-height:1.8;margin:16px 0 6px;color:var(--muted);flex-wrap:wrap}.debt-lab-upfront-result strong{color:var(--green);font-weight:500;font-size:16px;overflow-wrap:anywhere}.debt-lab-upfront-note{display:block;font-size:10px;line-height:1.8}.debt-lab-control>label{display:flex;flex-direction:column;gap:10px;font-size:11px;color:var(--muted)}.debt-lab-control>label>span{display:flex;align-items:baseline;gap:6px;color:var(--ink)}.debt-lab-control input[type=number]{width:135px;max-width:75%;padding:7px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;font:inherit;font-size:24px;letter-spacing:-1px;color:var(--ink);min-height:44px}.debt-focus input[type=number],.spinless-number{-moz-appearance:textfield;appearance:textfield}.debt-focus input[type=number]::-webkit-inner-spin-button,.debt-focus input[type=number]::-webkit-outer-spin-button,.spinless-number::-webkit-inner-spin-button,.spinless-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.debt-lab-control small{font-size:10px;color:var(--muted)}.debt-lab input[type=range]{display:block;width:100%;height:44px;margin:5px 0;accent-color:var(--green);cursor:pointer;min-width:0;padding:0;border:0;box-shadow:none;background:transparent}.debt-lab-presets{display:flex;gap:5px;flex-wrap:wrap}.debt-lab-presets button{font-size:10px;border:1px solid var(--line);border-radius:5px;padding:6px 9px;min-height:36px;color:var(--muted);font-variant-numeric:tabular-nums}.debt-lab-presets button[aria-pressed=true]{color:var(--green);border-color:var(--green);background:var(--soft)}.debt-lab-rate-note{font-size:10px;color:var(--muted);line-height:1.7;margin:0}.debt-lab-rate-note strong{color:var(--green);font-weight:500}.debt-lab-rate-note>span:last-child{display:block}.debt-lab-results{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0 8px}.debt-lab-results>div{min-width:0}.debt-lab-results small,.debt-lab-results span{display:block;font-size:10px;color:var(--muted);line-height:1.7}.debt-lab-results strong{font-size:clamp(18px,2.7vw,28px);font-weight:500;letter-spacing:-1px;display:block;margin:8px 0;color:var(--green);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.debt-lab-chart svg{width:100%;height:auto;display:block;overflow:visible}.debt-lab-chart text{font-family:inherit;font-size:11px;fill:var(--muted)}.debt-lab-base,.debt-lab-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.debt-lab-base{stroke:var(--muted);stroke-dasharray:5 6;opacity:.7}.debt-lab-line{stroke:var(--green);stroke-width:3}.debt-lab-cursor{stroke:var(--muted);stroke-dasharray:3 5;opacity:.5}.debt-lab-legend{display:flex;gap:20px;justify-content:center;font-size:10px;color:var(--muted);margin:0 0 20px}.debt-lab-legend span{display:flex;align-items:center;gap:6px}.debt-lab-legend i{width:18px;border-top:2px dashed var(--muted)}.debt-lab-legend span:last-child i{border-top:2px solid var(--green)}.debt-lab-timeline>span{font-size:10px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:8px}.debt-lab-timeline strong{color:var(--ink);font-weight:500}.debt-lab-inspect{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;background:var(--soft);border-radius:6px;padding:16px}.debt-lab-inspect>div:last-of-type{text-align:right}.debt-lab-inspect small{display:block;font-size:10px;color:var(--muted);margin-bottom:6px}.debt-lab-inspect strong{font-size:16px;font-weight:500;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.debt-lab-inspect svg,.debt-lab-inspect>div:last-of-type strong{color:var(--green)}.debt-lab-inspect>span{grid-column:1/-1;font-size:10px;color:var(--muted);text-align:center;margin-top:6px}.debt-lab-milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}.debt-lab-milestones>div{border-top:2px solid var(--line);padding-top:12px;min-width:0;transition:border-color .2s ease}.debt-lab-milestones>div[data-reached=true]{border-color:var(--green)}.debt-lab-milestones small,.debt-lab-milestones span{display:block;font-size:9px;color:var(--muted);line-height:1.6}.debt-lab-milestones strong{display:block;font-size:11px;font-weight:500;margin:6px 0;overflow-wrap:anywhere}.debt-lab-milestones>div[data-reached=true] span{color:var(--green)}.debt-lab-details{border-top:1px solid var(--line);margin-top:24px}.debt-lab-details summary{font-size:11px;min-height:48px;display:flex;align-items:center;cursor:pointer;color:var(--muted)}.debt-lab-details summary:after{content:"+";margin-left:auto;font-size:16px}.debt-lab-details[open] summary:after{content:"−"}.debt-lab-details p{font-size:10px;color:var(--muted);line-height:1.8}.debt-lab-loans{display:grid;gap:4px;margin-bottom:16px}.debt-lab-loans label{display:flex;gap:10px;align-items:center;min-height:48px;font-size:12px;cursor:pointer}.debt-lab-loans input[type=checkbox]{width:18px;height:18px;accent-color:var(--green);flex-shrink:0}.debt-lab-loans small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.debt-lab-strategy{font-size:11px;color:var(--muted);display:grid;gap:8px;margin:16px 0}.debt-lab-strategy select{min-height:44px;width:100%;max-width:100%;font:inherit}.debt-lab-warning{font-size:11px!important;color:var(--warning,#bc8560)!important;line-height:1.8;margin:20px 0}.debt-lab-warning button{display:block;min-height:44px}.debt-lab-empty{font-size:12px;color:var(--muted);line-height:1.8;margin:16px 0 0}@media(max-width:650px){.debt-lab{padding:18px 14px;border-radius:8px}.debt-lab h2{font-size:22px}.debt-lab-controls{gap:16px;grid-template-columns:1fr}.debt-lab-control>label{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.debt-lab-control input[type=number]{width:100px;font-size:23px}.debt-lab-results{gap:12px;margin-top:20px}.debt-lab-results strong{font-size:20px;letter-spacing:-.8px}.debt-lab-inspect{padding:12px 10px;gap:6px}.debt-lab-inspect strong{font-size:14px}.debt-lab-milestones{grid-template-columns:repeat(2,1fr);gap:18px 12px}.debt-lab-presets button{min-height:44px;flex:1;padding:6px}.debt-lab-scope{font-size:10px;margin-bottom:12px}}@media(prefers-reduced-motion:reduce){.debt-lab *{transition:none!important}}.app-main .area-content{max-width:680px;margin:28px auto 0;min-width:0}.area-heading{display:flex;gap:7px;align-items:center;font:500 11px/1.5 var(--terminal-mono);letter-spacing:1.4px;margin:0 0 24px;color:var(--muted)}.area-heading>span:first-child{color:var(--green)}.app-main :is(.budget-focus,.debt-focus,.savings-focus){max-width:none;margin:0}.app-main .topbar{height:58px}.app-main .topbar .privacy{background:none;padding:0}.app-main :is(.panel,.note,.stats,.period-filter){box-shadow:none;border-radius:4px}.app-main .panel{background:transparent;margin-bottom:18px}.app-main .panelhead{padding:16px;border-bottom:1px solid var(--line)}.app-main .panelhead h2{font-size:12px;font-weight:500}.app-main .panelbody{padding:16px}.app-main .note{padding:16px;margin:14px 0;background:var(--soft)}.app-main .note h3{font-size:12px}.app-main .note p{font-size:11px}.app-main .grid{grid-template-columns:minmax(0,1fr);gap:16px}.app-main .area-stats{display:flex;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:4px 0 20px}.app-main .area-stats>div{display:block;flex:1;min-width:0;padding:16px 12px 20px;border:0}.app-main .area-stats>div:first-child{padding-left:0}.app-main .area-stats>div:last-child{padding-right:0}.app-main .area-stats span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;min-height:0}.app-main .area-stats strong{font-size:clamp(18px,3vw,28px);font-weight:400;letter-spacing:-1px;overflow-wrap:anywhere;white-space:normal;margin:12px 0 0;color:var(--green)}.page-actions{display:flex;gap:10px;margin-bottom:16px}.page-actions .btn{flex:1;min-height:50px;min-width:0;white-space:normal}body:has(.app-main) .btn{border-radius:4px;min-height:44px;box-shadow:none;font-weight:500}body:has(.app-main) .btn:not(.light):not(.dangerbtn){background:var(--green);color:var(--canvas,#fff)}body:has(.app-main) :is(input,select,textarea){border-radius:4px}body:has(.app-main) :is(dialog,.modalhead){border-radius:5px}body:has(.app-main) .iconbtn{min-height:44px;min-width:44px}.area-disclosure{border-bottom:1px solid var(--line);margin:12px 0}.area-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;min-height:52px;font-size:11px;color:var(--muted);cursor:pointer}.area-disclosure>summary::-webkit-details-marker{display:none}.area-disclosure>summary>span{font-size:10px;flex-shrink:0}.area-disclosure[open]>summary{color:var(--ink)}.area-disclosure>p{font-size:12px;margin:0 0 16px}.area-disclosure>summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}.period-disclosure{margin-top:0}.period-disclosure .period-filter{margin-bottom:12px;padding:14px}.transaction-list .toolbar{padding:12px 0;gap:10px}.transaction-list .search{min-width:0}.transaction-category-search{padding:14px 0;border-bottom:1px solid var(--line)}.transaction-category-search>span{display:block;margin-bottom:10px;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.transaction-category-search>div{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.transaction-category-search button{flex:0 0 auto;min-height:36px;padding:8px 11px;border:1px solid var(--line);border-radius:5px;font-size:10px;color:var(--muted)}.transaction-category-search button[aria-pressed=true]{border-color:var(--green);background:var(--soft);color:var(--green)}.active-category{display:flex;align-items:center;gap:10px;min-height:44px;border-bottom:1px solid var(--line);font-size:11px}.active-category span{font-weight:600}.active-category strong{font-weight:400;color:var(--muted)}.active-category button{margin-left:auto;color:var(--green);min-height:36px;font-size:10px}.transaction-row{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line)}.transaction-row .transaction{flex:1;min-width:0;border:0;padding:16px 0;gap:10px}.transaction-row .tile{display:none}.transaction-row .txdescription{min-width:0}.transaction-row .txdescription strong{font-size:12px;font-weight:500;overflow-wrap:anywhere}.transaction-row .txamount{flex-shrink:0}.transaction-row .txamount strong{font-size:12px;font-weight:500}.transaction-row .txamount small{display:none}.transaction-row .txdescription small{font-size:10px}.app-main .empty{padding:28px 16px}.app-main .empty h2,.app-main .empty h3{font-size:13px;font-weight:500}.app-main .empty p{font-size:12px}.saving-item{border-bottom:1px solid var(--line);padding-bottom:12px}.saving-item .loan-row{border:0}.saving-item .bar{height:3px;margin:0}.more-settings{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);margin:0 22px;padding:16px 0;font-size:11px}.more-settings>.textbtn{min-height:44px;margin-right:auto}.nav-number{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.more-links button{min-height:52px}.collaboration-page .member span{min-width:0}.creditors-page>.focus-explainer{max-width:none;margin-bottom:16px}.creditors-page>.focus-explainer summary{justify-content:flex-start}.creditors-page .creditor-toggle{padding-left:16px}.import-review{gap:16px}.import-agent-summary{border:1px solid var(--green);border-radius:5px;padding:14px;background:color-mix(in srgb,var(--green) 6%,var(--surface))}.import-agent-summary>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.import-agent-summary>header span{display:grid;gap:4px}.import-agent-summary>header strong{font-size:12px}.import-agent-summary>header small{font-size:8px;color:var(--muted)}.import-agent-summary>header>b{font-size:9px;color:var(--green);text-transform:uppercase;letter-spacing:1px}.import-agent-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.import-agent-counts>span{display:grid;gap:4px;padding-top:10px;border-top:1px solid var(--line)}.import-agent-counts strong{font-size:18px;font-weight:400;color:var(--green)}.import-agent-counts small{font-size:8px;color:var(--muted)}.import-impact{border:1px solid var(--line);border-radius:5px}.import-impact>summary{display:flex;justify-content:space-between;gap:12px;padding:14px;cursor:pointer;list-style:none;font-size:10px;text-transform:capitalize}.import-impact>summary::-webkit-details-marker{display:none}.import-impact[open]>summary{border-bottom:1px solid var(--line)}.import-impact-table{padding:8px 14px}.import-impact-table>div{display:grid;grid-template-columns:minmax(120px,1fr) repeat(3,minmax(82px,.7fr));gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:9px}.import-impact-table>div:last-child{border-bottom:0}.import-impact-table strong{font-size:9px;font-weight:500}.import-impact-table span{text-align:right;font-variant-numeric:tabular-nums}.import-impact-table span small{display:block;margin-top:3px;font-size:7px;color:var(--muted)}.import-impact-head{color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.import-impact-head span:first-child{text-align:left}.import-decisions{display:grid;gap:7px;margin:0;padding:12px 28px 14px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.import-category-summary{border:1px solid var(--line);border-radius:5px;padding:14px;background:var(--soft)}.import-category-summary>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.import-category-summary>header strong{font-size:11px}.import-category-summary>header small{font-size:9px;text-align:right}.import-category-summary>div{display:flex;gap:6px;flex-wrap:wrap}.import-category-summary>div>span{display:grid;gap:3px;padding:7px 9px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.import-category-summary b{font-size:9px;font-weight:500}.import-category-summary span small{font-size:8px}.import-needs-category{display:grid;gap:12px;padding:14px;border:1px solid #a76d3560;border-radius:5px;background:#a76d3510}.import-needs-category p{font-size:10px}.import-needs-category .btn{justify-self:start;font-size:10px}.import-possible-duplicates{display:grid;gap:7px;padding:14px;border:1px solid #c88a4160;border-radius:5px;background:#c88a4110}.import-possible-duplicates strong{font-size:10px}.import-possible-duplicates p{font-size:9px;color:var(--muted)}.import-review .importlist{padding:0;max-height:360px}.import-review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:12px;border-bottom:1px solid var(--line)}.import-review-row:last-child{border-bottom:0}.import-review-row.needs-category{background:#a76d350b}.import-review-row.possible-duplicate{background:#c88a410d}.import-review-row.skipped{opacity:.58}.import-review-row>span{min-width:0}.import-review-row>span strong{display:block;font-size:10px;overflow-wrap:anywhere}.import-review-row>span small{display:block;font-size:8px;margin-top:4px}.import-review-row>strong{font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.import-review-row select{grid-column:1/-1;width:100%;font-size:10px;min-height:38px}.duplicate-choice{grid-column:1/-1;display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:4px}.duplicate-choice p{font-size:9px}.duplicate-choice>div{display:flex;gap:7px;flex-wrap:wrap}.duplicate-choice .btn{min-height:36px;font-size:9px}.duplicate-choice .btn[aria-pressed=true]{border-color:var(--green);color:var(--green)}.import-error{margin:0 24px 24px}@media(max-width:650px){.app-main.main{padding:0 16px calc(86px + env(safe-area-inset-bottom))}.app-main .topbar{display:none}.app-main .area-content{margin:18px auto 0}.area-heading{font-size:10px;margin-bottom:16px;letter-spacing:1.2px}.app-main>footer{display:none}.app-main .area-stats>div{padding:8px 8px 16px}.app-main .area-stats strong{font-size:clamp(16px,5vw,23px)}.app-main .area-stats span{font-size:9px;letter-spacing:0;min-height:28px}.app-main .area-stats{margin:4px 0 16px}.page-actions{gap:8px}.page-actions .btn{font-size:12px}.transaction-list .toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto}.transaction-list .toolbar .search,.transaction-list .toolbar select{grid-column:1/-1}.transaction-row .transaction{gap:8px}.transaction-row .txdescription strong{font-size:11px}.transaction-row .txdescription small{font-size:9px}.transaction-row .txamount strong{font-size:11px}.transaction-row .txamount{max-width:45%;overflow-wrap:anywhere}.app-main .creditor-grid{gap:12px}.app-main .panelbody,.app-main .panelhead{padding:14px}.app-main .debt-summary{padding-top:8px}.import-category-summary>header{display:grid}.import-category-summary>header small{text-align:left}.import-agent-counts{gap:5px}.import-agent-counts small{font-size:7px}.import-impact-table{overflow-x:auto}.import-impact-table>div{min-width:530px}.import-review-row{padding:12px 10px}}