:root{--color-primary:#b4852f;--color-primary-hover:#996d21;--color-primary-active:#7a5315;--color-primary-light:#f7ebce;--color-primary-bg:#fbf4e4;--color-bg:#fdf8ee;--color-bg-card:#fff;--color-border:#ddceb0;--color-border-hover:#c8b28a;--color-text:#2f2518;--color-text-secondary:#544330;--color-text-tertiary:#705d45;--color-success:#52c41a;--color-error:#ff4d4f;--color-warning:#faad14;--color-info:#996d21;--color-header-text:#183a5a;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-xs:0 1px 3px #b4a0780f;--shadow-sm:0 2px 8px #b4a07814;--shadow-card:0 2px 12px #b4a07814;--shadow-hover:0 4px 20px #b4a07826;--shadow-lg:0 8px 30px #b4a0781f;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.35s ease;color:var(--color-text);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.6}*{box-sizing:border-box}body{background:var(--color-bg);min-width:320px;color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.ant-typography,.ant-card,.ant-form,.ant-table,.ant-tabs{color:var(--color-text)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.admin-shell{color:#1a2433;background:radial-gradient(900px 520px at 2% 0,#cedff6bf 0%,#f4f8fd59 70%,#0000 100%),linear-gradient(#f6f9fc 0%,#edf3fb 100%);min-height:100vh;display:flex}.admin-sidebar{background:#fff;border-right:1px solid #cfdcec;flex-direction:column;gap:8px;width:248px;padding:16px;display:flex;box-shadow:0 6px 18px #0f234614}.admin-brand{color:#0f3f82;margin-bottom:12px;font-size:16px;font-weight:700}.admin-nav-item{text-align:left;color:#1f3048;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;width:100%;padding:10px 12px;font-size:14px}.admin-nav-item:hover{background:#e8f0ff;border-color:#cbdcff}.admin-nav-item.active{color:#fff;background:linear-gradient(90deg,#1b57b1 0%,#2a6fca 100%)}.admin-main{flex-direction:column;flex:1;min-width:0;display:flex}.admin-header{color:#1a2433;background:#ffffffed;border-bottom:1px solid #cfdcec;justify-content:space-between;align-items:center;height:64px;padding:0 20px;display:flex}.admin-content{padding:18px}.admin-content .ant-card{background:#fff;border-color:#d1dff0;box-shadow:0 3px 12px #12326012}.admin-content .ant-card .ant-card-head-title,.admin-content .ant-card .ant-statistic-title,.admin-content .ant-card .ant-statistic-content,.admin-content .ant-card,.admin-content .ant-table,.admin-content .ant-table-cell{color:#1f2a37}.admin-content .ant-table-wrapper .ant-table-tbody>tr>td,.admin-content .ant-table-wrapper .ant-table-thead>tr>th{background:#fff;border-color:#e5ecf6}.admin-content .ant-table-wrapper .ant-table-thead>tr>th{color:#23364e;background:#f5f8fd;font-weight:600}.admin-content .ant-tabs-nav:before{border-color:#dde6f2}.admin-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-loading{background:#f4f7fb;justify-content:center;align-items:center;min-height:100vh;display:flex}.runtime-monitor-shell{flex-direction:column;gap:16px;display:flex}.runtime-monitor-loading{justify-content:center;align-items:center;min-height:320px;display:flex}.runtime-monitor-card{border-radius:18px}.runtime-monitor-config{background:radial-gradient(160px 80px at 100% 0,#2d6cdf24 0%,#2d6cdf00 100%),linear-gradient(#f7fafff5 0%,#fff 100%)}.runtime-monitor-section-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.runtime-monitor-input-block{flex-direction:column;gap:6px;display:flex}.metric-card .ant-statistic{min-height:110px}.metric-card-clickable{cursor:pointer;transition:transform .18s,box-shadow .18s}.metric-card-clickable:hover{transform:translateY(-2px);box-shadow:0 10px 24px #234a891f}.runtime-queue-stat-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.runtime-monitor-alert{border-radius:16px}.runtime-monitor-chart{width:100%;height:360px}.runtime-monitor-subtext{color:#60758f;margin-top:4px;font-size:12px}@media (width<=960px){.admin-shell{flex-direction:column}.admin-sidebar{border-bottom:1px solid #8097bf47;border-right:none;flex-flow:wrap;width:100%}.admin-brand{width:100%}.admin-nav-item{width:auto}.runtime-monitor-section-head{flex-direction:column}}.admin-login-shell{background:radial-gradient(760px 460px at 10% 0,#cedff6bf 0%,#f4f8fd4d 72%,#0000 100%),linear-gradient(#f6f9fc 0%,#edf3fb 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.admin-login-card{border-color:#d1dff0;border-radius:18px;width:min(100%,420px);box-shadow:0 16px 36px #1232601f}.page-layout{background:var(--color-bg);min-height:100vh}.page-header{padding:0 var(--spacing-xl);background:linear-gradient(135deg,#d4a843 0%,#c4952f 60%,#b8882a 100%);justify-content:space-between;align-items:center;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 12px #b48c3c2e}.page-header:after{content:"";pointer-events:none;background:#ffffff0f;border-radius:50%;width:300px;height:300px;position:absolute;top:-50%;right:-10%}.header-brand{align-items:center;gap:var(--spacing-sm);display:flex}.header-brand .brand-icon{opacity:.9;font-size:22px}.page-content{padding:var(--spacing-lg) var(--spacing-xl);max-width:1200px;margin:0 auto}.app-header{gap:var(--spacing-sm);height:auto;min-height:64px}.app-header-brand,.app-header-actions{flex-shrink:0}.submit-card,.task-list-card{transition:box-shadow var(--transition-normal);border-radius:var(--radius-md)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow-card)!important}.submit-card:hover,.task-list-card:hover{box-shadow:var(--shadow-hover)!important}.conversion-scope-notice{margin-bottom:var(--spacing-md)}.conversion-scope-copy{gap:var(--spacing-xs);color:var(--color-text-secondary);line-height:1.6;display:grid}.upload-drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg) var(--spacing-xl);text-align:center;background:var(--color-primary-bg);transition:all var(--transition-normal);cursor:pointer;position:relative}.upload-drop-zone:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.upload-drop-zone.drag-over{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:inset 0 0 0 2px var(--color-primary-light), var(--shadow-hover);transform:scale(1.005)}.upload-drop-zone .upload-icon{color:var(--color-primary);margin-bottom:var(--spacing-sm);transition:transform var(--transition-normal);font-size:40px}.upload-drop-zone:hover .upload-icon,.upload-drop-zone.drag-over .upload-icon{transform:scale(1.1)translateY(-2px)}.upload-drop-zone .upload-title{color:var(--color-text);margin-bottom:var(--spacing-xs);font-size:15px;font-weight:500}.upload-drop-zone .upload-hint{color:var(--color-text-secondary);font-size:13px}.upload-file-info{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-light);border-radius:var(--radius-sm);margin-top:var(--spacing-sm);display:flex}.upload-file-info .file-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.upload-compliance-notice{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-primary-bg);color:var(--color-text-secondary);font-size:12px;line-height:1.6}.form-params-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.form-section-title{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-md);font-size:13px;font-weight:500}.submit-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);align-items:center;gap:var(--spacing-sm);display:flex}.job-card-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.job-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all var(--transition-normal);gap:var(--spacing-sm);flex-direction:column;display:flex}.job-card:hover{box-shadow:var(--shadow-hover);border-color:var(--color-border-hover);transform:translateY(-1px)}.job-card-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.job-card-filename{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.job-card-tags{gap:var(--spacing-xs);flex-wrap:wrap;flex-shrink:0;display:flex}.job-card-meta{gap:var(--spacing-xs) var(--spacing-md);color:var(--color-text-secondary);grid-template-columns:1fr 1fr;font-size:12px;display:grid}.job-card-meta-item{align-items:center;gap:4px;display:flex}.job-card-meta-label{color:var(--color-text-tertiary);white-space:nowrap}.job-card-meta-value{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.job-card-progress{margin-top:var(--spacing-xs)}.job-card-error{color:var(--color-error);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xs);margin-top:var(--spacing-xs);word-break:break-all;background:#fff2f0;font-size:12px}.job-card-note{color:var(--color-text-secondary);background:var(--color-primary-bg);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xs);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.job-card-actions{gap:var(--spacing-xs);margin-top:var(--spacing-xs);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.task-list-toolbar{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.job-empty{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-tertiary)}.job-empty-icon{margin-bottom:var(--spacing-md);opacity:.4;font-size:48px}@media (width<=768px){.app-header{flex-wrap:wrap;line-height:normal;padding-block:var(--spacing-sm)!important;padding-inline:var(--spacing-md)!important}.app-header-actions{margin-left:auto}.page-content{padding:var(--spacing-md)}.job-card-grid{grid-template-columns:minmax(0,1fr)}.job-card{min-width:0}.job-card-meta{grid-template-columns:1fr}}
