:root{color:#273c34;font-synthesis:none;background:#f5f6f1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:2px solid #9aaf8f}button{justify-content:center;align-items:center;gap:7px;display:inline-flex}p{line-height:1.7}.app{min-height:100vh;display:flex}.sidebar{z-index:20;background:#fafbf6;border-right:1px solid #e4e8dd;flex-direction:column;width:224px;padding:37px 23px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:3px;align-items:center;gap:11px;font-size:29px;font-weight:650;display:flex}.brandicon{color:#f5f0db;background:#2d5143;border-radius:12px;place-items:center;width:43px;height:46px;display:grid}.brand small{letter-spacing:2px;color:#7e897e;margin-top:4px;font-size:8px;display:block}.space-label{letter-spacing:1px;color:#8a9587;margin:28px 2px 31px;font-size:11px}nav{gap:9px;display:grid}nav button{color:#758073;border-radius:9px;justify-content:flex-start;gap:13px;height:47px;padding:0 16px;font-size:14px}nav button.active{color:#315443;background:#e8eee1;font-weight:650}.navdot{background:#57745c;border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{margin-top:auto}.plant{color:#829178;margin:45px 10px}.plant p{font-size:13px;line-height:1.9}.family-mini{border-top:1px solid #e3e7dc;align-items:center;gap:10px;padding-top:20px;font-size:12px;display:flex}.family-mini small{color:#92998c;margin-top:5px;font-size:10px;display:block}.family-mini button{margin-left:auto}.avatar{color:#5c7354;background:#e7e9d7;border-radius:50%;flex-shrink:0;place-items:center;width:37px;height:37px;font-size:14px;display:inline-grid}.avatar.small{width:30px;height:30px;font-size:12px}.workspace{width:calc(100% - 224px);margin-left:224px}header{background:#f9faf6;border-bottom:1px solid #e5e8de;justify-content:space-between;align-items:center;height:74px;padding:0 43px;display:flex}.breadcrumb{color:#909789;align-items:center;gap:12px;font-size:12px;display:flex}.breadcrumb b{color:#51624e;font-weight:500}.header-right{align-items:center;gap:20px;display:flex}.sync{color:#87927f;align-items:center;gap:6px;font-size:11px;display:flex}.sync i{background:#8aab74;border-radius:50%;width:5px;height:5px}.iconbutton{color:#7f8a7c;border-radius:6px;padding:6px}.iconbutton:hover{background:#edf0e9}.mobile-menu{display:none}main{max-width:1440px;margin:auto;padding:38px 43px 18px}.page-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:2.2px;color:#939d89;margin-bottom:13px;font-size:9px}h1{letter-spacing:.5px;margin:0 0 12px;font-size:27px;font-weight:600}h2{margin:0;font-size:15px;font-weight:600}h3{font-size:14px;font-weight:500}.page-heading p{color:#8c9585;margin:0;font-size:12px}.primary{color:#fff;white-space:nowrap;background:#315342;border-radius:8px;min-height:42px;padding:12px 19px;font-size:13px}.primary:hover{background:#244434}.toolbar{align-items:center;gap:13px;margin-bottom:18px;display:flex}.month{background:#fff;border:1px solid #e0e4d8;border-radius:7px;align-items:center;height:38px;display:flex}.month input{color:#4c5c47;background:0 0;border:0;width:148px;padding:5px;font-size:12px}.month button{color:#8b9682;padding:7px}.toolbar select,.filters select{color:#6a7862;background:#fff;border:1px solid #e0e4d8;border-radius:7px;max-width:240px;padding:9px 12px;font-size:12px}.toolbar-spacer{flex:1}.muted{color:#929a8c;font-size:11px}.statgrid{grid-template-columns:1.25fr 1fr 1fr;gap:18px;margin-bottom:21px;display:grid}.stat{background:#fff;border:1px solid #e1e6d8;border-radius:12px;padding:22px 25px;position:relative;overflow:hidden}.stat-label{color:#7d8876;justify-content:space-between;align-items:center;font-size:12px;display:flex}.bigmoney{letter-spacing:-.8px;font-variant-numeric:tabular-nums;margin:19px 0 17px;font-size:33px;font-weight:550}.bigmoney small{margin-right:8px;font-size:19px;font-weight:400}.stat-foot{color:#9ba18f;z-index:1;justify-content:space-between;font-size:10px;display:flex;position:relative}.featured{color:#faf9eb;background:#2e5141;border-color:#2e5141}.featured .stat-label{color:#c4d1bf}.featured .stat-foot{color:#c1cdb7}.featured .stat-foot span{color:#97b194;font-size:9px}.circle-decor{border:1px solid #ffffff0b;border-radius:50%;width:160px;height:160px;position:absolute;top:5px;right:-50px;box-shadow:0 0 0 26px #ffffff03,0 0 0 53px #ffffff03}.mini-badge{color:#9aa28d;background:#f2f4ed;border-radius:4px;padding:4px 7px;font-size:9px}.chartgrid{grid-template-columns:1.65fr 1fr;gap:20px;margin-bottom:22px;display:grid}.panel{background:#fff;border:1px solid #e2e6da;border-radius:12px;padding:23px}.panel-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.tag{color:#7c8e6f;background:#f3f5ed;border-radius:5px;padding:5px 9px;font-size:10px}.chart{gap:14px;height:175px;margin-top:27px;display:flex}.chart-y{color:#a1a894;flex-direction:column;justify-content:space-between;min-width:42px;padding-bottom:26px;font-size:9px;display:flex}.plot{flex:1;min-width:0;position:relative}.plot svg{width:100%;height:150px;overflow:visible}.chart-x{color:#a1a894;justify-content:space-between;margin-top:9px;font-size:9px;display:flex}.chart-empty{text-align:center;color:#97a18c;font-size:11px;position:absolute;top:57px;left:0;right:0}.category-summary{justify-content:center;align-items:center;gap:25px;margin-top:32px;display:flex}.donut{border-radius:50%;flex-shrink:0;place-items:center;width:140px;height:140px;display:grid}.donut>div{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:108px;height:108px;display:flex}.donut b{font-size:27px;font-weight:500}.donut small{color:#9aab8f;margin-top:5px;font-size:9px}.legend{min-width:100px}.legend>div{align-items:center;gap:8px;margin:14px 0;font-size:11px;display:flex}.legend i{border-radius:50%;width:6px;height:6px}.legend b{color:#98a28e;margin-left:auto;font-size:10px;font-weight:400}.legend p{font-size:10px;line-height:2.2}.records .panel-title h2 small{color:#a6ac9c;margin-left:10px;font-size:10px;font-weight:400}.textbutton{color:#718865;padding:3px;font-size:11px}.filters{align-items:center;gap:12px;margin:23px 0 13px;display:flex}.search{color:#a1ab95;background:#f6f7f2;border:1px solid #eaede3;border-radius:7px;align-items:center;gap:8px;padding:9px 12px;display:flex}.search input{color:#4e5f44;background:0 0;border:0;outline:0;width:200px;font-size:11px}.search input::placeholder{color:#a2a997}.filters select{max-width:220px;padding:9px;font-size:11px}.filterlabel{align-items:center;gap:6px;margin-left:auto;font-size:10px;display:flex}.tablewrap{overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:11px}th{text-align:left;color:#919c86;background:#f8f9f4;padding:12px 14px;font-size:10px;font-weight:400}td{color:#87917c;border-bottom:1px solid #f0f2ea;padding:16px 14px}.right{text-align:right}.amount{color:#4c6142;font-variant-numeric:tabular-nums;font-weight:500}.expense-name{align-items:center;gap:11px;display:flex}.expense-icon{color:#879b73;background:#f0f3e9;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.expense-name b{color:#526249;text-overflow:ellipsis;max-width:220px;font-size:12px;font-weight:500;display:block;overflow:hidden}.expense-name small{color:#a2ac97;margin-top:6px;font-size:9px;display:block}.member-pill{color:#7e8f70;background:#f0f3eb;border-radius:4px;padding:4px 8px;font-size:10px}.empty{text-align:center;padding:35px 10px 25px}.empty>span{color:#a0af8d;background:#f1f4eb;border-radius:15px;place-items:center;width:54px;height:54px;display:inline-grid}.empty h3{color:#7b8c6b;margin:14px 0 6px}.empty p{color:#a1ac95;margin:0 0 13px;font-size:11px}.viewall{color:#859978;width:100%;padding:15px 0 0;font-size:11px}footer{color:#a3ad96;justify-content:space-between;align-items:center;margin:28px 0 2px;font-size:9px;display:flex}footer span:first-child{align-items:center;gap:5px;display:flex}.welcome{background:#eef1e4;border:1px solid #e1e6d6;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:23px;padding:19px 22px;display:flex}.welcome b{font-size:13px;font-weight:500}.welcome p{color:#8b997b;margin:5px 0 0;font-size:11px}.notice{background:#fff0dd;border-radius:8px;gap:15px;margin-bottom:20px;padding:15px;font-size:12px;display:flex}.notice a{text-decoration:underline}.category-grid{grid-template-columns:repeat(3,1fr);gap:19px;display:grid}.category-card h2{border-bottom:1px solid #eef1e8;align-items:center;gap:10px;padding-bottom:18px;display:flex}.category-branch{margin-top:20px;font-size:12px}.category-branch b{color:#738468;font-weight:500}.category-branch>div{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.category-branch span{color:#8b9a7c;background:#f3f5ee;border:1px solid #e9eddf;border-radius:5px;padding:5px 9px;font-size:11px}.family-panel{max-width:850px}.invite{background:#f5f7ee;border-radius:9px;justify-content:space-between;align-items:center;margin-top:23px;padding:20px;display:flex}.invite small{color:#8c9d7e;margin-bottom:10px;font-size:11px;display:block}.invite b{letter-spacing:3px;font-family:monospace;font-size:20px;font-weight:500}.member-grid{grid-template-columns:1fr 1fr;gap:15px;margin-top:26px;display:grid}.member-card{border:1px solid #e8eddf;border-radius:8px;align-items:center;gap:12px;padding:15px;font-size:13px;display:flex}.member-card b{font-weight:500}.member-card small{color:#97a489;margin-top:8px;font-size:11px;display:block}.install{max-width:850px;margin-top:22px}.install p{color:#89987a;font-size:12px}.install small{color:#a4ae99;font-size:11px}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#1e352952;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog{background:#fffef9;border-radius:17px;width:490px;max-height:92vh;padding:28px 30px;overflow:auto;box-shadow:0 25px 100px #18372830}.dialog-heading{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.dialog-heading small{letter-spacing:2px;color:#99a38c;font-size:8px}.dialog-heading h2{margin-top:8px;font-size:21px}.dialog label{color:#738166;margin-top:18px;font-size:12px;display:block}.dialog input,.dialog select{color:#465f3a;background:#fff;border:1px solid #dfe5d4;border-radius:7px;width:100%;min-width:0;margin-top:9px;padding:12px;font-size:13px;display:block}.dialog .amount-input{border-bottom:1px solid #e3e9d9;align-items:center;gap:12px;font-size:28px;display:flex}.dialog .amount-input input{background:0 0;border:0;border-radius:0;margin:0;padding:17px 0;font-size:38px}.level-select{gap:8px;display:flex}.level-select select{flex:1;max-width:33.3%;padding:11px 5px;font-size:12px}.fieldhint{color:#9ba88a;margin:9px 0;font-size:10px;line-height:1.8}.formrow{grid-template-columns:1fr 1fr;gap:15px;display:grid}.form-footer{justify-content:flex-end;gap:15px;margin-top:25px;display:flex}.form-footer .danger{color:#ae7964;margin-right:auto;font-size:12px}.full{width:100%;margin-top:20px}.segmented{background:#edf1e5;border-radius:8px;padding:4px;display:flex}.segmented button{width:50%;padding:10px;font-size:12px}.segmented .selected{background:#fff;border-radius:6px;box-shadow:0 1px 5px #203e1910}.toast{color:#fff;z-index:100;background:#294c3e;border-radius:10px;max-width:90%;padding:13px 24px;font-size:13px;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 4px 30px #162d2620}@media (width>=1500px){main{padding-top:45px}.stat{padding:27px}.bigmoney{font-size:40px}}@media (width<=1150px){.sidebar{width:190px;padding:30px 17px}.workspace{width:calc(100% - 190px);margin-left:190px}main{padding:29px 25px}header{padding:0 25px}.stat{padding:20px 17px}.bigmoney{font-size:28px}.stat-foot span{display:none}.chartgrid{grid-template-columns:1.4fr 1fr}.category-summary{gap:15px}.donut{width:110px;height:110px}.donut>div{width:84px;height:84px}.legend{min-width:80px}.category-grid{grid-template-columns:1fr 1fr}.panel{padding:19px}.page-heading h1{font-size:23px}}@media (width<=760px){.sidebar{width:224px;transition:transform .2s;transform:translate(-100%);box-shadow:10px 0 35px #18372815}.sidebar.shown{transform:translate(0)}.workspace{width:100%;margin-left:0}.mobile-menu{margin-left:-5px;padding:4px;display:inline-flex}header{height:60px;padding:0 19px}.header-right{gap:12px}.sync{font-size:10px}main{padding:25px 17px 18px}.page-heading{align-items:flex-start;margin-bottom:22px}.page-heading h1{letter-spacing:0;max-width:240px;font-size:21px;line-height:1.5}.eyebrow{letter-spacing:1.7px;margin-bottom:8px;font-size:8px}.page-heading p{max-width:260px;font-size:11px}.page-heading>.primary{margin-top:24px;padding:10px 12px;font-size:12px}.statgrid{grid-template-columns:1fr 1fr;gap:12px}.stat.featured{grid-column:span 2}.stat{padding:20px}.featured .bigmoney{margin:17px 0;font-size:37px}.bigmoney{margin:17px 0;font-size:26px}.bigmoney small{font-size:16px}.stat-label{font-size:11px}.stat-foot{font-size:9px}.featured .stat-foot span{display:block}.toolbar{flex-wrap:wrap;gap:8px}.toolbar>.muted{display:none}.toolbar select{max-width:150px;padding:10px 8px;font-size:11px}.month input{width:125px;font-size:11px}.month button{padding:5px}.chartgrid{grid-template-columns:1fr;gap:15px}.panel{padding:18px}.chart{height:166px;margin-top:20px}.chartgrid>.panel:last-child .category-summary{justify-content:flex-start;gap:30px;margin:21px 0 3px;padding-left:10px}.legend{min-width:135px}.filters{gap:8px}.search{flex:1;min-width:0;padding:9px}.search input{width:100%;min-width:0}.filters select{max-width:110px;font-size:10px}.filterlabel{display:none}th,td{padding:12px 8px}.expense-icon{display:none}.expense-name b{max-width:110px;font-size:11px}.expense-name small{white-space:normal;max-width:115px;font-size:8px}.member-pill{padding:4px;font-size:9px}.records td{font-size:10px}.records th,.records td:nth-child(3){font-size:9px}.records th:last-child,.records td:last-child{padding:0}.welcome{flex-direction:column;align-items:flex-start;gap:13px;padding:18px}.welcome .primary{padding:9px 13px;font-size:11px}.category-grid{grid-template-columns:1fr 1fr;gap:12px}.category-card{padding:15px}.category-card h2{font-size:14px}.category-branch span{padding:4px 7px;font-size:10px}.category-branch{margin-top:15px}.invite{padding:15px}.invite b{letter-spacing:1px;font-size:14px}.member-grid{grid-template-columns:1fr}.dialog{width:100%;padding:23px}.dialog-heading h2{font-size:20px}.overlay{padding:13px}.formrow{gap:10px}footer{font-size:8px}.empty{padding:30px 0 20px}.install p{font-size:11px}}.export-options>p{color:#89987a;font-size:12px}.export-fields{background:#f5f7ef;border:1px solid #e4e9d9;border-radius:9px;margin-top:20px;padding:16px 18px}.export-fields b{color:#637858;font-size:12px;font-weight:500}.export-fields p{color:#91a080;margin:6px 0 13px;font-size:11px}.export-fields p:last-child{margin-bottom:0}.new-entry-hero{text-align:center;margin:0 0 30px;padding:4px 0 0}.big-entry{border-radius:15px;gap:14px;min-width:280px;min-height:74px;padding:20px 56px;font-size:22px;font-weight:600;box-shadow:0 7px 20px #31534219}.new-entry-hero p{color:#96a18b;margin:12px 0 0;font-size:11px}.records{margin-bottom:24px}.member-account-info{background:#f4f6ed;border-radius:9px;justify-content:space-between;align-items:center;gap:15px;margin-top:22px;padding:20px;display:flex}.member-account-info b{font-size:13px;font-weight:500}.member-account-info p{color:#93a083;margin:7px 0 0;font-size:11px}.accounts-table{margin-top:27px}.accounts-table h3{color:#768969;font-size:13px}.account-row{border-top:1px solid #edf0e6;justify-content:space-between;align-items:center;gap:12px;padding:17px 0;display:flex}.account-row b{font-size:12px;font-weight:500}.account-row small{color:#93a083;margin-top:6px;font-size:10px;display:block}.account-row>div:last-child{gap:17px;display:flex}.account-row>div:first-child{display:block}.auth-screen{background:#f2f4eb;justify-content:center;align-items:center;min-height:100vh;padding:35px 20px;display:flex;position:relative;overflow:hidden}.auth-decoration{pointer-events:none;border:1px solid #dfe6d2;border-radius:50%;width:720px;height:720px;position:absolute;top:-320px;right:-310px;box-shadow:0 0 0 65px #e7ecdc55,0 0 0 130px #e7ecdc33}.auth-card{background:#fffef9;border:1px solid #dfe6d4;border-radius:20px;width:465px;max-width:100%;margin:0;padding:38px 37px;position:relative;box-shadow:0 20px 80px #2d4a3510}.auth-brand{letter-spacing:3px;align-items:center;gap:12px;font-size:28px;font-weight:600;display:flex}.auth-brand small{letter-spacing:2px;color:#8d9c80;margin-top:5px;font-size:8px;display:block}.auth-symbol{color:#769266;background:#edf1e5;border-radius:50%;place-items:center;width:46px;height:46px;margin-top:33px;display:grid}.auth-card h1{margin-top:19px;margin-bottom:8px;font-size:23px}.auth-card>p{color:#8d9d80;margin:0 0 22px;font-size:12px}.auth-card label{color:#718663;margin-top:18px;font-size:12px;display:block}.auth-card input{color:#375330;background:#fff;border:1px solid #dce4cf;border-radius:8px;width:100%;margin-top:8px;padding:12px 13px;font-size:14px;display:block}.auth-card input::placeholder{color:#a6b29a;font-size:12px}.auth-card .primary.full{min-height:46px;margin-top:25px}.auth-note{color:#99a68b;margin-top:15px;font-size:10px;line-height:1.8}.auth-footer{letter-spacing:2px;text-align:center;color:#a7b398;margin-top:27px;font-size:10px}.auth-error{color:#a37751;background:#fcf0e2;border-radius:8px;margin:18px 0;padding:12px 14px;font-size:12px;line-height:1.7}.auth-card .textbutton.full{margin-top:16px}.page-heading>.primary{display:none}@media (width<=760px){.new-entry-hero{margin-bottom:25px;padding-top:3px}.big-entry{border-radius:16px;min-width:260px;min-height:78px;font-size:24px}.member-account-info{flex-direction:column;align-items:flex-start;padding:17px}.account-shortcut{font-size:10px}.header-right{gap:9px}.sync{display:none}.auth-screen{align-items:flex-start;min-height:100dvh;padding:24px 16px}.auth-card{border-radius:16px;margin-top:16px;padding:29px 25px}.auth-card h1{font-size:22px}.auth-symbol{margin-top:24px}.page-heading{margin-bottom:20px}.account-row .textbutton{font-size:10px}.account-row>div:last-child{gap:13px}}
