:root{font-family:DM Sans,sans-serif;color-scheme:dark;--bg:#101716;--sidebar:#131c18;--surface:#19221e;--raised:#222e27;--ink:#e6eee8;--muted:#a3b2a9;--line:#2d3a33;--accent:#b3e8c9;--green:#8ed0a9;--amber:#e5b76c;--danger:#e49c8e;--shadow:#0005;background:var(--bg);color:var(--ink);font-synthesis:none;text-rendering:optimizeLegibility;font-optical-sizing:auto;font-weight:400}:root[data-theme=light]{color-scheme:light;--bg:#f3f6f3;--sidebar:#fff;--surface:#fff;--raised:#edf3ee;--ink:#202b25;--muted:#77857c;--line:#dfe7e1;--accent:#276345;--green:#397950;--amber:#a97635;--danger:#ae5a45;--shadow:#25372b18}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#2a6446;color:#f0fff4;font:800 21px Manrope,sans-serif;box-shadow:0 5px 14px #1c4b3240}.loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;color:var(--muted)}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--bg)}.login-card{display:flex;flex-direction:column;justify-content:center;max-width:520px;width:100%;padding:65px;margin:auto}.login-card .mark{margin-bottom:45px}.eyebrow{font:700 9px DM Sans,sans-serif;letter-spacing:.16em;color:#8fa99a;margin:0 0 10px}.login-card h1,.page-heading h1{font:700 clamp(32px,4vw,49px)/1.1 Manrope,sans-serif;letter-spacing:-.055em;margin:0;color:var(--ink)}.login-card h1 em{font-style:normal;color:var(--accent)}.muted{color:var(--muted);font-size:12px;line-height:1.65}.login-card>.muted{max-width:390px;margin:18px 0 28px}.google-button{height:52px;display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:0 16px;font-size:12px;font-weight:600}.google-g{color:#4285f4;font:700 19px Arial}.google-button>span:last-child{margin-left:auto;color:var(--muted)}.login-foot{margin-top:23px;font-size:10px;color:var(--muted)}.login-foot span{padding:0 8px;color:var(--line)}.login-art{position:relative;overflow:hidden;background:#18251e;display:grid;place-items:center;min-height:100vh}.login-art:before,.orbit{position:absolute;border:1px solid #42584a;border-radius:50%;width:min(60vw,710px);height:min(60vw,710px)}.orbit{width:min(43vw,500px);height:min(43vw,500px)}.orbit-two{width:min(28vw,320px);height:min(28vw,320px)}.art-card{z-index:1;background:#202c25;width:min(370px,75%);border:1px solid #34443a;border-radius:10px;padding:26px 28px;box-shadow:0 25px 70px #0005;transform:rotate(-2deg)}.art-card>span,.art-caption{font-size:9px;letter-spacing:.12em;font-weight:700;color:#9fb2a5}.art-card strong{display:block;margin-top:20px;font:700 35px Manrope,sans-serif;color:#e6eee8}.art-card small{color:#9fb2a5;font-size:11px}.chart-line{height:80px;margin:12px 0 8px;background:linear-gradient(165deg,transparent 48%,#72c18e 49%,#72c18e 51%,transparent 52%)}.art-caption{position:absolute;bottom:28px;right:35px}.notice{background:#382722;color:#f0b39d;border:1px solid #624338;padding:11px 14px;border-radius:6px;font-size:11px;line-height:1.5}.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:3;inset:0 auto 0 0;width:238px;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:25px 15px 20px}.brand{display:flex;align-items:center;gap:10px;margin:0 0 32px 5px;text-decoration:none;color:var(--ink);background:none;border:0;text-align:left;font:800 23px Manrope,sans-serif;letter-spacing:-.07em}.brand .mark{width:34px;height:34px;font-size:18px}.brand-dot,.hello-dot{color:var(--accent)}.sidebar nav{overflow:auto}.nav-group{margin-bottom:18px}.nav-label{padding-left:10px;margin:0 0 8px;font-size:8px;color:#718278;letter-spacing:.15em;font-weight:700}.nav-item{width:100%;height:38px;border:0;border-radius:6px;padding:0 10px;display:flex;align-items:center;gap:12px;text-align:left;color:var(--muted);background:transparent;font-size:11px}.nav-item>span{width:18px;text-align:center;font-size:15px}.nav-item:hover{background:var(--raised);color:var(--ink)}.nav-item.active{color:var(--accent);background:#263b2e;font-weight:700}.sidebar-bottom{margin-top:auto}.household-chip{border-top:1px solid var(--line);padding:15px 3px 14px;display:flex;align-items:center;gap:9px}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#294333;color:#c7f0d3;font-size:12px;font-weight:700;flex:none}.household-chip>div:nth-child(2){display:grid;gap:4px;min-width:0}.household-chip strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:125px}.household-chip span{font-size:8px;color:var(--muted)}.household-chip button{margin-left:auto;border:0;background:transparent;color:var(--muted)}.secure-label{font-size:8px;color:var(--muted);padding-left:4px}.main{margin-left:238px}.topbar{height:60px;background:var(--sidebar);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,42px)}.crumb{font-size:10px;color:var(--muted)}.crumb span{padding:0 9px;color:#59695f}.crumb strong{color:var(--ink);font-weight:600}.top-actions{display:flex;align-items:center;gap:12px}.filter-control{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:9px}.filter-control select,.forecast select{background:var(--surface);border:1px solid var(--line);padding:7px 8px;border-radius:5px;font-size:9px}.theme-toggle{width:29px;height:29px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:15px;color:var(--accent)}.avatar.small{width:28px;height:28px;font-size:10px}.content{max-width:1440px;padding:35px clamp(20px,3vw,42px) 22px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px}.page-heading .eyebrow{margin-bottom:8px}.page-heading h1{font-size:29px;letter-spacing:-.045em}.page-heading .muted{margin:7px 0 0}.heading-actions{display:flex;align-items:center;gap:8px}.search-input{height:34px;width:190px;border:1px solid var(--line);border-radius:5px;background:var(--surface);padding:0 10px;font-size:10px}.primary-button{height:34px;border:0;border-radius:5px;padding:0 12px;background:#2b6548;color:#eaffef;font-size:10px;font-weight:700}.summary-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:11px}.summary-card,.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:17px;min-height:119px}.summary-card.primary{background:#1d3a2b;border-color:#2e5940}.card-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.12em;font-weight:700;color:#9fb2a5}.summary-card strong{display:block;font:700 clamp(19px,2vw,26px) Manrope,sans-serif;letter-spacing:-.04em;margin-top:20px;white-space:nowrap}.summary-card p{font-size:9px;color:#9fb2a5;margin:5px 0}.mini-bars{height:19px;position:absolute;right:14px;bottom:12px;left:65%;display:flex;align-items:end;gap:3px;opacity:.5}.summary-card.primary{position:relative;overflow:hidden}.mini-bars i{flex:1;background:#a8dbb8;border-radius:2px 2px 0 0}.stat-card{display:flex;flex-direction:column;justify-content:space-between;min-height:105px}.stat-card>span{font-size:8px;color:var(--muted);letter-spacing:.12em;font-weight:700}.stat-card strong{font:700 19px Manrope,sans-serif;letter-spacing:-.03em}.test-banner{display:flex;gap:9px;align-items:center;padding:10px 12px;background:#312c20;color:#e4bc73;border:1px solid #51452e;border-radius:5px;font-size:9px;margin:12px 0 0}.test-banner span{color:#bdb196}.below-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:11px;margin-top:14px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:18px 18px 14px;margin-bottom:12px}.below-grid .panel{min-height:270px}.panel-title,.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px}.panel-title .eyebrow,.panel-heading .eyebrow{margin:0 0 5px;font-size:8px}.panel-title h2,.panel-heading h2,.modal h2,.settings-grid h2{font:700 16px Manrope,sans-serif;letter-spacing:-.03em;margin:0;color:var(--ink)}.text-button{border:0;background:transparent;color:var(--accent);font-size:9px}.icon-button{width:28px;height:28px;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:var(--accent);font-size:18px}.activity-list,.account-list{display:grid}.activity-row,.account-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.activity-icon,.bank-icon{width:29px;height:29px;border-radius:7px;background:#25382c;color:#a2d9b3;display:grid;place-items:center;font-size:14px;flex:none}.activity-icon.expense{background:#3c3023;color:#e3b97d}.activity-info,.account-row>div{display:grid;gap:4px;min-width:0}.activity-info strong,.account-row strong{font-size:9px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-info span,.account-row span{font-size:8px;color:var(--muted)}.activity-row>b,.account-row>b{margin-left:auto;font-size:9px;white-space:nowrap;color:var(--muted)}.activity-row>b.positive{color:var(--green)}.bank-icon{background:var(--raised);color:var(--muted)}.sample-tag{margin-left:6px;font-size:7px;color:var(--amber);letter-spacing:.08em}.empty-state{min-height:165px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.empty-state>span{width:34px;height:34px;border-radius:50%;background:var(--raised);display:grid;place-items:center;color:var(--accent);font-size:16px;margin-bottom:9px}.empty-state strong{font:600 11px Manrope,sans-serif;color:var(--ink)}.empty-state p{font-size:9px;max-width:260px;line-height:1.55;margin:6px 0 11px}.outline-button{border:1px solid var(--line);background:var(--raised);border-radius:5px;padding:8px 11px;font-size:9px;color:var(--accent)}.row-action{border:0;background:transparent;color:var(--muted);padding:4px 6px}.quick-actions{margin-top:20px}.quick-actions>.eyebrow{margin-bottom:9px}.quick-actions>div{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.quick-actions button{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--line);background:var(--surface);border-radius:6px;color:var(--muted);font-size:9px;text-align:left}.quick-actions button>span{width:23px;height:23px;display:grid;place-items:center;background:var(--raised);border-radius:5px;color:var(--accent);font-size:13px}.quick-actions button>b{margin-left:auto;color:var(--muted);font-weight:400}.dashboard-shortcuts{margin-top:10px}.shortcut{width:100%;text-align:left;color:var(--ink);cursor:pointer}.shortcut strong{font-size:13px}.shortcut strong b{color:var(--accent);margin-left:7px}.footer{margin:22px 0 0;text-align:center;color:var(--muted);font-size:8px}.footer span{padding:0 6px}.record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.record-card{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:15px;min-width:0}.record-top{display:flex;justify-content:space-between;align-items:center}.record-type{font-size:8px;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.record-card h3{font:600 12px Manrope,sans-serif;margin:13px 0 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-amount{font:700 19px Manrope,sans-serif}.record-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px;color:var(--muted);font-size:8px}.record-meta span+span:before{content:"·";margin-right:8px;color:#62746a}.record-notes{font-size:9px;margin:9px 0 0}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 12px}.stats-row .stat-card{min-height:88px}.payroll,.calculator,.forecast{margin-top:12px}.estimate-label{font-size:8px;color:var(--amber);border:1px solid #574b32;padding:5px 7px;border-radius:4px}.field-inline{display:grid;max-width:310px;gap:7px;color:var(--muted);font-size:9px;margin:13px 0}.field-inline input,.calc-fields input{height:35px;border:1px solid var(--line);border-radius:5px;background:var(--bg);padding:0 9px}.payroll-results{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.payroll-results>div{background:var(--raised);padding:11px;border-radius:5px;display:grid;gap:7px}.payroll-results span,.calc-result span{font-size:8px;color:var(--muted)}.payroll-results b{font-size:12px}.calc-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.calc-fields label{display:grid;gap:6px;font-size:9px;color:var(--muted)}.calc-result{margin-top:14px;background:#1b3326;border:1px solid #31573f;border-radius:6px;padding:14px;display:grid;gap:6px}.calc-result strong{font:700 23px Manrope,sans-serif;color:var(--accent)}.calc-result small{font-size:8px;color:var(--muted)}.forecast .panel-title{align-items:flex-start}.projection-track{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-size:9px}.projection-track>div,.flow-bars>div>div{height:9px;border-radius:9px;background:var(--raised);overflow:hidden}.projection-track i{height:100%;display:block;border-radius:9px;background:linear-gradient(90deg,#5f9b72,#b3e8c9)}.projection-track>b{color:var(--accent)}.report-panel{min-height:190px}.flow-bars{display:grid;gap:17px}.flow-bars>div{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:12px;font-size:9px}.flow-bars i{display:block;height:100%;background:#5aa878;border-radius:9px}.flow-bars i.expense-bar{background:#b3804b}.flow-bars b{font-size:9px}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.setting-row{width:100%;display:flex;justify-content:space-between;padding:12px 0;border:0;border-top:1px solid var(--line);background:none;color:var(--ink);font-size:10px}.setting-row b{color:var(--accent)}.member-row{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:12px 0}.member-row>div:nth-child(2){display:grid;gap:4px;min-width:0}.member-row strong{font-size:9px}.member-row span,.member-row>b{font-size:8px;color:var(--muted)}.member-row>b{margin-left:auto}.partner-avatar{background:var(--raised);color:var(--muted)}.modal-backdrop{position:fixed;inset:0;z-index:10;background:#070b09b8;display:grid;place-items:center;padding:16px}.modal{width:min(100%,465px);max-height:min(92vh,800px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:25px;position:relative;box-shadow:0 24px 80px var(--shadow)}.modal-close{position:absolute;top:15px;right:17px;background:none;border:0;font-size:22px;color:var(--muted)}.modal h2{font-size:21px}.modal>.muted{margin:7px 0 17px;font-size:10px}.modal label{display:grid;gap:6px;margin:10px 0;color:var(--muted);font-size:9px;font-weight:600}.modal input,.modal select,.modal textarea{width:100%;min-height:36px;border:1px solid var(--line);border-radius:5px;background:var(--bg);padding:7px 9px;color:var(--ink);font-size:10px;outline:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.submit-button{width:100%;height:41px;border:0;border-radius:5px;background:#2b6548;color:#eaffef;font-size:10px;font-weight:700;margin-top:11px}.submit-button:disabled{opacity:.6}.mobile-nav{display:none}@media(max-width:1050px){.sidebar{width:210px}.main{margin-left:210px}.summary-grid,.record-grid{grid-template-columns:repeat(2,1fr)}.below-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.login-wrap{grid-template-columns:1fr}.login-card{min-height:100vh;padding:38px 25px}.login-art{display:none}.sidebar{inset:auto 0 0;width:auto;height:61px;border:0;border-top:1px solid var(--line);padding:3px 6px;background:var(--sidebar)}.sidebar nav,.brand,.sidebar-bottom{display:none}.mobile-nav{position:fixed;z-index:5;inset:auto 0 0;height:61px;display:flex;align-items:center;justify-content:flex-start;overflow-x:auto;background:var(--sidebar);border-top:1px solid var(--line);padding:0 4px env(safe-area-inset-bottom)}.mobile-nav button{flex:none;min-width:57px;height:52px;border:0;background:transparent;display:grid;place-content:center;justify-items:center;gap:3px;color:var(--muted);font-size:8px}.mobile-nav button span{font-size:15px}.mobile-nav button.active{color:var(--accent)}.main{margin:0 0 61px}.topbar{height:51px;padding:0 13px}.filter-control>span{display:none}.top-actions{gap:7px}.content{padding:23px 13px 18px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:17px;gap:11px}.page-heading h1{font-size:25px}.page-heading .muted{font-size:10px}.heading-actions{width:100%}.search-input{flex:1;width:auto}.summary-grid{gap:7px}.summary-card,.stat-card{min-height:104px;padding:13px 11px}.summary-card strong{font-size:18px;margin-top:16px}.card-top{font-size:7px}.stat-card strong{font-size:16px}.below-grid{margin-top:9px}.panel{padding:15px 12px;margin-bottom:9px}.record-grid{grid-template-columns:1fr}.stats-row{gap:7px}.stats-row .stat-card{min-height:80px}.record-card{padding:13px}.quick-actions>div{grid-template-columns:1fr}.quick-actions button{padding:9px 11px}.payroll-results,.calc-fields,.settings-grid{grid-template-columns:1fr}.flow-bars>div{grid-template-columns:56px 1fr auto;gap:7px}.form-row{grid-template-columns:1fr 1fr}.modal{padding:22px 17px}.crumb{font-size:9px}.footer{font-size:7px}}@media(max-width:700px){.budget-row{grid-template-columns:1fr 34px;gap:7px}.budget-row>div:first-child{grid-column:1/-1}.budget-row>.budget-track{grid-column:1}.budget-row>b{grid-column:2;grid-row:2}.payroll-results{grid-template-columns:repeat(2,1fr)}}
