:root{color:#1e2422;background:#eef2ef;font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:1180px;min-height:100vh}.login-page{min-height:100vh;display:grid;place-items:center;background:#eef2ef}.login-panel{width:380px;padding:28px;background:#fff;border:1px solid #dce4df;border-radius:8px}.login-form{margin-top:24px}.admin-shell{min-height:100vh}.admin-sider{background:#17211f!important;border-right:1px solid #223431}.brand{height:86px;padding:22px 22px 18px;color:#eef7f3;border-bottom:1px solid #263a36}.brand span{display:block;color:#8cb8ad;font-size:13px;font-weight:700;letter-spacing:0}.brand strong{display:block;margin-top:4px;font-size:24px;line-height:1}.nav-list{display:grid;gap:6px;padding:16px 12px}.nav-item{width:100%;height:38px;border:0;border-radius:6px;padding:0 12px;background:transparent;color:#b6c5c0;cursor:pointer;font:inherit;text-align:left}.nav-item.active,.nav-item:hover{background:#253a36;color:#fff}.admin-header{min-height:86px;height:auto;padding:18px 28px;line-height:normal;background:#f7f9f7;border-bottom:1px solid #dce4df;display:flex;align-items:center;justify-content:space-between;gap:24px}.admin-title{min-width:0;display:grid;gap:4px}.admin-title h3.ant-typography{margin:0!important;line-height:1.25}.admin-title .ant-typography{line-height:1.45}.admin-content{padding:24px;background:#eef2ef}.page-toolbar,.admin-section{background:#fff;border:1px solid #dce4df;border-radius:8px}.page-toolbar{min-height:72px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.page-toolbar h4.ant-typography{margin:0 0 4px!important}.admin-section{padding:18px}.empty-state{min-height:220px;display:grid;place-items:center;gap:12px}.ant-table-wrapper{background:#fff;border:1px solid #dce4df;border-radius:8px;overflow:hidden}.ant-table-cell{overflow-wrap:anywhere}.table-actions{width:100%;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.table-actions .ant-btn{min-width:72px;padding-inline:12px}.table-actions.compact .ant-btn{min-width:58px}.amount-positive{color:#1f8a4c;font-weight:700}.amount-negative{color:#b42318;font-weight:700}.amount-muted{color:#667085;font-weight:600}.drawer-alert{margin-bottom:16px}.node-primary{min-width:0;display:grid;gap:4px}.node-primary strong,.node-primary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-primary span{color:#6f7d79;font-size:12px}.worker-secret-modal{display:grid;gap:8px}.worker-secret-modal .ant-typography{max-width:100%}.worker-secret-value{display:block;padding:10px 12px;border-radius:6px;background:#f4f7f5;border:1px solid #dce4df;white-space:normal;overflow-wrap:anywhere;word-break:break-all}.node-filter{width:132px}.autodl-form-row{align-items:flex-start}.autodl-form-row .ant-form-item{flex:1;min-width:0}.task-filter-grid{display:grid;grid-template-columns:140px 150px 130px minmax(180px,1fr) minmax(240px,1.3fr) 96px;gap:10px;align-items:center}.simple-filter-grid{display:grid;grid-template-columns:150px minmax(280px,1fr) 96px;gap:10px;align-items:center}.order-filter-grid{display:grid;grid-template-columns:140px 130px 120px minmax(260px,1fr) 96px;gap:10px;align-items:center}.task-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card,.info-item{min-width:0;border:1px solid #dce4df;border-radius:8px;background:#fff}.metric-card{min-height:84px;padding:14px 16px}.metric-card span,.info-item span{display:block;color:#6f7d79;font-size:12px}.metric-card strong{display:block;margin-top:8px;color:#20312e;font-size:20px;line-height:1.2;overflow-wrap:anywhere}.metric-card strong .ant-tag{margin-inline-end:0}.task-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.info-item{min-height:58px;padding:10px 12px;background:#f7f9f7}.info-item strong{display:block;margin-top:4px;color:#20312e;line-height:1.35;overflow-wrap:anywhere}.task-media-group{display:grid;gap:10px}.task-media-group+.task-media-group{margin-top:16px}.task-media-group-title{color:#40534e;font-size:13px;font-weight:700}.task-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task-media-card{min-width:0;overflow:hidden;border:1px solid #dce4df;border-radius:8px;background:#f7f9f7}.task-media-header{min-height:56px;padding:10px 12px;display:grid;gap:3px;border-bottom:1px solid #dce4df}.task-media-header strong,.task-media-header span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-media-header strong{color:#20312e}.task-media-header span{color:#6f7d79;font-size:12px}.task-media-frame{width:100%;aspect-ratio:16 / 9;display:grid;place-items:center;background:#17211f}.task-media-frame a,.task-media-frame img,.task-media-frame video{width:100%;height:100%}.task-media-frame img,.task-media-frame video{display:block;object-fit:contain}.json-block{max-height:560px;margin:0;padding:14px;overflow:auto;border:1px solid #dce4df;border-radius:8px;background:#17211f;color:#e6f1ed;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55}.json-editor textarea{min-height:220px!important;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55}.json-editor.small textarea{min-height:108px!important}.full-width{width:100%}.form-row{width:100%;align-items:flex-start}.form-row>.ant-space-item{flex:1}.form-row .ant-form-item,.form-row .ant-input-number{width:100%}.email-template-block{border-top:1px solid #dce4df;padding-top:16px}.email-template-block:first-child{border-top:0;padding-top:0}.email-template-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.email-template-heading h5.ant-typography{margin:0}.analysis-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 18px;padding:12px;background:#f7f9f7;border:1px solid #dce4df;border-radius:6px;font-size:12px}.analysis-panel strong{display:block;margin-bottom:4px;color:#2f4d48}.calibration-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.calibration-hero>div,.calibration-section{border:1px solid #dce4df;border-radius:8px;background:#fff}.calibration-hero>div{min-height:76px;padding:14px 16px}.calibration-hero h4.ant-typography{margin:4px 0 0!important;line-height:1.2}.calibration-status{margin-top:7px}.calibration-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.calibration-section{padding:16px}.calibration-section h5.ant-typography{margin:0 0 12px!important}.preset-limit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.preset-limit-item{min-height:58px;padding:10px;border:1px solid #dce4df;border-radius:6px;background:#f7f9f7}.preset-limit-item span{display:block;color:#697974;font-size:12px}.preset-limit-item strong{display:block;margin-top:4px;color:#20312e;font-size:16px;line-height:1.2}.calibration-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calibration-upload-item,.calibration-upload-grid .ant-upload,.calibration-upload-grid .ant-upload-wrapper,.calibration-upload-grid .ant-upload-drag,.calibration-upload-grid .ant-upload-btn{width:100%;height:100%}.calibration-upload-grid .ant-upload-drag{min-height:314px;display:flex;align-items:center;overflow:hidden}.calibration-upload-grid .ant-upload-btn{padding:0!important}.calibration-upload-empty,.calibration-media-drop{width:100%;min-height:314px;display:grid;place-items:center}.calibration-upload-empty{align-content:center;gap:8px}.calibration-upload-empty strong,.calibration-upload-empty span,.calibration-media-name{display:block}.calibration-upload-empty span,.calibration-media-name{color:#6f7d79;font-size:12px}.calibration-media-drop{position:relative;background:#15201d}.calibration-media-preview{width:100%;height:314px;display:block;object-fit:contain}.calibration-media-name{position:absolute;left:12px;right:12px;bottom:10px;padding:6px 8px;border-radius:6px;background:#141f1cbd;color:#eef7f3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.section-heading{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading h5.ant-typography{margin:0!important}.calibration-result-video{width:100%;margin-top:12px;border:1px solid #dce4df;border-radius:6px;background:#17211f}.calibration-result-video{max-height:420px}.calibration-history{margin-top:12px;display:grid;gap:8px}.calibration-history-title{color:#40534e;font-size:13px;font-weight:700}.calibration-history-item{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dce4df;border-radius:6px;background:#f7f9f7;color:#20312e;display:grid;grid-template-columns:72px 94px minmax(160px,1fr) 72px;align-items:center;gap:8px;text-align:left;cursor:pointer}.calibration-history-item:hover{border-color:#9db6ad;background:#eef4f0}.calibration-action-bar{min-height:78px;padding:16px 18px;border:1px solid #dce4df;border-radius:8px;background:#fff;display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr);align-items:center;gap:16px}.calibration-start-button{min-width:168px;height:42px;font-weight:700}.calibration-review-actions{justify-self:end}.calibration-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.calibration-check-row{min-height:46px;padding:10px 12px;border:1px solid #dce4df;border-radius:6px;background:#f7f9f7;display:flex;align-items:center;gap:10px}.calibration-check-row span{color:#20312e}@media (max-width: 1280px){.calibration-layout,.calibration-upload-grid{grid-template-columns:1fr}.task-filter-grid,.simple-filter-grid,.order-filter-grid,.task-detail-grid,.task-info-grid,.task-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calibration-action-bar{grid-template-columns:1fr;justify-items:stretch}.calibration-review-actions{justify-self:stretch}}@media (max-width: 760px){body{min-width:0}.calibration-hero,.preset-limit-grid,.task-filter-grid,.simple-filter-grid,.order-filter-grid,.task-detail-grid,.task-info-grid,.task-media-grid,.analysis-panel,.calibration-history-item{grid-template-columns:1fr}}
