@charset "UTF-8";
:root{--bg:#f5f6f2;--paper:#fff;--ink:#263b32;--muted:#8a948d;--green:#2d624c;--deep:#244c3c;--line:#e9ece6;--soft:#eff5e9;--red:#b26950;--amber:#ae803d;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);font-size:14px;font-synthesis:none;background:var(--bg)}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b1ce93;outline-offset:4px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button{color:inherit}input,textarea,select{border:1px solid #dfe5db;border-radius:9px;padding:12px;color:var(--ink);background:#fff;width:100%;min-width:0;outline-color:#7c9c6a}input:focus,textarea:focus,select:focus{border-color:#84a476}textarea{resize:vertical;line-height:1.7}input,textarea{font-variant-numeric:tabular-nums}button,summary{touch-action:manipulation}.sidebar{width:216px;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);background:#fafbf8;padding:35px 20px 20px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:12px;padding-left:6px;white-space:nowrap}.brand>span{font-size:24px;font-weight:650;letter-spacing:1px}.brand small{display:block;font-size:7px;letter-spacing:1.3px;color:#929d90;font-weight:500;margin-top:7px}.nav-label{font-size:11px;color:#a0a99f;margin:57px 15px 17px;letter-spacing:2px}.nav-item{border:0;width:100%;background:none;display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:9px;color:#7f8c80;margin-bottom:9px;font-size:13px;text-align:left}.nav-item>span:first-child{font-size:19px;width:21px;color:#8f9a8a}.nav-item.active,.nav-item:hover{background:#eaf0e3;color:#355739}.nav-item.active{font-weight:600}.nav-count{font-size:10px;border-radius:5px;background:#e8ede3;padding:3px 6px;margin-left:auto}.sidebar-note{margin:58px 14px 0;padding-top:28px;border-top:1px solid var(--line)}.little-leaf{display:block;font-size:32px;color:#8ba775;margin-bottom:12px}.sidebar-note h3{font-size:15px;font-weight:550;line-height:1.9;color:#53694f}.sidebar-note p{font-size:11px;color:#9ba591;line-height:1.9;margin-top:13px}.sidebar-bottom{margin-top:auto;padding-top:40px}.local-state{display:flex;align-items:center;gap:7px;color:#919c89;font-size:10px;margin:16px 13px 0}.local-state i,.tiny-dot{display:inline-block;border-radius:50%;background:#8baa69;width:5px;height:5px}.local-state i{box-shadow:0 0 0 3px #eef3e8}main{margin-left:216px;padding:42px 42px 24px;max-width:1660px;min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}.eyebrow{font-size:9px;color:#95a086;letter-spacing:2px;font-weight:600;margin-bottom:11px}h1{font-size:27px;font-weight:600;letter-spacing:1px}h1>span{color:#759459}.page-header p{color:#96a08f;font-size:12px;margin-top:10px}.header-actions{display:flex;align-items:center;gap:9px}.button{border:1px solid transparent;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;padding:11px 15px;min-height:39px;white-space:nowrap;font-weight:550;transition:background .15s,transform .15s}.button:active{transform:translateY(1px)}.primary{background:var(--deep);color:#fff}.primary:hover{background:#31654d}.primary>span{font-size:18px;font-weight:400}.secondary{background:#fff;border-color:#dfe5d8;color:#647259}.secondary:hover{background:#f2f5ed}.subtle{background:none;color:#8b9782}.subtle:hover{background:#e9eee1}.small{padding:8px 12px;min-height:35px}.danger{color:#aa614e;background:#fbf1ed}.banner{padding:12px 16px;background:#fff3e4;border:1px solid #f1dfc0;border-radius:9px;color:#906333;margin-bottom:20px;line-height:1.7;font-size:12px}.demo-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#eaf0e0;border:1px solid #d5e0c6;border-radius:9px;padding:11px 15px;font-size:12px;color:#668050;margin-bottom:20px;line-height:1.7}.demo-banner button{border:0;background:none;color:#41643a;white-space:nowrap}.metrics{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:17px;margin-bottom:25px}.metric{border-radius:13px;background:var(--paper);border:1px solid var(--line);padding:21px 21px 19px;position:relative;overflow:hidden;min-height:152px}.metric-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:#8a967f;white-space:nowrap}.metric-symbol{border:1px solid #edf0e7;border-radius:6px;width:23px;height:23px;text-align:center;font-size:16px;color:#a0ad94;background:#fafbf8;line-height:20px}.metric-money{display:block;font-size:27px;letter-spacing:-.8px;font-weight:550;font-variant-numeric:tabular-nums;margin-top:16px;overflow-wrap:anywhere}.metric-foot{font-size:10px;color:#97a18c;margin-top:15px;line-height:1.6}.main-metric{background:var(--deep);border-color:var(--deep);color:#fff}.main-metric .metric-top{color:#cad6c2;position:relative;z-index:1}.mini-tag{font-size:9px;border-radius:4px;border:1px solid #547259;padding:3px 6px;color:#bed2a8}.big-money{display:flex;gap:6px;align-items:baseline;margin-top:15px;position:relative;z-index:1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.big-money small{font-size:18px;color:#bfd0b3}.big-money strong{font-size:34px;font-weight:500;letter-spacing:-1px;min-width:0;overflow-wrap:anywhere}.main-metric .metric-foot{color:#a9be99;position:relative;z-index:1}.card-art{position:absolute;right:3px;bottom:-4px;display:flex;align-items:flex-end;gap:8px;transform:rotate(-19deg);opacity:.12}.card-art i{display:block;width:22px;background:#b2ca99;height:55px;border-radius:4px 4px 0 0}.card-art i:nth-child(2){height:80px}.card-art i:nth-child(3){height:105px}.card-art i:nth-child(4){height:130px}.reconcile-word{display:block;font-size:20px;font-weight:550;margin-top:20px;color:var(--green)}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.muted{color:var(--muted)!important}.middle-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:23px;margin-bottom:25px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:13px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel-heading h2{font-size:15px;font-weight:600;letter-spacing:.3px}.panel-heading p{font-size:10px;color:#9aa38e;margin-top:8px;line-height:1.7}.trend-panel{padding:25px 25px 15px;min-width:0;display:flex;flex-direction:column}.segmented{display:flex;padding:3px;background:#f5f7f1;border:1px solid #ebefe5;border-radius:7px;flex-shrink:0}.segmented button{border:0;background:none;color:#8f9a84;padding:5px 9px;border-radius:5px;font-size:10px;white-space:nowrap}.segmented button.selected{background:#fff;color:#456736;box-shadow:0 1px 4px #243a1712}.chart-legends{display:flex;justify-content:space-between;gap:10px;margin-top:25px;color:#829174;font-size:10px}.chart-legends>span:first-child{display:flex;align-items:center;gap:7px}.chart-legends i{height:3px;background:#6b9861;width:15px;border-radius:3px}.chart-range-label{color:#a1a991}.chart{height:215px;margin-top:10px;position:relative;min-width:0}.chart svg{width:100%;height:100%;overflow:visible}.chart-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;color:#a0aa94;font-size:12px;background:repeating-linear-gradient(to bottom,transparent,transparent 51px,#f2f5ed 52px,#f2f5ed 53px)}.chart-empty p{background:#fff;padding:10px 20px;line-height:1.8;text-align:center}.chart-detail{min-height:31px;color:#8c9980;font-size:10px;margin-top:8px;line-height:1.7;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.chart-detail strong{color:#476b3c;font-weight:550}.reconciliation-panel{padding:24px 23px 16px;display:flex;flex-direction:column}.round-icon{border:1px solid #e9efe1;color:#7b9368;border-radius:50%;width:28px;height:28px;text-align:center;font-size:21px}.status-block{display:flex;align-items:center;gap:8px;background:#f0f5e9;border-radius:7px;padding:11px 12px;font-size:11px;color:#688250;margin:19px 0 12px}.status-block.attention,.status-block.check,.status-block.noted,.status-block.incomplete{color:#a27635;background:#fcf5e9}.status-block.explained{color:#547e8a;background:#eff5f5}.status-block.baseline,.status-block.recorded{color:#889380;background:#f4f6ef}.status-dot{background:currentColor;width:5px;height:5px;border-radius:50%}.status-block strong{font-weight:550}.recon-rows>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;font-size:10px;color:#8e9983}.recon-rows b{font-weight:550;color:#596d4e;font-variant-numeric:tabular-nums;text-align:right}.recon-rows .remaining{border-top:1px dashed #e2e9d9;margin-top:5px;padding-top:13px}.remaining b{font-size:13px}.recon-text{font-size:10px;line-height:1.85;color:#9aa28d;margin:10px 0 9px;overflow-wrap:anywhere}.text-button{color:#628047;font-size:11px;border:0;background:none;padding:0;text-align:left;display:flex;justify-content:space-between;gap:8px;line-height:1.7}.tolerance-note{color:#a4ac98;font-size:9px;border-top:1px solid #eff2e8;margin-top:auto;padding-top:12px;padding-bottom:1px}.reconciliation-panel .text-button{margin-bottom:16px}.history-panel{overflow:hidden;scroll-margin-top:24px}.history-panel>.panel-heading{padding:25px 25px 19px;align-items:center}.count-pill{font-size:9px;background:#eff3e8;border-radius:5px;padding:4px 7px;color:#849772;vertical-align:middle;margin-left:8px;font-weight:400;white-space:nowrap}.history-actions{display:flex;align-items:center;gap:10px}.history-actions select{padding:8px 25px 8px 11px;min-height:35px;width:auto;font-size:11px;color:#849473;border-color:#e4eadb;background:#fff}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;white-space:nowrap;font-size:11px}th{background:#f9faf6;color:#9ba58f;font-weight:400;font-size:10px;padding:13px 17px;border-top:1px solid #eff2e9;border-bottom:1px solid #eff2e9}td{padding:16px 17px;border-bottom:1px solid #f0f2eb;font-variant-numeric:tabular-nums;color:#62705c}th:first-child,td:first-child{text-align:left;padding-left:25px}th:nth-last-child(-n+2),td:nth-last-child(-n+2){text-align:left}td:last-child{padding-right:25px;max-width:180px;overflow:hidden;text-overflow:ellipsis;color:#9aa48e;font-size:10px}tbody tr:hover{background:#fcfdf9}tbody tr.selected-row{background:#f5f8ee}.date-button{border:0;background:none;font-size:11px;font-weight:550;color:#526c45;padding:3px 0}.date-sub{display:block;font-size:9px;color:#a2ae94;margin-top:4px}.status-badge{display:inline-flex;gap:5px;align-items:center;padding:5px 8px;border-radius:5px;background:#eef5e6;color:#79905f;font-size:9px;white-space:nowrap}.status-badge:before{content:"";height:4px;width:4px;border-radius:50%;background:currentColor}.status-badge.explained{background:#edf5f4;color:#689693}.status-badge.attention,.status-badge.check,.status-badge.noted,.status-badge.incomplete{background:#fcf4e7;color:#b18b51}.status-badge.baseline,.status-badge.recorded{background:#f1f3ec;color:#9aa38d}.history-footer{padding:16px 25px;display:flex;justify-content:space-between;gap:14px;font-size:9px;color:#a4ad97;line-height:1.7}.history-footer>span:last-child{white-space:nowrap}.history-footer i{margin-left:6px;vertical-align:middle;width:4px;height:4px}.page-footer{display:flex;justify-content:space-between;color:#adb49f;gap:15px;font-size:9px;margin:24px 0 0;line-height:1.8}.empty-state{padding:37px 20px 33px;text-align:center}.empty-state h3{font-size:16px;font-weight:500;margin-top:20px}.empty-state p{font-size:12px;color:#9aa68d;line-height:1.9;margin-top:10px}.empty-state .button{margin-top:20px}.empty-illustration{border-radius:10px;border:1px solid #d5e1c6;background:#fafcf6;width:64px;height:70px;margin:auto;transform:rotate(-7deg);padding:14px 13px;box-shadow:6px 6px 0 #f0f4e9;position:relative}.empty-illustration i{display:block;background:#dce6ce;height:3px;border-radius:2px;margin-bottom:8px}.empty-illustration i:last-child{width:60%}.empty-illustration span{position:absolute;right:-10px;bottom:-5px;border-radius:50%;width:27px;height:27px;background:#dcebbf;color:#698642;font-size:22px;transform:rotate(7deg)}dialog{color:var(--ink);border:0;box-shadow:0 20px 100px #172f2940;padding:0;max-height:93dvh}dialog::backdrop{background:#18342b55;backdrop-filter:blur(3px)}.entry-dialog{width:540px;max-width:100%;height:100dvh;max-height:100dvh;margin:0 0 0 auto;border-radius:17px 0 0 17px}.entry-dialog form{height:100%;display:flex;flex-direction:column}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:25px 29px 21px;flex-shrink:0}.dialog-header h2{font-size:20px;letter-spacing:.5px;font-weight:550}.dialog-header .eyebrow{font-size:8px;margin-bottom:8px}.icon-button{width:31px;height:31px;border:1px solid #e9ede1;background:#fafbf7;font-size:23px;line-height:26px;border-radius:8px;color:#8c9880;font-weight:300}.dialog-body{padding:24px 29px;overflow:auto;flex:1;min-height:0}.entry-intro{font-size:12px;line-height:1.8;color:#98a28e;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label,.full-label{font-size:11px;color:#67785a;font-weight:550;line-height:1.7;display:block}.form-grid input,.full-label input,.full-label textarea{margin-top:7px;font-size:13px;font-weight:400;min-height:43px}.form-grid label small{font-size:9px;color:#a9b39a;font-weight:400}.input-suffix{position:relative;display:block}.input-suffix input{padding-right:35px}.input-suffix i{font-style:normal;position:absolute;right:14px;top:19px;color:#abb69b}.section-title{display:flex;align-items:center;gap:10px;margin:27px 0 12px}.section-title>span{font-size:10px;color:#93ab73;background:#f0f5e9;padding:4px 5px;border-radius:5px}.section-title h3{font-size:13px;font-weight:550}.dialog-body>textarea{font-size:12px;background:#fcfdf9;border-color:#e4e9db}.parse-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.parse-row>span{font-size:10px;color:#9ba68e}.form-details{border-top:1px solid #edf0e6;margin-top:22px;padding-top:17px}.form-details summary{font-size:11px;font-weight:550;cursor:pointer;color:#6a7e5a;display:flex;align-items:center;gap:9px;list-style:none;min-height:25px}.form-details summary::-webkit-details-marker{display:none}.form-details summary:before{content:"＋";font-size:13px;color:#90a478;font-weight:400}.form-details[open] summary:before{content:"−"}.form-details summary span{font-size:9px;font-weight:400;color:#adb89c;margin-left:auto}.form-details>.form-grid,.form-details>.full-label{margin-top:13px}.field-help{font-size:10px;line-height:1.9;color:#a1ac93;margin-top:10px;font-weight:400}.wallet-input{font-size:18px;background:#f7faef;border-color:#dce7cb;min-height:51px;color:#496332}.wallet-input::placeholder{font-size:12px;color:#a4b590}.entry-preview{background:#f0f5e9;border-radius:10px;padding:17px 18px;margin-top:25px}.entry-preview>span{font-size:11px;color:#7b9166}.entry-preview strong{float:right;font-size:21px;font-weight:550;font-variant-numeric:tabular-nums;color:#3f6230}.entry-preview p{clear:both;font-size:10px;color:#92a37c;line-height:1.85;padding-top:11px}.entry-preview.error strong{color:#b17949}.dialog-footer{border-top:1px solid var(--line);padding:17px 29px;display:flex;justify-content:flex-end;gap:10px;background:#fff;flex-shrink:0}.dialog-footer .danger{margin-right:auto}.form-notice{font-size:11px;color:#68844d;border-radius:7px;background:#f0f5e8;padding:10px 12px;line-height:1.8;margin-top:13px;white-space:pre-line;overflow-wrap:anywhere}.form-notice.error{color:#a26544;background:#fdf2e9}.small-dialog{width:460px;max-width:calc(100% - 30px);border-radius:15px}.small-dialog>.dialog-body{max-height:calc(90dvh - 100px)}.small-dialog .full-label:not(:first-child){margin-top:25px}.small-dialog .dialog-header{padding:22px 25px}.small-dialog .dialog-header h2{font-size:18px}.small-dialog .dialog-body{padding:22px 25px}.method-content h3{font-size:13px;font-weight:550;margin:21px 0 10px}.method-content h3:first-child{margin-top:0}.method-content p{font-size:11px;color:#8f9b80;line-height:1.95;margin-top:12px}.formula{background:#f2f6eb;border:1px solid #e5edda;border-radius:9px;padding:16px 18px;color:#829669;font-size:12px;line-height:2}.formula strong{display:block;border-top:1px dashed #d4e1c3;padding-top:6px;margin-top:7px;color:#537339;font-weight:550}.formula.compact{font-size:11px}.toast{position:fixed;bottom:28px;left:calc(50% + 100px);transform:translateX(-50%);z-index:100;background:#284f3f;color:#e7eedc;border:1px solid #476752;border-radius:10px;padding:12px 21px;font-size:12px;box-shadow:0 8px 20px #20442d26;max-width:calc(100% - 30px);line-height:1.7;text-align:center}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.filter-empty{text-align:center;padding:35px;color:#9daa8b}.chart-dot{cursor:pointer;outline:none}.chart-dot:focus .plot-point,.chart-dot:hover .plot-point{r:6;stroke:#597f43;stroke-width:3}.chart-dot.selected .plot-point{r:5;fill:#345c24}
@media(min-width:1600px){main{padding:48px 58px}.middle-grid{grid-template-columns:minmax(0,1fr) 330px}.metric{padding:24px}.chart{height:235px}}
@media(max-width:1190px){.sidebar{width:185px;padding:28px 15px}.brand{gap:9px}.brand>span{font-size:22px}.brand small{font-size:6px}.nav-label{margin-top:40px}main{margin-left:185px;padding:32px 26px 22px}.header-actions{gap:5px}.header-actions .subtle{padding:8px}.button{padding:10px 12px}h1{font-size:24px}.metrics{gap:12px;grid-template-columns:1.3fr 1fr 1fr}.metric{padding:18px 15px;min-height:144px}.big-money strong{font-size:28px}.metric-money{font-size:24px}.metric-top{font-size:11px}.mini-tag{font-size:8px}.reconcile-word{font-size:17px}.middle-grid{gap:17px;grid-template-columns:minmax(0,1fr) 280px}.trend-panel{padding:22px 20px 15px}.reconciliation-panel{padding:22px 18px 16px}.panel-heading h2{font-size:14px}.chart{height:218px}.history-panel>.panel-heading{padding:23px 20px 18px}.chart-legends{margin-top:20px}th,td{padding-left:13px;padding-right:13px}.toast{left:calc(50% + 92px)}}
@media(max-width:960px){.sidebar{width:165px;padding:28px 12px}.brand img{width:32px;height:32px}.brand>span{font-size:21px}.brand small{font-size:5px}.nav-item{gap:8px;padding:12px}.sidebar-note{margin-top:34px}.sidebar-note h3{font-size:14px}main{margin-left:165px;padding:27px 21px}.page-header{flex-wrap:wrap;gap:20px;margin-bottom:23px}.header-actions{margin-left:auto}.metrics{grid-template-columns:1fr 1fr;gap:13px}.main-metric{grid-column:1/-1}.metric{min-height:135px;padding:19px 21px}.big-money strong{font-size:31px}.metric-money{font-size:28px}.metric-top{font-size:12px}.reconcile-word{font-size:21px}.metric-foot{margin-top:11px}.middle-grid{grid-template-columns:1fr}.chart{height:235px}.reconciliation-panel{padding:23px;display:grid;grid-template-columns:1fr 1fr;gap:7px 27px}.reconciliation-panel .panel-heading{grid-column:1}.reconciliation-panel .status-block{grid-column:1;margin:5px 0}.recon-rows{grid-column:2;grid-row:1/5;align-self:center}.recon-text{grid-column:1;margin:0}.reconciliation-panel .text-button{grid-column:1;margin-bottom:9px}.tolerance-note{grid-column:1/-1;margin-top:5px}.history-panel>.panel-heading{align-items:flex-start;flex-wrap:wrap}.history-actions{margin-left:auto}.toast{left:calc(50% + 82px)}}
@media(max-width:650px){.sidebar{width:auto;height:auto;position:static;flex-direction:row;padding:17px 20px;border-right:0;border-bottom:1px solid var(--line);align-items:center;justify-content:space-between}.brand{padding:0;gap:10px}.brand>span{font-size:20px}.brand small{font-size:6px;margin-top:4px}.brand img{width:34px;height:34px}.nav-label,.sidebar-note,.sidebar nav,.sidebar-bottom .local-state{display:none}.sidebar-bottom{margin:0;padding:0}.sidebar-bottom .nav-item{margin:0;padding:6px 0;font-size:12px}.sidebar-bottom .nav-item>span{font-size:18px}main{margin:0;padding:25px 16px}.page-header{gap:18px;margin-bottom:19px}.eyebrow{font-size:8px}h1{font-size:24px;letter-spacing:.5px}.page-header p{font-size:11px}.header-actions{width:100%;justify-content:flex-end;gap:7px}.header-actions .subtle{margin-right:auto;padding-left:0;font-size:11px}.button{font-size:11px;padding:10px 12px}.metrics{gap:10px;margin-bottom:18px;grid-template-columns:1.1fr 1fr}.metric{padding:16px 15px;min-height:133px;border-radius:10px}.big-money strong{font-size:27px}.big-money small{font-size:15px}.mini-tag{font-size:7px;padding:2px 4px}.metric-money{font-size:26px;margin-top:17px}.metric-top{font-size:11px;gap:4px}.metric-foot{font-size:9px}.metric-symbol{width:21px;height:21px}.reconcile-word{font-size:18px;margin-top:20px}.middle-grid{gap:18px;margin-bottom:18px}.trend-panel{padding:20px 16px 12px}.panel-heading h2{font-size:14px}.panel-heading p{font-size:9px}.segmented button{font-size:9px;padding:5px 7px}.chart{height:205px}.chart-legends{margin-top:19px;font-size:9px}.chart-range-label{font-size:8px}.chart-detail{font-size:9px}.reconciliation-panel{padding:20px 17px;gap:8px 19px}.round-icon{display:none}.reconciliation-panel .panel-heading h2{font-size:14px}.status-block{font-size:9px;padding:10px 8px;line-height:1.6}.recon-rows>div{font-size:9px;padding:8px 0;gap:5px}.recon-rows .remaining b{font-size:12px}.recon-text{font-size:9px}.reconciliation-panel .text-button{font-size:10px;line-height:1.6}.tolerance-note{font-size:8px}.history-panel>.panel-heading{padding:20px 17px 16px;gap:12px}.history-panel h2{font-size:14px}.history-actions{gap:8px}.history-actions select{font-size:10px}.history-footer{padding:13px 17px;font-size:8px}.history-footer>span:first-child{max-width:230px}.page-footer{font-size:8px;margin-top:18px;flex-wrap:wrap}.entry-dialog{width:100%;border-radius:0}.dialog-header{padding:23px 21px 20px}.dialog-body{padding:22px 21px}.dialog-footer{padding:15px 21px}.demo-banner{font-size:10px;align-items:flex-start}.demo-banner button{font-size:10px;padding:0}.toast{left:50%;bottom:20px}.banner{font-size:11px}.empty-state{padding-top:26px}.chart-dot .plot-point{r:4}}
@media(max-width:370px){.metric{padding:14px 12px}.mini-tag{display:none}.big-money strong{font-size:25px}.metric-money{font-size:24px}.reconcile-word{font-size:16px}.reconciliation-panel{display:block}.reconciliation-panel .status-block{margin:14px 0}.recon-text{margin:9px 0}.reconciliation-panel .text-button{margin-top:8px}.recon-rows>div{font-size:10px}.tolerance-note{margin-top:12px}.form-grid{gap:12px}.chart{height:190px}.page-header h1{font-size:23px}.segmented button{padding:5px 6px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.big-money strong.long-money{font-size:29px}@media(max-width:1190px){.big-money strong.long-money{font-size:25px}}@media(max-width:650px){.big-money strong.long-money{font-size:22px}}
.login-page{min-height:100dvh;display:grid;place-items:center;padding:25px}.login-card{margin:0;min-height:0;width:430px;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:20px;padding:38px;box-shadow:0 20px 60px #274a3210}.login-card .brand{margin-bottom:40px}.login-card h1{font-size:25px}.login-card>p{font-size:12px;color:#93a185;line-height:1.8;margin:12px 0 25px}.login-card .full-label{margin-top:18px}.login-card .button{width:100%;margin-top:23px;min-height:45px}.login-foot{font-size:10px;color:#9daa90;text-align:center;margin-top:25px}@media(max-width:500px){.login-card{padding:28px}.login-page{padding:19px}}

/* Dark palette shared by the dashboard, dialogs, login and SVG chart. */
:root {
  color-scheme: dark;
  --bg: #090b10;
  --paper: #141720;
  --ink: #f0f3fa;
  --muted: #a3aec2;
  --green: #64dfb4;
  --deep: #211b35;
  --line: #2b3141;
  --soft: #1d2230;
  --red: #ff9aa6;
  --amber: #ffcf8a;
  --accent: #b69bff;
  --cyan: #77ddf5;
  --input: #10131c;
  --purple-soft: #28213c;
  --mint-soft: #162d29;
  --amber-soft: #342b1e;
  --red-soft: #34212b;
}
body {
  background: radial-gradient(ellipse at 85% 0%, #3023482e, transparent 44%),
    radial-gradient(ellipse at 10% 90%, #143d3821, transparent 40%), var(--bg);
}
::selection { background: #514176; color: #fff; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible,
select:focus-visible, summary:focus-visible { outline-color: var(--accent); }
input, textarea, select, .history-actions select {
  background: var(--input); color: var(--ink); border-color: #424b61;
  outline-color: var(--accent); caret-color: var(--accent);
}
input::placeholder, textarea::placeholder, .wallet-input::placeholder { color: #929fb6; opacity: 1; }
input:focus, textarea:focus, select:focus { border-color: var(--accent); }
input:-webkit-autofill {
  -webkit-text-fill-color: var(--ink);
  -webkit-box-shadow: 0 0 0 1000px var(--input) inset;
  caret-color: var(--accent);
}
.sidebar { background: #0e1119; }
.brand img { box-shadow: 0 0 22px #9670ed16; border-radius: 12px; }
.brand small, .nav-label, .sidebar-note p, .local-state, .page-header p,
.metric-foot, .panel-heading p, .chart-range-label, .chart-detail,
.recon-rows > div, .recon-text, .tolerance-note, .date-sub, td:last-child,
.history-footer, .page-footer, .empty-state p, .entry-intro, .form-grid label small,
.input-suffix i, .parse-row > span, .form-details summary span, .field-help,
.entry-preview p, .method-content p, .filter-empty, .login-card > p, .login-foot {
  color: var(--muted);
}
.nav-item, .nav-item > span:first-child { color: #a9b4ca; }
.nav-item.active, .nav-item:hover { background: var(--purple-soft); color: #d2beff; }
.nav-item.active > span:first-child { color: var(--accent); }
.nav-count, .count-pill { background: var(--purple-soft); color: #d2beff; }
.little-leaf, h1 > span { color: var(--green); }
.sidebar-note h3 { color: #c9d1e4; }
.local-state i, .tiny-dot { background: var(--green); }
.local-state i { box-shadow: 0 0 0 3px #64dfb41a; }
.eyebrow { color: var(--accent); }
.primary { background: var(--accent); color: #170f29; box-shadow: 0 4px 20px #9a74f022; }
.primary:hover { background: #c8b2ff; }
.secondary { background: #1b1f2c; border-color: #424b61; color: #d7def0; }
.secondary:hover { background: #262c3d; border-color: #616d8b; }
.subtle { color: #b3bed3; }
.subtle:hover { background: #202535; }
.danger { color: var(--red); background: var(--red-soft); border-color: #603241; }
.banner { background: var(--amber-soft); border-color: #665133; color: var(--amber); }
.demo-banner { background: #202139; border-color: #474373; color: #c7c0fa; }
.demo-banner button { color: #ddd5ff; }
.metric, .panel { box-shadow: 0 8px 30px #00000014; }
.metric-top { color: #c7d0e3; }
.metric-symbol { background: #242034; border-color: #43365e; color: var(--accent); }
.metrics > .metric:nth-child(2) { background: linear-gradient(145deg, #162621, var(--paper) 68%); border-color: #2c433c; }
.metrics > .metric:nth-child(2) .metric-symbol { background: var(--mint-soft); border-color: #335749; color: var(--green); }
.metrics > .metric:nth-child(3) { background: linear-gradient(145deg, #282217, var(--paper) 68%); border-color: #443c2c; }
.metrics > .metric:nth-child(3) .metric-symbol { background: var(--amber-soft); border-color: #64502c; color: var(--amber); }
#profit.positive { color: var(--amber) !important; }
.main-metric { background: linear-gradient(118deg, #322449, #201d37 68%, #1a2d37); border-color: #54436e; }
.main-metric .metric-top { color: #e1d7f9; }
.main-metric .metric-foot { color: #c7bddc; }
.mini-tag { background: #b69bff10; border-color: #69557f; color: #e0cef9; }
.big-money small { color: #d1bdf7; }
.card-art { opacity: .22; }
.card-art i { background: var(--accent); }
.card-art i:nth-child(2) { background: var(--cyan); }
.card-art i:nth-child(3) { background: var(--green); }
.card-art i:nth-child(4) { background: var(--amber); }
.segmented { background: #0e1119; border-color: var(--line); }
.segmented button { color: #aeb9cf; }
.segmented button.selected { background: #352b4c; color: #e2d4ff; box-shadow: 0 1px 5px #0004; }
.chart-legends { color: #c7d2e9; }
.chart-legends i { background: linear-gradient(90deg, var(--accent), var(--cyan)); }
.chart-empty { color: var(--muted); background: repeating-linear-gradient(to bottom, transparent, transparent 51px, #242938 52px, #242938 53px); }
.chart-empty p { background: var(--paper); }
.chart-detail strong { color: var(--cyan); }
.chart-grid-line { stroke: #2a3040; }
.chart-axis-label { fill: var(--muted); }
.chart-line-start, .chart-fill-start { stop-color: var(--accent); }
.chart-line-end, .chart-fill-end { stop-color: var(--cyan); }
.chart-dot .plot-point { fill: var(--paper); stroke: var(--cyan); }
.chart-dot:focus .plot-point, .chart-dot:hover .plot-point { stroke: var(--accent); }
.chart-dot.selected .plot-point { fill: var(--accent); stroke: #e6dcff; }
.round-icon { border-color: #345153; background: #16272e; color: var(--cyan); }
.status-block, .status-badge { background: var(--mint-soft); color: #8ce4be; }
.status-block.attention, .status-block.check, .status-block.noted, .status-block.incomplete,
.status-badge.attention, .status-badge.check, .status-badge.noted, .status-badge.incomplete { background: var(--amber-soft); color: var(--amber); }
.status-block.explained, .status-badge.explained { background: #182d38; color: var(--cyan); }
.status-block.baseline, .status-block.recorded,
.status-badge.baseline, .status-badge.recorded { background: #242939; color: #bec9df; }
.recon-rows b { color: #dce3f1; }
.recon-rows .remaining { border-color: #3a4256; }
.text-button { color: var(--accent); }
.tolerance-note { border-color: var(--line); }
th { background: #191d29; border-color: var(--line); color: #bbc6dc; }
td { color: #c9d2e5; border-color: #252a39; }
tbody tr:hover { background: #1d2130; }
tbody tr.selected-row { background: #242137; }
.date-button { color: #cbb7ff; }
.empty-illustration { background: #201d31; border-color: #504566; box-shadow: 6px 6px 0 #2b253c; }
.empty-illustration i { background: #64597a; }
.empty-illustration span { background: #4d3c6c; color: #e2cfff; }
dialog { background: var(--paper); border: 1px solid #3d455b; box-shadow: 0 24px 100px #0009; }
dialog::backdrop { background: #03050bb3; }
.icon-button { background: #232837; border-color: #46516a; color: #cbd5ea; }
.form-grid label, .full-label, .form-details summary { color: #c3cee3; }
.section-title > span { background: var(--purple-soft); color: var(--accent); }
.dialog-body > textarea { background: var(--input); border-color: #424b61; }
.form-details { border-color: var(--line); }
.form-details summary:before { color: var(--accent); }
.wallet-input { background: #131f25; border-color: #3d5b68; color: #b6f1fc; }
.entry-preview { background: #222037; border: 1px solid #464062; }
.entry-preview > span { color: #c6b6ef; }
.entry-preview strong { color: #d6c2ff; }
.entry-preview.error strong { color: var(--red); }
.dialog-footer { background: #171b26; }
.form-notice { background: var(--mint-soft); color: #98e5c5; }
.form-notice.error { background: var(--red-soft); color: #ffafb7; }
.formula { background: #1b2331; border-color: #3c4b64; color: #c1cde3; }
.formula strong { border-color: #4b5770; color: var(--cyan); }
.toast { background: #2b2340; border-color: #665384; color: #ece3ff; box-shadow: 0 8px 35px #0005; }
.login-card { background: linear-gradient(145deg, #1c1929, #141720 62%); border-color: #3e3652; box-shadow: 0 25px 90px #0005; }
