:root{--ws-green:#116b58;--ws-ink:#203b35;--ws-line:#dde5e1;--ws-muted:#6f8078}html,body{background:#f4f6f5;color:#253b34;font-family:'Microsoft YaHei UI','PingFang SC',system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #81b9a5;outline-offset:2px}.ws-app{min-height:100vh;font-size:13px}.ws-sidebar{width:224px;position:fixed;inset:0 auto 0 0;background:#152e2a;color:#d5e4df;display:flex;flex-direction:column;padding:30px 18px 18px;z-index:40}.ws-brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:650;padding:0 6px}.ws-brand>span{background:#d9eee3;color:#214b3d;border-radius:10px;padding:9px 7px;font-size:16px;letter-spacing:1px}.ws-brand small{display:block;font-size:10px;font-weight:400;color:#9db4ac;letter-spacing:1px;margin-top:5px}.ws-nav-label{margin:38px 14px 13px;color:#829c91;font-size:10px;letter-spacing:3px}.ws-sidebar nav{display:flex;flex-direction:column;gap:7px;flex:1;overflow:auto}.ws-sidebar nav button{text-align:left;padding:13px 14px;border-radius:7px;display:flex;gap:17px;align-items:center;font-size:14px;color:#b9cfc5}.ws-sidebar nav button>span{font-size:10px;opacity:.5;font-family:monospace}.ws-sidebar nav button:hover{background:#24423a}.ws-sidebar nav button.active{background:#d8e9df;color:#183c30;font-weight:650}.ws-identity{border-top:1px solid #355045;margin-top:28px;padding:20px 10px 0}.ws-identity strong{font-size:14px;display:block;color:#f2f6f3}.ws-identity small{color:#91ad9f;display:block;margin:8px 0 18px;font-size:11px}.ws-identity>div{display:flex;gap:24px}.ws-identity button{font-size:11px;color:#b7cbc0}.ws-body{margin-left:224px;min-width:0}.ws-top{height:72px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--ws-line);padding:0 30px;background:#fff;position:sticky;top:0;z-index:25}.ws-top>span{white-space:nowrap;color:#839389;font-size:12px}.ws-top b{color:#425d50;font-weight:500}.ws-search{margin-left:auto;display:flex;background:#f5f7f5;border:1px solid var(--ws-line);border-radius:7px;width:min(380px,40%);height:36px}.ws-search input{background:transparent;border:0;padding:0 12px;min-width:0;flex:1;outline-offset:0}.ws-search button{color:var(--ws-green);font-size:12px;padding:0 12px}.ws-menu{display:none}.ws-main{padding:30px;max-width:1920px;margin:auto;min-height:calc(100vh - 116px)}.ws-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.ws-eyebrow{font:10px monospace;letter-spacing:2px;color:#84978c;margin-bottom:8px}.ws-heading h1{font-size:27px;color:#203d31;font-weight:650;letter-spacing:.5px;margin:0}.ws-heading p{color:#7c8c83;font-size:12px;margin:8px 0 0}.ws-scope{color:#627e6c;background:#eaf0eb;padding:7px 11px;border-radius:5px;font-size:11px}.ws-tabs{display:flex;gap:25px;border-bottom:1px solid var(--ws-line);margin-bottom:24px}.ws-tabs button{padding:3px 4px 13px;color:#74877b;border-bottom:2px solid transparent}.ws-tabs button.active{color:var(--ws-green);border-color:var(--ws-green);font-weight:650}.ws-panel{border:1px solid var(--ws-line);background:#fff;border-radius:10px;overflow:hidden}.ws-panel-title{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:19px 22px;border-bottom:1px solid #edf1ed}.ws-panel-title h2{font-size:15px;font-weight:650;margin:0;color:#2a4838}.ws-panel-title small{color:var(--ws-muted);font-size:11px}.ws-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce5df;border-radius:6px;padding:8px 13px;background:#fff;color:#4c6456;font-size:12px;white-space:nowrap;line-height:1.4}.ws-btn:hover{background:#f1f6f2;border-color:#a6c1b0}.ws-btn.primary{background:var(--ws-green);border-color:var(--ws-green);color:white}.ws-toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.ws-filters{padding:20px 22px 17px}.ws-filters input,.ws-filters select,.ws-pager select{border:1px solid #dae3dc;border-radius:6px;background:#fff;padding:9px 10px;color:#435e4f;font-size:12px;min-width:0}.ws-grow{flex:1;min-width:210px!important}.ws-advanced{display:flex;gap:13px;align-items:end;flex-wrap:wrap;margin-top:17px;padding-top:15px;border-top:1px dashed #e0e8e1}.ws-advanced label{display:flex;flex-direction:column;gap:7px;color:#7b8f7e;font-size:11px}.ws-summary{border-top:1px solid #edf1ed;display:flex;align-items:center;gap:20px;padding:13px 22px;color:#798e7f;font-size:11px;flex-wrap:wrap}.ws-summary b{font-weight:600;color:#415e4b}.ws-summary strong{margin-left:6px;color:#2f523b}.ws-summary small{margin-left:auto;color:#8c9b90}.ws-summary button{color:var(--ws-green)}.ws-table-wrap{max-width:100%;overflow:auto}.ws-table{border-collapse:collapse;width:100%;font-size:12px}.ws-table thead{background:#f5f8f5;color:#728676}.ws-table th{font-size:11px;font-weight:500;text-align:left;white-space:nowrap;padding:13px 16px;position:sticky;top:0;background:#f5f8f5}.ws-table td{padding:17px 16px;border-top:1px solid #edf1ed;vertical-align:middle;white-space:nowrap;color:#56715c}.ws-table tr:hover td{background:#f8fbf8}.ws-table small{display:block;color:#96a297;font-size:10px;margin-top:5px}.ws-table th:first-child,.ws-table td:first-child{padding-left:22px}.ws-table td:last-child{background:#fff;position:sticky;right:0}.ws-date{font-size:10px!important;color:#839387!important}.ws-mono{font-family:Consolas,monospace}.ws-link{color:var(--ws-green);font-size:12px;text-align:left}.ws-link:hover{text-decoration:underline}.ws-project-name{color:#314e3a;font-weight:550;max-width:300px;overflow:hidden;text-overflow:ellipsis;display:block}.ws-status{border-radius:4px;padding:4px 7px;font-size:10px;display:inline-block;background:#edf0ed;color:#77857a}.ws-status.s0{background:#fcf3df;color:#a28036}.ws-status.s1{background:#eaf1f8;color:#4f7c9c}.ws-status.s2{background:#e9f3eb;color:#438657}.ws-pager{display:flex;gap:10px;align-items:center;justify-content:flex-end;padding:16px 22px;border-top:1px solid #eaf0ea;font-size:11px}.ws-pager>span{margin-right:auto;color:#7b8c7d}.ws-empty{padding:60px 25px;text-align:center;color:#95a297;font-size:13px}.ws-views,.ws-options{padding:12px 22px;border-bottom:1px solid #edf1ed;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:11px;color:#849587}.ws-views>span:not(:first-child){border:1px solid #dce7de;border-radius:5px;color:#50705a;background:#f4f8f4}.ws-views button{padding:5px 8px}.ws-options label{display:flex;gap:7px;align-items:center}.ws-warning{margin:12px 0;padding:13px 18px;background:#fff5e3;border:1px solid #ead4a5;border-radius:7px;color:#986c29;font-size:12px}.ws-panel>.ws-warning{margin:0 22px 15px}.ws-error{color:#af5747!important}.ws-note{padding:13px 22px;font-size:11px;color:#819184;background:#f8faf7;line-height:1.8}.ws-stack{display:grid;gap:22px}.ws-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ws-metrics>div{background:#fff;border:1px solid var(--ws-line);border-radius:9px;padding:22px}.ws-metrics span{color:#7a8d7c;font-size:12px}.ws-metrics strong{font-size:32px;color:#284c35;display:block;margin-top:12px;font-weight:550;font-variant-numeric:tabular-nums}.ws-chart{padding:25px 22px;display:flex;gap:14px;align-items:flex-end;overflow-x:auto;max-height:240px}.ws-chart>button{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-width:30px;font-size:10px;color:#829985}.ws-chart i{display:block;width:24px;max-width:100%;background:#7da98c;border-radius:4px 4px 0 0}.ws-chart button:hover i{background:var(--ws-green)}.ws-footer{text-align:center;padding:14px;color:#9aa99d;font-size:10px;letter-spacing:1px}.ws-search-results{margin-bottom:24px}.ws-search-row{display:block;text-align:left;width:100%;padding:14px 22px;border-bottom:1px solid #edf1ed}.ws-search-row:hover{background:#f3f8f3}.ws-search-row b{font-size:13px;color:#436249;font-weight:500}.ws-search-row small{display:block;font-size:11px;margin-top:5px;color:#8a9e8d}.dense .ws-table td{padding-top:9px;padding-bottom:9px}.ws-main .bg-primary{background-color:var(--ws-green)}.ws-main .text-primary{color:var(--ws-green)}.ws-main .font-headline{font-family:inherit}.ws-main .tracking-\[0\.16em\]{letter-spacing:.03em}.ws-main .rounded-xl{border:1px solid var(--ws-line);border-radius:10px}.ws-main .shadow-sm{box-shadow:none}.ws-main .rounded-2xl{border-radius:9px}.ws-main .text-3xl{font-size:27px}.ws-main .text-4xl{font-size:32px}.ws-main .space-y-6>*,.ws-main .space-y-8>*{min-width:0}.ws-main .ws-table{min-width:700px}.ws-main .text-slate-900{color:#294733}.ws-main .bg-surface-container-lowest{background:#fff}.ws-main .bg-surface-container-low{background:#f4f7f3}.ws-main .text-on-surface-variant{color:#7c8c7d}.ws-main input[type=checkbox]{accent-color:#116b58}.ws-shade{display:none}@media(max-width:1100px){.ws-main{padding:24px 18px}.ws-top{padding:0 18px;gap:12px}.ws-top>span{display:none}.ws-search{margin-left:0;width:auto;flex:1}.ws-panel-title{flex-wrap:wrap}.ws-metrics{gap:10px}.ws-metrics>div{padding:16px}}@media(max-width:760px){.ws-sidebar{transform:translateX(-100%);transition:transform .2s}.ws-sidebar.is-open{transform:translateX(0)}.ws-body{margin-left:0}.ws-menu{display:block;font-size:20px;color:var(--ws-green)}.ws-top{height:62px;gap:9px}.ws-top>.ws-btn{padding:8px;font-size:11px}.ws-main{padding:22px 12px}.ws-heading h1{font-size:24px}.ws-heading p{font-size:10px;max-width:230px;line-height:1.7}.ws-scope{font-size:9px;padding:6px}.ws-metrics{grid-template-columns:repeat(2,1fr)}.ws-summary{gap:10px}.ws-summary small{margin-left:0;width:100%}.ws-panel-title,.ws-filters{padding:16px}.ws-pager{flex-wrap:wrap;padding:12px}.ws-pager>span{width:100%}.ws-shade{display:block;position:fixed;inset:0;background:#152e2a70;z-index:35}.ws-table td{padding:13px}.ws-advanced label{width:calc(50% - 8px)}.ws-advanced input{width:100%}.ws-identity{padding-bottom:12px}}

.ws-panel>.ws-table-wrap{max-height:620px}.ws-metrics>.ws-metric-link{text-align:left;background:#fff;border:1px solid var(--ws-line);border-radius:9px;padding:22px;position:relative;overflow:hidden}.ws-metric-link:before{content:"";width:3px;position:absolute;left:0;top:20px;bottom:20px;background:#719883}.ws-metric-link small{font-size:10px;color:#8ba492;display:block;margin-top:12px}.ws-metric-link:hover{border-color:#85ae96}.ws-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:22px}.ws-source-row{display:block;width:100%;text-align:left;padding:22px;border-bottom:1px solid #edf1ed}.ws-source-row>div{display:flex;align-items:center;justify-content:space-between}.ws-source-row b{font-size:13px;font-weight:550;color:#426449}.ws-source-row small{font-size:11px;color:#8a9f8c;display:block;margin-top:15px}@media(max-width:950px){.ws-overview-grid{grid-template-columns:minmax(0,1fr)}}

.ws-section-title{font-size:14px;font-weight:600;color:#385940}.ws-api-overview{border-top:3px solid #507d99}.ws-api-overview .ws-panel-title small{display:block;margin-top:6px}.ws-api-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:20px 10px}.ws-api-metrics>button{text-align:left;padding:8px 18px;border-right:1px solid #e6ece7}.ws-api-metrics>button:last-child{border-right:0}.ws-api-metrics span{color:#778b7d;font-size:12px}.ws-api-metrics strong{display:block;font-size:28px;font-weight:550;color:#295368;margin:12px 0}.ws-api-metrics small{font-size:10px;color:#8a9e99}.ws-api-metrics>button:hover{background:#f4f8fa}.ws-chart-bar{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-width:30px;font-size:10px;color:#829985}.ws-api-overview .ws-chart i{background:#759aac}@media(max-width:760px){.ws-api-metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}.ws-api-metrics>button:nth-child(2n){border-right:0}}

.ws-api-breakdown{margin-top:24px}.ws-api-splits{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;min-width:0}.ws-api-splits>div{min-width:0}.ws-api-overview select{padding:8px;border:1px solid #d9e2df;border-radius:6px;background:white}@media(max-width:900px){.ws-api-splits{grid-template-columns:1fr}}

.ws-main .ws-api-splits .ws-table{min-width:370px}.ws-api-splits .ws-table td,.ws-api-splits .ws-table th{padding-left:18px;padding-right:18px}
