:root{--ink:#203430;--muted:#7c8984;--line:#e3e9e5;--paper:#f5f7f5;--green:#176c55;--deep:#164b3c;--mint:#e4f2eb;--orange:#aa6a2e;--red:#b74a45;--white:#fff;--shadow:0 18px 65px #183b3212;font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:.15s}button:disabled{opacity:.48;cursor:not-allowed}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5dae91;outline-offset:3px}button svg{flex-shrink:0}svg{width:19px;height:19px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}h1{font-size:29px;letter-spacing:-.8px;font-weight:650}h2{font-size:19px;font-weight:650}h3{font-size:15px;font-weight:600}small{font-size:12px}input,select,textarea{width:100%;border:1px solid #dce4df;background:white;border-radius:9px;padding:11px 12px;color:var(--ink);min-height:42px}textarea{resize:vertical;min-height:82px;line-height:1.7}input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--green)}input[type=file]{font-size:12px}label{display:block;font-size:12px;font-weight:550;margin-bottom:7px}.field{min-width:0}.field small{display:block;line-height:1.6;margin-top:6px;color:var(--muted)}.btn{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-weight:550;font-size:13px}.btn:hover{background:#edf3ef}.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.btn.primary:hover{background:var(--deep)}.btn.danger{color:var(--red);background:#fff5f3;border-color:#f1dcd6}.btn.small{padding:7px 11px;font-size:12px}.btn.ghost{background:transparent;border-color:transparent}.muted{color:var(--muted)}.money{font-variant-numeric:tabular-nums;letter-spacing:-.7px}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.gap{height:22px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.span2{grid-column:span 2}.pill{display:inline-flex;align-items:center;font-size:11px;font-weight:550;line-height:1.4;padding:5px 9px;border-radius:6px;white-space:nowrap;background:#edf1ee;color:#6a7a72}.pill.green{background:#e7f3eb;color:#397c56}.pill.amber{background:#fcf1df;color:#ac7836}.pill.red{background:#f9eae7;color:#b55a4e}.pill.blue{background:#eaf1f8;color:#547494}.pill.outline{background:transparent;border:1px solid var(--line);color:var(--muted)}.dot{height:7px;width:7px;border-radius:50%;background:#56a083;display:inline-block;margin-right:7px}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#fbfcfa;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:30px 18px 18px}.brand{display:flex;gap:12px;align-items:center;padding:0 12px 28px}.brand-icon{height:38px;width:38px;border-radius:12px;background:var(--green);color:white;display:flex;align-items:center;justify-content:center;font-size:21px;font-weight:650}.brand strong{font-size:17px;letter-spacing:1px;display:block}.brand small{display:block;font-size:10px;letter-spacing:2.3px;margin-top:4px;color:var(--muted)}.nav-label{font-size:10px;letter-spacing:1.4px;color:#9aa69e;padding:23px 16px 10px}.nav-btn{width:100%;display:flex;align-items:center;gap:13px;border:0;background:transparent;border-radius:9px;color:#76827b;padding:13px 16px;margin:3px 0;text-align:left;font-size:13px}.nav-btn:hover{background:#edf3ed}.nav-btn.active{background:#e5eee6;color:var(--deep);font-weight:650}.nav-count{margin-left:auto;background:#fff;border-radius:5px;font-size:11px;padding:1px 6px;color:var(--green)}.sidebar-foot{margin-top:auto;padding:20px 10px 5px}.source-card{background:#f0f4ee;border:1px solid #e4eade;border-radius:10px;padding:13px 12px;line-height:1.8;font-size:11px;color:#839078}.source-card strong{color:#596b51;font-weight:550}.identity{padding:21px 2px 0;display:flex;gap:10px;align-items:center}.avatar{width:35px;height:35px;background:#dce9dd;color:#43664c;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.identity strong{font-size:12px;display:block}.identity small{font-size:10px;color:var(--muted)}.main{min-width:0}.topbar{height:77px;padding:0 40px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between}.breadcrumb{font-size:12px;color:#87938b;display:flex;gap:13px;align-items:center}.breadcrumb strong{color:#55635a;font-weight:500}.topbar-actions{display:flex;gap:20px;align-items:center;font-size:12px;color:var(--muted)}.content{padding:34px 40px 45px;max-width:1600px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--green);font-weight:600;margin-bottom:10px}.subheading{font-size:12px;color:var(--muted);line-height:1.8;margin-top:9px}.filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filter-bar select,.filter-bar input{width:auto;min-width:155px;padding:9px 12px;min-height:38px;font-size:12px}.notice{background:#edf3e8;border:1px solid #e2eadb;border-radius:10px;display:flex;align-items:flex-start;gap:11px;padding:14px 17px;font-size:12px;line-height:1.8;margin-bottom:24px;color:#647755}.notice.warning{background:#fff6e9;border-color:#f0e6d5;color:#967243}.notice svg{margin-top:2px;flex-shrink:0}.notice .btn{margin-left:auto}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:26px}.metric{background:#fff;border:1px solid var(--line);border-radius:13px;padding:21px 22px;min-height:145px}.metric.feature{background:#225d48;color:#fff;border-color:#225d48}.metric-label{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#839187}.metric.feature .metric-label{color:#c8d9cb}.metric-label svg{color:#91a79a;width:18px}.metric .value{font-size:31px;font-weight:600;letter-spacing:-1px;margin:20px 0 13px;line-height:1}.metric .value small{font-size:18px;margin-right:4px;font-weight:400;opacity:.7}.metric .foot{font-size:10px;color:#91a096}.metric.feature .foot{color:#b0cdb7}.panel{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:23px 24px 21px}.panel-head p{font-size:11px;color:var(--muted);margin-top:7px}.panel-body{padding:0 24px 24px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,1fr);gap:22px;margin-bottom:24px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap;text-align:left}th{font-size:11px;background:#f8faf7;color:#8a978c;padding:13px 18px;font-weight:500;border-top:1px solid #edf1e9;border-bottom:1px solid #edf1e9}td{padding:17px 18px;border-bottom:1px solid #edf1e9;color:#526157}tr:last-child td{border-bottom:0}.person-name{font-weight:600;color:#344d3c}.cell-title{font-weight:550;color:#43554b;max-width:230px;overflow:hidden;text-overflow:ellipsis}.cell-sub{font-size:10px;color:#94a096;margin-top:6px;max-width:240px;overflow:hidden;text-overflow:ellipsis}.summary-number{font-size:27px;font-weight:600;margin-bottom:20px}.progress-track{display:flex;gap:4px;height:9px;border-radius:6px;overflow:hidden;background:#eef2e9;margin-bottom:22px}.progress-track>div{min-width:0;background:#387359;border-radius:4px}.summary-line{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:12px 0;border-bottom:1px solid #edf1e9}.summary-line:last-child{border-bottom:0}.summary-line b{font-weight:550}.tiny-square{display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:9px;background:#387359}.tiny-square.lighter{background:#a5bbaa}.tiny-square.lightest{background:#dfe7d9}.panel-foot{padding:13px 24px;border-top:1px solid var(--line);font-size:10px;line-height:1.8;color:#94a093;background:#fafbf9}.empty{padding:45px 22px;text-align:center;color:#91a092}.empty .empty-icon{margin:auto auto 15px;width:46px;height:46px;background:#f0f5ed;border-radius:14px;display:grid;place-items:center;color:#779479}.empty h3{font-size:14px;color:#6c7f70;margin-bottom:9px}.empty p{font-size:12px;line-height:1.8}.empty .btn{margin-top:19px}.mini-empty{padding:25px 0 9px}.schedule-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.schedule-card{padding:22px;background:#fff;border:1px solid var(--line);border-radius:12px}.schedule-card h3{margin:15px 0 8px;line-height:1.7}.schedule-detail{font-size:12px;line-height:1.8;color:#8b978f}.people-tags{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0}.schedule-bottom{padding-top:15px;border-top:1px solid #edf1e9;display:flex;align-items:center;justify-content:space-between;gap:8px}.amount{font-size:22px;font-weight:600}.rules{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rule{padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px}.rule h3{margin-bottom:14px}.rule p,.rule li{font-size:12px;color:#7c8b80;line-height:2}.rule ul{padding-left:17px}.rule strong{color:#4f6857}.search{min-width:200px!important}.status-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding:0 22px;overflow:auto}.status-tabs button{font-size:12px;padding:15px 10px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);white-space:nowrap}.status-tabs .active{color:var(--green);border-color:var(--green);font-weight:600}.status-tabs span{margin-left:6px;color:#a2aca3;font-size:10px}.calculator{display:grid;grid-template-columns:1.15fr .85fr;gap:23px}.calc-result{background:#f2f6ef;border-radius:11px;padding:26px}.calc-result .amount{font-size:40px;margin:17px 0 12px}.calc-result p{color:#8c9b8e;font-size:11px;line-height:1.9}.divider{height:1px;background:var(--line);margin:23px 0}.income-bars{display:flex;align-items:flex-end;gap:16px;height:125px;padding-top:20px;margin-bottom:10px}.income-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;min-width:0}.income-col .bar{width:100%;max-width:44px;background:#b2ccb7;border-radius:5px 5px 0 0;min-height:2px}.income-col small{font-size:10px;color:var(--muted);margin-top:8px}.income-col .bar-value{font-size:9px;color:#91a096;margin-bottom:5px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.login-story{background:#164c3b;color:#eef4e9;padding:55px 64px;display:flex;flex-direction:column}.login-story .brand{padding:0;color:#fff}.login-story .brand-icon{background:#376b52}.login-story .brand small{color:#93ad92}.story-middle{margin:auto 0;padding:70px 0}.story-middle .eyebrow{color:#a2c79d;font-size:11px}.story-middle h1{font-size:47px;line-height:1.5;font-weight:500;letter-spacing:2px}.story-middle p{font-size:14px;line-height:2;color:#a8bda9;margin-top:20px;max-width:340px}.story-preview{margin-top:43px;padding:25px;border:1px solid #47765b;border-radius:13px;max-width:360px;background:#22553f}.story-preview .row{font-size:12px;color:#bfd0b9}.story-preview .row+.row{margin-top:20px}.story-preview .check-circle{height:24px;width:24px;display:grid;place-items:center;background:#426e4f;color:#c4dbb2;border-radius:50%}.story-foot{font-size:11px;letter-spacing:1px;color:#7c9f83}.login-main{display:grid;place-items:center;padding:50px;background:#f8faf6}.login-card{max-width:370px;width:100%}.login-card h2{font-size:28px;margin:13px 0}.login-card .subheading{margin-bottom:30px;font-size:13px}.login-card .field{margin-bottom:19px}.login-card .btn{width:100%;margin-top:9px;padding:13px}.login-hint{font-size:11px;color:#99a397;line-height:1.8;margin-top:24px;text-align:center}.error-text{color:var(--red);font-size:12px;margin:12px 0;line-height:1.7}.boot{display:grid;place-items:center;height:100vh;color:var(--green)}dialog{border:0;border-radius:15px;padding:0;width:min(820px,94vw);max-height:90vh;box-shadow:0 40px 120px #15382933;color:var(--ink)}dialog::backdrop{background:#132e284d;backdrop-filter:blur(3px)}.modal-head{position:sticky;top:0;z-index:1;background:#fff;padding:24px 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-head p{font-size:11px;color:var(--muted);margin-top:7px}.modal-body{padding:26px 28px}.modal-actions{background:#fafcf8;display:flex;gap:9px;justify-content:flex-end;padding:18px 28px;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:1}.step-heading{display:flex;align-items:center;gap:9px;margin:0 0 20px;font-size:14px;font-weight:600}.step-heading .number{width:22px;height:22px;border-radius:6px;background:var(--mint);font-size:11px;display:grid;place-items:center;color:var(--green)}.allowance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.allowance{border:1px solid var(--line);border-radius:10px;padding:14px}.allowance .field{margin:10px 0}.allowance-title{font-size:12px;font-weight:550;display:flex;align-items:center;justify-content:space-between}.allowance .unit{font-size:10px;color:var(--muted);font-weight:400}.evidence-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:9px}.thumb{position:relative}.thumb img{width:52px;height:45px;border-radius:5px;border:1px solid var(--line);object-fit:cover;display:block}.thumb button{position:absolute;right:-3px;top:-5px;cursor:pointer;width:17px;height:17px;border-radius:50%;border:0;background:#bd6154;color:white;font-size:11px;line-height:1}.upload-label{font-size:10px;font-weight:400;color:#869b89;margin-bottom:0;cursor:pointer}.upload-label input{width:100%;font-size:10px;padding:6px;min-height:0;background:#fafcf9;border-style:dashed;margin-top:6px}.calc-preview{display:flex;justify-content:space-between;align-items:center;background:#edf5ed;border-radius:10px;padding:19px;margin-top:22px}.calc-preview .amount{color:var(--green);font-size:26px}.calc-preview small{font-size:11px;color:#7f937f;display:block;line-height:1.8}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.detail-grid span{display:block;font-size:10px;color:var(--muted);margin-bottom:9px}.detail-grid strong{font-size:13px;font-weight:550}.breakdown{margin-top:22px;background:#f6f8f3;padding:17px;border-radius:9px}.breakdown .summary-line{padding:8px 0}.close-btn{border:0;background:transparent;color:#8c998e;font-size:23px;padding:0 5px}.inline-label{display:flex;align-items:center;gap:8px;line-height:1.8;font-size:12px;font-weight:400}.prose{font-size:12px;color:#758a79;line-height:1.9;white-space:pre-wrap}.plan-warning{font-size:11px;color:#a38245;line-height:1.7;background:#fbf6e9;padding:10px;border-radius:7px;margin-top:12px}#toast{position:fixed;bottom:27px;left:50%;transform:translateX(-50%) translateY(90px);z-index:100;max-width:90vw;padding:13px 24px;border-radius:10px;background:#264e3b;color:white;font-size:13px;opacity:0;transition:.2s;box-shadow:var(--shadow)}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}#toast.error{background:#a15044}.footer-note{font-size:10px;color:#a0aaa1;margin-top:25px;display:flex;justify-content:space-between}.mobile-menu{display:none}.upload-import{border:1px dashed #c9d8c8;padding:28px;border-radius:11px;background:#f8fbf5;text-align:center}.upload-import p{font-size:12px;color:var(--muted);margin:12px 0}.upload-import input{max-width:380px;background:white}.configured-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a9b49d;margin-right:7px}.audit-detail{max-width:700px;white-space:normal;word-break:break-word;line-height:1.7}.nowrap{white-space:nowrap}.mobile-only{display:none}
@media(min-width:1600px){.content{padding-top:42px}.cards{gap:22px}.metric{padding:25px 26px;min-height:155px}.metric .value{font-size:35px}}
@media(max-width:1150px){.shell{grid-template-columns:205px 1fr}.sidebar{padding-left:12px;padding-right:12px}.content{padding:28px 25px}.topbar{padding:0 25px}.dashboard-grid{grid-template-columns:1fr}.cards{gap:10px}.metric{padding:17px 15px}.metric .value{font-size:27px}.calculator{grid-template-columns:1fr 1fr}.login-story{padding:40px}.story-middle h1{font-size:38px}}
@media(max-width:800px){.shell{display:block}.sidebar{display:none;position:fixed;z-index:10;width:235px;box-shadow:var(--shadow)}.sidebar.open{display:flex}.topbar{height:63px;padding:0 18px}.mobile-menu{display:inline-flex}.topbar-actions{gap:8px}.topbar-actions .desktop{display:none}.content{padding:23px 16px}.page-heading{align-items:flex-start;flex-direction:column;gap:15px}h1{font-size:25px}.cards{grid-template-columns:repeat(2,1fr)}.metric{min-height:130px}.metric .value{margin:16px 0 11px;font-size:29px}.schedule-list,.rules,.calculator{grid-template-columns:1fr}.panel-head{padding:19px}.panel-body{padding:0 19px 20px}.grid3{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-story{display:none}.login-main{padding:30px;min-height:100vh}.login-card{max-width:390px}.filter-bar{width:100%}.filter-bar select,.filter-bar input{min-width:0;flex:1;max-width:100%}.notice{padding:13px;font-size:11px}.notice .btn{display:none}.modal-head{padding:18px}.modal-body{padding:20px 18px}.modal-actions{padding:15px 18px;flex-wrap:wrap}.modal-actions .btn{flex:1}.allowance-grid{gap:8px}.allowance{padding:11px}.detail-grid{grid-template-columns:1fr 1fr}.footer-note{line-height:1.7;gap:12px}.mobile-only{display:block}.breadcrumb{gap:8px;font-size:11px}.calculator .grid2{gap:12px}.notice .row{align-items:flex-start}.search{min-width:140px!important}.calc-preview{gap:10px;padding:15px}.calc-preview .amount{font-size:21px}.grid2{gap:13px}.span2{grid-column:span 2}}
.rules .span2{grid-column:1 / -1}

.special-execution{border:1px solid #abc7b9;border-radius:10px;padding:16px;margin:20px 0 0;background:#f4f8f5}.special-execution legend{font-weight:700;padding:0 7px}.special-execution small{display:block;margin-top:8px}.source-price{color:#85602a}
