@charset "UTF-8";
button.import-zone{width:100%;font-family:inherit}
:root{--bg:#f7f7f7;--paper:#fff;--ink:#373737;--muted:#8d8d8d;--green:#545454;--mint:#f1f1f1;--line:#ebebeb;--orange:#8e8e8e;--shadow:0 12px 48px #37373706;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #b2b2b2;outline-offset:3px}a{color:inherit;text-decoration:none}button svg{pointer-events:none}svg{width:22px;height:22px;vertical-align:middle}button{border:0;background:none}h1,h2,p{margin:0}h2{font-size:17px;font-weight:600;letter-spacing:.03em}[hidden]{display:none!important}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:#fcfcfc;border-right:1px solid var(--line);padding:45px 25px 24px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:13px;align-items:center;font-size:27px;letter-spacing:3px;font-weight:650}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:16px 16px 16px 4px;background:var(--green);color:#fff;font-family:serif;font-size:33px;transform:rotate(-4deg)}.brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:400;color:var(--muted);margin-top:6px}.navigation{margin-top:60px;display:grid;gap:12px}.nav-item{display:flex;align-items:center;gap:14px;text-align:left;width:100%;padding:15px 18px;border-radius:11px;font-size:14px;color:#868686;transition:.2s}.nav-item svg{width:20px}.nav-item:hover{background:#f2f2f2}.nav-item.active{color:var(--green);background:#efefef;font-weight:600}.sidebar-note{margin-top:auto;padding:24px 12px;color:var(--muted)}.sidebar-note svg{display:block;color:#999999;margin-bottom:13px}.sidebar-note strong{font-size:12px;font-weight:500;color:#757575}.sidebar-note p{font-size:11px;line-height:1.9;margin-top:9px}.sidebar-footer{display:flex;align-items:center;gap:8px;font-size:10px;color:#9d9d9d;border-top:1px solid var(--line);padding-top:20px}.sidebar-footer>span:last-child{margin-left:auto}.status-dot,.mini-dot{display:inline-block;background:#848484;width:6px;height:6px;border-radius:50%}.mini-dot{margin-right:9px}main{margin-left:236px;max-width:1640px;padding:42px 48px 24px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#929292;margin-bottom:11px}h1{font-size:27px;font-weight:550;letter-spacing:1px}h1>span{color:#8d8d8d}.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:inline-grid;place-items:center;background:#ffffff70;flex-shrink:0}.icon-button.small{width:30px;height:30px}.icon-button.small svg{width:17px}.section-title{display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:1px;margin-bottom:18px}.month-picker{display:flex;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 11px;font-size:11px}.month-picker svg{width:15px;height:15px;color:var(--muted)}.month-picker input{border:0;color:#707070;background:transparent;font-size:12px;max-width:130px}.overview-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:20px;margin-bottom:24px}.balance-card{position:relative;overflow:hidden;background:#515151;color:#fdfdfd;border-radius:18px;padding:25px 28px;min-height:190px}.card-top{display:flex;align-items:center;gap:12px;font-size:12px;position:relative;z-index:1}.soft-badge{font-size:9px;letter-spacing:1px;border:1px solid #ababab4d;border-radius:5px;padding:3px 7px;color:#c9c9c9}.hero-amount{display:flex;align-items:baseline;gap:10px;margin-top:21px;position:relative;z-index:1;font-variant-numeric:tabular-nums}.hero-amount>span{font-size:23px;color:#c8c8c8}.hero-amount strong{font-size:40px;font-weight:450;letter-spacing:-1px}.balance-bottom{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#c2c2c2;margin-top:21px;position:relative;z-index:1}.balance-bottom svg{width:18px}.card-orbit{position:absolute;width:190px;height:190px;border:1px solid #ffffff15;border-radius:50%;right:-55px;top:25px}.orbit-two{width:250px;height:250px;right:-85px;top:-5px}.summary-card{border:1px solid var(--line);background:#ffffffa0;border-radius:18px;padding:22px 24px}.summary-icon{display:grid;place-items:center;background:#f1f1f1;color:#919191;width:32px;height:32px;border-radius:10px;float:right}.summary-icon svg{width:17px}.income-icon{background:#f2f2f2;color:#929292}.muted{color:var(--muted);font-size:12px}.summary-card>.muted{margin-top:10px;font-size:12px}.summary-value{margin-top:23px;font-size:17px;white-space:nowrap;font-variant-numeric:tabular-nums}.summary-value strong{font-size:26px;font-weight:500;letter-spacing:-.5px}.summary-foot{font-size:10px;color:#a7a7a7;margin-top:24px}.voice-card{position:relative;display:flex;align-items:center;justify-content:space-between;padding:29px 39px;background:#efefef;border:1px solid #e6e6e6;border-radius:18px;overflow:hidden;margin-bottom:28px}.voice-copy{position:relative;z-index:2}.voice-copy .eyebrow{font-size:9px;letter-spacing:2px;color:#8e8e8e}.voice-copy h2{font-size:24px;font-weight:500;letter-spacing:2px}.voice-copy p{color:#9b9b9b;font-size:11px;margin-top:13px}.text-link{font-size:11px;color:#888888;padding:0;line-height:1.8}.voice-copy .text-link{margin-top:15px}.voice-copy .text-link span{margin-left:8px}.voice-button{position:relative;z-index:2;border-radius:50%;width:106px;height:106px;background:#fefefe;box-shadow:0 0 0 10px #ffffff40,0 0 0 20px #ffffff20;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;color:#5d5d5d;font-size:11px;margin-right:20px}.voice-button svg{width:30px;height:30px}.voice-button:hover{transform:scale(1.03)}.voice-wave{position:absolute;right:185px;top:50%;display:flex;align-items:center;gap:7px;transform:translateY(-50%);opacity:.35}.voice-wave i{height:18px;width:3px;background:#afafaf;border-radius:3px}.voice-wave i:nth-child(2n){height:42px}.voice-wave i:nth-child(3n){height:65px}.voice-wave i:nth-child(4n){height:85px}.dashboard-bottom{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;margin-bottom:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow);min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:10px}.panel-heading h2{font-size:14px}.panel-heading h2>span{font-size:10px;font-weight:400;color:#ababab;margin-left:5px}.panel-caption{font-size:10px;line-height:1.9;color:#a3a3a3;margin-top:20px}.record-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #f2f2f2;cursor:pointer}.record-row:last-child{border-bottom:0}.record-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#f0f0f0;color:#989898;flex-shrink:0}.record-icon svg{width:19px}.record-icon[data-category="交通"]{color:#9c9c9c;background:#f1f1f1}.record-icon[data-category="购物"]{color:#929292;background:#f1f1f1}.record-icon[data-category="工资"]{color:#8c8c8c;background:#f3f3f3}.record-icon[data-category="转账"]{color:#8b8b8b;background:#f1f1f1}.record-info{flex:1;min-width:0}.record-info strong{display:block;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.record-info small{display:block;color:#a7a7a7;font-size:10px;margin-top:6px}.record-amount{text-align:right;white-space:nowrap;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}.record-amount small{display:block;font-weight:400;font-size:9px;color:#a3a3a3;margin-top:6px}.positive{color:#747474}.pending-tag{font-size:9px;color:#8c8c8c;background:#f4f4f4;padding:3px 6px;border-radius:4px;margin-left:6px}.category-row{width:100%;display:block;text-align:left;padding:10px 0}.category-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:10px}.category-label>span:first-child{display:flex;gap:7px;align-items:center}.color-dot{width:6px;height:6px;border-radius:2px;background:var(--bar-color)}.category-label small{color:#ababab;font-size:9px;margin-left:5px}.bar-track{height:5px;background:#f3f3f3;border-radius:5px;overflow:hidden}.bar-fill{height:100%;background:var(--bar-color);border-radius:5px}.empty-state{text-align:center;padding:37px 12px;color:#a9a9a9}.empty-state svg{width:34px;height:34px;color:#b1b1b1;margin-bottom:15px}.empty-state strong{display:block;font-size:13px;color:#929292;font-weight:500}.empty-state p{font-size:11px;margin-top:9px;line-height:1.9}.empty-state button{margin-top:15px}.main-footer{display:flex;justify-content:space-between;align-items:center;color:#b1b1b1;font-size:9px;letter-spacing:1px;padding-top:8px}.main-footer span:first-child{letter-spacing:3px}.toolbar{display:flex;gap:18px;justify-content:space-between;margin-bottom:20px}.search-box{display:flex;gap:10px;align-items:center;flex:1;border:1px solid var(--line);border-radius:10px;background:#fff;padding:11px 14px}.search-box svg{color:#aaaaaa;width:18px}.search-box input{border:0;background:none;outline:0;width:100%;font-size:12px;color:var(--ink)}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 19px;border-radius:9px;background:var(--green);color:white;font-size:12px;white-space:nowrap}.primary-button svg,.secondary-button svg{width:17px;height:17px}.secondary-button{background:#f4f4f4;color:#757575;border:1px solid #e7e7e7}.filter-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}.segmented{display:flex;background:#f0f0f0;border-radius:9px;padding:4px;margin-right:auto}.segmented button{font-size:11px;padding:9px 13px;border-radius:6px;color:#8f8f8f}.segmented button.active{background:#fff;color:#616161;box-shadow:0 2px 5px #4141410a}.date-heading{color:#979797;font-size:11px;padding:22px 0 7px;border-bottom:1px solid var(--line)}.date-heading:first-child{padding-top:0}.stats-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stat-block{border:1px solid var(--line);border-radius:14px;padding:23px;background:#fff}.stat-block small{display:block;color:#9c9c9c;font-size:11px}.stat-block strong{display:block;font-size:27px;font-weight:500;margin-top:12px}.stat-block p{font-size:10px;color:#a0a0a0;margin-top:10px}.chart-panel{margin-bottom:24px}.trend-svg{width:100%;height:200px;overflow:visible}.trend-svg text{font-family:inherit;font-size:10px;fill:#a4a4a4}.trend-svg line{stroke:#efefef;stroke-width:1}.insight{padding:18px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.9;color:#8b8b8b}.insight strong{font-size:20px;display:block;color:var(--ink);font-weight:500}.insight:last-of-type{border-bottom:0}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:24px}.setting-description{color:#8d8d8d;font-size:12px;line-height:1.9;margin-bottom:18px}.connection-list{display:grid;gap:16px;padding:5px 0}.connection-list>div{display:flex;gap:12px;align-items:center;font-size:12px}.connection-list small{margin-left:auto;color:#a4a4a4;font-size:10px}.channel-logo{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f2f2f2;font-size:12px;color:#868686}.channel-logo.alipay{background:#f2f2f2;color:#929292}.channel-logo.bank{background:#eeeeee;color:#828282}.channel-logo.abc{background:#f1f1f1;color:#8c8c8c}.setting-action{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:22px}.import-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:155px;background:#f8f8f8;border:1px dashed #d3d3d3;border-radius:12px;cursor:pointer;color:#959595}.import-zone strong{font-size:12px;font-weight:500}.import-zone span{font-size:10px;color:#a2a2a2}.button-row{display:flex;gap:12px}.privacy-panel p{font-size:12px;line-height:1.9;color:#969696;margin-bottom:15px}.notice{font-size:11px;padding:11px 15px;border:1px solid #e5e5e5;background:#f1f1f1;color:#8f8f8f;border-radius:9px;margin-bottom:22px;line-height:1.8}.notice button{font-size:11px;color:#6b6b6b;text-decoration:underline;float:right}.demo-notice{background:#f4f4f4;border-color:#e2e2e2;color:#888888}.inbox-alert{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#f7f7f7;color:#8b8b8b;border:1px solid #e4e4e4;border-radius:12px;width:100%;text-align:left;font-size:12px;margin-bottom:24px}.inbox-alert>span:last-child{margin-left:auto;white-space:nowrap}.floating-add{display:none}dialog{border:1px solid var(--line);padding:0;border-radius:20px;width:calc(100% - 32px);max-width:650px;max-height:90vh;color:var(--ink);background:#fff;box-shadow:0 25px 100px #35353526}dialog::backdrop{background:#2f2f2f66;backdrop-filter:blur(5px)}.dialog-shell{padding:28px}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}.dialog-heading h2{font-size:20px}.dialog-heading .eyebrow{font-size:9px}.dialog-heading>.icon-button{align-self:flex-start}.dialog-shell textarea{width:100%;border:1px solid #e4e4e4;border-radius:12px;background:#f9f9f9;resize:vertical;min-height:110px;padding:17px;font-size:14px;line-height:1.9;color:var(--ink);outline-color:#a0a0a0}.dialog-shell textarea::placeholder{color:#b2b2b2}.input-actions{display:flex;justify-content:space-between;margin-top:15px}.dialog-footer{display:flex;justify-content:flex-end;align-items:center;gap:15px;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.dialog-footer>.muted{margin-right:auto;font-size:11px}.edit-card{border:1px solid var(--line);border-radius:12px;padding:18px;margin-top:16px;background:#fcfcfc}.edit-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:12px}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:8px;font-size:10px;color:#969696}.field input,.field select{width:100%;padding:10px 11px;border:1px solid #e5e5e5;border-radius:7px;background:#fff;font-size:13px;color:#5a5a5a;min-width:0}.field-wide{grid-column:1/-1}.duplicate-warning{color:#8b8b8b;font-size:10px;line-height:1.8;margin-top:14px;background:#f5f5f5;padding:10px;border-radius:6px}.questions{font-size:12px;color:#8b8b8b;padding:14px;background:#f7f7f7;border:1px solid #e5e5e5;border-radius:9px;line-height:1.9;margin-top:18px}.edit-actions{display:flex;gap:10px;margin-top:16px;justify-content:flex-end}.danger-button{font-size:11px;color:#888888;padding:8px}.status-select{font-size:11px;color:#8e8e8e}.save-error{border-color:#959595!important}.restore-preview{padding:10px;font-size:12px}#toast{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);background:#444444;color:#f6f6f6;border-radius:11px;padding:14px 24px;font-size:12px;box-shadow:0 5px 30px #31313133;z-index:100;max-width:90vw;line-height:1.8;text-align:center}
@media(min-width:1600px){main{padding:50px 65px}.overview-grid{gap:25px}.balance-card{min-height:220px}.hero-amount strong{font-size:46px}.hero-amount{margin-top:28px}.summary-card{padding:28px}.summary-value{margin-top:30px}.voice-card{padding:35px 45px}}
@media(max-width:1150px){.sidebar{width:200px;padding-left:18px;padding-right:18px}main{margin-left:200px;padding:30px}.overview-grid{gap:14px;grid-template-columns:1.2fr 1fr 1fr}.balance-card{padding:22px}.hero-amount strong{font-size:32px}.summary-card{padding:18px}.summary-value strong{font-size:23px}.summary-foot{font-size:9px}.dashboard-bottom{gap:18px}.panel{padding:20px}.voice-wave{right:160px}.settings-grid{gap:18px}}
@media(max-width:850px){.sidebar{width:80px;padding:28px 12px}.brand{justify-content:center}.brand>span:last-child{display:none}.brand-mark{width:39px;height:39px}.navigation{margin-top:45px;gap:16px}.nav-item{justify-content:center;padding:15px 10px}.nav-item>span:last-child,.sidebar-note,.sidebar-footer{display:none}main{margin-left:80px;padding:27px}.overview-grid{grid-template-columns:1fr 1fr}.balance-card{grid-column:1/-1;min-height:185px}.summary-card{min-height:155px}.summary-value{margin-top:15px}.summary-foot{margin-top:16px}.dashboard-bottom{grid-template-columns:1fr}.hero-amount strong{font-size:42px}.settings-grid{grid-template-columns:1fr}.voice-copy h2{font-size:22px}.voice-wave{display:none}.voice-button{margin-right:0;width:90px;height:90px}.voice-card{padding:28px}.stats-summary{gap:12px}.stat-block{padding:17px}.stat-block strong{font-size:23px}}
@media(max-width:560px){body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.sidebar{inset:auto 0 0 0;width:100%;height:calc(68px + env(safe-area-inset-bottom));padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);background:#fcfcfcfa;backdrop-filter:blur(16px)}.brand{display:none}.navigation{margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;height:100%}.nav-item{display:flex;flex-direction:column;gap:5px;padding:7px 3px;font-size:10px;border-radius:10px}.nav-item>span:last-child{display:block;font-size:10px;font-weight:400}.nav-item svg{width:19px;height:19px}.nav-item.active{background:transparent}.nav-item.active>span:first-child{color:#5b5b5b}.nav-item.active>span:last-child{font-weight:600}main{margin-left:0;padding:25px 20px 12px}.topbar{margin-bottom:28px}.topbar h1{font-size:23px;letter-spacing:.5px}.eyebrow{font-size:9px}.topbar>.icon-button{width:34px;height:34px}.overview-grid{gap:12px;margin-bottom:18px}.balance-card{padding:23px;border-radius:17px;min-height:185px}.hero-amount strong{font-size:42px}.balance-bottom{margin-top:17px;font-size:10px}.summary-card{border-radius:14px;padding:15px;min-height:141px}.summary-icon{width:26px;height:26px;border-radius:8px}.summary-icon svg{width:15px}.summary-card>.muted{font-size:10px;margin-top:7px}.summary-value{font-size:13px;margin-top:20px}.summary-value strong{font-size:22px}.summary-foot{font-size:8px;margin-top:18px}.voice-card{padding:23px;margin-bottom:22px;border-radius:15px}.voice-copy .eyebrow{font-size:8px;letter-spacing:1px}.voice-copy h2{font-size:20px;letter-spacing:1px}.voice-copy p{font-size:9px;max-width:180px;line-height:1.7;margin-top:11px}.voice-button{width:74px;height:74px;font-size:9px;gap:7px;box-shadow:0 0 0 6px #ffffff40,0 0 0 12px #ffffff20;flex-shrink:0;margin-left:12px}.voice-button svg{width:25px;height:25px}.voice-copy .text-link{font-size:10px;margin-top:13px}.dashboard-bottom{gap:18px}.panel{padding:20px;border-radius:14px}.panel-heading h2{font-size:13px}.panel-heading{margin-bottom:15px}.main-footer{font-size:8px;letter-spacing:0;padding-top:0}.main-footer>span:last-child{max-width:65%;text-align:right}.record-info strong{font-size:12px;max-width:200px}.record-info small{font-size:9px}.record-amount{font-size:13px}.record-row{gap:10px;padding:14px 0}.record-icon{width:35px;height:35px;border-radius:10px}.toolbar{gap:10px}.toolbar .primary-button{padding:11px 13px;font-size:11px}.search-box{padding:11px;font-size:11px;min-width:0}.search-box input{font-size:11px}.filter-row{gap:10px}.segmented{width:100%;justify-content:space-between}.segmented button{flex:1;padding:9px 5px;font-size:11px}.entries-panel{padding:18px}.stats-summary{gap:8px}.stat-block{padding:14px 10px;border-radius:12px}.stat-block small{font-size:9px}.stat-block strong{font-size:18px;margin-top:14px;letter-spacing:-.5px}.stat-block p{font-size:8px;line-height:1.6;min-height:26px}.trend-svg{height:180px}.chart-panel .muted{font-size:9px}.notice{font-size:9px;padding:10px 12px;margin-bottom:20px}.notice button{font-size:9px}.section-title{font-size:12px;margin-bottom:15px}.month-picker{padding:7px 9px}.month-picker input{font-size:10px;max-width:117px}.month-picker svg{width:13px}.settings-grid{gap:18px}.setting-description{font-size:11px}.privacy-panel p{font-size:11px}.primary-button,.secondary-button{padding:11px 15px;font-size:11px}.floating-add{display:grid;place-items:center;position:fixed;bottom:calc(85px + env(safe-area-inset-bottom));right:20px;width:49px;height:49px;background:#585858;color:white;border-radius:17px;box-shadow:0 6px 20px #53535333;z-index:12}.floating-add svg{width:23px;height:23px}.dialog-shell{padding:22px}.dialog-heading h2{font-size:18px}.edit-grid{gap:12px}.field input,.field select{font-size:12px;padding:10px 8px}.edit-card{padding:14px}.dialog-footer{gap:10px}.dialog-footer>.muted{max-width:130px;font-size:10px;line-height:1.8}.inbox-alert{font-size:10px;padding:13px;gap:8px}.inbox-alert svg{width:17px}#toast{bottom:calc(86px + env(safe-area-inset-bottom));font-size:11px;padding:12px 18px}}
@media(prefers-reduced-motion:no-preference){.page{animation:appear .22s ease}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
