:root{--forest:#194c3e;--deep:#173e34;--green:#2a7660;--mint:#edf5ee;--lime:#d4e8b3;--ink:#253630;--muted:#87918b;--line:#e9ede8;--bg:#f5f7f4;--white:#fff;--orange:#dca16d;--red:#bc5c49;--shadow:0 8px 30px #1a3c2910;font-family:'DM Sans','Noto Sans SC','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:13px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.5}button,input,select,textarea,a{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid #4e9d80}button svg,a svg{flex-shrink:0}svg.icon{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}h1,h2,h3,p{margin:0}h1{font-size:26px;letter-spacing:.6px;font-weight:650}h2{font-size:15px;font-weight:600}h3{font-size:14px;font-weight:600}small{font-size:11px}button{transition:background .16s,transform .16s,box-shadow .16s}button:active{transform:translateY(1px)}.muted{color:var(--muted)}.money{font-family:'DM Sans','Noto Sans SC',sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.6px}.green{color:var(--green)}.red{color:var(--red)}.boot{margin:25vh auto;text-align:center;font-size:28px;color:var(--forest)}.boot span{display:block;font-size:14px;color:var(--muted);margin-top:14px}
.shell{min-height:100vh}.sidebar{width:224px;position:fixed;inset:0 auto 0 0;background:var(--deep);color:#c1d1ca;display:flex;flex-direction:column;padding:36px 20px 22px;z-index:30}.brand{display:flex;gap:12px;align-items:center;margin:0 12px 40px;color:#f7fcf8}.brand-mark{width:38px;height:40px;display:grid;place-items:center;color:#d4e8b3}.brand-mark svg{width:37px;height:37px;stroke-width:1.8}.brand-title{font-size:23px;letter-spacing:4px;font-weight:650;line-height:1.4}.brand small{display:block;font-size:9px;color:#8ba69a;letter-spacing:2.5px}.nav-caption{font-size:10px;color:#7c9b8e;letter-spacing:1.6px;margin:0 17px 12px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;padding:13px 17px;margin:5px 0;border-radius:7px;color:#b3c7bd;position:relative;font-weight:450}.nav-item:hover{background:#ffffff0a;color:white}.nav-item.active{color:#e4f4cc;background:#315448}.nav-item.active:after{content:'';position:absolute;right:15px;width:5px;height:5px;border-radius:50%;background:#d4e8b3}.nav-item svg{width:18px;height:18px}.nav-divider{height:1px;background:#ffffff10;margin:24px 16px}.side-bottom{margin-top:auto;padding-top:40px}.sidebar-note{padding:17px 15px;background:#ffffff06;border:1px solid #ffffff0b;border-radius:9px;margin-bottom:21px}.sidebar-note .sprout{color:#d4e8b3;margin-bottom:10px}.sidebar-note p{font-size:12px;color:#d7e2dc;line-height:1.9}.sidebar-note small{font-size:10px;color:#88a497}.side-footer{display:flex;align-items:center;gap:10px;padding:0 12px;color:#92ada0;font-size:11px}.side-footer .status-dot{background:#91b793}.workspace{margin-left:224px}.topbar{height:79px;border-bottom:1px solid var(--line);background:#ffffffcf;display:flex;align-items:center;justify-content:space-between;padding:0 36px;gap:16px}.breadcrumb{font-size:12px;display:flex;align-items:center;gap:13px;color:#9ba29d}.breadcrumb b{color:#44564c;font-weight:500}.top-actions{display:flex;align-items:center;gap:20px}.store-button{display:flex;align-items:center;gap:9px;font-size:12px}.store-button svg{width:16px;height:16px}.top-separator{height:18px;width:1px;background:var(--line)}.icon-button{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:7px;color:#7d8b82;flex-shrink:0}.icon-button:hover{background:#edf2ec;color:var(--forest)}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#efe6d6;font-size:12px;color:#73664f;border:3px solid white;box-shadow:0 0 0 1px #f1ede5}.mobile-toggle{display:none}.content{padding:31px 36px 24px;max-width:1640px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:6px;color:#6c8172;font-size:11px}.eyebrow .line{height:1px;width:18px;background:#a3b896}.subtitle{font-size:12px;color:var(--muted);margin-top:6px}.heading-actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;border-radius:7px;font-size:12px;font-weight:500;white-space:nowrap;line-height:1.7}.btn.primary{background:var(--forest);color:#fff;box-shadow:0 2px 3px #143a2910}.btn.primary:hover{background:#25614d}.btn.secondary{background:#fff;border:1px solid #dfe5df;color:#506052}.btn.secondary:hover{background:#f5f8f4}.btn.soft{background:#edf4ea;color:var(--forest)}.btn.danger{background:#fbefec;color:#a84433}.btn svg{width:16px;height:16px}.btn.small{padding:7px 11px;font-size:11px}.text-button{color:#4f765f;display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:4px 0}.text-button:hover{color:#194c3e;text-decoration:underline}.text-button svg{width:14px;height:14px}.demo-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#edf2e7;border:1px solid #e4eadb;color:#72816a;border-radius:7px;padding:9px 15px;margin-bottom:22px;font-size:11px}.demo-banner .banner-label{color:#4f6845;font-weight:500;display:flex;gap:8px;align-items:center}.demo-banner .banner-label svg{width:15px;height:15px}.demo-banner .banner-text{color:#87917d;font-weight:400;margin-left:6px}.demo-banner button{font-size:11px;color:#526a47;white-space:nowrap;display:flex;gap:5px;align-items:center}.demo-banner button svg{width:14px;height:14px}.period-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.segmented{display:flex;align-items:center;gap:3px;background:#eaf0e9;border-radius:7px;padding:4px}.segmented button{padding:6px 18px;color:#7b8a7d;border-radius:5px;font-size:12px;white-space:nowrap}.segmented button.active{background:#fff;color:#335641;box-shadow:0 1px 4px #1a3c2910}.period-right{display:flex;align-items:center;gap:13px}.period-picker{display:flex;align-items:center;background:white;border:1px solid #e2e7df;border-radius:7px;height:36px}.period-picker .icon-button{width:29px;height:29px}.period-picker .icon{width:15px;height:15px}.period-label{padding:0 12px;font-size:12px;display:flex;align-items:center;gap:9px}.period-label svg{color:#879080}.period-unit-note{font-size:10px;color:#98a093}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:22px}.metric{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 21px 17px;min-width:0;position:relative;overflow:hidden}.metric.featured{background:var(--forest);border-color:var(--forest);color:white}.metric.featured:after{content:'';position:absolute;width:150px;height:150px;border:1px solid #ffffff08;border-radius:50%;right:-70px;top:-55px;box-shadow:0 0 0 22px #ffffff03,0 0 0 45px #ffffff03;pointer-events:none}.metric-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7a887e;margin-bottom:14px}.metric.featured .metric-top{color:#d2ded5}.metric-top .metric-icon{width:28px;height:28px;border-radius:7px;background:#f4f7f1;display:grid;place-items:center;color:#8da18d}.metric-top .metric-icon svg{width:16px;height:16px}.metric.featured .metric-icon{background:#ffffff10;color:#d4e8b3}.metric-value{font-size:30px;font-weight:600;line-height:1.2;display:flex;align-items:baseline;gap:4px;white-space:nowrap}.metric-value .currency{font-size:18px;font-weight:400;margin-right:2px;opacity:.7}.metric-value .decimals{font-size:20px}.metric-bottom{font-size:10px;color:#98a193;margin-top:17px;display:flex;align-items:center;gap:5px}.metric-bottom b{font-weight:500;color:#5e9271}.metric.featured .metric-bottom{color:#afc2b5}.metric.featured .metric-bottom b{color:#cfe4b0}.metric-bottom svg{width:12px;height:12px}.chart-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);gap:21px;margin-bottom:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 10px;gap:10px}.panel-head .sub{font-size:10px;color:#98a095;margin-top:4px}.chart-tools{display:flex;align-items:center;gap:14px}.legend{display:flex;align-items:center;gap:17px;font-size:10px;color:#849083}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:7px;height:7px;border-radius:50%;display:inline-block}.chart{padding:8px 20px 12px 13px;position:relative}.chart svg{width:100%;height:240px;display:block;overflow:visible}.chart-text{font-family:'DM Sans','Noto Sans SC',sans-serif;font-size:10px;fill:#a2aaa0}.chart-dot{transition:opacity .2s;opacity:0}.chart-hit:hover .chart-dot{opacity:1}.chart-summary{display:flex;align-items:center;gap:17px;padding:0 24px 18px;font-size:10px;color:#9aa295}.chart-summary strong{font-size:11px;color:#607460;font-weight:500}.donut-body{display:flex;align-items:center;gap:23px;padding:13px 22px 19px;min-height:263px}.donut-wrap{position:relative;width:145px;height:145px;flex-shrink:0}.donut{width:145px;height:145px;transform:rotate(-90deg)}.donut-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.donut-center small{font-size:10px;color:#96a08f}.donut-center b{font-size:19px;font-weight:600;margin-top:3px}.donut-center span{font-size:10px;color:#a7afa0}.category-legend{flex:1;min-width:0}.category-item{display:flex;align-items:center;gap:7px;font-size:11px;color:#7c877a;margin:13px 0}.category-item i{width:6px;height:6px;flex-shrink:0;border-radius:2px}.category-item b{margin-left:auto;color:#53634f;font-family:'DM Sans',sans-serif;font-weight:500}.donut-foot{border-top:1px solid #f0f3ec;margin:0 22px;padding:13px 0;font-size:10px;color:#a1a795;display:flex;align-items:center;gap:6px}.donut-foot svg{width:13px;height:13px}.lower-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);gap:21px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:11px}th{color:#9aA293;font-weight:400;background:#fafbf9;padding:12px 18px;border-bottom:1px solid #eff2eb}td{padding:13px 18px;border-bottom:1px solid #f0f3ed;color:#83907f}tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable:hover{background:#fafcf8}.item-cell{display:flex;align-items:center;gap:11px;color:#4b5f4f;font-weight:500}.row-icon{display:inline-grid;place-items:center;width:31px;height:31px;background:#f0f5eb;color:#85a07c;border-radius:8px;flex-shrink:0}.row-icon.income{background:#edf5ee;color:#67947a}.row-icon.expense{background:#f7f1e9;color:#bc9871}.row-icon.investment{background:#edf1f6;color:#7b91ac}.row-icon svg{width:15px;height:15px}.item-cell small{display:block;color:#9aA592;font-size:10px;font-weight:400}.amount-cell{font-size:13px;color:#5a6752;text-align:right;font-weight:500}.amount-cell.income{color:#568067}.status-pill{display:inline-flex;align-items:center;gap:4px;border-radius:4px;padding:3px 7px;font-size:10px;line-height:1.6;white-space:nowrap;background:#f0f5eb;color:#779067}.status-pill.pending{background:#fbf2e7;color:#bf995a}.status-pill.none{background:#f1f2ee;color:#9aa291}.status-pill svg{width:11px;height:11px}.table-foot{padding:12px 21px;border-top:1px solid #f0f3ed;display:flex;justify-content:space-between;font-size:10px;color:#99a28f}.assistant-panel{padding-bottom:7px}.assistant-title{display:flex;align-items:center;gap:8px}.assistant-title svg{color:#789365;width:17px;height:17px}.assistant-item{margin:9px 22px 0;padding:15px 0;border-bottom:1px solid #eef1e9}.assistant-item:last-child{border-bottom:0}.assistant-line{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:11px}.assistant-line b{font-weight:500;color:#66795c}.assistant-line span{color:#9ba58e}.progress-track{height:5px;border-radius:5px;background:#eff3e9;margin:11px 0 8px;overflow:hidden}.progress-fill{height:100%;border-radius:5px;background:#9bb58c}.assistant-item p{font-size:10px;color:#a1aa95}.reminder{display:flex;gap:11px;align-items:flex-start}.reminder .reminder-icon{width:28px;height:28px;border-radius:7px;background:#faf2e5;color:#bd9b65;display:grid;place-items:center;flex-shrink:0}.reminder .reminder-icon svg{width:15px;height:15px}.reminder h3{font-size:11px;font-weight:500;color:#727f64;margin-bottom:3px}.reminder p{font-size:10px;line-height:1.8}.reminder button{font-size:10px;margin-top:5px}.page-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;color:#acb3a5;padding:22px 2px 0}.page-footer span{display:flex;align-items:center;gap:6px}.page-footer svg{width:12px;height:12px}.status-dot{width:5px;height:5px;background:#98ad8a;border-radius:50%;display:inline-block}.toolbar{display:flex;align-items:center;gap:10px;padding:17px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search{display:flex;align-items:center;border:1px solid #e3e9df;border-radius:6px;padding:0 10px;gap:8px;background:#fff;min-width:200px;flex:1;max-width:310px}.search svg{width:15px;height:15px;color:#96a18e}.search input{border:0;outline:none;width:100%;padding:9px 0;font-size:11px;background:transparent}.filter{border:1px solid #e3e9df;padding:9px 11px;border-radius:6px;background:#fff;color:#77856c;font-size:11px}.filter-count{margin-left:auto;font-size:11px;color:#939e88}.record-table{min-width:730px}.record-table th,.record-table td{padding:14px 20px}.empty{padding:55px 25px;text-align:center;color:#96a08e}.empty .empty-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#f1f5ed;color:#8da67e;margin:0 auto 16px}.empty .empty-icon svg{width:25px;height:25px}.empty h3{font-size:14px;color:#6d8060;margin-bottom:6px}.empty p{font-size:12px;margin-bottom:17px}.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid var(--line);color:#919e85;font-size:11px}.pagination>div{display:flex;align-items:center;gap:10px}.info-callout{display:flex;align-items:flex-start;gap:10px;padding:16px 19px;border:1px solid #e5ebde;border-radius:8px;background:#f0f5eb;color:#849775;font-size:12px;line-height:1.9;margin-bottom:22px}.info-callout svg{width:17px;height:17px;flex-shrink:0;margin-top:3px}.info-callout strong{font-weight:500;color:#657e53}.investment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px}.capital-summary{background:#194c3e;color:#fff;padding:28px;border-radius:10px;position:relative;overflow:hidden}.capital-summary .label{font-size:12px;color:#b4c9ba}.capital-summary .big{font-size:38px;font-weight:500;margin:10px 0}.capital-summary .capital-detail{display:flex;gap:30px;margin-top:20px;padding-top:18px;border-top:1px solid #ffffff15;font-size:11px;color:#aec5b6}.capital-detail b{display:block;color:#e6eee4;font-size:17px;margin-top:5px;font-weight:500}.capital-description{padding:26px;background:#fff;border:1px solid var(--line);border-radius:10px}.capital-description p{color:#93a088;font-size:12px;line-height:2;margin-top:12px}.capital-description .mini-stats{display:flex;gap:30px;margin-top:20px}.mini-stats small{display:block;color:#94a088}.mini-stats b{font-size:22px;font-weight:500;color:#59734c}.invoice-tabs{display:flex;gap:23px;padding:0 22px;border-bottom:1px solid var(--line)}.invoice-tabs button{padding:15px 1px;font-size:12px;color:#98a28c;border-bottom:2px solid transparent}.invoice-tabs button.active{color:#50723f;border-bottom-color:#50723f}.invoice-tabs .count{margin-left:5px;font-size:10px;border-radius:10px;background:#f1f5eb;padding:1px 5px}.report-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px}.report-table{min-width:500px}.report-total{background:#f2f6ee;font-weight:600}.category-report{padding:6px 23px 20px}.category-report-row{padding:14px 0;border-bottom:1px solid #edf2e7}.category-report-row:last-child{border:0}.category-report-label{display:flex;justify-content:space-between;gap:10px;font-size:12px}.category-report-label span{display:flex;gap:7px;align-items:center;color:#7d8d6e}.category-report-label i{width:7px;height:7px;border-radius:2px}.category-report-label b{font-weight:500}.category-report-row .progress-track{height:6px;margin-bottom:0}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px;align-items:start}.settings-body{padding:18px 24px 24px}.form-field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px;min-width:0}.form-field label{font-size:12px;color:#6c7e60;font-weight:500}.form-field label span{color:#a2ad96;font-size:10px;font-weight:400}.form-field input,.form-field select,.form-field textarea{border:1px solid #dfe7d8;background:#fff;border-radius:6px;padding:10px 12px;width:100%;outline:none;min-width:0;color:#425b35;font-size:13px}.form-field textarea{resize:vertical;min-height:75px;line-height:1.8}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#8fa781;box-shadow:0 0 0 3px #8fa78112}.form-field small{color:#a0ac93;font-size:10px;line-height:1.8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-item{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.settings-item:first-child{padding-top:0}.settings-item:last-child{border-bottom:0;padding-bottom:0}.settings-item h3{font-size:12px;color:#617854;margin-bottom:5px}.settings-item p{font-size:11px;color:#9aa88a;line-height:1.8}.settings-item .btn{flex-shrink:0}.settings-note{margin-top:21px;font-size:11px;line-height:1.9;color:#9aa88a}.tag{display:inline-block;font-size:10px;background:#f0f4e9;color:#8ba173;border-radius:4px;padding:2px 6px;margin-left:7px}.settings-full{grid-column:1/-1}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:15px 24px 26px}.guide-grid h3{font-size:12px;color:#6f865c;margin-bottom:9px}.guide-grid p{font-size:11px;color:#9eaa8f;line-height:2}
dialog{border:0;border-radius:13px;width:min(560px,calc(100vw - 32px));padding:0;color:var(--ink);box-shadow:0 25px 100px #143d2940;max-height:calc(100dvh - 48px);background:#fff}dialog::backdrop{background:#173e3459;backdrop-filter:blur(3px)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 25px 16px;border-bottom:1px solid var(--line)}.modal-header h2{font-size:18px;font-weight:600}.modal-header p{color:#9aa88b;font-size:11px;margin-top:5px}.modal-body{padding:21px 25px 24px}.modal-footer{padding:16px 25px;border-top:1px solid var(--line);background:#fafcf8;display:flex;justify-content:flex-end;gap:10px;align-items:center}.modal-footer .delete{margin-right:auto;color:#bb7869;font-size:11px;display:flex;gap:5px;align-items:center}.modal-footer .delete svg{width:14px;height:14px}.entry-tabs{display:flex;gap:7px;margin-bottom:22px;background:#f0f4ec;border-radius:7px;padding:4px}.entry-tabs button{flex:1;border-radius:5px;padding:8px;color:#97a489;font-size:12px}.entry-tabs button.active{background:#fff;color:#4a7037;box-shadow:0 1px 4px #1e40200a}.amount-input{position:relative}.amount-input span{position:absolute;left:14px;top:9px;font-size:22px;color:#90a480}.amount-input input{font-size:29px!important;font-family:'DM Sans',sans-serif;padding:9px 14px 9px 39px!important;font-weight:500}.invoice-options{display:flex;gap:8px}.invoice-options label{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;padding:9px 5px;border:1px solid #e5eadf;border-radius:6px;cursor:pointer}.invoice-options label:has(input:checked){border-color:#90ab7f;background:#f2f7ec;color:#5b7a47}.invoice-options input{width:12px;height:12px;margin:0;accent-color:#5b7a47}.upload-box{border:1px dashed #d6e0cc;background:#fafcf7;border-radius:6px;padding:13px;display:flex;align-items:center;gap:10px;cursor:pointer;color:#8fa27e;font-size:11px}.upload-box svg{width:21px;height:21px;flex-shrink:0}.upload-box span{display:block;overflow:hidden;text-overflow:ellipsis}.upload-box small{font-size:10px;color:#a8b39a}.upload-box input{display:none}.attachment-preview{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;padding-top:8px;color:#8ca076}.attachment-preview button{text-decoration:underline;white-space:nowrap}.error-message{background:#fcf0eb;color:#bd7562;border:1px solid #f0ddd5;font-size:12px;line-height:1.8;padding:9px 12px;border-radius:6px;margin-bottom:15px}.confirm-text{font-size:13px;line-height:2;color:#819571}.confirm-text strong{color:#526e42}.receipt-view{width:100%;border-radius:6px;display:block}.receipt-pdf{width:100%;height:65vh;border:1px solid var(--line)}.toasts{position:fixed;bottom:25px;left:calc(50% + 112px);transform:translateX(-50%);z-index:90;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{padding:12px 20px;background:#244d3c;color:#f1f7eb;border-radius:8px;box-shadow:var(--shadow);font-size:12px;animation:toast-in .2s ease-out;display:flex;align-items:center;gap:8px;max-width:90vw}.toast.error{background:#955d4c}.toast svg{width:16px;height:16px}.hidden{display:none!important}.chart-tooltip{position:absolute;pointer-events:none;background:#244d3c;color:white;border-radius:6px;font-size:10px;padding:8px 11px;box-shadow:var(--shadow);z-index:4;white-space:nowrap}.chart-tooltip span{display:block;color:#d5e2cc}.help-list{color:#829771;font-size:12px;line-height:2}.help-list p{margin-bottom:15px}.help-list strong{color:#526f3d}.mode-label{font-size:10px;color:#aab39f;margin-left:3px}.mobile-scrim{display:none}.tiny-note{color:#9aaa8d;font-size:10px}.zero-line{stroke:#a6b998;stroke-width:1;stroke-dasharray:4 4}
@keyframes toast-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1450px){.content{padding:36px 44px}.topbar{padding:0 44px}.metric{padding:24px}.chart svg{height:270px}.donut-body{min-height:293px;gap:30px}.donut-wrap,.donut{width:165px;height:165px}.metric-value{font-size:34px}.panel-head{padding-top:23px}.donut-center b{font-size:22px}}
@media(max-width:1200px){.sidebar{width:200px;padding-left:15px;padding-right:15px}.workspace{margin-left:200px}.content{padding:26px 25px}.topbar{padding:0 25px}.metrics{gap:12px}.metric{padding:17px}.metric-value{font-size:25px}.metric-value .decimals{font-size:16px}.chart-grid,.lower-grid{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:16px}.donut-body{gap:15px;padding:18px 16px}.donut-wrap,.donut{width:120px;height:120px}.donut-center b{font-size:17px}.category-item{font-size:10px}.panel-head{padding-left:18px;padding-right:18px}th,td{padding:12px}.toasts{left:calc(50% + 100px)}}
@media(max-width:1050px){.sidebar{width:180px;padding-left:12px;padding-right:12px}.workspace{margin-left:180px}.brand{gap:7px;margin-left:8px}.brand-title{font-size:21px}.brand small{font-size:8px}.brand-mark svg{width:31px}.nav-item{font-size:12px;gap:10px;padding-left:13px}.content{padding:24px 22px}.chart-grid,.lower-grid{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}.donut-body{flex-direction:column;gap:0;padding-top:9px;min-height:250px}.donut-wrap,.donut{width:128px;height:128px}.category-legend{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:3px 13px}.category-item{margin:3px 0}.chart svg{height:225px}.donut-foot{padding:9px 0}.metric-top{font-size:11px}.metric-top .metric-icon{width:24px;height:24px}.metric-value{font-size:22px}.metric-value .currency{font-size:14px}.metric-value .decimals{font-size:14px}.metric-bottom{font-size:9px}.topbar{height:70px}.metrics{gap:10px}.metric{padding:14px}.demo-banner .banner-text{display:none}.report-grid{grid-template-columns:1fr}.toasts{left:calc(50% + 90px)}.lower-grid .recent-table th:nth-child(2),.lower-grid .recent-table td:nth-child(2){display:none}}
@media(max-width:850px){.sidebar{width:200px;transform:translateX(-100%);transition:transform .22s}.shell.nav-open .sidebar{transform:translateX(0)}.shell.nav-open .mobile-scrim{display:block;position:fixed;inset:0;background:#183c3055;z-index:29}.workspace{margin-left:0}.mobile-toggle{display:inline-grid}.breadcrumb{gap:8px}.topbar{padding:0 20px;height:65px}.top-actions{gap:12px}.toasts{left:50%}.content{padding:24px}.chart-grid,.lower-grid{grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr)}.chart-summary{gap:10px;font-size:9px}.metric-value{font-size:25px}.metric{padding:17px}.period-unit-note{display:none}.heading{margin-bottom:21px}h1{font-size:24px}}
@media(max-width:650px){.topbar{padding:0 15px;height:59px}.breadcrumb>span{display:none}.top-actions{gap:8px}.store-button{font-size:11px}.top-separator{display:none}.top-actions .help-button{display:none}.content{padding:23px 16px}.heading{align-items:flex-start;margin-bottom:19px;gap:10px}.heading-actions{gap:7px;margin-top:14px}.heading-actions>.btn.secondary{font-size:0;width:35px;padding:9px}.heading-actions>.btn.secondary svg{width:16px;height:16px}.heading-actions .btn.primary{padding:9px 12px;font-size:11px}.eyebrow{font-size:10px}h1{font-size:22px}.subtitle{font-size:10px;max-width:220px}.demo-banner{padding:8px 11px;margin-bottom:19px;font-size:10px}.demo-banner button{font-size:10px}.period-bar{gap:7px;margin-bottom:15px}.segmented{padding:3px;gap:1px}.segmented button{padding:5px 11px;font-size:11px}.period-picker{height:33px}.period-label{font-size:10px;padding:0 4px;gap:5px}.period-label svg{display:none}.period-picker .icon-button{width:24px}.period-right{gap:0}.metrics{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:17px}.metric{padding:16px}.metric-top{margin-bottom:11px}.metric-value{font-size:27px}.metric-bottom{margin-top:13px;font-size:9px}.metric-value .decimals{font-size:17px}.chart-grid,.lower-grid{grid-template-columns:1fr;gap:17px;margin-bottom:17px}.panel-head{padding:19px 18px 10px}.chart svg{height:215px}.chart-summary{font-size:10px}.donut-body{flex-direction:row;min-height:190px;justify-content:center;gap:35px;padding:15px 26px}.donut-wrap,.donut{width:142px;height:142px}.category-legend{display:block;max-width:155px}.category-item{font-size:11px;margin:10px 0}.donut-center b{font-size:20px}.donut-foot{padding:12px 0}.recent-table th,.recent-table td{padding:12px 15px}.recent-table th:nth-child(2),.recent-table td:nth-child(2){display:none}.item-cell{gap:8px}.item-cell>div{max-width:150px;overflow:hidden;text-overflow:ellipsis}.page-footer{font-size:9px;padding-top:6px;flex-wrap:wrap;gap:6px}.page-footer>span:last-child{margin-left:auto}.assistant-item{padding:16px 0}.assistant-line{font-size:12px}.assistant-item p{font-size:11px}.reminder h3{font-size:12px}.reminder p{font-size:11px}.investment-grid,.settings-grid{grid-template-columns:1fr;gap:17px}.settings-full{grid-column:auto}.guide-grid{grid-template-columns:1fr;gap:18px}.capital-summary .big{font-size:34px}.toolbar{padding:13px;gap:8px}.search{max-width:none;flex-basis:100%}.filter{font-size:10px;max-width:140px}.filter-count{font-size:10px}.invoice-tabs{gap:16px;padding:0 16px}.invoice-tabs button{font-size:11px}.modal-body{padding:20px}.modal-header{padding:20px}.modal-footer{padding:14px 20px}.form-row{gap:12px}.form-field input,.form-field select{font-size:12px}.invoice-options label{font-size:10px}.report-grid{gap:17px}.heading-actions .btn svg{width:14px}.settings-item .btn{padding:8px 10px;font-size:10px}.info-callout{font-size:11px}.top-actions .avatar{width:29px;height:29px}.settings-body{padding:17px 20px 22px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* Keep secondary labels readable on both phones and large displays. */
:root{--muted:#788575}.metric-bottom,.panel-head .sub,.chart-summary,.donut-center small,.category-item,.table-foot,.page-footer,.tiny-note{color:#7e8975}.chart-text{fill:#83907b}.metric.featured .metric-bottom{color:#bdcdbf}.assistant-item p,.reminder p,.settings-item p,.settings-note,.guide-grid p,.form-field small{color:#7f8e72}.donut-foot{color:#8c977f}.filter-count{color:#7e8e72}.chart-grid .legend{gap:12px;font-size:9px}
.templates-intro{background:#eaf1e4;border:1px solid #e0e9d9;border-radius:10px;display:flex;align-items:center;justify-content:space-between;padding:24px 27px;gap:20px;margin-bottom:19px}.template-kicker{color:#789068;font-size:10px;letter-spacing:1px}.templates-intro h2{font-size:22px;color:#355d42;margin:7px 0}.templates-intro p{font-size:12px;color:#7b8d6d;line-height:1.9}.template-intro-icon{background:#dce8ce;color:#7d9e66;border-radius:50%;width:64px;height:64px;display:grid;place-items:center;flex-shrink:0}.template-intro-icon svg{width:30px;height:30px}.template-stats{display:grid;grid-template-columns:1fr 1.25fr 1.3fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:22px}.template-stats>div{background:white;padding:18px 23px}.template-stats span{display:block;font-size:11px;color:#809076;margin-bottom:7px}.template-stats strong{font-size:24px;font-weight:550}.template-stats small{font-size:11px;font-weight:400;color:#849479}.template-workbar{display:flex;align-items:center;gap:23px;margin-bottom:14px;flex-wrap:wrap}.template-month{display:flex;align-items:center;gap:9px}.template-month>label{font-size:11px;color:#75876b}.template-month input{font:inherit;font-size:12px;color:#536f45;border:1px solid #e0e7d9;border-radius:6px;padding:8px 10px;background:white;min-width:0}.template-month .period-picker input{border:0;width:146px;padding:4px}.template-workbar>.filter{margin-left:auto}.template-notice{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.9;color:#7e8c73;margin:0 0 21px}.template-notice svg{width:16px;height:16px;flex-shrink:0;margin-top:2px}.template-notice strong{font-weight:500;color:#567046}.template-batch{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:13px 17px;background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:16px;font-size:11px;color:#788b6b}.template-batch label{display:flex;align-items:center;gap:8px;cursor:pointer}.template-batch input,.template-select input,.save-template-option input{accent-color:#2a7660;width:15px;height:15px;margin:0;cursor:pointer}.template-batch>span{margin-left:auto}.template-batch b{font-weight:500;color:#4f6c3e}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.template-card{padding:21px;background:#fff;border:1px solid var(--line);border-radius:10px;min-width:0;position:relative}.template-card.selected{border-color:#6f9b6b;box-shadow:0 0 0 1px #6f9b6b inset}.template-card.paused{background:#f9fbf6}.template-card-top{display:flex;align-items:center;gap:10px}.template-card-top .row-icon{width:39px;height:39px;background:#eef4e7;color:#789867}.template-card-top .row-icon svg{width:20px;height:20px}.template-card h3{font-size:14px;overflow-wrap:anywhere;color:#3b5735}.template-card-top>div>span{font-size:10px;color:#8a9b7d}.template-more{margin-left:auto;position:relative;align-self:flex-start;flex-shrink:0}.template-more summary{list-style:none;cursor:pointer;padding:2px 4px;color:#8da17f}.template-more summary::-webkit-details-marker{display:none}.template-more[open]{z-index:8}.template-more>div{position:absolute;right:0;top:30px;min-width:135px;background:white;border:1px solid #e0e8d7;box-shadow:var(--shadow);border-radius:8px;padding:5px}.template-more button{width:100%;display:flex;align-items:center;gap:9px;padding:9px;border-radius:4px;font-size:11px;text-align:left;white-space:nowrap;color:#5a744a}.template-more button:hover{background:#f0f5e9}.template-more button svg{width:14px;height:14px}.template-card-amount{font-family:Arial,'Microsoft YaHei',sans-serif;font-size:29px;font-weight:500;margin:21px 0 18px;color:#355d42}.template-card-amount small{font-size:11px;font-weight:400;color:#95a288;margin-left:7px}.template-card-meta{display:flex;align-items:center;gap:10px 15px;flex-wrap:wrap;padding-bottom:16px;font-size:10px;color:#819371}.template-card-meta>span{display:flex;align-items:center;gap:5px;min-width:0;overflow-wrap:anywhere}.template-card-meta svg{width:13px;height:13px;flex-shrink:0}.template-card-status{font-size:10px;display:flex;align-items:center;gap:6px;padding:10px 0 15px;color:#90a181;border-top:1px solid #edf1e6;line-height:1.8}.template-card-status svg{width:13px;height:13px;flex-shrink:0}.recorded .template-card-status{color:#69885b}.template-card-actions{display:flex;align-items:center;gap:8px}.template-card-actions .btn{flex:1;padding:9px 8px;font-size:11px}.template-card-actions .btn svg{width:14px;height:14px}.template-select{display:flex;align-items:center;justify-content:center;padding:7px 4px 7px 0;cursor:pointer}.template-footer-note{display:flex;align-items:flex-start;gap:7px;color:#93a184;font-size:10px;line-height:1.8;margin-top:19px}.template-footer-note svg{width:14px;height:14px;flex-shrink:0;margin-top:2px}.template-presets{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.template-preset-tabs{display:flex;gap:6px;margin-bottom:21px;background:#f1f5ed;padding:4px;border-radius:6px}.template-preset-tabs button{flex:1;font-size:11px;color:#8a9e78;padding:8px 4px;border-radius:4px}.template-preset-tabs button.active{background:#fff;color:#577a40;box-shadow:0 1px 3px #2643180c}.template-batch-review{margin-bottom:20px}.template-batch-review>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px;color:#718665}.template-batch-review strong{font-weight:500;white-space:nowrap}.template-batch-review .total{font-weight:600;color:#355d42;font-size:14px;padding:15px 0}.entry-template-picker{background:#f2f6ec;border:1px solid #e4ebda;padding:13px;border-radius:7px;margin-bottom:18px}.entry-template-picker label{display:flex;align-items:center;gap:7px;color:#6d8658;font-size:11px;margin-bottom:7px}.entry-template-picker label svg{width:14px;height:14px}.entry-template-picker select{width:100%;border:1px solid #dfe8d5;border-radius:5px;padding:8px;background:white;color:#53783d;font-size:12px}.entry-template-note{background:#f7f9f2;display:flex;gap:8px;color:#74915f;font-size:11px;padding:10px 12px;border-radius:6px;margin-bottom:16px;line-height:1.8}.entry-template-note svg{width:15px;height:15px;flex-shrink:0;margin-top:3px}.entry-template-note small{font-size:10px;color:#95a485}.save-template-option{display:flex;gap:8px;align-items:center;margin-top:18px;font-size:11px;color:#6d8957;cursor:pointer}.save-template-option svg{width:14px;height:14px}.template-stats .money{font-family:Arial,'Microsoft YaHei',sans-serif}
@media(max-width:1200px){.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-workbar{gap:12px}.template-stats>div{padding:16px}.template-stats strong{font-size:21px}}
@media(max-width:650px){.templates-intro{padding:20px;gap:12px}.templates-intro h2{font-size:18px}.templates-intro p{font-size:11px}.template-intro-icon{width:44px;height:44px}.template-intro-icon svg{width:23px;height:23px}.template-stats{grid-template-columns:1fr 1fr}.template-stats>div:last-child{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.template-stats>div:last-child>span{margin:0}.template-stats>div{padding:15px}.template-stats strong{font-size:21px}.template-grid{grid-template-columns:1fr;gap:14px}.template-card{padding:21px}.template-workbar{gap:12px 15px}.template-month{justify-content:space-between;width:100%}.template-month input{min-width:175px}.template-month .period-picker input{min-width:0;width:125px}.template-workbar>.filter{margin-left:0;max-width:none;width:100%}.template-batch{gap:10px;padding:12px;flex-wrap:wrap}.template-batch>span{font-size:10px}.template-batch>.btn{width:100%}.template-card h3{font-size:15px}.template-card-meta{font-size:11px}.template-card-actions .btn{font-size:12px;padding:10px}.template-batch-review>div{font-size:12px}.entry-template-picker select{font-size:12px}}
/* Bring the recurring actions into view sooner, with compact supporting copy. */
.templates-intro{padding:14px 20px;margin-bottom:14px}.template-kicker{display:none}.templates-intro h2{font-size:16px;margin:0 0 4px}.templates-intro p{font-size:11px}.template-intro-icon{width:43px;height:43px}.template-intro-icon svg{width:23px;height:23px}.template-stats{margin-bottom:16px}.template-stats>div{padding:12px 20px}.template-stats strong{font-size:22px}.template-stats span{margin-bottom:3px}.template-notice{margin-bottom:13px}.template-batch{padding:10px 14px;margin-bottom:14px}.template-card-status{min-height:44px}.template-workbar{gap:12px}.content:has(.templates-intro){padding-top:24px}.content:has(.templates-intro) .heading{margin-bottom:17px}.content:has(.templates-intro) .demo-banner{margin-bottom:15px}
@media(max-width:650px){.templates-intro{display:none}.template-stats>div{padding:11px 13px}.template-stats strong{font-size:20px}.template-stats span{font-size:10px}.template-workbar{display:grid;grid-template-columns:1fr 1fr;gap:10px}.template-month{flex-direction:column;align-items:flex-start;gap:5px}.template-month input{min-width:0;width:100%;height:35px;padding:5px}.template-month .period-picker{width:100%}.template-month .period-picker input{width:100%;min-width:0}.template-workbar>.filter{grid-column:1/-1;font-size:10px;padding:6px 10px}.template-notice{font-size:10px}.template-batch{padding:10px 12px}}
@media(max-width:650px){.template-stats>div:last-child{display:none}.template-batch{flex-wrap:nowrap;gap:8px}.template-batch>span{display:none}.template-batch>.btn{width:auto;margin-left:auto;font-size:10px;padding:8px 10px}.template-batch label{font-size:10px}}
.dictionary-section{margin-bottom:28px}.dictionary-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.dictionary-heading h2{font-size:18px;color:#355d42}.dictionary-heading p{font-size:12px;color:#7c8c73;margin-top:5px}.dictionary-layout{display:grid;grid-template-columns:188px minmax(0,1fr);gap:18px;align-items:start}.dictionary-nav{display:flex;flex-direction:column;gap:7px;padding:8px;background:#edf2e7;border:1px solid #e2e9db;border-radius:10px}.dictionary-nav button{display:flex;align-items:center;gap:10px;font-size:12px;color:#75856c;padding:13px 10px;border-radius:7px;text-align:left;white-space:nowrap}.dictionary-nav button.active{background:white;color:#28634e;box-shadow:0 2px 6px #1e42200a}.dictionary-nav svg{width:17px;height:17px}.dictionary-nav small{margin-left:auto;background:#e5eddd;border-radius:5px;padding:1px 5px;font-family:Arial,sans-serif;font-size:10px;color:#6c815e}.dictionary-panel{overflow:hidden;min-width:0}.dictionary-panel-head{padding:22px 24px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dictionary-panel-head h3{font-size:15px;color:#36543d}.dictionary-panel-head p{color:#7e8c74;font-size:11px;margin-top:5px}.dictionary-tools{display:flex;gap:10px;padding:0 24px 16px;border-bottom:1px solid var(--line)}.dictionary-tools .search{flex:1;max-width:none}.dictionary-tools .filter{min-width:105px}.dictionary-list{max-height:540px;overflow:auto;padding:0 24px}.dictionary-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf1e7}.dictionary-row:last-child{border-bottom:0}.dictionary-row-info{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.dictionary-row-info>div{min-width:0}.dictionary-row-info strong{font-size:12px;font-weight:500;color:#405b3c;overflow-wrap:anywhere}.dictionary-row-info small{display:block;color:#8b987d;font-size:10px;margin-top:4px}.dictionary-order{font-family:Arial,sans-serif;color:#a0ae94;font-size:11px;flex-shrink:0;width:19px}.dictionary-status{color:#5d8953;font-size:9px;background:#edf5e6;border-radius:5px;padding:3px 6px;flex-shrink:0}.dictionary-status.paused{background:#f1f1eb;color:#93978b}.dictionary-row.inactive strong{color:#89917f}.dictionary-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.dictionary-actions .icon-button{width:28px;height:28px;color:#7b906b}.dictionary-actions .icon{width:14px;height:14px}.dictionary-actions .text-button{font-size:10px;margin:0 5px}.dictionary-actions button:disabled{opacity:.25;cursor:not-allowed}.rotate-up,.rotate-down{transform:rotate(90deg)}.dictionary-note{display:flex;align-items:flex-start;gap:8px;padding:15px 24px;background:#fafcf7;border-top:1px solid var(--line);font-size:10px;line-height:1.9;color:#7b8a70}.dictionary-note svg{width:15px;height:15px;flex-shrink:0;margin-top:2px}.dictionary-scope{display:flex;align-items:flex-start;gap:7px;font-size:10px;color:#849379;line-height:1.9;margin-top:14px}.dictionary-scope svg{width:14px;height:14px;flex-shrink:0;margin-top:3px}.dictionary-empty{text-align:center;padding:40px 18px;color:#809175}.dictionary-empty>svg{width:28px;height:28px;margin-bottom:12px;color:#a1b391}.dictionary-empty h3{font-size:14px;margin-bottom:8px}.dictionary-empty p{font-size:11px;line-height:1.8}.form-field .party-picker{margin-bottom:7px;background:#f6f9f1;color:#688458;font-size:11px}.capital-detail{flex-wrap:wrap;gap:15px}.capital-detail>span{overflow-wrap:anywhere;min-width:120px}.category-report-label>span{overflow-wrap:anywhere}.category-legend .category-item>span{overflow-wrap:anywhere;min-width:0}
@media(max-width:1050px){.dictionary-layout{grid-template-columns:160px minmax(0,1fr);gap:12px}.dictionary-nav button{padding:12px 7px;gap:7px}.dictionary-row-info{gap:8px}.dictionary-actions{gap:1px}.dictionary-row{flex-wrap:wrap}.dictionary-row-info{min-width:210px}.dictionary-actions{margin-left:auto}}
@media(max-width:650px){.dictionary-heading{margin-bottom:13px}.dictionary-heading h2{font-size:16px}.dictionary-heading p{font-size:10px}.dictionary-layout{grid-template-columns:1fr;gap:13px}.dictionary-nav{flex-direction:row;flex-wrap:wrap;padding:6px;gap:4px}.dictionary-nav button{font-size:11px;padding:9px 10px;gap:6px;flex:1 0 auto}.dictionary-nav small{font-size:9px}.dictionary-nav svg{width:14px;height:14px}.dictionary-panel-head{padding:18px 16px 14px}.dictionary-panel-head p{font-size:10px}.dictionary-panel-head .btn{font-size:11px;padding:8px 12px}.dictionary-tools{padding:0 16px 12px;gap:8px}.dictionary-tools .search{flex-basis:0;min-width:0}.dictionary-tools .filter{min-width:90px;max-width:100px}.dictionary-list{padding:0 16px;max-height:460px}.dictionary-row{gap:7px;padding:12px 0;align-items:flex-start}.dictionary-row-info{flex-basis:100%;min-width:0}.dictionary-row-info strong{font-size:12px}.dictionary-status{margin-left:auto}.dictionary-actions .icon-button{width:32px;height:30px}.dictionary-actions .text-button{padding:7px;font-size:11px}.dictionary-note{padding:13px 16px}.dictionary-order{width:16px}.dictionary-section{margin-bottom:22px}.dictionary-scope{font-size:9px}.dictionary-heading .tag{font-size:9px;white-space:nowrap}}
