:root{--ink:#17332f;--muted:#768580;--green:#176c59;--green-dark:#104d40;--mint:#eaf3ee;--bg:#f5f6f2;--line:#e4e9e2;--orange:#edac6e;--white:#fff;--red:#b64b45;--shadow:0 8px 35px #22382a05}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.65}a{color:var(--green);text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}img{max-width:100%}svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}h1,h2,h3,p{margin-top:0}h1{font-size:29px;letter-spacing:-1px;line-height:1.4;margin-bottom:7px}h2{font-size:18px;letter-spacing:-.4px}h3{font-size:15px}small,.muted{color:var(--muted)}strong{font-weight:650}.tiny{font-size:12px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:650;color:var(--green);margin-bottom:12px}.brand{display:flex;gap:11px;align-items:center;font-size:23px;font-weight:750;color:var(--ink);letter-spacing:-.7px}.brandmark{display:grid;place-items:center;width:39px;height:39px;background:var(--green);border-radius:12px;color:#fff}.brandmark svg{width:25px;height:25px}.brand img{width:39px;height:39px;object-fit:contain;border-radius:10px}.sidebar{width:236px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:34px 22px;display:flex;flex-direction:column;z-index:30}.brand-sub{font-size:10px;color:var(--muted);font-weight:500;letter-spacing:1.8px;margin-top:2px}.sidebar .brand{margin:0 9px 35px}.nav-label{color:#98a29c;font-size:10px;letter-spacing:2px;margin:21px 16px 10px}.nav-link{display:flex;align-items:center;gap:12px;color:#6c7b75;padding:12px 15px;border-radius:8px;margin-bottom:5px;font-size:13px}.nav-link:hover{background:#f6f8f4;color:var(--green)}.nav-link.active{background:var(--mint);color:var(--green);font-weight:650}.nav-link .count{margin-left:auto;background:var(--green);border-radius:20px;color:#fff;padding:0 6px;font-size:10px}.sidebar-bottom{margin-top:auto;padding:25px 12px 0}.sidebar-note{border:1px solid var(--line);border-radius:10px;padding:15px;font-size:11px;color:var(--muted);margin-bottom:20px}.sidebar-note strong{display:block;color:var(--ink);margin-bottom:5px;font-size:12px}.account{display:flex;gap:10px;align-items:center}.avatar{width:40px;height:40px;object-fit:cover;border-radius:50%;background:#eef1e8;display:inline-flex;align-items:center;justify-content:center;color:var(--green);font-size:15px;font-weight:650;flex:none}.avatar.large{width:62px;height:62px;font-size:24px}.account-name{font-weight:650;font-size:12px}.account small{display:block;font-size:10px}.signout{margin-left:auto;border:0;background:none;padding:5px;color:var(--muted)}.workspace{margin-left:236px;min-height:100vh}.topbar{height:78px;padding:0 42px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.topbar-right{display:flex;gap:23px;align-items:center}.live-dot:before{content:"";display:inline-block;height:6px;width:6px;background:#58a37a;border-radius:50%;margin-right:7px}.topbar a{color:var(--ink);display:flex;align-items:center;gap:7px}.main{max-width:1540px;margin:auto;padding:34px 42px 50px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.page-head p{margin:0;color:var(--muted);font-size:13px}.page-head .eyebrow{margin-bottom:8px}.head-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid transparent;border-radius:7px;padding:10px 18px;background:var(--green);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:550;min-height:40px;white-space:nowrap;line-height:1.5}.btn:hover{background:var(--green-dark);color:#fff}.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.btn.secondary:hover{border-color:#b8cfc1;background:#f9fbf8}.btn.danger{background:#fff4f1;color:var(--red);border-color:#f0d8d3}.btn.small{padding:6px 11px;min-height:31px;font-size:11px}.btn.wide{width:100%;padding:14px 18px;font-size:14px}.text-btn{background:none;border:0;color:var(--green);padding:0;font-size:12px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:25px;margin-bottom:22px}.panel.flush{padding:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:21px}.panel-head h2{margin:0;font-size:15px}.panel-head small{font-size:11px}.panel.flush .panel-head{padding:22px 25px 0}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:25px}.metric{background:#fff;border:1px solid var(--line);border-radius:11px;padding:21px 23px;position:relative}.metric-title{font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:space-between}.metric-title svg{width:18px;height:18px;color:#88a094}.metric-value{font-size:32px;font-weight:650;line-height:1.3;margin:15px 0 8px;letter-spacing:-1px}.metric-foot{font-size:10px;color:#85918b}.metric.highlight{background:var(--green);color:white;border-color:var(--green)}.metric.highlight .metric-title,.metric.highlight svg,.metric.highlight .metric-foot{color:#c1dcd0}.welcome-card{background:#eaf1e8;border:1px solid #dce7d8;border-radius:12px;position:relative;padding:28px 30px;margin-bottom:25px;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:25px}.welcome-card h2{font-size:21px;margin:0 0 8px}.welcome-card p{font-size:12px;color:#658071;margin:0}.welcome-card .orb{width:85px;height:85px;display:grid;place-items:center;background:#d4e3cf;transform:rotate(-10deg);border-radius:24px;color:var(--green);margin-right:15px;flex:none}.welcome-card .orb svg{height:42px;width:42px}.split{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:22px}.columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:22px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:11px;font-weight:500;color:#7d8a82;background:#fafbf8;padding:13px 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:17px 22px;border-bottom:1px solid #edf0ea;font-size:12px}tr:last-child td{border-bottom:0}td strong{font-weight:600}td small{display:block;font-size:10px;margin-top:3px}.badge{display:inline-block;border-radius:5px;padding:3px 8px;font-size:10px;background:#f0f2ed;color:#748077;white-space:nowrap}.badge.pending{background:#fff3df;color:#ae843b}.badge.following,.badge.contacted{background:#edf2ff;color:#577db5}.badge.completed,.badge.active{background:#eaf5ed;color:#398158}.badge.invalid,.badge.inactive{background:#f9eeeb;color:#b77063}.filters{display:flex;flex-wrap:wrap;gap:11px;align-items:end;margin:0 0 20px}.filters .field{margin:0;min-width:120px}.filters label{font-size:10px;margin-bottom:5px}.filters input,.filters select{height:39px;min-width:125px;font-size:12px}.filters .search{flex:1;min-width:190px}.field{margin-bottom:19px}.field label{display:block;font-size:12px;font-weight:550;margin-bottom:8px}.required{color:var(--red);margin-left:3px}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;border:1px solid #dfe6df;border-radius:7px;background:#fff;color:var(--ink);outline:none;padding:11px 13px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:#5b9a80;box-shadow:0 0 0 3px #176c5909}input::placeholder,textarea::placeholder{color:#a0aaa2;font-size:12px}input[type=file]{font-size:12px!important;padding:9px!important}input[type=checkbox]{accent-color:var(--green);width:15px;height:15px;flex:none;margin:3px 0 0}textarea{resize:vertical;min-height:95px}.field small{display:block;font-size:11px;margin-top:6px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check{display:flex;gap:9px;align-items:start;font-size:12px;color:#6f7f74;margin:15px 0}.check input{flex:none}.input-unit{position:relative}.input-unit input{padding-right:64px!important}.input-unit span{position:absolute;right:15px;top:12px;color:var(--muted);font-size:12px}.flash{padding:13px 17px;border-radius:8px;margin-bottom:22px;font-size:12px;border:1px solid #cfe3d4;background:#edf7f0;color:#30704f}.flash.error{background:#fff2ee;border-color:#efd7cf;color:#ae594b}.flash ul{padding-left:19px;margin:3px 0}.credentials{background:#fffaeb;border:1px solid #f2dfb3;padding:17px;border-radius:8px;font-size:12px;margin-bottom:22px}.credentials code{font-size:14px;word-break:break-all}.empty{text-align:center;color:var(--muted);padding:42px 20px;font-size:12px}.empty .empty-icon{width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#f1f5ed;display:grid;place-items:center;color:#a0b19b}.empty p{margin:4px 0}.pagination{padding:18px 24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted);font-size:11px}.pagination .pages{display:flex;gap:7px}.summary-strip{display:flex;gap:30px;padding:0 0 20px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.summary-strip strong{font-size:19px;color:var(--ink);margin:0 4px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0}.detail-grid dt{font-size:11px;color:var(--muted);margin-bottom:5px}.detail-grid dd{margin:0;font-size:13px;overflow-wrap:anywhere}.detail-grid .full{grid-column:1/-1}.section-label{color:var(--muted);font-size:10px;letter-spacing:1px;font-weight:600;margin:25px 0 15px}.timeline{padding-left:16px;border-left:1px solid #dfe8dc;margin-left:4px}.timeline-item{position:relative;padding:0 0 25px 9px;font-size:12px}.timeline-item:before{content:"";position:absolute;left:-21px;top:6px;width:7px;height:7px;border-radius:50%;background:#79a085;box-shadow:0 0 0 4px white}.timeline-item p{white-space:pre-wrap;margin:8px 0;font-size:12px;color:#687b6f}.timeline-item small{font-size:10px}.activity{display:flex;gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid #eef1eb}.activity:last-child{border:0}.activity-icon{width:32px;height:32px;display:grid;place-items:center;flex:none;border-radius:9px;background:#f0f4e9;color:#73905e}.activity strong{font-size:12px;font-weight:550}.activity p{margin:4px 0;color:var(--muted);font-size:11px}.activity time{font-size:10px;color:#9aa398}.bar-chart{height:180px;display:flex;align-items:end;gap:18px;padding:20px 10px 30px;border-bottom:1px solid var(--line);margin:20px 0 35px}.bar-col{position:relative;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;height:100%;gap:6px}.bar{width:55%;min-height:4px;background:#a9c8ad;border-radius:5px 5px 0 0}.bar-col:last-child .bar{background:var(--green)}.bar-col small{font-size:10px}.bar-col span{position:absolute;bottom:-27px;font-size:10px;color:var(--muted)}.qr-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;text-align:center;max-width:330px;margin:auto}.qr-box img{width:220px;height:220px;display:block;margin:10px auto 15px}.qr-box h3{margin:0 0 6px}.copy-row{display:flex;gap:8px}.copy-row input{font-size:12px!important;background:#f9fbf7!important}.notice-item{padding:20px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;align-items:start}.notice-item:last-child{border:0}.notice-item.unread strong:before{content:"";display:inline-block;height:6px;width:6px;border-radius:50%;background:var(--orange);margin-right:8px}.notice-item p{font-size:12px;color:var(--muted);margin:7px 0}.notice-actions{margin-left:auto;display:flex;gap:10px;align-items:center;flex:none}.hint{background:#f4f7ef;border:1px solid #e2ead9;padding:15px;border-radius:9px;font-size:12px;color:#728366}.hint p:last-child{margin:0}.divider{border:0;border-top:1px solid var(--line);margin:25px 0}.mobile-menu{display:none;border:0;background:none;color:var(--ink)}details{margin-bottom:16px}summary{font-size:13px;font-weight:600;cursor:pointer;margin-bottom:16px}pre.audit-json{white-space:pre-wrap;word-break:break-word;font-size:11px;background:#f5f7f2;padding:13px;border-radius:7px;max-height:260px;overflow:auto}.footer-note{font-size:10px;color:#9ba69e;text-align:center;margin-top:35px}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.login-art{padding:54px 64px;background:#e8eee4;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-art .brand{position:relative;z-index:2}.login-art-content{margin:auto 0;position:relative;z-index:2}.login-art h1{font-size:44px;line-height:1.4;letter-spacing:-2px;font-weight:550;margin-bottom:22px}.login-art p{color:#7b8b78;font-size:13px;max-width:330px;line-height:2}.login-art .outline-orbit{position:absolute;border:1px solid #d0ddc7;border-radius:50%;height:550px;width:550px;right:-200px;bottom:-140px}.login-art .outline-orbit.second{height:390px;width:390px;right:-110px;bottom:-60px}.login-art .feature-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}.feature-chips span{font-size:11px;border:1px solid #c8d6be;border-radius:25px;padding:7px 13px;color:#66835c}.login-main{background:#fff;display:grid;place-items:center;padding:45px}.login-card{width:100%;max-width:360px}.login-card h2{font-size:27px;margin-bottom:6px}.login-card .sub{color:var(--muted);font-size:12px;margin-bottom:32px}.login-foot{font-size:11px;color:#99a294;text-align:center;margin-top:30px}.public-shell{min-height:100vh;padding:28px 20px 40px;background:radial-gradient(ellipse at 50% 0,#e4eddf 0,transparent 55%),#f5f6f1}.public-head{max-width:480px;margin:0 auto 27px;display:flex;align-items:center;justify-content:space-between}.public-head .brand{font-size:21px}.public-head .brandmark{width:34px;height:34px;border-radius:10px}.public-head>span{font-size:10px;color:#86927e;letter-spacing:1px}.public-card{max-width:480px;background:#fff;border:1px solid var(--line);border-radius:19px;margin:0 auto;box-shadow:0 18px 70px #284c3010;overflow:hidden}.public-intro{padding:30px 28px 24px;background:linear-gradient(135deg,#f0f5e9,#fff);border-bottom:1px solid #edf1e8}.public-intro h1{font-size:27px;letter-spacing:-1px;margin-bottom:9px}.public-intro p{font-size:12px;color:#809075;line-height:1.9;margin:0}.steps{display:flex;align-items:center;gap:9px;font-size:10px;margin:22px 0 0;color:#9ba492}.step{display:flex;gap:6px;align-items:center}.step b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#eaf0e1;font-size:9px;font-weight:500}.step.active{color:var(--green)}.step.active b{background:var(--green);color:#fff}.step-line{height:1px;background:#dfe7d6;width:26px}.public-body{padding:27px 28px}.public-body .field{margin-bottom:22px}.public-agent{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#f7f9f3;border:1px solid #e8eee0;border-radius:10px;margin-bottom:24px}.public-agent strong{font-size:13px}.public-agent p{font-size:11px;color:var(--muted);margin:3px 0 0}.public-agent .agent-label{margin-left:auto;font-size:10px;color:#8c9e7a}.public-note{max-width:440px;margin:22px auto 0;font-size:10px;color:#98a28f;text-align:center;line-height:1.9}.public-card .hint{font-size:11px}.confirm-list{margin:0 0 25px}.confirm-list>div{padding:14px 0;border-bottom:1px solid var(--line)}.confirm-list dt{font-size:11px;color:var(--muted);margin-bottom:5px}.confirm-list dd{margin:0;font-size:14px;overflow-wrap:anywhere}.result-top{text-align:center;padding:35px 28px 25px}.result-top .company{font-size:19px;margin:0 0 22px;overflow-wrap:anywhere}.result-tick{width:60px;height:60px;background:#e8f6e9;border-radius:50%;display:grid;place-items:center;color:#449b5d;margin:0 auto 10px}.result-tick svg{height:32px;width:32px}.result-top .done{font-size:12px;color:#61a36a;margin-bottom:27px}.result-amount-label{font-size:12px;color:#7d8e76;margin-bottom:8px}.result-amount{font-size:35px;font-weight:750;color:var(--green);letter-spacing:-1.1px;overflow-wrap:anywhere;line-height:1.4}.result-amount span{font-size:13px;font-weight:500;margin-left:5px}.result-equation{font-size:11px;color:#9aa58d;margin:10px 0 0}.result-contact{margin:0 28px 25px;background:#f2f6ed;padding:22px;border-radius:12px;text-align:center}.result-contact>p{font-size:12px;color:#8c9b80}.result-contact .public-agent{border:0;padding:0;margin-bottom:18px;background:none;text-align:left}.result-contact .public-agent p{font-size:12px}.result-disclaimer{padding:19px 28px;border-top:1px solid var(--line);font-size:11px;line-height:1.9;color:#919e87;background:#fafbf7}.privacy-text{white-space:pre-wrap;font-size:13px;line-height:1.95;color:#64745e}.status-shell{max-width:440px;margin:14vh auto;padding:35px;text-align:center}.status-shell .status-code{font-size:70px;color:#c7d9c0;line-height:1;font-weight:650;margin-bottom:28px}.status-shell h1{font-size:22px}.status-shell p{font-size:13px;color:var(--muted)}.status-shell .btn{margin-top:15px}.loading-note{font-size:11px;color:var(--muted);margin:8px 0 0;display:none}form.submitting .loading-note{display:block}.form-divider{display:flex;gap:14px;align-items:center;color:#a3ad9b;font-size:10px;margin:24px 0}.form-divider:before,.form-divider:after{content:"";height:1px;background:#e9eee3;flex:1}.audit-event{font-family:monospace;font-size:11px;color:#6b8170}
@media(min-width:1450px){.metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.metric{padding:21px 18px}.metric-title{font-size:11px}.metric-title svg{width:16px}.metric-value{font-size:30px}}
@media(max-width:1150px){.sidebar{width:207px;padding:28px 15px}.workspace{margin-left:207px}.main{padding:29px 27px}.topbar{padding:0 27px}.split,.columns{grid-template-columns:1fr}.login-art{padding:45px}.login-art h1{font-size:36px}.metric{padding:17px}.metric-value{font-size:28px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:236px;box-shadow:10px 0 45px #143c2415}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.mobile-menu{display:inline-flex}.topbar{height:62px;padding:0 20px}.topbar-right{gap:14px}.topbar-right .live-dot{display:none}.main{padding:25px 18px}.page-head{align-items:start;margin-bottom:22px}.page-head h1{font-size:24px}.page-head p{font-size:11px}.page-head .eyebrow{font-size:9px}.head-actions .btn{padding:9px 11px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{padding:16px}.metric-value{font-size:27px;margin-top:12px}.metric-title{font-size:11px}.metric-foot{font-size:9px}.welcome-card{padding:22px}.welcome-card h2{font-size:18px}.welcome-card .orb{width:56px;height:56px;border-radius:17px;margin-right:0}.welcome-card .orb svg{width:29px;height:29px}.welcome-card p{font-size:11px}.panel{padding:19px}.panel.flush .panel-head{padding:19px 19px 0}th,td{padding:14px 17px}.columns{gap:0}.field-row{grid-template-columns:1fr;gap:0}.login-shell{grid-template-columns:1fr}.login-art{padding:30px 28px;min-height:auto}.login-art-content{margin-top:36px}.login-art h1{font-size:29px;line-height:1.5;margin-bottom:12px}.login-art p{font-size:11px;max-width:100%}.login-art .feature-chips{display:none}.login-art .brand-sub{display:none}.login-main{padding:33px 28px 45px;align-items:start}.login-card{max-width:440px}.login-card h2{font-size:23px}.login-card .sub{margin-bottom:24px}.notice-actions{flex-direction:column;gap:12px}.public-shell{padding:20px 14px 30px}.public-head{padding:0 5px;margin-bottom:20px}.public-intro{padding:26px 24px 21px}.public-body{padding:24px}.result-top{padding:29px 23px 23px}.result-amount{font-size:31px}.result-contact{margin:0 23px 23px}.detail-grid{gap:18px}.qr-box{padding:18px}.bar-chart{gap:12px}.summary-strip{gap:18px}.filters .field{min-width:calc(50% - 10px);flex:1}.filters .search{min-width:100%}.filters .btn{flex:1}.topbar .crumb{display:none}.public-card{border-radius:15px}.sidebar-note{display:none}.sidebar-bottom{padding-top:15px}.pagination{padding:16px}.brand{font-size:21px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.bar-chart{overflow-x:auto}.bar-col{min-width:28px}.sidebar nav{overflow-y:auto;min-height:0}.sidebar-bottom{flex-shrink:0}.login-art{background:var(--mint)}.public-intro{background:linear-gradient(135deg,var(--mint),#fff)}.welcome-card{background:var(--mint)}
