:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#1e293b;background:#f7f8fa;font-size:14px;line-height:1.5;font-synthesis:none;--blue:#2563eb;--muted:#64748b;--line:#e7ebf1}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--blue);border-radius:7px;background:var(--blue);color:#fff;font-weight:500;padding:8px 14px;cursor:pointer;white-space:nowrap;line-height:1.45}button:hover,.button:hover{filter:brightness(.96)}button:disabled{cursor:default;opacity:.5}button.secondary{background:#fff;border-color:#dce2eb;color:#334155}.small{padding:5px 10px;font-size:12px}button.link-button{padding:4px;border:0;background:transparent;color:var(--muted)}button.danger{color:#dc2626}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #93b4fc;outline-offset:3px}input,select,textarea{border:1px solid #dce2eb;border-radius:7px;padding:8px 10px;background:#fff;color:#334155}select{cursor:pointer;font-size:13px}textarea{resize:vertical;width:100%}input{width:100%}h1,h2,p{margin:0}h1{font-size:23px;font-weight:650;letter-spacing:-.45px}h2{font-size:14px;font-weight:600}code,.num{font-variant-numeric:tabular-nums}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}small,.muted{color:var(--muted);font-size:12px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.sidebar{position:fixed;inset:0 auto 0 0;width:218px;background:#fff;border-right:1px solid var(--line);padding:26px 16px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:650;padding:0 8px;letter-spacing:.2px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:#1d4ed8;border-radius:9px;color:#fff;font-size:13px;letter-spacing:-.5px}.brand-caption{display:block;font-size:10px;line-height:1.7;font-weight:400;color:#8a94a4;letter-spacing:.4px}.nav-label{margin:37px 14px 12px;color:#94a3b8;font-size:11px;letter-spacing:1px}nav{display:grid;gap:6px}nav a{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:7px;color:#637084;font-size:13px}nav a:hover{background:#f6f8fb}nav a.active{background:#eef4ff;color:#245bca;font-weight:600}nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nav-count{margin-left:auto;color:#8c99aa;font-size:11px}.sidebar-bottom{margin-top:auto;padding:15px 12px 1px;font-size:12px;color:#566174}.dot{display:inline-block;width:6px;height:6px;background:#22a06b;border-radius:100%;margin-right:7px}.sidebar-note{display:block;font-size:10px;color:#9aa3b1;margin-top:6px}.workspace{margin-left:218px;min-height:100vh}.topbar{height:65px;padding:0 30px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:15px}.breadcrumb{font-size:12px;color:#8c98a8}.breadcrumb span{margin:0 12px;color:#c3cad4}.breadcrumb strong{font-weight:500;color:#334155}.header-actions{display:flex;align-items:center;gap:11px;font-size:12px;color:#637084}.connection{font-size:11px;margin-right:8px}.connection.ok:before{content:"";display:inline-block;background:#23a477;width:6px;height:6px;border-radius:100%;margin-right:6px}.connection.error{color:#dc2626}.avatar{width:27px;height:27px;display:grid;place-items:center;background:#edf2fb;color:#4870b1;border-radius:50%;font-size:11px}main{padding:27px 30px 0;max-width:1600px;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:20px}.page-head p{font-size:12px;color:var(--muted);margin-top:6px}.toolbar{display:flex;align-items:center;gap:9px}.toolbar label{font-size:12px;color:var(--muted)}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric-card{padding:19px 21px;background:#fff;border:1px solid var(--line);border-radius:10px}.metric-card>span{display:block;font-size:12px;color:#66758a}.metric-card strong{display:block;font-size:28px;font-weight:600;letter-spacing:-.7px;margin:8px 0 6px;line-height:1.2}.metric-card small{font-size:11px;color:#94a0b0}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:19px 21px;gap:10px}.text-link{font-size:12px;color:var(--blue)}.overview-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:20px}.overview-grid>.panel{min-height:285px}.legend{font-size:11px;color:#8c98a8}.legend i{display:inline-block;background:#5687ec;width:8px;height:8px;border-radius:2px;margin-right:6px}.chart{height:217px;padding:0 18px 9px}.chart svg{width:100%;height:100%;overflow:visible}.chart-empty{height:100%;display:grid;place-items:center;color:#94a3b8;font-size:12px}.pool-number{padding:0 22px 17px;display:flex;align-items:baseline;gap:8px}.pool-number strong{font-size:35px;font-weight:600;letter-spacing:-1px}.pool-number span{font-size:12px;color:#94a3b8}.health-list{display:grid;grid-template-columns:1fr 1fr;gap:13px 20px;padding:0 22px 18px}.health-item{font-size:12px;display:flex;align-items:center;gap:6px;color:#6e7a8b}.health-item b{margin-left:auto;color:#334155;font-weight:500}.health-item i{height:6px;width:6px;border-radius:50%;background:#22a06b}.health-item i.warning{background:#e9a23b}.health-item i.error{background:#e25d5d}.health-item i.disabled{background:#b7c0cf}.panel-note{border-top:1px solid #f1f3f6;margin:0 22px;padding:11px 0;color:#8c98a8;font-size:11px}
.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left;font-size:12px}th{font-weight:500;color:#8b97a7;font-size:11px;background:#fafbfd;padding:11px 20px;border-block:1px solid #eef1f5}td{padding:16px 20px;border-bottom:1px solid #f0f2f6;color:#536175}tr:last-child td{border-bottom:0}tr:hover td{background:#fbfcfe}td.num,th.num{text-align:right}td strong{font-weight:550;color:#263347}.cell-sub{display:block;font-size:10px;color:#9aa5b4;margin-top:4px}.cell-actions{display:flex;justify-content:flex-end;gap:4px}.cell-actions button{font-size:11px;padding:4px 7px;border:0;background:transparent;color:#336bd3}.cell-actions button.danger{color:#d45858}.empty-cell{padding:44px 20px!important;text-align:center;color:#9aa5b4}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:5px;background:#edf8f2;color:#279063;font-size:10px;white-space:nowrap}.badge:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor}.badge.warning{color:#ae751f;background:#fff7e8}.badge.error{color:#c65d5d;background:#fdf0f0}.badge.disabled{color:#8993a2;background:#f1f3f6}.quota-cell{min-width:190px}.quota-row{display:grid;grid-template-columns:34px 66px 34px;gap:8px;align-items:center;font-size:10px;margin:4px 0}.quota-track{height:4px;border-radius:4px;background:#edf0f5;overflow:hidden}.quota-track span{display:block;height:100%;background:#64a589;border-radius:4px}.quota-track span.low{background:#e8b04b}.data-note{font-size:11px;color:#95a0af;line-height:1.8;margin:0 0 20px}.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.tabs{display:flex;gap:4px}.tabs button{background:none;border:0;color:#8b97a7;font-size:12px;padding:7px 11px}.tabs button.active{background:#eaf0fb;color:#2c5dad}.tabs span{font-size:10px;margin-left:3px}.inline-summary{font-size:12px;color:#68778a}.inline-summary strong{font-size:17px;color:#334155;margin-right:4px}.inline-summary>span{margin-left:14px;color:#98a1af;font-size:11px}.address-bar{border:1px solid var(--line);border-radius:9px;padding:15px 20px;background:#fff;display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:12px}.address-bar span{font-size:11px;color:#8b97a7;margin-right:18px}.address-bar code{font-size:12px;color:#526176}.usage-totals{display:flex;gap:25px;margin:0 0 17px;color:#8c98a8;font-size:11px}.usage-totals b{font-size:13px;color:#3b495d;margin-left:7px;font-weight:550}.pagination{display:flex;align-items:center;justify-content:space-between;padding:13px 20px;border-top:1px solid var(--line);color:#8b97a7;font-size:11px}.pagination>div{display:flex;gap:7px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.settings-list{margin:0;padding:0 21px 20px;display:grid;grid-template-columns:90px 1fr;gap:15px;font-size:12px}.settings-list dt{color:#94a0b0}.settings-list dd{margin:0;color:#526176;overflow-wrap:anywhere}.panel-actions{padding:0 21px 20px}.resource-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 21px;border-top:1px solid #f1f3f6;font-size:12px;color:#526176}.resource-row:hover{background:#fafbfd}.resource-row small{display:block;font-size:10px;color:#9aa5b4;margin-top:5px}.resource-row>span:last-child{color:#9aa5b4}.workspace-footer{display:flex;justify-content:space-between;padding:18px 30px 24px;color:#a1abba;font-size:10px}.notice,.job-banner{border-radius:7px;padding:11px 15px;font-size:12px;margin-bottom:16px;color:#386ea4;background:#eff6ff;border:1px solid #dbe9fa}.notice.error{color:#bf5656;background:#fff5f5;border-color:#f6dedf}.job-banner{background:#f1f5ff;color:#617fae}
dialog{width:min(460px,calc(100vw - 32px));border:1px solid #e4e9f1;border-radius:12px;padding:24px;color:#334155;box-shadow:0 20px 80px #14213c26;max-height:85vh;overflow-y:auto}dialog::backdrop{background:#14213c55}dialog.wide-dialog{width:min(750px,calc(100vw - 32px))}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px}.dialog-heading h2{font-size:17px}dialog p{margin:12px 0;font-size:12px;line-height:1.75}dialog form>label{display:block;margin:14px 0 7px;font-size:12px}dialog form>button{margin-top:16px}dialog .dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}details{border-top:1px solid var(--line);padding-top:16px;margin-top:20px;font-size:12px}summary{cursor:pointer;color:#65748b}details textarea{margin:9px 0}details label{font-size:11px}.test-result{background:#f8fafc;border-top:1px solid var(--line);padding:16px 21px}.test-result pre{white-space:pre-wrap;font-size:12px;color:#266a56}.detail-meta{background:#f8fafc;border-radius:7px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:13px;font-size:12px;margin-bottom:18px}.detail-meta span{color:#94a0b0;display:block;font-size:10px;margin-bottom:4px}.detail-quotas{border:1px solid var(--line);border-radius:7px;overflow:hidden}.detail-quotas table{font-size:11px}.detail-quotas th,.detail-quotas td{padding:11px 12px}.login-page{display:grid;place-items:center;min-height:100vh;background:#f8fafc}.login-wrap{width:380px;max-width:calc(100vw - 36px);padding:0}.login-wrap .brand{justify-content:center;margin-bottom:27px}.login-panel{padding:28px;border-radius:10px;margin:0}.login-panel h1{font-size:21px}.login-panel>p{margin:7px 0 22px}.login-panel label{display:block;font-size:12px;margin:17px 0 7px;color:#617083}.login-panel input{padding:10px 12px;font-size:13px}.login-panel .wide{width:100%;margin-top:23px;padding:10px}.login-panel #login-message{font-size:12px;color:#c45858;margin:14px 0 0}.login-wrap .local-note{font-size:10px;text-align:center;color:#a1abba;margin-top:19px}.brand-detail{font-size:12px;font-weight:400;color:#7c8b9d}
@media(min-width:1550px){main{padding-top:35px}.metric-card{padding:22px}.chart{height:240px}}
@media(max-width:1080px){.sidebar{width:185px;padding:25px 12px}.workspace{margin-left:185px}main{padding:25px 22px 0}.topbar{padding:0 22px}.metric-grid{gap:11px}.metric-card{padding:16px}.metric-card strong{font-size:25px}.overview-grid{grid-template-columns:1.4fr 1fr;gap:15px}.section-toolbar{flex-wrap:wrap}td,th{padding-left:14px;padding-right:14px}.connection{display:none}.inline-summary>span{display:none}}
@media(max-width:760px){.sidebar{position:static;width:100%;padding:15px 16px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand{font-size:16px;padding:0}.brand-caption,.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:3px;margin-top:15px;overflow:auto}.sidebar nav a{font-size:12px;padding:8px 10px;gap:6px;white-space:nowrap}.sidebar nav svg{width:15px;height:15px}.nav-count{display:none}.workspace{margin-left:0}.topbar{height:48px;padding:0 18px}.header-actions{gap:8px}.header-actions .avatar{display:none}main{padding:23px 16px 0}.page-head{align-items:flex-start;gap:10px}.page-head h1{font-size:21px}.page-head p{font-size:11px;max-width:190px}.page-head .toolbar{gap:5px}button,.button{font-size:12px;padding:8px 10px}select{max-width:170px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric-card strong{font-size:26px}.overview-grid,.settings-grid{grid-template-columns:1fr}.section-toolbar>.toolbar{flex-wrap:wrap}.chart{height:220px}.overview-grid>.panel{min-height:0}.data-note{font-size:10px}.address-bar{align-items:flex-start;padding:14px}.address-bar span{display:block;margin-bottom:7px}.address-bar code{font-size:10px}.usage-totals{flex-wrap:wrap;gap:8px 18px}.workspace-footer{padding:15px 16px}.detail-meta{grid-template-columns:1fr 1fr}}
.model-options{display:grid;gap:4px;max-height:300px;overflow:auto}.model-option{display:flex!important;align-items:center;gap:10px;padding:7px 0;margin:0!important;font-size:12px;overflow-wrap:anywhere}.model-option input{width:15px;height:15px;flex:0 0 15px;accent-color:#4d83db}fieldset{border:1px solid var(--line);border-radius:7px;margin:18px 0 0;padding:10px 14px}legend{font-size:12px;padding:0 5px}.test-controls{display:grid;gap:9px}.test-controls label{font-size:11px;color:#8b98aa}.test-controls select{max-width:100%}.test-controls button{justify-self:start;margin-top:7px}

.model-options[hidden]{display:none}.model-option:has(input:disabled){color:#99a3b3}fieldset>select{width:100%;margin:4px 0 8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
