:root{color:#182b45;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#142a46;--muted:#728095;--line:#e2e9ee;--green:#b9f2d2;--green-ink:#20573d;--gold:#f4c66e;background:#f4f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{color:#182b45;background:radial-gradient(at 0 0,#edf7f1 0,#0000 36%),#f4f7f8;min-height:100vh;margin:0;font-size:15px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #65b38b}button:disabled{cursor:wait;opacity:.65}.shell{max-width:1320px;margin:0 auto;padding:0 32px 56px}.topbar{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #e0e8ece6;margin:0 -32px;padding:0 32px;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:18px;max-width:1320px;height:72px;margin:0 auto;display:flex}.brand{min-width:185px;color:var(--ink);align-items:center;gap:11px;text-decoration:none;display:flex}.brand-mark{background:var(--ink);width:40px;height:40px;color:var(--green);letter-spacing:-.07em;border-radius:14px;place-items:center;font-size:19px;font-weight:900;display:grid}.brand-name{letter-spacing:-.045em;font-size:18px;font-weight:850;display:block}.brand-sub{color:#8190a0;margin-top:1px;font-size:11px;font-weight:650;display:block}.nav{align-items:center;gap:4px;display:flex}.nav a{color:#718196;border-radius:10px;padding:9px 12px;font-size:13px;font-weight:700;text-decoration:none}.nav a:hover,.nav a:first-child{color:#29405c;background:#f1f5f6}.actions{align-items:center;gap:8px;display:flex}.button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 13px;font-size:13px;font-weight:750;transition:transform .14s,background .14s;display:inline-flex}.button:active{transform:translateY(1px)}.primary{background:var(--ink);color:#fff}.primary:hover{background:#203c60}.mint{background:var(--green);color:#20573d}.mint:hover{background:#a5ecc4}.soft{color:#305d48;background:#fff;border-color:#dce6eb}.soft:hover{background:#eff9f3}.quiet{color:#5f7188;background:0 0}.quiet:hover{background:#f0f4f6}.button .icon{font-size:17px;line-height:0}.intro-row{justify-content:space-between;align-items:flex-end;gap:24px;margin:34px 0 21px;display:flex}.eyebrow{color:#498463;letter-spacing:.045em;margin:0;font-size:12px;font-weight:800}.intro-row h1{color:var(--ink);letter-spacing:-.065em;margin:7px 0 0;font-size:clamp(30px,4vw,42px);line-height:1.05}.intro{color:#68798d;max-width:650px;margin:9px 0 0;font-size:15px;line-height:1.55}.saved-label{color:#65778a;white-space:nowrap;align-items:center;gap:8px;padding-bottom:5px;font-size:12px;font-weight:750;display:flex}.saved-dot{background:#56ad7c;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #e3f4e9}.notice{color:#286244;background:#effaf3;border:1px solid #c1e8d0;border-radius:13px;justify-content:space-between;align-items:flex-start;gap:14px;margin:0 0 16px;padding:12px 15px;font-size:13px;font-weight:650;line-height:1.5;display:flex}.notice button{color:inherit;background:0 0;border:0;font-size:18px;line-height:1}.hero-grid{grid-template-columns:1.08fr .92fr;gap:14px;margin-bottom:14px;display:grid}.hero-card{background:var(--ink);color:#fff;border-radius:24px;flex-direction:column;justify-content:space-between;min-height:194px;padding:24px;display:flex;box-shadow:0 18px 38px #142a461f}.hero-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.hero-label{color:#c6d3e0;margin:0;font-size:13px;font-weight:650}.hero-total{color:#fff;letter-spacing:-.07em;margin:10px 0 0;font-size:clamp(38px,5vw,53px);font-weight:850;line-height:1}.hero-icon{width:46px;height:46px;color:var(--green);background:#ffffff1a;border-radius:15px;place-items:center;font-size:22px;font-weight:850;display:grid}.hero-bottom{border-top:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.hero-detail{color:#d1dbe5;margin:0;font-size:13px}.bank-card{border:1px solid var(--line);background:#fff;border-radius:24px;flex-direction:column;justify-content:space-between;min-height:194px;padding:22px;display:flex;box-shadow:0 8px 24px #1f3a5209}.bank-row{align-items:flex-start;gap:12px;display:flex}.bank-mark{color:#497bb3;background:#eaf1fb;border-radius:14px;flex:none;place-items:center;width:41px;height:41px;font-size:15px;font-weight:850;display:grid}.bank-copy{min-width:0}.bank-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bank-heading h2{color:#203650;margin:0;font-size:15px;font-weight:800}.pill{color:#96691b;white-space:nowrap;background:#fff3dc;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850}.bank-copy p{color:#718096;max-width:550px;margin:7px 0 0;font-size:13px;line-height:1.5}.bank-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.bank-footnote{color:#8390a0;margin:9px 0 0;font-size:11px;line-height:1.45}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 29px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:18px;align-items:center;gap:12px;min-height:82px;padding:14px 16px;display:flex;box-shadow:0 6px 20px #1f3a5206}.stat-icon{border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:16px;font-weight:850;display:grid}.green-tone{color:#358359;background:#e8f7ed}.gold-tone{color:#a57829;background:#fff4df}.blue-tone{color:#4b7caf;background:#e9f1fb}.stat-label{color:#77869a;margin:0;font-size:11px;font-weight:750}.stat-value{color:#1e334e;letter-spacing:-.045em;margin:3px 0 0;font-size:20px;font-weight:850}.stat-detail{color:#929eab;margin:2px 0 0;font-size:10px}.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);align-items:start;gap:23px;display:grid}.section-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:14px;display:flex}.section-eyebrow{color:#688374;margin:0;font-size:11px;font-weight:800}.section-title{color:var(--ink);letter-spacing:-.055em;margin:4px 0 0;font-size:23px;font-weight:850}.pot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.pot-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:18px;transition:transform .15s,box-shadow .15s;box-shadow:0 7px 20px #1f3a5209}.pot-card:hover{transform:translateY(-2px);box-shadow:0 13px 25px #1f3a5212}.pot-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pot-label{align-items:center;gap:11px;min-width:0;display:flex}.pot-symbol{border-radius:14px;flex:none;place-items:center;width:41px;height:41px;font-size:17px;font-weight:850;display:grid}.mint-wash{color:#358359;background:#e8f7ed}.blue-wash{color:#4b7caf;background:#e9f1fb}.gold-wash{color:#a57829;background:#fff4df}.coral-wash{color:#bc5e4f;background:#fff0eb}.violet-wash{color:#7768b1;background:#f0edfb}.pot-name{color:#223650;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:800;overflow:hidden}.pot-caption{color:#8794a3;margin:4px 0 0;font-size:11px;font-weight:600}.color-dot{border-radius:50%;flex:none;width:9px;height:9px}.mint-dot{background:#53b981}.blue-dot{background:#6398cf}.gold-dot{background:#e5b450}.coral-dot{background:#df7c6d}.violet-dot{background:#9787cf}.pot-bottom{justify-content:space-between;align-items:flex-end;gap:10px;margin-top:22px;display:flex}.available-label{color:#8391a1;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:9px;font-weight:850}.pot-balance{color:#182d49;letter-spacing:-.07em;margin:5px 0 0;font-size:29px;font-weight:850;line-height:1}.pot-balance.negative{color:#b14e43}.negative-caption{color:#b14e43;margin:5px 0 0;font-size:10px;font-weight:750}.empty{text-align:center;background:#fff;border:1px dashed #c9d7df;border-radius:21px;padding:30px 22px}.empty-mark{color:#358359;background:#e8f7ed;border-radius:15px;place-items:center;width:44px;height:44px;margin:0 auto;font-size:20px;font-weight:850;display:grid}.empty h3{color:#1e334e;margin:12px 0 0;font-size:17px}.empty p{color:#738298;max-width:400px;margin:6px auto 0;font-size:13px;line-height:1.5}.side-stack{gap:17px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:21px;padding:18px;box-shadow:0 7px 21px #1f3a5208}.panel-head{justify-content:space-between;align-items:flex-start;gap:11px;display:flex}.panel-eyebrow{color:#a27830;margin:0;font-size:11px;font-weight:800}.panel-title{color:var(--ink);letter-spacing:-.05em;margin:4px 0 0;font-size:19px;font-weight:850}.count{color:#96691b;background:#fff3dc;border-radius:10px;place-items:center;min-width:31px;height:31px;padding:0 7px;font-size:13px;font-weight:850;display:grid}.rows{margin:14px 0 0;padding:0;list-style:none}.rows li{border-top:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:11px;padding:11px 0;display:flex}.rows li:first-child{border-top:0;padding-top:0}.row-main{align-items:center;gap:10px;min-width:0;display:flex}.row-icon{color:#9a6e21;background:#fff4df;border-radius:12px;flex:none;place-items:center;width:35px;height:35px;font-size:15px;font-weight:850;display:grid}.row-icon.fund{color:#358359;background:#e8f7ed}.row-icon.spend{color:#bc5e4f;background:#fff0eb}.row-copy{min-width:0}.row-title{color:#2b3f57;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:750;overflow:hidden}.row-subtitle{color:#8995a3;margin:3px 0 0;font-size:10px}.row-right{text-align:right;flex:none}.row-amount{color:#273c55;white-space:nowrap;margin:0;font-size:12px;font-weight:850}.row-amount.positive{color:#328054}.row-amount.negative{color:#b04f45}.assign-link{color:#32845e;text-underline-offset:3px;background:0 0;border:0;margin-top:4px;padding:1px 0;font-size:10px;font-weight:850;-webkit-text-decoration:underline #b5ddc6;text-decoration:underline #b5ddc6;display:inline-block}.caught-up{text-align:center;background:#f6f8f9;border-radius:15px;margin-top:14px;padding:16px 12px}.caught-up strong{color:#344961;font-size:12px}.caught-up p{color:#78879a;margin:5px 0 0;font-size:11px;line-height:1.45}.caught-up .button{margin-top:10px}.activity-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.activity-head .panel-eyebrow{color:#648070}.activity-mark{color:#8492a1;font-size:18px}.no-activity{color:#78879a;text-align:center;background:#f6f8f9;border-radius:15px;margin-top:13px;padding:16px 13px;font-size:11px;line-height:1.5}.foot{color:#8290a0;border-top:1px solid #e4eaee;justify-content:space-between;align-items:flex-start;gap:18px;margin-top:26px;padding-top:15px;font-size:10px;line-height:1.5;display:flex}.foot strong{color:#62748a}.foot button{color:#aa5148;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:10px;font-weight:750;text-decoration:underline}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-layer{z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a16267a;justify-content:center;align-items:center;padding:18px;display:none;position:fixed;inset:0}.modal-layer.open{display:flex}.modal{background:#fff;border:1px solid #dce5ea;border-radius:22px;width:min(510px,100%);max-height:calc(100vh - 36px);padding:23px;overflow:auto;box-shadow:0 24px 65px #0c1b2f3d}.modal-head{margin-bottom:17px}.modal-eyebrow{color:#498463;margin:0 0 5px;font-size:11px;font-weight:850}.modal-title{color:var(--ink);letter-spacing:-.05em;margin:0;font-size:21px;font-weight:850}.modal-description{color:#6d7e91;margin:7px 0 0;font-size:12px;line-height:1.5}.modal-payment{background:#f4f7f9;border-radius:15px;justify-content:space-between;align-items:center;gap:12px;margin:13px 0;padding:14px;display:flex}.modal-payment strong{color:#243951;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.modal-payment span{color:#7d8b9a;margin-top:3px;font-size:10px;display:block}.modal-payment b{color:#142a46;letter-spacing:-.05em;flex:none;font-size:20px}.field{color:#2a3e57;margin:13px 0 0;font-size:12px;font-weight:750;display:block}.control{color:#182b45;background:#fff;border:1px solid #d5e0e7;border-radius:11px;width:100%;height:46px;margin-top:6px;padding:0 12px;font-size:15px;display:block}.control:focus{border-color:#65b38b;outline:0;box-shadow:0 0 0 4px #65b38b26}.amount-wrap{position:relative}.amount-wrap span{color:#7b8998;font-weight:750;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.amount-wrap .control{padding-left:31px}.field-grid{grid-template-columns:1fr .85fr;gap:11px;display:grid}.modal-warning{color:#805c27;background:#fff8ed;border:1px solid #efdab7;border-radius:11px;margin:11px 0 0;padding:10px 12px;font-size:11px;line-height:1.45}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:19px;display:flex}.modal-actions .button{min-height:40px}.modal-empty{text-align:center;background:#f8fafb;border:1px dashed #cbd8e1;border-radius:14px;padding:16px}.modal-empty strong{color:#31465e;font-size:12px}.modal-empty p{color:#718196;margin:5px 0 0;font-size:11px;line-height:1.45}.csv-help{color:#7d8b9b;margin:8px 0 0;font-size:10px;line-height:1.45}.restore-file{color:#68798d;max-width:170px;font-size:11px}@media (width<=900px){.shell{padding:0 22px 45px}.topbar{margin:0 -22px;padding:0 22px}.hero-grid{grid-template-columns:1fr}.content-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px}.brand{min-width:155px}}@media (width<=680px){.shell{padding:0 15px 38px}.topbar{margin:0 -15px;padding:0 15px}.topbar-inner{height:64px}.nav{display:none}.brand{min-width:0}.brand-sub{display:none}.actions{gap:5px}.actions .button{min-height:38px;padding:0 10px}.hide-mobile{display:none!important}.intro-row{flex-direction:column;align-items:flex-start;gap:9px;margin:25px 0 18px}.saved-label{padding:0}.hero-card{min-height:175px;padding:20px}.bank-card{padding:19px}.stats{grid-template-columns:1fr;gap:8px;margin-bottom:24px}.stat{min-height:69px;padding:10px 13px}.content-grid{grid-template-columns:1fr;gap:20px}.pot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:17px}.section-title{font-size:21px}.foot{flex-direction:column;gap:8px}}@media (width<=440px){.brand-name{font-size:16px}.brand-mark{width:36px;height:36px}.actions .small-label{display:none}.actions .button .icon{font-size:18px}.pot-grid{grid-template-columns:1fr}.pot-card{padding:17px}.pot-bottom{margin-top:18px}.field-grid{grid-template-columns:1fr}.modal{padding:20px}.modal-actions{flex-direction:column-reverse}.modal-actions .button{width:100%}}.money-tools{margin-bottom:24px;padding:20px}.pot-tools{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:6px;display:flex}.feed-list{margin-top:16px}.feed-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.feed-row strong{font-size:13px}.feed-row .form-hint{margin-bottom:0}@media (width<=600px){.feed-row{flex-direction:column;align-items:flex-start}.money-tools .section-head{flex-wrap:wrap}}.pot-reserve{background:#f2faf5;border:1px solid #d8e8df;border-radius:12px;margin-top:14px;padding:12px}.pot-reserve summary{cursor:pointer;font-size:12px;font-weight:700}.pot-reserve .feed-row{flex-direction:column;align-items:flex-start}.pot-reserve .feed-row strong{overflow-wrap:anywhere}.pot-caption strong{color:#51657a}.pot-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.pot-actions .button{min-height:34px;padding:0 9px;font-size:11px}.allocation-status{color:#65778b;background:#f5f8f9;border-radius:11px;margin:10px 0 0;padding:9px 11px;font-size:11px;font-weight:700}.allocation-status.ready{color:#2f704c;background:#edf8f0}.allocation-status.incomplete{color:#8b6528;background:#fff7e9}.allocation-preview{background:#f5f8f9;border-radius:13px;gap:8px;margin-top:13px;padding:12px;display:grid}.allocation-preview-row{color:#52667d;justify-content:space-between;gap:10px;font-size:11px;display:flex}.allocation-preview-row strong{color:#243951}.form-hint{color:#78879a;margin:6px 0 0;font-size:10px;line-height:1.45}.history-list{max-height:50vh;margin:14px 0 0;padding:0;list-style:none;overflow:auto}.history-list li{border-top:1px solid #edf1f4;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.history-list li:first-child{border-top:0}.history-amount{color:#344961;white-space:nowrap;flex:none;font-size:11px;font-weight:800}.history-empty{color:#78879a;text-align:center;background:#f6f8f9;border-radius:14px;margin-top:13px;padding:16px;font-size:11px;line-height:1.5}.buffer-note{color:#728297;margin:8px 0 0;font-size:10px;line-height:1.45}.setup-summary{color:#152744;cursor:pointer;margin:20px 0 8px;font-size:16px;font-weight:700}details .control{font-size:13px}.modal-warning .button{margin-top:6px}.field input[readonly]{background:#f4f7fb}.modal a{text-underline-offset:3px;text-decoration:underline}[hidden]{display:none!important}.debts{margin-top:16px}.debts .section-head .bank-actions{align-items:center;margin:0}.debt-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:14px;display:grid}.debt-row{background:#fff;border:1px solid #e0e8ec;border-radius:18px;padding:16px}.debt-row details{margin-top:10px}.debt-row summary{cursor:pointer;font-size:13px;font-weight:700}.debt-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.debt-top h3{margin:0;font-size:16px}.debt-top .form-hint{margin:4px 0 0}.debt-balance{white-space:nowrap;font-size:24px;font-weight:800}.debt-bar{background:#eef2f4;border-radius:99px;height:8px;margin:12px 0 4px;overflow:hidden}.debt-bar span{border-radius:inherit;background:#e0796b;height:100%;display:block}.debt-group-head{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.debt-group-head h3{margin:0;font-size:15px}.debt-group-head+.form-hint{margin-top:6px}.delete-link{color:#9a4b42;margin-left:10px;text-decoration-color:#efc7c1}.stat-link{margin-left:0;font-size:12px}.feed-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}body.csv-dragging:after{content:"Drop your CSV statement to import it";z-index:50;color:#182b45;pointer-events:none;background:#edf7f1eb;border:3px dashed #65b38b;border-radius:24px;place-items:center;font-size:22px;font-weight:800;display:grid;position:fixed;inset:16px}.check-row{align-items:center;gap:8px;margin:4px 0 12px;font-size:13px;font-weight:700;display:flex}
