:root{font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;color:#2f3b4c;background:#f5f6f8;font-size:14px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f5f6f8}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,.drawer-close:focus-visible,.action-drawer .link:focus-visible{outline:2px solid #8aaeff;outline-offset:2px}input:focus,select:focus{border-color:#3182f3;box-shadow:0 0 0 2px #ddebff}header{height:58px;background:#fff;border-bottom:1px solid #e4e8ef;display:flex;align-items:center;padding:0 max(24px,calc((100% - 1440px)/2));gap:34px}.brand{display:inline-flex;align-items:center;gap:8px;font-size:19px;font-weight:700;color:#2878eb;letter-spacing:.5px;white-space:nowrap}.brand-mark{width:30px;height:30px;flex:0 0 auto}.module{font-size:16px;color:#26364b;border-left:1px solid #e7eaf0;padding-left:30px}.module span,.demo{font-size:12px;color:#8591a3;margin-left:7px}.header-right{margin-left:auto;display:flex;align-items:center;gap:22px;color:#647286}.header-right button{border:0;background:transparent;color:#2878eb}.header-right span{display:flex;align-items:center;gap:5px}.mainnav{height:46px;background:#fff;border-bottom:1px solid #dde3eb;display:flex;padding:0 max(24px,calc((100% - 1440px)/2));overflow:auto}.mainnav button{border:0;background:#fff;color:#455468;padding:0 20px;white-space:nowrap;border-bottom:3px solid transparent}.mainnav button:hover,.mainnav button.active{color:#2878eb;border-bottom-color:#2878eb;background:#f8fbff}.crumb{height:38px;display:flex;align-items:center;max-width:1440px;margin:auto;color:#8b96a7;font-size:12px}.crumb b{color:#59687b}.content{max-width:1440px;margin:0 auto 60px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;padding:18px 0}.page-head h1{font-size:20px;margin:0 0 7px;font-weight:600;color:#29384a}.page-head p{margin:0;color:#7a8798;font-size:12px}.metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.metrics article,.panel,.form-card,.chart-card{background:#fff;border:1px solid #e3e8ef;border-radius:3px;box-shadow:0 1px 2px #dce3ec40}.metrics article{padding:16px 17px;min-width:0}.metrics span{display:block;color:#768498;font-size:13px}.metrics strong{display:block;font-size:23px;margin:8px 0;color:#26364b;font-weight:600}.metrics small{color:#9aa5b4;font-size:12px}.metrics i{font-style:normal;color:#36a56a}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.panel{margin-top:14px;padding:0}.panel-title{min-height:48px;padding:0 17px;border-bottom:1px solid #e8edf3;display:flex;align-items:center;justify-content:space-between}.panel-title b{font-weight:600;color:#344256}.submission{display:flex;align-items:center;padding:20px 18px;gap:34px}.submission>div{display:flex;flex-direction:column;gap:5px}.submission strong{font-size:24px}.submission span{color:#7d8a9a;font-size:12px}.blue{color:#2878eb}.orange{color:#e79731}.btn{background:#3182f3;border:1px solid #3182f3;color:#fff;border-radius:3px;padding:7px 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.btn:hover{background:#176ddd}.btn.secondary{background:#fff;color:#2878eb;border-color:#bcd8ff}.btn.secondary:hover{background:#f2f7ff}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:780px}th{height:43px;text-align:left;color:#708095;background:#f8fafc;font-weight:400;border-bottom:1px solid #e7ecf2;padding:0 14px;white-space:nowrap}td{height:47px;padding:0 14px;border-bottom:1px solid #edf0f4;color:#435166;white-space:nowrap}tr:last-child td{border-bottom:0}.tag{font-size:12px;border-radius:2px;padding:3px 7px}.success{background:#eff9f2;color:#29935e}.warning{background:#fff7e9;color:#d78921}.muted{background:#f0f2f4;color:#8994a1}.link{border:0;background:transparent;color:#2878eb;margin-right:9px;display:inline-flex;gap:4px;align-items:center}.link:focus-visible{outline:2px solid #8aaeff}.locked{color:#8994a1;display:inline-flex;gap:4px;align-items:center}.filters{display:flex;align-items:flex-end;gap:10px}.filters label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#758296}.filters select{height:31px;border:1px solid #d9e0e9;color:#536176;background:#fff;border-radius:2px;padding:0 27px 0 8px}.chart-card{padding:15px 16px;min-height:175px}.chart-card>div:first-child{display:flex;justify-content:space-between}.chart-card b{font-weight:600}.tiny{font-size:12px;color:#9ca6b5}.chart-card svg{width:100%;height:94px;margin-top:8px}.grid{stroke:#e9edf2;stroke-width:1}.line,.greenline{fill:none;stroke:#3382f2;stroke-width:2.2}.greenline{stroke:#3db77a}.axis{display:flex;justify-content:space-between;color:#9ca7b6;font-size:11px}.chart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sort-row{padding:13px 16px;border-bottom:1px solid #e7ecf2;display:flex;align-items:center;gap:8px}.sort-row>span{color:#738196;font-size:12px;margin-right:5px}.sort{background:#fff;border:1px solid #dce4ee;border-radius:2px;padding:5px 10px;color:#647286}.sort.active{border-color:#3182f3;color:#2878eb;background:#f4f9ff}.ranking-list{padding:0 18px}.rank{min-height:76px;display:grid;grid-template-columns:46px 1.4fr repeat(4,minmax(82px,1fr)) .95fr;align-items:center;border-bottom:1px solid #edf0f4;color:#667487;column-gap:8px;padding:8px 0}.rank:last-child{border-bottom:0}.rank-no{color:#8793a4}.rank-no.n0{color:#df9133}.rank-no.n1{color:#71849b}.rank-no.n2{color:#b78455}.rank strong{color:#344256}.rank em{font-style:normal;color:#2878eb;font-size:16px;font-weight:600}.rank-field{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-rate{justify-self:end}.form-page{max-width:780px;margin:auto}.form-card{padding:0 26px 25px}.demo-strip{background:#f4f8fd;border:1px solid #d9e9ff;color:#5480b6;font-size:12px;padding:9px 11px;margin:0 -26px 22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}.form-grid label{display:flex;flex-direction:column;gap:7px;color:#5e6d80;font-size:13px}.form-grid input{height:36px;border:1px solid #d7e0ea;padding:0 10px;border-radius:2px;outline:none}.form-grid input[readonly]{color:#8290a1;background:#f8fafc}.field-error{font-size:12px;color:#c74a4a;margin-top:4px}.form-grid input[aria-invalid=true]{border-color:#e28c8c}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.success-box{background:#effaf3;color:#258e5b;border:1px solid #ccebd8}.error-box{background:#fff4f4;color:#b12e2e;border:1px solid #f3c2c2}.success-box,.error-box{margin-top:18px;padding:12px}.success-box small{display:block;margin-top:5px;color:#5f9a79}.error-box small{color:#8c3a3a}.simple-list>div{padding:16px 18px;border-bottom:1px solid #edf0f4;display:flex;gap:18px;align-items:center}.simple-list span{color:#2878eb}.simple-list .link{margin-left:auto}.empty{padding:27px 18px;line-height:1.9;color:#536176}.empty small{color:#8895a5}.empty-tip{margin:0;padding:16px;color:#7f8c9f;background:#f9fbfe}.toast{position:fixed;right:26px;bottom:24px;background:#29394c;color:#fff;border-radius:3px;padding:12px 15px;display:flex;gap:8px;align-items:center;box-shadow:0 5px 18px #1c2e4444;z-index:5}.login{min-height:100vh;background:#f4f6f9;display:grid;place-items:center;padding:24px}.login-card{width:min(760px,100%);background:#fff;border:1px solid #e2e7ee;box-shadow:0 5px 20px #34465b10;padding:36px}.login .big{font-size:22px}.login .brand-mark{width:36px;height:36px}.login h1{font-size:25px;margin:22px 0 5px}.login p{color:#7c8999;margin:0 0 18px}.login .demo-strip{margin:0 0 20px}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.role-grid button{min-height:148px;background:#fff;border:1px solid #dfe6ee;border-radius:3px;text-align:left;padding:19px;color:#667488;display:flex;flex-direction:column;gap:10px}.role-grid button:hover{border-color:#3182f3;background:#f7fbff}.role-grid svg{font-size:20px;color:#3182f3}.role-grid b{font-size:16px;color:#354457}.role-grid span{font-size:12px;line-height:1.55}.action-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e1e3530;display:flex;align-items:flex-start;justify-content:flex-end;padding:18px;z-index:12}.action-drawer{width:min(420px,100%);background:#fff;border:1px solid #dbe2ed;border-radius:4px;box-shadow:0 10px 24px #0f1d2f24}.action-drawer header{height:auto;padding:14px 14px 10px;gap:8px;display:flex;justify-content:space-between;align-items:flex-start}.action-drawer header b{font-size:16px;color:#30465f}.action-drawer header .tiny{margin-top:4px}.drawer-close{border:0;background:transparent;color:#67778d}.drawer-body{padding:0 14px 16px;color:#4f6176;line-height:1.65}.drawer-body p{margin:8px 0}.real-login{max-width:560px}.record-filter{display:flex;flex-direction:column;gap:5px;color:#758296;font-size:12px}.record-filter input{height:31px;border:1px solid #d9e0e9;border-radius:2px;padding:0 8px}.frozen-page .empty strong{color:#66778b}.drawer-fields label{display:flex;flex-direction:column;gap:7px;color:#5e6d80;font-size:13px}.drawer-fields input,.drawer-fields select{height:36px;border:1px solid #d7e0ea;padding:0 10px;border-radius:2px}.frozen-export{color:#7a8798;font-size:12px;border:1px solid #d9e0e9;padding:7px 10px;border-radius:3px;background:#f8fafc}@media(max-width:1000px){header{padding:0 16px}.mainnav{padding:0 16px}.content,.crumb{margin-left:16px;margin-right:16px}.metrics{grid-template-columns:repeat(3,1fr)}.chart-grid{grid-template-columns:repeat(2,1fr)}.page-head{align-items:flex-start}}@media(min-width:601px)and (max-width:1000px){.page-head{flex-wrap:wrap;align-items:flex-start}.page-head h1{margin-bottom:3px}.filters{flex-wrap:wrap;row-gap:8px}}@media(max-width:600px){header{height:52px;gap:12px}.brand{gap:6px;font-size:16px}.brand-mark{width:24px;height:24px}.module{display:none}.header-right{font-size:12px;gap:8px}.mainnav button{padding:0 13px}.content,.crumb{margin-left:10px;margin-right:10px}.page-head{align-items:flex-start;flex-direction:column}.filters{width:100%;flex-wrap:wrap}.metrics{grid-template-columns:repeat(2,1fr);gap:8px}.metrics article{padding:12px}.split,.chart-grid{grid-template-columns:1fr}.submission{gap:18px;flex-wrap:wrap}.form-card{padding:0 15px 20px}.form-card .demo-strip{margin:0 -15px 18px}.form-grid,.role-grid{grid-template-columns:1fr}.login-card{padding:23px}.rank{margin-bottom:8px;grid-template-columns:36px 1fr 1fr;grid-template-rows:auto auto;grid-template-areas:"no name rate" "added first valid" "free . .";align-items:start;row-gap:6px;padding:10px 0}.rank .rank-no{grid-area:no;padding-top:2px}.rank strong{grid-area:name}.rank .rank-added{grid-area:added}.rank .rank-first{grid-area:first}.rank .rank-valid{grid-area:valid}.rank .rank-free{grid-area:free}.rank .rank-rate{grid-area:rate}}@media(max-width:390px){.rank{grid-template-columns:32px 1fr 1fr;grid-template-areas:"no name rate" "added first valid" "free . .";gap:6px;font-size:11px}.rank em{font-size:12px}.rank strong{font-size:13px}}.finance-layout{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:16px}.finance-sources,.finance-view{min-width:0}.finance-source{border:1px solid #e1e6ed;border-radius:3px;margin-bottom:8px;background:#fff}.finance-source.active{border-color:#76a8ef;box-shadow:inset 3px 0 #3182f3}.finance-source-main{width:100%;border:0;background:transparent;text-align:left;padding:10px 12px 6px;display:flex;justify-content:space-between;gap:8px;color:#34465b}.finance-source-main span{color:#77869a;font-size:12px}.finance-source-actions{display:flex;flex-wrap:wrap;gap:2px;padding:0 8px 8px}.finance-source-actions button{border:0;background:transparent;color:#3879cf;font-size:12px;padding:3px 5px}.finance-source-actions button:disabled{color:#b5bdc8}.finance-source-form{border-top:1px solid #e0e5ec;margin-top:14px;padding-top:14px;display:grid;gap:10px}.finance-source-form label{display:grid;gap:5px;color:#65758a;font-size:12px}.finance-source-form input,.finance-source-form textarea{width:100%;border:1px solid #d7e0ea;border-radius:2px;padding:8px 9px;color:#35475d;resize:vertical}.finance-status{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #e3e8ef;padding-bottom:14px}.finance-status p{color:#76869a;margin:5px 0 0}.finance-status dl{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:8px 18px;margin:0}.finance-status dl div{display:grid;grid-template-columns:auto 1fr;gap:5px}.finance-status dt{color:#8793a4}.finance-status dd{margin:0;color:#43556b}.stale-banner{margin:12px 0;padding:10px 12px;border:1px solid #e8b0ab;background:#fff1ef;color:#a43d36}.sheet-tabs{display:flex;gap:2px;overflow-x:auto;margin-top:14px;border-bottom:1px solid #dfe5ed}.sheet-tabs button{border:0;border-bottom:3px solid transparent;background:#f7f9fc;color:#53657b;padding:8px 13px;white-space:nowrap}.sheet-tabs button.active{color:#2878eb;border-bottom-color:#2878eb;background:#fff}.finance-table-wrap{width:100%;overflow:auto;max-height:62vh;border:1px solid #dfe5ec;border-top:0}.finance-table{border-collapse:collapse;min-width:100%;width:max-content;background:#fff}.finance-table td{min-width:110px;max-width:320px;border:1px solid #e0e5eb;padding:7px 9px;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}.cell-formula{display:block;margin-top:3px;color:#8693a4;font-family:Consolas,monospace}.unsupported-cell{color:#a66a22}@media(max-width:1000px){.finance-layout{grid-template-columns:1fr}}@media(max-width:600px){.finance-status{flex-direction:column}.finance-status dl{grid-template-columns:1fr}.finance-table-wrap{max-height:56vh}}
